OSDN Git Service

* varasm.c (output_constant_def): Do not consult
[pf3gnuchains/gcc-fork.git] / gcc / config / mips / iris5gas.h
1 /* Definitions of target machine for GNU compiler.  Irix version 5 with gas.  */
2
3 /* Enable debugging.  */
4 #define DBX_DEBUGGING_INFO 1
5 #define DWARF2_DEBUGGING_INFO 1
6 #define SDB_DEBUGGING_INFO 1
7 #define MIPS_DEBUGGING_INFO 1
8 #define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
9
10 /* GNU as does handle DWARF2 directives.  */
11 #undef DWARF2_UNWIND_INFO
12 #define DWARF2_UNWIND_INFO 1
13
14 /* Override iris5.h version to invoke [cd]tors and register eh frame
15    information.  */
16 #undef LINK_SPEC
17 #define LINK_SPEC "\
18 %{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} \
19 %{bestGnum} %{shared} %{non_shared} \
20 %{call_shared} %{no_archive} %{exact_version} \
21 %{static: -non_shared} \
22 %{!static: \
23   %{!shared:%{!non_shared:%{!call_shared: -call_shared -no_unresolved}}}} \
24 %{rpath} -init __do_global_ctors -fini __do_global_dtors \
25 %{shared:-hidden_symbol __do_global_ctors,__do_global_ctors_1,__do_global_dtors} \
26 -_SYSTYPE_SVR4"
27
28 /* Override iris5.h versions to include crtbegin.o and crtend.o.  */
29
30 #undef STARTFILE_SPEC
31 #define STARTFILE_SPEC "\
32 %{!static: \
33   %{!shared:%{pg:gcrt1.o%s}%{!pg:%{p:mcrt1.o%s libprof1.a%s}%{!p:crt1.o%s}}}} \
34 %{static: \
35   %{pg:gcrt1.o%s} \
36   %{!pg:%{p:/usr/lib/nonshared/mcrt1.o%s libprof1.a%s} \
37   %{!p:/usr/lib/nonshared/crt1.o%s}}} \
38 crtbegin.o%s"
39
40 #undef ENDFILE_SPEC
41 #define ENDFILE_SPEC "crtend.o%s %{!shared:crtn.o%s}"
42
43 /* Irix 5 does not have some strange restrictions that Irix 3 had.  */
44 #undef SET_FILE_NUMBER
45 #define SET_FILE_NUMBER() ++num_source_filenames
46 #undef LABEL_AFTER_LOC
47 #define LABEL_AFTER_LOC(STREAM)
48
49 /* We need to use .esize and .etype instead of .size and .type to
50    avoid conflicting with ELF directives.  These are only recognized
51    by gas, anyhow, not the native assembler.  */
52 #undef PUT_SDB_SIZE
53 #define PUT_SDB_SIZE(a)                                       \
54 do {                                                  \
55   extern FILE *asm_out_text_file;                     \
56   fprintf (asm_out_text_file, "\t.esize\t");          \
57   fprintf (asm_out_text_file, HOST_WIDE_INT_PRINT_DEC, (HOST_WIDE_INT) (a)); \
58   fprintf (asm_out_text_file, ";");                   \
59 } while (0)
60
61 #undef PUT_SDB_TYPE
62 #define PUT_SDB_TYPE(a)                                       \
63 do {                                                  \
64   extern FILE *asm_out_text_file;                     \
65   fprintf (asm_out_text_file, "\t.etype\t0x%x;", (a));        \
66 } while (0)
67
68 /* Switch into a generic section.  */
69 #undef TARGET_ASM_NAMED_SECTION
70 #define TARGET_ASM_NAMED_SECTION  default_elf_asm_named_section
71
72 /* Add -g to mips.h default to avoid confusing gas with local symbols
73    generated from stabs info.  */
74 #undef NM_FLAGS
75 #define NM_FLAGS "-Bng"
76
77 /* Disable SHF_MERGE support.  Even if gas supports it, the IRIX ld does not
78    without a special elspec(5) file.  */
79 #undef HAVE_GAS_SHF_MERGE