comparison gcc/config/rs6000/linux64.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 b7f97abdc517
comparison
equal deleted inserted replaced
52:c156f1bd5cd9 55:77e2b8dfacca
102 target_flags &= ~MASK_EABI; \ 102 target_flags &= ~MASK_EABI; \
103 error (INVALID_64BIT, "eabi"); \ 103 error (INVALID_64BIT, "eabi"); \
104 } \ 104 } \
105 if (TARGET_PROTOTYPE) \ 105 if (TARGET_PROTOTYPE) \
106 { \ 106 { \
107 TARGET_PROTOTYPE = 0; \ 107 target_prototype = 0; \
108 error (INVALID_64BIT, "prototype"); \ 108 error (INVALID_64BIT, "prototype"); \
109 } \ 109 } \
110 if ((target_flags & MASK_POWERPC64) == 0) \ 110 if ((target_flags & MASK_POWERPC64) == 0) \
111 { \ 111 { \
112 target_flags |= MASK_POWERPC64; \ 112 target_flags |= MASK_POWERPC64; \
117 { \ 117 { \
118 if (!RS6000_BI_ARCH_P) \ 118 if (!RS6000_BI_ARCH_P) \
119 error (INVALID_32BIT, "32"); \ 119 error (INVALID_32BIT, "32"); \
120 if (TARGET_PROFILE_KERNEL) \ 120 if (TARGET_PROFILE_KERNEL) \
121 { \ 121 { \
122 target_flags &= ~MASK_PROFILE_KERNEL; \ 122 SET_PROFILE_KERNEL (0); \
123 error (INVALID_32BIT, "profile-kernel"); \ 123 error (INVALID_32BIT, "profile-kernel"); \
124 } \ 124 } \
125 } \ 125 } \
126 } \ 126 } \
127 while (0) 127 while (0)
137 137
138 #undef ASM_DEFAULT_SPEC 138 #undef ASM_DEFAULT_SPEC
139 #undef ASM_SPEC 139 #undef ASM_SPEC
140 #undef LINK_OS_LINUX_SPEC 140 #undef LINK_OS_LINUX_SPEC
141 141
142 /* FIXME: This will quite possibly choose the wrong dynamic linker. */
143 #undef LINK_OS_GNU_SPEC
144 #define LINK_OS_GNU_SPEC LINK_OS_LINUX_SPEC
145
142 #ifndef RS6000_BI_ARCH 146 #ifndef RS6000_BI_ARCH
143 #define ASM_DEFAULT_SPEC "-mppc64" 147 #define ASM_DEFAULT_SPEC "-mppc64"
144 #define ASM_SPEC "%(asm_spec64) %(asm_spec_common)" 148 #define ASM_SPEC "%(asm_spec64) %(asm_spec_common)"
145 #define LINK_OS_LINUX_SPEC "%(link_os_linux_spec64)" 149 #define LINK_OS_LINUX_SPEC "%(link_os_linux_spec64)"
146 #else 150 #else
155 #endif 159 #endif
156 #endif 160 #endif
157 161
158 #define ASM_SPEC32 "-a32 %{n} %{T} %{Ym,*} %{Yd,*} \ 162 #define ASM_SPEC32 "-a32 %{n} %{T} %{Ym,*} %{Yd,*} \
159 %{mrelocatable} %{mrelocatable-lib} %{fpic:-K PIC} %{fPIC:-K PIC} \ 163 %{mrelocatable} %{mrelocatable-lib} %{fpic:-K PIC} %{fPIC:-K PIC} \
160 %{memb} %{!memb: %{msdata: -memb} %{msdata=eabi: -memb}} \ 164 %{memb} %{!memb: %{msdata=eabi: -memb}} \
161 %{!mlittle: %{!mlittle-endian: %{!mbig: %{!mbig-endian: \ 165 %{!mlittle: %{!mlittle-endian: %{!mbig: %{!mbig-endian: \
162 %{mcall-freebsd: -mbig} \ 166 %{mcall-freebsd: -mbig} \
163 %{mcall-i960-old: -mlittle} \ 167 %{mcall-i960-old: -mlittle} \
164 %{mcall-linux: -mbig} \ 168 %{mcall-linux: -mbig} \
165 %{mcall-gnu: -mbig} \ 169 %{mcall-gnu: -mbig} \
431 435
432 /* FP save and restore routines. */ 436 /* FP save and restore routines. */
433 #undef SAVE_FP_PREFIX 437 #undef SAVE_FP_PREFIX
434 #define SAVE_FP_PREFIX (TARGET_64BIT ? "._savef" : "_savefpr_") 438 #define SAVE_FP_PREFIX (TARGET_64BIT ? "._savef" : "_savefpr_")
435 #undef SAVE_FP_SUFFIX 439 #undef SAVE_FP_SUFFIX
436 #define SAVE_FP_SUFFIX (TARGET_64BIT ? "" : "_l") 440 #define SAVE_FP_SUFFIX ""
437 #undef RESTORE_FP_PREFIX 441 #undef RESTORE_FP_PREFIX
438 #define RESTORE_FP_PREFIX (TARGET_64BIT ? "._restf" : "_restfpr_") 442 #define RESTORE_FP_PREFIX (TARGET_64BIT ? "._restf" : "_restfpr_")
439 #undef RESTORE_FP_SUFFIX 443 #undef RESTORE_FP_SUFFIX
440 #define RESTORE_FP_SUFFIX (TARGET_64BIT ? "" : "_l") 444 #define RESTORE_FP_SUFFIX ""
441 445
442 /* Dwarf2 debugging. */ 446 /* Dwarf2 debugging. */
443 #undef PREFERRED_DEBUGGING_TYPE 447 #undef PREFERRED_DEBUGGING_TYPE
444 #define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG 448 #define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
445 449
465 pool in a special way. We do so if this is a SYMBOL_REF, LABEL_REF 469 pool in a special way. We do so if this is a SYMBOL_REF, LABEL_REF
466 or a CONST containing one of them. If -mfp-in-toc (the default), 470 or a CONST containing one of them. If -mfp-in-toc (the default),
467 we also do this for floating-point constants. We actually can only 471 we also do this for floating-point constants. We actually can only
468 do this if the FP formats of the target and host machines are the 472 do this if the FP formats of the target and host machines are the
469 same, but we can't check that since not every file that uses 473 same, but we can't check that since not every file that uses
470 GO_IF_LEGITIMATE_ADDRESS_P includes real.h. We also do this when 474 the macros includes real.h. We also do this when we can write the
471 we can write the entry into the TOC and the entry is not larger 475 entry into the TOC and the entry is not larger than a TOC entry. */
472 than a TOC entry. */
473 476
474 #undef ASM_OUTPUT_SPECIAL_POOL_ENTRY_P 477 #undef ASM_OUTPUT_SPECIAL_POOL_ENTRY_P
475 #define ASM_OUTPUT_SPECIAL_POOL_ENTRY_P(X, MODE) \ 478 #define ASM_OUTPUT_SPECIAL_POOL_ENTRY_P(X, MODE) \
476 (TARGET_TOC \ 479 (TARGET_TOC \
477 && (GET_CODE (X) == SYMBOL_REF \ 480 && (GET_CODE (X) == SYMBOL_REF \