Commit 5b8fcab6 by David O'Brien Committed by David O'Brien

aix.h (CPP_PREDEFINES): Do not define _LP64/__LP64__ or set Acpu or Amachine.

2002-04-11  David O'Brien  <obrien@FreeBSD.org>
	* config/ia64/aix.h (CPP_PREDEFINES): Do not define _LP64/__LP64__
	or set Acpu or Amachine.  Reformat.
	(ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
	define.
	(LINK_SPEC): Do not need to undef.
	* config/ia64/elf.h (ASM_EXTRA_SPEC): Define.
	* config/ia64/freebsd.h (LINK_SPEC): Do not need to undef.
	(ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
	define.
	* config/ia64/hpux.h (ASM_EXTRA_SPEC): Define.
	(ASM_SPEC): Do not define, use ASM_EXTRA_SPEC instead.
	(LINK_SPEC): Do not need to undef.
	(DONT_USE_BUILTIN_SETJMP): Do not define.
	* config/ia64/ia64.h (ASM_SPEC, ASM_EXTRA_SPEC): Add.
	(CPP_CPU_SPEC): Define _LP64, set Acpu and Amachine.  Remove -Dia64.
	(DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Define.
	Remove trailing spaces.
	* config/ia64/linux.h (CPP_PREDEFINES): Do not define _LP64/__LP64__,
	__ELF__, or set Acpu or Amachine.  Reformat.
	(ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
	define.

Approved by:  Richard Henderson <rth@redhat.com>
              Message-ID: <20020411160138.A11250@redhat.com>

From-SVN: r52191
parent fee42cc1
2002-04-11 David O'Brien <obrien@FreeBSD.org> 2002-04-11 David O'Brien <obrien@FreeBSD.org>
* config/ia64/aix.h (CPP_PREDEFINES): Do not define _LP64/__LP64__
or set Acpu or Amachine. Reformat.
(ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
define.
(LINK_SPEC): Do not need to undef.
* config/ia64/elf.h (ASM_EXTRA_SPEC): Define.
* config/ia64/freebsd.h (LINK_SPEC): Do not need to undef.
(ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
define.
* config/ia64/hpux.h (ASM_EXTRA_SPEC): Define.
(ASM_SPEC): Do not define, use ASM_EXTRA_SPEC instead.
(LINK_SPEC): Do not need to undef.
(DONT_USE_BUILTIN_SETJMP): Do not define.
* config/ia64/ia64.h (ASM_SPEC, ASM_EXTRA_SPEC): Add.
(CPP_CPU_SPEC): Define _LP64, set Acpu and Amachine. Remove -Dia64.
(DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Define.
Remove trailing spaces.
* config/ia64/linux.h (CPP_PREDEFINES): Do not define _LP64/__LP64__,
__ELF__, or set Acpu or Amachine. Reformat.
(ASM_SPEC, DONT_USE_BUILTIN_SETJMP, PROFILE_BEFORE_PROLOGUE): Do not
define.
2002-04-11 David O'Brien <obrien@FreeBSD.org>
* config.gcc (ia64-*-freebsd*): Fix ordering of tm_files to match * config.gcc (ia64-*-freebsd*): Fix ordering of tm_files to match
all other *-*-freebsd* targets. all other *-*-freebsd* targets.
......
...@@ -86,10 +86,9 @@ Boston, MA 02111-1307, USA. */ ...@@ -86,10 +86,9 @@ Boston, MA 02111-1307, USA. */
#undef CPP_PREDEFINES #undef CPP_PREDEFINES
#define CPP_PREDEFINES "\ #define CPP_PREDEFINES "\
-D__ia64 -D__ia64__ -D_AIX -D_AIX64 -D_LONGLONG -Dunix \ -D_AIX -D_AIX64 -D_LONGLONG -Dunix \
-D_LP64 -D__LP64__ -D__ELF__ \ -Asystem=unix -Asystem=aix \
-Asystem=unix -Asystem=aix -Acpu=ia64 -Amachine=ia64 \ -D__64BIT__ -D_LONG_LONG -D_IA64 -D__int128=__size128_t"
-D__64BIT__ -D_LONG_LONG -D_IA64 -D__int128=__size128_t"
/* The GNU C++ standard library requires that these macros be defined. */ /* The GNU C++ standard library requires that these macros be defined. */
#undef CPLUSPLUS_CPP_SPEC #undef CPLUSPLUS_CPP_SPEC
...@@ -101,10 +100,6 @@ Boston, MA 02111-1307, USA. */ ...@@ -101,10 +100,6 @@ Boston, MA 02111-1307, USA. */
-D__LONG_MAX__=9223372036854775807L \ -D__LONG_MAX__=9223372036854775807L \
%{cpp_cpu}" %{cpp_cpu}"
/* ia64-specific options for gas */
#undef ASM_SPEC
#define ASM_SPEC "-x %{mconstant-gp} %{mauto-pic}"
/* Define this for shared library support. */ /* Define this for shared library support. */
#undef LINK_SPEC #undef LINK_SPEC
...@@ -116,14 +111,8 @@ Boston, MA 02111-1307, USA. */ ...@@ -116,14 +111,8 @@ Boston, MA 02111-1307, USA. */
%{!dynamic-linker:-dynamic-linker /usr/lib/ia64l64/libc.so.1}} \ %{!dynamic-linker:-dynamic-linker /usr/lib/ia64l64/libc.so.1}} \
%{static:-static}}" %{static:-static}}"
#define DONT_USE_BUILTIN_SETJMP
#define JMP_BUF_SIZE 85 #define JMP_BUF_SIZE 85
/* Output any profiling code before the prologue. */
#undef PROFILE_BEFORE_PROLOGUE
#define PROFILE_BEFORE_PROLOGUE 1
/* A C statement or compound statement to output to FILE some assembler code to /* A C statement or compound statement to output to FILE some assembler code to
call the profiling subroutine `mcount'. call the profiling subroutine `mcount'.
......
...@@ -17,10 +17,12 @@ ...@@ -17,10 +17,12 @@
#if ((TARGET_CPU_DEFAULT | TARGET_DEFAULT) & MASK_GNU_AS) != 0 #if ((TARGET_CPU_DEFAULT | TARGET_DEFAULT) & MASK_GNU_AS) != 0
/* GNU AS. */ /* GNU AS. */
#define ASM_SPEC \ #undef ASM_EXTRA_SPEC
"%{mno-gnu-as:-N so} %{!mno-gnu-as:-x} %{mconstant-gp} %{mauto-pic}" #define ASM_EXTRA_SPEC \
"%{mno-gnu-as:-N so} %{!mno-gnu-as:-x}"
#else #else
/* Intel ias. */ /* Intel ias. */
#undef ASM_SPEC
#define ASM_SPEC \ #define ASM_SPEC \
"%{!mgnu-as:-N so} %{mgnu-as:-x} %{mconstant-gp:-M const_gp}\ "%{!mgnu-as:-N so} %{mgnu-as:-x} %{mconstant-gp:-M const_gp}\
%{mauto-pic:-M no_plabel}" %{mauto-pic:-M no_plabel}"
......
...@@ -19,7 +19,6 @@ along with GNU CC; see the file COPYING. If not, write to ...@@ -19,7 +19,6 @@ along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#undef LINK_SPEC
#define LINK_SPEC \ #define LINK_SPEC \
"%{p:%e`-p' not supported; use `-pg' and gprof(1)} \ "%{p:%e`-p' not supported; use `-pg' and gprof(1)} \
%{Wl,*:%*} \ %{Wl,*:%*} \
...@@ -32,9 +31,6 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ ...@@ -32,9 +31,6 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
%{!dynamic-linker:-dynamic-linker /usr/libexec/ld-elf.so.1}} \ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld-elf.so.1}} \
%{static:-Bstatic}}" %{static:-Bstatic}}"
#undef ASM_SPEC
#define ASM_SPEC "-x %{mconstant-gp} %{mauto-pic}"
/************************[ Target stuff ]***********************************/ /************************[ Target stuff ]***********************************/
...@@ -57,10 +53,4 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ ...@@ -57,10 +53,4 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define TARGET_ELF 1 #define TARGET_ELF 1
#define DONT_USE_BUILTIN_SETJMP
#define JMP_BUF_SIZE 76 #define JMP_BUF_SIZE 76
/* Output any profiling code before the prologue. */
#undef PROFILE_BEFORE_PROLOGUE
#define PROFILE_BEFORE_PROLOGUE 1
...@@ -27,9 +27,9 @@ Boston, MA 02111-1307, USA. */ ...@@ -27,9 +27,9 @@ Boston, MA 02111-1307, USA. */
#undef CPP_PREDEFINES #undef CPP_PREDEFINES
#define CPP_PREDEFINES "\ #define CPP_PREDEFINES "\
-D__IA64__ -D__ia64 -D__ia64__ -D__hpux -D__hpux__ -Dhpux -Dunix \ -D__IA64__ -D__hpux -D__hpux__ -Dhpux -Dunix \
-D__BIG_ENDIAN__ -D_LONGLONG -D__ELF__ \ -D__BIG_ENDIAN__ -D_LONGLONG \
-Asystem=hpux -Asystem=posix -Asystem=unix -Acpu=ia64 -Amachine=ia64 \ -Asystem=hpux -Asystem=posix -Asystem=unix \
-D_UINT128_T" -D_UINT128_T"
/* -D__fpreg=long double is needed to compensate for the lack of __fpreg /* -D__fpreg=long double is needed to compensate for the lack of __fpreg
...@@ -46,9 +46,8 @@ Boston, MA 02111-1307, USA. */ ...@@ -46,9 +46,8 @@ Boston, MA 02111-1307, USA. */
-D__float80=long\\ double \ -D__float80=long\\ double \
-D__float128=long\\ double" -D__float128=long\\ double"
#undef ASM_SPEC #undef ASM_EXTRA_SPEC
#define ASM_SPEC "-x %{mconstant-gp} %{mauto-pic} \ #define ASM_EXTRA_SPEC "%{milp32:-milp32} %{mlp64:-mlp64}"
%{milp32:-milp32} %{mlp64:-mlp64}"
#undef ENDFILE_SPEC #undef ENDFILE_SPEC
...@@ -84,7 +83,6 @@ Boston, MA 02111-1307, USA. */ ...@@ -84,7 +83,6 @@ Boston, MA 02111-1307, USA. */
#define POINTERS_EXTEND_UNSIGNED -1 #define POINTERS_EXTEND_UNSIGNED -1
#define DONT_USE_BUILTIN_SETJMP
#define JMP_BUF_SIZE (8 * 76) #define JMP_BUF_SIZE (8 * 76)
#undef CONST_SECTION_ASM_OP #undef CONST_SECTION_ASM_OP
......
...@@ -31,12 +31,24 @@ Boston, MA 02111-1307, USA. */ ...@@ -31,12 +31,24 @@ Boston, MA 02111-1307, USA. */
/* Run-time target specifications */ /* Run-time target specifications */
#define CPP_CPU_SPEC "\ #define EXTRA_SPECS \
-Acpu=ia64 -Amachine=ia64 \ { "cpp_cpu", CPP_CPU_SPEC },
%{!ansi:%{!std=c*:%{!std=i*:-Dia64}}} -D__ia64 -D__ia64__" { "asm_extra", ASM_EXTRA_SPEC },
#define CPP_CPU_SPEC " \
-Acpu=ia64 -Amachine=ia64 -D__ia64 -D__ia64__ %{!milp32:-D_LP64 -D__LP64__} \
-D__ELF__"
#define CC1_SPEC "%(cc1_cpu) " #define CC1_SPEC "%(cc1_cpu) "
#define ASM_EXTRA_SPEC ""
/* ia64-specific options for gas
??? ia64 gas doesn't accept standard svr4 assembler options? */
#undef ASM_SPEC
#define ASM_SPEC "-x %{mconstant-gp} %{mauto-pic} %(asm_extra)"
/* This declaration should be present. */ /* This declaration should be present. */
extern int target_flags; extern int target_flags;
...@@ -336,7 +348,7 @@ while (0) ...@@ -336,7 +348,7 @@ while (0)
/* By default, the C++ compiler will use function addresses in the /* By default, the C++ compiler will use function addresses in the
vtable entries. Setting this non-zero tells the compiler to use vtable entries. Setting this non-zero tells the compiler to use
function descriptors instead. The value of this macro says how function descriptors instead. The value of this macro says how
many words wide the descriptor is (normally 2). It is assumed many words wide the descriptor is (normally 2). It is assumed
that the address of a function descriptor may be treated as a that the address of a function descriptor may be treated as a
pointer to a function. */ pointer to a function. */
#define TARGET_VTABLE_USES_DESCRIPTORS 2 #define TARGET_VTABLE_USES_DESCRIPTORS 2
...@@ -391,7 +403,7 @@ while (0) ...@@ -391,7 +403,7 @@ while (0)
/* Register Basics */ /* Register Basics */
/* Number of hardware registers known to the compiler. /* Number of hardware registers known to the compiler.
We have 128 general registers, 128 floating point registers, We have 128 general registers, 128 floating point registers,
64 predicate registers, 8 branch registers, one frame pointer, 64 predicate registers, 8 branch registers, one frame pointer,
and several "application" registers. */ and several "application" registers. */
...@@ -453,7 +465,7 @@ while (0) ...@@ -453,7 +465,7 @@ while (0)
f0: constant 0.0 f0: constant 0.0
f1: constant 1.0 f1: constant 1.0
p0: constant true p0: constant true
fp: eliminable frame pointer */ fp: eliminable frame pointer */
/* The last 16 stacked regs are reserved for the 8 input and 8 output /* The last 16 stacked regs are reserved for the 8 input and 8 output
registers. */ registers. */
...@@ -523,12 +535,12 @@ while (0) ...@@ -523,12 +535,12 @@ while (0)
1, 1, 1, 1, 1, 0, 1 \ 1, 1, 1, 1, 1, 0, 1 \
} }
/* Like `CALL_USED_REGISTERS' but used to overcome a historical /* Like `CALL_USED_REGISTERS' but used to overcome a historical
problem which makes CALL_USED_REGISTERS *always* include problem which makes CALL_USED_REGISTERS *always* include
all the FIXED_REGISTERS. Until this problem has been all the FIXED_REGISTERS. Until this problem has been
resolved this macro can be used to overcome this situation. resolved this macro can be used to overcome this situation.
In particular, block_propagate() requires this list In particular, block_propagate() requires this list
be acurate, or we can remove registers which should be live. be acurate, or we can remove registers which should be live.
This macro is used in regs_invalidated_by_call. */ This macro is used in regs_invalidated_by_call. */
#define CALL_REALLY_USED_REGISTERS \ #define CALL_REALLY_USED_REGISTERS \
...@@ -1360,7 +1372,7 @@ do { \ ...@@ -1360,7 +1372,7 @@ do { \
#define FUNCTION_VALUE_REGNO_P(REGNO) \ #define FUNCTION_VALUE_REGNO_P(REGNO) \
(((REGNO) >= GR_RET_FIRST && (REGNO) <= GR_RET_LAST) \ (((REGNO) >= GR_RET_FIRST && (REGNO) <= GR_RET_LAST) \
|| ((REGNO) >= FR_RET_FIRST && (REGNO) <= FR_RET_LAST)) || ((REGNO) >= FR_RET_FIRST && (REGNO) <= FR_RET_LAST))
/* How Large Values are Returned */ /* How Large Values are Returned */
...@@ -1731,7 +1743,7 @@ do { \ ...@@ -1731,7 +1743,7 @@ do { \
|| (CLASS) == GR_AND_FR_REGS ? 4 : 10) || (CLASS) == GR_AND_FR_REGS ? 4 : 10)
/* A C expression for the cost of a branch instruction. A value of 1 is the /* A C expression for the cost of a branch instruction. A value of 1 is the
default; other values are interpreted relative to that. Used by the default; other values are interpreted relative to that. Used by the
if-conversion code as max instruction count. */ if-conversion code as max instruction count. */
/* ??? This requires investigation. The primary effect might be how /* ??? This requires investigation. The primary effect might be how
many additional insn groups we run into, vs how good the dynamic many additional insn groups we run into, vs how good the dynamic
...@@ -2273,7 +2285,7 @@ do { \ ...@@ -2273,7 +2285,7 @@ do { \
fprintf (FILE, "[.%s%d:]\n", PREFIX, NUM) fprintf (FILE, "[.%s%d:]\n", PREFIX, NUM)
/* Use section-relative relocations for debugging offsets. Unlike other /* Use section-relative relocations for debugging offsets. Unlike other
targets that fake this by putting the section VMA at 0, IA-64 has targets that fake this by putting the section VMA at 0, IA-64 has
proper relocations for them. */ proper relocations for them. */
#define ASM_OUTPUT_DWARF_OFFSET(FILE, SIZE, LABEL) \ #define ASM_OUTPUT_DWARF_OFFSET(FILE, SIZE, LABEL) \
do { \ do { \
...@@ -2522,4 +2534,11 @@ enum fetchop_code { ...@@ -2522,4 +2534,11 @@ enum fetchop_code {
IA64_ADD_OP, IA64_SUB_OP, IA64_OR_OP, IA64_AND_OP, IA64_XOR_OP, IA64_NAND_OP IA64_ADD_OP, IA64_SUB_OP, IA64_OR_OP, IA64_AND_OP, IA64_XOR_OP, IA64_NAND_OP
}; };
#define DONT_USE_BUILTIN_SETJMP
/* Output any profiling code before the prologue. */
#undef PROFILE_BEFORE_PROLOGUE
#define PROFILE_BEFORE_PROLOGUE 1
/* End of ia64.h */ /* End of ia64.h */
...@@ -11,12 +11,8 @@ ...@@ -11,12 +11,8 @@
/* ??? Maybe this should be in sysv4.h? */ /* ??? Maybe this should be in sysv4.h? */
#define CPP_PREDEFINES "\ #define CPP_PREDEFINES "\
-D__ia64 -D__ia64__ -D__linux -D__linux__ -D_LONGLONG -Dlinux -Dunix \ -D__linux -D__linux__ -D_LONGLONG -Dlinux -Dunix \
-D_LP64 -D__LP64__ -D__ELF__ -Asystem=linux -Acpu=ia64 -Amachine=ia64" -Asystem=linux"
/* ??? ia64 gas doesn't accept standard svr4 assembler options? */
#undef ASM_SPEC
#define ASM_SPEC "-x %{mconstant-gp} %{mauto-pic}"
/* Need to override linux.h STARTFILE_SPEC, since it has crtbeginT.o in. */ /* Need to override linux.h STARTFILE_SPEC, since it has crtbeginT.o in. */
#undef STARTFILE_SPEC #undef STARTFILE_SPEC
...@@ -46,14 +42,8 @@ ...@@ -46,14 +42,8 @@
%{static:-static}}" %{static:-static}}"
#define DONT_USE_BUILTIN_SETJMP
#define JMP_BUF_SIZE 76 #define JMP_BUF_SIZE 76
/* Output any profiling code before the prologue. */
#undef PROFILE_BEFORE_PROLOGUE
#define PROFILE_BEFORE_PROLOGUE 1
/* Override linux.h LINK_EH_SPEC definition. /* Override linux.h LINK_EH_SPEC definition.
Signalize that because we have fde-glibc, we don't need all C shared libs Signalize that because we have fde-glibc, we don't need all C shared libs
linked against -lgcc_s. */ linked against -lgcc_s. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment