/* netbsd sparc ELF configuration */ /* be nice to merge this with netbsd64.h somehow */ #include /* ok, clean up after */ /* clean up after */ #undef CPP_SUBTARGET_SPEC #define CPP_SUBTARGET_SPEC "" #undef MULDI3_LIBCALL #undef DIVDI3_LIBCALL #undef UDIVDI3_LIBCALL #undef MODDI3_LIBCALL #undef UMODDI3_LIBCALL #undef INIT_SUBTARGET_OPTABS #define INIT_SUBTARGET_OPTABS #define NETBSD_ELF #include #undef CPP_PREDEFINES #define CPP_PREDEFINES "\ -D__sparc__ -D__sparc -D__NetBSD__ -D__ELF__ -D__KPRINTF_ATTRIBUTE__ \ -Asystem(unix) -Asystem(NetBSD) -Acpu(sparc) -Amachine(sparc)" #undef SIZE_TYPE #define SIZE_TYPE "long unsigned int" #undef PTRDIFF_TYPE #define PTRDIFF_TYPE "long int" #undef WCHAR_TYPE #define WCHAR_TYPE "int" #undef WCHAR_TYPE_SIZE #define WCHAR_TYPE_SIZE 32 #undef WCHAR_UNSIGNED #define WCHAR_UNSIGNED 0 #undef PREFERRED_DEBUGGING_TYPE #define PREFERRED_DEBUGGING_TYPE DBX_DEBUG /* This is the char to use for continuation (in case we need to turn continuation back on). */ #undef DBX_CONTIN_CHAR #define DBX_CONTIN_CHAR '?' /*#undef ASM_OUTPUT_SKIP*/ #undef DBX_REGISTER_NUMBER #define DBX_REGISTER_NUMBER(REGNO) \ (TARGET_FLAT && REGNO == FRAME_POINTER_REGNUM ? 31 : REGNO) /* This is how to output a definition of an internal numbered label where PREFIX is the class of label and NUM is the number within the class. */ #undef ASM_OUTPUT_INTERNAL_LABEL #define ASM_OUTPUT_INTERNAL_LABEL(FILE,PREFIX,NUM) \ fprintf (FILE, ".L%s%d:\n", PREFIX, NUM) /* This is how to store into the string LABEL the symbol_ref name of an internal numbered label where PREFIX is the class of label and NUM is the number within the class. This is suitable for output with `assemble_name'. */ #undef ASM_GENERATE_INTERNAL_LABEL #define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM) \ sprintf ((LABEL), "*.L%s%ld", (PREFIX), (long)(NUM)) #undef ASM_SPEC #define ASM_SPEC "%{fpic:-K PIC} %{fPIC:-K PIC} \ %{mlittle-endian:-EL} \ %(asm_cpu) \ " #undef LINK_SPEC #define LINK_SPEC \ "-m elf32_sparc \ %{assert*} %{R*} \ %{shared:-shared} \ %{!shared: \ -dc -dp \ %{!nostdlib:%{!r*:%{!e*:-e __start}}} \ %{!static: \ %{rdynamic:-export-dynamic} \ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}} \ %{static:-static}}" #undef STDC_0_IN_SYSTEM_HEADERS /* Name the port. */ #undef TARGET_NAME #define TARGET_NAME "sparc-netbsdelf" /* XXX Redefine this; mucks with it. */ #undef TARGET_VERSION #define TARGET_VERSION fprintf (stderr, " (%s)", TARGET_NAME); /* Name the target CPU. */ #ifndef TARGET_CPU_DEFAULT #define TARGET_CPU_DEFAULT TARGET_CPU_sparc #endif /* Use sjlj exceptions. */ #define DWARF2_UNWIND_INFO 0