Backward incompatible: Turn on PureOperatorBuiltins: use only enum-based built-in functions in the AST.

If this breaks your AST consumer, best is to modify it to test
against the enum values instead of doing string comparisons on
built-in function names.  This is the reason the change was made.

If you need the old behavior, you should be able to get it back by changing
PureOperatorBuiltins to be false instead of true.  This path will work for
a while, but is marked deprecated.

Also, the old behavior is tagged as release 2.4.
This commit is contained in:
John Kessenich
2015-08-19 13:34:18 -06:00
parent a32d8f620d
commit fc51d284aa
41 changed files with 1092 additions and 967 deletions

View File

@@ -105,24 +105,24 @@ Shader version: 450
0:44 Sequence
0:44 move second child to first child (temp int)
0:44 's' (temp int)
0:44 Function Call: textureSamples(s2M1; (global int)
0:44 textureSamples (global int)
0:44 's2dms' (uniform sampler2DMS)
0:45 add second child into first child (temp int)
0:45 's' (temp int)
0:45 Function Call: textureSamples(usA2M1; (global int)
0:45 textureSamples (global int)
0:45 'us2dmsa' (uniform usampler2DMSArray)
0:46 add second child into first child (temp int)
0:46 's' (temp int)
0:46 Function Call: imageSamples(iI2M1; (global int)
0:46 imageQuerySamples (global int)
0:46 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
0:47 add second child into first child (temp int)
0:47 's' (temp int)
0:47 Function Call: imageSamples(IA2M1; (global int)
0:47 imageQuerySamples (global int)
0:47 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
0:48 Sequence
0:48 move second child to first child (temp float)
0:48 'f' (temp float)
0:48 Function Call: imageAtomicExchange(IA2M1;vi3;i1;f1; (global float)
0:48 imageAtomicExchange (global float)
0:48 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
0:48 Convert float to int (temp 3-component vector of int)
0:48 'in3' (smooth in 3-component vector of float)
@@ -249,24 +249,24 @@ Shader version: 450
0:44 Sequence
0:44 move second child to first child (temp int)
0:44 's' (temp int)
0:44 Function Call: textureSamples(s2M1; (global int)
0:44 textureSamples (global int)
0:44 's2dms' (uniform sampler2DMS)
0:45 add second child into first child (temp int)
0:45 's' (temp int)
0:45 Function Call: textureSamples(usA2M1; (global int)
0:45 textureSamples (global int)
0:45 'us2dmsa' (uniform usampler2DMSArray)
0:46 add second child into first child (temp int)
0:46 's' (temp int)
0:46 Function Call: imageSamples(iI2M1; (global int)
0:46 imageQuerySamples (global int)
0:46 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
0:47 add second child into first child (temp int)
0:47 's' (temp int)
0:47 Function Call: imageSamples(IA2M1; (global int)
0:47 imageQuerySamples (global int)
0:47 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
0:48 Sequence
0:48 move second child to first child (temp float)
0:48 'f' (temp float)
0:48 Function Call: imageAtomicExchange(IA2M1;vi3;i1;f1; (global float)
0:48 imageAtomicExchange (global float)
0:48 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
0:48 Convert float to int (temp 3-component vector of int)
0:48 'in3' (smooth in 3-component vector of float)