Mercurial > hg > CbC > CbC_gcc
comparison gcc/config/rs6000/sysv4.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 |
---|---|
57 && flag_pic > 1) \ | 57 && flag_pic > 1) \ |
58 || DEFAULT_ABI == ABI_AIX) | 58 || DEFAULT_ABI == ABI_AIX) |
59 | 59 |
60 #define TARGET_BITFIELD_TYPE (! TARGET_NO_BITFIELD_TYPE) | 60 #define TARGET_BITFIELD_TYPE (! TARGET_NO_BITFIELD_TYPE) |
61 #define TARGET_BIG_ENDIAN (! TARGET_LITTLE_ENDIAN) | 61 #define TARGET_BIG_ENDIAN (! TARGET_LITTLE_ENDIAN) |
62 #define TARGET_PROTOTYPE target_prototype | |
62 #define TARGET_NO_PROTOTYPE (! TARGET_PROTOTYPE) | 63 #define TARGET_NO_PROTOTYPE (! TARGET_PROTOTYPE) |
63 #define TARGET_NO_TOC (! TARGET_TOC) | 64 #define TARGET_NO_TOC (! TARGET_TOC) |
64 #define TARGET_NO_EABI (! TARGET_EABI) | 65 #define TARGET_NO_EABI (! TARGET_EABI) |
66 #define TARGET_REGNAMES rs6000_regnames | |
65 | 67 |
66 #ifdef HAVE_AS_REL16 | 68 #ifdef HAVE_AS_REL16 |
67 #undef TARGET_SECURE_PLT | 69 #undef TARGET_SECURE_PLT |
68 #define TARGET_SECURE_PLT secure_plt | 70 #define TARGET_SECURE_PLT secure_plt |
69 #endif | 71 #endif |
122 else if (!strcmp (rs6000_abi_name, "openbsd")) \ | 124 else if (!strcmp (rs6000_abi_name, "openbsd")) \ |
123 rs6000_current_abi = ABI_V4; \ | 125 rs6000_current_abi = ABI_V4; \ |
124 else if (!strcmp (rs6000_abi_name, "i960-old")) \ | 126 else if (!strcmp (rs6000_abi_name, "i960-old")) \ |
125 { \ | 127 { \ |
126 rs6000_current_abi = ABI_V4; \ | 128 rs6000_current_abi = ABI_V4; \ |
127 target_flags |= (MASK_LITTLE_ENDIAN | MASK_EABI \ | 129 target_flags |= (MASK_LITTLE_ENDIAN | MASK_EABI); \ |
128 | MASK_NO_BITFIELD_WORD); \ | |
129 target_flags &= ~MASK_STRICT_ALIGN; \ | 130 target_flags &= ~MASK_STRICT_ALIGN; \ |
131 TARGET_NO_BITFIELD_WORD = 1; \ | |
130 } \ | 132 } \ |
131 else \ | 133 else \ |
132 { \ | 134 { \ |
133 rs6000_current_abi = ABI_V4; \ | 135 rs6000_current_abi = ABI_V4; \ |
134 error ("bad value for -mcall-%s", rs6000_abi_name); \ | 136 error ("bad value for -mcall-%s", rs6000_abi_name); \ |
269 #else | 271 #else |
270 #define LIBGCC2_WORDS_BIG_ENDIAN 0 | 272 #define LIBGCC2_WORDS_BIG_ENDIAN 0 |
271 #endif | 273 #endif |
272 | 274 |
273 /* Define cutoff for using external functions to save floating point. | 275 /* Define cutoff for using external functions to save floating point. |
274 Currently on 64-bit V.4, always use inline stores. When optimizing | 276 When optimizing for size, use external functions when profitable. */ |
275 for size on 32-bit targets, use external functions when | 277 #define FP_SAVE_INLINE(FIRST_REG) (optimize_size \ |
276 profitable. */ | |
277 #define FP_SAVE_INLINE(FIRST_REG) (optimize_size && !TARGET_64BIT \ | |
278 ? ((FIRST_REG) == 62 \ | 278 ? ((FIRST_REG) == 62 \ |
279 || (FIRST_REG) == 63) \ | 279 || (FIRST_REG) == 63) \ |
280 : (FIRST_REG) < 64) | 280 : (FIRST_REG) < 64) |
281 /* And similarly for general purpose registers. */ | 281 /* And similarly for general purpose registers. */ |
282 #define GP_SAVE_INLINE(FIRST_REG) ((FIRST_REG) < 32 \ | 282 #define GP_SAVE_INLINE(FIRST_REG) ((FIRST_REG) < 32 \ |
283 && (TARGET_64BIT || !optimize_size)) | 283 && !optimize_size) |
284 | 284 |
285 /* Put jump tables in read-only memory, rather than in .text. */ | 285 /* Put jump tables in read-only memory, rather than in .text. */ |
286 #define JUMP_TABLES_IN_TEXT_SECTION 0 | 286 #define JUMP_TABLES_IN_TEXT_SECTION 0 |
287 | 287 |
288 /* Prefix and suffix to use to saving floating point. */ | 288 /* Prefix and suffix to use to saving floating point. */ |
289 #define SAVE_FP_PREFIX "_savefpr_" | 289 #define SAVE_FP_PREFIX "_savefpr_" |
290 #define SAVE_FP_SUFFIX (TARGET_64BIT ? "_l" : "") | 290 #define SAVE_FP_SUFFIX "" |
291 | 291 |
292 /* Prefix and suffix to use to restoring floating point. */ | 292 /* Prefix and suffix to use to restoring floating point. */ |
293 #define RESTORE_FP_PREFIX "_restfpr_" | 293 #define RESTORE_FP_PREFIX "_restfpr_" |
294 #define RESTORE_FP_SUFFIX (TARGET_64BIT ? "_l" : "") | 294 #define RESTORE_FP_SUFFIX "" |
295 | 295 |
296 /* Type used for ptrdiff_t, as a string used in a declaration. */ | 296 /* Type used for ptrdiff_t, as a string used in a declaration. */ |
297 #define PTRDIFF_TYPE "int" | 297 #define PTRDIFF_TYPE "int" |
298 | 298 |
299 /* Type used for wchar_t, as a string used in a declaration. */ | 299 /* Type used for wchar_t, as a string used in a declaration. */ |
384 /* Return nonzero if this entry is to be written into the constant pool | 384 /* Return nonzero if this entry is to be written into the constant pool |
385 in a special way. We do so if this is a SYMBOL_REF, LABEL_REF or a CONST | 385 in a special way. We do so if this is a SYMBOL_REF, LABEL_REF or a CONST |
386 containing one of them. If -mfp-in-toc (the default), we also do | 386 containing one of them. If -mfp-in-toc (the default), we also do |
387 this for floating-point constants. We actually can only do this | 387 this for floating-point constants. We actually can only do this |
388 if the FP formats of the target and host machines are the same, but | 388 if the FP formats of the target and host machines are the same, but |
389 we can't check that since not every file that uses | 389 we can't check that since not every file that uses these target macros |
390 GO_IF_LEGITIMATE_ADDRESS_P includes real.h. | 390 includes real.h. |
391 | 391 |
392 Unlike AIX, we don't key off of -mminimal-toc, but instead do not | 392 Unlike AIX, we don't key off of -mminimal-toc, but instead do not |
393 allow floating point constants in the TOC if -mrelocatable. */ | 393 allow floating point constants in the TOC if -mrelocatable. */ |
394 | 394 |
395 #undef ASM_OUTPUT_SPECIAL_POOL_ENTRY_P | 395 #undef ASM_OUTPUT_SPECIAL_POOL_ENTRY_P |
591 #undef ASM_SPEC | 591 #undef ASM_SPEC |
592 #define ASM_SPEC "%(asm_cpu) \ | 592 #define ASM_SPEC "%(asm_cpu) \ |
593 %{,assembler|,assembler-with-cpp: %{mregnames} %{mno-regnames}}" \ | 593 %{,assembler|,assembler-with-cpp: %{mregnames} %{mno-regnames}}" \ |
594 SVR4_ASM_SPEC \ | 594 SVR4_ASM_SPEC \ |
595 "%{mrelocatable} %{mrelocatable-lib} %{fpic|fpie|fPIC|fPIE:-K PIC} \ | 595 "%{mrelocatable} %{mrelocatable-lib} %{fpic|fpie|fPIC|fPIE:-K PIC} \ |
596 %{memb|msdata|msdata=eabi: -memb} \ | 596 %{memb|msdata=eabi: -memb} \ |
597 %{mlittle|mlittle-endian:-mlittle; \ | 597 %{mlittle|mlittle-endian:-mlittle; \ |
598 mbig|mbig-endian :-mbig; \ | 598 mbig|mbig-endian :-mbig; \ |
599 mcall-aixdesc | \ | 599 mcall-aixdesc | \ |
600 mcall-freebsd | \ | 600 mcall-freebsd | \ |
601 mcall-netbsd | \ | 601 mcall-netbsd | \ |