OSDN Git Service

2002-04-12 Eric Norum <eric.norum@usask.ca>
[pf3gnuchains/gcc-fork.git] / gcc / config / i386 / aix386.h
1 /* Definitions for IBM PS2 running AIX/386 with gas.
2    From: Minh Tran-Le <TRANLE@intellicorp.com>
3    Copyright (C) 1988, 2000 Free Software Foundation, Inc.
4
5 This file is part of GNU CC.
6
7 GNU CC is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
11
12 GNU CC is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with GNU CC; see the file COPYING.  If not, write to
19 the Free Software Foundation, 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA.  */
21
22 /* 
23  * This configuration file is for gcc with gas-2.x and gnu ld 2.x
24  * with aix ps/2 1.3.x.
25  */
26
27 /* Define USE_GAS if you have the new version of gas that can handle
28  * multiple segments and .section pseudo op.  This will allow gcc to
29  * use the .init section for g++ ctor/dtor.
30  *
31  * If you don't have gas then undefined USE_GAS.  You will also have
32  * to use collect if you want to use g++
33  */
34 #define USE_GAS
35
36 #include "i386/aix386ng.h"
37
38 /* Use crt1.o as a startup file and crtn.o as a closing file.
39    And add crtbegin.o and crtend.o for ctors and dtors */
40
41 #undef  STARTFILE_SPEC
42 #define STARTFILE_SPEC \
43   "%{pg:gcrt0.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}} crtbegin.o%s"
44 #undef  ENDFILE_SPEC
45 #define ENDFILE_SPEC \
46   "crtend.o%s crtn.o%s"
47
48 /* Removed the -K flags because the gnu ld does not handle it */
49 #undef LINK_SPEC
50 #define LINK_SPEC "%{T*} %{z:-lm}"
51
52 /* Define a few machine-specific details of the implementation of
53    constructors.  */
54
55 #undef INIT_SECTION_ASM_OP
56 #define INIT_SECTION_ASM_OP     "\t.section .init,\"x\""
57
58 #define CTOR_LIST_BEGIN                         \
59   asm (INIT_SECTION_ASM_OP);                    \
60   asm ("pushl $0")
61 #define CTOR_LIST_END CTOR_LIST_BEGIN
62
63 #undef TARGET_ASM_CONSTRUCTOR
64 #define TARGET_ASM_CONSTRUCTOR  ix86_svr3_asm_out_constructor