xref: /third_party/glslang/SPIRV/GLSL.std.450.h (revision 617a3bab)
1/*
2** Copyright (c) 2014-2016 The Khronos Group Inc.
3**
4** Permission is hereby granted, free of charge, to any person obtaining a copy
5** of this software and/or associated documentation files (the "Materials"),
6** to deal in the Materials without restriction, including without limitation
7** the rights to use, copy, modify, merge, publish, distribute, sublicense,
8** and/or sell copies of the Materials, and to permit persons to whom the
9** Materials are furnished to do so, subject to the following conditions:
10**
11** The above copyright notice and this permission notice shall be included in
12** all copies or substantial portions of the Materials.
13**
14** MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
15** STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
16** HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/
17**
18** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
19** OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
21** THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23** FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
24** IN THE MATERIALS.
25*/
26
27#ifndef GLSLstd450_H
28#define GLSLstd450_H
29
30static const int GLSLstd450Version = 100;
31static const int GLSLstd450Revision = 1;
32
33enum GLSLstd450 {
34    GLSLstd450Bad = 0,              // Don't use
35
36    GLSLstd450Round = 1,
37    GLSLstd450RoundEven = 2,
38    GLSLstd450Trunc = 3,
39    GLSLstd450FAbs = 4,
40    GLSLstd450SAbs = 5,
41    GLSLstd450FSign = 6,
42    GLSLstd450SSign = 7,
43    GLSLstd450Floor = 8,
44    GLSLstd450Ceil = 9,
45    GLSLstd450Fract = 10,
46
47    GLSLstd450Radians = 11,
48    GLSLstd450Degrees = 12,
49    GLSLstd450Sin = 13,
50    GLSLstd450Cos = 14,
51    GLSLstd450Tan = 15,
52    GLSLstd450Asin = 16,
53    GLSLstd450Acos = 17,
54    GLSLstd450Atan = 18,
55    GLSLstd450Sinh = 19,
56    GLSLstd450Cosh = 20,
57    GLSLstd450Tanh = 21,
58    GLSLstd450Asinh = 22,
59    GLSLstd450Acosh = 23,
60    GLSLstd450Atanh = 24,
61    GLSLstd450Atan2 = 25,
62
63    GLSLstd450Pow = 26,
64    GLSLstd450Exp = 27,
65    GLSLstd450Log = 28,
66    GLSLstd450Exp2 = 29,
67    GLSLstd450Log2 = 30,
68    GLSLstd450Sqrt = 31,
69    GLSLstd450InverseSqrt = 32,
70
71    GLSLstd450Determinant = 33,
72    GLSLstd450MatrixInverse = 34,
73
74    GLSLstd450Modf = 35,            // second operand needs an OpVariable to write to
75    GLSLstd450ModfStruct = 36,      // no OpVariable operand
76    GLSLstd450FMin = 37,
77    GLSLstd450UMin = 38,
78    GLSLstd450SMin = 39,
79    GLSLstd450FMax = 40,
80    GLSLstd450UMax = 41,
81    GLSLstd450SMax = 42,
82    GLSLstd450FClamp = 43,
83    GLSLstd450UClamp = 44,
84    GLSLstd450SClamp = 45,
85    GLSLstd450FMix = 46,
86    GLSLstd450IMix = 47,            // Reserved
87    GLSLstd450Step = 48,
88    GLSLstd450SmoothStep = 49,
89
90    GLSLstd450Fma = 50,
91    GLSLstd450Frexp = 51,            // second operand needs an OpVariable to write to
92    GLSLstd450FrexpStruct = 52,      // no OpVariable operand
93    GLSLstd450Ldexp = 53,
94
95    GLSLstd450PackSnorm4x8 = 54,
96    GLSLstd450PackUnorm4x8 = 55,
97    GLSLstd450PackSnorm2x16 = 56,
98    GLSLstd450PackUnorm2x16 = 57,
99    GLSLstd450PackHalf2x16 = 58,
100    GLSLstd450PackDouble2x32 = 59,
101    GLSLstd450UnpackSnorm2x16 = 60,
102    GLSLstd450UnpackUnorm2x16 = 61,
103    GLSLstd450UnpackHalf2x16 = 62,
104    GLSLstd450UnpackSnorm4x8 = 63,
105    GLSLstd450UnpackUnorm4x8 = 64,
106    GLSLstd450UnpackDouble2x32 = 65,
107
108    GLSLstd450Length = 66,
109    GLSLstd450Distance = 67,
110    GLSLstd450Cross = 68,
111    GLSLstd450Normalize = 69,
112    GLSLstd450FaceForward = 70,
113    GLSLstd450Reflect = 71,
114    GLSLstd450Refract = 72,
115
116    GLSLstd450FindILsb = 73,
117    GLSLstd450FindSMsb = 74,
118    GLSLstd450FindUMsb = 75,
119
120    GLSLstd450InterpolateAtCentroid = 76,
121    GLSLstd450InterpolateAtSample = 77,
122    GLSLstd450InterpolateAtOffset = 78,
123
124    GLSLstd450NMin = 79,
125    GLSLstd450NMax = 80,
126    GLSLstd450NClamp = 81,
127
128    GLSLstd450Count
129};
130
131#endif  // #ifndef GLSLstd450_H
132