2002-02-01 18:16:02 +00:00
|
|
|
/* Definitions for embedded ia64-elf target. */
|
|
|
|
|
|
|
|
/* This macro is a C statement to print on `stderr' a string describing the
|
|
|
|
particular machine description choice. */
|
|
|
|
|
|
|
|
#define TARGET_VERSION fprintf (stderr, " (IA-64) ELF");
|
|
|
|
|
|
|
|
/* Define this to be a string constant containing `-D' options to define the
|
|
|
|
predefined macros that identify this machine and system. These macros will
|
|
|
|
be predefined unless the `-ansi' option is specified. */
|
|
|
|
/* ??? This is undefed in svr4.h. */
|
|
|
|
#define CPP_PREDEFINES "-Dia64 -Amachine=ia64"
|
|
|
|
|
|
|
|
/* A C string constant that tells the GNU CC driver program options to pass to
|
|
|
|
the assembler. It can also specify how to translate options you give to GNU
|
|
|
|
CC into options for GNU CC to pass to the assembler. */
|
|
|
|
|
|
|
|
#if ((TARGET_CPU_DEFAULT | TARGET_DEFAULT) & MASK_GNU_AS) != 0
|
|
|
|
/* GNU AS. */
|
2002-05-09 20:02:13 +00:00
|
|
|
#undef ASM_EXTRA_SPEC
|
|
|
|
#define ASM_EXTRA_SPEC \
|
|
|
|
"%{mno-gnu-as:-N so} %{!mno-gnu-as:-x}"
|
2002-02-01 18:16:02 +00:00
|
|
|
#else
|
|
|
|
/* Intel ias. */
|
2002-05-09 20:02:13 +00:00
|
|
|
#undef ASM_SPEC
|
2002-02-01 18:16:02 +00:00
|
|
|
#define ASM_SPEC \
|
|
|
|
"%{!mgnu-as:-N so} %{mgnu-as:-x} %{mconstant-gp:-M const_gp}\
|
|
|
|
%{mauto-pic:-M no_plabel}"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* A C string constant that tells the GNU CC driver program options to pass to
|
|
|
|
the linker. It can also specify how to translate options you give to GNU CC
|
|
|
|
into options for GNU CC to pass to the linker. */
|
|
|
|
|
|
|
|
/* The Intel linker does not support dynamic linking, so we need -dn.
|
|
|
|
The Intel linker gives annoying messages unless -N so is used. */
|
|
|
|
#if ((TARGET_CPU_DEFAULT | TARGET_DEFAULT) & MASK_GNU_LD) != 0
|
|
|
|
/* GNU LD. */
|
|
|
|
#define LINK_SPEC "%{mno-gnu-ld:-dn -N so}"
|
|
|
|
#else
|
|
|
|
/* Intel ild. */
|
|
|
|
#define LINK_SPEC "%{!mgnu-ld:-dn -N so}"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* svr4.h links with crti.o/crtn.o, but elfos.h does not. We override elfos.h
|
|
|
|
so that we can use the standard ELF Unix method. */
|
|
|
|
#undef ENDFILE_SPEC
|
|
|
|
#define ENDFILE_SPEC "crtend.o%s crtn.o%s"
|
|
|
|
|
|
|
|
#undef STARTFILE_SPEC
|
|
|
|
#define STARTFILE_SPEC "%{!shared: \
|
|
|
|
%{!symbolic: \
|
|
|
|
%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}}}\
|
|
|
|
crti.o%s crtbegin.o%s"
|
|
|
|
|
|
|
|
/* End of elf.h */
|