]> git.tdb.fi Git - libs/gl.git/blobdiff - source/glsl/spirvconstants.h
Handle the flat and centroid qualifiers in SPIR-V output
[libs/gl.git] / source / glsl / spirvconstants.h
index 661839053544d7e762d640fac159073cc57392da..bd82becd0e54699530ed92a9d2c0bdbb6dcc91c3 100644 (file)
@@ -64,10 +64,14 @@ enum SpirVOpcode
        OP_IMAGE_SAMPLE_DREF_IMPLICIT_LOD = 89,
        OP_IMAGE_SAMPLE_DREF_EXPLICIT_LOD = 89,
        OP_IMAGE_FETCH = 95,
+       OP_IMAGE_READ = 98,
+       OP_IMAGE_WRITE = 99,
        OP_IMAGE = 100,
        OP_IMAGE_QUERY_SIZE_LOD = 103,
+       OP_IMAGE_QUERY_SIZE = 104,
        OP_IMAGE_QUERY_LOD = 105,
        OP_IMAGE_QUERY_LEVELS = 106,
+       OP_IMAGE_QUERY_SAMPLES = 107,
        OP_CONVERT_F_TO_U = 109,
        OP_CONVERT_F_TO_S = 110,
        OP_CONVERT_S_TO_F = 111,
@@ -158,6 +162,7 @@ enum SpirVCapability
 {
        CAP_SHADER = 1,
        CAP_GEOMETRY = 2,
+       CAP_STORAGE_IMAGE_MULTISAMPLE = 27,
        CAP_IMAGE_CUBE_ARRAY = 34,
        CAP_SAMPLED_1D = 43,
        CAP_IMAGE_1D = 44,
@@ -169,7 +174,10 @@ enum SpirVCapability
 
 enum SpirVExecutionMode
 {
+       EXEC_INVOCATIONS = 0,
+       EXEC_ORIGIN_UPPER_LEFT = 7,
        EXEC_ORIGIN_LOWER_LEFT = 8,
+       EXEC_LOCAL_SIZE = 17,
        EXEC_INPUT_POINTS = 19,
        EXEC_INPUT_LINES = 20,
        EXEC_INPUT_LINES_ADJACENCY = 21,
@@ -188,7 +196,8 @@ enum SpirVStorageClass
        STORAGE_UNIFORM = 2,
        STORAGE_OUTPUT = 3,
        STORAGE_PRIVATE = 6,
-       STORAGE_FUNCTION = 7
+       STORAGE_FUNCTION = 7,
+       STORAGE_PUSH_CONSTANT = 9
 };
 
 enum SpirVDecoration
@@ -200,6 +209,8 @@ enum SpirVDecoration
        DECO_ARRAY_STRIDE = 6,
        DECO_MATRIX_STRIDE = 7,
        DECO_BUILTIN = 11,
+       DECO_FLAT = 14,
+       DECO_CENTROID = 16,
        DECO_LOCATION = 30,
        DECO_BINDING = 33,
        DECO_DESCRIPTOR_SET = 34,
@@ -221,7 +232,36 @@ enum SpirVBuiltin
        BUILTIN_FRONT_FACING = 17,
        BUILTIN_SAMPLE_ID = 18,
        BUILTIN_SAMPLE_POSITION = 19,
-       BUILTIN_FRAG_DEPTH = 22
+       BUILTIN_FRAG_DEPTH = 22,
+       BUILTIN_NUM_WORKGROUPS = 24,
+       BUILTIN_WORKGROUP_SIZE = 25,
+       BUILTIN_WORKGROUP_ID = 26,
+       BUILTIN_LOCAL_INVOCATION_ID = 27,
+       BUILTIN_GLOBAL_INVOCATION_ID = 28,
+       BUILTIN_LOCAL_INVOCATION_INDEX = 29
+};
+
+enum SpirVFormat
+{
+       FORMAT_UNKNOWN = 0,
+       FORMAT_RGBA32F = 1,
+       FORMAT_RGBA16F = 2,
+       FORMAT_R32F = 3,
+       FORMAT_RGBA8 = 4,
+       FORMAT_RGBA8_SNORM = 5,
+       FORMAT_RG32F = 6,
+       FORMAT_RG16F = 7,
+       FORMAT_R16F = 9,
+       FORMAT_RGBA16 = 10,
+       FORMAT_RG16 = 12,
+       FORMAT_RG8 = 13,
+       FORMAT_R16 = 14,
+       FORMAT_R8 = 15,
+       FORMAT_RGBA16_SNORM = 16,
+       FORMAT_RG16_SNORM = 17,
+       FORMAT_RG8_SNORM = 18,
+       FORMAT_R16_SNORM = 19,
+       FORMAT_R8_SNORM = 20
 };
 
 enum SpirVGlslStd450Opcode