1 ; SYSV4 options for PPC port.
3 ; Copyright (C) 2005-2017 Free Software Foundation, Inc.
4 ; Contributed by Aldy Hernandez <aldy@quesejoda.com>.
6 ; This file is part of GCC.
8 ; GCC is free software; you can redistribute it and/or modify it under
9 ; the terms of the GNU General Public License as published by the Free
10 ; Software Foundation; either version 3, or (at your option) any later
13 ; GCC is distributed in the hope that it will be useful, but WITHOUT
14 ; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15 ; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
16 ; 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/>.
23 Target RejectNegative Joined Var(rs6000_abi_name)
24 Select ABI calling convention.
27 Target RejectNegative Joined Var(rs6000_sdata_name)
28 Select method for sdata handling.
31 Target RejectNegative Joined Var(rs6000_tls_size) Enum(rs6000_tls_size)
32 Specify bit size of immediate TLS offsets.
35 Name(rs6000_tls_size) Type(int)
38 Enum(rs6000_tls_size) String(16) Value(16)
41 Enum(rs6000_tls_size) String(32) Value(32)
44 Enum(rs6000_tls_size) String(64) Value(64)
47 Target Report Var(TARGET_NO_BITFIELD_TYPE) Save
48 Align to the base type of the bit-field.
51 Target Report Mask(STRICT_ALIGN) Var(rs6000_isa_flags)
52 Align to the base type of the bit-field.
53 Don't assume that unaligned accesses are handled by the system.
56 Target Report Mask(RELOCATABLE) Var(rs6000_isa_flags)
57 Produce code relocatable at runtime.
61 Produce code relocatable at runtime.
64 Target Report RejectNegative Mask(LITTLE_ENDIAN) Var(rs6000_isa_flags)
65 Produce little endian code.
68 Target Report RejectNegative Mask(LITTLE_ENDIAN) Var(rs6000_isa_flags)
69 Produce little endian code.
72 Target Report RejectNegative InverseMask(LITTLE_ENDIAN) Var(rs6000_isa_flags)
73 Produce big endian code.
76 Target Report RejectNegative InverseMask(LITTLE_ENDIAN) Var(rs6000_isa_flags)
77 Produce big endian code.
79 ;; FIXME: This does nothing. What should be done?
89 Target Var(target_prototype) Save
90 Assume all variable arg functions are prototyped.
92 ;; FIXME: Does nothing.
98 Target Report Mask(EABI) Var(rs6000_isa_flags)
102 Target Report Var(TARGET_NO_BITFIELD_WORD) Save
103 Allow bit-fields to cross word boundaries.
106 Target Var(rs6000_regnames) Save
107 Use alternate register names.
109 ;; This option does nothing and only exists because the compiler
110 ;; driver passes all -m* options through.
113 Use default method for sdata handling.
116 Target RejectNegative
117 Link with libsim.a, libc.a and sim-crt0.o.
120 Target RejectNegative
121 Link with libads.a, libc.a and crt0.o.
124 Target RejectNegative
125 Link with libyk.a, libc.a and crt0.o.
128 Target RejectNegative
129 Link with libmvme.a, libc.a and crt0.o.
132 Target RejectNegative
133 Set the PPC_EMB bit in the ELF flags header.
136 Target RejectNegative
140 Target Report RejectNegative Negative(m32) Mask(64BIT) Var(rs6000_isa_flags)
141 Generate 64-bit code.
144 Target Report RejectNegative Negative(m64) InverseMask(64BIT) Var(rs6000_isa_flags)
145 Generate 32-bit code.
148 Target RejectNegative
152 Target Report RejectNegative Var(secure_plt, 1) Save
153 Generate code to use a non-exec PLT and GOT.
156 Target Report RejectNegative Var(secure_plt, 0) Save
157 Generate code for old exec BSS PLT.
160 Target Report Var(rs6000_gnu_attr) Init(1) Save
161 Emit .gnu_attribute tags.