diff options
author | Mats Kärrman <Mats.Karrman@tritech.se> | 2014-04-01 16:20:34 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-04-01 23:39:14 +0100 |
commit | 3e528d3e4bc542ca2f654c54363c56af0fb9f61b (patch) | |
tree | c274b46cfb4b582e37b6ab3d7a1c609848dcbe68 /meta | |
parent | 8b0eceeebf88c1c19928c53fb96078e9c0c2299b (diff) | |
download | poky-3e528d3e4bc542ca2f654c54363c56af0fb9f61b.tar.gz |
Make ppce300c3 tune hard-float by default
The tuning file for PowerPC e300c3 is soft-float. In OE-classic it was hard-
float and it should be as the c3 has an fpu. I have modified the tuning file
to include both a hard-float version (using the existing ppce300c3 name) and
an optional soft-float version (called ppce300c3-nf).
The following patch also passes a "--with-cpu=e300c3" argument to GLIBC.
For this to have any effect the sqrt/sqrtf implementations added by the
"glibc.fix_sqrt2.patch" are required and also an additional "Implies" file
(added to the mentioned patch as a separate patch for eglibc_2.19).
Tested with eglibc 2.19 on PowerPC MPC5125.
(From OE-Core rev: 9d502ca8551fd461f869395b1b7e62d6dcf59a84)
Signed-off-by: Mats Karrman <mats.karrman@tritech.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/conf/machine/include/tune-ppce300c3.inc | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc index 9431222284..b19cf220ba 100644 --- a/meta/conf/machine/include/tune-ppce300c3.inc +++ b/meta/conf/machine/include/tune-ppce300c3.inc | |||
@@ -2,10 +2,22 @@ DEFAULTTUNE ?= "ppce300c3" | |||
2 | 2 | ||
3 | require conf/machine/include/powerpc/arch-powerpc.inc | 3 | require conf/machine/include/powerpc/arch-powerpc.inc |
4 | 4 | ||
5 | AVAILTUNES += "ppce300c3 ppce300c3-nf" | ||
6 | |||
7 | # hard-float | ||
5 | TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" | 8 | TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" |
9 | TUNE_FEATURES_tune-ppce300c3 = "${TUNE_FEATURES_tune-powerpc} ppce300c3" | ||
10 | TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" | ||
11 | PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppce300c3" | ||
6 | TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " -mcpu=e300c3", "", d)}" | 12 | TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " -mcpu=e300c3", "", d)}" |
7 | 13 | ||
8 | AVAILTUNES += "ppce300c3" | 14 | # glibc config options to make use of e300c3 (603e) specific sqrt/sqrtf routines |
9 | TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" | 15 | GLIBC_EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "--with-cpu=e300c3", "", d)}" |
10 | TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" | 16 | |
11 | PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" | 17 | # soft-float |
18 | TUNEVALID[ppce300c3-nf] = "Enable ppce300c3 specific processor optimizations (no fpu)" | ||
19 | TUNE_FEATURES_tune-ppce300c3-nf = "${TUNE_FEATURES_tune-powerpc-nf} ppce300c3-nf" | ||
20 | TUNE_PKGARCH_tune-ppce300c3-nf = "ppce300c3-nf" | ||
21 | PACKAGE_EXTRA_ARCHS_tune-ppce300c3-nf = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3-nf" | ||
22 | TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3-nf", " -mcpu=e300c3", "", d)}" | ||
23 | |||