c: Introduce -Wmissing-parameter-name
[official-gcc.git] / gcc / config / i386 / i386elf.h
blobe6ddcba35c92af395caf4545c54bec4d74c203a5
1 /* Target definitions for GCC for Intel 80386 using ELF
2 Copyright (C) 1988-2024 Free Software Foundation, Inc.
4 Derived from sysv4.h written by Ron Guilmette (rfg@netcom.com).
6 This file is part of GCC.
8 GCC is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3, or (at your option)
11 any later version.
13 GCC is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with GCC; see the file COPYING3. If not see
20 <http://www.gnu.org/licenses/>. */
22 /* Define DEFAULT_PCC_STRUCT_RETURN to 1 because the i386 SVR4 ABI returns
23 records and unions in memory. ix86_option_override_internal will overide
24 this flag when compiling 64-bit code as we never do pcc_struct_return
25 scheme on x86-64. */
26 #undef DEFAULT_PCC_STRUCT_RETURN
27 #define DEFAULT_PCC_STRUCT_RETURN 1
29 #undef CPP_SPEC
30 #define CPP_SPEC ""
32 #define ENDFILE_SPEC "crtend.o%s"
34 #define STARTFILE_SPEC "%{!shared: \
35 %{!symbolic: \
36 %{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}}}\
37 crtbegin.o%s"
39 #undef DEBUGGER_REGNO
40 #define DEBUGGER_REGNO(n) \
41 (TARGET_64BIT ? debugger64_register_map[n] : svr4_debugger_register_map[n])
43 #define LOCAL_LABEL_PREFIX "."
45 /* Switch into a generic section. */
46 #define TARGET_ASM_NAMED_SECTION default_elf_asm_named_section
48 #undef BSS_SECTION_ASM_OP
49 #define BSS_SECTION_ASM_OP "\t.section\t.bss"
51 #undef ASM_OUTPUT_ALIGNED_BSS
52 #define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
53 asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN)