1 #define TARGET_OS_CPP_BUILTINS() \ 2 do \ 3 { \ 4 NETBSD_OS_CPP_BUILTINS_AOUT(); \ 5 } \ 6 while (0) 7 8 #define TARGET_VERSION fprintf (stderr, " (NetBSD/i386 a.out)"); 9 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