diff options
Diffstat (limited to 'meta/conf/machine/include/sh')
-rw-r--r-- | meta/conf/machine/include/sh/README | 4 | ||||
-rw-r--r-- | meta/conf/machine/include/sh/arch-sh.inc | 4 | ||||
-rw-r--r-- | meta/conf/machine/include/sh/tune-sh3.inc | 17 | ||||
-rw-r--r-- | meta/conf/machine/include/sh/tune-sh4.inc | 34 |
4 files changed, 55 insertions, 4 deletions
diff --git a/meta/conf/machine/include/sh/README b/meta/conf/machine/include/sh/README index b351acdd28..87d48b927b 100644 --- a/meta/conf/machine/include/sh/README +++ b/meta/conf/machine/include/sh/README @@ -5,7 +5,7 @@ Both big endian and little endian are defined for SH. Experimental -- SH tunings have not been validated. -The TUNE_ARCH is defined as ${TUNE_ARCH_tune-${DEFAULTTUNE}}. +The TUNE_ARCH is defined as ${TUNE_ARCH:tune-${DEFAULTTUNE}}. -The TUNE_PKGARCH is defind as ${TUNE_PKGARCH_tune-${DEFAULTTUNE}}. +The TUNE_PKGARCH is defind as ${TUNE_PKGARCH:tune-${DEFAULTTUNE}}. diff --git a/meta/conf/machine/include/sh/arch-sh.inc b/meta/conf/machine/include/sh/arch-sh.inc index bdfbf52ca1..9d70e8511d 100644 --- a/meta/conf/machine/include/sh/arch-sh.inc +++ b/meta/conf/machine/include/sh/arch-sh.inc @@ -2,8 +2,8 @@ DEFAULTTUNE ?= "sh" -TUNE_ARCH = "${TUNE_ARCH_tune-${DEFAULTTUNE}}" -TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}" +TUNE_ARCH = "${TUNE_ARCH:tune-${DEFAULTTUNE}}" +TUNE_PKGARCH = "${TUNE_PKGARCH:tune-${DEFAULTTUNE}}" TUNEVALID[bigendian] = "Enabled big-endian mode." TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'bigendian', ' -mb', ' -ml', d)}" diff --git a/meta/conf/machine/include/sh/tune-sh3.inc b/meta/conf/machine/include/sh/tune-sh3.inc new file mode 100644 index 0000000000..77d0b71fc4 --- /dev/null +++ b/meta/conf/machine/include/sh/tune-sh3.inc @@ -0,0 +1,17 @@ +DEFAULTTUNE ?= "sh3" + +require conf/machine/include/sh/arch-sh.inc + +TUNEVALID[sh3] = "Enable SH3 optimizations" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'sh3', ' -m3', '', d)}" + +AVAILTUNES += "sh3 sh3eb" +TUNE_FEATURES:tune-sh3 = "sh3" +TUNE_ARCH:tune-sh3 = "sh3" +TUNE_PKGARCH:tune-sh3 = "sh3" +PACKAGE_EXTRA_ARCHS:tune-sh3 = "sh sh3" + +TUNE_FEATURES:tune-sh3eb = "sh3 bigendian" +TUNE_ARCH:tune-sh3eb = "sh3eb" +TUNE_PKGARCH:tune-sh3eb = "sh3eb" +PACKAGE_EXTRA_ARCHS:tune-sh3eb = "sheb sh3eb" diff --git a/meta/conf/machine/include/sh/tune-sh4.inc b/meta/conf/machine/include/sh/tune-sh4.inc new file mode 100644 index 0000000000..b4893a4748 --- /dev/null +++ b/meta/conf/machine/include/sh/tune-sh4.inc @@ -0,0 +1,34 @@ +DEFAULTTUNE ?= "sh4" + +# Pull in sh4 for compatibility... +require conf/machine/include/sh/arch-sh.inc + +TUNEVALID[sh4] = "Enable SH4 optimizations" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'sh4', ' -m4', '', d)}" + +# NOTE: If you want to optimize to sh4a, conf/machine/include/sh/tune-sh4a.inc. +# But it is not compatible for sh4. +# The binary optimized by m4a doesn't operate on sh4. It works on sh4a only. +TUNEVALID[sh4a] = "Enable SH4a optimizations" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'sh4a', ' -m4a', '', d)}" + +AVAILTUNES += "sh4 sh4eb sh4a sh4aeb" +TUNE_FEATURES:tune-sh4 = "sh4" +TUNE_ARCH:tune-sh4 = "sh4" +TUNE_PKGARCH:tune-sh4 = "sh4" +PACKAGE_EXTRA_ARCHS:tune-sh4 = "sh sh4" + +TUNE_FEATURES:tune-sh4eb = "sh4 bigendian" +TUNE_ARCH:tune-sh4eb = "sh4eb" +TUNE_PKGARCH:tune-sh4eb = "sh4eb" +PACKAGE_EXTRA_ARCHS:tune-sh4eb = "sheb sh4eb" + +TUNE_FEATURES:tune-sh4a = "sh4a" +TUNE_ARCH:tune-sh4a = "sh4" +TUNE_PKGARCH:tune-sh4a = "sh4a" +PACKAGE_EXTRA_ARCHS:tune-sh4a = "sh sh4 sh4a" + +TUNE_FEATURES:tune-sh4aeb = "sh4a bigendian" +TUNE_ARCH:tune-sh4aeb = "sh4eb" +TUNE_PKGARCH:tune-sh4aeb = "sh4aeb" +PACKAGE_EXTRA_ARCHS:tune-sh4aeb = "sheb sh4eb sh4aeb" |