netbsd.h revision 96263
1/* This is tested by i386gas.h.  */
2#define YES_UNDERSCORES
3
4#include <i386/gstabs.h>
5
6/* Get generic NetBSD definitions.  */
7#include <netbsd.h>
8#include <netbsd-aout.h>
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 CPP_PREDEFINES
16#define CPP_PREDEFINES "-Dunix -D__NetBSD__ \
17 -Asystem=unix -Asystem=bsd -Asystem=NetBSD"
18
19#undef SIZE_TYPE
20#define SIZE_TYPE "unsigned int"
21
22#undef PTRDIFF_TYPE
23#define PTRDIFF_TYPE "int"
24
25#undef ASM_APP_ON
26#define ASM_APP_ON "#APP\n"
27
28#undef ASM_APP_OFF
29#define ASM_APP_OFF "#NO_APP\n"
30
31/* Don't default to pcc-struct-return, because gcc is the only compiler, and
32   we want to retain compatibility with older gcc versions.  */
33#define DEFAULT_PCC_STRUCT_RETURN 0
34
35/* i386 netbsd still uses old binutils that don't insert nops by default
36   when the .align directive demands to insert extra space in the text
37   segment.  */
38#undef ASM_OUTPUT_ALIGN
39#define ASM_OUTPUT_ALIGN(FILE,LOG) \
40  if ((LOG)!=0) fprintf ((FILE), "\t.align %d,0x90\n", (LOG))
41
42/* Profiling routines, partially copied from i386/osfrose.h.  */
43
44/* Redefine this to use %eax instead of %edx.  */
45#undef FUNCTION_PROFILER
46#define FUNCTION_PROFILER(FILE, LABELNO)  \
47{									\
48  if (flag_pic)								\
49    {									\
50      fprintf (FILE, "\tcall mcount@PLT\n");				\
51    }									\
52  else									\
53    {									\
54      fprintf (FILE, "\tcall mcount\n");				\
55    }									\
56}
57
58/* Until they use ELF or something that handles dwarf2 unwinds
59   and initialization stuff better.  */
60#define DWARF2_UNWIND_INFO 0
61