comparison gcc/config/alpha/vms.h @ 67:f6334be47118

update gcc from gcc-4.6-20100522 to gcc-4.6-20110318
author nobuyasu <dimolto@cr.ie.u-ryukyu.ac.jp>
date Tue, 22 Mar 2011 17:18:12 +0900
parents 77e2b8dfacca
children 04ced10e8804
comparison
equal deleted inserted replaced
65:65488c3d617d 67:f6334be47118
1 /* Output variables, constants and external declarations, for GNU compiler. 1 /* Output variables, constants and external declarations, for GNU compiler.
2 Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2004, 2005, 2007, 2008, 2 Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2004, 2005, 2007, 2008,
3 2009 3 2009, 2010
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6 This file is part of GCC. 6 This file is part of GCC.
7 7
8 GCC is free software; you can redistribute it and/or modify 8 GCC is free software; you can redistribute it and/or modify
67 /* Pointer is 32 bits but the hardware has 64-bit addresses, sign extended. */ 67 /* Pointer is 32 bits but the hardware has 64-bit addresses, sign extended. */
68 #undef POINTER_SIZE 68 #undef POINTER_SIZE
69 #define POINTER_SIZE 32 69 #define POINTER_SIZE 32
70 #define POINTERS_EXTEND_UNSIGNED 0 70 #define POINTERS_EXTEND_UNSIGNED 0
71 71
72 #define HANDLE_SYSV_PRAGMA 1
73
74 #define MAX_OFILE_ALIGNMENT 524288 /* 8 x 2^16 by DEC Ada Test CD40VRA */ 72 #define MAX_OFILE_ALIGNMENT 524288 /* 8 x 2^16 by DEC Ada Test CD40VRA */
75 73
76 /* The maximum alignment 'malloc' honors. */ 74 /* The maximum alignment 'malloc' honors. */
77 #undef MALLOC_ALIGNMENT 75 #undef MALLOC_ABI_ALIGNMENT
78 #define MALLOC_ALIGNMENT ((TARGET_MALLOC64 ? 16 : 8) * BITS_PER_UNIT) 76 #define MALLOC_ABI_ALIGNMENT ((TARGET_MALLOC64 ? 16 : 8) * BITS_PER_UNIT)
79 77
80 #undef FIXED_REGISTERS 78 #undef FIXED_REGISTERS
81 #define FIXED_REGISTERS \ 79 #define FIXED_REGISTERS \
82 {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \ 80 {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
83 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, \ 81 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, \
172 #undef INIT_CUMULATIVE_ARGS 170 #undef INIT_CUMULATIVE_ARGS
173 #define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \ 171 #define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \
174 (CUM).num_args = 0; \ 172 (CUM).num_args = 0; \
175 (CUM).atypes[0] = (CUM).atypes[1] = (CUM).atypes[2] = I64; \ 173 (CUM).atypes[0] = (CUM).atypes[1] = (CUM).atypes[2] = I64; \
176 (CUM).atypes[3] = (CUM).atypes[4] = (CUM).atypes[5] = I64; 174 (CUM).atypes[3] = (CUM).atypes[4] = (CUM).atypes[5] = I64;
177
178 #undef FUNCTION_ARG_ADVANCE
179 #define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \
180 if (targetm.calls.must_pass_in_stack (MODE, TYPE)) \
181 (CUM).num_args += 6; \
182 else \
183 { \
184 if ((CUM).num_args < 6) \
185 (CUM).atypes[(CUM).num_args] = alpha_arg_type (MODE); \
186 \
187 (CUM).num_args += ALPHA_ARG_SIZE (MODE, TYPE, NAMED); \
188 }
189 175
190 #define DEFAULT_PCC_STRUCT_RETURN 0 176 #define DEFAULT_PCC_STRUCT_RETURN 0
191 177
192 #undef ASM_WEAKEN_LABEL 178 #undef ASM_WEAKEN_LABEL
193 #define ASM_WEAKEN_LABEL(FILE, NAME) \ 179 #define ASM_WEAKEN_LABEL(FILE, NAME) \
335 #undef ASM_FINAL_SPEC 321 #undef ASM_FINAL_SPEC
336 322
337 /* The VMS convention is to always provide minimal debug info 323 /* The VMS convention is to always provide minimal debug info
338 for a traceback unless specifically overridden. */ 324 for a traceback unless specifically overridden. */
339 325
340 #undef OVERRIDE_OPTIONS 326 #undef SUBTARGET_OVERRIDE_OPTIONS
341 #define OVERRIDE_OPTIONS \ 327 #define SUBTARGET_OVERRIDE_OPTIONS \
342 { \ 328 do { \
343 if (write_symbols == NO_DEBUG \ 329 if (write_symbols == NO_DEBUG \
344 && debug_info_level == DINFO_LEVEL_NONE) \ 330 && debug_info_level == DINFO_LEVEL_NONE) \
345 { \ 331 { \
346 write_symbols = VMS_DEBUG; \ 332 write_symbols = VMS_DEBUG; \
347 debug_info_level = DINFO_LEVEL_TERSE; \ 333 debug_info_level = DINFO_LEVEL_TERSE; \
348 } \ 334 } \
349 override_options (); \ 335 } while (0)
350 }
351 336
352 /* Link with vms-dwarf2.o if -g (except -g0). This causes the 337 /* Link with vms-dwarf2.o if -g (except -g0). This causes the
353 VMS link to pull all the dwarf2 debug sections together. */ 338 VMS link to pull all the dwarf2 debug sections together. */
354 #undef LINK_SPEC 339 #undef LINK_SPEC
355 #define LINK_SPEC "%{g:-g vms-dwarf2.o%s} %{g0} %{g1:-g1 vms-dwarf2.o%s} \ 340 #define LINK_SPEC "%{g:-g vms-dwarf2.o%s} %{g0} %{g1:-g1 vms-dwarf2.o%s} \