comparison gcc/config/arm/bpabi.h @ 55:77e2b8dfacca gcc-4.4.5

update it from 4.4.3 to 4.5.0
author ryoma <e075725@ie.u-ryukyu.ac.jp>
date Fri, 12 Feb 2010 23:39:51 +0900
parents a06113de4d67
children f6334be47118
comparison
equal deleted inserted replaced
52:c156f1bd5cd9 55:77e2b8dfacca
28 /* BPABI targets use EABI frame unwinding tables. */ 28 /* BPABI targets use EABI frame unwinding tables. */
29 #define TARGET_UNWIND_INFO 1 29 #define TARGET_UNWIND_INFO 1
30 30
31 /* Section 4.1 of the AAPCS requires the use of VFP format. */ 31 /* Section 4.1 of the AAPCS requires the use of VFP format. */
32 #undef FPUTYPE_DEFAULT 32 #undef FPUTYPE_DEFAULT
33 #define FPUTYPE_DEFAULT FPUTYPE_VFP 33 #define FPUTYPE_DEFAULT "vfp"
34 34
35 /* TARGET_BIG_ENDIAN_DEFAULT is set in 35 /* TARGET_BIG_ENDIAN_DEFAULT is set in
36 config.gcc for big endian configurations. */ 36 config.gcc for big endian configurations. */
37 #if TARGET_BIG_ENDIAN_DEFAULT 37 #if TARGET_BIG_ENDIAN_DEFAULT
38 #define TARGET_ENDIAN_DEFAULT MASK_BIG_END 38 #define TARGET_ENDIAN_DEFAULT MASK_BIG_END
51 /* The BPABI integer comparison routines return { -1, 0, 1 }. */ 51 /* The BPABI integer comparison routines return { -1, 0, 1 }. */
52 #define TARGET_LIB_INT_CMP_BIASED !TARGET_BPABI 52 #define TARGET_LIB_INT_CMP_BIASED !TARGET_BPABI
53 53
54 #define TARGET_FIX_V4BX_SPEC " %{mcpu=arm8|mcpu=arm810|mcpu=strongarm*|march=armv4:--fix-v4bx}" 54 #define TARGET_FIX_V4BX_SPEC " %{mcpu=arm8|mcpu=arm810|mcpu=strongarm*|march=armv4:--fix-v4bx}"
55 55
56 #define BE8_LINK_SPEC " %{mbig-endian:%{march=armv7-a|mcpu=cortex-a5|mcpu=cortex-a8|mcpu=cortex-a9:%{!r:--be8}}}"
57
56 /* Tell the assembler to build BPABI binaries. */ 58 /* Tell the assembler to build BPABI binaries. */
57 #undef SUBTARGET_EXTRA_ASM_SPEC 59 #undef SUBTARGET_EXTRA_ASM_SPEC
58 #define SUBTARGET_EXTRA_ASM_SPEC "%{mabi=apcs-gnu|mabi=atpcs:-meabi=gnu;:-meabi=5}" TARGET_FIX_V4BX_SPEC 60 #define SUBTARGET_EXTRA_ASM_SPEC "%{mabi=apcs-gnu|mabi=atpcs:-meabi=gnu;:-meabi=5}" TARGET_FIX_V4BX_SPEC
59 61
60 #ifndef SUBTARGET_EXTRA_LINK_SPEC 62 #ifndef SUBTARGET_EXTRA_LINK_SPEC
63 65
64 /* The generic link spec in elf.h does not support shared libraries. */ 66 /* The generic link spec in elf.h does not support shared libraries. */
65 #define BPABI_LINK_SPEC \ 67 #define BPABI_LINK_SPEC \
66 "%{mbig-endian:-EB} %{mlittle-endian:-EL} " \ 68 "%{mbig-endian:-EB} %{mlittle-endian:-EL} " \
67 "%{static:-Bstatic} %{shared:-shared} %{symbolic:-Bsymbolic} " \ 69 "%{static:-Bstatic} %{shared:-shared} %{symbolic:-Bsymbolic} " \
68 "-X" SUBTARGET_EXTRA_LINK_SPEC TARGET_FIX_V4BX_SPEC 70 "-X" SUBTARGET_EXTRA_LINK_SPEC TARGET_FIX_V4BX_SPEC BE8_LINK_SPEC
69 71
70 #undef LINK_SPEC 72 #undef LINK_SPEC
71 #define LINK_SPEC BPABI_LINK_SPEC 73 #define LINK_SPEC BPABI_LINK_SPEC
72 74
73 #if defined (__thumb__) 75 #if defined (__thumb__)
88 #endif 90 #endif
89 #ifdef L_muldi3 91 #ifdef L_muldi3
90 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (muldi3, lmul) 92 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (muldi3, lmul)
91 #endif 93 #endif
92 #ifdef L_fixdfdi 94 #ifdef L_fixdfdi
93 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixdfdi, d2lz) 95 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixdfdi, d2lz) \
96 extern DWtype __fixdfdi (DFtype) __attribute__((pcs("aapcs"))); \
97 extern UDWtype __fixunsdfdi (DFtype) __asm__("__aeabi_d2ulz") __attribute__((pcs("aapcs")));
94 #endif 98 #endif
95 #ifdef L_fixunsdfdi 99 #ifdef L_fixunsdfdi
96 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixunsdfdi, d2ulz) 100 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixunsdfdi, d2ulz) \
101 extern UDWtype __fixunsdfdi (DFtype) __attribute__((pcs("aapcs")));
97 #endif 102 #endif
98 #ifdef L_fixsfdi 103 #ifdef L_fixsfdi
99 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixsfdi, f2lz) 104 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixsfdi, f2lz) \
105 extern DWtype __fixsfdi (SFtype) __attribute__((pcs("aapcs"))); \
106 extern UDWtype __fixunssfdi (SFtype) __asm__("__aeabi_f2ulz") __attribute__((pcs("aapcs")));
100 #endif 107 #endif
101 #ifdef L_fixunssfdi 108 #ifdef L_fixunssfdi
102 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixunssfdi, f2ulz) 109 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixunssfdi, f2ulz) \
110 extern UDWtype __fixunssfdi (SFtype) __attribute__((pcs("aapcs")));
103 #endif 111 #endif
104 #ifdef L_floatdidf 112 #ifdef L_floatdidf
105 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (floatdidf, l2d) 113 #define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (floatdidf, l2d)
106 #endif 114 #endif
107 #ifdef L_floatdisf 115 #ifdef L_floatdisf