Root/toolchain/uClibc/patches-0.9.32/920-remove_sub-arch_variants.patch

1Rely on the compiler to be correctly set up to generate
2appropriate code for the target variant.
3
4This exposes the Thumb option, as it is no longer auto-selected.
5The "Use BX" no longer depends on supported CPU to be selected,
6so it now defaults to 'n' as it shall work by default on CPUs
7that do not have BX.
8
9Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
10Cc: Khem Raj <raj.khem@gmail.com>
11Cc: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
12Cc: Carmelo AMOROSO <carmelo.amoroso@st.com>
13---
14 Rules.mak | 19 -------
15 extra/Configs/Config.arm | 125 ++--------------------------------------------
16 2 files changed, 5 insertions(+), 139 deletions(-)
17
18--- a/Rules.mak
19+++ b/Rules.mak
20@@ -335,25 +335,6 @@ endif
21 ifeq ($(TARGET_ARCH),arm)
22     CPU_CFLAGS-$(ARCH_LITTLE_ENDIAN)+=-mlittle-endian
23     CPU_CFLAGS-$(ARCH_BIG_ENDIAN)+=-mbig-endian
24- CPU_CFLAGS-$(CONFIG_GENERIC_ARM)+=
25- CPU_CFLAGS-$(CONFIG_ARM610)+=-mtune=arm610 -march=armv3
26- CPU_CFLAGS-$(CONFIG_ARM710)+=-mtune=arm710 -march=armv3
27- CPU_CFLAGS-$(CONFIG_ARM7TDMI)+=-mtune=arm7tdmi -march=armv4t
28- CPU_CFLAGS-$(CONFIG_ARM720T)+=-mtune=arm7tdmi -march=armv4t
29- CPU_CFLAGS-$(CONFIG_ARM920T)+=-mtune=arm9tdmi -march=armv4t
30- CPU_CFLAGS-$(CONFIG_ARM922T)+=-mtune=arm9tdmi -march=armv4t
31- CPU_CFLAGS-$(CONFIG_ARM926T)+=-mtune=arm9e -march=armv5te
32- CPU_CFLAGS-$(CONFIG_ARM10T)+=-mtune=arm10tdmi -march=armv5t
33- CPU_CFLAGS-$(CONFIG_ARM1136JF_S)+=-mtune=arm1136jf-s -march=armv6
34- CPU_CFLAGS-$(CONFIG_ARM1176JZ_S)+=-mtune=arm1176jz-s -march=armv6
35- CPU_CFLAGS-$(CONFIG_ARM1176JZF_S)+=-mtune=arm1176jzf-s -march=armv6
36- CPU_CFLAGS-$(CONFIG_ARM_SA110)+=-mtune=strongarm110 -march=armv4
37- CPU_CFLAGS-$(CONFIG_ARM_SA1100)+=-mtune=strongarm1100 -march=armv4
38- CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=$(call check_gcc,-mtune=xscale,-mtune=strongarm110)
39- CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=-march=armv5te -Wa,-mcpu=xscale
40- CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt -mabi=iwmmxt
41- CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3
42- CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1
43     CPU_CFLAGS-$(COMPILE_IN_THUMB_MODE)+=-mthumb
44 endif
45 
46--- a/extra/Configs/Config.arm
47+++ b/extra/Configs/Config.arm
48@@ -30,129 +30,14 @@ config CONFIG_ARM_EABI
49 
50 endchoice
51 
52-choice
53- prompt "Target Processor Type"
54- default CONFIG_GENERIC_ARM
55- help
56- This is the processor type of your CPU. This information is used for
57- optimizing purposes. To build a library that will run on all ARMCPU
58- types (albeit not optimally fast), you can specify "Generic Arm" here.
59- If you pick anything other than "Generic Arm", there is no guarantee
60- that uClibc will even run on anything other than the selected
61- processor type.
62-
63- Here are the settings recommended for greatest speed:
64- - "Generic Arm" select this if your compiler is already setup to
65- optimize things properly, or if you want to run on pretty much
66- everything, or you just don't much care.
67- - For anything else, pick the ARM core type that best matches the
68- cpu you will be using on your device.
69-
70- If you don't know what to do, choose "Generic Arm".
71-
72-config CONFIG_GENERIC_ARM
73- bool "Generic Arm"
74-
75-config CONFIG_ARM610
76- bool "Arm 610"
77- select ARCH_HAS_MMU
78-
79-config CONFIG_ARM710
80- bool "Arm 710"
81- select ARCH_HAS_MMU
82-
83-config CONFIG_ARM7TDMI
84- bool "Arm 7TDMI"
85- select ARCH_HAS_NO_MMU
86- select HAS_THUMB
87-
88-config CONFIG_ARM720T
89- bool "Arm 720T"
90- select ARCH_HAS_MMU
91- select HAS_THUMB
92-
93-config CONFIG_ARM920T
94- bool "Arm 920T"
95- select ARCH_HAS_MMU
96- select HAS_THUMB
97-
98-config CONFIG_ARM922T
99- bool "Arm 922T"
100- select ARCH_HAS_MMU
101- select HAS_THUMB
102-
103-config CONFIG_ARM926T
104- bool "Arm 926T"
105- select ARCH_HAS_MMU
106- select HAS_THUMB
107-
108-config CONFIG_ARM10T
109- bool "Arm 10T"
110- select ARCH_HAS_MMU
111- select HAS_THUMB
112-
113-config CONFIG_ARM1136JF_S
114- bool "Arm 1136JF-S"
115- select ARCH_HAS_MMU
116- select HAS_THUMB
117-
118-config CONFIG_ARM1176JZ_S
119- bool "Arm 1176JZ-S"
120- select ARCH_HAS_MMU
121- select HAS_THUMB
122-
123-config CONFIG_ARM1176JZF_S
124- bool "Arm 1176JZF-S"
125- select ARCH_HAS_MMU
126- select HAS_THUMB
127-
128-config CONFIG_ARM_CORTEX_M3
129- bool "Arm Cortex-M3"
130- select ARCH_HAS_NO_MMU
131- select FORCE_THUMB
132-
133-config CONFIG_ARM_CORTEX_M1
134- bool "Arm Cortex-M1"
135- select ARCH_HAS_NO_MMU
136- select FORCE_THUMB
137-
138-config CONFIG_ARM_SA110
139- bool "Intel StrongArm SA-110"
140- select ARCH_HAS_MMU
141- select HAS_THUMB
142-
143-config CONFIG_ARM_SA1100
144- bool "Intel StrongArm SA-1100"
145- select ARCH_HAS_MMU
146- select HAS_THUMB
147-
148-config CONFIG_ARM_XSCALE
149- bool "Intel Xscale"
150- select ARCH_HAS_MMU
151- select HAS_THUMB
152-
153-config CONFIG_ARM_IWMMXT
154- bool "Intel Xscale With WMMX PXA27x"
155- select ARCH_HAS_MMU
156- select HAS_THUMB
157-
158-endchoice
159-
160-config HAS_THUMB
161- bool
162-
163-config FORCE_THUMB
164- bool
165- select HAS_THUMB
166- select COMPILE_IN_THUMB_MODE
167- select USE_BX
168-
169 config COMPILE_IN_THUMB_MODE
170- bool
171+ bool "Build using Thumb mode"
172+ select USE_BX
173+ help
174+ Say 'y' here to force building uClibc in thumb mode.
175+ Say 'n' to use your compiler's default mode.
176 
177 config USE_BX
178     bool "Use BX in function return"
179- default y
180- depends on HAS_THUMB
181     help
182       Use BX instruction for THUMB aware architectures.
183

Archive Download this file



interactive