FreeCalypso > hg > freecalypso-tools
annotate toolchain/t-arm-elf @ 521:6604403aa212
doc/Target-utils: checking in unfinished document
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Thu, 06 Jun 2019 06:38:46 +0000 | 
| parents | e7502631a0f9 | 
| children | 
| rev | line source | 
|---|---|
| 
0
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
1 # This is a modified version of the gcc/config/arm/t-arm-elf file | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
2 # from gcc-4.5.4. It has been modified by Spacefalcon the Outlaw | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
3 # for the FreeCalypso project; the changes are in the multilib | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
4 # configuration: | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
5 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
6 # a) The fpu multilib has been commented out | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
7 # b) The -mthumb-interwork multilib has been uncommented | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
8 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
9 # Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
10 # 2008 Free Software Foundation, Inc. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
11 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
12 # This file is part of GCC. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
13 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
14 # GCC is free software; you can redistribute it and/or modify | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
15 # it under the terms of the GNU General Public License as published by | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
16 # the Free Software Foundation; either version 3, or (at your option) | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
17 # any later version. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
18 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
19 # GCC is distributed in the hope that it will be useful, | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
20 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
21 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
22 # GNU General Public License for more details. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
23 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
24 # You should have received a copy of the GNU General Public License | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
25 # along with GCC; see the file COPYING3. If not see | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
26 # <http://www.gnu.org/licenses/>. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
27 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
28 # For most CPUs we have an assembly soft-float implementations. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
29 # However this is not true for ARMv6M. Here we want to use the soft-fp C | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
30 # implementation. The soft-fp code is only build for ARMv6M. This pulls | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
31 # in the asm implementation for other CPUs. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
32 LIB1ASMFUNCS += _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
33 _call_via_rX _interwork_call_via_rX \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
34 _lshrdi3 _ashrdi3 _ashldi3 \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
35 _arm_negdf2 _arm_addsubdf3 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
36 _arm_fixdfsi _arm_fixunsdfsi \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
37 _arm_truncdfsf2 _arm_negsf2 _arm_addsubsf3 _arm_muldivsf3 \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
38 _arm_cmpsf2 _arm_unordsf2 _arm_fixsfsi _arm_fixunssfsi \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
39 _arm_floatdidf _arm_floatdisf _arm_floatundidf _arm_floatundisf \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
40 _clzsi2 _clzdi2 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
41 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
42 MULTILIB_OPTIONS = marm/mthumb | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
43 MULTILIB_DIRNAMES = arm thumb | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
44 MULTILIB_EXCEPTIONS = | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
45 MULTILIB_MATCHES = | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
46 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
47 #MULTILIB_OPTIONS += march=armv7 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
48 #MULTILIB_DIRNAMES += thumb2 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
49 #MULTILIB_EXCEPTIONS += march=armv7* marm/*march=armv7* | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
50 #MULTILIB_MATCHES += march?armv7=march?armv7-a | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
51 #MULTILIB_MATCHES += march?armv7=march?armv7-r | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
52 #MULTILIB_MATCHES += march?armv7=march?armv7-m | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
53 #MULTILIB_MATCHES += march?armv7=mcpu?cortex-a8 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
54 #MULTILIB_MATCHES += march?armv7=mcpu?cortex-r4 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
55 #MULTILIB_MATCHES += march?armv7=mcpu?cortex-m3 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
56 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
57 # Not quite true. We can support hard-vfp calling in Thumb2, but how do we | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
58 # express that here? Also, we really need architecture v5e or later | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
59 # (mcrr etc). | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
60 # MULTILIB_OPTIONS += mfloat-abi=hard | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
61 # MULTILIB_DIRNAMES += fpu | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
62 # MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard* | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
63 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
64 # MULTILIB_OPTIONS += mcpu=ep9312 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
65 # MULTILIB_DIRNAMES += ep9312 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
66 # MULTILIB_EXCEPTIONS += *mthumb/*mcpu=ep9312* | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
67 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
68 # MULTILIB_OPTIONS += mlittle-endian/mbig-endian | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
69 # MULTILIB_DIRNAMES += le be | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
70 # MULTILIB_MATCHES += mbig-endian=mbe mlittle-endian=mle | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
71 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
72 # MULTILIB_OPTIONS += mhard-float/msoft-float | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
73 # MULTILIB_DIRNAMES += fpu soft | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
74 # MULTILIB_EXCEPTIONS += *mthumb/*mhard-float* | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
75 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
76 MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
77 MULTILIB_DIRNAMES += normal interwork | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
78 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
79 # MULTILIB_OPTIONS += fno-leading-underscore/fleading-underscore | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
80 # MULTILIB_DIRNAMES += elf under | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
81 # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
82 # MULTILIB_OPTIONS += mcpu=arm7 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
83 # MULTILIB_DIRNAMES += nofmult | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
84 # MULTILIB_EXCEPTIONS += *mthumb*/*mcpu=arm7* | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
85 # # Note: the multilib_exceptions matches both -mthumb and | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
86 # # -mthumb-interwork | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
87 # # | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
88 # # We have to match all the arm cpu variants which do not have the | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
89 # # multiply instruction and treat them as if the user had specified | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
90 # # -mcpu=arm7. Note that in the following the ? is interpreted as | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
91 # # an = for the purposes of matching command line options. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
92 # # FIXME: There ought to be a better way to do this. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
93 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7d | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
94 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7di | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
95 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm70 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
96 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
97 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700i | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
98 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
99 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710c | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
100 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7100 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
101 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
102 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500fe | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
103 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm6 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
104 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm60 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
105 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm600 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
106 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm610 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
107 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm620 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
108 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
109 EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
110 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
111 # If EXTRA_MULTILIB_PARTS is not defined above then define EXTRA_PARTS here | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
112 # EXTRA_PARTS = crtbegin.o crtend.o crti.o crtn.o | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
113 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
114 LIBGCC = stmp-multilib | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
115 INSTALL_LIBGCC = install-multilib | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
116 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
117 # Currently there is a bug somewhere in GCC's alias analysis | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
118 # or scheduling code that is breaking _fpmul_parts in fp-bit.c. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
119 # Disabling function inlining is a workaround for this problem. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
120 TARGET_LIBGCC2_CFLAGS = -fno-inline | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
121 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
122 # Assemble startup files. | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
123 $(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
124 $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
125 -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/arm/crti.asm | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
126 | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
127 $(T)crtn.o: $(srcdir)/config/arm/crtn.asm $(GCC_PASSES) | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
128 $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
129 -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/arm/crtn.asm | 
| 
 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
130 | 
