netbsd.h revision 132718
141681Sdfr#define TARGET_OS_CPP_BUILTINS() \ 250476Speter do \ 341681Sdfr { \ 4299293Sgjb NETBSD_OS_CPP_BUILTINS_AOUT(); \ 5299293Sgjb } \ 683609Sru while (0) 783609Sru 841681Sdfr#define TARGET_VERSION fprintf (stderr, " (NetBSD/i386 a.out)"); 983609Sru 10/* This goes away when the math-emulator is fixed */ 11#undef TARGET_SUBTARGET_DEFAULT 12#define TARGET_SUBTARGET_DEFAULT \ 13 (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS | MASK_NO_FANCY_MATH_387) 14 15#undef SUBTARGET_EXTRA_SPECS 16#define SUBTARGET_EXTRA_SPECS \ 17 { "netbsd_cpp_spec", NETBSD_CPP_SPEC }, 18 19#undef CPP_SPEC 20#define CPP_SPEC "%(netbsd_cpp_spec)" 21 22 23#undef SIZE_TYPE 24#define SIZE_TYPE "unsigned int" 25 26#undef PTRDIFF_TYPE 27#define PTRDIFF_TYPE "int" 28 29#undef ASM_APP_ON 30#define ASM_APP_ON "#APP\n" 31 32#undef ASM_APP_OFF 33#define ASM_APP_OFF "#NO_APP\n" 34 35/* Don't default to pcc-struct-return, because gcc is the only compiler, and 36 we want to retain compatibility with older gcc versions. */ 37#define DEFAULT_PCC_STRUCT_RETURN 0 38 39/* i386 netbsd still uses old binutils that don't insert nops by default 40 when the .align directive demands to insert extra space in the text 41 segment. */ 42#undef ASM_OUTPUT_ALIGN 43#define ASM_OUTPUT_ALIGN(FILE,LOG) \ 44 if ((LOG)!=0) fprintf ((FILE), "\t.align %d,0x90\n", (LOG)) 45 46/* Profiling routines, partially copied from i386/osfrose.h. */ 47 48/* Redefine this to use %eax instead of %edx. */ 49#undef FUNCTION_PROFILER 50#define FUNCTION_PROFILER(FILE, LABELNO) \ 51{ \ 52 if (flag_pic) \ 53 { \ 54 fprintf (FILE, "\tcall mcount@PLT\n"); \ 55 } \ 56 else \ 57 { \ 58 fprintf (FILE, "\tcall mcount\n"); \ 59 } \ 60} 61 62/* Until they use ELF or something that handles dwarf2 unwinds 63 and initialization stuff better. */ 64#define DWARF2_UNWIND_INFO 0 65 66/* Redefine this so that it becomes "_GLOBAL_OFFSET_TABLE_" when the label 67 prefix is added. */ 68#undef GOT_SYMBOL_NAME 69#define GOT_SYMBOL_NAME "GLOBAL_OFFSET_TABLE_" 70 71/* Attempt to enable execute permissions on the stack. */ 72#define ENABLE_EXECUTE_STACK NETBSD_ENABLE_EXECUTE_STACK 73