tune-thumb.conf: Default thumb interworking to on, fix the overrides definition ...
authorRod Whitby <rod@whitby.id.au>
Tue, 23 Jan 2007 02:03:05 +0000 (02:03 +0000)
committerRod Whitby <rod@whitby.id.au>
Tue, 23 Jan 2007 02:03:05 +0000 (02:03 +0000)
conf/machine/include/tune-thumb.conf

index 4800357..a25cb53 100644 (file)
@@ -9,7 +9,7 @@ ARM_INSTRUCTION_SET ?= "arm"
 #    but requires more instructions (140% for 70% smaller code) so may be
 #    slower.
 
-THUMB_INTERWORK ?= "no"
+THUMB_INTERWORK ?= "yes"
 # "yes" "no"
 #    Whether to compile with code to allow interworking between the two
 #    instruction sets.  This allows thumb code to be executed on a primarily
@@ -18,15 +18,15 @@ THUMB_INTERWORK ?= "no"
 
 OVERRIDE_THUMB = "${@['', ':thumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}"
 OVERRIDE_INTERWORK = "${@['', ':thumb-interwork'][bb.data.getVar('THUMB_INTERWORK', d, 1) == 'yes']}"
-OVERRIDES += "${OVERRIDE_THUMB}${OVERRIDE_INTERWORK}"
+OVERRIDES .= "${OVERRIDE_THUMB}${OVERRIDE_INTERWORK}"
 
 #    Compiler and linker options for application code and kernel code.  These
 #    options ensure that the compiler has the correct settings for the selected
 #    instruction set and interworking.
-ARM_INTERWORK_M_OPT = "${@['', '-mthumb-interwork'][bb.data.getVar('THUMB_INTERWORK', d, 1) == 'yes']}"
-ARM_THUMB_M_OPT = "${@['', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}"
+ARM_INTERWORK_M_OPT = "${@['-mno-thumb-interwork', '-mthumb-interwork'][bb.data.getVar('THUMB_INTERWORK', d, 1) == 'yes']}"
+ARM_THUMB_M_OPT = "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}"
 
 #
 TARGET_CC_ARCH +=  "${ARM_INTERWORK_M_OPT} ${ARM_THUMB_M_OPT}"
-TARGET_CC_KERNEL_ARCH  += "-mno-thumb"
+TARGET_CC_KERNEL_ARCH  += "-mno-thumb-interwork -mno-thumb"