Commit 553726a4 by Mohan Maiya Committed by Commit Bot

Vulkan: Add OES_shader_multisample_interpolation extension

Addition of 'sample' qualifier keyword and 'interplateAt*' fragment shader builtin functions with autogen Bug: angleproject:3589 Change-Id: If358eb371fbcefffa715c8da4ba5e96eefaf6f52 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2477904 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent d591ddff
......@@ -26,7 +26,7 @@
// Version number for shader translation API.
// It is incremented every time the API changes.
#define ANGLE_SH_VERSION 234
#define ANGLE_SH_VERSION 235
enum ShShaderSpec
{
......@@ -406,6 +406,7 @@ struct ShBuiltInResources
int OES_texture_cube_map_array;
int EXT_texture_cube_map_array;
int EXT_shadow_samplers;
int OES_shader_multisample_interpolation;
// Set to 1 to enable replacing GL_EXT_draw_buffers #extension directives
// with GL_NV_draw_buffers in ESSL output. This flag can be used to emulate
......
......@@ -4,15 +4,15 @@
"src/compiler/translator/generate_parser.py":
"566178ecdfae3a29803b3687fc518ebb",
"src/compiler/translator/glslang.l":
"27b1e8d59a04bbaec10fac5688a67602",
"d0119d698e056a454a4414a254324df4",
"src/compiler/translator/glslang.y":
"1619aa1587a5fae94df9d143af732b77",
"d00fad5170eb80f9d420d126eb0d311c",
"src/compiler/translator/glslang_lex_autogen.cpp":
"ca9edf3f6882bdf9ac60dab16e8fb994",
"6e265988e6f6afe3ff984a07ce3caf16",
"src/compiler/translator/glslang_tab_autogen.cpp":
"fc0ab4cb3179dc0d936ed9d56bb2dbd0",
"3a39adeee3876580c27993da0555320a",
"src/compiler/translator/glslang_tab_autogen.h":
"7be1b46407ec9671626ef3594bcec57e",
"ed181c8ef2a71585f18b2015f5f1c098",
"tools/flex-bison/linux/bison.sha1":
"efa86001f00e7bcfdbe899dd15fc88e0",
"tools/flex-bison/linux/flex.sha1":
......
{
"src/compiler/translator/ImmutableString_ESSL_autogen.cpp":
"a9a7d0620a2db1e80f8a370b523eeae5",
"98168ea2a1d9bfa290c7e72e299955f8",
"src/compiler/translator/ImmutableString_autogen.cpp":
"afe7aec06ab49afc91a1ba25db0a3bce",
"663daecf68294fa141be288ceb7f75f0",
"src/compiler/translator/ParseContext_ESSL_autogen.h":
"4da3f648f61218602aff76296103e0f2",
"b33dad2b5b23cc4a48b0a8183c536c21",
"src/compiler/translator/ParseContext_complete_autogen.h":
"272d913f6a057fe1ebce884a6bd2bb73",
"6113be5f4ebd8789901ef48a611a1e03",
"src/compiler/translator/SymbolTable_ESSL_autogen.cpp":
"017b7c00d55b9ec4edf084e87847f1d9",
"96a8712eba5ae5245af83b082cbd5219",
"src/compiler/translator/SymbolTable_autogen.cpp":
"ef071b17834742f56397bc63d531bb5f",
"51bdcd32bb37a2a1bbffa154f7427694",
"src/compiler/translator/SymbolTable_autogen.h":
"2d8bed6ff5debc6546199a2add316a66",
"src/compiler/translator/builtin_function_declarations.txt":
"dc84b6c5fc78d9da23204d72574dd682",
"bd195be52e11bb993aa757acb3770b85",
"src/compiler/translator/builtin_variables.json":
"98d347a6ed181eca3d89bfd73193d787",
"src/compiler/translator/gen_builtin_symbols.py":
"a538e53475983ae9643afd5b36056347",
"src/compiler/translator/tree_util/BuiltIn_ESSL_autogen.h":
"fa72b4b824dd85feeda5f984866a017f",
"ad4b5fafc78f98b2bf0ff1f0516d6f4b",
"src/compiler/translator/tree_util/BuiltIn_complete_autogen.h":
"c3f43a7fafcf0bad43178be1a7da5d0f",
"7429fd6b4be0c23aba95fbbc66a40ad9",
"src/tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp":
"1f48b488c4e436833f5341ce1ad95f15",
"ade4d08598c35df6eb3a67a9eb45bad8",
"src/tests/compiler_tests/ImmutableString_test_autogen.cpp":
"aeacada0c801b923edefe3a74fc16285"
"424a9c61841fa9b5613fb94210272c30"
}
\ No newline at end of file
......@@ -976,6 +976,7 @@ enum TQualifier
EvqFlat, // Incomplete qualifier
EvqNoPerspective, // Incomplete qualifier
EvqCentroid, // Incomplete qualifier
EvqSample,
EvqSmoothOut,
EvqFlatOut,
EvqNoPerspectiveOut,
......
......@@ -13,8 +13,11 @@
#include <string.h>
#define LIST_EXTENSIONS(OP) \
OP(ARB_texture_rectangle) \
OP(ANGLE_base_vertex_base_instance) \
OP(ANGLE_multi_draw) \
OP(ANGLE_texture_multisample) \
OP(APPLE_clip_distance) \
OP(ARB_texture_rectangle) \
OP(ARM_shader_framebuffer_fetch) \
OP(EXT_blend_func_extended) \
OP(EXT_draw_buffers) \
......@@ -22,26 +25,24 @@
OP(EXT_geometry_shader) \
OP(EXT_gpu_shader5) \
OP(EXT_shader_framebuffer_fetch) \
OP(EXT_shader_non_constant_global_initializers) \
OP(EXT_shader_texture_lod) \
OP(EXT_shadow_samplers) \
OP(EXT_texture_cube_map_array) \
OP(EXT_YUV_target) \
OP(EXT_shader_non_constant_global_initializers) \
OP(NV_shader_noperspective_interpolation) \
OP(NV_EGL_stream_consumer_external) \
OP(NV_shader_framebuffer_fetch) \
OP(NV_shader_noperspective_interpolation) \
OP(OES_EGL_image_external) \
OP(OES_EGL_image_external_essl3) \
OP(OES_shader_multisample_interpolation) \
OP(OES_standard_derivatives) \
OP(OES_texture_storage_multisample_2d_array) \
OP(OES_texture_3D) \
OP(OES_texture_cube_map_array) \
OP(OES_texture_storage_multisample_2d_array) \
OP(OVR_multiview) \
OP(OVR_multiview2) \
OP(ANGLE_multi_draw) \
OP(ANGLE_base_vertex_base_instance) \
OP(WEBGL_video_texture) \
OP(APPLE_clip_distance) \
OP(OES_texture_cube_map_array) \
OP(EXT_texture_cube_map_array) \
OP(EXT_shadow_samplers)
OP(WEBGL_video_texture)
namespace sh
{
......
......@@ -19,8 +19,11 @@ enum class TExtension : uint8_t
{
UNDEFINED, // Special value used to indicate no extension.
ARB_texture_rectangle,
ANGLE_base_vertex_base_instance,
ANGLE_multi_draw,
ANGLE_texture_multisample,
APPLE_clip_distance,
ARB_texture_rectangle,
ARM_shader_framebuffer_fetch,
EXT_blend_func_extended,
EXT_draw_buffers,
......@@ -28,26 +31,24 @@ enum class TExtension : uint8_t
EXT_geometry_shader,
EXT_gpu_shader5,
EXT_shader_framebuffer_fetch,
EXT_shader_non_constant_global_initializers,
EXT_shader_texture_lod,
EXT_shadow_samplers,
EXT_texture_cube_map_array,
EXT_YUV_target,
EXT_shader_non_constant_global_initializers,
NV_EGL_stream_consumer_external,
NV_shader_framebuffer_fetch,
NV_shader_noperspective_interpolation,
OES_EGL_image_external,
OES_EGL_image_external_essl3,
OES_shader_multisample_interpolation,
OES_standard_derivatives,
OES_texture_storage_multisample_2d_array,
OES_texture_3D,
OES_texture_cube_map_array,
OES_texture_storage_multisample_2d_array,
OVR_multiview,
OVR_multiview2,
ANGLE_multi_draw,
ANGLE_base_vertex_base_instance,
WEBGL_video_texture,
APPLE_clip_distance,
OES_texture_cube_map_array,
EXT_texture_cube_map_array,
EXT_shadow_samplers,
};
enum TBehavior : uint8_t
......
......@@ -21,67 +21,72 @@ namespace BuiltInGroup
bool isTextureOffsetNoBias(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3098 && id <= 3167;
return id >= 3110 && id <= 3179;
}
bool isTextureOffsetBias(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3168 && id <= 3187;
return id >= 3180 && id <= 3199;
}
bool isTextureGatherOffsetsComp(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3225 && id <= 3237;
return id >= 3237 && id <= 3249;
}
bool isTextureGatherOffsetsNoComp(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3238 && id <= 3253;
return id >= 3250 && id <= 3265;
}
bool isTextureGatherOffsets(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3225 && id <= 3253;
return id >= 3237 && id <= 3265;
}
bool isTextureGatherOffsetComp(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3254 && id <= 3259;
return id >= 3266 && id <= 3271;
}
bool isTextureGatherOffsetNoComp(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3260 && id <= 3267;
return id >= 3272 && id <= 3279;
}
bool isTextureGatherOffset(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3254 && id <= 3267;
return id >= 3266 && id <= 3279;
}
bool isTextureGather(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3201 && id <= 3267;
return id >= 3213 && id <= 3279;
}
bool isInterpolationFS(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3292 && id <= 3315;
}
bool isAtomicMemory(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3284 && id <= 3301;
return id >= 3320 && id <= 3337;
}
bool isImageLoad(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3332 && id <= 3346;
return id >= 3368 && id <= 3382;
}
bool isImageStore(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3347 && id <= 3361;
return id >= 3383 && id <= 3397;
}
bool isImage(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 3302 && id <= 3361;
return id >= 3338 && id <= 3397;
}
} // namespace BuiltInGroup
......
......@@ -63,25 +63,30 @@ bool isTextureGather(const TFunction *func)
int id = func->uniqueId().get();
return id >= 1327 && id <= 1414;
}
bool isInterpolationFS(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 1451 && id <= 1474;
}
bool isAtomicMemory(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 1476 && id <= 1493;
return id >= 1488 && id <= 1505;
}
bool isImageLoad(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 2130 && id <= 2162;
return id >= 2142 && id <= 2174;
}
bool isImageStore(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 2163 && id <= 2195;
return id >= 2175 && id <= 2207;
}
bool isImage(const TFunction *func)
{
int id = func->uniqueId().get();
return id >= 1494 && id <= 2195;
return id >= 1506 && id <= 2207;
}
} // namespace BuiltInGroup
......
......@@ -179,6 +179,7 @@ void InitBuiltInResources(ShBuiltInResources *resources)
resources->OES_texture_cube_map_array = 0;
resources->EXT_texture_cube_map_array = 0;
resources->EXT_shadow_samplers = 0;
resources->OES_shader_multisample_interpolation = 0;
resources->NV_draw_buffers = 0;
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -961,8 +961,21 @@ GROUP BEGIN DerivativesFS {"shader_type": "FRAGMENT"}
genType fwidthCoarse(genType);
GROUP END DerivativesFS
GROUP BEGIN InterpolationFS {"shader_type": "FRAGMENT"}
DEFAULT METADATA {"glsl_level": "GLSL4_BUILTINS", "op": "CallBuiltInFunction"}
GROUP BEGIN InterpolationFS {"queryFunction": true, "shader_type": "FRAGMENT"}
DEFAULT METADATA {"essl_level": "ESSL3_2_BUILTINS","glsl_level": "GLSL4_BUILTINS", "op": "CallBuiltInFunction"}
float interpolateAtCentroid(float);
vec2 interpolateAtCentroid(vec2);
vec3 interpolateAtCentroid(vec3);
vec4 interpolateAtCentroid(vec4);
float interpolateAtSample(float, int);
vec2 interpolateAtSample(vec2, int);
vec3 interpolateAtSample(vec3, int);
vec4 interpolateAtSample(vec4, int);
float interpolateAtOffset(float, vec2);
vec2 interpolateAtOffset(vec2, vec2);
vec3 interpolateAtOffset(vec3, vec2);
vec4 interpolateAtOffset(vec4, vec2);
DEFAULT METADATA {"essl_level": "ESSL3_BUILTINS", "op": "CallBuiltInFunction", "essl_extension": "OES_shader_multisample_interpolation", "suffix": "Ext"}
float interpolateAtCentroid(float);
vec2 interpolateAtCentroid(vec2);
vec3 interpolateAtCentroid(vec3);
......
......@@ -107,6 +107,7 @@ static int ES3_extension(TParseContext *context, TExtension extension, int token
static int ES3_reserved_ES3_1_extension_ES3_2_keyword(TParseContext *context, TExtension extension, int token);
static int ES3_reserved_ES3_extension(TParseContext *context, TExtension extension, int token);
static int ES3_reserved_ES3_extension_ES3_1_keyword(TParseContext *context, TExtension extension, int token);
static int ES3_reserved_ES3_extension_ES3_2_keyword(TParseContext *context, TExtension extension, int token);
static int ES3_1_reserved_ES3_1_extension_ES3_2_keyword(TParseContext *context, TExtension extension, int token);
static int ES3_1_reserved_ES3_1_extension_ES3_2_keyword_2(TParseContext *context, TExtension extension1, TExtension extension2, int token1, int token2);
static int WEBGL_video_texture_extension(TParseContext *context, int token);
......@@ -267,13 +268,12 @@ O [0-7]
"restrict" { return ES3_reserved_ES3_1_keyword(context, RESTRICT); }
"volatile" { return ES2_reserved_ES3_1_keyword(context, VOLATILE); }
"atomic_uint" { return ES3_reserved_ES3_1_keyword(context, ATOMICUINT); }
"sample" { return ES3_reserved_ES3_extension_ES3_2_keyword(context, TExtension::OES_shader_multisample_interpolation, SAMPLE); }
"precise" { return ES3_1_reserved_ES3_1_extension_ES3_2_keyword(context, TExtension::EXT_gpu_shader5, PRECISE); }
/* Reserved keywords for GLSL ES 3.00 that are not reserved for GLSL ES 1.00 */
"resource" |
"patch" |
"sample" |
"subroutine" |
"common" |
"partition" |
......@@ -698,6 +698,26 @@ int ES3_reserved_ES3_extension_ES3_1_keyword(TParseContext *context, TExtension
return check_type(yyscanner);
}
int ES3_reserved_ES3_extension_ES3_2_keyword(TParseContext *context, TExtension extension, int token)
{
struct yyguts_t* yyg = (struct yyguts_t*) context->getScanner();
yyscan_t yyscanner = (yyscan_t) context->getScanner();
// A keyword in GLSL ES 3.00 with enabled extension or in GLSL ES 3.20
if (is_extension_enabled_or_is_core(context, 300, extension, 320))
{
return token;
}
if(context->getShaderVersion() == 300 ||context->getShaderVersion() == 310)
{
return reserved_word(yyscanner);
}
yylval->lex.string = AllocatePoolCharArray(yytext, yyleng);
return check_type(yyscanner);
}
static int ES3_1_reserved_ES3_1_extension_ES3_2_keyword(TParseContext *context, TExtension extension, int token)
{
struct yyguts_t* yyg = (struct yyguts_t*) context->getScanner();
......
......@@ -164,7 +164,7 @@ extern void yyerror(YYLTYPE* yylloc, TParseContext* context, void *scanner, cons
%token <lex> BVEC2 BVEC3 BVEC4 IVEC2 IVEC3 IVEC4 VEC2 VEC3 VEC4 UVEC2 UVEC3 UVEC4
%token <lex> MATRIX2 MATRIX3 MATRIX4 IN_QUAL OUT_QUAL INOUT_QUAL UNIFORM BUFFER VARYING
%token <lex> MATRIX2x3 MATRIX3x2 MATRIX2x4 MATRIX4x2 MATRIX3x4 MATRIX4x3
%token <lex> CENTROID FLAT SMOOTH NOPERSPECTIVE
%token <lex> SAMPLE CENTROID FLAT SMOOTH NOPERSPECTIVE
%token <lex> READONLY WRITEONLY COHERENT RESTRICT VOLATILE SHARED
%token <lex> STRUCT VOID_TYPE WHILE
%token <lex> SAMPLER2D SAMPLERCUBE SAMPLER_EXTERNAL_OES SAMPLER2DRECT SAMPLER2DARRAY
......@@ -891,6 +891,10 @@ storage_qualifier
COMPUTE_ONLY("shared", @1);
$$ = context->parseGlobalStorageQualifier(EvqShared, @1);
}
| SAMPLE {
ES3_OR_NEWER("sample", @1, "storage qualifier");
$$ = new TStorageQualifierWrapper(EvqSample, @1);
}
;
type_specifier
......
......@@ -452,19 +452,19 @@ static const flex_int16_t yy_accept[938] = {
193, 180, 181, 182, 193, 35, 193, 172, 29, 183, 184, 185, 2, 177, 178, 179, 193, 193, 193,
27, 175, 193, 193, 193,
193, 193, 53, 54, 55, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 121, 193, 193,
193, 193, 53, 54, 55, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 122, 193, 193,
193, 193, 193, 193, 193, 193, 169, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 155,
193, 193, 192, 59, 60, 61, 193, 193, 15, 193, 193, 193, 126, 193, 193, 9, 193, 193, 124,
193, 193, 193, 170, 165, 127, 193, 193, 193, 193, 193, 193, 161, 193, 193, 193, 193, 193, 93,
41, 44, 46, 45, 42, 48, 47, 49, 43, 193, 193, 193, 193, 176, 152, 193, 193, 163, 193,
193, 193, 37, 122, 28,
193, 193, 37, 119, 28,
189, 23, 164, 92, 193, 174, 18, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193,
193, 193, 193, 193, 20, 36, 193, 193, 193, 193, 193, 193, 128, 98, 104, 193, 193, 193, 193,
193, 95, 97, 3, 193, 193, 193, 193, 119, 193, 193, 193, 193, 193, 193, 193, 157, 193, 193,
193, 95, 97, 3, 193, 193, 193, 193, 120, 193, 193, 193, 193, 193, 193, 193, 157, 193, 193,
193, 193, 193, 8, 193, 193, 10, 193, 193, 193, 193, 193, 193, 21, 115, 12, 166, 129, 99,
106, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 162, 193, 193, 193, 113,
120, 116, 193, 193, 193,
121, 116, 193, 193, 193,
193, 193, 193, 193, 193, 158, 130, 100, 105, 193, 193, 173, 193, 117, 193, 193, 193, 193, 6,
193, 193, 193, 193, 193, 193, 193, 193, 193, 109, 167, 1, 193, 193, 193, 193, 193, 193, 191,
......@@ -935,6 +935,9 @@ static int ES3_reserved_ES3_extension(TParseContext *context, TExtension extensi
static int ES3_reserved_ES3_extension_ES3_1_keyword(TParseContext *context,
TExtension extension,
int token);
static int ES3_reserved_ES3_extension_ES3_2_keyword(TParseContext *context,
TExtension extension,
int token);
static int ES3_1_reserved_ES3_1_extension_ES3_2_keyword(TParseContext *context,
TExtension extension,
int token);
......@@ -1746,12 +1749,18 @@ YY_DECL
case 119:
YY_RULE_SETUP
{
return ES3_reserved_ES3_extension_ES3_2_keyword(
context, TExtension::OES_shader_multisample_interpolation, SAMPLE);
}
YY_BREAK
case 120:
YY_RULE_SETUP
{
return ES3_1_reserved_ES3_1_extension_ES3_2_keyword(
context, TExtension::EXT_gpu_shader5, PRECISE);
}
YY_BREAK
/* Reserved keywords for GLSL ES 3.00 that are not reserved for GLSL ES 1.00 */
case 120:
case 121:
case 122:
case 123:
......@@ -3483,6 +3492,28 @@ int ES3_reserved_ES3_extension_ES3_1_keyword(TParseContext *context,
return check_type(yyscanner);
}
int ES3_reserved_ES3_extension_ES3_2_keyword(TParseContext *context,
TExtension extension,
int token)
{
struct yyguts_t *yyg = (struct yyguts_t *)context->getScanner();
yyscan_t yyscanner = (yyscan_t)context->getScanner();
// A keyword in GLSL ES 3.00 with enabled extension or in GLSL ES 3.20
if (is_extension_enabled_or_is_core(context, 300, extension, 320))
{
return token;
}
if (context->getShaderVersion() == 300 || context->getShaderVersion() == 310)
{
return reserved_word(yyscanner);
}
yylval->lex.string = AllocatePoolCharArray(yytext, yyleng);
return check_type(yyscanner);
}
static int ES3_1_reserved_ES3_1_extension_ES3_2_keyword(TParseContext *context,
TExtension extension,
int token)
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -104,127 +104,128 @@ enum yytokentype
MATRIX4x2 = 305,
MATRIX3x4 = 306,
MATRIX4x3 = 307,
CENTROID = 308,
FLAT = 309,
SMOOTH = 310,
NOPERSPECTIVE = 311,
READONLY = 312,
WRITEONLY = 313,
COHERENT = 314,
RESTRICT = 315,
VOLATILE = 316,
SHARED = 317,
STRUCT = 318,
VOID_TYPE = 319,
WHILE = 320,
SAMPLER2D = 321,
SAMPLERCUBE = 322,
SAMPLER_EXTERNAL_OES = 323,
SAMPLER2DRECT = 324,
SAMPLER2DARRAY = 325,
ISAMPLER2D = 326,
ISAMPLER3D = 327,
ISAMPLERCUBE = 328,
ISAMPLER2DARRAY = 329,
USAMPLER2D = 330,
USAMPLER3D = 331,
USAMPLERCUBE = 332,
USAMPLER2DARRAY = 333,
SAMPLER2DMS = 334,
ISAMPLER2DMS = 335,
USAMPLER2DMS = 336,
SAMPLER2DMSARRAY = 337,
ISAMPLER2DMSARRAY = 338,
USAMPLER2DMSARRAY = 339,
SAMPLER3D = 340,
SAMPLER3DRECT = 341,
SAMPLER2DSHADOW = 342,
SAMPLERCUBESHADOW = 343,
SAMPLER2DARRAYSHADOW = 344,
SAMPLERVIDEOWEBGL = 345,
SAMPLERCUBEARRAYOES = 346,
SAMPLERCUBEARRAYSHADOWOES = 347,
ISAMPLERCUBEARRAYOES = 348,
USAMPLERCUBEARRAYOES = 349,
SAMPLERCUBEARRAYEXT = 350,
SAMPLERCUBEARRAYSHADOWEXT = 351,
ISAMPLERCUBEARRAYEXT = 352,
USAMPLERCUBEARRAYEXT = 353,
SAMPLEREXTERNAL2DY2YEXT = 354,
IMAGE2D = 355,
IIMAGE2D = 356,
UIMAGE2D = 357,
IMAGE3D = 358,
IIMAGE3D = 359,
UIMAGE3D = 360,
IMAGE2DARRAY = 361,
IIMAGE2DARRAY = 362,
UIMAGE2DARRAY = 363,
IMAGECUBE = 364,
IIMAGECUBE = 365,
UIMAGECUBE = 366,
IMAGECUBEARRAYOES = 367,
IIMAGECUBEARRAYOES = 368,
UIMAGECUBEARRAYOES = 369,
IMAGECUBEARRAYEXT = 370,
IIMAGECUBEARRAYEXT = 371,
UIMAGECUBEARRAYEXT = 372,
ATOMICUINT = 373,
LAYOUT = 374,
YUVCSCSTANDARDEXT = 375,
YUVCSCSTANDARDEXTCONSTANT = 376,
IDENTIFIER = 377,
TYPE_NAME = 378,
FLOATCONSTANT = 379,
INTCONSTANT = 380,
UINTCONSTANT = 381,
BOOLCONSTANT = 382,
FIELD_SELECTION = 383,
LEFT_OP = 384,
RIGHT_OP = 385,
INC_OP = 386,
DEC_OP = 387,
LE_OP = 388,
GE_OP = 389,
EQ_OP = 390,
NE_OP = 391,
AND_OP = 392,
OR_OP = 393,
XOR_OP = 394,
MUL_ASSIGN = 395,
DIV_ASSIGN = 396,
ADD_ASSIGN = 397,
MOD_ASSIGN = 398,
LEFT_ASSIGN = 399,
RIGHT_ASSIGN = 400,
AND_ASSIGN = 401,
XOR_ASSIGN = 402,
OR_ASSIGN = 403,
SUB_ASSIGN = 404,
LEFT_PAREN = 405,
RIGHT_PAREN = 406,
LEFT_BRACKET = 407,
RIGHT_BRACKET = 408,
LEFT_BRACE = 409,
RIGHT_BRACE = 410,
DOT = 411,
COMMA = 412,
COLON = 413,
EQUAL = 414,
SEMICOLON = 415,
BANG = 416,
DASH = 417,
TILDE = 418,
PLUS = 419,
STAR = 420,
SLASH = 421,
PERCENT = 422,
LEFT_ANGLE = 423,
RIGHT_ANGLE = 424,
VERTICAL_BAR = 425,
CARET = 426,
AMPERSAND = 427,
QUESTION = 428
SAMPLE = 308,
CENTROID = 309,
FLAT = 310,
SMOOTH = 311,
NOPERSPECTIVE = 312,
READONLY = 313,
WRITEONLY = 314,
COHERENT = 315,
RESTRICT = 316,
VOLATILE = 317,
SHARED = 318,
STRUCT = 319,
VOID_TYPE = 320,
WHILE = 321,
SAMPLER2D = 322,
SAMPLERCUBE = 323,
SAMPLER_EXTERNAL_OES = 324,
SAMPLER2DRECT = 325,
SAMPLER2DARRAY = 326,
ISAMPLER2D = 327,
ISAMPLER3D = 328,
ISAMPLERCUBE = 329,
ISAMPLER2DARRAY = 330,
USAMPLER2D = 331,
USAMPLER3D = 332,
USAMPLERCUBE = 333,
USAMPLER2DARRAY = 334,
SAMPLER2DMS = 335,
ISAMPLER2DMS = 336,
USAMPLER2DMS = 337,
SAMPLER2DMSARRAY = 338,
ISAMPLER2DMSARRAY = 339,
USAMPLER2DMSARRAY = 340,
SAMPLER3D = 341,
SAMPLER3DRECT = 342,
SAMPLER2DSHADOW = 343,
SAMPLERCUBESHADOW = 344,
SAMPLER2DARRAYSHADOW = 345,
SAMPLERVIDEOWEBGL = 346,
SAMPLERCUBEARRAYOES = 347,
SAMPLERCUBEARRAYSHADOWOES = 348,
ISAMPLERCUBEARRAYOES = 349,
USAMPLERCUBEARRAYOES = 350,
SAMPLERCUBEARRAYEXT = 351,
SAMPLERCUBEARRAYSHADOWEXT = 352,
ISAMPLERCUBEARRAYEXT = 353,
USAMPLERCUBEARRAYEXT = 354,
SAMPLEREXTERNAL2DY2YEXT = 355,
IMAGE2D = 356,
IIMAGE2D = 357,
UIMAGE2D = 358,
IMAGE3D = 359,
IIMAGE3D = 360,
UIMAGE3D = 361,
IMAGE2DARRAY = 362,
IIMAGE2DARRAY = 363,
UIMAGE2DARRAY = 364,
IMAGECUBE = 365,
IIMAGECUBE = 366,
UIMAGECUBE = 367,
IMAGECUBEARRAYOES = 368,
IIMAGECUBEARRAYOES = 369,
UIMAGECUBEARRAYOES = 370,
IMAGECUBEARRAYEXT = 371,
IIMAGECUBEARRAYEXT = 372,
UIMAGECUBEARRAYEXT = 373,
ATOMICUINT = 374,
LAYOUT = 375,
YUVCSCSTANDARDEXT = 376,
YUVCSCSTANDARDEXTCONSTANT = 377,
IDENTIFIER = 378,
TYPE_NAME = 379,
FLOATCONSTANT = 380,
INTCONSTANT = 381,
UINTCONSTANT = 382,
BOOLCONSTANT = 383,
FIELD_SELECTION = 384,
LEFT_OP = 385,
RIGHT_OP = 386,
INC_OP = 387,
DEC_OP = 388,
LE_OP = 389,
GE_OP = 390,
EQ_OP = 391,
NE_OP = 392,
AND_OP = 393,
OR_OP = 394,
XOR_OP = 395,
MUL_ASSIGN = 396,
DIV_ASSIGN = 397,
ADD_ASSIGN = 398,
MOD_ASSIGN = 399,
LEFT_ASSIGN = 400,
RIGHT_ASSIGN = 401,
AND_ASSIGN = 402,
XOR_ASSIGN = 403,
OR_ASSIGN = 404,
SUB_ASSIGN = 405,
LEFT_PAREN = 406,
RIGHT_PAREN = 407,
LEFT_BRACKET = 408,
RIGHT_BRACKET = 409,
LEFT_BRACE = 410,
RIGHT_BRACE = 411,
DOT = 412,
COMMA = 413,
COLON = 414,
EQUAL = 415,
SEMICOLON = 416,
BANG = 417,
DASH = 418,
TILDE = 419,
PLUS = 420,
STAR = 421,
SLASH = 422,
PERCENT = 423,
LEFT_ANGLE = 424,
RIGHT_ANGLE = 425,
VERTICAL_BAR = 426,
CARET = 427,
AMPERSAND = 428,
QUESTION = 429
};
#endif
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment