Fix and enhance the STOP/RESTART facility.
1 # Target definition: architecture, optimisations, etc...
5 comment "General target options"
9 default "arm" if ARCH_ARM
10 default "mips" if ARCH_MIPS
11 default "x86" if ARCH_x86
12 default "x86_64" if ARCH_x86_64
16 prompt "Target architecture:"
22 select ARCH_SUPPORTS_BOTH_ENDIAN
23 select ARCH_SUPPORTS_LIBFLOAT
28 select ARCH_SUPPORTS_BOTH_ENDIAN
33 select ARCH_SUPPORTS_LIBFLOAT
41 config ARCH_SUPPORTS_BOTH_ENDIAN
48 depends on ARCH_SUPPORTS_BOTH_ENDIAN
56 prompt "Little endian"
62 prompt "Threading implentation to use:"
63 default THREADS_NPTL if LIBC_SUPPORT_NPTL
64 default THREADS_LINUXTHREADS if LIBC_SUPPORT_LINUXTHREADS && ! LIBC_SUPPORT_NPTL
65 default THREADS_NONE if ! LIBC_SUPPORT_LINUXTHREADS && ! LIBC_SUPPORT_NPTL
70 depends on LIBC_SUPPORT_NPTL
72 config THREADS_LINUXTHREADS
75 depends on LIBC_SUPPORT_LINUXTHREADS
85 default "nptl" if THREADS_NPTL
86 default "linuxthreads" if THREADS_LINUXTHREADS
87 default "none" if THREADS_NONE
89 comment "Target optimisations"
93 prompt "Achitecture level"
96 GCC uses this name to determine what kind of instructions it can emit
97 when generating assembly code. This option can be used in conjunction
98 with or instead of the ARCH_CPU option (above), or a (command-line)
101 This is the configuration flag --with-arch=XXXX, and the runtime flag
104 Pick a value from the gcc manual for your choosen gcc version and your
107 Leave blank if you don't know, or if your target architecture does not
112 prompt "Generate code for the specific ABI"
115 Generate code for the given ABI.
117 This is the configuration flag --with-abi=XXXX, and the runtime flag
120 Pick a value from the gcc manual for your choosen gcc version and your
123 Leave blank if you don't know, or if your target architecutre does not
128 prompt "Emit assembly for CPU"
131 This specifies the name of the target ARM processor. GCC uses this name
132 to determine what kind of instructions it can emit when generating
135 This is the configuration flag --with-cpu=XXXX, and the runtime flag
138 Pick a value from the gcc manual for your choosen gcc version and your
141 Leave blank if you don't know, or if your target architecture does not
146 prompt "Tune for CPU"
149 This option is very similar to the ARCH_CPU option (above), except
150 that instead of specifying the actual target processor type, and hence
151 restricting which instructions can be used, it specifies that GCC should
152 tune the performance of the code as if the target were of the type
153 specified in this option, but still choosing the instructions that it
154 will generate based on the cpu specified by the ARCH_CPU option
155 (above), or a (command-line) -mcpu= option.
157 This is the configuration flag --with-tune=XXXX, and the runtime flag
160 Pick a value from the gcc manual for your choosen gcc version and your
163 Leave blank if you don't know, or if your target architecture does not
168 prompt "Use specific FPU"
171 On some targets (eg. ARM), you can specify the kind of FPU to emit
174 This is the configuration flag --with-fpu=XXX, and the runtime flag
177 See below wether to actually emit FP opcodes, or to emulate them.
179 Pick a value from the gcc manual for your choosen gcc version and your
182 Leave blank if you don't know, or if your target architecture does not
187 prompt "Floating point:"
191 prompt "hardware (FPU)"
193 Emit hardware floating point opcodes.
195 If you've got a processor with a FPU, then you want that.
196 If your hardware has no FPU, you still can use HW floating point, but
197 need to compile support for FPU emulation in your kernel. Needless to
198 say that emulating the FPU is /slooowwwww/...
200 One situation you'd want HW floating point without a FPU is if you get
201 binary blobs from different vendors that are compiling this way and
202 can't (don't wan't to) change.
208 Do not emit any hardware floating point opcode.
210 If your processor has no FPU, then you most probably want this, as it
211 is faster than emulating the FPU in the kernel.
215 config ARCH_SUPPORTS_LIBFLOAT
219 config ARCH_FLOAT_SW_LIBFLOAT
221 prompt "Use libfloat"
223 depends on ARCH_FLOAT_SW && ARCH_SUPPORTS_LIBFLOAT
225 For those targets upporting it, you can use libfloat for the software
226 floating point emulation.
228 Note that some versions of gcc have support code that supersedes libfloat,
229 while others don't. Known version of gcc that don't have support code are
230 versions prior to 3.0, and version above 4.0.
232 You should check gcc before deciding to use libfloat.
234 config LIBFLOAT_VERSION
236 default "990616.orig"
237 depends on ARCH_FLOAT_SW_LIBFLOAT
241 prompt "Target CFLAGS"
244 Used to add specific options when compiling libraries of the toolchain,
245 that will run on the target (eg. libc.so).
247 Note that the options above for CPU, tune, arch and FPU will be
248 automaticaly used. You don't need to specify them here.
250 Leave blank if you don't know better.