aboutsummaryrefslogtreecommitdiff
path: root/external/nvapi/include/nvShaderExtnEnums.h
diff options
context:
space:
mode:
authorMiles Macklin <[email protected]>2017-03-10 14:51:31 +1300
committerMiles Macklin <[email protected]>2017-03-10 14:51:31 +1300
commitad3d90fafe5ee79964bdfe1f1e0704c3ffcdfd5f (patch)
tree4cc6f3288363889d7342f7f8407c0251e6904819 /external/nvapi/include/nvShaderExtnEnums.h
downloadflex-ad3d90fafe5ee79964bdfe1f1e0704c3ffcdfd5f.tar.xz
flex-ad3d90fafe5ee79964bdfe1f1e0704c3ffcdfd5f.zip
Initial 1.1.0 binary release
Diffstat (limited to 'external/nvapi/include/nvShaderExtnEnums.h')
-rw-r--r--external/nvapi/include/nvShaderExtnEnums.h72
1 files changed, 72 insertions, 0 deletions
diff --git a/external/nvapi/include/nvShaderExtnEnums.h b/external/nvapi/include/nvShaderExtnEnums.h
new file mode 100644
index 0000000..c55f1ed
--- /dev/null
+++ b/external/nvapi/include/nvShaderExtnEnums.h
@@ -0,0 +1,72 @@
+ /************************************************************************************************************************************\
+|* *|
+|* Copyright � 2012 NVIDIA Corporation. All rights reserved. *|
+|* *|
+|* NOTICE TO USER: *|
+|* *|
+|* This software is subject to NVIDIA ownership rights under U.S. and international Copyright laws. *|
+|* *|
+|* This software and the information contained herein are PROPRIETARY and CONFIDENTIAL to NVIDIA *|
+|* and are being provided solely under the terms and conditions of an NVIDIA software license agreement. *|
+|* Otherwise, you have no rights to use or access this software in any manner. *|
+|* *|
+|* If not covered by the applicable NVIDIA software license agreement: *|
+|* NVIDIA MAKES NO REPRESENTATION ABOUT THE SUITABILITY OF THIS SOFTWARE FOR ANY PURPOSE. *|
+|* IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY OF ANY KIND. *|
+|* NVIDIA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, *|
+|* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE. *|
+|* IN NO EVENT SHALL NVIDIA BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, *|
+|* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, *|
+|* NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOURCE CODE. *|
+|* *|
+|* U.S. Government End Users. *|
+|* This software is a "commercial item" as that term is defined at 48 C.F.R. 2.101 (OCT 1995), *|
+|* consisting of "commercial computer software" and "commercial computer software documentation" *|
+|* as such terms are used in 48 C.F.R. 12.212 (SEPT 1995) and is provided to the U.S. Government only as a commercial end item. *|
+|* Consistent with 48 C.F.R.12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (JUNE 1995), *|
+|* all U.S. Government End Users acquire the software with only those rights set forth herein. *|
+|* *|
+|* Any use of this software in individual and commercial software must include, *|
+|* in the user documentation and internal comments to the code, *|
+|* the above Disclaimer (as applicable) and U.S. Government End Users Notice. *|
+|* *|
+ \************************************************************************************************************************************/
+
+////////////////////////////////////////////////////////////////////////////////
+////////////////////////// NVIDIA SHADER EXTENSIONS ////////////////////////////
+////////////////////////////////////////////////////////////////////////////////
+
+// This file can be included both from HLSL shader code as well as C++ code.
+// The app should call NvAPI_D3D11_IsNvShaderExtnOpCodeSupported() / NvAPI_D3D12_IsNvShaderExtnOpCodeSupported()
+// to check for support for every nv shader extension opcode it plans to use
+
+
+
+//----------------------------------------------------------------------------//
+//---------------------------- NV Shader Extn Version -----------------------//
+//----------------------------------------------------------------------------//
+#define NV_SHADER_EXTN_VERSION 1
+
+//----------------------------------------------------------------------------//
+//---------------------------- Misc constants --------------------------------//
+//----------------------------------------------------------------------------//
+#define NV_WARP_SIZE 32
+
+
+//----------------------------------------------------------------------------//
+//---------------------------- opCode constants ------------------------------//
+//----------------------------------------------------------------------------//
+
+
+#define NV_EXTN_OP_SHFL 1
+#define NV_EXTN_OP_SHFL_UP 2
+#define NV_EXTN_OP_SHFL_DOWN 3
+#define NV_EXTN_OP_SHFL_XOR 4
+
+#define NV_EXTN_OP_VOTE_ALL 5
+#define NV_EXTN_OP_VOTE_ANY 6
+#define NV_EXTN_OP_VOTE_BALLOT 7
+
+#define NV_EXTN_OP_GET_LANE_ID 8
+#define NV_EXTN_OP_FP16_ATOMIC 12
+#define NV_EXTN_OP_FP32_ATOMIC 13