_armv4t, _armv5te are not (no longer?) set as MACHINEOVERRIDES if an armv4t
or armv5te tune is set.
Thus the default ARM_INSTRUCTION_SET ??= "thumb" kicks in.

Set the override to _armv4, _armv5 to get the expected ARM_INSTRUCTION_SET.

While at it cleanup comment to keep up with changes.

Build tested with a build for a _armv5te machine.

Signed-off-by: Max Krummenacher <max.krummenac...@toradex.com>
---
 conf/distro/include/angstrom.inc | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)

diff --git a/conf/distro/include/angstrom.inc b/conf/distro/include/angstrom.inc
index 778ab10..09f6121 100644
--- a/conf/distro/include/angstrom.inc
+++ b/conf/distro/include/angstrom.inc
@@ -46,16 +46,6 @@ require conf/distro/include/angstrom-${TCLIBC}.inc
 require conf/distro/include/angstrom-java.inc
 require conf/distro/include/angstrom-jalimo.conf
 
-# ARM920T and up can use thumb mode to decrease binary size at the expense of 
speed
-# (the complete story is a bit more nuanced due to cache starvation)
-# Angstrom turns on thumb for armv4t machine according to this RFC:
-# 
http://lists.linuxtogo.org/pipermail/angstrom-distro-devel/2008-October/002714.html
-
-ARM_INSTRUCTION_SET ??= "thumb"
-ARM_INSTRUCTION_SET_armv4t ?= "arm"
-ARM_INSTRUCTION_SET_armv5te ?= "arm"
-ARM_INSTRUCTION_SET_armv6 ?= "arm"
-
 # "arm" "thumb"
 #    The instruction set the compiler should use when generating application
 #    code.  The kernel is always compiled with arm code at present.  arm code
@@ -63,6 +53,15 @@ ARM_INSTRUCTION_SET_armv6 ?= "arm"
 #    encoded RISC sub-set.  Thumb code is smaller (maybe 70% of the ARM size)
 #    but requires more instructions (140% for 70% smaller code) so may be
 #    slower.
+#    thumb 2 is an evolution of the original thumb instruction set which 
strives
+#    to keep the code size advantages without the performance penality.
+#    When setting thumb the compiler will use thumb or thumb2 depending on what
+#    the selected arm architecture.
+
+ARM_INSTRUCTION_SET ??= "thumb"
+ARM_INSTRUCTION_SET_armv4 ?= "arm"
+ARM_INSTRUCTION_SET_armv5 ?= "arm"
+ARM_INSTRUCTION_SET_armv6 ?= "arm"
 
 #Use this variable in feeds and other parts that need a URI
 ANGSTROM_URI ?= "http://feeds.angstrom-distribution.org";
-- 
2.5.5


_______________________________________________
Angstrom-distro-devel mailing list
Angstrom-distro-devel@linuxtogo.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel

Reply via email to