INTEL_shader_integer_functions2: Add compiler front-end support

The changes to glslang/glslang/MachineIndependent/ParseHelper.cpp exist
purely to prevent even more instances of "warning: enumeration value
‘EOp...’ not handled in switch"

v2: Remove 8-bit types.  Overzealous copy-and-paste led to adding
support for a bunch of types that the extension doesn't actually enable.

v3: Update expected test results file.  Just changing an expected
results file to make a test pass seems sketchy to me, but I'm not sure
what else to do.

v4: Add missing entry for EOpAbsDifference in
TOutputTraverser::visitBinary.  Noticed by JohnK.
This commit is contained in:
Ian Romanick
2018-09-20 01:22:19 -07:00
parent e0da415dff
commit fbcdcac254
4 changed files with 215 additions and 3 deletions

View File

@@ -11,7 +11,7 @@ spv.specConstant.vert
Source GLSL 400
Name 4 "main"
Name 9 "arraySize"
Name 14 "foo(vf4[s4393];"
Name 14 "foo(vf4[s4529];"
Name 13 "p"
Name 17 "builtin_spec_constant("
Name 20 "color"
@@ -102,10 +102,10 @@ spv.specConstant.vert
Store 20(color) 46
48: 10 Load 22(ucol)
Store 47(param) 48
49: 2 FunctionCall 14(foo(vf4[s4393];) 47(param)
49: 2 FunctionCall 14(foo(vf4[s4529];) 47(param)
Return
FunctionEnd
14(foo(vf4[s4393];): 2 Function None 12
14(foo(vf4[s4529];): 2 Function None 12
13(p): 11(ptr) FunctionParameter
15: Label
54: 24(ptr) AccessChain 53(dupUcol) 23