1; Options for the NVPTX port 2; Copyright (C) 2014-2022 Free Software Foundation, Inc. 3; 4; This file is part of GCC. 5; 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 9; version. 10; 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 14; for more details. 15; 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/>. 19 20; It's not clear whether this was ever build/tested/used, so this is no longer 21; exposed to the user. 22;m32 23;Target RejectNegative InverseMask(ABI64) 24;Generate code for a 32-bit ABI. 25 26m64 27Target RejectNegative Mask(ABI64) 28Ignored, but preserved for backward compatibility. Only 64-bit ABI is 29supported. 30 31mmainkernel 32Target RejectNegative 33Link in code for a __main kernel. 34 35moptimize 36Target Var(nvptx_optimize) Init(-1) 37Optimize partition neutering. 38 39msoft-stack 40Target Mask(SOFT_STACK) 41Use custom stacks instead of local memory for automatic storage. 42 43msoft-stack-reserve-local= 44Target Joined RejectNegative UInteger Var(nvptx_softstack_size) Init(128) 45Specify size of .local memory used for stack when the exact amount is not known. 46 47muniform-simt 48Target Mask(UNIFORM_SIMT) 49Generate code that can keep local state uniform across all lanes. 50 51mgomp 52Target Mask(GOMP) 53Generate code for OpenMP offloading: enables -msoft-stack and -muniform-simt. 54 55misa= 56Target RejectNegative ToLower Joined Enum(ptx_isa) Var(ptx_isa_option) Init(PTX_ISA_SM30) 57Specify the PTX ISA target architecture to use. 58 59march= 60Target RejectNegative Joined Alias(misa=) 61Alias: 62 63march-map=sm_30 64Target RejectNegative Alias(misa=,sm_30) 65 66march-map=sm_32 67Target RejectNegative Alias(misa=,sm_30) 68 69march-map=sm_35 70Target RejectNegative Alias(misa=,sm_35) 71 72march-map=sm_37 73Target RejectNegative Alias(misa=,sm_35) 74 75march-map=sm_50 76Target RejectNegative Alias(misa=,sm_35) 77 78march-map=sm_52 79Target RejectNegative Alias(misa=,sm_35) 80 81march-map=sm_53 82Target RejectNegative Alias(misa=,sm_53) 83 84march-map=sm_60 85Target RejectNegative Alias(misa=,sm_53) 86 87march-map=sm_61 88Target RejectNegative Alias(misa=,sm_53) 89 90march-map=sm_62 91Target RejectNegative Alias(misa=,sm_53) 92 93march-map=sm_70 94Target RejectNegative Alias(misa=,sm_70) 95 96march-map=sm_72 97Target RejectNegative Alias(misa=,sm_70) 98 99march-map=sm_75 100Target RejectNegative Alias(misa=,sm_75) 101 102march-map=sm_80 103Target RejectNegative Alias(misa=,sm_80) 104 105march-map=sm_86 106Target RejectNegative Alias(misa=,sm_80) 107 108march-map=sm_87 109Target RejectNegative Alias(misa=,sm_80) 110 111march-map=sm_90 112Target RejectNegative Alias(misa=,sm_80) 113 114Enum 115Name(ptx_version) Type(int) 116Known PTX ISA versions (for use with the -mptx= option): 117 118EnumValue 119Enum(ptx_version) String(3.1) Value(PTX_VERSION_3_1) 120 121EnumValue 122Enum(ptx_version) String(6.0) Value(PTX_VERSION_6_0) 123 124EnumValue 125Enum(ptx_version) String(6.3) Value(PTX_VERSION_6_3) 126 127EnumValue 128Enum(ptx_version) String(7.0) Value(PTX_VERSION_7_0) 129 130EnumValue 131Enum(ptx_version) String(_) Value(PTX_VERSION_default) 132 133mptx= 134Target RejectNegative ToLower Joined Enum(ptx_version) Var(ptx_version_option) 135Specify the PTX ISA version to use. 136 137minit-regs= 138Target Var(nvptx_init_regs) IntegerRange(0, 3) Joined UInteger Init(3) 139Initialize ptx registers. 140 141mptx-comment 142Target Var(nvptx_comment) Init(1) Undocumented 143 144malias 145Target Var(nvptx_alias) Init(0) Undocumented 146 147mexperimental 148Target Var(nvptx_experimental) Init(0) Undocumented 149