1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // This file is auto-generated from
6 // gpu/command_buffer/build_gles2_cmd_buffer.py
7 // It's formatted by clang-format using chromium coding style:
8 //    clang-format -i -style=chromium filename
9 // DO NOT EDIT!
10 
11 #ifndef GPU_COMMAND_BUFFER_COMMON_GLES2_CMD_UTILS_IMPLEMENTATION_AUTOGEN_H_
12 #define GPU_COMMAND_BUFFER_COMMON_GLES2_CMD_UTILS_IMPLEMENTATION_AUTOGEN_H_
13 
14 static const GLES2Util::EnumToString enum_to_string_table[] = {
15     {
16         0x00,
17         "GL_CLOSE_PATH_NV",
18     },
19     {
20         0x0000,
21         "GL_POINTS",
22     },
23     {
24         0x00000000,
25         "GL_PERFQUERY_SINGLE_CONTEXT_INTEL",
26     },
27     {
28         0x00000001,
29         "GL_SUBGROUP_FEATURE_BASIC_BIT_KHR",
30     },
31     {
32         0x00000002,
33         "GL_CONTEXT_FLAG_DEBUG_BIT_KHR",
34     },
35     {
36         0x00000004,
37         "GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR",
38     },
39     {
40         0x00000008,
41         "GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR",
42     },
43     {
44         0x00000010,
45         "GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR",
46     },
47     {
48         0x00000020,
49         "GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR",
50     },
51     {
52         0x00000040,
53         "GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR",
54     },
55     {
56         0x00000080,
57         "GL_SUBGROUP_FEATURE_QUAD_BIT_KHR",
58     },
59     {
60         0x00000100,
61         "GL_DEPTH_BUFFER_BIT",
62     },
63     {
64         0x00000200,
65         "GL_DEPTH_BUFFER_BIT1_QCOM",
66     },
67     {
68         0x00000400,
69         "GL_STENCIL_BUFFER_BIT",
70     },
71     {
72         0x00000800,
73         "GL_DEPTH_BUFFER_BIT3_QCOM",
74     },
75     {
76         0x00001000,
77         "GL_DEPTH_BUFFER_BIT4_QCOM",
78     },
79     {
80         0x00002000,
81         "GL_DEPTH_BUFFER_BIT5_QCOM",
82     },
83     {
84         0x00004000,
85         "GL_COLOR_BUFFER_BIT",
86     },
87     {
88         0x00008000,
89         "GL_COVERAGE_BUFFER_BIT_NV",
90     },
91     {
92         0x0001,
93         "GL_LINES",
94     },
95     {
96         0x00010000,
97         "GL_FONT_X_MIN_BOUNDS_BIT_NV",
98     },
99     {
100         0x0002,
101         "GL_LINE_LOOP",
102     },
103     {
104         0x00020000,
105         "GL_FONT_Y_MIN_BOUNDS_BIT_NV",
106     },
107     {
108         0x0003,
109         "GL_LINE_STRIP",
110     },
111     {
112         0x0004,
113         "GL_TRIANGLES",
114     },
115     {
116         0x00040000,
117         "GL_FONT_X_MAX_BOUNDS_BIT_NV",
118     },
119     {
120         0x0005,
121         "GL_TRIANGLE_STRIP",
122     },
123     {
124         0x0006,
125         "GL_TRIANGLE_FAN",
126     },
127     {
128         0x0007,
129         "GL_QUADS_OES",
130     },
131     {
132         0x0008,
133         "GL_MAP_INVALIDATE_BUFFER_BIT_EXT",
134     },
135     {
136         0x00080000,
137         "GL_FONT_Y_MAX_BOUNDS_BIT_NV",
138     },
139     {
140         0x000A,
141         "GL_LINES_ADJACENCY_OES",
142     },
143     {
144         0x000B,
145         "GL_LINE_STRIP_ADJACENCY_OES",
146     },
147     {
148         0x000C,
149         "GL_TRIANGLES_ADJACENCY_OES",
150     },
151     {
152         0x000D,
153         "GL_TRIANGLE_STRIP_ADJACENCY_OES",
154     },
155     {
156         0x000E,
157         "GL_PATCHES_OES",
158     },
159     {
160         0x0010,
161         "GL_MAP_FLUSH_EXPLICIT_BIT_EXT",
162     },
163     {
164         0x00100000,
165         "GL_FONT_UNITS_PER_EM_BIT_NV",
166     },
167     {
168         0x0020,
169         "GL_MAP_UNSYNCHRONIZED_BIT_EXT",
170     },
171     {
172         0x00200000,
173         "GL_FONT_ASCENDER_BIT_NV",
174     },
175     {
176         0x0040,
177         "GL_MAP_PERSISTENT_BIT_EXT",
178     },
179     {
180         0x00400000,
181         "GL_FONT_DESCENDER_BIT_NV",
182     },
183     {
184         0x0080,
185         "GL_MAP_COHERENT_BIT_EXT",
186     },
187     {
188         0x00800000,
189         "GL_FONT_HEIGHT_BIT_NV",
190     },
191     {
192         0x01,
193         "GL_BOLD_BIT_NV",
194     },
195     {
196         0x0100,
197         "GL_DYNAMIC_STORAGE_BIT_EXT",
198     },
199     {
200         0x01000000,
201         "GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV",
202     },
203     {
204         0x02,
205         "GL_MOVE_TO_NV",
206     },
207     {
208         0x0200,
209         "GL_NEVER",
210     },
211     {
212         0x02000000,
213         "GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV",
214     },
215     {
216         0x0201,
217         "GL_LESS",
218     },
219     {
220         0x0202,
221         "GL_EQUAL",
222     },
223     {
224         0x0203,
225         "GL_LEQUAL",
226     },
227     {
228         0x0204,
229         "GL_GREATER",
230     },
231     {
232         0x0205,
233         "GL_NOTEQUAL",
234     },
235     {
236         0x0206,
237         "GL_GEQUAL",
238     },
239     {
240         0x0207,
241         "GL_ALWAYS",
242     },
243     {
244         0x03,
245         "GL_RELATIVE_MOVE_TO_NV",
246     },
247     {
248         0x0300,
249         "GL_SRC_COLOR",
250     },
251     {
252         0x0301,
253         "GL_ONE_MINUS_SRC_COLOR",
254     },
255     {
256         0x0302,
257         "GL_SRC_ALPHA",
258     },
259     {
260         0x0303,
261         "GL_ONE_MINUS_SRC_ALPHA",
262     },
263     {
264         0x0304,
265         "GL_DST_ALPHA",
266     },
267     {
268         0x0305,
269         "GL_ONE_MINUS_DST_ALPHA",
270     },
271     {
272         0x0306,
273         "GL_DST_COLOR",
274     },
275     {
276         0x0307,
277         "GL_ONE_MINUS_DST_COLOR",
278     },
279     {
280         0x0308,
281         "GL_SRC_ALPHA_SATURATE",
282     },
283     {
284         0x04,
285         "GL_LINE_TO_NV",
286     },
287     {
288         0x04000000,
289         "GL_FONT_UNDERLINE_POSITION_BIT_NV",
290     },
291     {
292         0x0404,
293         "GL_FRONT",
294     },
295     {
296         0x0405,
297         "GL_BACK",
298     },
299     {
300         0x0408,
301         "GL_FRONT_AND_BACK",
302     },
303     {
304         0x05,
305         "GL_RELATIVE_LINE_TO_NV",
306     },
307     {
308         0x0500,
309         "GL_INVALID_ENUM",
310     },
311     {
312         0x0501,
313         "GL_INVALID_VALUE",
314     },
315     {
316         0x0502,
317         "GL_INVALID_OPERATION",
318     },
319     {
320         0x0503,
321         "GL_STACK_OVERFLOW_KHR",
322     },
323     {
324         0x0504,
325         "GL_STACK_UNDERFLOW_KHR",
326     },
327     {
328         0x0505,
329         "GL_OUT_OF_MEMORY",
330     },
331     {
332         0x0506,
333         "GL_INVALID_FRAMEBUFFER_OPERATION",
334     },
335     {
336         0x0507,
337         "GL_CONTEXT_LOST_KHR",
338     },
339     {
340         0x06,
341         "GL_HORIZONTAL_LINE_TO_NV",
342     },
343     {
344         0x07,
345         "GL_RELATIVE_HORIZONTAL_LINE_TO_NV",
346     },
347     {
348         0x08,
349         "GL_VERTICAL_LINE_TO_NV",
350     },
351     {
352         0x08000000,
353         "GL_FONT_UNDERLINE_THICKNESS_BIT_NV",
354     },
355     {
356         0x09,
357         "GL_RELATIVE_VERTICAL_LINE_TO_NV",
358     },
359     {
360         0x0900,
361         "GL_CW",
362     },
363     {
364         0x0901,
365         "GL_CCW",
366     },
367     {
368         0x0A,
369         "GL_QUADRATIC_CURVE_TO_NV",
370     },
371     {
372         0x0B,
373         "GL_RELATIVE_QUADRATIC_CURVE_TO_NV",
374     },
375     {
376         0x0B21,
377         "GL_LINE_WIDTH",
378     },
379     {
380         0x0B40,
381         "GL_POLYGON_MODE_NV",
382     },
383     {
384         0x0B44,
385         "GL_CULL_FACE",
386     },
387     {
388         0x0B45,
389         "GL_CULL_FACE_MODE",
390     },
391     {
392         0x0B46,
393         "GL_FRONT_FACE",
394     },
395     {
396         0x0B70,
397         "GL_DEPTH_RANGE",
398     },
399     {
400         0x0B71,
401         "GL_DEPTH_TEST",
402     },
403     {
404         0x0B72,
405         "GL_DEPTH_WRITEMASK",
406     },
407     {
408         0x0B73,
409         "GL_DEPTH_CLEAR_VALUE",
410     },
411     {
412         0x0B74,
413         "GL_DEPTH_FUNC",
414     },
415     {
416         0x0B90,
417         "GL_STENCIL_TEST",
418     },
419     {
420         0x0B91,
421         "GL_STENCIL_CLEAR_VALUE",
422     },
423     {
424         0x0B92,
425         "GL_STENCIL_FUNC",
426     },
427     {
428         0x0B93,
429         "GL_STENCIL_VALUE_MASK",
430     },
431     {
432         0x0B94,
433         "GL_STENCIL_FAIL",
434     },
435     {
436         0x0B95,
437         "GL_STENCIL_PASS_DEPTH_FAIL",
438     },
439     {
440         0x0B96,
441         "GL_STENCIL_PASS_DEPTH_PASS",
442     },
443     {
444         0x0B97,
445         "GL_STENCIL_REF",
446     },
447     {
448         0x0B98,
449         "GL_STENCIL_WRITEMASK",
450     },
451     {
452         0x0BA2,
453         "GL_VIEWPORT",
454     },
455     {
456         0x0BA3,
457         "GL_PATH_MODELVIEW_STACK_DEPTH_NV",
458     },
459     {
460         0x0BA4,
461         "GL_PATH_PROJECTION_STACK_DEPTH_NV",
462     },
463     {
464         0x0BA6,
465         "GL_PATH_MODELVIEW_MATRIX_NV",
466     },
467     {
468         0x0BA7,
469         "GL_PATH_PROJECTION_MATRIX_NV",
470     },
471     {
472         0x0BC0,
473         "GL_ALPHA_TEST_QCOM",
474     },
475     {
476         0x0BC1,
477         "GL_ALPHA_TEST_FUNC_QCOM",
478     },
479     {
480         0x0BC2,
481         "GL_ALPHA_TEST_REF_QCOM",
482     },
483     {
484         0x0BD0,
485         "GL_DITHER",
486     },
487     {
488         0x0BE2,
489         "GL_BLEND",
490     },
491     {
492         0x0C,
493         "GL_CUBIC_CURVE_TO_NV",
494     },
495     {
496         0x0C01,
497         "GL_DRAW_BUFFER_EXT",
498     },
499     {
500         0x0C02,
501         "GL_READ_BUFFER_EXT",
502     },
503     {
504         0x0C10,
505         "GL_SCISSOR_BOX",
506     },
507     {
508         0x0C11,
509         "GL_SCISSOR_TEST",
510     },
511     {
512         0x0C22,
513         "GL_COLOR_CLEAR_VALUE",
514     },
515     {
516         0x0C23,
517         "GL_COLOR_WRITEMASK",
518     },
519     {
520         0x0CF2,
521         "GL_UNPACK_ROW_LENGTH_EXT",
522     },
523     {
524         0x0CF3,
525         "GL_UNPACK_SKIP_ROWS_EXT",
526     },
527     {
528         0x0CF4,
529         "GL_UNPACK_SKIP_PIXELS_EXT",
530     },
531     {
532         0x0CF5,
533         "GL_UNPACK_ALIGNMENT",
534     },
535     {
536         0x0D,
537         "GL_RELATIVE_CUBIC_CURVE_TO_NV",
538     },
539     {
540         0x0D02,
541         "GL_PACK_ROW_LENGTH",
542     },
543     {
544         0x0D03,
545         "GL_PACK_SKIP_ROWS",
546     },
547     {
548         0x0D04,
549         "GL_PACK_SKIP_PIXELS",
550     },
551     {
552         0x0D05,
553         "GL_PACK_ALIGNMENT",
554     },
555     {
556         0x0D32,
557         "GL_MAX_CLIP_DISTANCES_APPLE",
558     },
559     {
560         0x0D33,
561         "GL_MAX_TEXTURE_SIZE",
562     },
563     {
564         0x0D36,
565         "GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV",
566     },
567     {
568         0x0D38,
569         "GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV",
570     },
571     {
572         0x0D3A,
573         "GL_MAX_VIEWPORT_DIMS",
574     },
575     {
576         0x0D50,
577         "GL_SUBPIXEL_BITS",
578     },
579     {
580         0x0D52,
581         "GL_RED_BITS",
582     },
583     {
584         0x0D53,
585         "GL_GREEN_BITS",
586     },
587     {
588         0x0D54,
589         "GL_BLUE_BITS",
590     },
591     {
592         0x0D55,
593         "GL_ALPHA_BITS",
594     },
595     {
596         0x0D56,
597         "GL_DEPTH_BITS",
598     },
599     {
600         0x0D57,
601         "GL_STENCIL_BITS",
602     },
603     {
604         0x0DE1,
605         "GL_TEXTURE_2D",
606     },
607     {
608         0x0E,
609         "GL_SMOOTH_QUADRATIC_CURVE_TO_NV",
610     },
611     {
612         0x0F,
613         "GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV",
614     },
615     {
616         0x1,
617         "GL_CA_LAYER_EDGE_LEFT_CHROMIUM",
618     },
619     {
620         0x10,
621         "GL_SMOOTH_CUBIC_CURVE_TO_NV",
622     },
623     {
624         0x100,
625         "GL_GLYPH_HAS_KERNING_BIT_NV",
626     },
627     {
628         0x1000,
629         "GL_TEXTURE_WIDTH",
630     },
631     {
632         0x10000000,
633         "GL_FONT_HAS_KERNING_BIT_NV",
634     },
635     {
636         0x1001,
637         "GL_TEXTURE_HEIGHT",
638     },
639     {
640         0x1003,
641         "GL_TEXTURE_INTERNAL_FORMAT",
642     },
643     {
644         0x1004,
645         "GL_TEXTURE_BORDER_COLOR_OES",
646     },
647     {
648         0x11,
649         "GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV",
650     },
651     {
652         0x1100,
653         "GL_DONT_CARE",
654     },
655     {
656         0x1101,
657         "GL_FASTEST",
658     },
659     {
660         0x1102,
661         "GL_NICEST",
662     },
663     {
664         0x12,
665         "GL_SMALL_CCW_ARC_TO_NV",
666     },
667     {
668         0x13,
669         "GL_RELATIVE_SMALL_CCW_ARC_TO_NV",
670     },
671     {
672         0x14,
673         "GL_SMALL_CW_ARC_TO_NV",
674     },
675     {
676         0x1400,
677         "GL_BYTE",
678     },
679     {
680         0x1401,
681         "GL_UNSIGNED_BYTE",
682     },
683     {
684         0x1402,
685         "GL_SHORT",
686     },
687     {
688         0x1403,
689         "GL_UNSIGNED_SHORT",
690     },
691     {
692         0x1404,
693         "GL_INT",
694     },
695     {
696         0x1405,
697         "GL_UNSIGNED_INT",
698     },
699     {
700         0x1406,
701         "GL_FLOAT",
702     },
703     {
704         0x140B,
705         "GL_HALF_FLOAT",
706     },
707     {
708         0x140C,
709         "GL_FIXED",
710     },
711     {
712         0x140E,
713         "GL_INT64_NV",
714     },
715     {
716         0x140F,
717         "GL_UNSIGNED_INT64_NV",
718     },
719     {
720         0x15,
721         "GL_RELATIVE_SMALL_CW_ARC_TO_NV",
722     },
723     {
724         0x1506,
725         "GL_XOR_NV",
726     },
727     {
728         0x150A,
729         "GL_INVERT",
730     },
731     {
732         0x16,
733         "GL_LARGE_CCW_ARC_TO_NV",
734     },
735     {
736         0x17,
737         "GL_RELATIVE_LARGE_CCW_ARC_TO_NV",
738     },
739     {
740         0x1700,
741         "GL_PATH_MODELVIEW_NV",
742     },
743     {
744         0x1701,
745         "GL_PATH_PROJECTION_NV",
746     },
747     {
748         0x1702,
749         "GL_TEXTURE",
750     },
751     {
752         0x18,
753         "GL_LARGE_CW_ARC_TO_NV",
754     },
755     {
756         0x1800,
757         "GL_COLOR_EXT",
758     },
759     {
760         0x1801,
761         "GL_DEPTH_EXT",
762     },
763     {
764         0x1802,
765         "GL_STENCIL_EXT",
766     },
767     {
768         0x19,
769         "GL_RELATIVE_LARGE_CW_ARC_TO_NV",
770     },
771     {
772         0x1901,
773         "GL_STENCIL_INDEX_OES",
774     },
775     {
776         0x1902,
777         "GL_DEPTH_COMPONENT",
778     },
779     {
780         0x1903,
781         "GL_RED_EXT",
782     },
783     {
784         0x1904,
785         "GL_GREEN_NV",
786     },
787     {
788         0x1905,
789         "GL_BLUE_NV",
790     },
791     {
792         0x1906,
793         "GL_ALPHA",
794     },
795     {
796         0x1907,
797         "GL_RGB",
798     },
799     {
800         0x1908,
801         "GL_RGBA",
802     },
803     {
804         0x1909,
805         "GL_LUMINANCE",
806     },
807     {
808         0x190A,
809         "GL_LUMINANCE_ALPHA",
810     },
811     {
812         0x1A,
813         "GL_CONIC_CURVE_TO_NV",
814     },
815     {
816         0x1B,
817         "GL_RELATIVE_CONIC_CURVE_TO_NV",
818     },
819     {
820         0x1B00,
821         "GL_POINT_NV",
822     },
823     {
824         0x1B01,
825         "GL_LINE_NV",
826     },
827     {
828         0x1B02,
829         "GL_FILL_NV",
830     },
831     {
832         0x1E00,
833         "GL_KEEP",
834     },
835     {
836         0x1E01,
837         "GL_REPLACE",
838     },
839     {
840         0x1E02,
841         "GL_INCR",
842     },
843     {
844         0x1E03,
845         "GL_DECR",
846     },
847     {
848         0x1F00,
849         "GL_VENDOR",
850     },
851     {
852         0x1F01,
853         "GL_RENDERER",
854     },
855     {
856         0x1F02,
857         "GL_VERSION",
858     },
859     {
860         0x1F03,
861         "GL_EXTENSIONS",
862     },
863     {
864         0x2,
865         "GL_CA_LAYER_EDGE_RIGHT_CHROMIUM",
866     },
867     {
868         0x20,
869         "GL_GLYPH_VERTICAL_BEARING_X_BIT_NV",
870     },
871     {
872         0x20000000,
873         "GL_FONT_NUM_GLYPH_INDICES_BIT_NV",
874     },
875     {
876         0x2600,
877         "GL_NEAREST",
878     },
879     {
880         0x2601,
881         "GL_LINEAR",
882     },
883     {
884         0x2700,
885         "GL_NEAREST_MIPMAP_NEAREST",
886     },
887     {
888         0x2701,
889         "GL_LINEAR_MIPMAP_NEAREST",
890     },
891     {
892         0x2702,
893         "GL_NEAREST_MIPMAP_LINEAR",
894     },
895     {
896         0x2703,
897         "GL_LINEAR_MIPMAP_LINEAR",
898     },
899     {
900         0x2800,
901         "GL_TEXTURE_MAG_FILTER",
902     },
903     {
904         0x2801,
905         "GL_TEXTURE_MIN_FILTER",
906     },
907     {
908         0x2802,
909         "GL_TEXTURE_WRAP_S",
910     },
911     {
912         0x2803,
913         "GL_TEXTURE_WRAP_T",
914     },
915     {
916         0x2901,
917         "GL_REPEAT",
918     },
919     {
920         0x2A00,
921         "GL_POLYGON_OFFSET_UNITS",
922     },
923     {
924         0x2A01,
925         "GL_POLYGON_OFFSET_POINT_NV",
926     },
927     {
928         0x2A02,
929         "GL_POLYGON_OFFSET_LINE_NV",
930     },
931     {
932         0x3000,
933         "GL_CLIP_DISTANCE0_APPLE",
934     },
935     {
936         0x3001,
937         "GL_CLIP_DISTANCE1_APPLE",
938     },
939     {
940         0x3002,
941         "GL_CLIP_DISTANCE2_APPLE",
942     },
943     {
944         0x3003,
945         "GL_CLIP_DISTANCE3_APPLE",
946     },
947     {
948         0x3004,
949         "GL_CLIP_DISTANCE4_APPLE",
950     },
951     {
952         0x3005,
953         "GL_CLIP_DISTANCE5_APPLE",
954     },
955     {
956         0x3006,
957         "GL_CLIP_DISTANCE6_APPLE",
958     },
959     {
960         0x3007,
961         "GL_CLIP_DISTANCE7_APPLE",
962     },
963     {
964         0x300E,
965         "GL_CONTEXT_LOST",
966     },
967     {
968         0x4,
969         "GL_CA_LAYER_EDGE_BOTTOM_CHROMIUM",
970     },
971     {
972         0x40,
973         "GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV",
974     },
975     {
976         0x40000000,
977         "GL_MULTISAMPLE_BUFFER_BIT6_QCOM",
978     },
979     {
980         0x6000,
981         "GL_SCANOUT_CHROMIUM",
982     },
983     {
984         0x6003,
985         "GL_GET_ERROR_QUERY_CHROMIUM",
986     },
987     {
988         0x6004,
989         "GL_COMMANDS_ISSUED_CHROMIUM",
990     },
991     {
992         0x6005,
993         "GL_COMMANDS_ISSUED_TIMESTAMP_CHROMIUM",
994     },
995     {
996         0x6006,
997         "GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM",
998     },
999     {
1000         0x6007,
1001         "GL_LATENCY_QUERY_CHROMIUM",
1002     },
1003     {
1004         0x6009,
1005         "GL_PROGRAM_COMPLETION_QUERY_CHROMIUM",
1006     },
1007     {
1008         0x78EC,
1009         "GL_PIXEL_UNPACK_TRANSFER_BUFFER_CHROMIUM",
1010     },
1011     {
1012         0x78ED,
1013         "GL_PIXEL_PACK_TRANSFER_BUFFER_CHROMIUM",
1014     },
1015     {
1016         0x78EE,
1017         "GL_PIXEL_PACK_TRANSFER_BUFFER_BINDING_CHROMIUM",
1018     },
1019     {
1020         0x78EF,
1021         "GL_PIXEL_UNPACK_TRANSFER_BUFFER_BINDING_CHROMIUM",
1022     },
1023     {
1024         0x78FA,
1025         "GL_RGB_YCRCB_420_CHROMIUM",
1026     },
1027     {
1028         0x78FB,
1029         "GL_RGB_YCBCR_422_CHROMIUM",
1030     },
1031     {
1032         0x78FC,
1033         "GL_RGB_YCBCR_420V_CHROMIUM",
1034     },
1035     {
1036         0x78FD,
1037         "GL_RGB_YCBCR_P010_CHROMIUM",
1038     },
1039     {
1040         0x8,
1041         "GL_CA_LAYER_EDGE_TOP_CHROMIUM",
1042     },
1043     {
1044         0x80,
1045         "GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV",
1046     },
1047     {
1048         0x80000000,
1049         "GL_MULTISAMPLE_BUFFER_BIT7_QCOM",
1050     },
1051     {
1052         0x8001,
1053         "GL_CONSTANT_COLOR",
1054     },
1055     {
1056         0x8002,
1057         "GL_ONE_MINUS_CONSTANT_COLOR",
1058     },
1059     {
1060         0x8003,
1061         "GL_CONSTANT_ALPHA",
1062     },
1063     {
1064         0x8004,
1065         "GL_ONE_MINUS_CONSTANT_ALPHA",
1066     },
1067     {
1068         0x8005,
1069         "GL_BLEND_COLOR",
1070     },
1071     {
1072         0x8006,
1073         "GL_FUNC_ADD",
1074     },
1075     {
1076         0x8007,
1077         "GL_MIN",
1078     },
1079     {
1080         0x8008,
1081         "GL_MAX",
1082     },
1083     {
1084         0x8009,
1085         "GL_BLEND_EQUATION",
1086     },
1087     {
1088         0x800A,
1089         "GL_FUNC_SUBTRACT",
1090     },
1091     {
1092         0x800B,
1093         "GL_FUNC_REVERSE_SUBTRACT",
1094     },
1095     {
1096         0x8033,
1097         "GL_UNSIGNED_SHORT_4_4_4_4",
1098     },
1099     {
1100         0x8034,
1101         "GL_UNSIGNED_SHORT_5_5_5_1",
1102     },
1103     {
1104         0x8037,
1105         "GL_POLYGON_OFFSET_FILL",
1106     },
1107     {
1108         0x8038,
1109         "GL_POLYGON_OFFSET_FACTOR",
1110     },
1111     {
1112         0x803C,
1113         "GL_ALPHA8_OES",
1114     },
1115     {
1116         0x8040,
1117         "GL_LUMINANCE8_OES",
1118     },
1119     {
1120         0x8043,
1121         "GL_LUMINANCE4_ALPHA4_OES",
1122     },
1123     {
1124         0x8045,
1125         "GL_LUMINANCE8_ALPHA8_OES",
1126     },
1127     {
1128         0x8051,
1129         "GL_RGB8_OES",
1130     },
1131     {
1132         0x8052,
1133         "GL_RGB10_EXT",
1134     },
1135     {
1136         0x8054,
1137         "GL_RGB16_EXT",
1138     },
1139     {
1140         0x8056,
1141         "GL_RGBA4",
1142     },
1143     {
1144         0x8057,
1145         "GL_RGB5_A1",
1146     },
1147     {
1148         0x8058,
1149         "GL_RGBA8_OES",
1150     },
1151     {
1152         0x8059,
1153         "GL_RGB10_A2_EXT",
1154     },
1155     {
1156         0x805B,
1157         "GL_RGBA16_EXT",
1158     },
1159     {
1160         0x805C,
1161         "GL_TEXTURE_RED_SIZE",
1162     },
1163     {
1164         0x805D,
1165         "GL_TEXTURE_GREEN_SIZE",
1166     },
1167     {
1168         0x805E,
1169         "GL_TEXTURE_BLUE_SIZE",
1170     },
1171     {
1172         0x805F,
1173         "GL_TEXTURE_ALPHA_SIZE",
1174     },
1175     {
1176         0x8069,
1177         "GL_TEXTURE_BINDING_2D",
1178     },
1179     {
1180         0x806A,
1181         "GL_TEXTURE_BINDING_3D_OES",
1182     },
1183     {
1184         0x806D,
1185         "GL_UNPACK_SKIP_IMAGES",
1186     },
1187     {
1188         0x806E,
1189         "GL_UNPACK_IMAGE_HEIGHT",
1190     },
1191     {
1192         0x806F,
1193         "GL_TEXTURE_3D_OES",
1194     },
1195     {
1196         0x8071,
1197         "GL_TEXTURE_DEPTH",
1198     },
1199     {
1200         0x8072,
1201         "GL_TEXTURE_WRAP_R_OES",
1202     },
1203     {
1204         0x8073,
1205         "GL_MAX_3D_TEXTURE_SIZE_OES",
1206     },
1207     {
1208         0x8074,
1209         "GL_VERTEX_ARRAY_KHR",
1210     },
1211     {
1212         0x809D,
1213         "GL_MULTISAMPLE_EXT",
1214     },
1215     {
1216         0x809E,
1217         "GL_SAMPLE_ALPHA_TO_COVERAGE",
1218     },
1219     {
1220         0x809F,
1221         "GL_SAMPLE_ALPHA_TO_ONE_EXT",
1222     },
1223     {
1224         0x80A0,
1225         "GL_SAMPLE_COVERAGE",
1226     },
1227     {
1228         0x80A8,
1229         "GL_SAMPLE_BUFFERS",
1230     },
1231     {
1232         0x80A9,
1233         "GL_SAMPLES",
1234     },
1235     {
1236         0x80AA,
1237         "GL_SAMPLE_COVERAGE_VALUE",
1238     },
1239     {
1240         0x80AB,
1241         "GL_SAMPLE_COVERAGE_INVERT",
1242     },
1243     {
1244         0x80C8,
1245         "GL_BLEND_DST_RGB",
1246     },
1247     {
1248         0x80C9,
1249         "GL_BLEND_SRC_RGB",
1250     },
1251     {
1252         0x80CA,
1253         "GL_BLEND_DST_ALPHA",
1254     },
1255     {
1256         0x80CB,
1257         "GL_BLEND_SRC_ALPHA",
1258     },
1259     {
1260         0x80E1,
1261         "GL_BGRA_EXT",
1262     },
1263     {
1264         0x80E8,
1265         "GL_MAX_ELEMENTS_VERTICES",
1266     },
1267     {
1268         0x80E9,
1269         "GL_MAX_ELEMENTS_INDICES",
1270     },
1271     {
1272         0x812D,
1273         "GL_CLAMP_TO_BORDER_OES",
1274     },
1275     {
1276         0x812F,
1277         "GL_CLAMP_TO_EDGE",
1278     },
1279     {
1280         0x813A,
1281         "GL_TEXTURE_MIN_LOD",
1282     },
1283     {
1284         0x813B,
1285         "GL_TEXTURE_MAX_LOD",
1286     },
1287     {
1288         0x813C,
1289         "GL_TEXTURE_BASE_LEVEL",
1290     },
1291     {
1292         0x813D,
1293         "GL_TEXTURE_MAX_LEVEL_APPLE",
1294     },
1295     {
1296         0x8192,
1297         "GL_GENERATE_MIPMAP_HINT",
1298     },
1299     {
1300         0x81A5,
1301         "GL_DEPTH_COMPONENT16",
1302     },
1303     {
1304         0x81A6,
1305         "GL_DEPTH_COMPONENT24_OES",
1306     },
1307     {
1308         0x81A7,
1309         "GL_DEPTH_COMPONENT32_OES",
1310     },
1311     {
1312         0x8210,
1313         "GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT",
1314     },
1315     {
1316         0x8211,
1317         "GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT",
1318     },
1319     {
1320         0x8212,
1321         "GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE",
1322     },
1323     {
1324         0x8213,
1325         "GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE",
1326     },
1327     {
1328         0x8214,
1329         "GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE",
1330     },
1331     {
1332         0x8215,
1333         "GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE",
1334     },
1335     {
1336         0x8216,
1337         "GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE",
1338     },
1339     {
1340         0x8217,
1341         "GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE",
1342     },
1343     {
1344         0x8218,
1345         "GL_FRAMEBUFFER_DEFAULT",
1346     },
1347     {
1348         0x8219,
1349         "GL_FRAMEBUFFER_UNDEFINED_OES",
1350     },
1351     {
1352         0x821A,
1353         "GL_DEPTH_STENCIL_ATTACHMENT",
1354     },
1355     {
1356         0x821B,
1357         "GL_MAJOR_VERSION",
1358     },
1359     {
1360         0x821C,
1361         "GL_MINOR_VERSION",
1362     },
1363     {
1364         0x821D,
1365         "GL_NUM_EXTENSIONS",
1366     },
1367     {
1368         0x821F,
1369         "GL_BUFFER_IMMUTABLE_STORAGE_EXT",
1370     },
1371     {
1372         0x8220,
1373         "GL_BUFFER_STORAGE_FLAGS_EXT",
1374     },
1375     {
1376         0x8221,
1377         "GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED_OES",
1378     },
1379     {
1380         0x8227,
1381         "GL_RG_EXT",
1382     },
1383     {
1384         0x8228,
1385         "GL_RG_INTEGER",
1386     },
1387     {
1388         0x8229,
1389         "GL_R8_EXT",
1390     },
1391     {
1392         0x822A,
1393         "GL_R16_EXT",
1394     },
1395     {
1396         0x822B,
1397         "GL_RG8_EXT",
1398     },
1399     {
1400         0x822C,
1401         "GL_RG16_EXT",
1402     },
1403     {
1404         0x822D,
1405         "GL_R16F_EXT",
1406     },
1407     {
1408         0x822E,
1409         "GL_R32F_EXT",
1410     },
1411     {
1412         0x822F,
1413         "GL_RG16F_EXT",
1414     },
1415     {
1416         0x8230,
1417         "GL_RG32F_EXT",
1418     },
1419     {
1420         0x8231,
1421         "GL_R8I",
1422     },
1423     {
1424         0x8232,
1425         "GL_R8UI",
1426     },
1427     {
1428         0x8233,
1429         "GL_R16I",
1430     },
1431     {
1432         0x8234,
1433         "GL_R16UI",
1434     },
1435     {
1436         0x8235,
1437         "GL_R32I",
1438     },
1439     {
1440         0x8236,
1441         "GL_R32UI",
1442     },
1443     {
1444         0x8237,
1445         "GL_RG8I",
1446     },
1447     {
1448         0x8238,
1449         "GL_RG8UI",
1450     },
1451     {
1452         0x8239,
1453         "GL_RG16I",
1454     },
1455     {
1456         0x823A,
1457         "GL_RG16UI",
1458     },
1459     {
1460         0x823B,
1461         "GL_RG32I",
1462     },
1463     {
1464         0x823C,
1465         "GL_RG32UI",
1466     },
1467     {
1468         0x8242,
1469         "GL_DEBUG_OUTPUT_SYNCHRONOUS_KHR",
1470     },
1471     {
1472         0x8243,
1473         "GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_KHR",
1474     },
1475     {
1476         0x8244,
1477         "GL_DEBUG_CALLBACK_FUNCTION_KHR",
1478     },
1479     {
1480         0x8245,
1481         "GL_DEBUG_CALLBACK_USER_PARAM_KHR",
1482     },
1483     {
1484         0x8246,
1485         "GL_DEBUG_SOURCE_API_KHR",
1486     },
1487     {
1488         0x8247,
1489         "GL_DEBUG_SOURCE_WINDOW_SYSTEM_KHR",
1490     },
1491     {
1492         0x8248,
1493         "GL_DEBUG_SOURCE_SHADER_COMPILER_KHR",
1494     },
1495     {
1496         0x8249,
1497         "GL_DEBUG_SOURCE_THIRD_PARTY_KHR",
1498     },
1499     {
1500         0x824A,
1501         "GL_DEBUG_SOURCE_APPLICATION_KHR",
1502     },
1503     {
1504         0x824B,
1505         "GL_DEBUG_SOURCE_OTHER_KHR",
1506     },
1507     {
1508         0x824C,
1509         "GL_DEBUG_TYPE_ERROR_KHR",
1510     },
1511     {
1512         0x824D,
1513         "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_KHR",
1514     },
1515     {
1516         0x824E,
1517         "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_KHR",
1518     },
1519     {
1520         0x824F,
1521         "GL_DEBUG_TYPE_PORTABILITY_KHR",
1522     },
1523     {
1524         0x8250,
1525         "GL_DEBUG_TYPE_PERFORMANCE_KHR",
1526     },
1527     {
1528         0x8251,
1529         "GL_DEBUG_TYPE_OTHER_KHR",
1530     },
1531     {
1532         0x8252,
1533         "GL_LOSE_CONTEXT_ON_RESET_KHR",
1534     },
1535     {
1536         0x8253,
1537         "GL_GUILTY_CONTEXT_RESET_KHR",
1538     },
1539     {
1540         0x8254,
1541         "GL_INNOCENT_CONTEXT_RESET_KHR",
1542     },
1543     {
1544         0x8255,
1545         "GL_UNKNOWN_CONTEXT_RESET_KHR",
1546     },
1547     {
1548         0x8256,
1549         "GL_RESET_NOTIFICATION_STRATEGY_KHR",
1550     },
1551     {
1552         0x8257,
1553         "GL_PROGRAM_BINARY_RETRIEVABLE_HINT",
1554     },
1555     {
1556         0x8258,
1557         "GL_PROGRAM_SEPARABLE_EXT",
1558     },
1559     {
1560         0x8259,
1561         "GL_ACTIVE_PROGRAM_EXT",
1562     },
1563     {
1564         0x825A,
1565         "GL_PROGRAM_PIPELINE_BINDING_EXT",
1566     },
1567     {
1568         0x825B,
1569         "GL_MAX_VIEWPORTS_OES",
1570     },
1571     {
1572         0x825C,
1573         "GL_VIEWPORT_SUBPIXEL_BITS_OES",
1574     },
1575     {
1576         0x825D,
1577         "GL_VIEWPORT_BOUNDS_RANGE_OES",
1578     },
1579     {
1580         0x825E,
1581         "GL_LAYER_PROVOKING_VERTEX_OES",
1582     },
1583     {
1584         0x825F,
1585         "GL_VIEWPORT_INDEX_PROVOKING_VERTEX_OES",
1586     },
1587     {
1588         0x8260,
1589         "GL_UNDEFINED_VERTEX_OES",
1590     },
1591     {
1592         0x8261,
1593         "GL_NO_RESET_NOTIFICATION_KHR",
1594     },
1595     {
1596         0x8262,
1597         "GL_MAX_COMPUTE_SHARED_MEMORY_SIZE",
1598     },
1599     {
1600         0x8263,
1601         "GL_MAX_COMPUTE_UNIFORM_COMPONENTS",
1602     },
1603     {
1604         0x8264,
1605         "GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS",
1606     },
1607     {
1608         0x8265,
1609         "GL_MAX_COMPUTE_ATOMIC_COUNTERS",
1610     },
1611     {
1612         0x8266,
1613         "GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS",
1614     },
1615     {
1616         0x8267,
1617         "GL_COMPUTE_WORK_GROUP_SIZE",
1618     },
1619     {
1620         0x8268,
1621         "GL_DEBUG_TYPE_MARKER_KHR",
1622     },
1623     {
1624         0x8269,
1625         "GL_DEBUG_TYPE_PUSH_GROUP_KHR",
1626     },
1627     {
1628         0x826A,
1629         "GL_DEBUG_TYPE_POP_GROUP_KHR",
1630     },
1631     {
1632         0x826B,
1633         "GL_DEBUG_SEVERITY_NOTIFICATION_KHR",
1634     },
1635     {
1636         0x826C,
1637         "GL_MAX_DEBUG_GROUP_STACK_DEPTH_KHR",
1638     },
1639     {
1640         0x826D,
1641         "GL_DEBUG_GROUP_STACK_DEPTH_KHR",
1642     },
1643     {
1644         0x826E,
1645         "GL_MAX_UNIFORM_LOCATIONS",
1646     },
1647     {
1648         0x82D4,
1649         "GL_VERTEX_ATTRIB_BINDING",
1650     },
1651     {
1652         0x82D5,
1653         "GL_VERTEX_ATTRIB_RELATIVE_OFFSET",
1654     },
1655     {
1656         0x82D6,
1657         "GL_VERTEX_BINDING_DIVISOR",
1658     },
1659     {
1660         0x82D7,
1661         "GL_VERTEX_BINDING_OFFSET",
1662     },
1663     {
1664         0x82D8,
1665         "GL_VERTEX_BINDING_STRIDE",
1666     },
1667     {
1668         0x82D9,
1669         "GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET",
1670     },
1671     {
1672         0x82DA,
1673         "GL_MAX_VERTEX_ATTRIB_BINDINGS",
1674     },
1675     {
1676         0x82DB,
1677         "GL_TEXTURE_VIEW_MIN_LEVEL_OES",
1678     },
1679     {
1680         0x82DC,
1681         "GL_TEXTURE_VIEW_NUM_LEVELS_OES",
1682     },
1683     {
1684         0x82DD,
1685         "GL_TEXTURE_VIEW_MIN_LAYER_OES",
1686     },
1687     {
1688         0x82DE,
1689         "GL_TEXTURE_VIEW_NUM_LAYERS_OES",
1690     },
1691     {
1692         0x82DF,
1693         "GL_TEXTURE_IMMUTABLE_LEVELS",
1694     },
1695     {
1696         0x82E0,
1697         "GL_BUFFER_KHR",
1698     },
1699     {
1700         0x82E1,
1701         "GL_SHADER_KHR",
1702     },
1703     {
1704         0x82E2,
1705         "GL_PROGRAM_KHR",
1706     },
1707     {
1708         0x82E3,
1709         "GL_QUERY_KHR",
1710     },
1711     {
1712         0x82E4,
1713         "GL_PROGRAM_PIPELINE_KHR",
1714     },
1715     {
1716         0x82E5,
1717         "GL_MAX_VERTEX_ATTRIB_STRIDE",
1718     },
1719     {
1720         0x82E6,
1721         "GL_SAMPLER_KHR",
1722     },
1723     {
1724         0x82E8,
1725         "GL_MAX_LABEL_LENGTH_KHR",
1726     },
1727     {
1728         0x82F9,
1729         "GL_MAX_CULL_DISTANCES_EXT",
1730     },
1731     {
1732         0x82FA,
1733         "GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES_EXT",
1734     },
1735     {
1736         0x82FB,
1737         "GL_CONTEXT_RELEASE_BEHAVIOR_KHR",
1738     },
1739     {
1740         0x82FC,
1741         "GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_KHR",
1742     },
1743     {
1744         0x8363,
1745         "GL_UNSIGNED_SHORT_5_6_5",
1746     },
1747     {
1748         0x8365,
1749         "GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT",
1750     },
1751     {
1752         0x8366,
1753         "GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT",
1754     },
1755     {
1756         0x8368,
1757         "GL_UNSIGNED_INT_2_10_10_10_REV_EXT",
1758     },
1759     {
1760         0x8370,
1761         "GL_MIRRORED_REPEAT",
1762     },
1763     {
1764         0x83F0,
1765         "GL_COMPRESSED_RGB_S3TC_DXT1_EXT",
1766     },
1767     {
1768         0x83F1,
1769         "GL_COMPRESSED_RGBA_S3TC_DXT1_EXT",
1770     },
1771     {
1772         0x83F2,
1773         "GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE",
1774     },
1775     {
1776         0x83F3,
1777         "GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE",
1778     },
1779     {
1780         0x83F9,
1781         "GL_PERFQUERY_DONOT_FLUSH_INTEL",
1782     },
1783     {
1784         0x83FA,
1785         "GL_PERFQUERY_FLUSH_INTEL",
1786     },
1787     {
1788         0x83FB,
1789         "GL_PERFQUERY_WAIT_INTEL",
1790     },
1791     {
1792         0x83FC,
1793         "GL_BLACKHOLE_RENDER_INTEL",
1794     },
1795     {
1796         0x83FE,
1797         "GL_CONSERVATIVE_RASTERIZATION_INTEL",
1798     },
1799     {
1800         0x846D,
1801         "GL_ALIASED_POINT_SIZE_RANGE",
1802     },
1803     {
1804         0x846E,
1805         "GL_ALIASED_LINE_WIDTH_RANGE",
1806     },
1807     {
1808         0x84C0,
1809         "GL_TEXTURE0",
1810     },
1811     {
1812         0x84C1,
1813         "GL_TEXTURE1",
1814     },
1815     {
1816         0x84C2,
1817         "GL_TEXTURE2",
1818     },
1819     {
1820         0x84C3,
1821         "GL_TEXTURE3",
1822     },
1823     {
1824         0x84C4,
1825         "GL_TEXTURE4",
1826     },
1827     {
1828         0x84C5,
1829         "GL_TEXTURE5",
1830     },
1831     {
1832         0x84C6,
1833         "GL_TEXTURE6",
1834     },
1835     {
1836         0x84C7,
1837         "GL_TEXTURE7",
1838     },
1839     {
1840         0x84C8,
1841         "GL_TEXTURE8",
1842     },
1843     {
1844         0x84C9,
1845         "GL_TEXTURE9",
1846     },
1847     {
1848         0x84CA,
1849         "GL_TEXTURE10",
1850     },
1851     {
1852         0x84CB,
1853         "GL_TEXTURE11",
1854     },
1855     {
1856         0x84CC,
1857         "GL_TEXTURE12",
1858     },
1859     {
1860         0x84CD,
1861         "GL_TEXTURE13",
1862     },
1863     {
1864         0x84CE,
1865         "GL_TEXTURE14",
1866     },
1867     {
1868         0x84CF,
1869         "GL_TEXTURE15",
1870     },
1871     {
1872         0x84D0,
1873         "GL_TEXTURE16",
1874     },
1875     {
1876         0x84D1,
1877         "GL_TEXTURE17",
1878     },
1879     {
1880         0x84D2,
1881         "GL_TEXTURE18",
1882     },
1883     {
1884         0x84D3,
1885         "GL_TEXTURE19",
1886     },
1887     {
1888         0x84D4,
1889         "GL_TEXTURE20",
1890     },
1891     {
1892         0x84D5,
1893         "GL_TEXTURE21",
1894     },
1895     {
1896         0x84D6,
1897         "GL_TEXTURE22",
1898     },
1899     {
1900         0x84D7,
1901         "GL_TEXTURE23",
1902     },
1903     {
1904         0x84D8,
1905         "GL_TEXTURE24",
1906     },
1907     {
1908         0x84D9,
1909         "GL_TEXTURE25",
1910     },
1911     {
1912         0x84DA,
1913         "GL_TEXTURE26",
1914     },
1915     {
1916         0x84DB,
1917         "GL_TEXTURE27",
1918     },
1919     {
1920         0x84DC,
1921         "GL_TEXTURE28",
1922     },
1923     {
1924         0x84DD,
1925         "GL_TEXTURE29",
1926     },
1927     {
1928         0x84DE,
1929         "GL_TEXTURE30",
1930     },
1931     {
1932         0x84DF,
1933         "GL_TEXTURE31",
1934     },
1935     {
1936         0x84E0,
1937         "GL_ACTIVE_TEXTURE",
1938     },
1939     {
1940         0x84E3,
1941         "GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV",
1942     },
1943     {
1944         0x84E4,
1945         "GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV",
1946     },
1947     {
1948         0x84E8,
1949         "GL_MAX_RENDERBUFFER_SIZE",
1950     },
1951     {
1952         0x84F2,
1953         "GL_ALL_COMPLETED_NV",
1954     },
1955     {
1956         0x84F3,
1957         "GL_FENCE_STATUS_NV",
1958     },
1959     {
1960         0x84F4,
1961         "GL_FENCE_CONDITION_NV",
1962     },
1963     {
1964         0x84F5,
1965         "GL_TEXTURE_RECTANGLE_ARB",
1966     },
1967     {
1968         0x84F6,
1969         "GL_TEXTURE_BINDING_RECTANGLE_ARB",
1970     },
1971     {
1972         0x84F7,
1973         "GL_COMMANDS_COMPLETED_CHROMIUM",
1974     },
1975     {
1976         0x84F8,
1977         "GL_READBACK_SHADOW_COPIES_UPDATED_CHROMIUM",
1978     },
1979     {
1980         0x84F9,
1981         "GL_DEPTH_STENCIL_OES",
1982     },
1983     {
1984         0x84FA,
1985         "GL_UNSIGNED_INT_24_8_OES",
1986     },
1987     {
1988         0x84FD,
1989         "GL_MAX_TEXTURE_LOD_BIAS",
1990     },
1991     {
1992         0x84FE,
1993         "GL_TEXTURE_MAX_ANISOTROPY_EXT",
1994     },
1995     {
1996         0x84FF,
1997         "GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT",
1998     },
1999     {
2000         0x8507,
2001         "GL_INCR_WRAP",
2002     },
2003     {
2004         0x8508,
2005         "GL_DECR_WRAP",
2006     },
2007     {
2008         0x8513,
2009         "GL_TEXTURE_CUBE_MAP",
2010     },
2011     {
2012         0x8514,
2013         "GL_TEXTURE_BINDING_CUBE_MAP",
2014     },
2015     {
2016         0x8515,
2017         "GL_TEXTURE_CUBE_MAP_POSITIVE_X",
2018     },
2019     {
2020         0x8516,
2021         "GL_TEXTURE_CUBE_MAP_NEGATIVE_X",
2022     },
2023     {
2024         0x8517,
2025         "GL_TEXTURE_CUBE_MAP_POSITIVE_Y",
2026     },
2027     {
2028         0x8518,
2029         "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y",
2030     },
2031     {
2032         0x8519,
2033         "GL_TEXTURE_CUBE_MAP_POSITIVE_Z",
2034     },
2035     {
2036         0x851A,
2037         "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z",
2038     },
2039     {
2040         0x851C,
2041         "GL_MAX_CUBE_MAP_TEXTURE_SIZE",
2042     },
2043     {
2044         0x8589,
2045         "GL_SRC1_ALPHA_EXT",
2046     },
2047     {
2048         0x85B5,
2049         "GL_VERTEX_ARRAY_BINDING_OES",
2050     },
2051     {
2052         0x85BA,
2053         "GL_UNSIGNED_SHORT_8_8_APPLE",
2054     },
2055     {
2056         0x85BB,
2057         "GL_UNSIGNED_SHORT_8_8_REV_APPLE",
2058     },
2059     {
2060         0x8622,
2061         "GL_VERTEX_ATTRIB_ARRAY_ENABLED",
2062     },
2063     {
2064         0x8623,
2065         "GL_VERTEX_ATTRIB_ARRAY_SIZE",
2066     },
2067     {
2068         0x8624,
2069         "GL_VERTEX_ATTRIB_ARRAY_STRIDE",
2070     },
2071     {
2072         0x8625,
2073         "GL_VERTEX_ATTRIB_ARRAY_TYPE",
2074     },
2075     {
2076         0x8626,
2077         "GL_CURRENT_VERTEX_ATTRIB",
2078     },
2079     {
2080         0x8645,
2081         "GL_VERTEX_ATTRIB_ARRAY_POINTER",
2082     },
2083     {
2084         0x864F,
2085         "GL_DEPTH_CLAMP_EXT",
2086     },
2087     {
2088         0x86A1,
2089         "GL_TEXTURE_COMPRESSED",
2090     },
2091     {
2092         0x86A2,
2093         "GL_NUM_COMPRESSED_TEXTURE_FORMATS",
2094     },
2095     {
2096         0x86A3,
2097         "GL_COMPRESSED_TEXTURE_FORMATS",
2098     },
2099     {
2100         0x8740,
2101         "GL_Z400_BINARY_AMD",
2102     },
2103     {
2104         0x8741,
2105         "GL_PROGRAM_BINARY_LENGTH_OES",
2106     },
2107     {
2108         0x8743,
2109         "GL_MIRROR_CLAMP_TO_EDGE_EXT",
2110     },
2111     {
2112         0x875F,
2113         "GL_PROGRAM_BINARY_FORMAT_MESA",
2114     },
2115     {
2116         0x8764,
2117         "GL_BUFFER_SIZE",
2118     },
2119     {
2120         0x8765,
2121         "GL_BUFFER_USAGE",
2122     },
2123     {
2124         0x87EE,
2125         "GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD",
2126     },
2127     {
2128         0x87F9,
2129         "GL_3DC_X_AMD",
2130     },
2131     {
2132         0x87FA,
2133         "GL_3DC_XY_AMD",
2134     },
2135     {
2136         0x87FE,
2137         "GL_NUM_PROGRAM_BINARY_FORMATS_OES",
2138     },
2139     {
2140         0x87FF,
2141         "GL_PROGRAM_BINARY_FORMATS_OES",
2142     },
2143     {
2144         0x8800,
2145         "GL_STENCIL_BACK_FUNC",
2146     },
2147     {
2148         0x8801,
2149         "GL_STENCIL_BACK_FAIL",
2150     },
2151     {
2152         0x8802,
2153         "GL_STENCIL_BACK_PASS_DEPTH_FAIL",
2154     },
2155     {
2156         0x8803,
2157         "GL_STENCIL_BACK_PASS_DEPTH_PASS",
2158     },
2159     {
2160         0x8814,
2161         "GL_RGBA32F_EXT",
2162     },
2163     {
2164         0x8815,
2165         "GL_RGB32F_EXT",
2166     },
2167     {
2168         0x8816,
2169         "GL_ALPHA32F_EXT",
2170     },
2171     {
2172         0x8818,
2173         "GL_LUMINANCE32F_EXT",
2174     },
2175     {
2176         0x8819,
2177         "GL_LUMINANCE_ALPHA32F_EXT",
2178     },
2179     {
2180         0x881A,
2181         "GL_RGBA16F_EXT",
2182     },
2183     {
2184         0x881B,
2185         "GL_RGB16F_EXT",
2186     },
2187     {
2188         0x881C,
2189         "GL_ALPHA16F_EXT",
2190     },
2191     {
2192         0x881E,
2193         "GL_LUMINANCE16F_EXT",
2194     },
2195     {
2196         0x881F,
2197         "GL_LUMINANCE_ALPHA16F_EXT",
2198     },
2199     {
2200         0x8823,
2201         "GL_WRITEONLY_RENDERING_QCOM",
2202     },
2203     {
2204         0x8824,
2205         "GL_MAX_DRAW_BUFFERS_EXT",
2206     },
2207     {
2208         0x8825,
2209         "GL_DRAW_BUFFER0_EXT",
2210     },
2211     {
2212         0x8826,
2213         "GL_DRAW_BUFFER1_EXT",
2214     },
2215     {
2216         0x8827,
2217         "GL_DRAW_BUFFER2_EXT",
2218     },
2219     {
2220         0x8828,
2221         "GL_DRAW_BUFFER3_EXT",
2222     },
2223     {
2224         0x8829,
2225         "GL_DRAW_BUFFER4_EXT",
2226     },
2227     {
2228         0x882A,
2229         "GL_DRAW_BUFFER5_EXT",
2230     },
2231     {
2232         0x882B,
2233         "GL_DRAW_BUFFER6_EXT",
2234     },
2235     {
2236         0x882C,
2237         "GL_DRAW_BUFFER7_EXT",
2238     },
2239     {
2240         0x882D,
2241         "GL_DRAW_BUFFER8_EXT",
2242     },
2243     {
2244         0x882E,
2245         "GL_DRAW_BUFFER9_EXT",
2246     },
2247     {
2248         0x882F,
2249         "GL_DRAW_BUFFER10_EXT",
2250     },
2251     {
2252         0x8830,
2253         "GL_DRAW_BUFFER11_EXT",
2254     },
2255     {
2256         0x8831,
2257         "GL_DRAW_BUFFER12_EXT",
2258     },
2259     {
2260         0x8832,
2261         "GL_DRAW_BUFFER13_EXT",
2262     },
2263     {
2264         0x8833,
2265         "GL_DRAW_BUFFER14_EXT",
2266     },
2267     {
2268         0x8834,
2269         "GL_DRAW_BUFFER15_EXT",
2270     },
2271     {
2272         0x883D,
2273         "GL_BLEND_EQUATION_ALPHA",
2274     },
2275     {
2276         0x884A,
2277         "GL_TEXTURE_DEPTH_SIZE",
2278     },
2279     {
2280         0x884C,
2281         "GL_TEXTURE_COMPARE_MODE_EXT",
2282     },
2283     {
2284         0x884D,
2285         "GL_TEXTURE_COMPARE_FUNC_EXT",
2286     },
2287     {
2288         0x884E,
2289         "GL_COMPARE_REF_TO_TEXTURE_EXT",
2290     },
2291     {
2292         0x8864,
2293         "GL_QUERY_COUNTER_BITS_EXT",
2294     },
2295     {
2296         0x8865,
2297         "GL_CURRENT_QUERY_EXT",
2298     },
2299     {
2300         0x8866,
2301         "GL_QUERY_RESULT_EXT",
2302     },
2303     {
2304         0x8867,
2305         "GL_QUERY_RESULT_AVAILABLE_EXT",
2306     },
2307     {
2308         0x8868,
2309         "GL_QUERY_RESULT_AVAILABLE_NO_FLUSH_CHROMIUM_EXT",
2310     },
2311     {
2312         0x8869,
2313         "GL_MAX_VERTEX_ATTRIBS",
2314     },
2315     {
2316         0x886A,
2317         "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED",
2318     },
2319     {
2320         0x886C,
2321         "GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_OES",
2322     },
2323     {
2324         0x886D,
2325         "GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_OES",
2326     },
2327     {
2328         0x8872,
2329         "GL_MAX_TEXTURE_IMAGE_UNITS",
2330     },
2331     {
2332         0x887F,
2333         "GL_GEOMETRY_SHADER_INVOCATIONS_OES",
2334     },
2335     {
2336         0x8892,
2337         "GL_ARRAY_BUFFER",
2338     },
2339     {
2340         0x8893,
2341         "GL_ELEMENT_ARRAY_BUFFER",
2342     },
2343     {
2344         0x8894,
2345         "GL_ARRAY_BUFFER_BINDING",
2346     },
2347     {
2348         0x8895,
2349         "GL_ELEMENT_ARRAY_BUFFER_BINDING",
2350     },
2351     {
2352         0x889F,
2353         "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",
2354     },
2355     {
2356         0x88B8,
2357         "GL_READ_ONLY",
2358     },
2359     {
2360         0x88B9,
2361         "GL_WRITE_ONLY_OES",
2362     },
2363     {
2364         0x88BA,
2365         "GL_READ_WRITE",
2366     },
2367     {
2368         0x88BB,
2369         "GL_BUFFER_ACCESS_OES",
2370     },
2371     {
2372         0x88BC,
2373         "GL_BUFFER_MAPPED_OES",
2374     },
2375     {
2376         0x88BD,
2377         "GL_BUFFER_MAP_POINTER_OES",
2378     },
2379     {
2380         0x88BF,
2381         "GL_TIME_ELAPSED_EXT",
2382     },
2383     {
2384         0x88E0,
2385         "GL_STREAM_DRAW",
2386     },
2387     {
2388         0x88E1,
2389         "GL_STREAM_READ",
2390     },
2391     {
2392         0x88E2,
2393         "GL_STREAM_COPY",
2394     },
2395     {
2396         0x88E4,
2397         "GL_STATIC_DRAW",
2398     },
2399     {
2400         0x88E5,
2401         "GL_STATIC_READ",
2402     },
2403     {
2404         0x88E6,
2405         "GL_STATIC_COPY",
2406     },
2407     {
2408         0x88E8,
2409         "GL_DYNAMIC_DRAW",
2410     },
2411     {
2412         0x88E9,
2413         "GL_DYNAMIC_READ",
2414     },
2415     {
2416         0x88EA,
2417         "GL_DYNAMIC_COPY",
2418     },
2419     {
2420         0x88EB,
2421         "GL_PIXEL_PACK_BUFFER_NV",
2422     },
2423     {
2424         0x88EC,
2425         "GL_PIXEL_UNPACK_BUFFER_NV",
2426     },
2427     {
2428         0x88ED,
2429         "GL_PIXEL_PACK_BUFFER_BINDING_NV",
2430     },
2431     {
2432         0x88EE,
2433         "GL_ETC1_SRGB8_NV",
2434     },
2435     {
2436         0x88EF,
2437         "GL_PIXEL_UNPACK_BUFFER_BINDING_NV",
2438     },
2439     {
2440         0x88F0,
2441         "GL_DEPTH24_STENCIL8_OES",
2442     },
2443     {
2444         0x88F1,
2445         "GL_TEXTURE_STENCIL_SIZE",
2446     },
2447     {
2448         0x88F9,
2449         "GL_SRC1_COLOR_EXT",
2450     },
2451     {
2452         0x88FA,
2453         "GL_ONE_MINUS_SRC1_COLOR_EXT",
2454     },
2455     {
2456         0x88FB,
2457         "GL_ONE_MINUS_SRC1_ALPHA_EXT",
2458     },
2459     {
2460         0x88FC,
2461         "GL_MAX_DUAL_SOURCE_DRAW_BUFFERS_EXT",
2462     },
2463     {
2464         0x88FD,
2465         "GL_VERTEX_ATTRIB_ARRAY_INTEGER",
2466     },
2467     {
2468         0x88FE,
2469         "GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE",
2470     },
2471     {
2472         0x88FF,
2473         "GL_MAX_ARRAY_TEXTURE_LAYERS",
2474     },
2475     {
2476         0x8904,
2477         "GL_MIN_PROGRAM_TEXEL_OFFSET",
2478     },
2479     {
2480         0x8905,
2481         "GL_MAX_PROGRAM_TEXEL_OFFSET",
2482     },
2483     {
2484         0x8914,
2485         "GL_SAMPLES_PASSED_ARB",
2486     },
2487     {
2488         0x8916,
2489         "GL_GEOMETRY_LINKED_VERTICES_OUT_OES",
2490     },
2491     {
2492         0x8917,
2493         "GL_GEOMETRY_LINKED_INPUT_TYPE_OES",
2494     },
2495     {
2496         0x8918,
2497         "GL_GEOMETRY_LINKED_OUTPUT_TYPE_OES",
2498     },
2499     {
2500         0x8919,
2501         "GL_SAMPLER_BINDING",
2502     },
2503     {
2504         0x8A11,
2505         "GL_UNIFORM_BUFFER",
2506     },
2507     {
2508         0x8A1F,
2509         "GL_RGB_422_APPLE",
2510     },
2511     {
2512         0x8A28,
2513         "GL_UNIFORM_BUFFER_BINDING",
2514     },
2515     {
2516         0x8A29,
2517         "GL_UNIFORM_BUFFER_START",
2518     },
2519     {
2520         0x8A2A,
2521         "GL_UNIFORM_BUFFER_SIZE",
2522     },
2523     {
2524         0x8A2B,
2525         "GL_MAX_VERTEX_UNIFORM_BLOCKS",
2526     },
2527     {
2528         0x8A2C,
2529         "GL_MAX_GEOMETRY_UNIFORM_BLOCKS_OES",
2530     },
2531     {
2532         0x8A2D,
2533         "GL_MAX_FRAGMENT_UNIFORM_BLOCKS",
2534     },
2535     {
2536         0x8A2E,
2537         "GL_MAX_COMBINED_UNIFORM_BLOCKS",
2538     },
2539     {
2540         0x8A2F,
2541         "GL_MAX_UNIFORM_BUFFER_BINDINGS",
2542     },
2543     {
2544         0x8A30,
2545         "GL_MAX_UNIFORM_BLOCK_SIZE",
2546     },
2547     {
2548         0x8A31,
2549         "GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS",
2550     },
2551     {
2552         0x8A32,
2553         "GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES",
2554     },
2555     {
2556         0x8A33,
2557         "GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS",
2558     },
2559     {
2560         0x8A34,
2561         "GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT",
2562     },
2563     {
2564         0x8A35,
2565         "GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH",
2566     },
2567     {
2568         0x8A36,
2569         "GL_ACTIVE_UNIFORM_BLOCKS",
2570     },
2571     {
2572         0x8A37,
2573         "GL_UNIFORM_TYPE",
2574     },
2575     {
2576         0x8A38,
2577         "GL_UNIFORM_SIZE",
2578     },
2579     {
2580         0x8A39,
2581         "GL_UNIFORM_NAME_LENGTH",
2582     },
2583     {
2584         0x8A3A,
2585         "GL_UNIFORM_BLOCK_INDEX",
2586     },
2587     {
2588         0x8A3B,
2589         "GL_UNIFORM_OFFSET",
2590     },
2591     {
2592         0x8A3C,
2593         "GL_UNIFORM_ARRAY_STRIDE",
2594     },
2595     {
2596         0x8A3D,
2597         "GL_UNIFORM_MATRIX_STRIDE",
2598     },
2599     {
2600         0x8A3E,
2601         "GL_UNIFORM_IS_ROW_MAJOR",
2602     },
2603     {
2604         0x8A3F,
2605         "GL_UNIFORM_BLOCK_BINDING",
2606     },
2607     {
2608         0x8A40,
2609         "GL_UNIFORM_BLOCK_DATA_SIZE",
2610     },
2611     {
2612         0x8A41,
2613         "GL_UNIFORM_BLOCK_NAME_LENGTH",
2614     },
2615     {
2616         0x8A42,
2617         "GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS",
2618     },
2619     {
2620         0x8A43,
2621         "GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES",
2622     },
2623     {
2624         0x8A44,
2625         "GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER",
2626     },
2627     {
2628         0x8A46,
2629         "GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER",
2630     },
2631     {
2632         0x8A48,
2633         "GL_TEXTURE_SRGB_DECODE_EXT",
2634     },
2635     {
2636         0x8A49,
2637         "GL_DECODE_EXT",
2638     },
2639     {
2640         0x8A4A,
2641         "GL_SKIP_DECODE_EXT",
2642     },
2643     {
2644         0x8A4F,
2645         "GL_PROGRAM_PIPELINE_OBJECT_EXT",
2646     },
2647     {
2648         0x8A51,
2649         "GL_RGB_RAW_422_APPLE",
2650     },
2651     {
2652         0x8A52,
2653         "GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT",
2654     },
2655     {
2656         0x8A53,
2657         "GL_SYNC_OBJECT_APPLE",
2658     },
2659     {
2660         0x8A54,
2661         "GL_COMPRESSED_SRGB_PVRTC_2BPPV1_EXT",
2662     },
2663     {
2664         0x8A55,
2665         "GL_COMPRESSED_SRGB_PVRTC_4BPPV1_EXT",
2666     },
2667     {
2668         0x8A56,
2669         "GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT",
2670     },
2671     {
2672         0x8A57,
2673         "GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV1_EXT",
2674     },
2675     {
2676         0x8AF0,
2677         "GL_TEXTURE_FILTERING_HINT_CHROMIUM",
2678     },
2679     {
2680         0x8AF6,
2681         "GL_SHARED_IMAGE_ACCESS_MODE_READ_CHROMIUM",
2682     },
2683     {
2684         0x8AF7,
2685         "GL_SHARED_IMAGE_ACCESS_MODE_READWRITE_CHROMIUM",
2686     },
2687     {
2688         0x8AF8,
2689         "GL_SHARED_IMAGE_ACCESS_MODE_OVERLAY_CHROMIUM",
2690     },
2691     {
2692         0x8B30,
2693         "GL_FRAGMENT_SHADER",
2694     },
2695     {
2696         0x8B31,
2697         "GL_VERTEX_SHADER",
2698     },
2699     {
2700         0x8B40,
2701         "GL_PROGRAM_OBJECT_EXT",
2702     },
2703     {
2704         0x8B48,
2705         "GL_SHADER_OBJECT_EXT",
2706     },
2707     {
2708         0x8B49,
2709         "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS",
2710     },
2711     {
2712         0x8B4A,
2713         "GL_MAX_VERTEX_UNIFORM_COMPONENTS",
2714     },
2715     {
2716         0x8B4B,
2717         "GL_MAX_VARYING_COMPONENTS",
2718     },
2719     {
2720         0x8B4C,
2721         "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS",
2722     },
2723     {
2724         0x8B4D,
2725         "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS",
2726     },
2727     {
2728         0x8B4F,
2729         "GL_SHADER_TYPE",
2730     },
2731     {
2732         0x8B50,
2733         "GL_FLOAT_VEC2",
2734     },
2735     {
2736         0x8B51,
2737         "GL_FLOAT_VEC3",
2738     },
2739     {
2740         0x8B52,
2741         "GL_FLOAT_VEC4",
2742     },
2743     {
2744         0x8B53,
2745         "GL_INT_VEC2",
2746     },
2747     {
2748         0x8B54,
2749         "GL_INT_VEC3",
2750     },
2751     {
2752         0x8B55,
2753         "GL_INT_VEC4",
2754     },
2755     {
2756         0x8B56,
2757         "GL_BOOL",
2758     },
2759     {
2760         0x8B57,
2761         "GL_BOOL_VEC2",
2762     },
2763     {
2764         0x8B58,
2765         "GL_BOOL_VEC3",
2766     },
2767     {
2768         0x8B59,
2769         "GL_BOOL_VEC4",
2770     },
2771     {
2772         0x8B5A,
2773         "GL_FLOAT_MAT2",
2774     },
2775     {
2776         0x8B5B,
2777         "GL_FLOAT_MAT3",
2778     },
2779     {
2780         0x8B5C,
2781         "GL_FLOAT_MAT4",
2782     },
2783     {
2784         0x8B5E,
2785         "GL_SAMPLER_2D",
2786     },
2787     {
2788         0x8B5F,
2789         "GL_SAMPLER_3D_OES",
2790     },
2791     {
2792         0x8B60,
2793         "GL_SAMPLER_CUBE",
2794     },
2795     {
2796         0x8B62,
2797         "GL_SAMPLER_2D_SHADOW_EXT",
2798     },
2799     {
2800         0x8B63,
2801         "GL_SAMPLER_2D_RECT_ARB",
2802     },
2803     {
2804         0x8B65,
2805         "GL_FLOAT_MAT2x3_NV",
2806     },
2807     {
2808         0x8B66,
2809         "GL_FLOAT_MAT2x4_NV",
2810     },
2811     {
2812         0x8B67,
2813         "GL_FLOAT_MAT3x2_NV",
2814     },
2815     {
2816         0x8B68,
2817         "GL_FLOAT_MAT3x4_NV",
2818     },
2819     {
2820         0x8B69,
2821         "GL_FLOAT_MAT4x2_NV",
2822     },
2823     {
2824         0x8B6A,
2825         "GL_FLOAT_MAT4x3_NV",
2826     },
2827     {
2828         0x8B80,
2829         "GL_DELETE_STATUS",
2830     },
2831     {
2832         0x8B81,
2833         "GL_COMPILE_STATUS",
2834     },
2835     {
2836         0x8B82,
2837         "GL_LINK_STATUS",
2838     },
2839     {
2840         0x8B83,
2841         "GL_VALIDATE_STATUS",
2842     },
2843     {
2844         0x8B84,
2845         "GL_INFO_LOG_LENGTH",
2846     },
2847     {
2848         0x8B85,
2849         "GL_ATTACHED_SHADERS",
2850     },
2851     {
2852         0x8B86,
2853         "GL_ACTIVE_UNIFORMS",
2854     },
2855     {
2856         0x8B87,
2857         "GL_ACTIVE_UNIFORM_MAX_LENGTH",
2858     },
2859     {
2860         0x8B88,
2861         "GL_SHADER_SOURCE_LENGTH",
2862     },
2863     {
2864         0x8B89,
2865         "GL_ACTIVE_ATTRIBUTES",
2866     },
2867     {
2868         0x8B8A,
2869         "GL_ACTIVE_ATTRIBUTE_MAX_LENGTH",
2870     },
2871     {
2872         0x8B8B,
2873         "GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES",
2874     },
2875     {
2876         0x8B8C,
2877         "GL_SHADING_LANGUAGE_VERSION",
2878     },
2879     {
2880         0x8B8D,
2881         "GL_CURRENT_PROGRAM",
2882     },
2883     {
2884         0x8B90,
2885         "GL_PALETTE4_RGB8_OES",
2886     },
2887     {
2888         0x8B91,
2889         "GL_PALETTE4_RGBA8_OES",
2890     },
2891     {
2892         0x8B92,
2893         "GL_PALETTE4_R5_G6_B5_OES",
2894     },
2895     {
2896         0x8B93,
2897         "GL_PALETTE4_RGBA4_OES",
2898     },
2899     {
2900         0x8B94,
2901         "GL_PALETTE4_RGB5_A1_OES",
2902     },
2903     {
2904         0x8B95,
2905         "GL_PALETTE8_RGB8_OES",
2906     },
2907     {
2908         0x8B96,
2909         "GL_PALETTE8_RGBA8_OES",
2910     },
2911     {
2912         0x8B97,
2913         "GL_PALETTE8_R5_G6_B5_OES",
2914     },
2915     {
2916         0x8B98,
2917         "GL_PALETTE8_RGBA4_OES",
2918     },
2919     {
2920         0x8B99,
2921         "GL_PALETTE8_RGB5_A1_OES",
2922     },
2923     {
2924         0x8B9A,
2925         "GL_IMPLEMENTATION_COLOR_READ_TYPE",
2926     },
2927     {
2928         0x8B9B,
2929         "GL_IMPLEMENTATION_COLOR_READ_FORMAT",
2930     },
2931     {
2932         0x8BBB,
2933         "GL_FRAMEBUFFER_FLIP_Y_MESA",
2934     },
2935     {
2936         0x8BC0,
2937         "GL_COUNTER_TYPE_AMD",
2938     },
2939     {
2940         0x8BC1,
2941         "GL_COUNTER_RANGE_AMD",
2942     },
2943     {
2944         0x8BC2,
2945         "GL_UNSIGNED_INT64_AMD",
2946     },
2947     {
2948         0x8BC3,
2949         "GL_PERCENTAGE_AMD",
2950     },
2951     {
2952         0x8BC4,
2953         "GL_PERFMON_RESULT_AVAILABLE_AMD",
2954     },
2955     {
2956         0x8BC5,
2957         "GL_PERFMON_RESULT_SIZE_AMD",
2958     },
2959     {
2960         0x8BC6,
2961         "GL_PERFMON_RESULT_AMD",
2962     },
2963     {
2964         0x8BD2,
2965         "GL_TEXTURE_WIDTH_QCOM",
2966     },
2967     {
2968         0x8BD3,
2969         "GL_TEXTURE_HEIGHT_QCOM",
2970     },
2971     {
2972         0x8BD4,
2973         "GL_TEXTURE_DEPTH_QCOM",
2974     },
2975     {
2976         0x8BD5,
2977         "GL_TEXTURE_INTERNAL_FORMAT_QCOM",
2978     },
2979     {
2980         0x8BD6,
2981         "GL_TEXTURE_FORMAT_QCOM",
2982     },
2983     {
2984         0x8BD7,
2985         "GL_TEXTURE_TYPE_QCOM",
2986     },
2987     {
2988         0x8BD8,
2989         "GL_TEXTURE_IMAGE_VALID_QCOM",
2990     },
2991     {
2992         0x8BD9,
2993         "GL_TEXTURE_NUM_LEVELS_QCOM",
2994     },
2995     {
2996         0x8BDA,
2997         "GL_TEXTURE_TARGET_QCOM",
2998     },
2999     {
3000         0x8BDB,
3001         "GL_TEXTURE_OBJECT_VALID_QCOM",
3002     },
3003     {
3004         0x8BDC,
3005         "GL_STATE_RESTORE",
3006     },
3007     {
3008         0x8BE7,
3009         "GL_SAMPLER_EXTERNAL_2D_Y2Y_EXT",
3010     },
3011     {
3012         0x8BFA,
3013         "GL_TEXTURE_PROTECTED_EXT",
3014     },
3015     {
3016         0x8BFB,
3017         "GL_TEXTURE_FOVEATED_FEATURE_BITS_QCOM",
3018     },
3019     {
3020         0x8BFC,
3021         "GL_TEXTURE_FOVEATED_MIN_PIXEL_DENSITY_QCOM",
3022     },
3023     {
3024         0x8BFD,
3025         "GL_TEXTURE_FOVEATED_FEATURE_QUERY_QCOM",
3026     },
3027     {
3028         0x8BFE,
3029         "GL_TEXTURE_FOVEATED_NUM_FOCAL_POINTS_QUERY_QCOM",
3030     },
3031     {
3032         0x8BFF,
3033         "GL_FRAMEBUFFER_INCOMPLETE_FOVEATION_QCOM",
3034     },
3035     {
3036         0x8C00,
3037         "GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG",
3038     },
3039     {
3040         0x8C01,
3041         "GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG",
3042     },
3043     {
3044         0x8C02,
3045         "GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",
3046     },
3047     {
3048         0x8C03,
3049         "GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG",
3050     },
3051     {
3052         0x8C0A,
3053         "GL_SGX_BINARY_IMG",
3054     },
3055     {
3056         0x8C10,
3057         "GL_TEXTURE_RED_TYPE",
3058     },
3059     {
3060         0x8C11,
3061         "GL_TEXTURE_GREEN_TYPE",
3062     },
3063     {
3064         0x8C12,
3065         "GL_TEXTURE_BLUE_TYPE",
3066     },
3067     {
3068         0x8C13,
3069         "GL_TEXTURE_ALPHA_TYPE",
3070     },
3071     {
3072         0x8C16,
3073         "GL_TEXTURE_DEPTH_TYPE",
3074     },
3075     {
3076         0x8C17,
3077         "GL_UNSIGNED_NORMALIZED_EXT",
3078     },
3079     {
3080         0x8C1A,
3081         "GL_TEXTURE_2D_ARRAY",
3082     },
3083     {
3084         0x8C1D,
3085         "GL_TEXTURE_BINDING_2D_ARRAY",
3086     },
3087     {
3088         0x8C29,
3089         "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES",
3090     },
3091     {
3092         0x8C2A,
3093         "GL_TEXTURE_BUFFER_OES",
3094     },
3095     {
3096         0x8C2B,
3097         "GL_MAX_TEXTURE_BUFFER_SIZE_OES",
3098     },
3099     {
3100         0x8C2C,
3101         "GL_TEXTURE_BINDING_BUFFER_OES",
3102     },
3103     {
3104         0x8C2D,
3105         "GL_TEXTURE_BUFFER_DATA_STORE_BINDING_OES",
3106     },
3107     {
3108         0x8C2F,
3109         "GL_ANY_SAMPLES_PASSED_EXT",
3110     },
3111     {
3112         0x8C36,
3113         "GL_SAMPLE_SHADING_OES",
3114     },
3115     {
3116         0x8C37,
3117         "GL_MIN_SAMPLE_SHADING_VALUE_OES",
3118     },
3119     {
3120         0x8C3A,
3121         "GL_R11F_G11F_B10F_APPLE",
3122     },
3123     {
3124         0x8C3B,
3125         "GL_UNSIGNED_INT_10F_11F_11F_REV_APPLE",
3126     },
3127     {
3128         0x8C3D,
3129         "GL_RGB9_E5_APPLE",
3130     },
3131     {
3132         0x8C3E,
3133         "GL_UNSIGNED_INT_5_9_9_9_REV_APPLE",
3134     },
3135     {
3136         0x8C3F,
3137         "GL_TEXTURE_SHARED_SIZE",
3138     },
3139     {
3140         0x8C40,
3141         "GL_SRGB_EXT",
3142     },
3143     {
3144         0x8C41,
3145         "GL_SRGB8_NV",
3146     },
3147     {
3148         0x8C42,
3149         "GL_SRGB_ALPHA_EXT",
3150     },
3151     {
3152         0x8C43,
3153         "GL_SRGB8_ALPHA8_EXT",
3154     },
3155     {
3156         0x8C44,
3157         "GL_SLUMINANCE_ALPHA_NV",
3158     },
3159     {
3160         0x8C45,
3161         "GL_SLUMINANCE8_ALPHA8_NV",
3162     },
3163     {
3164         0x8C46,
3165         "GL_SLUMINANCE_NV",
3166     },
3167     {
3168         0x8C47,
3169         "GL_SLUMINANCE8_NV",
3170     },
3171     {
3172         0x8C4C,
3173         "GL_COMPRESSED_SRGB_S3TC_DXT1_EXT",
3174     },
3175     {
3176         0x8C4D,
3177         "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT",
3178     },
3179     {
3180         0x8C4E,
3181         "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT",
3182     },
3183     {
3184         0x8C4F,
3185         "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT",
3186     },
3187     {
3188         0x8C76,
3189         "GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH",
3190     },
3191     {
3192         0x8C7F,
3193         "GL_TRANSFORM_FEEDBACK_BUFFER_MODE",
3194     },
3195     {
3196         0x8C80,
3197         "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS",
3198     },
3199     {
3200         0x8C83,
3201         "GL_TRANSFORM_FEEDBACK_VARYINGS",
3202     },
3203     {
3204         0x8C84,
3205         "GL_TRANSFORM_FEEDBACK_BUFFER_START",
3206     },
3207     {
3208         0x8C85,
3209         "GL_TRANSFORM_FEEDBACK_BUFFER_SIZE",
3210     },
3211     {
3212         0x8C87,
3213         "GL_PRIMITIVES_GENERATED_OES",
3214     },
3215     {
3216         0x8C88,
3217         "GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN",
3218     },
3219     {
3220         0x8C89,
3221         "GL_RASTERIZER_DISCARD",
3222     },
3223     {
3224         0x8C8A,
3225         "GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS",
3226     },
3227     {
3228         0x8C8B,
3229         "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS",
3230     },
3231     {
3232         0x8C8C,
3233         "GL_INTERLEAVED_ATTRIBS",
3234     },
3235     {
3236         0x8C8D,
3237         "GL_SEPARATE_ATTRIBS",
3238     },
3239     {
3240         0x8C8E,
3241         "GL_TRANSFORM_FEEDBACK_BUFFER",
3242     },
3243     {
3244         0x8C8F,
3245         "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING",
3246     },
3247     {
3248         0x8C92,
3249         "GL_ATC_RGB_AMD",
3250     },
3251     {
3252         0x8C93,
3253         "GL_ATC_RGBA_EXPLICIT_ALPHA_AMD",
3254     },
3255     {
3256         0x8CA1,
3257         "GL_LOWER_LEFT_EXT",
3258     },
3259     {
3260         0x8CA2,
3261         "GL_UPPER_LEFT_EXT",
3262     },
3263     {
3264         0x8CA3,
3265         "GL_STENCIL_BACK_REF",
3266     },
3267     {
3268         0x8CA4,
3269         "GL_STENCIL_BACK_VALUE_MASK",
3270     },
3271     {
3272         0x8CA5,
3273         "GL_STENCIL_BACK_WRITEMASK",
3274     },
3275     {
3276         0x8CA6,
3277         "GL_FRAMEBUFFER_BINDING",
3278     },
3279     {
3280         0x8CA7,
3281         "GL_RENDERBUFFER_BINDING",
3282     },
3283     {
3284         0x8CA8,
3285         "GL_READ_FRAMEBUFFER_ANGLE",
3286     },
3287     {
3288         0x8CA9,
3289         "GL_DRAW_FRAMEBUFFER_ANGLE",
3290     },
3291     {
3292         0x8CAA,
3293         "GL_READ_FRAMEBUFFER_BINDING_ANGLE",
3294     },
3295     {
3296         0x8CAB,
3297         "GL_RENDERBUFFER_SAMPLES_ANGLE",
3298     },
3299     {
3300         0x8CAC,
3301         "GL_DEPTH_COMPONENT32F",
3302     },
3303     {
3304         0x8CAD,
3305         "GL_DEPTH32F_STENCIL8",
3306     },
3307     {
3308         0x8CD0,
3309         "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",
3310     },
3311     {
3312         0x8CD1,
3313         "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",
3314     },
3315     {
3316         0x8CD2,
3317         "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",
3318     },
3319     {
3320         0x8CD3,
3321         "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",
3322     },
3323     {
3324         0x8CD4,
3325         "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES",
3326     },
3327     {
3328         0x8CD5,
3329         "GL_FRAMEBUFFER_COMPLETE",
3330     },
3331     {
3332         0x8CD6,
3333         "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT",
3334     },
3335     {
3336         0x8CD7,
3337         "GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",
3338     },
3339     {
3340         0x8CD9,
3341         "GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS",
3342     },
3343     {
3344         0x8CDD,
3345         "GL_FRAMEBUFFER_UNSUPPORTED",
3346     },
3347     {
3348         0x8CDF,
3349         "GL_MAX_COLOR_ATTACHMENTS_EXT",
3350     },
3351     {
3352         0x8CE0,
3353         "GL_COLOR_ATTACHMENT0",
3354     },
3355     {
3356         0x8CE1,
3357         "GL_COLOR_ATTACHMENT1_EXT",
3358     },
3359     {
3360         0x8CE2,
3361         "GL_COLOR_ATTACHMENT2_EXT",
3362     },
3363     {
3364         0x8CE3,
3365         "GL_COLOR_ATTACHMENT3_EXT",
3366     },
3367     {
3368         0x8CE4,
3369         "GL_COLOR_ATTACHMENT4_EXT",
3370     },
3371     {
3372         0x8CE5,
3373         "GL_COLOR_ATTACHMENT5_EXT",
3374     },
3375     {
3376         0x8CE6,
3377         "GL_COLOR_ATTACHMENT6_EXT",
3378     },
3379     {
3380         0x8CE7,
3381         "GL_COLOR_ATTACHMENT7_EXT",
3382     },
3383     {
3384         0x8CE8,
3385         "GL_COLOR_ATTACHMENT8_EXT",
3386     },
3387     {
3388         0x8CE9,
3389         "GL_COLOR_ATTACHMENT9_EXT",
3390     },
3391     {
3392         0x8CEA,
3393         "GL_COLOR_ATTACHMENT10_EXT",
3394     },
3395     {
3396         0x8CEB,
3397         "GL_COLOR_ATTACHMENT11_EXT",
3398     },
3399     {
3400         0x8CEC,
3401         "GL_COLOR_ATTACHMENT12_EXT",
3402     },
3403     {
3404         0x8CED,
3405         "GL_COLOR_ATTACHMENT13_EXT",
3406     },
3407     {
3408         0x8CEE,
3409         "GL_COLOR_ATTACHMENT14_EXT",
3410     },
3411     {
3412         0x8CEF,
3413         "GL_COLOR_ATTACHMENT15_EXT",
3414     },
3415     {
3416         0x8CF0,
3417         "GL_COLOR_ATTACHMENT16",
3418     },
3419     {
3420         0x8CF1,
3421         "GL_COLOR_ATTACHMENT17",
3422     },
3423     {
3424         0x8CF2,
3425         "GL_COLOR_ATTACHMENT18",
3426     },
3427     {
3428         0x8CF3,
3429         "GL_COLOR_ATTACHMENT19",
3430     },
3431     {
3432         0x8CF4,
3433         "GL_COLOR_ATTACHMENT20",
3434     },
3435     {
3436         0x8CF5,
3437         "GL_COLOR_ATTACHMENT21",
3438     },
3439     {
3440         0x8CF6,
3441         "GL_COLOR_ATTACHMENT22",
3442     },
3443     {
3444         0x8CF7,
3445         "GL_COLOR_ATTACHMENT23",
3446     },
3447     {
3448         0x8CF8,
3449         "GL_COLOR_ATTACHMENT24",
3450     },
3451     {
3452         0x8CF9,
3453         "GL_COLOR_ATTACHMENT25",
3454     },
3455     {
3456         0x8CFA,
3457         "GL_COLOR_ATTACHMENT26",
3458     },
3459     {
3460         0x8CFB,
3461         "GL_COLOR_ATTACHMENT27",
3462     },
3463     {
3464         0x8CFC,
3465         "GL_COLOR_ATTACHMENT28",
3466     },
3467     {
3468         0x8CFD,
3469         "GL_COLOR_ATTACHMENT29",
3470     },
3471     {
3472         0x8CFE,
3473         "GL_COLOR_ATTACHMENT30",
3474     },
3475     {
3476         0x8CFF,
3477         "GL_COLOR_ATTACHMENT31",
3478     },
3479     {
3480         0x8D00,
3481         "GL_DEPTH_ATTACHMENT",
3482     },
3483     {
3484         0x8D20,
3485         "GL_STENCIL_ATTACHMENT",
3486     },
3487     {
3488         0x8D40,
3489         "GL_FRAMEBUFFER",
3490     },
3491     {
3492         0x8D41,
3493         "GL_RENDERBUFFER",
3494     },
3495     {
3496         0x8D42,
3497         "GL_RENDERBUFFER_WIDTH",
3498     },
3499     {
3500         0x8D43,
3501         "GL_RENDERBUFFER_HEIGHT",
3502     },
3503     {
3504         0x8D44,
3505         "GL_RENDERBUFFER_INTERNAL_FORMAT",
3506     },
3507     {
3508         0x8D46,
3509         "GL_STENCIL_INDEX1_OES",
3510     },
3511     {
3512         0x8D47,
3513         "GL_STENCIL_INDEX4_OES",
3514     },
3515     {
3516         0x8D48,
3517         "GL_STENCIL_INDEX8",
3518     },
3519     {
3520         0x8D50,
3521         "GL_RENDERBUFFER_RED_SIZE",
3522     },
3523     {
3524         0x8D51,
3525         "GL_RENDERBUFFER_GREEN_SIZE",
3526     },
3527     {
3528         0x8D52,
3529         "GL_RENDERBUFFER_BLUE_SIZE",
3530     },
3531     {
3532         0x8D53,
3533         "GL_RENDERBUFFER_ALPHA_SIZE",
3534     },
3535     {
3536         0x8D54,
3537         "GL_RENDERBUFFER_DEPTH_SIZE",
3538     },
3539     {
3540         0x8D55,
3541         "GL_RENDERBUFFER_STENCIL_SIZE",
3542     },
3543     {
3544         0x8D56,
3545         "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE",
3546     },
3547     {
3548         0x8D57,
3549         "GL_MAX_SAMPLES_ANGLE",
3550     },
3551     {
3552         0x8D61,
3553         "GL_HALF_FLOAT_OES",
3554     },
3555     {
3556         0x8D62,
3557         "GL_RGB565",
3558     },
3559     {
3560         0x8D64,
3561         "GL_ETC1_RGB8_OES",
3562     },
3563     {
3564         0x8D65,
3565         "GL_TEXTURE_EXTERNAL_OES",
3566     },
3567     {
3568         0x8D66,
3569         "GL_SAMPLER_EXTERNAL_OES",
3570     },
3571     {
3572         0x8D67,
3573         "GL_TEXTURE_BINDING_EXTERNAL_OES",
3574     },
3575     {
3576         0x8D68,
3577         "GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES",
3578     },
3579     {
3580         0x8D69,
3581         "GL_PRIMITIVE_RESTART_FIXED_INDEX",
3582     },
3583     {
3584         0x8D6A,
3585         "GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT",
3586     },
3587     {
3588         0x8D6B,
3589         "GL_MAX_ELEMENT_INDEX",
3590     },
3591     {
3592         0x8D6C,
3593         "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT",
3594     },
3595     {
3596         0x8D70,
3597         "GL_RGBA32UI",
3598     },
3599     {
3600         0x8D71,
3601         "GL_RGB32UI",
3602     },
3603     {
3604         0x8D76,
3605         "GL_RGBA16UI",
3606     },
3607     {
3608         0x8D77,
3609         "GL_RGB16UI",
3610     },
3611     {
3612         0x8D7C,
3613         "GL_RGBA8UI",
3614     },
3615     {
3616         0x8D7D,
3617         "GL_RGB8UI",
3618     },
3619     {
3620         0x8D82,
3621         "GL_RGBA32I",
3622     },
3623     {
3624         0x8D83,
3625         "GL_RGB32I",
3626     },
3627     {
3628         0x8D88,
3629         "GL_RGBA16I",
3630     },
3631     {
3632         0x8D89,
3633         "GL_RGB16I",
3634     },
3635     {
3636         0x8D8E,
3637         "GL_RGBA8I",
3638     },
3639     {
3640         0x8D8F,
3641         "GL_RGB8I",
3642     },
3643     {
3644         0x8D94,
3645         "GL_RED_INTEGER",
3646     },
3647     {
3648         0x8D98,
3649         "GL_RGB_INTEGER",
3650     },
3651     {
3652         0x8D99,
3653         "GL_RGBA_INTEGER",
3654     },
3655     {
3656         0x8D9F,
3657         "GL_INT_2_10_10_10_REV",
3658     },
3659     {
3660         0x8DA7,
3661         "GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES",
3662     },
3663     {
3664         0x8DA8,
3665         "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES",
3666     },
3667     {
3668         0x8DAD,
3669         "GL_FLOAT_32_UNSIGNED_INT_24_8_REV",
3670     },
3671     {
3672         0x8DB9,
3673         "GL_FRAMEBUFFER_SRGB_EXT",
3674     },
3675     {
3676         0x8DBB,
3677         "GL_COMPRESSED_RED_RGTC1_EXT",
3678     },
3679     {
3680         0x8DBC,
3681         "GL_COMPRESSED_SIGNED_RED_RGTC1_EXT",
3682     },
3683     {
3684         0x8DBD,
3685         "GL_COMPRESSED_RED_GREEN_RGTC2_EXT",
3686     },
3687     {
3688         0x8DBE,
3689         "GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT",
3690     },
3691     {
3692         0x8DC1,
3693         "GL_SAMPLER_2D_ARRAY",
3694     },
3695     {
3696         0x8DC2,
3697         "GL_SAMPLER_BUFFER_OES",
3698     },
3699     {
3700         0x8DC4,
3701         "GL_SAMPLER_2D_ARRAY_SHADOW_NV",
3702     },
3703     {
3704         0x8DC5,
3705         "GL_SAMPLER_CUBE_SHADOW_NV",
3706     },
3707     {
3708         0x8DC6,
3709         "GL_UNSIGNED_INT_VEC2",
3710     },
3711     {
3712         0x8DC7,
3713         "GL_UNSIGNED_INT_VEC3",
3714     },
3715     {
3716         0x8DC8,
3717         "GL_UNSIGNED_INT_VEC4",
3718     },
3719     {
3720         0x8DCA,
3721         "GL_INT_SAMPLER_2D",
3722     },
3723     {
3724         0x8DCB,
3725         "GL_INT_SAMPLER_3D",
3726     },
3727     {
3728         0x8DCC,
3729         "GL_INT_SAMPLER_CUBE",
3730     },
3731     {
3732         0x8DCF,
3733         "GL_INT_SAMPLER_2D_ARRAY",
3734     },
3735     {
3736         0x8DD0,
3737         "GL_INT_SAMPLER_BUFFER_OES",
3738     },
3739     {
3740         0x8DD2,
3741         "GL_UNSIGNED_INT_SAMPLER_2D",
3742     },
3743     {
3744         0x8DD3,
3745         "GL_UNSIGNED_INT_SAMPLER_3D",
3746     },
3747     {
3748         0x8DD4,
3749         "GL_UNSIGNED_INT_SAMPLER_CUBE",
3750     },
3751     {
3752         0x8DD7,
3753         "GL_UNSIGNED_INT_SAMPLER_2D_ARRAY",
3754     },
3755     {
3756         0x8DD8,
3757         "GL_UNSIGNED_INT_SAMPLER_BUFFER_OES",
3758     },
3759     {
3760         0x8DD9,
3761         "GL_GEOMETRY_SHADER_OES",
3762     },
3763     {
3764         0x8DDF,
3765         "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_OES",
3766     },
3767     {
3768         0x8DE0,
3769         "GL_MAX_GEOMETRY_OUTPUT_VERTICES_OES",
3770     },
3771     {
3772         0x8DE1,
3773         "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES",
3774     },
3775     {
3776         0x8DF0,
3777         "GL_LOW_FLOAT",
3778     },
3779     {
3780         0x8DF1,
3781         "GL_MEDIUM_FLOAT",
3782     },
3783     {
3784         0x8DF2,
3785         "GL_HIGH_FLOAT",
3786     },
3787     {
3788         0x8DF3,
3789         "GL_LOW_INT",
3790     },
3791     {
3792         0x8DF4,
3793         "GL_MEDIUM_INT",
3794     },
3795     {
3796         0x8DF5,
3797         "GL_HIGH_INT",
3798     },
3799     {
3800         0x8DF6,
3801         "GL_UNSIGNED_INT_10_10_10_2_OES",
3802     },
3803     {
3804         0x8DF7,
3805         "GL_INT_10_10_10_2_OES",
3806     },
3807     {
3808         0x8DF8,
3809         "GL_SHADER_BINARY_FORMATS",
3810     },
3811     {
3812         0x8DF9,
3813         "GL_NUM_SHADER_BINARY_FORMATS",
3814     },
3815     {
3816         0x8DFA,
3817         "GL_SHADER_COMPILER",
3818     },
3819     {
3820         0x8DFB,
3821         "GL_MAX_VERTEX_UNIFORM_VECTORS",
3822     },
3823     {
3824         0x8DFC,
3825         "GL_MAX_VARYING_VECTORS",
3826     },
3827     {
3828         0x8DFD,
3829         "GL_MAX_FRAGMENT_UNIFORM_VECTORS",
3830     },
3831     {
3832         0x8E13,
3833         "GL_QUERY_WAIT_NV",
3834     },
3835     {
3836         0x8E14,
3837         "GL_QUERY_NO_WAIT_NV",
3838     },
3839     {
3840         0x8E15,
3841         "GL_QUERY_BY_REGION_WAIT_NV",
3842     },
3843     {
3844         0x8E16,
3845         "GL_QUERY_BY_REGION_NO_WAIT_NV",
3846     },
3847     {
3848         0x8E1B,
3849         "GL_POLYGON_OFFSET_CLAMP_EXT",
3850     },
3851     {
3852         0x8E1E,
3853         "GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_OES",
3854     },
3855     {
3856         0x8E1F,
3857         "GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_OES",
3858     },
3859     {
3860         0x8E20,
3861         "GL_COLOR_SAMPLES_NV",
3862     },
3863     {
3864         0x8E22,
3865         "GL_TRANSFORM_FEEDBACK",
3866     },
3867     {
3868         0x8E23,
3869         "GL_TRANSFORM_FEEDBACK_PAUSED",
3870     },
3871     {
3872         0x8E24,
3873         "GL_TRANSFORM_FEEDBACK_ACTIVE",
3874     },
3875     {
3876         0x8E25,
3877         "GL_TRANSFORM_FEEDBACK_BINDING",
3878     },
3879     {
3880         0x8E28,
3881         "GL_TIMESTAMP_EXT",
3882     },
3883     {
3884         0x8E2C,
3885         "GL_DEPTH_COMPONENT16_NONLINEAR_NV",
3886     },
3887     {
3888         0x8E42,
3889         "GL_TEXTURE_SWIZZLE_R",
3890     },
3891     {
3892         0x8E43,
3893         "GL_TEXTURE_SWIZZLE_G",
3894     },
3895     {
3896         0x8E44,
3897         "GL_TEXTURE_SWIZZLE_B",
3898     },
3899     {
3900         0x8E45,
3901         "GL_TEXTURE_SWIZZLE_A",
3902     },
3903     {
3904         0x8E4D,
3905         "GL_FIRST_VERTEX_CONVENTION_OES",
3906     },
3907     {
3908         0x8E4E,
3909         "GL_LAST_VERTEX_CONVENTION_OES",
3910     },
3911     {
3912         0x8E50,
3913         "GL_SAMPLE_LOCATION_NV",
3914     },
3915     {
3916         0x8E51,
3917         "GL_SAMPLE_MASK",
3918     },
3919     {
3920         0x8E52,
3921         "GL_SAMPLE_MASK_VALUE",
3922     },
3923     {
3924         0x8E59,
3925         "GL_MAX_SAMPLE_MASK_WORDS",
3926     },
3927     {
3928         0x8E5A,
3929         "GL_MAX_GEOMETRY_SHADER_INVOCATIONS_OES",
3930     },
3931     {
3932         0x8E5B,
3933         "GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES",
3934     },
3935     {
3936         0x8E5C,
3937         "GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES",
3938     },
3939     {
3940         0x8E5D,
3941         "GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES",
3942     },
3943     {
3944         0x8E5E,
3945         "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET",
3946     },
3947     {
3948         0x8E5F,
3949         "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET",
3950     },
3951     {
3952         0x8E60,
3953         "GL_MAX_MESH_UNIFORM_BLOCKS_NV",
3954     },
3955     {
3956         0x8E61,
3957         "GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV",
3958     },
3959     {
3960         0x8E62,
3961         "GL_MAX_MESH_IMAGE_UNIFORMS_NV",
3962     },
3963     {
3964         0x8E63,
3965         "GL_MAX_MESH_UNIFORM_COMPONENTS_NV",
3966     },
3967     {
3968         0x8E64,
3969         "GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV",
3970     },
3971     {
3972         0x8E65,
3973         "GL_MAX_MESH_ATOMIC_COUNTERS_NV",
3974     },
3975     {
3976         0x8E66,
3977         "GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV",
3978     },
3979     {
3980         0x8E67,
3981         "GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV",
3982     },
3983     {
3984         0x8E68,
3985         "GL_MAX_TASK_UNIFORM_BLOCKS_NV",
3986     },
3987     {
3988         0x8E69,
3989         "GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV",
3990     },
3991     {
3992         0x8E6A,
3993         "GL_MAX_TASK_IMAGE_UNIFORMS_NV",
3994     },
3995     {
3996         0x8E6B,
3997         "GL_MAX_TASK_UNIFORM_COMPONENTS_NV",
3998     },
3999     {
4000         0x8E6C,
4001         "GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV",
4002     },
4003     {
4004         0x8E6D,
4005         "GL_MAX_TASK_ATOMIC_COUNTERS_NV",
4006     },
4007     {
4008         0x8E6E,
4009         "GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV",
4010     },
4011     {
4012         0x8E6F,
4013         "GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV",
4014     },
4015     {
4016         0x8E72,
4017         "GL_PATCH_VERTICES_OES",
4018     },
4019     {
4020         0x8E75,
4021         "GL_TESS_CONTROL_OUTPUT_VERTICES_OES",
4022     },
4023     {
4024         0x8E76,
4025         "GL_TESS_GEN_MODE_OES",
4026     },
4027     {
4028         0x8E77,
4029         "GL_TESS_GEN_SPACING_OES",
4030     },
4031     {
4032         0x8E78,
4033         "GL_TESS_GEN_VERTEX_ORDER_OES",
4034     },
4035     {
4036         0x8E79,
4037         "GL_TESS_GEN_POINT_MODE_OES",
4038     },
4039     {
4040         0x8E7A,
4041         "GL_ISOLINES_OES",
4042     },
4043     {
4044         0x8E7B,
4045         "GL_FRACTIONAL_ODD_OES",
4046     },
4047     {
4048         0x8E7C,
4049         "GL_FRACTIONAL_EVEN_OES",
4050     },
4051     {
4052         0x8E7D,
4053         "GL_MAX_PATCH_VERTICES_OES",
4054     },
4055     {
4056         0x8E7E,
4057         "GL_MAX_TESS_GEN_LEVEL_OES",
4058     },
4059     {
4060         0x8E7F,
4061         "GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_OES",
4062     },
4063     {
4064         0x8E80,
4065         "GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_OES",
4066     },
4067     {
4068         0x8E81,
4069         "GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_OES",
4070     },
4071     {
4072         0x8E82,
4073         "GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_OES",
4074     },
4075     {
4076         0x8E83,
4077         "GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_OES",
4078     },
4079     {
4080         0x8E84,
4081         "GL_MAX_TESS_PATCH_COMPONENTS_OES",
4082     },
4083     {
4084         0x8E85,
4085         "GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_OES",
4086     },
4087     {
4088         0x8E86,
4089         "GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_OES",
4090     },
4091     {
4092         0x8E87,
4093         "GL_TESS_EVALUATION_SHADER_OES",
4094     },
4095     {
4096         0x8E88,
4097         "GL_TESS_CONTROL_SHADER_OES",
4098     },
4099     {
4100         0x8E89,
4101         "GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_OES",
4102     },
4103     {
4104         0x8E8A,
4105         "GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_OES",
4106     },
4107     {
4108         0x8E8C,
4109         "GL_COMPRESSED_RGBA_BPTC_UNORM_EXT",
4110     },
4111     {
4112         0x8E8D,
4113         "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT",
4114     },
4115     {
4116         0x8E8E,
4117         "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT",
4118     },
4119     {
4120         0x8E8F,
4121         "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT",
4122     },
4123     {
4124         0x8ED0,
4125         "GL_COVERAGE_COMPONENT_NV",
4126     },
4127     {
4128         0x8ED1,
4129         "GL_COVERAGE_COMPONENT4_NV",
4130     },
4131     {
4132         0x8ED2,
4133         "GL_COVERAGE_ATTACHMENT_NV",
4134     },
4135     {
4136         0x8ED3,
4137         "GL_COVERAGE_BUFFERS_NV",
4138     },
4139     {
4140         0x8ED4,
4141         "GL_COVERAGE_SAMPLES_NV",
4142     },
4143     {
4144         0x8ED5,
4145         "GL_COVERAGE_ALL_FRAGMENTS_NV",
4146     },
4147     {
4148         0x8ED6,
4149         "GL_COVERAGE_EDGE_FRAGMENTS_NV",
4150     },
4151     {
4152         0x8ED7,
4153         "GL_COVERAGE_AUTOMATIC_NV",
4154     },
4155     {
4156         0x8F10,
4157         "GL_INCLUSIVE_EXT",
4158     },
4159     {
4160         0x8F11,
4161         "GL_EXCLUSIVE_EXT",
4162     },
4163     {
4164         0x8F12,
4165         "GL_WINDOW_RECTANGLE_EXT",
4166     },
4167     {
4168         0x8F13,
4169         "GL_WINDOW_RECTANGLE_MODE_EXT",
4170     },
4171     {
4172         0x8F14,
4173         "GL_MAX_WINDOW_RECTANGLES_EXT",
4174     },
4175     {
4176         0x8F15,
4177         "GL_NUM_WINDOW_RECTANGLES_EXT",
4178     },
4179     {
4180         0x8F36,
4181         "GL_COPY_READ_BUFFER_NV",
4182     },
4183     {
4184         0x8F37,
4185         "GL_COPY_WRITE_BUFFER_NV",
4186     },
4187     {
4188         0x8F38,
4189         "GL_MAX_IMAGE_UNITS",
4190     },
4191     {
4192         0x8F39,
4193         "GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES",
4194     },
4195     {
4196         0x8F3A,
4197         "GL_IMAGE_BINDING_NAME",
4198     },
4199     {
4200         0x8F3B,
4201         "GL_IMAGE_BINDING_LEVEL",
4202     },
4203     {
4204         0x8F3C,
4205         "GL_IMAGE_BINDING_LAYERED",
4206     },
4207     {
4208         0x8F3D,
4209         "GL_IMAGE_BINDING_LAYER",
4210     },
4211     {
4212         0x8F3E,
4213         "GL_IMAGE_BINDING_ACCESS",
4214     },
4215     {
4216         0x8F3F,
4217         "GL_DRAW_INDIRECT_BUFFER",
4218     },
4219     {
4220         0x8F43,
4221         "GL_DRAW_INDIRECT_BUFFER_BINDING",
4222     },
4223     {
4224         0x8F4F,
4225         "GL_VERTEX_BINDING_BUFFER",
4226     },
4227     {
4228         0x8F60,
4229         "GL_MALI_SHADER_BINARY_ARM",
4230     },
4231     {
4232         0x8F61,
4233         "GL_MALI_PROGRAM_BINARY_ARM",
4234     },
4235     {
4236         0x8F63,
4237         "GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT",
4238     },
4239     {
4240         0x8F64,
4241         "GL_SHADER_PIXEL_LOCAL_STORAGE_EXT",
4242     },
4243     {
4244         0x8F65,
4245         "GL_FETCH_PER_SAMPLE_ARM",
4246     },
4247     {
4248         0x8F66,
4249         "GL_FRAGMENT_SHADER_FRAMEBUFFER_FETCH_MRT_ARM",
4250     },
4251     {
4252         0x8F67,
4253         "GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_SIZE_EXT",
4254     },
4255     {
4256         0x8F69,
4257         "GL_TEXTURE_ASTC_DECODE_PRECISION_EXT",
4258     },
4259     {
4260         0x8F94,
4261         "GL_R8_SNORM",
4262     },
4263     {
4264         0x8F95,
4265         "GL_RG8_SNORM",
4266     },
4267     {
4268         0x8F96,
4269         "GL_RGB8_SNORM",
4270     },
4271     {
4272         0x8F97,
4273         "GL_RGBA8_SNORM",
4274     },
4275     {
4276         0x8F98,
4277         "GL_R16_SNORM_EXT",
4278     },
4279     {
4280         0x8F99,
4281         "GL_RG16_SNORM_EXT",
4282     },
4283     {
4284         0x8F9A,
4285         "GL_RGB16_SNORM_EXT",
4286     },
4287     {
4288         0x8F9B,
4289         "GL_RGBA16_SNORM_EXT",
4290     },
4291     {
4292         0x8F9C,
4293         "GL_SIGNED_NORMALIZED",
4294     },
4295     {
4296         0x8FA0,
4297         "GL_PERFMON_GLOBAL_MODE_QCOM",
4298     },
4299     {
4300         0x8FA1,
4301         "GL_MAX_SHADER_SUBSAMPLED_IMAGE_UNITS_QCOM",
4302     },
4303     {
4304         0x8FB0,
4305         "GL_BINNING_CONTROL_HINT_QCOM",
4306     },
4307     {
4308         0x8FB1,
4309         "GL_CPU_OPTIMIZED_QCOM",
4310     },
4311     {
4312         0x8FB2,
4313         "GL_GPU_OPTIMIZED_QCOM",
4314     },
4315     {
4316         0x8FB3,
4317         "GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM",
4318     },
4319     {
4320         0x8FBB,
4321         "GL_GPU_DISJOINT_EXT",
4322     },
4323     {
4324         0x8FBD,
4325         "GL_SR8_EXT",
4326     },
4327     {
4328         0x8FBE,
4329         "GL_SRG8_EXT",
4330     },
4331     {
4332         0x8FBF,
4333         "GL_TEXTURE_FORMAT_SRGB_OVERRIDE_EXT",
4334     },
4335     {
4336         0x8FC4,
4337         "GL_SHADER_BINARY_VIV",
4338     },
4339     {
4340         0x8FE0,
4341         "GL_INT8_NV",
4342     },
4343     {
4344         0x8FE1,
4345         "GL_INT8_VEC2_NV",
4346     },
4347     {
4348         0x8FE2,
4349         "GL_INT8_VEC3_NV",
4350     },
4351     {
4352         0x8FE3,
4353         "GL_INT8_VEC4_NV",
4354     },
4355     {
4356         0x8FE4,
4357         "GL_INT16_NV",
4358     },
4359     {
4360         0x8FE5,
4361         "GL_INT16_VEC2_NV",
4362     },
4363     {
4364         0x8FE6,
4365         "GL_INT16_VEC3_NV",
4366     },
4367     {
4368         0x8FE7,
4369         "GL_INT16_VEC4_NV",
4370     },
4371     {
4372         0x8FE9,
4373         "GL_INT64_VEC2_NV",
4374     },
4375     {
4376         0x8FEA,
4377         "GL_INT64_VEC3_NV",
4378     },
4379     {
4380         0x8FEB,
4381         "GL_INT64_VEC4_NV",
4382     },
4383     {
4384         0x8FEC,
4385         "GL_UNSIGNED_INT8_NV",
4386     },
4387     {
4388         0x8FED,
4389         "GL_UNSIGNED_INT8_VEC2_NV",
4390     },
4391     {
4392         0x8FEE,
4393         "GL_UNSIGNED_INT8_VEC3_NV",
4394     },
4395     {
4396         0x8FEF,
4397         "GL_UNSIGNED_INT8_VEC4_NV",
4398     },
4399     {
4400         0x8FF0,
4401         "GL_UNSIGNED_INT16_NV",
4402     },
4403     {
4404         0x8FF1,
4405         "GL_UNSIGNED_INT16_VEC2_NV",
4406     },
4407     {
4408         0x8FF2,
4409         "GL_UNSIGNED_INT16_VEC3_NV",
4410     },
4411     {
4412         0x8FF3,
4413         "GL_UNSIGNED_INT16_VEC4_NV",
4414     },
4415     {
4416         0x8FF5,
4417         "GL_UNSIGNED_INT64_VEC2_NV",
4418     },
4419     {
4420         0x8FF6,
4421         "GL_UNSIGNED_INT64_VEC3_NV",
4422     },
4423     {
4424         0x8FF7,
4425         "GL_UNSIGNED_INT64_VEC4_NV",
4426     },
4427     {
4428         0x8FF8,
4429         "GL_FLOAT16_NV",
4430     },
4431     {
4432         0x8FF9,
4433         "GL_FLOAT16_VEC2_NV",
4434     },
4435     {
4436         0x8FFA,
4437         "GL_FLOAT16_VEC3_NV",
4438     },
4439     {
4440         0x8FFB,
4441         "GL_FLOAT16_VEC4_NV",
4442     },
4443     {
4444         0x9009,
4445         "GL_TEXTURE_CUBE_MAP_ARRAY_OES",
4446     },
4447     {
4448         0x900A,
4449         "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_OES",
4450     },
4451     {
4452         0x900C,
4453         "GL_SAMPLER_CUBE_MAP_ARRAY_OES",
4454     },
4455     {
4456         0x900D,
4457         "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_OES",
4458     },
4459     {
4460         0x900E,
4461         "GL_INT_SAMPLER_CUBE_MAP_ARRAY_OES",
4462     },
4463     {
4464         0x900F,
4465         "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_OES",
4466     },
4467     {
4468         0x901C,
4469         "GL_FACTOR_MIN_AMD",
4470     },
4471     {
4472         0x901D,
4473         "GL_FACTOR_MAX_AMD",
4474     },
4475     {
4476         0x904D,
4477         "GL_IMAGE_2D",
4478     },
4479     {
4480         0x904E,
4481         "GL_IMAGE_3D",
4482     },
4483     {
4484         0x9050,
4485         "GL_IMAGE_CUBE",
4486     },
4487     {
4488         0x9051,
4489         "GL_IMAGE_BUFFER_OES",
4490     },
4491     {
4492         0x9053,
4493         "GL_IMAGE_2D_ARRAY",
4494     },
4495     {
4496         0x9054,
4497         "GL_IMAGE_CUBE_MAP_ARRAY_OES",
4498     },
4499     {
4500         0x9058,
4501         "GL_INT_IMAGE_2D",
4502     },
4503     {
4504         0x9059,
4505         "GL_INT_IMAGE_3D",
4506     },
4507     {
4508         0x905B,
4509         "GL_INT_IMAGE_CUBE",
4510     },
4511     {
4512         0x905C,
4513         "GL_INT_IMAGE_BUFFER_OES",
4514     },
4515     {
4516         0x905E,
4517         "GL_INT_IMAGE_2D_ARRAY",
4518     },
4519     {
4520         0x905F,
4521         "GL_INT_IMAGE_CUBE_MAP_ARRAY_OES",
4522     },
4523     {
4524         0x9063,
4525         "GL_UNSIGNED_INT_IMAGE_2D",
4526     },
4527     {
4528         0x9064,
4529         "GL_UNSIGNED_INT_IMAGE_3D",
4530     },
4531     {
4532         0x9066,
4533         "GL_UNSIGNED_INT_IMAGE_CUBE",
4534     },
4535     {
4536         0x9067,
4537         "GL_UNSIGNED_INT_IMAGE_BUFFER_OES",
4538     },
4539     {
4540         0x9069,
4541         "GL_UNSIGNED_INT_IMAGE_2D_ARRAY",
4542     },
4543     {
4544         0x906A,
4545         "GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_OES",
4546     },
4547     {
4548         0x906E,
4549         "GL_IMAGE_BINDING_FORMAT",
4550     },
4551     {
4552         0x906F,
4553         "GL_RGB10_A2UI",
4554     },
4555     {
4556         0x9070,
4557         "GL_PATH_FORMAT_SVG_NV",
4558     },
4559     {
4560         0x9071,
4561         "GL_PATH_FORMAT_PS_NV",
4562     },
4563     {
4564         0x9072,
4565         "GL_STANDARD_FONT_NAME_NV",
4566     },
4567     {
4568         0x9073,
4569         "GL_SYSTEM_FONT_NAME_NV",
4570     },
4571     {
4572         0x9074,
4573         "GL_FILE_NAME_NV",
4574     },
4575     {
4576         0x9075,
4577         "GL_PATH_STROKE_WIDTH_NV",
4578     },
4579     {
4580         0x9076,
4581         "GL_PATH_END_CAPS_NV",
4582     },
4583     {
4584         0x9077,
4585         "GL_PATH_INITIAL_END_CAP_NV",
4586     },
4587     {
4588         0x9078,
4589         "GL_PATH_TERMINAL_END_CAP_NV",
4590     },
4591     {
4592         0x9079,
4593         "GL_PATH_JOIN_STYLE_NV",
4594     },
4595     {
4596         0x907A,
4597         "GL_PATH_MITER_LIMIT_NV",
4598     },
4599     {
4600         0x907B,
4601         "GL_PATH_DASH_CAPS_NV",
4602     },
4603     {
4604         0x907C,
4605         "GL_PATH_INITIAL_DASH_CAP_NV",
4606     },
4607     {
4608         0x907D,
4609         "GL_PATH_TERMINAL_DASH_CAP_NV",
4610     },
4611     {
4612         0x907E,
4613         "GL_PATH_DASH_OFFSET_NV",
4614     },
4615     {
4616         0x907F,
4617         "GL_PATH_CLIENT_LENGTH_NV",
4618     },
4619     {
4620         0x9080,
4621         "GL_PATH_FILL_MODE_NV",
4622     },
4623     {
4624         0x9081,
4625         "GL_PATH_FILL_MASK_NV",
4626     },
4627     {
4628         0x9082,
4629         "GL_PATH_FILL_COVER_MODE_NV",
4630     },
4631     {
4632         0x9083,
4633         "GL_PATH_STROKE_COVER_MODE_NV",
4634     },
4635     {
4636         0x9084,
4637         "GL_PATH_STROKE_MASK_NV",
4638     },
4639     {
4640         0x9088,
4641         "GL_COUNT_UP_NV",
4642     },
4643     {
4644         0x9089,
4645         "GL_COUNT_DOWN_NV",
4646     },
4647     {
4648         0x908A,
4649         "GL_PATH_OBJECT_BOUNDING_BOX_NV",
4650     },
4651     {
4652         0x908B,
4653         "GL_CONVEX_HULL_NV",
4654     },
4655     {
4656         0x908D,
4657         "GL_BOUNDING_BOX_NV",
4658     },
4659     {
4660         0x908E,
4661         "GL_TRANSLATE_X_NV",
4662     },
4663     {
4664         0x908F,
4665         "GL_TRANSLATE_Y_NV",
4666     },
4667     {
4668         0x9090,
4669         "GL_TRANSLATE_2D_NV",
4670     },
4671     {
4672         0x9091,
4673         "GL_TRANSLATE_3D_NV",
4674     },
4675     {
4676         0x9092,
4677         "GL_AFFINE_2D_NV",
4678     },
4679     {
4680         0x9094,
4681         "GL_AFFINE_3D_NV",
4682     },
4683     {
4684         0x9096,
4685         "GL_TRANSPOSE_AFFINE_2D_NV",
4686     },
4687     {
4688         0x9098,
4689         "GL_TRANSPOSE_AFFINE_3D_NV",
4690     },
4691     {
4692         0x909A,
4693         "GL_UTF8_NV",
4694     },
4695     {
4696         0x909B,
4697         "GL_UTF16_NV",
4698     },
4699     {
4700         0x909C,
4701         "GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV",
4702     },
4703     {
4704         0x909D,
4705         "GL_PATH_COMMAND_COUNT_NV",
4706     },
4707     {
4708         0x909E,
4709         "GL_PATH_COORD_COUNT_NV",
4710     },
4711     {
4712         0x909F,
4713         "GL_PATH_DASH_ARRAY_COUNT_NV",
4714     },
4715     {
4716         0x90A0,
4717         "GL_PATH_COMPUTED_LENGTH_NV",
4718     },
4719     {
4720         0x90A1,
4721         "GL_PATH_FILL_BOUNDING_BOX_NV",
4722     },
4723     {
4724         0x90A2,
4725         "GL_PATH_STROKE_BOUNDING_BOX_NV",
4726     },
4727     {
4728         0x90A3,
4729         "GL_SQUARE_NV",
4730     },
4731     {
4732         0x90A4,
4733         "GL_ROUND_NV",
4734     },
4735     {
4736         0x90A5,
4737         "GL_TRIANGULAR_NV",
4738     },
4739     {
4740         0x90A6,
4741         "GL_BEVEL_NV",
4742     },
4743     {
4744         0x90A7,
4745         "GL_MITER_REVERT_NV",
4746     },
4747     {
4748         0x90A8,
4749         "GL_MITER_TRUNCATE_NV",
4750     },
4751     {
4752         0x90A9,
4753         "GL_SKIP_MISSING_GLYPH_NV",
4754     },
4755     {
4756         0x90AA,
4757         "GL_USE_MISSING_GLYPH_NV",
4758     },
4759     {
4760         0x90AB,
4761         "GL_PATH_ERROR_POSITION_NV",
4762     },
4763     {
4764         0x90AD,
4765         "GL_ACCUM_ADJACENT_PAIRS_NV",
4766     },
4767     {
4768         0x90AE,
4769         "GL_ADJACENT_PAIRS_NV",
4770     },
4771     {
4772         0x90AF,
4773         "GL_FIRST_TO_REST_NV",
4774     },
4775     {
4776         0x90B0,
4777         "GL_PATH_GEN_MODE_NV",
4778     },
4779     {
4780         0x90B1,
4781         "GL_PATH_GEN_COEFF_NV",
4782     },
4783     {
4784         0x90B3,
4785         "GL_PATH_GEN_COMPONENTS_NV",
4786     },
4787     {
4788         0x90B4,
4789         "GL_PATH_DASH_OFFSET_RESET_NV",
4790     },
4791     {
4792         0x90B5,
4793         "GL_MOVE_TO_RESETS_NV",
4794     },
4795     {
4796         0x90B6,
4797         "GL_MOVE_TO_CONTINUES_NV",
4798     },
4799     {
4800         0x90B7,
4801         "GL_PATH_STENCIL_FUNC_NV",
4802     },
4803     {
4804         0x90B8,
4805         "GL_PATH_STENCIL_REF_NV",
4806     },
4807     {
4808         0x90B9,
4809         "GL_PATH_STENCIL_VALUE_MASK_NV",
4810     },
4811     {
4812         0x90BD,
4813         "GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV",
4814     },
4815     {
4816         0x90BE,
4817         "GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV",
4818     },
4819     {
4820         0x90BF,
4821         "GL_PATH_COVER_DEPTH_FUNC_NV",
4822     },
4823     {
4824         0x90C7,
4825         "GL_IMAGE_FORMAT_COMPATIBILITY_TYPE",
4826     },
4827     {
4828         0x90C8,
4829         "GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE",
4830     },
4831     {
4832         0x90C9,
4833         "GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS",
4834     },
4835     {
4836         0x90CA,
4837         "GL_MAX_VERTEX_IMAGE_UNIFORMS",
4838     },
4839     {
4840         0x90CB,
4841         "GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_OES",
4842     },
4843     {
4844         0x90CC,
4845         "GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_OES",
4846     },
4847     {
4848         0x90CD,
4849         "GL_MAX_GEOMETRY_IMAGE_UNIFORMS_OES",
4850     },
4851     {
4852         0x90CE,
4853         "GL_MAX_FRAGMENT_IMAGE_UNIFORMS",
4854     },
4855     {
4856         0x90CF,
4857         "GL_MAX_COMBINED_IMAGE_UNIFORMS",
4858     },
4859     {
4860         0x90D2,
4861         "GL_SHADER_STORAGE_BUFFER",
4862     },
4863     {
4864         0x90D3,
4865         "GL_SHADER_STORAGE_BUFFER_BINDING",
4866     },
4867     {
4868         0x90D4,
4869         "GL_SHADER_STORAGE_BUFFER_START",
4870     },
4871     {
4872         0x90D5,
4873         "GL_SHADER_STORAGE_BUFFER_SIZE",
4874     },
4875     {
4876         0x90D6,
4877         "GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS",
4878     },
4879     {
4880         0x90D7,
4881         "GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES",
4882     },
4883     {
4884         0x90D8,
4885         "GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_OES",
4886     },
4887     {
4888         0x90D9,
4889         "GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_OES",
4890     },
4891     {
4892         0x90DA,
4893         "GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS",
4894     },
4895     {
4896         0x90DB,
4897         "GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS",
4898     },
4899     {
4900         0x90DC,
4901         "GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS",
4902     },
4903     {
4904         0x90DD,
4905         "GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS",
4906     },
4907     {
4908         0x90DE,
4909         "GL_MAX_SHADER_STORAGE_BLOCK_SIZE",
4910     },
4911     {
4912         0x90DF,
4913         "GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT",
4914     },
4915     {
4916         0x90EA,
4917         "GL_DEPTH_STENCIL_TEXTURE_MODE",
4918     },
4919     {
4920         0x90EB,
4921         "GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS",
4922     },
4923     {
4924         0x90EE,
4925         "GL_DISPATCH_INDIRECT_BUFFER",
4926     },
4927     {
4928         0x90EF,
4929         "GL_DISPATCH_INDIRECT_BUFFER_BINDING",
4930     },
4931     {
4932         0x90F0,
4933         "GL_COLOR_ATTACHMENT_EXT",
4934     },
4935     {
4936         0x90F1,
4937         "GL_MULTIVIEW_EXT",
4938     },
4939     {
4940         0x90F2,
4941         "GL_MAX_MULTIVIEW_BUFFERS_EXT",
4942     },
4943     {
4944         0x90F3,
4945         "GL_CONTEXT_ROBUST_ACCESS_KHR",
4946     },
4947     {
4948         0x9100,
4949         "GL_TEXTURE_2D_MULTISAMPLE",
4950     },
4951     {
4952         0x9102,
4953         "GL_TEXTURE_2D_MULTISAMPLE_ARRAY_OES",
4954     },
4955     {
4956         0x9104,
4957         "GL_TEXTURE_BINDING_2D_MULTISAMPLE",
4958     },
4959     {
4960         0x9105,
4961         "GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY_OES",
4962     },
4963     {
4964         0x9106,
4965         "GL_TEXTURE_SAMPLES",
4966     },
4967     {
4968         0x9107,
4969         "GL_TEXTURE_FIXED_SAMPLE_LOCATIONS",
4970     },
4971     {
4972         0x9108,
4973         "GL_SAMPLER_2D_MULTISAMPLE",
4974     },
4975     {
4976         0x9109,
4977         "GL_INT_SAMPLER_2D_MULTISAMPLE",
4978     },
4979     {
4980         0x910A,
4981         "GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE",
4982     },
4983     {
4984         0x910B,
4985         "GL_SAMPLER_2D_MULTISAMPLE_ARRAY_OES",
4986     },
4987     {
4988         0x910C,
4989         "GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES",
4990     },
4991     {
4992         0x910D,
4993         "GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES",
4994     },
4995     {
4996         0x910E,
4997         "GL_MAX_COLOR_TEXTURE_SAMPLES",
4998     },
4999     {
5000         0x910F,
5001         "GL_MAX_DEPTH_TEXTURE_SAMPLES",
5002     },
5003     {
5004         0x9110,
5005         "GL_MAX_INTEGER_SAMPLES",
5006     },
5007     {
5008         0x9111,
5009         "GL_MAX_SERVER_WAIT_TIMEOUT_APPLE",
5010     },
5011     {
5012         0x9112,
5013         "GL_OBJECT_TYPE_APPLE",
5014     },
5015     {
5016         0x9113,
5017         "GL_SYNC_CONDITION_APPLE",
5018     },
5019     {
5020         0x9114,
5021         "GL_SYNC_STATUS_APPLE",
5022     },
5023     {
5024         0x9115,
5025         "GL_SYNC_FLAGS_APPLE",
5026     },
5027     {
5028         0x9116,
5029         "GL_SYNC_FENCE_APPLE",
5030     },
5031     {
5032         0x9117,
5033         "GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE",
5034     },
5035     {
5036         0x9118,
5037         "GL_UNSIGNALED_APPLE",
5038     },
5039     {
5040         0x9119,
5041         "GL_SIGNALED_APPLE",
5042     },
5043     {
5044         0x911A,
5045         "GL_ALREADY_SIGNALED_APPLE",
5046     },
5047     {
5048         0x911B,
5049         "GL_TIMEOUT_EXPIRED_APPLE",
5050     },
5051     {
5052         0x911C,
5053         "GL_CONDITION_SATISFIED_APPLE",
5054     },
5055     {
5056         0x911D,
5057         "GL_WAIT_FAILED_APPLE",
5058     },
5059     {
5060         0x911F,
5061         "GL_BUFFER_ACCESS_FLAGS",
5062     },
5063     {
5064         0x9120,
5065         "GL_BUFFER_MAP_LENGTH",
5066     },
5067     {
5068         0x9121,
5069         "GL_BUFFER_MAP_OFFSET",
5070     },
5071     {
5072         0x9122,
5073         "GL_MAX_VERTEX_OUTPUT_COMPONENTS",
5074     },
5075     {
5076         0x9123,
5077         "GL_MAX_GEOMETRY_INPUT_COMPONENTS_OES",
5078     },
5079     {
5080         0x9124,
5081         "GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_OES",
5082     },
5083     {
5084         0x9125,
5085         "GL_MAX_FRAGMENT_INPUT_COMPONENTS",
5086     },
5087     {
5088         0x912F,
5089         "GL_TEXTURE_IMMUTABLE_FORMAT_EXT",
5090     },
5091     {
5092         0x9130,
5093         "GL_SGX_PROGRAM_BINARY_IMG",
5094     },
5095     {
5096         0x9133,
5097         "GL_RENDERBUFFER_SAMPLES_IMG",
5098     },
5099     {
5100         0x9134,
5101         "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG",
5102     },
5103     {
5104         0x9135,
5105         "GL_MAX_SAMPLES_IMG",
5106     },
5107     {
5108         0x9136,
5109         "GL_TEXTURE_SAMPLES_IMG",
5110     },
5111     {
5112         0x9137,
5113         "GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG",
5114     },
5115     {
5116         0x9138,
5117         "GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG",
5118     },
5119     {
5120         0x9139,
5121         "GL_CUBIC_IMG",
5122     },
5123     {
5124         0x913A,
5125         "GL_CUBIC_MIPMAP_NEAREST_IMG",
5126     },
5127     {
5128         0x913B,
5129         "GL_CUBIC_MIPMAP_LINEAR_IMG",
5130     },
5131     {
5132         0x913C,
5133         "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_AND_DOWNSAMPLE_IMG",
5134     },
5135     {
5136         0x913D,
5137         "GL_NUM_DOWNSAMPLE_SCALES_IMG",
5138     },
5139     {
5140         0x913E,
5141         "GL_DOWNSAMPLE_SCALES_IMG",
5142     },
5143     {
5144         0x913F,
5145         "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SCALE_IMG",
5146     },
5147     {
5148         0x9143,
5149         "GL_MAX_DEBUG_MESSAGE_LENGTH_KHR",
5150     },
5151     {
5152         0x9144,
5153         "GL_MAX_DEBUG_LOGGED_MESSAGES_KHR",
5154     },
5155     {
5156         0x9145,
5157         "GL_DEBUG_LOGGED_MESSAGES_KHR",
5158     },
5159     {
5160         0x9146,
5161         "GL_DEBUG_SEVERITY_HIGH_KHR",
5162     },
5163     {
5164         0x9147,
5165         "GL_DEBUG_SEVERITY_MEDIUM_KHR",
5166     },
5167     {
5168         0x9148,
5169         "GL_DEBUG_SEVERITY_LOW_KHR",
5170     },
5171     {
5172         0x9151,
5173         "GL_BUFFER_OBJECT_EXT",
5174     },
5175     {
5176         0x9153,
5177         "GL_QUERY_OBJECT_EXT",
5178     },
5179     {
5180         0x9154,
5181         "GL_VERTEX_ARRAY_OBJECT_EXT",
5182     },
5183     {
5184         0x9195,
5185         "GL_VIRTUAL_PAGE_SIZE_X_EXT",
5186     },
5187     {
5188         0x9196,
5189         "GL_VIRTUAL_PAGE_SIZE_Y_EXT",
5190     },
5191     {
5192         0x9197,
5193         "GL_VIRTUAL_PAGE_SIZE_Z_EXT",
5194     },
5195     {
5196         0x9198,
5197         "GL_MAX_SPARSE_TEXTURE_SIZE_EXT",
5198     },
5199     {
5200         0x9199,
5201         "GL_MAX_SPARSE_3D_TEXTURE_SIZE_EXT",
5202     },
5203     {
5204         0x919A,
5205         "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_EXT",
5206     },
5207     {
5208         0x919D,
5209         "GL_TEXTURE_BUFFER_OFFSET_OES",
5210     },
5211     {
5212         0x919E,
5213         "GL_TEXTURE_BUFFER_SIZE_OES",
5214     },
5215     {
5216         0x919F,
5217         "GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_OES",
5218     },
5219     {
5220         0x91A6,
5221         "GL_TEXTURE_SPARSE_EXT",
5222     },
5223     {
5224         0x91A7,
5225         "GL_VIRTUAL_PAGE_SIZE_INDEX_EXT",
5226     },
5227     {
5228         0x91A8,
5229         "GL_NUM_VIRTUAL_PAGE_SIZES_EXT",
5230     },
5231     {
5232         0x91A9,
5233         "GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_EXT",
5234     },
5235     {
5236         0x91AA,
5237         "GL_NUM_SPARSE_LEVELS_EXT",
5238     },
5239     {
5240         0x91B0,
5241         "GL_MAX_SHADER_COMPILER_THREADS_KHR",
5242     },
5243     {
5244         0x91B1,
5245         "GL_COMPLETION_STATUS_KHR",
5246     },
5247     {
5248         0x91B2,
5249         "GL_RENDERBUFFER_STORAGE_SAMPLES_AMD",
5250     },
5251     {
5252         0x91B3,
5253         "GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD",
5254     },
5255     {
5256         0x91B4,
5257         "GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD",
5258     },
5259     {
5260         0x91B5,
5261         "GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD",
5262     },
5263     {
5264         0x91B6,
5265         "GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD",
5266     },
5267     {
5268         0x91B7,
5269         "GL_SUPPORTED_MULTISAMPLE_MODES_AMD",
5270     },
5271     {
5272         0x91B9,
5273         "GL_COMPUTE_SHADER",
5274     },
5275     {
5276         0x91BB,
5277         "GL_MAX_COMPUTE_UNIFORM_BLOCKS",
5278     },
5279     {
5280         0x91BC,
5281         "GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS",
5282     },
5283     {
5284         0x91BD,
5285         "GL_MAX_COMPUTE_IMAGE_UNIFORMS",
5286     },
5287     {
5288         0x91BE,
5289         "GL_MAX_COMPUTE_WORK_GROUP_COUNT",
5290     },
5291     {
5292         0x91BF,
5293         "GL_MAX_COMPUTE_WORK_GROUP_SIZE",
5294     },
5295     {
5296         0x9243,
5297         "GL_UNPACK_COLORSPACE_CONVERSION_CHROMIUM",
5298     },
5299     {
5300         0x9244,
5301         "GL_BIND_GENERATES_RESOURCE_CHROMIUM",
5302     },
5303     {
5304         0x9245,
5305         "GL_OVERLAY_TRANSFORM_NONE_CHROMIUM",
5306     },
5307     {
5308         0x9246,
5309         "GL_OVERLAY_TRANSFORM_FLIP_HORIZONTAL_CHROMIUM",
5310     },
5311     {
5312         0x9247,
5313         "GL_OVERLAY_TRANSFORM_FLIP_VERTICAL_CHROMIUM",
5314     },
5315     {
5316         0x9248,
5317         "GL_OVERLAY_TRANSFORM_ROTATE_90_CHROMIUM",
5318     },
5319     {
5320         0x9249,
5321         "GL_OVERLAY_TRANSFORM_ROTATE_180_CHROMIUM",
5322     },
5323     {
5324         0x924A,
5325         "GL_OVERLAY_TRANSFORM_ROTATE_270_CHROMIUM",
5326     },
5327     {
5328         0x9250,
5329         "GL_SHADER_BINARY_DMP",
5330     },
5331     {
5332         0x9251,
5333         "GL_SMAPHS30_PROGRAM_BINARY_DMP",
5334     },
5335     {
5336         0x9252,
5337         "GL_SMAPHS_PROGRAM_BINARY_DMP",
5338     },
5339     {
5340         0x9253,
5341         "GL_DMP_PROGRAM_BINARY_DMP",
5342     },
5343     {
5344         0x9260,
5345         "GL_GCCSO_SHADER_BINARY_FJ",
5346     },
5347     {
5348         0x9270,
5349         "GL_COMPRESSED_R11_EAC",
5350     },
5351     {
5352         0x9271,
5353         "GL_COMPRESSED_SIGNED_R11_EAC",
5354     },
5355     {
5356         0x9272,
5357         "GL_COMPRESSED_RG11_EAC",
5358     },
5359     {
5360         0x9273,
5361         "GL_COMPRESSED_SIGNED_RG11_EAC",
5362     },
5363     {
5364         0x9274,
5365         "GL_COMPRESSED_RGB8_ETC2",
5366     },
5367     {
5368         0x9275,
5369         "GL_COMPRESSED_SRGB8_ETC2",
5370     },
5371     {
5372         0x9276,
5373         "GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2",
5374     },
5375     {
5376         0x9277,
5377         "GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2",
5378     },
5379     {
5380         0x9278,
5381         "GL_COMPRESSED_RGBA8_ETC2_EAC",
5382     },
5383     {
5384         0x9279,
5385         "GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC",
5386     },
5387     {
5388         0x9280,
5389         "GL_BLEND_PREMULTIPLIED_SRC_NV",
5390     },
5391     {
5392         0x9281,
5393         "GL_BLEND_OVERLAP_NV",
5394     },
5395     {
5396         0x9282,
5397         "GL_UNCORRELATED_NV",
5398     },
5399     {
5400         0x9283,
5401         "GL_DISJOINT_NV",
5402     },
5403     {
5404         0x9284,
5405         "GL_CONJOINT_NV",
5406     },
5407     {
5408         0x9285,
5409         "GL_BLEND_ADVANCED_COHERENT_KHR",
5410     },
5411     {
5412         0x9286,
5413         "GL_SRC_NV",
5414     },
5415     {
5416         0x9287,
5417         "GL_DST_NV",
5418     },
5419     {
5420         0x9288,
5421         "GL_SRC_OVER_NV",
5422     },
5423     {
5424         0x9289,
5425         "GL_DST_OVER_NV",
5426     },
5427     {
5428         0x928A,
5429         "GL_SRC_IN_NV",
5430     },
5431     {
5432         0x928B,
5433         "GL_DST_IN_NV",
5434     },
5435     {
5436         0x928C,
5437         "GL_SRC_OUT_NV",
5438     },
5439     {
5440         0x928D,
5441         "GL_DST_OUT_NV",
5442     },
5443     {
5444         0x928E,
5445         "GL_SRC_ATOP_NV",
5446     },
5447     {
5448         0x928F,
5449         "GL_DST_ATOP_NV",
5450     },
5451     {
5452         0x9291,
5453         "GL_PLUS_NV",
5454     },
5455     {
5456         0x9292,
5457         "GL_PLUS_DARKER_NV",
5458     },
5459     {
5460         0x9294,
5461         "GL_MULTIPLY_KHR",
5462     },
5463     {
5464         0x9295,
5465         "GL_SCREEN_KHR",
5466     },
5467     {
5468         0x9296,
5469         "GL_OVERLAY_KHR",
5470     },
5471     {
5472         0x9297,
5473         "GL_DARKEN_KHR",
5474     },
5475     {
5476         0x9298,
5477         "GL_LIGHTEN_KHR",
5478     },
5479     {
5480         0x9299,
5481         "GL_COLORDODGE_KHR",
5482     },
5483     {
5484         0x929A,
5485         "GL_COLORBURN_KHR",
5486     },
5487     {
5488         0x929B,
5489         "GL_HARDLIGHT_KHR",
5490     },
5491     {
5492         0x929C,
5493         "GL_SOFTLIGHT_KHR",
5494     },
5495     {
5496         0x929E,
5497         "GL_DIFFERENCE_KHR",
5498     },
5499     {
5500         0x929F,
5501         "GL_MINUS_NV",
5502     },
5503     {
5504         0x92A0,
5505         "GL_EXCLUSION_KHR",
5506     },
5507     {
5508         0x92A1,
5509         "GL_CONTRAST_NV",
5510     },
5511     {
5512         0x92A3,
5513         "GL_INVERT_RGB_NV",
5514     },
5515     {
5516         0x92A4,
5517         "GL_LINEARDODGE_NV",
5518     },
5519     {
5520         0x92A5,
5521         "GL_LINEARBURN_NV",
5522     },
5523     {
5524         0x92A6,
5525         "GL_VIVIDLIGHT_NV",
5526     },
5527     {
5528         0x92A7,
5529         "GL_LINEARLIGHT_NV",
5530     },
5531     {
5532         0x92A8,
5533         "GL_PINLIGHT_NV",
5534     },
5535     {
5536         0x92A9,
5537         "GL_HARDMIX_NV",
5538     },
5539     {
5540         0x92AD,
5541         "GL_HSL_HUE_KHR",
5542     },
5543     {
5544         0x92AE,
5545         "GL_HSL_SATURATION_KHR",
5546     },
5547     {
5548         0x92AF,
5549         "GL_HSL_COLOR_KHR",
5550     },
5551     {
5552         0x92B0,
5553         "GL_HSL_LUMINOSITY_KHR",
5554     },
5555     {
5556         0x92B1,
5557         "GL_PLUS_CLAMPED_NV",
5558     },
5559     {
5560         0x92B2,
5561         "GL_PLUS_CLAMPED_ALPHA_NV",
5562     },
5563     {
5564         0x92B3,
5565         "GL_MINUS_CLAMPED_NV",
5566     },
5567     {
5568         0x92B4,
5569         "GL_INVERT_OVG_NV",
5570     },
5571     {
5572         0x92BE,
5573         "GL_PRIMITIVE_BOUNDING_BOX_OES",
5574     },
5575     {
5576         0x92C0,
5577         "GL_ATOMIC_COUNTER_BUFFER",
5578     },
5579     {
5580         0x92C1,
5581         "GL_ATOMIC_COUNTER_BUFFER_BINDING",
5582     },
5583     {
5584         0x92C2,
5585         "GL_ATOMIC_COUNTER_BUFFER_START",
5586     },
5587     {
5588         0x92C3,
5589         "GL_ATOMIC_COUNTER_BUFFER_SIZE",
5590     },
5591     {
5592         0x92CC,
5593         "GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS",
5594     },
5595     {
5596         0x92CD,
5597         "GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_OES",
5598     },
5599     {
5600         0x92CE,
5601         "GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_OES",
5602     },
5603     {
5604         0x92CF,
5605         "GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES",
5606     },
5607     {
5608         0x92D0,
5609         "GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS",
5610     },
5611     {
5612         0x92D1,
5613         "GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS",
5614     },
5615     {
5616         0x92D2,
5617         "GL_MAX_VERTEX_ATOMIC_COUNTERS",
5618     },
5619     {
5620         0x92D3,
5621         "GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_OES",
5622     },
5623     {
5624         0x92D4,
5625         "GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_OES",
5626     },
5627     {
5628         0x92D5,
5629         "GL_MAX_GEOMETRY_ATOMIC_COUNTERS_OES",
5630     },
5631     {
5632         0x92D6,
5633         "GL_MAX_FRAGMENT_ATOMIC_COUNTERS",
5634     },
5635     {
5636         0x92D7,
5637         "GL_MAX_COMBINED_ATOMIC_COUNTERS",
5638     },
5639     {
5640         0x92D8,
5641         "GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE",
5642     },
5643     {
5644         0x92D9,
5645         "GL_ACTIVE_ATOMIC_COUNTER_BUFFERS",
5646     },
5647     {
5648         0x92DB,
5649         "GL_UNSIGNED_INT_ATOMIC_COUNTER",
5650     },
5651     {
5652         0x92DC,
5653         "GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS",
5654     },
5655     {
5656         0x92DD,
5657         "GL_FRAGMENT_COVERAGE_TO_COLOR_NV",
5658     },
5659     {
5660         0x92DE,
5661         "GL_FRAGMENT_COVERAGE_COLOR_NV",
5662     },
5663     {
5664         0x92DF,
5665         "GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV",
5666     },
5667     {
5668         0x92E0,
5669         "GL_DEBUG_OUTPUT_KHR",
5670     },
5671     {
5672         0x92E1,
5673         "GL_UNIFORM",
5674     },
5675     {
5676         0x92E2,
5677         "GL_UNIFORM_BLOCK",
5678     },
5679     {
5680         0x92E3,
5681         "GL_PROGRAM_INPUT",
5682     },
5683     {
5684         0x92E4,
5685         "GL_PROGRAM_OUTPUT",
5686     },
5687     {
5688         0x92E5,
5689         "GL_BUFFER_VARIABLE",
5690     },
5691     {
5692         0x92E6,
5693         "GL_SHADER_STORAGE_BLOCK",
5694     },
5695     {
5696         0x92E7,
5697         "GL_IS_PER_PATCH_OES",
5698     },
5699     {
5700         0x92F4,
5701         "GL_TRANSFORM_FEEDBACK_VARYING",
5702     },
5703     {
5704         0x92F5,
5705         "GL_ACTIVE_RESOURCES",
5706     },
5707     {
5708         0x92F6,
5709         "GL_MAX_NAME_LENGTH",
5710     },
5711     {
5712         0x92F7,
5713         "GL_MAX_NUM_ACTIVE_VARIABLES",
5714     },
5715     {
5716         0x92F9,
5717         "GL_NAME_LENGTH",
5718     },
5719     {
5720         0x92FA,
5721         "GL_TYPE",
5722     },
5723     {
5724         0x92FB,
5725         "GL_ARRAY_SIZE",
5726     },
5727     {
5728         0x92FC,
5729         "GL_OFFSET",
5730     },
5731     {
5732         0x92FD,
5733         "GL_BLOCK_INDEX",
5734     },
5735     {
5736         0x92FE,
5737         "GL_ARRAY_STRIDE",
5738     },
5739     {
5740         0x92FF,
5741         "GL_MATRIX_STRIDE",
5742     },
5743     {
5744         0x9300,
5745         "GL_IS_ROW_MAJOR",
5746     },
5747     {
5748         0x9301,
5749         "GL_ATOMIC_COUNTER_BUFFER_INDEX",
5750     },
5751     {
5752         0x9302,
5753         "GL_BUFFER_BINDING",
5754     },
5755     {
5756         0x9303,
5757         "GL_BUFFER_DATA_SIZE",
5758     },
5759     {
5760         0x9304,
5761         "GL_NUM_ACTIVE_VARIABLES",
5762     },
5763     {
5764         0x9305,
5765         "GL_ACTIVE_VARIABLES",
5766     },
5767     {
5768         0x9306,
5769         "GL_REFERENCED_BY_VERTEX_SHADER",
5770     },
5771     {
5772         0x9307,
5773         "GL_REFERENCED_BY_TESS_CONTROL_SHADER_OES",
5774     },
5775     {
5776         0x9308,
5777         "GL_REFERENCED_BY_TESS_EVALUATION_SHADER_OES",
5778     },
5779     {
5780         0x9309,
5781         "GL_REFERENCED_BY_GEOMETRY_SHADER_OES",
5782     },
5783     {
5784         0x930A,
5785         "GL_REFERENCED_BY_FRAGMENT_SHADER",
5786     },
5787     {
5788         0x930B,
5789         "GL_REFERENCED_BY_COMPUTE_SHADER",
5790     },
5791     {
5792         0x930C,
5793         "GL_TOP_LEVEL_ARRAY_SIZE",
5794     },
5795     {
5796         0x930D,
5797         "GL_TOP_LEVEL_ARRAY_STRIDE",
5798     },
5799     {
5800         0x930E,
5801         "GL_LOCATION",
5802     },
5803     {
5804         0x930F,
5805         "GL_LOCATION_INDEX_EXT",
5806     },
5807     {
5808         0x9310,
5809         "GL_FRAMEBUFFER_DEFAULT_WIDTH",
5810     },
5811     {
5812         0x9311,
5813         "GL_FRAMEBUFFER_DEFAULT_HEIGHT",
5814     },
5815     {
5816         0x9312,
5817         "GL_FRAMEBUFFER_DEFAULT_LAYERS_OES",
5818     },
5819     {
5820         0x9313,
5821         "GL_FRAMEBUFFER_DEFAULT_SAMPLES",
5822     },
5823     {
5824         0x9314,
5825         "GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS",
5826     },
5827     {
5828         0x9315,
5829         "GL_MAX_FRAMEBUFFER_WIDTH",
5830     },
5831     {
5832         0x9316,
5833         "GL_MAX_FRAMEBUFFER_HEIGHT",
5834     },
5835     {
5836         0x9317,
5837         "GL_MAX_FRAMEBUFFER_LAYERS_OES",
5838     },
5839     {
5840         0x9318,
5841         "GL_MAX_FRAMEBUFFER_SAMPLES",
5842     },
5843     {
5844         0x9327,
5845         "GL_RASTER_MULTISAMPLE_EXT",
5846     },
5847     {
5848         0x9328,
5849         "GL_RASTER_SAMPLES_EXT",
5850     },
5851     {
5852         0x9329,
5853         "GL_MAX_RASTER_SAMPLES_EXT",
5854     },
5855     {
5856         0x932A,
5857         "GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT",
5858     },
5859     {
5860         0x932B,
5861         "GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT",
5862     },
5863     {
5864         0x932C,
5865         "GL_EFFECTIVE_RASTER_SAMPLES_EXT",
5866     },
5867     {
5868         0x932D,
5869         "GL_DEPTH_SAMPLES_NV",
5870     },
5871     {
5872         0x932E,
5873         "GL_STENCIL_SAMPLES_NV",
5874     },
5875     {
5876         0x932F,
5877         "GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV",
5878     },
5879     {
5880         0x9330,
5881         "GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV",
5882     },
5883     {
5884         0x9331,
5885         "GL_COVERAGE_MODULATION_TABLE_NV",
5886     },
5887     {
5888         0x9332,
5889         "GL_COVERAGE_MODULATION_NV",
5890     },
5891     {
5892         0x9333,
5893         "GL_COVERAGE_MODULATION_TABLE_SIZE_NV",
5894     },
5895     {
5896         0x933C,
5897         "GL_FILL_RECTANGLE_NV",
5898     },
5899     {
5900         0x933D,
5901         "GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV",
5902     },
5903     {
5904         0x933E,
5905         "GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV",
5906     },
5907     {
5908         0x933F,
5909         "GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV",
5910     },
5911     {
5912         0x9340,
5913         "GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV",
5914     },
5915     {
5916         0x9341,
5917         "GL_PROGRAMMABLE_SAMPLE_LOCATION_NV",
5918     },
5919     {
5920         0x9342,
5921         "GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV",
5922     },
5923     {
5924         0x9343,
5925         "GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV",
5926     },
5927     {
5928         0x9346,
5929         "GL_CONSERVATIVE_RASTERIZATION_NV",
5930     },
5931     {
5932         0x9347,
5933         "GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV",
5934     },
5935     {
5936         0x9348,
5937         "GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV",
5938     },
5939     {
5940         0x9349,
5941         "GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV",
5942     },
5943     {
5944         0x9350,
5945         "GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV",
5946     },
5947     {
5948         0x9351,
5949         "GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV",
5950     },
5951     {
5952         0x9352,
5953         "GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV",
5954     },
5955     {
5956         0x9353,
5957         "GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV",
5958     },
5959     {
5960         0x9354,
5961         "GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV",
5962     },
5963     {
5964         0x9355,
5965         "GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV",
5966     },
5967     {
5968         0x9356,
5969         "GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV",
5970     },
5971     {
5972         0x9357,
5973         "GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV",
5974     },
5975     {
5976         0x9358,
5977         "GL_VIEWPORT_SWIZZLE_X_NV",
5978     },
5979     {
5980         0x9359,
5981         "GL_VIEWPORT_SWIZZLE_Y_NV",
5982     },
5983     {
5984         0x935A,
5985         "GL_VIEWPORT_SWIZZLE_Z_NV",
5986     },
5987     {
5988         0x935B,
5989         "GL_VIEWPORT_SWIZZLE_W_NV",
5990     },
5991     {
5992         0x935C,
5993         "GL_CLIP_ORIGIN_EXT",
5994     },
5995     {
5996         0x935D,
5997         "GL_CLIP_DEPTH_MODE_EXT",
5998     },
5999     {
6000         0x935E,
6001         "GL_NEGATIVE_ONE_TO_ONE_EXT",
6002     },
6003     {
6004         0x935F,
6005         "GL_ZERO_TO_ONE_EXT",
6006     },
6007     {
6008         0x9366,
6009         "GL_TEXTURE_REDUCTION_MODE_EXT",
6010     },
6011     {
6012         0x9367,
6013         "GL_WEIGHTED_AVERAGE_EXT",
6014     },
6015     {
6016         0x9368,
6017         "GL_FONT_GLYPHS_AVAILABLE_NV",
6018     },
6019     {
6020         0x9369,
6021         "GL_FONT_TARGET_UNAVAILABLE_NV",
6022     },
6023     {
6024         0x936A,
6025         "GL_FONT_UNAVAILABLE_NV",
6026     },
6027     {
6028         0x936B,
6029         "GL_FONT_UNINTELLIGIBLE_NV",
6030     },
6031     {
6032         0x936C,
6033         "GL_STANDARD_FONT_FORMAT_NV",
6034     },
6035     {
6036         0x936D,
6037         "GL_FRAGMENT_INPUT_NV",
6038     },
6039     {
6040         0x9371,
6041         "GL_MULTISAMPLES_NV",
6042     },
6043     {
6044         0x9372,
6045         "GL_SUPERSAMPLE_SCALE_X_NV",
6046     },
6047     {
6048         0x9373,
6049         "GL_SUPERSAMPLE_SCALE_Y_NV",
6050     },
6051     {
6052         0x9374,
6053         "GL_CONFORMANT_NV",
6054     },
6055     {
6056         0x937C,
6057         "GL_VIEWPORT_POSITION_W_SCALE_NV",
6058     },
6059     {
6060         0x937D,
6061         "GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV",
6062     },
6063     {
6064         0x937E,
6065         "GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV",
6066     },
6067     {
6068         0x937F,
6069         "GL_REPRESENTATIVE_FRAGMENT_TEST_NV",
6070     },
6071     {
6072         0x9380,
6073         "GL_NUM_SAMPLE_COUNTS",
6074     },
6075     {
6076         0x93A0,
6077         "GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE",
6078     },
6079     {
6080         0x93A1,
6081         "GL_BGRA8_EXT",
6082     },
6083     {
6084         0x93A2,
6085         "GL_TEXTURE_USAGE_ANGLE",
6086     },
6087     {
6088         0x93A3,
6089         "GL_FRAMEBUFFER_ATTACHMENT_ANGLE",
6090     },
6091     {
6092         0x93A4,
6093         "GL_PACK_REVERSE_ROW_ORDER_ANGLE",
6094     },
6095     {
6096         0x93A6,
6097         "GL_PROGRAM_BINARY_ANGLE",
6098     },
6099     {
6100         0x93B0,
6101         "GL_COMPRESSED_RGBA_ASTC_4x4_KHR",
6102     },
6103     {
6104         0x93B1,
6105         "GL_COMPRESSED_RGBA_ASTC_5x4_KHR",
6106     },
6107     {
6108         0x93B2,
6109         "GL_COMPRESSED_RGBA_ASTC_5x5_KHR",
6110     },
6111     {
6112         0x93B3,
6113         "GL_COMPRESSED_RGBA_ASTC_6x5_KHR",
6114     },
6115     {
6116         0x93B4,
6117         "GL_COMPRESSED_RGBA_ASTC_6x6_KHR",
6118     },
6119     {
6120         0x93B5,
6121         "GL_COMPRESSED_RGBA_ASTC_8x5_KHR",
6122     },
6123     {
6124         0x93B6,
6125         "GL_COMPRESSED_RGBA_ASTC_8x6_KHR",
6126     },
6127     {
6128         0x93B7,
6129         "GL_COMPRESSED_RGBA_ASTC_8x8_KHR",
6130     },
6131     {
6132         0x93B8,
6133         "GL_COMPRESSED_RGBA_ASTC_10x5_KHR",
6134     },
6135     {
6136         0x93B9,
6137         "GL_COMPRESSED_RGBA_ASTC_10x6_KHR",
6138     },
6139     {
6140         0x93BA,
6141         "GL_COMPRESSED_RGBA_ASTC_10x8_KHR",
6142     },
6143     {
6144         0x93BB,
6145         "GL_COMPRESSED_RGBA_ASTC_10x10_KHR",
6146     },
6147     {
6148         0x93BC,
6149         "GL_COMPRESSED_RGBA_ASTC_12x10_KHR",
6150     },
6151     {
6152         0x93BD,
6153         "GL_COMPRESSED_RGBA_ASTC_12x12_KHR",
6154     },
6155     {
6156         0x93C0,
6157         "GL_COMPRESSED_RGBA_ASTC_3x3x3_OES",
6158     },
6159     {
6160         0x93C1,
6161         "GL_COMPRESSED_RGBA_ASTC_4x3x3_OES",
6162     },
6163     {
6164         0x93C2,
6165         "GL_COMPRESSED_RGBA_ASTC_4x4x3_OES",
6166     },
6167     {
6168         0x93C3,
6169         "GL_COMPRESSED_RGBA_ASTC_4x4x4_OES",
6170     },
6171     {
6172         0x93C4,
6173         "GL_COMPRESSED_RGBA_ASTC_5x4x4_OES",
6174     },
6175     {
6176         0x93C5,
6177         "GL_COMPRESSED_RGBA_ASTC_5x5x4_OES",
6178     },
6179     {
6180         0x93C6,
6181         "GL_COMPRESSED_RGBA_ASTC_5x5x5_OES",
6182     },
6183     {
6184         0x93C7,
6185         "GL_COMPRESSED_RGBA_ASTC_6x5x5_OES",
6186     },
6187     {
6188         0x93C8,
6189         "GL_COMPRESSED_RGBA_ASTC_6x6x5_OES",
6190     },
6191     {
6192         0x93C9,
6193         "GL_COMPRESSED_RGBA_ASTC_6x6x6_OES",
6194     },
6195     {
6196         0x93D0,
6197         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR",
6198     },
6199     {
6200         0x93D1,
6201         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR",
6202     },
6203     {
6204         0x93D2,
6205         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR",
6206     },
6207     {
6208         0x93D3,
6209         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR",
6210     },
6211     {
6212         0x93D4,
6213         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR",
6214     },
6215     {
6216         0x93D5,
6217         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR",
6218     },
6219     {
6220         0x93D6,
6221         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR",
6222     },
6223     {
6224         0x93D7,
6225         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR",
6226     },
6227     {
6228         0x93D8,
6229         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR",
6230     },
6231     {
6232         0x93D9,
6233         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR",
6234     },
6235     {
6236         0x93DA,
6237         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR",
6238     },
6239     {
6240         0x93DB,
6241         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR",
6242     },
6243     {
6244         0x93DC,
6245         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR",
6246     },
6247     {
6248         0x93DD,
6249         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR",
6250     },
6251     {
6252         0x93E0,
6253         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES",
6254     },
6255     {
6256         0x93E1,
6257         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES",
6258     },
6259     {
6260         0x93E2,
6261         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES",
6262     },
6263     {
6264         0x93E3,
6265         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES",
6266     },
6267     {
6268         0x93E4,
6269         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES",
6270     },
6271     {
6272         0x93E5,
6273         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES",
6274     },
6275     {
6276         0x93E6,
6277         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES",
6278     },
6279     {
6280         0x93E7,
6281         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES",
6282     },
6283     {
6284         0x93E8,
6285         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES",
6286     },
6287     {
6288         0x93E9,
6289         "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES",
6290     },
6291     {
6292         0x93F0,
6293         "GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV2_IMG",
6294     },
6295     {
6296         0x93F1,
6297         "GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV2_IMG",
6298     },
6299     {
6300         0x94F0,
6301         "GL_PERFQUERY_COUNTER_EVENT_INTEL",
6302     },
6303     {
6304         0x94F1,
6305         "GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL",
6306     },
6307     {
6308         0x94F2,
6309         "GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL",
6310     },
6311     {
6312         0x94F3,
6313         "GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL",
6314     },
6315     {
6316         0x94F4,
6317         "GL_PERFQUERY_COUNTER_RAW_INTEL",
6318     },
6319     {
6320         0x94F5,
6321         "GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL",
6322     },
6323     {
6324         0x94F8,
6325         "GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL",
6326     },
6327     {
6328         0x94F9,
6329         "GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL",
6330     },
6331     {
6332         0x94FA,
6333         "GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL",
6334     },
6335     {
6336         0x94FB,
6337         "GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL",
6338     },
6339     {
6340         0x94FC,
6341         "GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL",
6342     },
6343     {
6344         0x94FD,
6345         "GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL",
6346     },
6347     {
6348         0x94FE,
6349         "GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL",
6350     },
6351     {
6352         0x94FF,
6353         "GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL",
6354     },
6355     {
6356         0x9500,
6357         "GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL",
6358     },
6359     {
6360         0x9530,
6361         "GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT",
6362     },
6363     {
6364         0x9531,
6365         "GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT",
6366     },
6367     {
6368         0x9532,
6369         "GL_SUBGROUP_SIZE_KHR",
6370     },
6371     {
6372         0x9533,
6373         "GL_SUBGROUP_SUPPORTED_STAGES_KHR",
6374     },
6375     {
6376         0x9534,
6377         "GL_SUBGROUP_SUPPORTED_FEATURES_KHR",
6378     },
6379     {
6380         0x9535,
6381         "GL_SUBGROUP_QUAD_ALL_STAGES_KHR",
6382     },
6383     {
6384         0x9536,
6385         "GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV",
6386     },
6387     {
6388         0x9537,
6389         "GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV",
6390     },
6391     {
6392         0x9538,
6393         "GL_MAX_MESH_OUTPUT_VERTICES_NV",
6394     },
6395     {
6396         0x9539,
6397         "GL_MAX_MESH_OUTPUT_PRIMITIVES_NV",
6398     },
6399     {
6400         0x953A,
6401         "GL_MAX_TASK_OUTPUT_COUNT_NV",
6402     },
6403     {
6404         0x953B,
6405         "GL_MAX_MESH_WORK_GROUP_SIZE_NV",
6406     },
6407     {
6408         0x953C,
6409         "GL_MAX_TASK_WORK_GROUP_SIZE_NV",
6410     },
6411     {
6412         0x953D,
6413         "GL_MAX_DRAW_MESH_TASKS_COUNT_NV",
6414     },
6415     {
6416         0x953E,
6417         "GL_MESH_WORK_GROUP_SIZE_NV",
6418     },
6419     {
6420         0x953F,
6421         "GL_TASK_WORK_GROUP_SIZE_NV",
6422     },
6423     {
6424         0x9543,
6425         "GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV",
6426     },
6427     {
6428         0x954D,
6429         "GL_CONSERVATIVE_RASTER_MODE_NV",
6430     },
6431     {
6432         0x954E,
6433         "GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV",
6434     },
6435     {
6436         0x954F,
6437         "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV",
6438     },
6439     {
6440         0x9550,
6441         "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV",
6442     },
6443     {
6444         0x9555,
6445         "GL_SCISSOR_TEST_EXCLUSIVE_NV",
6446     },
6447     {
6448         0x9556,
6449         "GL_SCISSOR_BOX_EXCLUSIVE_NV",
6450     },
6451     {
6452         0x9557,
6453         "GL_MAX_MESH_VIEWS_NV",
6454     },
6455     {
6456         0x9559,
6457         "GL_MESH_SHADER_NV",
6458     },
6459     {
6460         0x955A,
6461         "GL_TASK_SHADER_NV",
6462     },
6463     {
6464         0x955B,
6465         "GL_SHADING_RATE_IMAGE_BINDING_NV",
6466     },
6467     {
6468         0x955C,
6469         "GL_SHADING_RATE_IMAGE_TEXEL_WIDTH_NV",
6470     },
6471     {
6472         0x955D,
6473         "GL_SHADING_RATE_IMAGE_TEXEL_HEIGHT_NV",
6474     },
6475     {
6476         0x955E,
6477         "GL_SHADING_RATE_IMAGE_PALETTE_SIZE_NV",
6478     },
6479     {
6480         0x955F,
6481         "GL_MAX_COARSE_FRAGMENT_SAMPLES_NV",
6482     },
6483     {
6484         0x9563,
6485         "GL_SHADING_RATE_IMAGE_NV",
6486     },
6487     {
6488         0x9564,
6489         "GL_SHADING_RATE_NO_INVOCATIONS_NV",
6490     },
6491     {
6492         0x9565,
6493         "GL_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV",
6494     },
6495     {
6496         0x9566,
6497         "GL_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV",
6498     },
6499     {
6500         0x9567,
6501         "GL_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV",
6502     },
6503     {
6504         0x9568,
6505         "GL_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV",
6506     },
6507     {
6508         0x9569,
6509         "GL_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV",
6510     },
6511     {
6512         0x956A,
6513         "GL_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV",
6514     },
6515     {
6516         0x956B,
6517         "GL_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV",
6518     },
6519     {
6520         0x956C,
6521         "GL_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV",
6522     },
6523     {
6524         0x956D,
6525         "GL_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV",
6526     },
6527     {
6528         0x956E,
6529         "GL_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV",
6530     },
6531     {
6532         0x956F,
6533         "GL_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV",
6534     },
6535     {
6536         0x9579,
6537         "GL_MESH_VERTICES_OUT_NV",
6538     },
6539     {
6540         0x957A,
6541         "GL_MESH_PRIMITIVES_OUT_NV",
6542     },
6543     {
6544         0x957B,
6545         "GL_MESH_OUTPUT_TYPE_NV",
6546     },
6547     {
6548         0x957C,
6549         "GL_MESH_SUBROUTINE_NV",
6550     },
6551     {
6552         0x957D,
6553         "GL_TASK_SUBROUTINE_NV",
6554     },
6555     {
6556         0x957E,
6557         "GL_MESH_SUBROUTINE_UNIFORM_NV",
6558     },
6559     {
6560         0x957F,
6561         "GL_TASK_SUBROUTINE_UNIFORM_NV",
6562     },
6563     {
6564         0x9580,
6565         "GL_TEXTURE_TILING_EXT",
6566     },
6567     {
6568         0x9581,
6569         "GL_DEDICATED_MEMORY_OBJECT_EXT",
6570     },
6571     {
6572         0x9582,
6573         "GL_NUM_TILING_TYPES_EXT",
6574     },
6575     {
6576         0x9583,
6577         "GL_TILING_TYPES_EXT",
6578     },
6579     {
6580         0x9584,
6581         "GL_OPTIMAL_TILING_EXT",
6582     },
6583     {
6584         0x9585,
6585         "GL_LINEAR_TILING_EXT",
6586     },
6587     {
6588         0x9586,
6589         "GL_HANDLE_TYPE_OPAQUE_FD_EXT",
6590     },
6591     {
6592         0x9587,
6593         "GL_HANDLE_TYPE_OPAQUE_WIN32_EXT",
6594     },
6595     {
6596         0x9588,
6597         "GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT",
6598     },
6599     {
6600         0x9589,
6601         "GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT",
6602     },
6603     {
6604         0x958A,
6605         "GL_HANDLE_TYPE_D3D12_RESOURCE_EXT",
6606     },
6607     {
6608         0x958B,
6609         "GL_HANDLE_TYPE_D3D11_IMAGE_EXT",
6610     },
6611     {
6612         0x958C,
6613         "GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT",
6614     },
6615     {
6616         0x958D,
6617         "GL_LAYOUT_GENERAL_EXT",
6618     },
6619     {
6620         0x958E,
6621         "GL_LAYOUT_COLOR_ATTACHMENT_EXT",
6622     },
6623     {
6624         0x958F,
6625         "GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT",
6626     },
6627     {
6628         0x9590,
6629         "GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT",
6630     },
6631     {
6632         0x9591,
6633         "GL_LAYOUT_SHADER_READ_ONLY_EXT",
6634     },
6635     {
6636         0x9592,
6637         "GL_LAYOUT_TRANSFER_SRC_EXT",
6638     },
6639     {
6640         0x9593,
6641         "GL_LAYOUT_TRANSFER_DST_EXT",
6642     },
6643     {
6644         0x9594,
6645         "GL_HANDLE_TYPE_D3D12_FENCE_EXT",
6646     },
6647     {
6648         0x9595,
6649         "GL_D3D12_FENCE_VALUE_EXT",
6650     },
6651     {
6652         0x9596,
6653         "GL_NUM_DEVICE_UUIDS_EXT",
6654     },
6655     {
6656         0x9597,
6657         "GL_DEVICE_UUID_EXT",
6658     },
6659     {
6660         0x9598,
6661         "GL_DRIVER_UUID_EXT",
6662     },
6663     {
6664         0x9599,
6665         "GL_DEVICE_LUID_EXT",
6666     },
6667     {
6668         0x959A,
6669         "GL_DEVICE_NODE_MASK_EXT",
6670     },
6671     {
6672         0x959B,
6673         "GL_PROTECTED_MEMORY_OBJECT_EXT",
6674     },
6675     {
6676         0x959C,
6677         "GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV",
6678     },
6679     {
6680         0x959D,
6681         "GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV",
6682     },
6683     {
6684         0x959E,
6685         "GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV",
6686     },
6687     {
6688         0x959F,
6689         "GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV",
6690     },
6691     {
6692         0x95A0,
6693         "GL_REFERENCED_BY_MESH_SHADER_NV",
6694     },
6695     {
6696         0x95A1,
6697         "GL_REFERENCED_BY_TASK_SHADER_NV",
6698     },
6699     {
6700         0x95A2,
6701         "GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV",
6702     },
6703     {
6704         0x95A3,
6705         "GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV",
6706     },
6707     {
6708         0x95A4,
6709         "GL_ATTACHED_MEMORY_OBJECT_NV",
6710     },
6711     {
6712         0x95A5,
6713         "GL_ATTACHED_MEMORY_OFFSET_NV",
6714     },
6715     {
6716         0x95A6,
6717         "GL_MEMORY_ATTACHABLE_ALIGNMENT_NV",
6718     },
6719     {
6720         0x95A7,
6721         "GL_MEMORY_ATTACHABLE_SIZE_NV",
6722     },
6723     {
6724         0x95A8,
6725         "GL_MEMORY_ATTACHABLE_NV",
6726     },
6727     {
6728         0x95A9,
6729         "GL_DETACHED_MEMORY_INCARNATION_NV",
6730     },
6731     {
6732         0x95AA,
6733         "GL_DETACHED_TEXTURES_NV",
6734     },
6735     {
6736         0x95AB,
6737         "GL_DETACHED_BUFFERS_NV",
6738     },
6739     {
6740         0x95AC,
6741         "GL_MAX_DETACHED_TEXTURES_NV",
6742     },
6743     {
6744         0x95AD,
6745         "GL_MAX_DETACHED_BUFFERS_NV",
6746     },
6747     {
6748         0x95AE,
6749         "GL_SHADING_RATE_SAMPLE_ORDER_DEFAULT_NV",
6750     },
6751     {
6752         0x95AF,
6753         "GL_SHADING_RATE_SAMPLE_ORDER_PIXEL_MAJOR_NV",
6754     },
6755     {
6756         0x95B0,
6757         "GL_SHADING_RATE_SAMPLE_ORDER_SAMPLE_MAJOR_NV",
6758     },
6759     {
6760         0x9630,
6761         "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR",
6762     },
6763     {
6764         0x9631,
6765         "GL_MAX_VIEWS_OVR",
6766     },
6767     {
6768         0x9632,
6769         "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR",
6770     },
6771     {
6772         0x9633,
6773         "GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR",
6774     },
6775     {
6776         0x9650,
6777         "GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_FAST_SIZE_EXT",
6778     },
6779     {
6780         0x9651,
6781         "GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_SIZE_EXT",
6782     },
6783     {
6784         0x9652,
6785         "GL_FRAMEBUFFER_INCOMPLETE_INSUFFICIENT_SHADER_COMBINED_LOCAL_STORAGE_"
6786         "EXT",
6787     },
6788     {
6789         0x96A2,
6790         "GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM",
6791     },
6792     {
6793         0xC0,
6794         "GL_SHARED_EDGE_NV",
6795     },
6796     {
6797         0xE8,
6798         "GL_ROUNDED_RECT_NV",
6799     },
6800     {
6801         0xE9,
6802         "GL_RELATIVE_ROUNDED_RECT_NV",
6803     },
6804     {
6805         0xEA,
6806         "GL_ROUNDED_RECT2_NV",
6807     },
6808     {
6809         0xEB,
6810         "GL_RELATIVE_ROUNDED_RECT2_NV",
6811     },
6812     {
6813         0xEC,
6814         "GL_ROUNDED_RECT4_NV",
6815     },
6816     {
6817         0xED,
6818         "GL_RELATIVE_ROUNDED_RECT4_NV",
6819     },
6820     {
6821         0xEE,
6822         "GL_ROUNDED_RECT8_NV",
6823     },
6824     {
6825         0xEF,
6826         "GL_RELATIVE_ROUNDED_RECT8_NV",
6827     },
6828     {
6829         0xF0,
6830         "GL_RESTART_PATH_NV",
6831     },
6832     {
6833         0xF2,
6834         "GL_DUP_FIRST_CUBIC_CURVE_TO_NV",
6835     },
6836     {
6837         0xF4,
6838         "GL_DUP_LAST_CUBIC_CURVE_TO_NV",
6839     },
6840     {
6841         0xF6,
6842         "GL_RECT_NV",
6843     },
6844     {
6845         0xF7,
6846         "GL_RELATIVE_RECT_NV",
6847     },
6848     {
6849         0xF8,
6850         "GL_CIRCULAR_CCW_ARC_TO_NV",
6851     },
6852     {
6853         0xFA,
6854         "GL_CIRCULAR_CW_ARC_TO_NV",
6855     },
6856     {
6857         0xFC,
6858         "GL_CIRCULAR_TANGENT_ARC_TO_NV",
6859     },
6860     {
6861         0xFE,
6862         "GL_ARC_TO_NV",
6863     },
6864     {
6865         0xFF,
6866         "GL_RELATIVE_ARC_TO_NV",
6867     },
6868     {
6869         0xFFFFFFFF,
6870         "GL_ALL_SHADER_BITS_EXT",
6871     },
6872 };
6873 
6874 const GLES2Util::EnumToString* const GLES2Util::enum_to_string_table_ =
6875     enum_to_string_table;
6876 const size_t GLES2Util::enum_to_string_table_len_ =
6877     sizeof(enum_to_string_table) / sizeof(enum_to_string_table[0]);
6878 
GetStringAttachment(uint32_t value)6879 std::string GLES2Util::GetStringAttachment(uint32_t value) {
6880   static const EnumToString string_table[] = {
6881       {GL_COLOR_ATTACHMENT0, "GL_COLOR_ATTACHMENT0"},
6882       {GL_DEPTH_ATTACHMENT, "GL_DEPTH_ATTACHMENT"},
6883       {GL_STENCIL_ATTACHMENT, "GL_STENCIL_ATTACHMENT"},
6884       {GL_DEPTH_STENCIL_ATTACHMENT, "GL_DEPTH_STENCIL_ATTACHMENT"},
6885   };
6886   return GLES2Util::GetQualifiedEnumString(string_table,
6887                                            base::size(string_table), value);
6888 }
6889 
GetStringAttachmentQuery(uint32_t value)6890 std::string GLES2Util::GetStringAttachmentQuery(uint32_t value) {
6891   static const EnumToString string_table[] = {
6892       {GL_COLOR_ATTACHMENT0, "GL_COLOR_ATTACHMENT0"},
6893       {GL_DEPTH_ATTACHMENT, "GL_DEPTH_ATTACHMENT"},
6894       {GL_STENCIL_ATTACHMENT, "GL_STENCIL_ATTACHMENT"},
6895       {GL_DEPTH_STENCIL_ATTACHMENT, "GL_DEPTH_STENCIL_ATTACHMENT"},
6896       {GL_COLOR_EXT, "GL_COLOR_EXT"},
6897       {GL_DEPTH_EXT, "GL_DEPTH_EXT"},
6898       {GL_STENCIL_EXT, "GL_STENCIL_EXT"},
6899   };
6900   return GLES2Util::GetQualifiedEnumString(string_table,
6901                                            base::size(string_table), value);
6902 }
6903 
GetStringBackbufferAttachment(uint32_t value)6904 std::string GLES2Util::GetStringBackbufferAttachment(uint32_t value) {
6905   static const EnumToString string_table[] = {
6906       {GL_COLOR_EXT, "GL_COLOR_EXT"},
6907       {GL_DEPTH_EXT, "GL_DEPTH_EXT"},
6908       {GL_STENCIL_EXT, "GL_STENCIL_EXT"},
6909   };
6910   return GLES2Util::GetQualifiedEnumString(string_table,
6911                                            base::size(string_table), value);
6912 }
6913 
GetStringBlitFilter(uint32_t value)6914 std::string GLES2Util::GetStringBlitFilter(uint32_t value) {
6915   static const EnumToString string_table[] = {
6916       {GL_NEAREST, "GL_NEAREST"},
6917       {GL_LINEAR, "GL_LINEAR"},
6918   };
6919   return GLES2Util::GetQualifiedEnumString(string_table,
6920                                            base::size(string_table), value);
6921 }
6922 
GetStringBufferMode(uint32_t value)6923 std::string GLES2Util::GetStringBufferMode(uint32_t value) {
6924   static const EnumToString string_table[] = {
6925       {GL_INTERLEAVED_ATTRIBS, "GL_INTERLEAVED_ATTRIBS"},
6926       {GL_SEPARATE_ATTRIBS, "GL_SEPARATE_ATTRIBS"},
6927   };
6928   return GLES2Util::GetQualifiedEnumString(string_table,
6929                                            base::size(string_table), value);
6930 }
6931 
GetStringBufferParameter(uint32_t value)6932 std::string GLES2Util::GetStringBufferParameter(uint32_t value) {
6933   static const EnumToString string_table[] = {
6934       {GL_BUFFER_SIZE, "GL_BUFFER_SIZE"},
6935       {GL_BUFFER_USAGE, "GL_BUFFER_USAGE"},
6936       {GL_BUFFER_ACCESS_FLAGS, "GL_BUFFER_ACCESS_FLAGS"},
6937       {GL_BUFFER_MAPPED, "GL_BUFFER_MAPPED"},
6938   };
6939   return GLES2Util::GetQualifiedEnumString(string_table,
6940                                            base::size(string_table), value);
6941 }
6942 
GetStringBufferParameter64(uint32_t value)6943 std::string GLES2Util::GetStringBufferParameter64(uint32_t value) {
6944   static const EnumToString string_table[] = {
6945       {GL_BUFFER_SIZE, "GL_BUFFER_SIZE"},
6946       {GL_BUFFER_MAP_LENGTH, "GL_BUFFER_MAP_LENGTH"},
6947       {GL_BUFFER_MAP_OFFSET, "GL_BUFFER_MAP_OFFSET"},
6948   };
6949   return GLES2Util::GetQualifiedEnumString(string_table,
6950                                            base::size(string_table), value);
6951 }
6952 
GetStringBufferTarget(uint32_t value)6953 std::string GLES2Util::GetStringBufferTarget(uint32_t value) {
6954   static const EnumToString string_table[] = {
6955       {GL_ARRAY_BUFFER, "GL_ARRAY_BUFFER"},
6956       {GL_ELEMENT_ARRAY_BUFFER, "GL_ELEMENT_ARRAY_BUFFER"},
6957       {GL_COPY_READ_BUFFER, "GL_COPY_READ_BUFFER"},
6958       {GL_COPY_WRITE_BUFFER, "GL_COPY_WRITE_BUFFER"},
6959       {GL_PIXEL_PACK_BUFFER, "GL_PIXEL_PACK_BUFFER"},
6960       {GL_PIXEL_UNPACK_BUFFER, "GL_PIXEL_UNPACK_BUFFER"},
6961       {GL_TRANSFORM_FEEDBACK_BUFFER, "GL_TRANSFORM_FEEDBACK_BUFFER"},
6962       {GL_UNIFORM_BUFFER, "GL_UNIFORM_BUFFER"},
6963   };
6964   return GLES2Util::GetQualifiedEnumString(string_table,
6965                                            base::size(string_table), value);
6966 }
6967 
GetStringBufferUsage(uint32_t value)6968 std::string GLES2Util::GetStringBufferUsage(uint32_t value) {
6969   static const EnumToString string_table[] = {
6970       {GL_STREAM_DRAW, "GL_STREAM_DRAW"},
6971       {GL_STATIC_DRAW, "GL_STATIC_DRAW"},
6972       {GL_DYNAMIC_DRAW, "GL_DYNAMIC_DRAW"},
6973       {GL_STREAM_READ, "GL_STREAM_READ"},
6974       {GL_STREAM_COPY, "GL_STREAM_COPY"},
6975       {GL_STATIC_READ, "GL_STATIC_READ"},
6976       {GL_STATIC_COPY, "GL_STATIC_COPY"},
6977       {GL_DYNAMIC_READ, "GL_DYNAMIC_READ"},
6978       {GL_DYNAMIC_COPY, "GL_DYNAMIC_COPY"},
6979   };
6980   return GLES2Util::GetQualifiedEnumString(string_table,
6981                                            base::size(string_table), value);
6982 }
6983 
GetStringBufferfi(uint32_t value)6984 std::string GLES2Util::GetStringBufferfi(uint32_t value) {
6985   static const EnumToString string_table[] = {
6986       {GL_DEPTH_STENCIL, "GL_DEPTH_STENCIL"},
6987   };
6988   return GLES2Util::GetQualifiedEnumString(string_table,
6989                                            base::size(string_table), value);
6990 }
6991 
GetStringBufferfv(uint32_t value)6992 std::string GLES2Util::GetStringBufferfv(uint32_t value) {
6993   static const EnumToString string_table[] = {
6994       {GL_COLOR, "GL_COLOR"},
6995       {GL_DEPTH, "GL_DEPTH"},
6996   };
6997   return GLES2Util::GetQualifiedEnumString(string_table,
6998                                            base::size(string_table), value);
6999 }
7000 
GetStringBufferiv(uint32_t value)7001 std::string GLES2Util::GetStringBufferiv(uint32_t value) {
7002   static const EnumToString string_table[] = {
7003       {GL_COLOR, "GL_COLOR"},
7004       {GL_STENCIL, "GL_STENCIL"},
7005   };
7006   return GLES2Util::GetQualifiedEnumString(string_table,
7007                                            base::size(string_table), value);
7008 }
7009 
GetStringBufferuiv(uint32_t value)7010 std::string GLES2Util::GetStringBufferuiv(uint32_t value) {
7011   static const EnumToString string_table[] = {
7012       {GL_COLOR, "GL_COLOR"},
7013   };
7014   return GLES2Util::GetQualifiedEnumString(string_table,
7015                                            base::size(string_table), value);
7016 }
7017 
GetStringCapability(uint32_t value)7018 std::string GLES2Util::GetStringCapability(uint32_t value) {
7019   static const EnumToString string_table[] = {
7020       {GL_BLEND, "GL_BLEND"},
7021       {GL_CULL_FACE, "GL_CULL_FACE"},
7022       {GL_DEPTH_TEST, "GL_DEPTH_TEST"},
7023       {GL_DITHER, "GL_DITHER"},
7024       {GL_POLYGON_OFFSET_FILL, "GL_POLYGON_OFFSET_FILL"},
7025       {GL_SAMPLE_ALPHA_TO_COVERAGE, "GL_SAMPLE_ALPHA_TO_COVERAGE"},
7026       {GL_SAMPLE_COVERAGE, "GL_SAMPLE_COVERAGE"},
7027       {GL_SCISSOR_TEST, "GL_SCISSOR_TEST"},
7028       {GL_STENCIL_TEST, "GL_STENCIL_TEST"},
7029       {GL_RASTERIZER_DISCARD, "GL_RASTERIZER_DISCARD"},
7030       {GL_PRIMITIVE_RESTART_FIXED_INDEX, "GL_PRIMITIVE_RESTART_FIXED_INDEX"},
7031   };
7032   return GLES2Util::GetQualifiedEnumString(string_table,
7033                                            base::size(string_table), value);
7034 }
7035 
GetStringClientBufferUsage(uint32_t value)7036 std::string GLES2Util::GetStringClientBufferUsage(uint32_t value) {
7037   static const EnumToString string_table[] = {
7038       {GL_SCANOUT_CHROMIUM, "GL_SCANOUT_CHROMIUM"},
7039   };
7040   return GLES2Util::GetQualifiedEnumString(string_table,
7041                                            base::size(string_table), value);
7042 }
7043 
GetStringCmpFunction(uint32_t value)7044 std::string GLES2Util::GetStringCmpFunction(uint32_t value) {
7045   static const EnumToString string_table[] = {
7046       {GL_NEVER, "GL_NEVER"},     {GL_LESS, "GL_LESS"},
7047       {GL_EQUAL, "GL_EQUAL"},     {GL_LEQUAL, "GL_LEQUAL"},
7048       {GL_GREATER, "GL_GREATER"}, {GL_NOTEQUAL, "GL_NOTEQUAL"},
7049       {GL_GEQUAL, "GL_GEQUAL"},   {GL_ALWAYS, "GL_ALWAYS"},
7050   };
7051   return GLES2Util::GetQualifiedEnumString(string_table,
7052                                            base::size(string_table), value);
7053 }
7054 
GetStringCompressedTextureFormat(uint32_t value)7055 std::string GLES2Util::GetStringCompressedTextureFormat(uint32_t value) {
7056   return GLES2Util::GetQualifiedEnumString(nullptr, 0, value);
7057 }
7058 
GetStringCoverageModulationComponents(uint32_t value)7059 std::string GLES2Util::GetStringCoverageModulationComponents(uint32_t value) {
7060   static const EnumToString string_table[] = {
7061       {GL_RGB, "GL_RGB"},
7062       {GL_RGBA, "GL_RGBA"},
7063       {GL_ALPHA, "GL_ALPHA"},
7064       {GL_NONE, "GL_NONE"},
7065   };
7066   return GLES2Util::GetQualifiedEnumString(string_table,
7067                                            base::size(string_table), value);
7068 }
7069 
GetStringDrawMode(uint32_t value)7070 std::string GLES2Util::GetStringDrawMode(uint32_t value) {
7071   static const EnumToString string_table[] = {
7072       {GL_POINTS, "GL_POINTS"},
7073       {GL_LINE_STRIP, "GL_LINE_STRIP"},
7074       {GL_LINE_LOOP, "GL_LINE_LOOP"},
7075       {GL_LINES, "GL_LINES"},
7076       {GL_TRIANGLE_STRIP, "GL_TRIANGLE_STRIP"},
7077       {GL_TRIANGLE_FAN, "GL_TRIANGLE_FAN"},
7078       {GL_TRIANGLES, "GL_TRIANGLES"},
7079   };
7080   return GLES2Util::GetQualifiedEnumString(string_table,
7081                                            base::size(string_table), value);
7082 }
7083 
GetStringDstBlendFactor(uint32_t value)7084 std::string GLES2Util::GetStringDstBlendFactor(uint32_t value) {
7085   static const EnumToString string_table[] = {
7086       {GL_ZERO, "GL_ZERO"},
7087       {GL_ONE, "GL_ONE"},
7088       {GL_SRC_COLOR, "GL_SRC_COLOR"},
7089       {GL_ONE_MINUS_SRC_COLOR, "GL_ONE_MINUS_SRC_COLOR"},
7090       {GL_DST_COLOR, "GL_DST_COLOR"},
7091       {GL_ONE_MINUS_DST_COLOR, "GL_ONE_MINUS_DST_COLOR"},
7092       {GL_SRC_ALPHA, "GL_SRC_ALPHA"},
7093       {GL_ONE_MINUS_SRC_ALPHA, "GL_ONE_MINUS_SRC_ALPHA"},
7094       {GL_DST_ALPHA, "GL_DST_ALPHA"},
7095       {GL_ONE_MINUS_DST_ALPHA, "GL_ONE_MINUS_DST_ALPHA"},
7096       {GL_CONSTANT_COLOR, "GL_CONSTANT_COLOR"},
7097       {GL_ONE_MINUS_CONSTANT_COLOR, "GL_ONE_MINUS_CONSTANT_COLOR"},
7098       {GL_CONSTANT_ALPHA, "GL_CONSTANT_ALPHA"},
7099       {GL_ONE_MINUS_CONSTANT_ALPHA, "GL_ONE_MINUS_CONSTANT_ALPHA"},
7100       {GL_SRC_ALPHA_SATURATE, "GL_SRC_ALPHA_SATURATE"},
7101   };
7102   return GLES2Util::GetQualifiedEnumString(string_table,
7103                                            base::size(string_table), value);
7104 }
7105 
GetStringEquation(uint32_t value)7106 std::string GLES2Util::GetStringEquation(uint32_t value) {
7107   static const EnumToString string_table[] = {
7108       {GL_FUNC_ADD, "GL_FUNC_ADD"},
7109       {GL_FUNC_SUBTRACT, "GL_FUNC_SUBTRACT"},
7110       {GL_FUNC_REVERSE_SUBTRACT, "GL_FUNC_REVERSE_SUBTRACT"},
7111       {GL_MIN, "GL_MIN"},
7112       {GL_MAX, "GL_MAX"},
7113   };
7114   return GLES2Util::GetQualifiedEnumString(string_table,
7115                                            base::size(string_table), value);
7116 }
7117 
GetStringFaceMode(uint32_t value)7118 std::string GLES2Util::GetStringFaceMode(uint32_t value) {
7119   static const EnumToString string_table[] = {
7120       {GL_CW, "GL_CW"},
7121       {GL_CCW, "GL_CCW"},
7122   };
7123   return GLES2Util::GetQualifiedEnumString(string_table,
7124                                            base::size(string_table), value);
7125 }
7126 
GetStringFaceType(uint32_t value)7127 std::string GLES2Util::GetStringFaceType(uint32_t value) {
7128   static const EnumToString string_table[] = {
7129       {GL_FRONT, "GL_FRONT"},
7130       {GL_BACK, "GL_BACK"},
7131       {GL_FRONT_AND_BACK, "GL_FRONT_AND_BACK"},
7132   };
7133   return GLES2Util::GetQualifiedEnumString(string_table,
7134                                            base::size(string_table), value);
7135 }
7136 
GetStringFramebufferAttachmentParameter(uint32_t value)7137 std::string GLES2Util::GetStringFramebufferAttachmentParameter(uint32_t value) {
7138   static const EnumToString string_table[] = {
7139       {GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE,
7140        "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE"},
7141       {GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME,
7142        "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME"},
7143       {GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL,
7144        "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL"},
7145       {GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE,
7146        "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE"},
7147       {GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE,
7148        "GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE"},
7149       {GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE,
7150        "GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE"},
7151       {GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE,
7152        "GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE"},
7153       {GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE,
7154        "GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE"},
7155       {GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE,
7156        "GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE"},
7157       {GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE,
7158        "GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE"},
7159       {GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE,
7160        "GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE"},
7161       {GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING,
7162        "GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING"},
7163       {GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER,
7164        "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER"},
7165   };
7166   return GLES2Util::GetQualifiedEnumString(string_table,
7167                                            base::size(string_table), value);
7168 }
7169 
GetStringFramebufferParameter(uint32_t value)7170 std::string GLES2Util::GetStringFramebufferParameter(uint32_t value) {
7171   return GLES2Util::GetQualifiedEnumString(nullptr, 0, value);
7172 }
7173 
GetStringFramebufferTarget(uint32_t value)7174 std::string GLES2Util::GetStringFramebufferTarget(uint32_t value) {
7175   static const EnumToString string_table[] = {
7176       {GL_FRAMEBUFFER, "GL_FRAMEBUFFER"},
7177       {GL_DRAW_FRAMEBUFFER, "GL_DRAW_FRAMEBUFFER"},
7178       {GL_READ_FRAMEBUFFER, "GL_READ_FRAMEBUFFER"},
7179   };
7180   return GLES2Util::GetQualifiedEnumString(string_table,
7181                                            base::size(string_table), value);
7182 }
7183 
GetStringGLState(uint32_t value)7184 std::string GLES2Util::GetStringGLState(uint32_t value) {
7185   static const EnumToString string_table[] = {
7186       {GL_ACTIVE_TEXTURE, "GL_ACTIVE_TEXTURE"},
7187       {GL_ALIASED_LINE_WIDTH_RANGE, "GL_ALIASED_LINE_WIDTH_RANGE"},
7188       {GL_ALIASED_POINT_SIZE_RANGE, "GL_ALIASED_POINT_SIZE_RANGE"},
7189       {GL_ALPHA_BITS, "GL_ALPHA_BITS"},
7190       {GL_ARRAY_BUFFER_BINDING, "GL_ARRAY_BUFFER_BINDING"},
7191       {GL_BLUE_BITS, "GL_BLUE_BITS"},
7192       {GL_COMPRESSED_TEXTURE_FORMATS, "GL_COMPRESSED_TEXTURE_FORMATS"},
7193       {GL_CURRENT_PROGRAM, "GL_CURRENT_PROGRAM"},
7194       {GL_DEPTH_BITS, "GL_DEPTH_BITS"},
7195       {GL_DEPTH_RANGE, "GL_DEPTH_RANGE"},
7196       {GL_ELEMENT_ARRAY_BUFFER_BINDING, "GL_ELEMENT_ARRAY_BUFFER_BINDING"},
7197       {GL_FRAMEBUFFER_BINDING, "GL_FRAMEBUFFER_BINDING"},
7198       {GL_GENERATE_MIPMAP_HINT, "GL_GENERATE_MIPMAP_HINT"},
7199       {GL_GREEN_BITS, "GL_GREEN_BITS"},
7200       {GL_IMPLEMENTATION_COLOR_READ_FORMAT,
7201        "GL_IMPLEMENTATION_COLOR_READ_FORMAT"},
7202       {GL_IMPLEMENTATION_COLOR_READ_TYPE, "GL_IMPLEMENTATION_COLOR_READ_TYPE"},
7203       {GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS,
7204        "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS"},
7205       {GL_MAX_CUBE_MAP_TEXTURE_SIZE, "GL_MAX_CUBE_MAP_TEXTURE_SIZE"},
7206       {GL_MAX_FRAGMENT_UNIFORM_VECTORS, "GL_MAX_FRAGMENT_UNIFORM_VECTORS"},
7207       {GL_MAX_RENDERBUFFER_SIZE, "GL_MAX_RENDERBUFFER_SIZE"},
7208       {GL_MAX_TEXTURE_IMAGE_UNITS, "GL_MAX_TEXTURE_IMAGE_UNITS"},
7209       {GL_MAX_TEXTURE_SIZE, "GL_MAX_TEXTURE_SIZE"},
7210       {GL_MAX_VARYING_VECTORS, "GL_MAX_VARYING_VECTORS"},
7211       {GL_MAX_VERTEX_ATTRIBS, "GL_MAX_VERTEX_ATTRIBS"},
7212       {GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS, "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS"},
7213       {GL_MAX_VERTEX_UNIFORM_VECTORS, "GL_MAX_VERTEX_UNIFORM_VECTORS"},
7214       {GL_MAX_VIEWPORT_DIMS, "GL_MAX_VIEWPORT_DIMS"},
7215       {GL_NUM_COMPRESSED_TEXTURE_FORMATS, "GL_NUM_COMPRESSED_TEXTURE_FORMATS"},
7216       {GL_NUM_SHADER_BINARY_FORMATS, "GL_NUM_SHADER_BINARY_FORMATS"},
7217       {GL_PACK_ALIGNMENT, "GL_PACK_ALIGNMENT"},
7218       {GL_RED_BITS, "GL_RED_BITS"},
7219       {GL_RENDERBUFFER_BINDING, "GL_RENDERBUFFER_BINDING"},
7220       {GL_SAMPLE_BUFFERS, "GL_SAMPLE_BUFFERS"},
7221       {GL_SAMPLE_COVERAGE_INVERT, "GL_SAMPLE_COVERAGE_INVERT"},
7222       {GL_SAMPLE_COVERAGE_VALUE, "GL_SAMPLE_COVERAGE_VALUE"},
7223       {GL_SAMPLES, "GL_SAMPLES"},
7224       {GL_SCISSOR_BOX, "GL_SCISSOR_BOX"},
7225       {GL_SHADER_BINARY_FORMATS, "GL_SHADER_BINARY_FORMATS"},
7226       {GL_SHADER_COMPILER, "GL_SHADER_COMPILER"},
7227       {GL_SUBPIXEL_BITS, "GL_SUBPIXEL_BITS"},
7228       {GL_STENCIL_BITS, "GL_STENCIL_BITS"},
7229       {GL_TEXTURE_BINDING_2D, "GL_TEXTURE_BINDING_2D"},
7230       {GL_TEXTURE_BINDING_CUBE_MAP, "GL_TEXTURE_BINDING_CUBE_MAP"},
7231       {GL_TEXTURE_FILTERING_HINT_CHROMIUM,
7232        "GL_TEXTURE_FILTERING_HINT_CHROMIUM"},
7233       {GL_UNPACK_ALIGNMENT, "GL_UNPACK_ALIGNMENT"},
7234       {GL_BIND_GENERATES_RESOURCE_CHROMIUM,
7235        "GL_BIND_GENERATES_RESOURCE_CHROMIUM"},
7236       {GL_VERTEX_ARRAY_BINDING_OES, "GL_VERTEX_ARRAY_BINDING_OES"},
7237       {GL_VIEWPORT, "GL_VIEWPORT"},
7238       {GL_BLEND_COLOR, "GL_BLEND_COLOR"},
7239       {GL_BLEND_EQUATION_RGB, "GL_BLEND_EQUATION_RGB"},
7240       {GL_BLEND_EQUATION_ALPHA, "GL_BLEND_EQUATION_ALPHA"},
7241       {GL_BLEND_SRC_RGB, "GL_BLEND_SRC_RGB"},
7242       {GL_BLEND_DST_RGB, "GL_BLEND_DST_RGB"},
7243       {GL_BLEND_SRC_ALPHA, "GL_BLEND_SRC_ALPHA"},
7244       {GL_BLEND_DST_ALPHA, "GL_BLEND_DST_ALPHA"},
7245       {GL_COLOR_CLEAR_VALUE, "GL_COLOR_CLEAR_VALUE"},
7246       {GL_DEPTH_CLEAR_VALUE, "GL_DEPTH_CLEAR_VALUE"},
7247       {GL_STENCIL_CLEAR_VALUE, "GL_STENCIL_CLEAR_VALUE"},
7248       {GL_COLOR_WRITEMASK, "GL_COLOR_WRITEMASK"},
7249       {GL_CULL_FACE_MODE, "GL_CULL_FACE_MODE"},
7250       {GL_DEPTH_FUNC, "GL_DEPTH_FUNC"},
7251       {GL_DEPTH_WRITEMASK, "GL_DEPTH_WRITEMASK"},
7252       {GL_FRONT_FACE, "GL_FRONT_FACE"},
7253       {GL_LINE_WIDTH, "GL_LINE_WIDTH"},
7254       {GL_POLYGON_OFFSET_FACTOR, "GL_POLYGON_OFFSET_FACTOR"},
7255       {GL_POLYGON_OFFSET_UNITS, "GL_POLYGON_OFFSET_UNITS"},
7256       {GL_STENCIL_FUNC, "GL_STENCIL_FUNC"},
7257       {GL_STENCIL_REF, "GL_STENCIL_REF"},
7258       {GL_STENCIL_VALUE_MASK, "GL_STENCIL_VALUE_MASK"},
7259       {GL_STENCIL_BACK_FUNC, "GL_STENCIL_BACK_FUNC"},
7260       {GL_STENCIL_BACK_REF, "GL_STENCIL_BACK_REF"},
7261       {GL_STENCIL_BACK_VALUE_MASK, "GL_STENCIL_BACK_VALUE_MASK"},
7262       {GL_STENCIL_WRITEMASK, "GL_STENCIL_WRITEMASK"},
7263       {GL_STENCIL_BACK_WRITEMASK, "GL_STENCIL_BACK_WRITEMASK"},
7264       {GL_STENCIL_FAIL, "GL_STENCIL_FAIL"},
7265       {GL_STENCIL_PASS_DEPTH_FAIL, "GL_STENCIL_PASS_DEPTH_FAIL"},
7266       {GL_STENCIL_PASS_DEPTH_PASS, "GL_STENCIL_PASS_DEPTH_PASS"},
7267       {GL_STENCIL_BACK_FAIL, "GL_STENCIL_BACK_FAIL"},
7268       {GL_STENCIL_BACK_PASS_DEPTH_FAIL, "GL_STENCIL_BACK_PASS_DEPTH_FAIL"},
7269       {GL_STENCIL_BACK_PASS_DEPTH_PASS, "GL_STENCIL_BACK_PASS_DEPTH_PASS"},
7270       {GL_BLEND, "GL_BLEND"},
7271       {GL_CULL_FACE, "GL_CULL_FACE"},
7272       {GL_DEPTH_TEST, "GL_DEPTH_TEST"},
7273       {GL_DITHER, "GL_DITHER"},
7274       {GL_POLYGON_OFFSET_FILL, "GL_POLYGON_OFFSET_FILL"},
7275       {GL_SAMPLE_ALPHA_TO_COVERAGE, "GL_SAMPLE_ALPHA_TO_COVERAGE"},
7276       {GL_SAMPLE_COVERAGE, "GL_SAMPLE_COVERAGE"},
7277       {GL_SCISSOR_TEST, "GL_SCISSOR_TEST"},
7278       {GL_STENCIL_TEST, "GL_STENCIL_TEST"},
7279       {GL_RASTERIZER_DISCARD, "GL_RASTERIZER_DISCARD"},
7280       {GL_PRIMITIVE_RESTART_FIXED_INDEX, "GL_PRIMITIVE_RESTART_FIXED_INDEX"},
7281       {GL_COPY_READ_BUFFER_BINDING, "GL_COPY_READ_BUFFER_BINDING"},
7282       {GL_COPY_WRITE_BUFFER_BINDING, "GL_COPY_WRITE_BUFFER_BINDING"},
7283       {GL_DRAW_BUFFER0, "GL_DRAW_BUFFER0"},
7284       {GL_DRAW_BUFFER1, "GL_DRAW_BUFFER1"},
7285       {GL_DRAW_BUFFER2, "GL_DRAW_BUFFER2"},
7286       {GL_DRAW_BUFFER3, "GL_DRAW_BUFFER3"},
7287       {GL_DRAW_BUFFER4, "GL_DRAW_BUFFER4"},
7288       {GL_DRAW_BUFFER5, "GL_DRAW_BUFFER5"},
7289       {GL_DRAW_BUFFER6, "GL_DRAW_BUFFER6"},
7290       {GL_DRAW_BUFFER7, "GL_DRAW_BUFFER7"},
7291       {GL_DRAW_BUFFER8, "GL_DRAW_BUFFER8"},
7292       {GL_DRAW_BUFFER9, "GL_DRAW_BUFFER9"},
7293       {GL_DRAW_BUFFER10, "GL_DRAW_BUFFER10"},
7294       {GL_DRAW_BUFFER11, "GL_DRAW_BUFFER11"},
7295       {GL_DRAW_BUFFER12, "GL_DRAW_BUFFER12"},
7296       {GL_DRAW_BUFFER13, "GL_DRAW_BUFFER13"},
7297       {GL_DRAW_BUFFER14, "GL_DRAW_BUFFER14"},
7298       {GL_DRAW_BUFFER15, "GL_DRAW_BUFFER15"},
7299       {GL_DRAW_FRAMEBUFFER_BINDING, "GL_DRAW_FRAMEBUFFER_BINDING"},
7300       {GL_FRAGMENT_SHADER_DERIVATIVE_HINT,
7301        "GL_FRAGMENT_SHADER_DERIVATIVE_HINT"},
7302       {GL_GPU_DISJOINT_EXT, "GL_GPU_DISJOINT_EXT"},
7303       {GL_MAJOR_VERSION, "GL_MAJOR_VERSION"},
7304       {GL_MAX_3D_TEXTURE_SIZE, "GL_MAX_3D_TEXTURE_SIZE"},
7305       {GL_MAX_ARRAY_TEXTURE_LAYERS, "GL_MAX_ARRAY_TEXTURE_LAYERS"},
7306       {GL_MAX_COLOR_ATTACHMENTS, "GL_MAX_COLOR_ATTACHMENTS"},
7307       {GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS,
7308        "GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS"},
7309       {GL_MAX_COMBINED_UNIFORM_BLOCKS, "GL_MAX_COMBINED_UNIFORM_BLOCKS"},
7310       {GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS,
7311        "GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS"},
7312       {GL_MAX_DRAW_BUFFERS, "GL_MAX_DRAW_BUFFERS"},
7313       {GL_MAX_ELEMENT_INDEX, "GL_MAX_ELEMENT_INDEX"},
7314       {GL_MAX_ELEMENTS_INDICES, "GL_MAX_ELEMENTS_INDICES"},
7315       {GL_MAX_ELEMENTS_VERTICES, "GL_MAX_ELEMENTS_VERTICES"},
7316       {GL_MAX_FRAGMENT_INPUT_COMPONENTS, "GL_MAX_FRAGMENT_INPUT_COMPONENTS"},
7317       {GL_MAX_FRAGMENT_UNIFORM_BLOCKS, "GL_MAX_FRAGMENT_UNIFORM_BLOCKS"},
7318       {GL_MAX_FRAGMENT_UNIFORM_COMPONENTS,
7319        "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS"},
7320       {GL_MAX_PROGRAM_TEXEL_OFFSET, "GL_MAX_PROGRAM_TEXEL_OFFSET"},
7321       {GL_MAX_SAMPLES, "GL_MAX_SAMPLES"},
7322       {GL_MAX_SERVER_WAIT_TIMEOUT, "GL_MAX_SERVER_WAIT_TIMEOUT"},
7323       {GL_MAX_TEXTURE_LOD_BIAS, "GL_MAX_TEXTURE_LOD_BIAS"},
7324       {GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS,
7325        "GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"},
7326       {GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS,
7327        "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"},
7328       {GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS,
7329        "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"},
7330       {GL_MAX_UNIFORM_BLOCK_SIZE, "GL_MAX_UNIFORM_BLOCK_SIZE"},
7331       {GL_MAX_UNIFORM_BUFFER_BINDINGS, "GL_MAX_UNIFORM_BUFFER_BINDINGS"},
7332       {GL_MAX_VARYING_COMPONENTS, "GL_MAX_VARYING_COMPONENTS"},
7333       {GL_MAX_VERTEX_OUTPUT_COMPONENTS, "GL_MAX_VERTEX_OUTPUT_COMPONENTS"},
7334       {GL_MAX_VERTEX_UNIFORM_BLOCKS, "GL_MAX_VERTEX_UNIFORM_BLOCKS"},
7335       {GL_MAX_VERTEX_UNIFORM_COMPONENTS, "GL_MAX_VERTEX_UNIFORM_COMPONENTS"},
7336       {GL_MIN_PROGRAM_TEXEL_OFFSET, "GL_MIN_PROGRAM_TEXEL_OFFSET"},
7337       {GL_MINOR_VERSION, "GL_MINOR_VERSION"},
7338       {GL_NUM_EXTENSIONS, "GL_NUM_EXTENSIONS"},
7339       {GL_NUM_PROGRAM_BINARY_FORMATS, "GL_NUM_PROGRAM_BINARY_FORMATS"},
7340       {GL_PACK_ROW_LENGTH, "GL_PACK_ROW_LENGTH"},
7341       {GL_PACK_SKIP_PIXELS, "GL_PACK_SKIP_PIXELS"},
7342       {GL_PACK_SKIP_ROWS, "GL_PACK_SKIP_ROWS"},
7343       {GL_PIXEL_PACK_BUFFER_BINDING, "GL_PIXEL_PACK_BUFFER_BINDING"},
7344       {GL_PIXEL_UNPACK_BUFFER_BINDING, "GL_PIXEL_UNPACK_BUFFER_BINDING"},
7345       {GL_PROGRAM_BINARY_FORMATS, "GL_PROGRAM_BINARY_FORMATS"},
7346       {GL_READ_BUFFER, "GL_READ_BUFFER"},
7347       {GL_READ_FRAMEBUFFER_BINDING, "GL_READ_FRAMEBUFFER_BINDING"},
7348       {GL_SAMPLER_BINDING, "GL_SAMPLER_BINDING"},
7349       {GL_TIMESTAMP_EXT, "GL_TIMESTAMP_EXT"},
7350       {GL_TEXTURE_BINDING_2D_ARRAY, "GL_TEXTURE_BINDING_2D_ARRAY"},
7351       {GL_TEXTURE_BINDING_3D, "GL_TEXTURE_BINDING_3D"},
7352       {GL_TRANSFORM_FEEDBACK_BINDING, "GL_TRANSFORM_FEEDBACK_BINDING"},
7353       {GL_TRANSFORM_FEEDBACK_ACTIVE, "GL_TRANSFORM_FEEDBACK_ACTIVE"},
7354       {GL_TRANSFORM_FEEDBACK_BUFFER_BINDING,
7355        "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING"},
7356       {GL_TRANSFORM_FEEDBACK_PAUSED, "GL_TRANSFORM_FEEDBACK_PAUSED"},
7357       {GL_UNIFORM_BUFFER_BINDING, "GL_UNIFORM_BUFFER_BINDING"},
7358       {GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT,
7359        "GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT"},
7360       {GL_UNPACK_IMAGE_HEIGHT, "GL_UNPACK_IMAGE_HEIGHT"},
7361       {GL_UNPACK_ROW_LENGTH, "GL_UNPACK_ROW_LENGTH"},
7362       {GL_UNPACK_SKIP_IMAGES, "GL_UNPACK_SKIP_IMAGES"},
7363       {GL_UNPACK_SKIP_PIXELS, "GL_UNPACK_SKIP_PIXELS"},
7364       {GL_UNPACK_SKIP_ROWS, "GL_UNPACK_SKIP_ROWS"},
7365   };
7366   return GLES2Util::GetQualifiedEnumString(string_table,
7367                                            base::size(string_table), value);
7368 }
7369 
GetStringGetMaxIndexType(uint32_t value)7370 std::string GLES2Util::GetStringGetMaxIndexType(uint32_t value) {
7371   static const EnumToString string_table[] = {
7372       {GL_UNSIGNED_BYTE, "GL_UNSIGNED_BYTE"},
7373       {GL_UNSIGNED_SHORT, "GL_UNSIGNED_SHORT"},
7374       {GL_UNSIGNED_INT, "GL_UNSIGNED_INT"},
7375   };
7376   return GLES2Util::GetQualifiedEnumString(string_table,
7377                                            base::size(string_table), value);
7378 }
7379 
GetStringGetTexParamTarget(uint32_t value)7380 std::string GLES2Util::GetStringGetTexParamTarget(uint32_t value) {
7381   static const EnumToString string_table[] = {
7382       {GL_TEXTURE_2D, "GL_TEXTURE_2D"},
7383       {GL_TEXTURE_CUBE_MAP, "GL_TEXTURE_CUBE_MAP"},
7384       {GL_TEXTURE_2D_ARRAY, "GL_TEXTURE_2D_ARRAY"},
7385       {GL_TEXTURE_3D, "GL_TEXTURE_3D"},
7386   };
7387   return GLES2Util::GetQualifiedEnumString(string_table,
7388                                            base::size(string_table), value);
7389 }
7390 
GetStringHintMode(uint32_t value)7391 std::string GLES2Util::GetStringHintMode(uint32_t value) {
7392   static const EnumToString string_table[] = {
7393       {GL_FASTEST, "GL_FASTEST"},
7394       {GL_NICEST, "GL_NICEST"},
7395       {GL_DONT_CARE, "GL_DONT_CARE"},
7396   };
7397   return GLES2Util::GetQualifiedEnumString(string_table,
7398                                            base::size(string_table), value);
7399 }
7400 
GetStringHintTarget(uint32_t value)7401 std::string GLES2Util::GetStringHintTarget(uint32_t value) {
7402   static const EnumToString string_table[] = {
7403       {GL_GENERATE_MIPMAP_HINT, "GL_GENERATE_MIPMAP_HINT"},
7404       {GL_TEXTURE_FILTERING_HINT_CHROMIUM,
7405        "GL_TEXTURE_FILTERING_HINT_CHROMIUM"},
7406       {GL_FRAGMENT_SHADER_DERIVATIVE_HINT,
7407        "GL_FRAGMENT_SHADER_DERIVATIVE_HINT"},
7408   };
7409   return GLES2Util::GetQualifiedEnumString(string_table,
7410                                            base::size(string_table), value);
7411 }
7412 
GetStringImageInternalFormat(uint32_t value)7413 std::string GLES2Util::GetStringImageInternalFormat(uint32_t value) {
7414   static const EnumToString string_table[] = {
7415       {GL_RGB, "GL_RGB"},
7416       {GL_RGB_YCRCB_420_CHROMIUM, "GL_RGB_YCRCB_420_CHROMIUM"},
7417       {GL_RGB_YCBCR_422_CHROMIUM, "GL_RGB_YCBCR_422_CHROMIUM"},
7418       {GL_RGB_YCBCR_420V_CHROMIUM, "GL_RGB_YCBCR_420V_CHROMIUM"},
7419       {GL_RGB_YCBCR_P010_CHROMIUM, "GL_RGB_YCBCR_P010_CHROMIUM"},
7420       {GL_RGBA, "GL_RGBA"},
7421   };
7422   return GLES2Util::GetQualifiedEnumString(string_table,
7423                                            base::size(string_table), value);
7424 }
7425 
GetStringIndexType(uint32_t value)7426 std::string GLES2Util::GetStringIndexType(uint32_t value) {
7427   static const EnumToString string_table[] = {
7428       {GL_UNSIGNED_BYTE, "GL_UNSIGNED_BYTE"},
7429       {GL_UNSIGNED_SHORT, "GL_UNSIGNED_SHORT"},
7430       {GL_UNSIGNED_INT, "GL_UNSIGNED_INT"},
7431   };
7432   return GLES2Util::GetQualifiedEnumString(string_table,
7433                                            base::size(string_table), value);
7434 }
7435 
GetStringIndexedBufferTarget(uint32_t value)7436 std::string GLES2Util::GetStringIndexedBufferTarget(uint32_t value) {
7437   static const EnumToString string_table[] = {
7438       {GL_TRANSFORM_FEEDBACK_BUFFER, "GL_TRANSFORM_FEEDBACK_BUFFER"},
7439       {GL_UNIFORM_BUFFER, "GL_UNIFORM_BUFFER"},
7440   };
7441   return GLES2Util::GetQualifiedEnumString(string_table,
7442                                            base::size(string_table), value);
7443 }
7444 
GetStringIndexedGLState(uint32_t value)7445 std::string GLES2Util::GetStringIndexedGLState(uint32_t value) {
7446   static const EnumToString string_table[] = {
7447       {GL_TRANSFORM_FEEDBACK_BUFFER_BINDING,
7448        "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING"},
7449       {GL_TRANSFORM_FEEDBACK_BUFFER_SIZE, "GL_TRANSFORM_FEEDBACK_BUFFER_SIZE"},
7450       {GL_TRANSFORM_FEEDBACK_BUFFER_START,
7451        "GL_TRANSFORM_FEEDBACK_BUFFER_START"},
7452       {GL_UNIFORM_BUFFER_BINDING, "GL_UNIFORM_BUFFER_BINDING"},
7453       {GL_UNIFORM_BUFFER_SIZE, "GL_UNIFORM_BUFFER_SIZE"},
7454       {GL_UNIFORM_BUFFER_START, "GL_UNIFORM_BUFFER_START"},
7455       {GL_BLEND_EQUATION_RGB, "GL_BLEND_EQUATION_RGB"},
7456       {GL_BLEND_EQUATION_ALPHA, "GL_BLEND_EQUATION_ALPHA"},
7457       {GL_BLEND_SRC_RGB, "GL_BLEND_SRC_RGB"},
7458       {GL_BLEND_SRC_ALPHA, "GL_BLEND_SRC_ALPHA"},
7459       {GL_BLEND_DST_RGB, "GL_BLEND_DST_RGB"},
7460       {GL_BLEND_DST_ALPHA, "GL_BLEND_DST_ALPHA"},
7461       {GL_COLOR_WRITEMASK, "GL_COLOR_WRITEMASK"},
7462   };
7463   return GLES2Util::GetQualifiedEnumString(string_table,
7464                                            base::size(string_table), value);
7465 }
7466 
GetStringIndexedStringType(uint32_t value)7467 std::string GLES2Util::GetStringIndexedStringType(uint32_t value) {
7468   static const EnumToString string_table[] = {
7469       {GL_EXTENSIONS, "GL_EXTENSIONS"},
7470   };
7471   return GLES2Util::GetQualifiedEnumString(string_table,
7472                                            base::size(string_table), value);
7473 }
7474 
GetStringInternalFormatParameter(uint32_t value)7475 std::string GLES2Util::GetStringInternalFormatParameter(uint32_t value) {
7476   static const EnumToString string_table[] = {
7477       {GL_NUM_SAMPLE_COUNTS, "GL_NUM_SAMPLE_COUNTS"},
7478       {GL_SAMPLES, "GL_SAMPLES"},
7479   };
7480   return GLES2Util::GetQualifiedEnumString(string_table,
7481                                            base::size(string_table), value);
7482 }
7483 
GetStringMapBufferAccess(uint32_t value)7484 std::string GLES2Util::GetStringMapBufferAccess(uint32_t value) {
7485   static const EnumToString string_table[] = {
7486       {GL_MAP_READ_BIT, "GL_MAP_READ_BIT"},
7487       {GL_MAP_WRITE_BIT, "GL_MAP_WRITE_BIT"},
7488       {GL_MAP_INVALIDATE_RANGE_BIT, "GL_MAP_INVALIDATE_RANGE_BIT"},
7489       {GL_MAP_INVALIDATE_BUFFER_BIT, "GL_MAP_INVALIDATE_BUFFER_BIT"},
7490       {GL_MAP_FLUSH_EXPLICIT_BIT, "GL_MAP_FLUSH_EXPLICIT_BIT"},
7491       {GL_MAP_UNSYNCHRONIZED_BIT, "GL_MAP_UNSYNCHRONIZED_BIT"},
7492   };
7493   return GLES2Util::GetQualifiedEnumString(string_table,
7494                                            base::size(string_table), value);
7495 }
7496 
GetStringPixelStore(uint32_t value)7497 std::string GLES2Util::GetStringPixelStore(uint32_t value) {
7498   static const EnumToString string_table[] = {
7499       {GL_PACK_ALIGNMENT, "GL_PACK_ALIGNMENT"},
7500       {GL_UNPACK_ALIGNMENT, "GL_UNPACK_ALIGNMENT"},
7501       {GL_PACK_ROW_LENGTH, "GL_PACK_ROW_LENGTH"},
7502       {GL_PACK_SKIP_PIXELS, "GL_PACK_SKIP_PIXELS"},
7503       {GL_PACK_SKIP_ROWS, "GL_PACK_SKIP_ROWS"},
7504       {GL_UNPACK_ROW_LENGTH, "GL_UNPACK_ROW_LENGTH"},
7505       {GL_UNPACK_IMAGE_HEIGHT, "GL_UNPACK_IMAGE_HEIGHT"},
7506       {GL_UNPACK_SKIP_PIXELS, "GL_UNPACK_SKIP_PIXELS"},
7507       {GL_UNPACK_SKIP_ROWS, "GL_UNPACK_SKIP_ROWS"},
7508       {GL_UNPACK_SKIP_IMAGES, "GL_UNPACK_SKIP_IMAGES"},
7509   };
7510   return GLES2Util::GetQualifiedEnumString(string_table,
7511                                            base::size(string_table), value);
7512 }
7513 
GetStringPixelType(uint32_t value)7514 std::string GLES2Util::GetStringPixelType(uint32_t value) {
7515   static const EnumToString string_table[] = {
7516       {GL_UNSIGNED_BYTE, "GL_UNSIGNED_BYTE"},
7517       {GL_UNSIGNED_SHORT_5_6_5, "GL_UNSIGNED_SHORT_5_6_5"},
7518       {GL_UNSIGNED_SHORT_4_4_4_4, "GL_UNSIGNED_SHORT_4_4_4_4"},
7519       {GL_UNSIGNED_SHORT_5_5_5_1, "GL_UNSIGNED_SHORT_5_5_5_1"},
7520       {GL_BYTE, "GL_BYTE"},
7521       {GL_UNSIGNED_SHORT, "GL_UNSIGNED_SHORT"},
7522       {GL_SHORT, "GL_SHORT"},
7523       {GL_UNSIGNED_INT, "GL_UNSIGNED_INT"},
7524       {GL_INT, "GL_INT"},
7525       {GL_HALF_FLOAT, "GL_HALF_FLOAT"},
7526       {GL_FLOAT, "GL_FLOAT"},
7527       {GL_UNSIGNED_INT_2_10_10_10_REV, "GL_UNSIGNED_INT_2_10_10_10_REV"},
7528       {GL_UNSIGNED_INT_10F_11F_11F_REV, "GL_UNSIGNED_INT_10F_11F_11F_REV"},
7529       {GL_UNSIGNED_INT_5_9_9_9_REV, "GL_UNSIGNED_INT_5_9_9_9_REV"},
7530       {GL_UNSIGNED_INT_24_8, "GL_UNSIGNED_INT_24_8"},
7531       {GL_FLOAT_32_UNSIGNED_INT_24_8_REV, "GL_FLOAT_32_UNSIGNED_INT_24_8_REV"},
7532   };
7533   return GLES2Util::GetQualifiedEnumString(string_table,
7534                                            base::size(string_table), value);
7535 }
7536 
GetStringProgramParameter(uint32_t value)7537 std::string GLES2Util::GetStringProgramParameter(uint32_t value) {
7538   static const EnumToString string_table[] = {
7539       {GL_DELETE_STATUS, "GL_DELETE_STATUS"},
7540       {GL_LINK_STATUS, "GL_LINK_STATUS"},
7541       {GL_VALIDATE_STATUS, "GL_VALIDATE_STATUS"},
7542       {GL_INFO_LOG_LENGTH, "GL_INFO_LOG_LENGTH"},
7543       {GL_ATTACHED_SHADERS, "GL_ATTACHED_SHADERS"},
7544       {GL_ACTIVE_ATTRIBUTES, "GL_ACTIVE_ATTRIBUTES"},
7545       {GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, "GL_ACTIVE_ATTRIBUTE_MAX_LENGTH"},
7546       {GL_ACTIVE_UNIFORMS, "GL_ACTIVE_UNIFORMS"},
7547       {GL_ACTIVE_UNIFORM_MAX_LENGTH, "GL_ACTIVE_UNIFORM_MAX_LENGTH"},
7548       {GL_ACTIVE_UNIFORM_BLOCKS, "GL_ACTIVE_UNIFORM_BLOCKS"},
7549       {GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH,
7550        "GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH"},
7551       {GL_TRANSFORM_FEEDBACK_BUFFER_MODE, "GL_TRANSFORM_FEEDBACK_BUFFER_MODE"},
7552       {GL_TRANSFORM_FEEDBACK_VARYINGS, "GL_TRANSFORM_FEEDBACK_VARYINGS"},
7553       {GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH,
7554        "GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"},
7555   };
7556   return GLES2Util::GetQualifiedEnumString(string_table,
7557                                            base::size(string_table), value);
7558 }
7559 
GetStringQueryObjectParameter(uint32_t value)7560 std::string GLES2Util::GetStringQueryObjectParameter(uint32_t value) {
7561   static const EnumToString string_table[] = {
7562       {GL_QUERY_RESULT_EXT, "GL_QUERY_RESULT_EXT"},
7563       {GL_QUERY_RESULT_AVAILABLE_EXT, "GL_QUERY_RESULT_AVAILABLE_EXT"},
7564       {GL_QUERY_RESULT_AVAILABLE_NO_FLUSH_CHROMIUM_EXT,
7565        "GL_QUERY_RESULT_AVAILABLE_NO_FLUSH_CHROMIUM_EXT"},
7566   };
7567   return GLES2Util::GetQualifiedEnumString(string_table,
7568                                            base::size(string_table), value);
7569 }
7570 
GetStringQueryParameter(uint32_t value)7571 std::string GLES2Util::GetStringQueryParameter(uint32_t value) {
7572   static const EnumToString string_table[] = {
7573       {GL_CURRENT_QUERY_EXT, "GL_CURRENT_QUERY_EXT"},
7574   };
7575   return GLES2Util::GetQualifiedEnumString(string_table,
7576                                            base::size(string_table), value);
7577 }
7578 
GetStringQueryTarget(uint32_t value)7579 std::string GLES2Util::GetStringQueryTarget(uint32_t value) {
7580   static const EnumToString string_table[] = {
7581       {GL_SAMPLES_PASSED_ARB, "GL_SAMPLES_PASSED_ARB"},
7582       {GL_ANY_SAMPLES_PASSED_EXT, "GL_ANY_SAMPLES_PASSED_EXT"},
7583       {GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT,
7584        "GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT"},
7585       {GL_COMMANDS_ISSUED_CHROMIUM, "GL_COMMANDS_ISSUED_CHROMIUM"},
7586       {GL_COMMANDS_ISSUED_TIMESTAMP_CHROMIUM,
7587        "GL_COMMANDS_ISSUED_TIMESTAMP_CHROMIUM"},
7588       {GL_LATENCY_QUERY_CHROMIUM, "GL_LATENCY_QUERY_CHROMIUM"},
7589       {GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM,
7590        "GL_ASYNC_PIXEL_PACK_COMPLETED_CHROMIUM"},
7591       {GL_COMMANDS_COMPLETED_CHROMIUM, "GL_COMMANDS_COMPLETED_CHROMIUM"},
7592       {GL_READBACK_SHADOW_COPIES_UPDATED_CHROMIUM,
7593        "GL_READBACK_SHADOW_COPIES_UPDATED_CHROMIUM"},
7594       {GL_PROGRAM_COMPLETION_QUERY_CHROMIUM,
7595        "GL_PROGRAM_COMPLETION_QUERY_CHROMIUM"},
7596   };
7597   return GLES2Util::GetQualifiedEnumString(string_table,
7598                                            base::size(string_table), value);
7599 }
7600 
GetStringReadBuffer(uint32_t value)7601 std::string GLES2Util::GetStringReadBuffer(uint32_t value) {
7602   static const EnumToString string_table[] = {
7603       {GL_NONE, "GL_NONE"},
7604       {GL_BACK, "GL_BACK"},
7605       {GL_COLOR_ATTACHMENT0, "GL_COLOR_ATTACHMENT0"},
7606       {GL_COLOR_ATTACHMENT1, "GL_COLOR_ATTACHMENT1"},
7607       {GL_COLOR_ATTACHMENT2, "GL_COLOR_ATTACHMENT2"},
7608       {GL_COLOR_ATTACHMENT3, "GL_COLOR_ATTACHMENT3"},
7609       {GL_COLOR_ATTACHMENT4, "GL_COLOR_ATTACHMENT4"},
7610       {GL_COLOR_ATTACHMENT5, "GL_COLOR_ATTACHMENT5"},
7611       {GL_COLOR_ATTACHMENT6, "GL_COLOR_ATTACHMENT6"},
7612       {GL_COLOR_ATTACHMENT7, "GL_COLOR_ATTACHMENT7"},
7613       {GL_COLOR_ATTACHMENT8, "GL_COLOR_ATTACHMENT8"},
7614       {GL_COLOR_ATTACHMENT9, "GL_COLOR_ATTACHMENT9"},
7615       {GL_COLOR_ATTACHMENT10, "GL_COLOR_ATTACHMENT10"},
7616       {GL_COLOR_ATTACHMENT11, "GL_COLOR_ATTACHMENT11"},
7617       {GL_COLOR_ATTACHMENT12, "GL_COLOR_ATTACHMENT12"},
7618       {GL_COLOR_ATTACHMENT13, "GL_COLOR_ATTACHMENT13"},
7619       {GL_COLOR_ATTACHMENT14, "GL_COLOR_ATTACHMENT14"},
7620       {GL_COLOR_ATTACHMENT15, "GL_COLOR_ATTACHMENT15"},
7621   };
7622   return GLES2Util::GetQualifiedEnumString(string_table,
7623                                            base::size(string_table), value);
7624 }
7625 
GetStringReadPixelFormat(uint32_t value)7626 std::string GLES2Util::GetStringReadPixelFormat(uint32_t value) {
7627   static const EnumToString string_table[] = {
7628       {GL_ALPHA, "GL_ALPHA"},
7629       {GL_RGB, "GL_RGB"},
7630       {GL_RGBA, "GL_RGBA"},
7631       {GL_RED, "GL_RED"},
7632       {GL_RED_INTEGER, "GL_RED_INTEGER"},
7633       {GL_RG, "GL_RG"},
7634       {GL_RG_INTEGER, "GL_RG_INTEGER"},
7635       {GL_RGB_INTEGER, "GL_RGB_INTEGER"},
7636       {GL_RGBA_INTEGER, "GL_RGBA_INTEGER"},
7637   };
7638   return GLES2Util::GetQualifiedEnumString(string_table,
7639                                            base::size(string_table), value);
7640 }
7641 
GetStringReadPixelType(uint32_t value)7642 std::string GLES2Util::GetStringReadPixelType(uint32_t value) {
7643   static const EnumToString string_table[] = {
7644       {GL_UNSIGNED_BYTE, "GL_UNSIGNED_BYTE"},
7645       {GL_UNSIGNED_SHORT_5_6_5, "GL_UNSIGNED_SHORT_5_6_5"},
7646       {GL_UNSIGNED_SHORT_4_4_4_4, "GL_UNSIGNED_SHORT_4_4_4_4"},
7647       {GL_UNSIGNED_SHORT_5_5_5_1, "GL_UNSIGNED_SHORT_5_5_5_1"},
7648       {GL_BYTE, "GL_BYTE"},
7649       {GL_UNSIGNED_SHORT, "GL_UNSIGNED_SHORT"},
7650       {GL_SHORT, "GL_SHORT"},
7651       {GL_UNSIGNED_INT, "GL_UNSIGNED_INT"},
7652       {GL_INT, "GL_INT"},
7653       {GL_HALF_FLOAT, "GL_HALF_FLOAT"},
7654       {GL_FLOAT, "GL_FLOAT"},
7655       {GL_UNSIGNED_INT_2_10_10_10_REV, "GL_UNSIGNED_INT_2_10_10_10_REV"},
7656   };
7657   return GLES2Util::GetQualifiedEnumString(string_table,
7658                                            base::size(string_table), value);
7659 }
7660 
GetStringRenderBufferFormat(uint32_t value)7661 std::string GLES2Util::GetStringRenderBufferFormat(uint32_t value) {
7662   static const EnumToString string_table[] = {
7663       {GL_RGBA4, "GL_RGBA4"},
7664       {GL_RGB565, "GL_RGB565"},
7665       {GL_RGB5_A1, "GL_RGB5_A1"},
7666       {GL_DEPTH_COMPONENT16, "GL_DEPTH_COMPONENT16"},
7667       {GL_STENCIL_INDEX8, "GL_STENCIL_INDEX8"},
7668       {GL_R8, "GL_R8"},
7669       {GL_R8UI, "GL_R8UI"},
7670       {GL_R8I, "GL_R8I"},
7671       {GL_R16UI, "GL_R16UI"},
7672       {GL_R16I, "GL_R16I"},
7673       {GL_R32UI, "GL_R32UI"},
7674       {GL_R32I, "GL_R32I"},
7675       {GL_RG8, "GL_RG8"},
7676       {GL_RG8UI, "GL_RG8UI"},
7677       {GL_RG8I, "GL_RG8I"},
7678       {GL_RG16UI, "GL_RG16UI"},
7679       {GL_RG16I, "GL_RG16I"},
7680       {GL_RG32UI, "GL_RG32UI"},
7681       {GL_RG32I, "GL_RG32I"},
7682       {GL_RGB8, "GL_RGB8"},
7683       {GL_RGBA8, "GL_RGBA8"},
7684       {GL_SRGB8_ALPHA8, "GL_SRGB8_ALPHA8"},
7685       {GL_RGB10_A2, "GL_RGB10_A2"},
7686       {GL_RGBA8UI, "GL_RGBA8UI"},
7687       {GL_RGBA8I, "GL_RGBA8I"},
7688       {GL_RGB10_A2UI, "GL_RGB10_A2UI"},
7689       {GL_RGBA16UI, "GL_RGBA16UI"},
7690       {GL_RGBA16I, "GL_RGBA16I"},
7691       {GL_RGBA32UI, "GL_RGBA32UI"},
7692       {GL_RGBA32I, "GL_RGBA32I"},
7693       {GL_DEPTH_COMPONENT24, "GL_DEPTH_COMPONENT24"},
7694       {GL_DEPTH_COMPONENT32F, "GL_DEPTH_COMPONENT32F"},
7695       {GL_DEPTH24_STENCIL8, "GL_DEPTH24_STENCIL8"},
7696       {GL_DEPTH32F_STENCIL8, "GL_DEPTH32F_STENCIL8"},
7697   };
7698   return GLES2Util::GetQualifiedEnumString(string_table,
7699                                            base::size(string_table), value);
7700 }
7701 
GetStringRenderBufferParameter(uint32_t value)7702 std::string GLES2Util::GetStringRenderBufferParameter(uint32_t value) {
7703   static const EnumToString string_table[] = {
7704       {GL_RENDERBUFFER_RED_SIZE, "GL_RENDERBUFFER_RED_SIZE"},
7705       {GL_RENDERBUFFER_GREEN_SIZE, "GL_RENDERBUFFER_GREEN_SIZE"},
7706       {GL_RENDERBUFFER_BLUE_SIZE, "GL_RENDERBUFFER_BLUE_SIZE"},
7707       {GL_RENDERBUFFER_ALPHA_SIZE, "GL_RENDERBUFFER_ALPHA_SIZE"},
7708       {GL_RENDERBUFFER_DEPTH_SIZE, "GL_RENDERBUFFER_DEPTH_SIZE"},
7709       {GL_RENDERBUFFER_STENCIL_SIZE, "GL_RENDERBUFFER_STENCIL_SIZE"},
7710       {GL_RENDERBUFFER_WIDTH, "GL_RENDERBUFFER_WIDTH"},
7711       {GL_RENDERBUFFER_HEIGHT, "GL_RENDERBUFFER_HEIGHT"},
7712       {GL_RENDERBUFFER_INTERNAL_FORMAT, "GL_RENDERBUFFER_INTERNAL_FORMAT"},
7713       {GL_RENDERBUFFER_SAMPLES, "GL_RENDERBUFFER_SAMPLES"},
7714   };
7715   return GLES2Util::GetQualifiedEnumString(string_table,
7716                                            base::size(string_table), value);
7717 }
7718 
GetStringRenderBufferTarget(uint32_t value)7719 std::string GLES2Util::GetStringRenderBufferTarget(uint32_t value) {
7720   static const EnumToString string_table[] = {
7721       {GL_RENDERBUFFER, "GL_RENDERBUFFER"},
7722   };
7723   return GLES2Util::GetQualifiedEnumString(string_table,
7724                                            base::size(string_table), value);
7725 }
7726 
GetStringResetStatus(uint32_t value)7727 std::string GLES2Util::GetStringResetStatus(uint32_t value) {
7728   static const EnumToString string_table[] = {
7729       {GL_GUILTY_CONTEXT_RESET_ARB, "GL_GUILTY_CONTEXT_RESET_ARB"},
7730       {GL_INNOCENT_CONTEXT_RESET_ARB, "GL_INNOCENT_CONTEXT_RESET_ARB"},
7731       {GL_UNKNOWN_CONTEXT_RESET_ARB, "GL_UNKNOWN_CONTEXT_RESET_ARB"},
7732   };
7733   return GLES2Util::GetQualifiedEnumString(string_table,
7734                                            base::size(string_table), value);
7735 }
7736 
GetStringSamplerParameter(uint32_t value)7737 std::string GLES2Util::GetStringSamplerParameter(uint32_t value) {
7738   static const EnumToString string_table[] = {
7739       {GL_TEXTURE_MAG_FILTER, "GL_TEXTURE_MAG_FILTER"},
7740       {GL_TEXTURE_MIN_FILTER, "GL_TEXTURE_MIN_FILTER"},
7741       {GL_TEXTURE_MIN_LOD, "GL_TEXTURE_MIN_LOD"},
7742       {GL_TEXTURE_MAX_LOD, "GL_TEXTURE_MAX_LOD"},
7743       {GL_TEXTURE_WRAP_S, "GL_TEXTURE_WRAP_S"},
7744       {GL_TEXTURE_WRAP_T, "GL_TEXTURE_WRAP_T"},
7745       {GL_TEXTURE_WRAP_R, "GL_TEXTURE_WRAP_R"},
7746       {GL_TEXTURE_COMPARE_MODE, "GL_TEXTURE_COMPARE_MODE"},
7747       {GL_TEXTURE_COMPARE_FUNC, "GL_TEXTURE_COMPARE_FUNC"},
7748   };
7749   return GLES2Util::GetQualifiedEnumString(string_table,
7750                                            base::size(string_table), value);
7751 }
7752 
GetStringShaderBinaryFormat(uint32_t value)7753 std::string GLES2Util::GetStringShaderBinaryFormat(uint32_t value) {
7754   return GLES2Util::GetQualifiedEnumString(nullptr, 0, value);
7755 }
7756 
GetStringShaderParameter(uint32_t value)7757 std::string GLES2Util::GetStringShaderParameter(uint32_t value) {
7758   static const EnumToString string_table[] = {
7759       {GL_SHADER_TYPE, "GL_SHADER_TYPE"},
7760       {GL_DELETE_STATUS, "GL_DELETE_STATUS"},
7761       {GL_COMPILE_STATUS, "GL_COMPILE_STATUS"},
7762       {GL_INFO_LOG_LENGTH, "GL_INFO_LOG_LENGTH"},
7763       {GL_SHADER_SOURCE_LENGTH, "GL_SHADER_SOURCE_LENGTH"},
7764       {GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE,
7765        "GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE"},
7766   };
7767   return GLES2Util::GetQualifiedEnumString(string_table,
7768                                            base::size(string_table), value);
7769 }
7770 
GetStringShaderPrecision(uint32_t value)7771 std::string GLES2Util::GetStringShaderPrecision(uint32_t value) {
7772   static const EnumToString string_table[] = {
7773       {GL_LOW_FLOAT, "GL_LOW_FLOAT"},   {GL_MEDIUM_FLOAT, "GL_MEDIUM_FLOAT"},
7774       {GL_HIGH_FLOAT, "GL_HIGH_FLOAT"}, {GL_LOW_INT, "GL_LOW_INT"},
7775       {GL_MEDIUM_INT, "GL_MEDIUM_INT"}, {GL_HIGH_INT, "GL_HIGH_INT"},
7776   };
7777   return GLES2Util::GetQualifiedEnumString(string_table,
7778                                            base::size(string_table), value);
7779 }
7780 
GetStringShaderType(uint32_t value)7781 std::string GLES2Util::GetStringShaderType(uint32_t value) {
7782   static const EnumToString string_table[] = {
7783       {GL_VERTEX_SHADER, "GL_VERTEX_SHADER"},
7784       {GL_FRAGMENT_SHADER, "GL_FRAGMENT_SHADER"},
7785   };
7786   return GLES2Util::GetQualifiedEnumString(string_table,
7787                                            base::size(string_table), value);
7788 }
7789 
GetStringSharedImageAccessMode(uint32_t value)7790 std::string GLES2Util::GetStringSharedImageAccessMode(uint32_t value) {
7791   static const EnumToString string_table[] = {
7792       {GL_SHARED_IMAGE_ACCESS_MODE_OVERLAY_CHROMIUM,
7793        "GL_SHARED_IMAGE_ACCESS_MODE_OVERLAY_CHROMIUM"},
7794       {GL_SHARED_IMAGE_ACCESS_MODE_READWRITE_CHROMIUM,
7795        "GL_SHARED_IMAGE_ACCESS_MODE_READWRITE_CHROMIUM"},
7796       {GL_SHARED_IMAGE_ACCESS_MODE_READ_CHROMIUM,
7797        "GL_SHARED_IMAGE_ACCESS_MODE_READ_CHROMIUM"},
7798   };
7799   return GLES2Util::GetQualifiedEnumString(string_table,
7800                                            base::size(string_table), value);
7801 }
7802 
GetStringSrcBlendFactor(uint32_t value)7803 std::string GLES2Util::GetStringSrcBlendFactor(uint32_t value) {
7804   static const EnumToString string_table[] = {
7805       {GL_ZERO, "GL_ZERO"},
7806       {GL_ONE, "GL_ONE"},
7807       {GL_SRC_COLOR, "GL_SRC_COLOR"},
7808       {GL_ONE_MINUS_SRC_COLOR, "GL_ONE_MINUS_SRC_COLOR"},
7809       {GL_DST_COLOR, "GL_DST_COLOR"},
7810       {GL_ONE_MINUS_DST_COLOR, "GL_ONE_MINUS_DST_COLOR"},
7811       {GL_SRC_ALPHA, "GL_SRC_ALPHA"},
7812       {GL_ONE_MINUS_SRC_ALPHA, "GL_ONE_MINUS_SRC_ALPHA"},
7813       {GL_DST_ALPHA, "GL_DST_ALPHA"},
7814       {GL_ONE_MINUS_DST_ALPHA, "GL_ONE_MINUS_DST_ALPHA"},
7815       {GL_CONSTANT_COLOR, "GL_CONSTANT_COLOR"},
7816       {GL_ONE_MINUS_CONSTANT_COLOR, "GL_ONE_MINUS_CONSTANT_COLOR"},
7817       {GL_CONSTANT_ALPHA, "GL_CONSTANT_ALPHA"},
7818       {GL_ONE_MINUS_CONSTANT_ALPHA, "GL_ONE_MINUS_CONSTANT_ALPHA"},
7819       {GL_SRC_ALPHA_SATURATE, "GL_SRC_ALPHA_SATURATE"},
7820   };
7821   return GLES2Util::GetQualifiedEnumString(string_table,
7822                                            base::size(string_table), value);
7823 }
7824 
GetStringStencilOp(uint32_t value)7825 std::string GLES2Util::GetStringStencilOp(uint32_t value) {
7826   static const EnumToString string_table[] = {
7827       {GL_KEEP, "GL_KEEP"},           {GL_ZERO, "GL_ZERO"},
7828       {GL_REPLACE, "GL_REPLACE"},     {GL_INCR, "GL_INCR"},
7829       {GL_INCR_WRAP, "GL_INCR_WRAP"}, {GL_DECR, "GL_DECR"},
7830       {GL_DECR_WRAP, "GL_DECR_WRAP"}, {GL_INVERT, "GL_INVERT"},
7831   };
7832   return GLES2Util::GetQualifiedEnumString(string_table,
7833                                            base::size(string_table), value);
7834 }
7835 
GetStringStringType(uint32_t value)7836 std::string GLES2Util::GetStringStringType(uint32_t value) {
7837   static const EnumToString string_table[] = {
7838       {GL_VENDOR, "GL_VENDOR"},
7839       {GL_RENDERER, "GL_RENDERER"},
7840       {GL_VERSION, "GL_VERSION"},
7841       {GL_SHADING_LANGUAGE_VERSION, "GL_SHADING_LANGUAGE_VERSION"},
7842       {GL_EXTENSIONS, "GL_EXTENSIONS"},
7843   };
7844   return GLES2Util::GetQualifiedEnumString(string_table,
7845                                            base::size(string_table), value);
7846 }
7847 
GetStringSyncCondition(uint32_t value)7848 std::string GLES2Util::GetStringSyncCondition(uint32_t value) {
7849   static const EnumToString string_table[] = {
7850       {GL_SYNC_GPU_COMMANDS_COMPLETE, "GL_SYNC_GPU_COMMANDS_COMPLETE"},
7851   };
7852   return GLES2Util::GetQualifiedEnumString(string_table,
7853                                            base::size(string_table), value);
7854 }
7855 
GetStringSyncParameter(uint32_t value)7856 std::string GLES2Util::GetStringSyncParameter(uint32_t value) {
7857   static const EnumToString string_table[] = {
7858       {GL_SYNC_STATUS, "GL_SYNC_STATUS"},
7859       {GL_OBJECT_TYPE, "GL_OBJECT_TYPE"},
7860       {GL_SYNC_CONDITION, "GL_SYNC_CONDITION"},
7861       {GL_SYNC_FLAGS, "GL_SYNC_FLAGS"},
7862   };
7863   return GLES2Util::GetQualifiedEnumString(string_table,
7864                                            base::size(string_table), value);
7865 }
7866 
GetStringTexture3DTarget(uint32_t value)7867 std::string GLES2Util::GetStringTexture3DTarget(uint32_t value) {
7868   static const EnumToString string_table[] = {
7869       {GL_TEXTURE_3D, "GL_TEXTURE_3D"},
7870       {GL_TEXTURE_2D_ARRAY, "GL_TEXTURE_2D_ARRAY"},
7871   };
7872   return GLES2Util::GetQualifiedEnumString(string_table,
7873                                            base::size(string_table), value);
7874 }
7875 
GetStringTextureBindTarget(uint32_t value)7876 std::string GLES2Util::GetStringTextureBindTarget(uint32_t value) {
7877   static const EnumToString string_table[] = {
7878       {GL_TEXTURE_2D, "GL_TEXTURE_2D"},
7879       {GL_TEXTURE_CUBE_MAP, "GL_TEXTURE_CUBE_MAP"},
7880       {GL_TEXTURE_3D, "GL_TEXTURE_3D"},
7881       {GL_TEXTURE_2D_ARRAY, "GL_TEXTURE_2D_ARRAY"},
7882   };
7883   return GLES2Util::GetQualifiedEnumString(string_table,
7884                                            base::size(string_table), value);
7885 }
7886 
GetStringTextureCompareFunc(uint32_t value)7887 std::string GLES2Util::GetStringTextureCompareFunc(uint32_t value) {
7888   static const EnumToString string_table[] = {
7889       {GL_LEQUAL, "GL_LEQUAL"}, {GL_GEQUAL, "GL_GEQUAL"},
7890       {GL_LESS, "GL_LESS"},     {GL_GREATER, "GL_GREATER"},
7891       {GL_EQUAL, "GL_EQUAL"},   {GL_NOTEQUAL, "GL_NOTEQUAL"},
7892       {GL_ALWAYS, "GL_ALWAYS"}, {GL_NEVER, "GL_NEVER"},
7893   };
7894   return GLES2Util::GetQualifiedEnumString(string_table,
7895                                            base::size(string_table), value);
7896 }
7897 
GetStringTextureCompareMode(uint32_t value)7898 std::string GLES2Util::GetStringTextureCompareMode(uint32_t value) {
7899   static const EnumToString string_table[] = {
7900       {GL_NONE, "GL_NONE"},
7901       {GL_COMPARE_REF_TO_TEXTURE, "GL_COMPARE_REF_TO_TEXTURE"},
7902   };
7903   return GLES2Util::GetQualifiedEnumString(string_table,
7904                                            base::size(string_table), value);
7905 }
7906 
GetStringTextureDepthRenderableInternalFormat(uint32_t value)7907 std::string GLES2Util::GetStringTextureDepthRenderableInternalFormat(
7908     uint32_t value) {
7909   static const EnumToString string_table[] = {
7910       {GL_DEPTH_COMPONENT16, "GL_DEPTH_COMPONENT16"},
7911       {GL_DEPTH_COMPONENT24, "GL_DEPTH_COMPONENT24"},
7912       {GL_DEPTH_COMPONENT32F, "GL_DEPTH_COMPONENT32F"},
7913       {GL_DEPTH24_STENCIL8, "GL_DEPTH24_STENCIL8"},
7914       {GL_DEPTH32F_STENCIL8, "GL_DEPTH32F_STENCIL8"},
7915   };
7916   return GLES2Util::GetQualifiedEnumString(string_table,
7917                                            base::size(string_table), value);
7918 }
7919 
GetStringTextureFboTarget(uint32_t value)7920 std::string GLES2Util::GetStringTextureFboTarget(uint32_t value) {
7921   static const EnumToString string_table[] = {
7922       {GL_TEXTURE_2D, "GL_TEXTURE_2D"},
7923       {GL_TEXTURE_CUBE_MAP_POSITIVE_X, "GL_TEXTURE_CUBE_MAP_POSITIVE_X"},
7924       {GL_TEXTURE_CUBE_MAP_NEGATIVE_X, "GL_TEXTURE_CUBE_MAP_NEGATIVE_X"},
7925       {GL_TEXTURE_CUBE_MAP_POSITIVE_Y, "GL_TEXTURE_CUBE_MAP_POSITIVE_Y"},
7926       {GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y"},
7927       {GL_TEXTURE_CUBE_MAP_POSITIVE_Z, "GL_TEXTURE_CUBE_MAP_POSITIVE_Z"},
7928       {GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z"},
7929   };
7930   return GLES2Util::GetQualifiedEnumString(string_table,
7931                                            base::size(string_table), value);
7932 }
7933 
GetStringTextureFormat(uint32_t value)7934 std::string GLES2Util::GetStringTextureFormat(uint32_t value) {
7935   static const EnumToString string_table[] = {
7936       {GL_ALPHA, "GL_ALPHA"},
7937       {GL_LUMINANCE, "GL_LUMINANCE"},
7938       {GL_LUMINANCE_ALPHA, "GL_LUMINANCE_ALPHA"},
7939       {GL_RGB, "GL_RGB"},
7940       {GL_RGBA, "GL_RGBA"},
7941       {GL_RED, "GL_RED"},
7942       {GL_RED_INTEGER, "GL_RED_INTEGER"},
7943       {GL_RG, "GL_RG"},
7944       {GL_RG_INTEGER, "GL_RG_INTEGER"},
7945       {GL_RGB_INTEGER, "GL_RGB_INTEGER"},
7946       {GL_RGBA_INTEGER, "GL_RGBA_INTEGER"},
7947       {GL_DEPTH_COMPONENT, "GL_DEPTH_COMPONENT"},
7948       {GL_DEPTH_STENCIL, "GL_DEPTH_STENCIL"},
7949   };
7950   return GLES2Util::GetQualifiedEnumString(string_table,
7951                                            base::size(string_table), value);
7952 }
7953 
GetStringTextureInternalFormat(uint32_t value)7954 std::string GLES2Util::GetStringTextureInternalFormat(uint32_t value) {
7955   static const EnumToString string_table[] = {
7956       {GL_ALPHA, "GL_ALPHA"},
7957       {GL_LUMINANCE, "GL_LUMINANCE"},
7958       {GL_LUMINANCE_ALPHA, "GL_LUMINANCE_ALPHA"},
7959       {GL_RGB, "GL_RGB"},
7960       {GL_RGBA, "GL_RGBA"},
7961       {GL_R8, "GL_R8"},
7962       {GL_R8_SNORM, "GL_R8_SNORM"},
7963       {GL_R16F, "GL_R16F"},
7964       {GL_R32F, "GL_R32F"},
7965       {GL_R8UI, "GL_R8UI"},
7966       {GL_R8I, "GL_R8I"},
7967       {GL_R16UI, "GL_R16UI"},
7968       {GL_R16I, "GL_R16I"},
7969       {GL_R32UI, "GL_R32UI"},
7970       {GL_R32I, "GL_R32I"},
7971       {GL_RG8, "GL_RG8"},
7972       {GL_RG8_SNORM, "GL_RG8_SNORM"},
7973       {GL_RG16F, "GL_RG16F"},
7974       {GL_RG32F, "GL_RG32F"},
7975       {GL_RG8UI, "GL_RG8UI"},
7976       {GL_RG8I, "GL_RG8I"},
7977       {GL_RG16UI, "GL_RG16UI"},
7978       {GL_RG16I, "GL_RG16I"},
7979       {GL_RG32UI, "GL_RG32UI"},
7980       {GL_RG32I, "GL_RG32I"},
7981       {GL_RGB8, "GL_RGB8"},
7982       {GL_SRGB8, "GL_SRGB8"},
7983       {GL_RGB565, "GL_RGB565"},
7984       {GL_RGB8_SNORM, "GL_RGB8_SNORM"},
7985       {GL_R11F_G11F_B10F, "GL_R11F_G11F_B10F"},
7986       {GL_RGB9_E5, "GL_RGB9_E5"},
7987       {GL_RGB16F, "GL_RGB16F"},
7988       {GL_RGB32F, "GL_RGB32F"},
7989       {GL_RGB8UI, "GL_RGB8UI"},
7990       {GL_RGB8I, "GL_RGB8I"},
7991       {GL_RGB16UI, "GL_RGB16UI"},
7992       {GL_RGB16I, "GL_RGB16I"},
7993       {GL_RGB32UI, "GL_RGB32UI"},
7994       {GL_RGB32I, "GL_RGB32I"},
7995       {GL_RGBA8, "GL_RGBA8"},
7996       {GL_SRGB8_ALPHA8, "GL_SRGB8_ALPHA8"},
7997       {GL_RGBA8_SNORM, "GL_RGBA8_SNORM"},
7998       {GL_RGB5_A1, "GL_RGB5_A1"},
7999       {GL_RGBA4, "GL_RGBA4"},
8000       {GL_RGB10_A2, "GL_RGB10_A2"},
8001       {GL_RGBA16F, "GL_RGBA16F"},
8002       {GL_RGBA32F, "GL_RGBA32F"},
8003       {GL_RGBA8UI, "GL_RGBA8UI"},
8004       {GL_RGBA8I, "GL_RGBA8I"},
8005       {GL_RGB10_A2UI, "GL_RGB10_A2UI"},
8006       {GL_RGBA16UI, "GL_RGBA16UI"},
8007       {GL_RGBA16I, "GL_RGBA16I"},
8008       {GL_RGBA32UI, "GL_RGBA32UI"},
8009       {GL_RGBA32I, "GL_RGBA32I"},
8010       {GL_DEPTH_COMPONENT16, "GL_DEPTH_COMPONENT16"},
8011       {GL_DEPTH_COMPONENT24, "GL_DEPTH_COMPONENT24"},
8012       {GL_DEPTH_COMPONENT32F, "GL_DEPTH_COMPONENT32F"},
8013       {GL_DEPTH24_STENCIL8, "GL_DEPTH24_STENCIL8"},
8014       {GL_DEPTH32F_STENCIL8, "GL_DEPTH32F_STENCIL8"},
8015   };
8016   return GLES2Util::GetQualifiedEnumString(string_table,
8017                                            base::size(string_table), value);
8018 }
8019 
GetStringTextureInternalFormatStorage(uint32_t value)8020 std::string GLES2Util::GetStringTextureInternalFormatStorage(uint32_t value) {
8021   static const EnumToString string_table[] = {
8022       {GL_RGB565, "GL_RGB565"},
8023       {GL_RGBA4, "GL_RGBA4"},
8024       {GL_RGB5_A1, "GL_RGB5_A1"},
8025       {GL_ALPHA8_EXT, "GL_ALPHA8_EXT"},
8026       {GL_LUMINANCE8_EXT, "GL_LUMINANCE8_EXT"},
8027       {GL_LUMINANCE8_ALPHA8_EXT, "GL_LUMINANCE8_ALPHA8_EXT"},
8028       {GL_RGB8_OES, "GL_RGB8_OES"},
8029       {GL_RGBA8_OES, "GL_RGBA8_OES"},
8030       {GL_R8, "GL_R8"},
8031       {GL_R8_SNORM, "GL_R8_SNORM"},
8032       {GL_R16F, "GL_R16F"},
8033       {GL_R32F, "GL_R32F"},
8034       {GL_R8UI, "GL_R8UI"},
8035       {GL_R8I, "GL_R8I"},
8036       {GL_R16UI, "GL_R16UI"},
8037       {GL_R16I, "GL_R16I"},
8038       {GL_R32UI, "GL_R32UI"},
8039       {GL_R32I, "GL_R32I"},
8040       {GL_RG8, "GL_RG8"},
8041       {GL_RG8_SNORM, "GL_RG8_SNORM"},
8042       {GL_RG16F, "GL_RG16F"},
8043       {GL_RG32F, "GL_RG32F"},
8044       {GL_RG8UI, "GL_RG8UI"},
8045       {GL_RG8I, "GL_RG8I"},
8046       {GL_RG16UI, "GL_RG16UI"},
8047       {GL_RG16I, "GL_RG16I"},
8048       {GL_RG32UI, "GL_RG32UI"},
8049       {GL_RG32I, "GL_RG32I"},
8050       {GL_RGB8, "GL_RGB8"},
8051       {GL_SRGB8, "GL_SRGB8"},
8052       {GL_RGB8_SNORM, "GL_RGB8_SNORM"},
8053       {GL_R11F_G11F_B10F, "GL_R11F_G11F_B10F"},
8054       {GL_RGB9_E5, "GL_RGB9_E5"},
8055       {GL_RGB16F, "GL_RGB16F"},
8056       {GL_RGB32F, "GL_RGB32F"},
8057       {GL_RGB8UI, "GL_RGB8UI"},
8058       {GL_RGB8I, "GL_RGB8I"},
8059       {GL_RGB16UI, "GL_RGB16UI"},
8060       {GL_RGB16I, "GL_RGB16I"},
8061       {GL_RGB32UI, "GL_RGB32UI"},
8062       {GL_RGB32I, "GL_RGB32I"},
8063       {GL_RGBA8, "GL_RGBA8"},
8064       {GL_SRGB8_ALPHA8, "GL_SRGB8_ALPHA8"},
8065       {GL_RGBA8_SNORM, "GL_RGBA8_SNORM"},
8066       {GL_RGB10_A2, "GL_RGB10_A2"},
8067       {GL_RGBA16F, "GL_RGBA16F"},
8068       {GL_RGBA32F, "GL_RGBA32F"},
8069       {GL_RGBA8UI, "GL_RGBA8UI"},
8070       {GL_RGBA8I, "GL_RGBA8I"},
8071       {GL_RGB10_A2UI, "GL_RGB10_A2UI"},
8072       {GL_RGBA16UI, "GL_RGBA16UI"},
8073       {GL_RGBA16I, "GL_RGBA16I"},
8074       {GL_RGBA32UI, "GL_RGBA32UI"},
8075       {GL_RGBA32I, "GL_RGBA32I"},
8076       {GL_DEPTH_COMPONENT16, "GL_DEPTH_COMPONENT16"},
8077       {GL_DEPTH_COMPONENT24, "GL_DEPTH_COMPONENT24"},
8078       {GL_DEPTH_COMPONENT32F, "GL_DEPTH_COMPONENT32F"},
8079       {GL_DEPTH24_STENCIL8, "GL_DEPTH24_STENCIL8"},
8080       {GL_DEPTH32F_STENCIL8, "GL_DEPTH32F_STENCIL8"},
8081   };
8082   return GLES2Util::GetQualifiedEnumString(string_table,
8083                                            base::size(string_table), value);
8084 }
8085 
GetStringTextureMagFilterMode(uint32_t value)8086 std::string GLES2Util::GetStringTextureMagFilterMode(uint32_t value) {
8087   static const EnumToString string_table[] = {
8088       {GL_NEAREST, "GL_NEAREST"},
8089       {GL_LINEAR, "GL_LINEAR"},
8090   };
8091   return GLES2Util::GetQualifiedEnumString(string_table,
8092                                            base::size(string_table), value);
8093 }
8094 
GetStringTextureMinFilterMode(uint32_t value)8095 std::string GLES2Util::GetStringTextureMinFilterMode(uint32_t value) {
8096   static const EnumToString string_table[] = {
8097       {GL_NEAREST, "GL_NEAREST"},
8098       {GL_LINEAR, "GL_LINEAR"},
8099       {GL_NEAREST_MIPMAP_NEAREST, "GL_NEAREST_MIPMAP_NEAREST"},
8100       {GL_LINEAR_MIPMAP_NEAREST, "GL_LINEAR_MIPMAP_NEAREST"},
8101       {GL_NEAREST_MIPMAP_LINEAR, "GL_NEAREST_MIPMAP_LINEAR"},
8102       {GL_LINEAR_MIPMAP_LINEAR, "GL_LINEAR_MIPMAP_LINEAR"},
8103   };
8104   return GLES2Util::GetQualifiedEnumString(string_table,
8105                                            base::size(string_table), value);
8106 }
8107 
GetStringTextureParameter(uint32_t value)8108 std::string GLES2Util::GetStringTextureParameter(uint32_t value) {
8109   static const EnumToString string_table[] = {
8110       {GL_TEXTURE_MAG_FILTER, "GL_TEXTURE_MAG_FILTER"},
8111       {GL_TEXTURE_MIN_FILTER, "GL_TEXTURE_MIN_FILTER"},
8112       {GL_TEXTURE_WRAP_S, "GL_TEXTURE_WRAP_S"},
8113       {GL_TEXTURE_WRAP_T, "GL_TEXTURE_WRAP_T"},
8114       {GL_TEXTURE_BASE_LEVEL, "GL_TEXTURE_BASE_LEVEL"},
8115       {GL_TEXTURE_COMPARE_FUNC, "GL_TEXTURE_COMPARE_FUNC"},
8116       {GL_TEXTURE_COMPARE_MODE, "GL_TEXTURE_COMPARE_MODE"},
8117       {GL_TEXTURE_IMMUTABLE_FORMAT, "GL_TEXTURE_IMMUTABLE_FORMAT"},
8118       {GL_TEXTURE_IMMUTABLE_LEVELS, "GL_TEXTURE_IMMUTABLE_LEVELS"},
8119       {GL_TEXTURE_MAX_LEVEL, "GL_TEXTURE_MAX_LEVEL"},
8120       {GL_TEXTURE_MAX_LOD, "GL_TEXTURE_MAX_LOD"},
8121       {GL_TEXTURE_MIN_LOD, "GL_TEXTURE_MIN_LOD"},
8122       {GL_TEXTURE_WRAP_R, "GL_TEXTURE_WRAP_R"},
8123   };
8124   return GLES2Util::GetQualifiedEnumString(string_table,
8125                                            base::size(string_table), value);
8126 }
8127 
GetStringTextureSizedColorRenderableInternalFormat(uint32_t value)8128 std::string GLES2Util::GetStringTextureSizedColorRenderableInternalFormat(
8129     uint32_t value) {
8130   static const EnumToString string_table[] = {
8131       {GL_R8, "GL_R8"},
8132       {GL_R8UI, "GL_R8UI"},
8133       {GL_R8I, "GL_R8I"},
8134       {GL_R16UI, "GL_R16UI"},
8135       {GL_R16I, "GL_R16I"},
8136       {GL_R32UI, "GL_R32UI"},
8137       {GL_R32I, "GL_R32I"},
8138       {GL_RG8, "GL_RG8"},
8139       {GL_RG8UI, "GL_RG8UI"},
8140       {GL_RG8I, "GL_RG8I"},
8141       {GL_RG16UI, "GL_RG16UI"},
8142       {GL_RG16I, "GL_RG16I"},
8143       {GL_RG32UI, "GL_RG32UI"},
8144       {GL_RG32I, "GL_RG32I"},
8145       {GL_RGB8, "GL_RGB8"},
8146       {GL_RGB565, "GL_RGB565"},
8147       {GL_RGBA8, "GL_RGBA8"},
8148       {GL_SRGB8_ALPHA8, "GL_SRGB8_ALPHA8"},
8149       {GL_RGB5_A1, "GL_RGB5_A1"},
8150       {GL_RGBA4, "GL_RGBA4"},
8151       {GL_RGB10_A2, "GL_RGB10_A2"},
8152       {GL_RGBA8UI, "GL_RGBA8UI"},
8153       {GL_RGBA8I, "GL_RGBA8I"},
8154       {GL_RGB10_A2UI, "GL_RGB10_A2UI"},
8155       {GL_RGBA16UI, "GL_RGBA16UI"},
8156       {GL_RGBA16I, "GL_RGBA16I"},
8157       {GL_RGBA32UI, "GL_RGBA32UI"},
8158       {GL_RGBA32I, "GL_RGBA32I"},
8159   };
8160   return GLES2Util::GetQualifiedEnumString(string_table,
8161                                            base::size(string_table), value);
8162 }
8163 
GetStringTextureSizedTextureFilterableInternalFormat(uint32_t value)8164 std::string GLES2Util::GetStringTextureSizedTextureFilterableInternalFormat(
8165     uint32_t value) {
8166   static const EnumToString string_table[] = {
8167       {GL_R8, "GL_R8"},
8168       {GL_R8_SNORM, "GL_R8_SNORM"},
8169       {GL_R16F, "GL_R16F"},
8170       {GL_RG8, "GL_RG8"},
8171       {GL_RG8_SNORM, "GL_RG8_SNORM"},
8172       {GL_RG16F, "GL_RG16F"},
8173       {GL_RGB8, "GL_RGB8"},
8174       {GL_SRGB8, "GL_SRGB8"},
8175       {GL_RGB565, "GL_RGB565"},
8176       {GL_RGB8_SNORM, "GL_RGB8_SNORM"},
8177       {GL_R11F_G11F_B10F, "GL_R11F_G11F_B10F"},
8178       {GL_RGB9_E5, "GL_RGB9_E5"},
8179       {GL_RGB16F, "GL_RGB16F"},
8180       {GL_RGBA8, "GL_RGBA8"},
8181       {GL_SRGB8_ALPHA8, "GL_SRGB8_ALPHA8"},
8182       {GL_RGBA8_SNORM, "GL_RGBA8_SNORM"},
8183       {GL_RGB5_A1, "GL_RGB5_A1"},
8184       {GL_RGBA4, "GL_RGBA4"},
8185       {GL_RGB10_A2, "GL_RGB10_A2"},
8186       {GL_RGBA16F, "GL_RGBA16F"},
8187       {GL_RGB_YCRCB_420_CHROMIUM, "GL_RGB_YCRCB_420_CHROMIUM"},
8188       {GL_RGB_YCBCR_422_CHROMIUM, "GL_RGB_YCBCR_422_CHROMIUM"},
8189       {GL_RGB_YCBCR_420V_CHROMIUM, "GL_RGB_YCBCR_420V_CHROMIUM"},
8190       {GL_RGB_YCBCR_P010_CHROMIUM, "GL_RGB_YCBCR_P010_CHROMIUM"},
8191       {GL_R16_EXT, "GL_R16_EXT"},
8192   };
8193   return GLES2Util::GetQualifiedEnumString(string_table,
8194                                            base::size(string_table), value);
8195 }
8196 
GetStringTextureSrgbDecodeExt(uint32_t value)8197 std::string GLES2Util::GetStringTextureSrgbDecodeExt(uint32_t value) {
8198   static const EnumToString string_table[] = {
8199       {GL_DECODE_EXT, "GL_DECODE_EXT"},
8200       {GL_SKIP_DECODE_EXT, "GL_SKIP_DECODE_EXT"},
8201   };
8202   return GLES2Util::GetQualifiedEnumString(string_table,
8203                                            base::size(string_table), value);
8204 }
8205 
GetStringTextureStencilRenderableInternalFormat(uint32_t value)8206 std::string GLES2Util::GetStringTextureStencilRenderableInternalFormat(
8207     uint32_t value) {
8208   static const EnumToString string_table[] = {
8209       {GL_STENCIL_INDEX8, "GL_STENCIL_INDEX8"},
8210       {GL_DEPTH24_STENCIL8, "GL_DEPTH24_STENCIL8"},
8211       {GL_DEPTH32F_STENCIL8, "GL_DEPTH32F_STENCIL8"},
8212   };
8213   return GLES2Util::GetQualifiedEnumString(string_table,
8214                                            base::size(string_table), value);
8215 }
8216 
GetStringTextureSwizzle(uint32_t value)8217 std::string GLES2Util::GetStringTextureSwizzle(uint32_t value) {
8218   static const EnumToString string_table[] = {
8219       {GL_RED, "GL_RED"},     {GL_GREEN, "GL_GREEN"}, {GL_BLUE, "GL_BLUE"},
8220       {GL_ALPHA, "GL_ALPHA"}, {GL_ZERO, "GL_ZERO"},   {GL_ONE, "GL_ONE"},
8221   };
8222   return GLES2Util::GetQualifiedEnumString(string_table,
8223                                            base::size(string_table), value);
8224 }
8225 
GetStringTextureTarget(uint32_t value)8226 std::string GLES2Util::GetStringTextureTarget(uint32_t value) {
8227   static const EnumToString string_table[] = {
8228       {GL_TEXTURE_2D, "GL_TEXTURE_2D"},
8229       {GL_TEXTURE_CUBE_MAP_POSITIVE_X, "GL_TEXTURE_CUBE_MAP_POSITIVE_X"},
8230       {GL_TEXTURE_CUBE_MAP_NEGATIVE_X, "GL_TEXTURE_CUBE_MAP_NEGATIVE_X"},
8231       {GL_TEXTURE_CUBE_MAP_POSITIVE_Y, "GL_TEXTURE_CUBE_MAP_POSITIVE_Y"},
8232       {GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y"},
8233       {GL_TEXTURE_CUBE_MAP_POSITIVE_Z, "GL_TEXTURE_CUBE_MAP_POSITIVE_Z"},
8234       {GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z"},
8235   };
8236   return GLES2Util::GetQualifiedEnumString(string_table,
8237                                            base::size(string_table), value);
8238 }
8239 
GetStringTextureUnsizedInternalFormat(uint32_t value)8240 std::string GLES2Util::GetStringTextureUnsizedInternalFormat(uint32_t value) {
8241   static const EnumToString string_table[] = {
8242       {GL_ALPHA, "GL_ALPHA"},
8243       {GL_LUMINANCE, "GL_LUMINANCE"},
8244       {GL_LUMINANCE_ALPHA, "GL_LUMINANCE_ALPHA"},
8245       {GL_RGB, "GL_RGB"},
8246       {GL_RGBA, "GL_RGBA"},
8247   };
8248   return GLES2Util::GetQualifiedEnumString(string_table,
8249                                            base::size(string_table), value);
8250 }
8251 
GetStringTextureUsage(uint32_t value)8252 std::string GLES2Util::GetStringTextureUsage(uint32_t value) {
8253   static const EnumToString string_table[] = {
8254       {GL_NONE, "GL_NONE"},
8255       {GL_FRAMEBUFFER_ATTACHMENT_ANGLE, "GL_FRAMEBUFFER_ATTACHMENT_ANGLE"},
8256   };
8257   return GLES2Util::GetQualifiedEnumString(string_table,
8258                                            base::size(string_table), value);
8259 }
8260 
GetStringTextureWrapMode(uint32_t value)8261 std::string GLES2Util::GetStringTextureWrapMode(uint32_t value) {
8262   static const EnumToString string_table[] = {
8263       {GL_CLAMP_TO_EDGE, "GL_CLAMP_TO_EDGE"},
8264       {GL_MIRRORED_REPEAT, "GL_MIRRORED_REPEAT"},
8265       {GL_REPEAT, "GL_REPEAT"},
8266   };
8267   return GLES2Util::GetQualifiedEnumString(string_table,
8268                                            base::size(string_table), value);
8269 }
8270 
GetStringTransformFeedbackBindTarget(uint32_t value)8271 std::string GLES2Util::GetStringTransformFeedbackBindTarget(uint32_t value) {
8272   static const EnumToString string_table[] = {
8273       {GL_TRANSFORM_FEEDBACK, "GL_TRANSFORM_FEEDBACK"},
8274   };
8275   return GLES2Util::GetQualifiedEnumString(string_table,
8276                                            base::size(string_table), value);
8277 }
8278 
GetStringTransformFeedbackPrimitiveMode(uint32_t value)8279 std::string GLES2Util::GetStringTransformFeedbackPrimitiveMode(uint32_t value) {
8280   static const EnumToString string_table[] = {
8281       {GL_POINTS, "GL_POINTS"},
8282       {GL_LINES, "GL_LINES"},
8283       {GL_TRIANGLES, "GL_TRIANGLES"},
8284   };
8285   return GLES2Util::GetQualifiedEnumString(string_table,
8286                                            base::size(string_table), value);
8287 }
8288 
GetStringUniformBlockParameter(uint32_t value)8289 std::string GLES2Util::GetStringUniformBlockParameter(uint32_t value) {
8290   static const EnumToString string_table[] = {
8291       {GL_UNIFORM_BLOCK_BINDING, "GL_UNIFORM_BLOCK_BINDING"},
8292       {GL_UNIFORM_BLOCK_DATA_SIZE, "GL_UNIFORM_BLOCK_DATA_SIZE"},
8293       {GL_UNIFORM_BLOCK_NAME_LENGTH, "GL_UNIFORM_BLOCK_NAME_LENGTH"},
8294       {GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS, "GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS"},
8295       {GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES,
8296        "GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES"},
8297       {GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER,
8298        "GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER"},
8299       {GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER,
8300        "GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER"},
8301   };
8302   return GLES2Util::GetQualifiedEnumString(string_table,
8303                                            base::size(string_table), value);
8304 }
8305 
GetStringUniformParameter(uint32_t value)8306 std::string GLES2Util::GetStringUniformParameter(uint32_t value) {
8307   static const EnumToString string_table[] = {
8308       {GL_UNIFORM_SIZE, "GL_UNIFORM_SIZE"},
8309       {GL_UNIFORM_TYPE, "GL_UNIFORM_TYPE"},
8310       {GL_UNIFORM_NAME_LENGTH, "GL_UNIFORM_NAME_LENGTH"},
8311       {GL_UNIFORM_BLOCK_INDEX, "GL_UNIFORM_BLOCK_INDEX"},
8312       {GL_UNIFORM_OFFSET, "GL_UNIFORM_OFFSET"},
8313       {GL_UNIFORM_ARRAY_STRIDE, "GL_UNIFORM_ARRAY_STRIDE"},
8314       {GL_UNIFORM_MATRIX_STRIDE, "GL_UNIFORM_MATRIX_STRIDE"},
8315       {GL_UNIFORM_IS_ROW_MAJOR, "GL_UNIFORM_IS_ROW_MAJOR"},
8316   };
8317   return GLES2Util::GetQualifiedEnumString(string_table,
8318                                            base::size(string_table), value);
8319 }
8320 
GetStringVertexAttribIType(uint32_t value)8321 std::string GLES2Util::GetStringVertexAttribIType(uint32_t value) {
8322   static const EnumToString string_table[] = {
8323       {GL_BYTE, "GL_BYTE"},   {GL_UNSIGNED_BYTE, "GL_UNSIGNED_BYTE"},
8324       {GL_SHORT, "GL_SHORT"}, {GL_UNSIGNED_SHORT, "GL_UNSIGNED_SHORT"},
8325       {GL_INT, "GL_INT"},     {GL_UNSIGNED_INT, "GL_UNSIGNED_INT"},
8326   };
8327   return GLES2Util::GetQualifiedEnumString(string_table,
8328                                            base::size(string_table), value);
8329 }
8330 
GetStringVertexAttribType(uint32_t value)8331 std::string GLES2Util::GetStringVertexAttribType(uint32_t value) {
8332   static const EnumToString string_table[] = {
8333       {GL_BYTE, "GL_BYTE"},
8334       {GL_UNSIGNED_BYTE, "GL_UNSIGNED_BYTE"},
8335       {GL_SHORT, "GL_SHORT"},
8336       {GL_UNSIGNED_SHORT, "GL_UNSIGNED_SHORT"},
8337       {GL_FLOAT, "GL_FLOAT"},
8338       {GL_INT, "GL_INT"},
8339       {GL_UNSIGNED_INT, "GL_UNSIGNED_INT"},
8340       {GL_HALF_FLOAT, "GL_HALF_FLOAT"},
8341       {GL_INT_2_10_10_10_REV, "GL_INT_2_10_10_10_REV"},
8342       {GL_UNSIGNED_INT_2_10_10_10_REV, "GL_UNSIGNED_INT_2_10_10_10_REV"},
8343   };
8344   return GLES2Util::GetQualifiedEnumString(string_table,
8345                                            base::size(string_table), value);
8346 }
8347 
GetStringVertexAttribute(uint32_t value)8348 std::string GLES2Util::GetStringVertexAttribute(uint32_t value) {
8349   static const EnumToString string_table[] = {
8350       {GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED"},
8351       {GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING,
8352        "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING"},
8353       {GL_VERTEX_ATTRIB_ARRAY_ENABLED, "GL_VERTEX_ATTRIB_ARRAY_ENABLED"},
8354       {GL_VERTEX_ATTRIB_ARRAY_SIZE, "GL_VERTEX_ATTRIB_ARRAY_SIZE"},
8355       {GL_VERTEX_ATTRIB_ARRAY_STRIDE, "GL_VERTEX_ATTRIB_ARRAY_STRIDE"},
8356       {GL_VERTEX_ATTRIB_ARRAY_TYPE, "GL_VERTEX_ATTRIB_ARRAY_TYPE"},
8357       {GL_CURRENT_VERTEX_ATTRIB, "GL_CURRENT_VERTEX_ATTRIB"},
8358       {GL_VERTEX_ATTRIB_ARRAY_INTEGER, "GL_VERTEX_ATTRIB_ARRAY_INTEGER"},
8359       {GL_VERTEX_ATTRIB_ARRAY_DIVISOR, "GL_VERTEX_ATTRIB_ARRAY_DIVISOR"},
8360   };
8361   return GLES2Util::GetQualifiedEnumString(string_table,
8362                                            base::size(string_table), value);
8363 }
8364 
GetStringVertexPointer(uint32_t value)8365 std::string GLES2Util::GetStringVertexPointer(uint32_t value) {
8366   static const EnumToString string_table[] = {
8367       {GL_VERTEX_ATTRIB_ARRAY_POINTER, "GL_VERTEX_ATTRIB_ARRAY_POINTER"},
8368   };
8369   return GLES2Util::GetQualifiedEnumString(string_table,
8370                                            base::size(string_table), value);
8371 }
8372 
GetStringWindowRectanglesMode(uint32_t value)8373 std::string GLES2Util::GetStringWindowRectanglesMode(uint32_t value) {
8374   static const EnumToString string_table[] = {
8375       {GL_INCLUSIVE_EXT, "GL_INCLUSIVE_EXT"},
8376       {GL_EXCLUSIVE_EXT, "GL_EXCLUSIVE_EXT"},
8377   };
8378   return GLES2Util::GetQualifiedEnumString(string_table,
8379                                            base::size(string_table), value);
8380 }
8381 
8382 #endif  // GPU_COMMAND_BUFFER_COMMON_GLES2_CMD_UTILS_IMPLEMENTATION_AUTOGEN_H_
8383