1 ; Options for the NVPTX port
2 ; Copyright (C) 2014-2024 Free Software Foundation, Inc.
4 ; This file is part of GCC.
6 ; GCC is free software; you can redistribute it and/or modify it under
7 ; the terms of the GNU General Public License as published by the Free
8 ; Software Foundation; either version 3, or (at your option) any later
11 ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
12 ; WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 ; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
16 ; You should have received a copy of the GNU General Public License
17 ; along with GCC; see the file COPYING3. If not see
18 ; <http://www.gnu.org/licenses/>.
21 config/nvptx/nvptx-opts.h
23 ; It's not clear whether this was ever build/tested/used, so this is no longer
24 ; exposed to the user.
26 ;Target RejectNegative InverseMask(ABI64)
27 ;Generate code for a 32-bit ABI.
30 Target RejectNegative Mask(ABI64)
31 Ignored, but preserved for backward compatibility. Only 64-bit ABI is
36 Link in code for a __main kernel.
39 Target Var(nvptx_optimize) Init(-1)
40 Optimize partition neutering.
43 Target Mask(SOFT_STACK)
44 Use custom stacks instead of local memory for automatic storage.
46 msoft-stack-reserve-local=
47 Target Joined RejectNegative UInteger Var(nvptx_softstack_size) Init(128)
48 Specify size of .local memory used for stack when the exact amount is not known.
51 Target Mask(UNIFORM_SIMT)
52 Generate code that can keep local state uniform across all lanes.
56 Generate code for OpenMP offloading: enables -msoft-stack and -muniform-simt.
59 Target RejectNegative ToLower Joined Enum(ptx_isa) Var(ptx_isa_option) Init(PTX_ISA_unset)
60 Specify the PTX ISA target architecture to use.
63 Target RejectNegative Joined Alias(misa=)
67 Target RejectNegative Alias(misa=,sm_30)
70 Target RejectNegative Alias(misa=,sm_30)
73 Target RejectNegative Alias(misa=,sm_35)
76 Target RejectNegative Alias(misa=,sm_35)
79 Target RejectNegative Alias(misa=,sm_35)
82 Target RejectNegative Alias(misa=,sm_35)
85 Target RejectNegative Alias(misa=,sm_53)
88 Target RejectNegative Alias(misa=,sm_53)
91 Target RejectNegative Alias(misa=,sm_53)
94 Target RejectNegative Alias(misa=,sm_53)
97 Target RejectNegative Alias(misa=,sm_70)
100 Target RejectNegative Alias(misa=,sm_70)
103 Target RejectNegative Alias(misa=,sm_75)
106 Target RejectNegative Alias(misa=,sm_80)
109 Target RejectNegative Alias(misa=,sm_80)
112 Target RejectNegative Alias(misa=,sm_80)
115 Target RejectNegative Alias(misa=,sm_80)
118 Target RejectNegative Alias(misa=,sm_80)
121 Target RejectNegative Alias(misa=,sm_80)
124 Name(ptx_version) Type(enum ptx_version)
125 Known PTX ISA versions (for use with the -mptx= option):
128 Enum(ptx_version) String(3.1) Value(PTX_VERSION_3_1)
131 Enum(ptx_version) String(6.0) Value(PTX_VERSION_6_0)
134 Enum(ptx_version) String(6.3) Value(PTX_VERSION_6_3)
137 Enum(ptx_version) String(7.0) Value(PTX_VERSION_7_0)
140 Enum(ptx_version) String(_) Value(PTX_VERSION_default)
143 Target RejectNegative ToLower Joined Enum(ptx_version) Var(ptx_version_option) Init(PTX_VERSION_unset)
144 Specify the PTX ISA version to use.
147 Target Var(nvptx_init_regs) IntegerRange(0, 3) Joined UInteger Init(3)
148 Initialize ptx registers.
151 Target Var(nvptx_comment) Init(1) Undocumented
154 Target Var(nvptx_alias) Init(0) Undocumented
157 Target Var(nvptx_experimental) Init(0) Undocumented