2016-05-26 16:10:16 +00:00
|
|
|
hlsl.intrinsics.vert
|
2017-04-07 21:33:08 +00:00
|
|
|
Shader version: 500
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:2 Function Definition: VertexShaderFunctionS(f1;f1;f1;u1;u1; ( temp float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:2 Function Parameters:
|
2017-03-15 01:43:13 +00:00
|
|
|
0:2 'inF0' ( in float)
|
|
|
|
0:2 'inF1' ( in float)
|
|
|
|
0:2 'inF2' ( in float)
|
|
|
|
0:2 'inU0' ( in uint)
|
|
|
|
0:2 'inU1' ( in uint)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:3 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:3 Convert float to bool ( temp bool)
|
|
|
|
0:3 'inF0' ( in float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:4 Absolute value ( temp float)
|
|
|
|
0:4 'inF0' ( in float)
|
|
|
|
0:5 arc cosine ( temp float)
|
|
|
|
0:5 'inF0' ( in float)
|
|
|
|
0:6 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:6 Convert float to bool ( temp bool)
|
|
|
|
0:6 'inF0' ( in float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:7 arc sine ( temp float)
|
|
|
|
0:7 'inF0' ( in float)
|
|
|
|
0:8 floatBitsToInt ( temp int)
|
|
|
|
0:8 'inF0' ( in float)
|
|
|
|
0:9 floatBitsToUint ( temp uint)
|
|
|
|
0:9 'inF0' ( in float)
|
|
|
|
0:10 intBitsToFloat ( temp float)
|
|
|
|
0:10 'inU0' ( in uint)
|
|
|
|
0:12 arc tangent ( temp float)
|
|
|
|
0:12 'inF0' ( in float)
|
|
|
|
0:13 arc tangent ( temp float)
|
|
|
|
0:13 'inF0' ( in float)
|
|
|
|
0:13 'inF1' ( in float)
|
|
|
|
0:14 Ceiling ( temp float)
|
|
|
|
0:14 'inF0' ( in float)
|
|
|
|
0:15 clamp ( temp float)
|
|
|
|
0:15 'inF0' ( in float)
|
|
|
|
0:15 'inF1' ( in float)
|
|
|
|
0:15 'inF2' ( in float)
|
|
|
|
0:16 cosine ( temp float)
|
|
|
|
0:16 'inF0' ( in float)
|
|
|
|
0:17 hyp. cosine ( temp float)
|
|
|
|
0:17 'inF0' ( in float)
|
|
|
|
0:18 bitCount ( temp int)
|
2016-06-13 15:22:28 +00:00
|
|
|
0:18 Constant:
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
0:18 7 (const int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:19 degrees ( temp float)
|
|
|
|
0:19 'inF0' ( in float)
|
|
|
|
0:23 exp ( temp float)
|
|
|
|
0:23 'inF0' ( in float)
|
|
|
|
0:24 exp2 ( temp float)
|
|
|
|
0:24 'inF0' ( in float)
|
|
|
|
0:25 findMSB ( temp int)
|
2016-06-13 15:22:28 +00:00
|
|
|
0:25 Constant:
|
|
|
|
0:25 7 (const int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:26 findLSB ( temp int)
|
2016-06-13 15:22:28 +00:00
|
|
|
0:26 Constant:
|
|
|
|
0:26 7 (const int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:27 Floor ( temp float)
|
|
|
|
0:27 'inF0' ( in float)
|
|
|
|
0:29 mod ( temp float)
|
|
|
|
0:29 'inF0' ( in float)
|
|
|
|
0:29 'inF1' ( in float)
|
|
|
|
0:30 Fraction ( temp float)
|
|
|
|
0:30 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:31 isinf ( temp bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:31 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:32 isnan ( temp bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:32 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:33 ldexp ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:33 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:33 'inF1' ( in float)
|
|
|
|
0:34 mix ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:34 'inF0' ( in float)
|
|
|
|
0:34 'inF1' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:34 'inF2' ( in float)
|
|
|
|
0:35 log ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:35 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:36 component-wise multiply ( temp float)
|
|
|
|
0:36 log2 ( temp float)
|
|
|
|
0:36 'inF0' ( in float)
|
|
|
|
0:36 Constant:
|
|
|
|
0:36 0.301030
|
|
|
|
0:37 log2 ( temp float)
|
|
|
|
0:37 'inF0' ( in float)
|
|
|
|
0:38 max ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:38 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:38 'inF1' ( in float)
|
|
|
|
0:39 min ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:39 'inF0' ( in float)
|
|
|
|
0:39 'inF1' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:41 pow ( temp float)
|
|
|
|
0:41 'inF0' ( in float)
|
|
|
|
0:41 'inF1' ( in float)
|
|
|
|
0:42 radians ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:42 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:43 bitFieldReverse ( temp int)
|
|
|
|
0:43 Constant:
|
|
|
|
0:43 2 (const int)
|
|
|
|
0:44 roundEven ( temp float)
|
|
|
|
0:44 'inF0' ( in float)
|
|
|
|
0:45 inverse sqrt ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:45 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:46 clamp ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:46 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:46 Constant:
|
|
|
|
0:46 0.000000
|
|
|
|
0:46 Constant:
|
|
|
|
0:46 1.000000
|
|
|
|
0:47 Sign ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:47 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:48 sine ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:48 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:49 Sequence
|
|
|
|
0:49 move second child to first child ( temp float)
|
|
|
|
0:49 'inF1' ( in float)
|
|
|
|
0:49 sine ( temp float)
|
|
|
|
0:49 'inF0' ( in float)
|
|
|
|
0:49 move second child to first child ( temp float)
|
|
|
|
0:49 'inF2' ( in float)
|
|
|
|
0:49 cosine ( temp float)
|
|
|
|
0:49 'inF0' ( in float)
|
|
|
|
0:50 hyp. sine ( temp float)
|
|
|
|
0:50 'inF0' ( in float)
|
|
|
|
0:51 smoothstep ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:51 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:51 'inF1' ( in float)
|
|
|
|
0:51 'inF2' ( in float)
|
|
|
|
0:52 sqrt ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:52 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:53 step ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:53 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:53 'inF1' ( in float)
|
|
|
|
0:54 tangent ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:54 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:55 hyp. tangent ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:55 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:57 trunc ( temp float)
|
|
|
|
0:57 'inF0' ( in float)
|
|
|
|
0:59 Branch: Return with expression
|
|
|
|
0:59 Constant:
|
|
|
|
0:59 0.000000
|
|
|
|
0:63 Function Definition: VertexShaderFunction1(vf1;vf1;vf1; ( temp 1-component vector of float)
|
|
|
|
0:63 Function Parameters:
|
|
|
|
0:63 'inF0' ( in 1-component vector of float)
|
|
|
|
0:63 'inF1' ( in 1-component vector of float)
|
|
|
|
0:63 'inF2' ( in 1-component vector of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:65 Branch: Return with expression
|
|
|
|
0:65 Constant:
|
|
|
|
0:65 0.000000
|
|
|
|
0:69 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vu2;vu2; ( temp 2-component vector of float)
|
|
|
|
0:69 Function Parameters:
|
|
|
|
0:69 'inF0' ( in 2-component vector of float)
|
|
|
|
0:69 'inF1' ( in 2-component vector of float)
|
|
|
|
0:69 'inF2' ( in 2-component vector of float)
|
|
|
|
0:69 'inU0' ( in 2-component vector of uint)
|
|
|
|
0:69 'inU1' ( in 2-component vector of uint)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:70 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:70 Convert float to bool ( temp 2-component vector of bool)
|
|
|
|
0:70 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:71 Absolute value ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:71 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:72 arc cosine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:72 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:73 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:73 Convert float to bool ( temp 2-component vector of bool)
|
|
|
|
0:73 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:74 arc sine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:74 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:75 floatBitsToInt ( temp 2-component vector of int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:75 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:76 floatBitsToUint ( temp 2-component vector of uint)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:76 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:77 intBitsToFloat ( temp 2-component vector of float)
|
|
|
|
0:77 'inU0' ( in 2-component vector of uint)
|
|
|
|
0:79 arc tangent ( temp 2-component vector of float)
|
|
|
|
0:79 'inF0' ( in 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:80 arc tangent ( temp 2-component vector of float)
|
|
|
|
0:80 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:80 'inF1' ( in 2-component vector of float)
|
|
|
|
0:81 Ceiling ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:81 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:82 clamp ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:82 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:82 'inF1' ( in 2-component vector of float)
|
|
|
|
0:82 'inF2' ( in 2-component vector of float)
|
|
|
|
0:83 cosine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:83 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:84 hyp. cosine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:84 'inF0' ( in 2-component vector of float)
|
2021-05-11 08:42:11 +00:00
|
|
|
0:85 bitCount ( temp 2-component vector of int)
|
|
|
|
0:85 Constant:
|
|
|
|
0:85 7 (const int)
|
|
|
|
0:85 3 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:86 degrees ( temp 2-component vector of float)
|
|
|
|
0:86 'inF0' ( in 2-component vector of float)
|
|
|
|
0:87 distance ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:87 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:87 'inF1' ( in 2-component vector of float)
|
|
|
|
0:88 dot-product ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:88 'inF0' ( in 2-component vector of float)
|
|
|
|
0:88 'inF1' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:92 exp ( temp 2-component vector of float)
|
|
|
|
0:92 'inF0' ( in 2-component vector of float)
|
|
|
|
0:93 exp2 ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:93 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:94 face-forward ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:94 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:94 'inF1' ( in 2-component vector of float)
|
|
|
|
0:94 'inF2' ( in 2-component vector of float)
|
|
|
|
0:95 findMSB ( temp int)
|
|
|
|
0:95 Constant:
|
|
|
|
0:95 7 (const int)
|
|
|
|
0:96 findLSB ( temp int)
|
2016-06-13 15:22:28 +00:00
|
|
|
0:96 Constant:
|
|
|
|
0:96 7 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:97 Floor ( temp 2-component vector of float)
|
|
|
|
0:97 'inF0' ( in 2-component vector of float)
|
|
|
|
0:99 mod ( temp 2-component vector of float)
|
|
|
|
0:99 'inF0' ( in 2-component vector of float)
|
|
|
|
0:99 'inF1' ( in 2-component vector of float)
|
|
|
|
0:100 Fraction ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:100 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:101 isinf ( temp 2-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:101 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:102 isnan ( temp 2-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:102 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:103 ldexp ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:103 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:103 'inF1' ( in 2-component vector of float)
|
|
|
|
0:104 mix ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:104 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:104 'inF1' ( in 2-component vector of float)
|
|
|
|
0:104 'inF2' ( in 2-component vector of float)
|
|
|
|
0:105 length ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:105 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:106 log ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:106 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:107 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:107 log2 ( temp 2-component vector of float)
|
|
|
|
0:107 'inF0' ( in 2-component vector of float)
|
|
|
|
0:107 Constant:
|
|
|
|
0:107 0.301030
|
|
|
|
0:108 log2 ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:108 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:109 max ( temp 2-component vector of float)
|
|
|
|
0:109 'inF0' ( in 2-component vector of float)
|
|
|
|
0:109 'inF1' ( in 2-component vector of float)
|
|
|
|
0:110 min ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:110 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:110 'inF1' ( in 2-component vector of float)
|
|
|
|
0:112 normalize ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:112 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:113 pow ( temp 2-component vector of float)
|
|
|
|
0:113 'inF0' ( in 2-component vector of float)
|
|
|
|
0:113 'inF1' ( in 2-component vector of float)
|
|
|
|
0:114 radians ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:114 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:115 reflect ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:115 'inF0' ( in 2-component vector of float)
|
|
|
|
0:115 'inF1' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:116 refract ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:116 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:116 'inF1' ( in 2-component vector of float)
|
|
|
|
0:116 Constant:
|
|
|
|
0:116 2.000000
|
2021-05-11 08:42:11 +00:00
|
|
|
0:117 bitFieldReverse ( temp 2-component vector of int)
|
|
|
|
0:117 Constant:
|
|
|
|
0:117 1 (const int)
|
|
|
|
0:117 2 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:118 roundEven ( temp 2-component vector of float)
|
|
|
|
0:118 'inF0' ( in 2-component vector of float)
|
|
|
|
0:119 inverse sqrt ( temp 2-component vector of float)
|
|
|
|
0:119 'inF0' ( in 2-component vector of float)
|
|
|
|
0:120 clamp ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:120 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:120 Constant:
|
|
|
|
0:120 0.000000
|
|
|
|
0:120 Constant:
|
|
|
|
0:120 1.000000
|
|
|
|
0:121 Sign ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:121 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:122 sine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:122 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:123 Sequence
|
|
|
|
0:123 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:123 'inF1' ( in 2-component vector of float)
|
|
|
|
0:123 sine ( temp 2-component vector of float)
|
|
|
|
0:123 'inF0' ( in 2-component vector of float)
|
|
|
|
0:123 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:123 'inF2' ( in 2-component vector of float)
|
|
|
|
0:123 cosine ( temp 2-component vector of float)
|
|
|
|
0:123 'inF0' ( in 2-component vector of float)
|
|
|
|
0:124 hyp. sine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:124 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:125 smoothstep ( temp 2-component vector of float)
|
|
|
|
0:125 'inF0' ( in 2-component vector of float)
|
|
|
|
0:125 'inF1' ( in 2-component vector of float)
|
|
|
|
0:125 'inF2' ( in 2-component vector of float)
|
|
|
|
0:126 sqrt ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:126 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:127 step ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:127 'inF0' ( in 2-component vector of float)
|
|
|
|
0:127 'inF1' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:128 tangent ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:128 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:129 hyp. tangent ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:129 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:131 trunc ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:131 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:134 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:134 Constant:
|
|
|
|
0:134 1.000000
|
|
|
|
0:134 2.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:138 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vu3;vu3; ( temp 3-component vector of float)
|
|
|
|
0:138 Function Parameters:
|
|
|
|
0:138 'inF0' ( in 3-component vector of float)
|
|
|
|
0:138 'inF1' ( in 3-component vector of float)
|
|
|
|
0:138 'inF2' ( in 3-component vector of float)
|
|
|
|
0:138 'inU0' ( in 3-component vector of uint)
|
|
|
|
0:138 'inU1' ( in 3-component vector of uint)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:139 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:139 Convert float to bool ( temp 3-component vector of bool)
|
|
|
|
0:139 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:140 Absolute value ( temp 3-component vector of float)
|
|
|
|
0:140 'inF0' ( in 3-component vector of float)
|
|
|
|
0:141 arc cosine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:141 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:142 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:142 Convert float to bool ( temp 3-component vector of bool)
|
|
|
|
0:142 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:143 arc sine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:143 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:144 floatBitsToInt ( temp 3-component vector of int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:144 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:145 floatBitsToUint ( temp 3-component vector of uint)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:145 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:146 intBitsToFloat ( temp 3-component vector of float)
|
|
|
|
0:146 'inU0' ( in 3-component vector of uint)
|
|
|
|
0:148 arc tangent ( temp 3-component vector of float)
|
|
|
|
0:148 'inF0' ( in 3-component vector of float)
|
|
|
|
0:149 arc tangent ( temp 3-component vector of float)
|
|
|
|
0:149 'inF0' ( in 3-component vector of float)
|
|
|
|
0:149 'inF1' ( in 3-component vector of float)
|
|
|
|
0:150 Ceiling ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:150 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:151 clamp ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:151 'inF0' ( in 3-component vector of float)
|
|
|
|
0:151 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:151 'inF2' ( in 3-component vector of float)
|
|
|
|
0:152 cosine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:152 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:153 hyp. cosine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:153 'inF0' ( in 3-component vector of float)
|
2021-05-11 08:42:11 +00:00
|
|
|
0:154 bitCount ( temp 3-component vector of int)
|
|
|
|
0:154 Constant:
|
|
|
|
0:154 7 (const int)
|
|
|
|
0:154 3 (const int)
|
|
|
|
0:154 5 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:155 cross-product ( temp 3-component vector of float)
|
|
|
|
0:155 'inF0' ( in 3-component vector of float)
|
|
|
|
0:155 'inF1' ( in 3-component vector of float)
|
|
|
|
0:156 degrees ( temp 3-component vector of float)
|
|
|
|
0:156 'inF0' ( in 3-component vector of float)
|
|
|
|
0:157 distance ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:157 'inF0' ( in 3-component vector of float)
|
|
|
|
0:157 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:158 dot-product ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:158 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:158 'inF1' ( in 3-component vector of float)
|
|
|
|
0:162 exp ( temp 3-component vector of float)
|
|
|
|
0:162 'inF0' ( in 3-component vector of float)
|
|
|
|
0:163 exp2 ( temp 3-component vector of float)
|
|
|
|
0:163 'inF0' ( in 3-component vector of float)
|
|
|
|
0:164 face-forward ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:164 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:164 'inF1' ( in 3-component vector of float)
|
|
|
|
0:164 'inF2' ( in 3-component vector of float)
|
|
|
|
0:165 findMSB ( temp int)
|
|
|
|
0:165 Constant:
|
|
|
|
0:165 7 (const int)
|
|
|
|
0:166 findLSB ( temp int)
|
|
|
|
0:166 Constant:
|
|
|
|
0:166 7 (const int)
|
|
|
|
0:167 Floor ( temp 3-component vector of float)
|
|
|
|
0:167 'inF0' ( in 3-component vector of float)
|
|
|
|
0:169 mod ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:169 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:169 'inF1' ( in 3-component vector of float)
|
|
|
|
0:170 Fraction ( temp 3-component vector of float)
|
|
|
|
0:170 'inF0' ( in 3-component vector of float)
|
|
|
|
0:171 isinf ( temp 3-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:171 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:172 isnan ( temp 3-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:172 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:173 ldexp ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:173 'inF0' ( in 3-component vector of float)
|
|
|
|
0:173 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:174 mix ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:174 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:174 'inF1' ( in 3-component vector of float)
|
|
|
|
0:174 'inF2' ( in 3-component vector of float)
|
|
|
|
0:175 length ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:175 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:176 log ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:176 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:177 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:177 log2 ( temp 3-component vector of float)
|
|
|
|
0:177 'inF0' ( in 3-component vector of float)
|
|
|
|
0:177 Constant:
|
|
|
|
0:177 0.301030
|
|
|
|
0:178 log2 ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:178 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:179 max ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:179 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:179 'inF1' ( in 3-component vector of float)
|
|
|
|
0:180 min ( temp 3-component vector of float)
|
|
|
|
0:180 'inF0' ( in 3-component vector of float)
|
|
|
|
0:180 'inF1' ( in 3-component vector of float)
|
|
|
|
0:182 normalize ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:182 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:183 pow ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:183 'inF0' ( in 3-component vector of float)
|
|
|
|
0:183 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:184 radians ( temp 3-component vector of float)
|
|
|
|
0:184 'inF0' ( in 3-component vector of float)
|
|
|
|
0:185 reflect ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:185 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:185 'inF1' ( in 3-component vector of float)
|
|
|
|
0:186 refract ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:186 'inF0' ( in 3-component vector of float)
|
|
|
|
0:186 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:186 Constant:
|
|
|
|
0:186 2.000000
|
2021-05-11 08:42:11 +00:00
|
|
|
0:187 bitFieldReverse ( temp 3-component vector of int)
|
|
|
|
0:187 Constant:
|
|
|
|
0:187 1 (const int)
|
|
|
|
0:187 2 (const int)
|
|
|
|
0:187 3 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:188 roundEven ( temp 3-component vector of float)
|
|
|
|
0:188 'inF0' ( in 3-component vector of float)
|
|
|
|
0:189 inverse sqrt ( temp 3-component vector of float)
|
|
|
|
0:189 'inF0' ( in 3-component vector of float)
|
|
|
|
0:190 clamp ( temp 3-component vector of float)
|
|
|
|
0:190 'inF0' ( in 3-component vector of float)
|
|
|
|
0:190 Constant:
|
|
|
|
0:190 0.000000
|
|
|
|
0:190 Constant:
|
|
|
|
0:190 1.000000
|
|
|
|
0:191 Sign ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:191 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:192 sine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:192 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:193 Sequence
|
|
|
|
0:193 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:193 'inF1' ( in 3-component vector of float)
|
|
|
|
0:193 sine ( temp 3-component vector of float)
|
|
|
|
0:193 'inF0' ( in 3-component vector of float)
|
|
|
|
0:193 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:193 'inF2' ( in 3-component vector of float)
|
|
|
|
0:193 cosine ( temp 3-component vector of float)
|
|
|
|
0:193 'inF0' ( in 3-component vector of float)
|
|
|
|
0:194 hyp. sine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:194 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:195 smoothstep ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:195 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:195 'inF1' ( in 3-component vector of float)
|
|
|
|
0:195 'inF2' ( in 3-component vector of float)
|
|
|
|
0:196 sqrt ( temp 3-component vector of float)
|
|
|
|
0:196 'inF0' ( in 3-component vector of float)
|
|
|
|
0:197 step ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:197 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:197 'inF1' ( in 3-component vector of float)
|
|
|
|
0:198 tangent ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:198 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:199 hyp. tangent ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:199 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:201 trunc ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:201 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:204 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:204 Constant:
|
|
|
|
0:204 1.000000
|
|
|
|
0:204 2.000000
|
|
|
|
0:204 3.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:208 Function Definition: VertexShaderFunction4(vf4;vf4;vf4;vu4;vu4; ( temp 4-component vector of float)
|
|
|
|
0:208 Function Parameters:
|
|
|
|
0:208 'inF0' ( in 4-component vector of float)
|
|
|
|
0:208 'inF1' ( in 4-component vector of float)
|
|
|
|
0:208 'inF2' ( in 4-component vector of float)
|
|
|
|
0:208 'inU0' ( in 4-component vector of uint)
|
|
|
|
0:208 'inU1' ( in 4-component vector of uint)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:209 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:209 Convert float to bool ( temp 4-component vector of bool)
|
|
|
|
0:209 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:210 Absolute value ( temp 4-component vector of float)
|
|
|
|
0:210 'inF0' ( in 4-component vector of float)
|
|
|
|
0:211 arc cosine ( temp 4-component vector of float)
|
|
|
|
0:211 'inF0' ( in 4-component vector of float)
|
|
|
|
0:212 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:212 Convert float to bool ( temp 4-component vector of bool)
|
|
|
|
0:212 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:213 arc sine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:213 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:214 floatBitsToInt ( temp 4-component vector of int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:214 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:215 floatBitsToUint ( temp 4-component vector of uint)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:215 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:216 intBitsToFloat ( temp 4-component vector of float)
|
|
|
|
0:216 'inU0' ( in 4-component vector of uint)
|
|
|
|
0:218 arc tangent ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:218 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:219 arc tangent ( temp 4-component vector of float)
|
|
|
|
0:219 'inF0' ( in 4-component vector of float)
|
|
|
|
0:219 'inF1' ( in 4-component vector of float)
|
|
|
|
0:220 Ceiling ( temp 4-component vector of float)
|
|
|
|
0:220 'inF0' ( in 4-component vector of float)
|
|
|
|
0:221 clamp ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:221 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:221 'inF1' ( in 4-component vector of float)
|
|
|
|
0:221 'inF2' ( in 4-component vector of float)
|
|
|
|
0:222 cosine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:222 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:223 hyp. cosine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:223 'inF0' ( in 4-component vector of float)
|
2021-05-11 08:42:11 +00:00
|
|
|
0:224 bitCount ( temp 4-component vector of int)
|
|
|
|
0:224 Constant:
|
|
|
|
0:224 7 (const int)
|
|
|
|
0:224 3 (const int)
|
|
|
|
0:224 5 (const int)
|
|
|
|
0:224 2 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:225 degrees ( temp 4-component vector of float)
|
|
|
|
0:225 'inF0' ( in 4-component vector of float)
|
|
|
|
0:226 distance ( temp float)
|
|
|
|
0:226 'inF0' ( in 4-component vector of float)
|
|
|
|
0:226 'inF1' ( in 4-component vector of float)
|
|
|
|
0:227 dot-product ( temp float)
|
|
|
|
0:227 'inF0' ( in 4-component vector of float)
|
|
|
|
0:227 'inF1' ( in 4-component vector of float)
|
|
|
|
0:228 Construct vec4 ( temp 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 1.000000
|
|
|
|
0:228 component-wise multiply ( temp float)
|
|
|
|
0:228 direct index ( temp float)
|
|
|
|
0:228 'inF0' ( in 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 1 (const int)
|
|
|
|
0:228 direct index ( temp float)
|
|
|
|
0:228 'inF1' ( in 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 1 (const int)
|
|
|
|
0:228 direct index ( temp float)
|
|
|
|
0:228 'inF0' ( in 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 2 (const int)
|
|
|
|
0:228 direct index ( temp float)
|
|
|
|
0:228 'inF1' ( in 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 3 (const int)
|
|
|
|
0:232 exp ( temp 4-component vector of float)
|
|
|
|
0:232 'inF0' ( in 4-component vector of float)
|
|
|
|
0:233 exp2 ( temp 4-component vector of float)
|
|
|
|
0:233 'inF0' ( in 4-component vector of float)
|
|
|
|
0:234 face-forward ( temp 4-component vector of float)
|
|
|
|
0:234 'inF0' ( in 4-component vector of float)
|
|
|
|
0:234 'inF1' ( in 4-component vector of float)
|
|
|
|
0:234 'inF2' ( in 4-component vector of float)
|
|
|
|
0:235 findMSB ( temp int)
|
|
|
|
0:235 Constant:
|
|
|
|
0:235 7 (const int)
|
|
|
|
0:236 findLSB ( temp int)
|
|
|
|
0:236 Constant:
|
|
|
|
0:236 7 (const int)
|
|
|
|
0:237 Floor ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:237 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:239 mod ( temp 4-component vector of float)
|
|
|
|
0:239 'inF0' ( in 4-component vector of float)
|
|
|
|
0:239 'inF1' ( in 4-component vector of float)
|
|
|
|
0:240 Fraction ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:240 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:241 isinf ( temp 4-component vector of bool)
|
|
|
|
0:241 'inF0' ( in 4-component vector of float)
|
|
|
|
0:242 isnan ( temp 4-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:242 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:243 ldexp ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:243 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:243 'inF1' ( in 4-component vector of float)
|
|
|
|
0:244 mix ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:244 'inF0' ( in 4-component vector of float)
|
|
|
|
0:244 'inF1' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:244 'inF2' ( in 4-component vector of float)
|
|
|
|
0:245 length ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:245 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:246 log ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:246 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:247 vector-scale ( temp 4-component vector of float)
|
|
|
|
0:247 log2 ( temp 4-component vector of float)
|
|
|
|
0:247 'inF0' ( in 4-component vector of float)
|
|
|
|
0:247 Constant:
|
|
|
|
0:247 0.301030
|
|
|
|
0:248 log2 ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:248 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:249 max ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:249 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:249 'inF1' ( in 4-component vector of float)
|
|
|
|
0:250 min ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:250 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:250 'inF1' ( in 4-component vector of float)
|
|
|
|
0:252 normalize ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:252 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:253 pow ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:253 'inF0' ( in 4-component vector of float)
|
|
|
|
0:253 'inF1' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:254 radians ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:254 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:255 reflect ( temp 4-component vector of float)
|
|
|
|
0:255 'inF0' ( in 4-component vector of float)
|
|
|
|
0:255 'inF1' ( in 4-component vector of float)
|
|
|
|
0:256 refract ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:256 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:256 'inF1' ( in 4-component vector of float)
|
|
|
|
0:256 Constant:
|
|
|
|
0:256 2.000000
|
2021-05-11 08:42:11 +00:00
|
|
|
0:257 bitFieldReverse ( temp 4-component vector of int)
|
|
|
|
0:257 Constant:
|
|
|
|
0:257 1 (const int)
|
|
|
|
0:257 2 (const int)
|
|
|
|
0:257 3 (const int)
|
|
|
|
0:257 4 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:258 roundEven ( temp 4-component vector of float)
|
|
|
|
0:258 'inF0' ( in 4-component vector of float)
|
|
|
|
0:259 inverse sqrt ( temp 4-component vector of float)
|
|
|
|
0:259 'inF0' ( in 4-component vector of float)
|
|
|
|
0:260 clamp ( temp 4-component vector of float)
|
|
|
|
0:260 'inF0' ( in 4-component vector of float)
|
|
|
|
0:260 Constant:
|
|
|
|
0:260 0.000000
|
|
|
|
0:260 Constant:
|
|
|
|
0:260 1.000000
|
|
|
|
0:261 Sign ( temp 4-component vector of float)
|
|
|
|
0:261 'inF0' ( in 4-component vector of float)
|
|
|
|
0:262 sine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:262 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:263 Sequence
|
|
|
|
0:263 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:263 'inF1' ( in 4-component vector of float)
|
|
|
|
0:263 sine ( temp 4-component vector of float)
|
|
|
|
0:263 'inF0' ( in 4-component vector of float)
|
|
|
|
0:263 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:263 'inF2' ( in 4-component vector of float)
|
|
|
|
0:263 cosine ( temp 4-component vector of float)
|
|
|
|
0:263 'inF0' ( in 4-component vector of float)
|
|
|
|
0:264 hyp. sine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:264 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:265 smoothstep ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:265 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:265 'inF1' ( in 4-component vector of float)
|
|
|
|
0:265 'inF2' ( in 4-component vector of float)
|
|
|
|
0:266 sqrt ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:266 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:267 step ( temp 4-component vector of float)
|
|
|
|
0:267 'inF0' ( in 4-component vector of float)
|
|
|
|
0:267 'inF1' ( in 4-component vector of float)
|
|
|
|
0:268 tangent ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:268 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:269 hyp. tangent ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:269 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:271 trunc ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:271 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:274 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:274 Constant:
|
|
|
|
0:274 1.000000
|
|
|
|
0:274 2.000000
|
|
|
|
0:274 3.000000
|
|
|
|
0:274 4.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:331 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; ( temp 2X2 matrix of float)
|
|
|
|
0:331 Function Parameters:
|
|
|
|
0:331 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:331 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:331 'inF2' ( in 2X2 matrix of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:333 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:333 Convert float to bool ( temp 2X2 matrix of bool)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:333 Absolute value ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 arc cosine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:333 Convert float to bool ( temp 2X2 matrix of bool)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:333 arc sine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 arc tangent ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 arc tangent ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 Ceiling ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 clamp ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF2' ( in 2X2 matrix of float)
|
|
|
|
0:333 cosine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 hyp. cosine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 degrees ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 determinant ( temp float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 exp ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 exp2 ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 findMSB ( temp int)
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 7 (const int)
|
|
|
|
0:333 findLSB ( temp int)
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 7 (const int)
|
|
|
|
0:333 Floor ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 mod ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 Fraction ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 ldexp ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 mix ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF2' ( in 2X2 matrix of float)
|
|
|
|
0:333 log ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 matrix-scale ( temp 2X2 matrix of float)
|
|
|
|
0:333 log2 ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 0.301030
|
|
|
|
0:333 log2 ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 max ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 min ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 pow ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 radians ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 roundEven ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 inverse sqrt ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 clamp ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 0.000000
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 1.000000
|
|
|
|
0:333 Sign ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 sine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 Sequence
|
|
|
|
0:333 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 sine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF2' ( in 2X2 matrix of float)
|
|
|
|
0:333 cosine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 hyp. sine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 smoothstep ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF2' ( in 2X2 matrix of float)
|
|
|
|
0:333 sqrt ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 step ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 tangent ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 hyp. tangent ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 transpose ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 trunc ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:336 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:336 Constant:
|
|
|
|
0:336 2.000000
|
|
|
|
0:336 2.000000
|
|
|
|
0:336 2.000000
|
|
|
|
0:336 2.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:340 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; ( temp 3X3 matrix of float)
|
|
|
|
0:340 Function Parameters:
|
|
|
|
0:340 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:340 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:340 'inF2' ( in 3X3 matrix of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:342 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:342 Convert float to bool ( temp 3X3 matrix of bool)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:342 Absolute value ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 arc cosine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:342 Convert float to bool ( temp 3X3 matrix of bool)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:342 arc sine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 arc tangent ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 arc tangent ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 Ceiling ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 clamp ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF2' ( in 3X3 matrix of float)
|
|
|
|
0:342 cosine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 hyp. cosine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 degrees ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 determinant ( temp float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 exp ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 exp2 ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 findMSB ( temp int)
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 7 (const int)
|
|
|
|
0:342 findLSB ( temp int)
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 7 (const int)
|
|
|
|
0:342 Floor ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 mod ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 Fraction ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 ldexp ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 mix ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF2' ( in 3X3 matrix of float)
|
|
|
|
0:342 log ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 matrix-scale ( temp 3X3 matrix of float)
|
|
|
|
0:342 log2 ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 0.301030
|
|
|
|
0:342 log2 ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 max ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 min ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 pow ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 radians ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 roundEven ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 inverse sqrt ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 clamp ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 0.000000
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 1.000000
|
|
|
|
0:342 Sign ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 sine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 Sequence
|
|
|
|
0:342 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 sine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF2' ( in 3X3 matrix of float)
|
|
|
|
0:342 cosine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 hyp. sine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 smoothstep ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF2' ( in 3X3 matrix of float)
|
|
|
|
0:342 sqrt ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 step ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 tangent ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 hyp. tangent ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 transpose ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 trunc ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:345 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:345 Constant:
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:349 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; ( temp 4X4 matrix of float)
|
|
|
|
0:349 Function Parameters:
|
|
|
|
0:349 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:349 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:349 'inF2' ( in 4X4 matrix of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:351 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:351 Convert float to bool ( temp 4X4 matrix of bool)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:351 Absolute value ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 arc cosine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:351 Convert float to bool ( temp 4X4 matrix of bool)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:351 arc sine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 arc tangent ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 arc tangent ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 Ceiling ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 clamp ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF2' ( in 4X4 matrix of float)
|
|
|
|
0:351 cosine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 hyp. cosine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 degrees ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 determinant ( temp float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 exp ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 exp2 ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 findMSB ( temp int)
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 7 (const int)
|
|
|
|
0:351 findLSB ( temp int)
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 7 (const int)
|
|
|
|
0:351 Floor ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 mod ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 Fraction ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 ldexp ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 mix ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF2' ( in 4X4 matrix of float)
|
|
|
|
0:351 log ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 matrix-scale ( temp 4X4 matrix of float)
|
|
|
|
0:351 log2 ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 0.301030
|
|
|
|
0:351 log2 ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 max ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 min ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 pow ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 radians ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 roundEven ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 inverse sqrt ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 clamp ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 0.000000
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 1.000000
|
|
|
|
0:351 Sign ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 sine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 Sequence
|
|
|
|
0:351 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 sine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF2' ( in 4X4 matrix of float)
|
|
|
|
0:351 cosine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 hyp. sine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 smoothstep ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF2' ( in 4X4 matrix of float)
|
|
|
|
0:351 sqrt ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 step ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 tangent ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 hyp. tangent ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 transpose ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 trunc ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:354 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:354 Constant:
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:372 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; ( temp void)
|
|
|
|
0:372 Function Parameters:
|
|
|
|
0:372 'inF0' ( in float)
|
|
|
|
0:372 'inF1' ( in float)
|
|
|
|
0:372 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:372 'inFV1' ( in 2-component vector of float)
|
|
|
|
0:372 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:372 'inFM1' ( in 2X2 matrix of float)
|
2016-06-09 14:57:35 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp float)
|
|
|
|
0:373 'r0' ( temp float)
|
|
|
|
0:373 component-wise multiply ( temp float)
|
|
|
|
0:373 'inF1' ( in float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:373 'r1' ( temp 2-component vector of float)
|
|
|
|
0:373 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:373 'r2' ( temp 2-component vector of float)
|
|
|
|
0:373 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp float)
|
|
|
|
0:373 'r3' ( temp float)
|
|
|
|
0:373 dot-product ( temp float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 'inFV1' ( in 2-component vector of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:373 'r4' ( temp 2-component vector of float)
|
|
|
|
0:373 vector-times-matrix ( temp 2-component vector of float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:373 'r5' ( temp 2-component vector of float)
|
|
|
|
0:373 matrix-times-vector ( temp 2-component vector of float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:373 'r6' ( temp 2X2 matrix of float)
|
|
|
|
0:373 matrix-scale ( temp 2X2 matrix of float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:373 'r7' ( temp 2X2 matrix of float)
|
|
|
|
0:373 matrix-scale ( temp 2X2 matrix of float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:373 'r8' ( temp 2X2 matrix of float)
|
|
|
|
0:373 matrix-multiply ( temp 2X2 matrix of float)
|
|
|
|
0:373 'inFM1' ( in 2X2 matrix of float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:379 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; ( temp void)
|
|
|
|
0:379 Function Parameters:
|
|
|
|
0:379 'inF0' ( in float)
|
|
|
|
0:379 'inF1' ( in float)
|
|
|
|
0:379 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:379 'inFV1' ( in 3-component vector of float)
|
|
|
|
0:379 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:379 'inFM1' ( in 3X3 matrix of float)
|
2016-06-09 14:57:35 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp float)
|
|
|
|
0:380 'r0' ( temp float)
|
|
|
|
0:380 component-wise multiply ( temp float)
|
|
|
|
0:380 'inF1' ( in float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:380 'r1' ( temp 3-component vector of float)
|
|
|
|
0:380 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:380 'r2' ( temp 3-component vector of float)
|
|
|
|
0:380 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp float)
|
|
|
|
0:380 'r3' ( temp float)
|
|
|
|
0:380 dot-product ( temp float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 'inFV1' ( in 3-component vector of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:380 'r4' ( temp 3-component vector of float)
|
|
|
|
0:380 vector-times-matrix ( temp 3-component vector of float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:380 'r5' ( temp 3-component vector of float)
|
|
|
|
0:380 matrix-times-vector ( temp 3-component vector of float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:380 'r6' ( temp 3X3 matrix of float)
|
|
|
|
0:380 matrix-scale ( temp 3X3 matrix of float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:380 'r7' ( temp 3X3 matrix of float)
|
|
|
|
0:380 matrix-scale ( temp 3X3 matrix of float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:380 'r8' ( temp 3X3 matrix of float)
|
|
|
|
0:380 matrix-multiply ( temp 3X3 matrix of float)
|
|
|
|
0:380 'inFM1' ( in 3X3 matrix of float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:386 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; ( temp void)
|
|
|
|
0:386 Function Parameters:
|
|
|
|
0:386 'inF0' ( in float)
|
|
|
|
0:386 'inF1' ( in float)
|
|
|
|
0:386 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:386 'inFV1' ( in 4-component vector of float)
|
|
|
|
0:386 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:386 'inFM1' ( in 4X4 matrix of float)
|
2016-06-09 14:57:35 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp float)
|
|
|
|
0:387 'r0' ( temp float)
|
|
|
|
0:387 component-wise multiply ( temp float)
|
|
|
|
0:387 'inF1' ( in float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:387 'r1' ( temp 4-component vector of float)
|
|
|
|
0:387 vector-scale ( temp 4-component vector of float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:387 'r2' ( temp 4-component vector of float)
|
|
|
|
0:387 vector-scale ( temp 4-component vector of float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp float)
|
|
|
|
0:387 'r3' ( temp float)
|
|
|
|
0:387 dot-product ( temp float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 'inFV1' ( in 4-component vector of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:387 'r4' ( temp 4-component vector of float)
|
|
|
|
0:387 vector-times-matrix ( temp 4-component vector of float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:387 'r5' ( temp 4-component vector of float)
|
|
|
|
0:387 matrix-times-vector ( temp 4-component vector of float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:387 'r6' ( temp 4X4 matrix of float)
|
|
|
|
0:387 matrix-scale ( temp 4X4 matrix of float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:387 'r7' ( temp 4X4 matrix of float)
|
|
|
|
0:387 matrix-scale ( temp 4X4 matrix of float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:387 'r8' ( temp 4X4 matrix of float)
|
|
|
|
0:387 matrix-multiply ( temp 4X4 matrix of float)
|
|
|
|
0:387 'inFM1' ( in 4X4 matrix of float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:396 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf23;mf32;mf33;mf34;mf24; ( temp void)
|
|
|
|
0:396 Function Parameters:
|
|
|
|
0:396 'inF0' ( in float)
|
|
|
|
0:396 'inF1' ( in float)
|
|
|
|
0:396 'inFV2' ( in 2-component vector of float)
|
|
|
|
0:396 'inFV3' ( in 3-component vector of float)
|
|
|
|
0:396 'inFM2x3' ( in 2X3 matrix of float)
|
|
|
|
0:396 'inFM3x2' ( in 3X2 matrix of float)
|
|
|
|
0:396 'inFM3x3' ( in 3X3 matrix of float)
|
|
|
|
0:396 'inFM3x4' ( in 3X4 matrix of float)
|
|
|
|
0:396 'inFM2x4' ( in 2X4 matrix of float)
|
2016-06-20 19:26:59 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:397 Sequence
|
|
|
|
0:397 move second child to first child ( temp float)
|
|
|
|
0:397 'r00' ( temp float)
|
|
|
|
0:397 component-wise multiply ( temp float)
|
|
|
|
0:397 'inF1' ( in float)
|
|
|
|
0:397 'inF0' ( in float)
|
|
|
|
0:398 Sequence
|
|
|
|
0:398 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:398 'r01' ( temp 2-component vector of float)
|
|
|
|
0:398 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:398 'inF0' ( in float)
|
|
|
|
0:398 'inFV2' ( in 2-component vector of float)
|
|
|
|
0:399 Sequence
|
|
|
|
0:399 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:399 'r02' ( temp 3-component vector of float)
|
|
|
|
0:399 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:399 'inF0' ( in float)
|
|
|
|
0:399 'inFV3' ( in 3-component vector of float)
|
|
|
|
0:400 Sequence
|
|
|
|
0:400 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:400 'r03' ( temp 2-component vector of float)
|
|
|
|
0:400 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:400 'inFV2' ( in 2-component vector of float)
|
|
|
|
0:400 'inF0' ( in float)
|
|
|
|
0:401 Sequence
|
|
|
|
0:401 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:401 'r04' ( temp 3-component vector of float)
|
|
|
|
0:401 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:401 'inFV3' ( in 3-component vector of float)
|
|
|
|
0:401 'inF0' ( in float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:402 Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:402 move second child to first child ( temp float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:402 'r05' ( temp float)
|
|
|
|
0:402 dot-product ( temp float)
|
|
|
|
0:402 'inFV2' ( in 2-component vector of float)
|
|
|
|
0:402 'inFV2' ( in 2-component vector of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:403 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:403 move second child to first child ( temp float)
|
|
|
|
0:403 'r06' ( temp float)
|
|
|
|
0:403 dot-product ( temp float)
|
|
|
|
0:403 'inFV3' ( in 3-component vector of float)
|
|
|
|
0:403 'inFV3' ( in 3-component vector of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:404 Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:404 move second child to first child ( temp 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:404 'r07' ( temp 3-component vector of float)
|
|
|
|
0:404 matrix-times-vector ( temp 3-component vector of float)
|
|
|
|
0:404 'inFM2x3' ( in 2X3 matrix of float)
|
|
|
|
0:404 'inFV2' ( in 2-component vector of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:405 Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:405 move second child to first child ( temp 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:405 'r08' ( temp 2-component vector of float)
|
|
|
|
0:405 matrix-times-vector ( temp 2-component vector of float)
|
|
|
|
0:405 'inFM3x2' ( in 3X2 matrix of float)
|
|
|
|
0:405 'inFV3' ( in 3-component vector of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:406 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:406 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:406 'r09' ( temp 2-component vector of float)
|
|
|
|
0:406 vector-times-matrix ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:406 'inFV3' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:406 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:407 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:407 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:407 'r10' ( temp 3-component vector of float)
|
|
|
|
0:407 vector-times-matrix ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:407 'inFV2' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:407 'inFM3x2' ( in 3X2 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:408 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:408 move second child to first child ( temp 2X3 matrix of float)
|
|
|
|
0:408 'r11' ( temp 2X3 matrix of float)
|
|
|
|
0:408 matrix-scale ( temp 2X3 matrix of float)
|
|
|
|
0:408 'inF0' ( in float)
|
|
|
|
0:408 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:409 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:409 move second child to first child ( temp 3X2 matrix of float)
|
|
|
|
0:409 'r12' ( temp 3X2 matrix of float)
|
|
|
|
0:409 matrix-scale ( temp 3X2 matrix of float)
|
|
|
|
0:409 'inF0' ( in float)
|
|
|
|
0:409 'inFM3x2' ( in 3X2 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:410 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:410 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:410 'r13' ( temp 2X2 matrix of float)
|
|
|
|
0:410 matrix-multiply ( temp 2X2 matrix of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:410 'inFM3x2' ( in 3X2 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:410 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:411 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:411 move second child to first child ( temp 2X3 matrix of float)
|
|
|
|
0:411 'r14' ( temp 2X3 matrix of float)
|
|
|
|
0:411 matrix-multiply ( temp 2X3 matrix of float)
|
|
|
|
0:411 'inFM3x3' ( in 3X3 matrix of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:411 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:412 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:412 move second child to first child ( temp 2X4 matrix of float)
|
|
|
|
0:412 'r15' ( temp 2X4 matrix of float)
|
|
|
|
0:412 matrix-multiply ( temp 2X4 matrix of float)
|
|
|
|
0:412 'inFM3x4' ( in 3X4 matrix of float)
|
|
|
|
0:412 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:413 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:413 move second child to first child ( temp 3X4 matrix of float)
|
|
|
|
0:413 'r16' ( temp 3X4 matrix of float)
|
|
|
|
0:413 matrix-multiply ( temp 3X4 matrix of float)
|
|
|
|
0:413 'inFM2x4' ( in 2X4 matrix of float)
|
|
|
|
0:413 'inFM3x2' ( in 3X2 matrix of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Linker Objects
|
|
|
|
|
|
|
|
|
|
|
|
Linked vertex stage:
|
|
|
|
|
2016-11-26 20:45:18 +00:00
|
|
|
WARNING: Linking vertex stage: Entry point not found
|
2016-05-26 16:10:16 +00:00
|
|
|
|
2017-04-07 21:33:08 +00:00
|
|
|
Shader version: 500
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:2 Function Definition: VertexShaderFunctionS(f1;f1;f1;u1;u1; ( temp float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:2 Function Parameters:
|
2017-03-15 01:43:13 +00:00
|
|
|
0:2 'inF0' ( in float)
|
|
|
|
0:2 'inF1' ( in float)
|
|
|
|
0:2 'inF2' ( in float)
|
|
|
|
0:2 'inU0' ( in uint)
|
|
|
|
0:2 'inU1' ( in uint)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:3 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:3 Convert float to bool ( temp bool)
|
|
|
|
0:3 'inF0' ( in float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:4 Absolute value ( temp float)
|
|
|
|
0:4 'inF0' ( in float)
|
|
|
|
0:5 arc cosine ( temp float)
|
|
|
|
0:5 'inF0' ( in float)
|
|
|
|
0:6 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:6 Convert float to bool ( temp bool)
|
|
|
|
0:6 'inF0' ( in float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:7 arc sine ( temp float)
|
|
|
|
0:7 'inF0' ( in float)
|
|
|
|
0:8 floatBitsToInt ( temp int)
|
|
|
|
0:8 'inF0' ( in float)
|
|
|
|
0:9 floatBitsToUint ( temp uint)
|
|
|
|
0:9 'inF0' ( in float)
|
|
|
|
0:10 intBitsToFloat ( temp float)
|
|
|
|
0:10 'inU0' ( in uint)
|
|
|
|
0:12 arc tangent ( temp float)
|
|
|
|
0:12 'inF0' ( in float)
|
|
|
|
0:13 arc tangent ( temp float)
|
|
|
|
0:13 'inF0' ( in float)
|
|
|
|
0:13 'inF1' ( in float)
|
|
|
|
0:14 Ceiling ( temp float)
|
|
|
|
0:14 'inF0' ( in float)
|
|
|
|
0:15 clamp ( temp float)
|
|
|
|
0:15 'inF0' ( in float)
|
|
|
|
0:15 'inF1' ( in float)
|
|
|
|
0:15 'inF2' ( in float)
|
|
|
|
0:16 cosine ( temp float)
|
|
|
|
0:16 'inF0' ( in float)
|
|
|
|
0:17 hyp. cosine ( temp float)
|
|
|
|
0:17 'inF0' ( in float)
|
|
|
|
0:18 bitCount ( temp int)
|
2016-06-13 15:22:28 +00:00
|
|
|
0:18 Constant:
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
0:18 7 (const int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:19 degrees ( temp float)
|
|
|
|
0:19 'inF0' ( in float)
|
|
|
|
0:23 exp ( temp float)
|
|
|
|
0:23 'inF0' ( in float)
|
|
|
|
0:24 exp2 ( temp float)
|
|
|
|
0:24 'inF0' ( in float)
|
|
|
|
0:25 findMSB ( temp int)
|
2016-06-13 15:22:28 +00:00
|
|
|
0:25 Constant:
|
|
|
|
0:25 7 (const int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:26 findLSB ( temp int)
|
2016-06-13 15:22:28 +00:00
|
|
|
0:26 Constant:
|
|
|
|
0:26 7 (const int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:27 Floor ( temp float)
|
|
|
|
0:27 'inF0' ( in float)
|
|
|
|
0:29 mod ( temp float)
|
|
|
|
0:29 'inF0' ( in float)
|
|
|
|
0:29 'inF1' ( in float)
|
|
|
|
0:30 Fraction ( temp float)
|
|
|
|
0:30 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:31 isinf ( temp bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:31 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:32 isnan ( temp bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:32 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:33 ldexp ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:33 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:33 'inF1' ( in float)
|
|
|
|
0:34 mix ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:34 'inF0' ( in float)
|
|
|
|
0:34 'inF1' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:34 'inF2' ( in float)
|
|
|
|
0:35 log ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:35 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:36 component-wise multiply ( temp float)
|
|
|
|
0:36 log2 ( temp float)
|
|
|
|
0:36 'inF0' ( in float)
|
|
|
|
0:36 Constant:
|
|
|
|
0:36 0.301030
|
|
|
|
0:37 log2 ( temp float)
|
|
|
|
0:37 'inF0' ( in float)
|
|
|
|
0:38 max ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:38 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:38 'inF1' ( in float)
|
|
|
|
0:39 min ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:39 'inF0' ( in float)
|
|
|
|
0:39 'inF1' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:41 pow ( temp float)
|
|
|
|
0:41 'inF0' ( in float)
|
|
|
|
0:41 'inF1' ( in float)
|
|
|
|
0:42 radians ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:42 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:43 bitFieldReverse ( temp int)
|
|
|
|
0:43 Constant:
|
|
|
|
0:43 2 (const int)
|
|
|
|
0:44 roundEven ( temp float)
|
|
|
|
0:44 'inF0' ( in float)
|
|
|
|
0:45 inverse sqrt ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:45 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:46 clamp ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:46 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:46 Constant:
|
|
|
|
0:46 0.000000
|
|
|
|
0:46 Constant:
|
|
|
|
0:46 1.000000
|
|
|
|
0:47 Sign ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:47 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:48 sine ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:48 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:49 Sequence
|
|
|
|
0:49 move second child to first child ( temp float)
|
|
|
|
0:49 'inF1' ( in float)
|
|
|
|
0:49 sine ( temp float)
|
|
|
|
0:49 'inF0' ( in float)
|
|
|
|
0:49 move second child to first child ( temp float)
|
|
|
|
0:49 'inF2' ( in float)
|
|
|
|
0:49 cosine ( temp float)
|
|
|
|
0:49 'inF0' ( in float)
|
|
|
|
0:50 hyp. sine ( temp float)
|
|
|
|
0:50 'inF0' ( in float)
|
|
|
|
0:51 smoothstep ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:51 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:51 'inF1' ( in float)
|
|
|
|
0:51 'inF2' ( in float)
|
|
|
|
0:52 sqrt ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:52 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:53 step ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:53 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:53 'inF1' ( in float)
|
|
|
|
0:54 tangent ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:54 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:55 hyp. tangent ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:55 'inF0' ( in float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:57 trunc ( temp float)
|
|
|
|
0:57 'inF0' ( in float)
|
|
|
|
0:59 Branch: Return with expression
|
|
|
|
0:59 Constant:
|
|
|
|
0:59 0.000000
|
|
|
|
0:63 Function Definition: VertexShaderFunction1(vf1;vf1;vf1; ( temp 1-component vector of float)
|
|
|
|
0:63 Function Parameters:
|
|
|
|
0:63 'inF0' ( in 1-component vector of float)
|
|
|
|
0:63 'inF1' ( in 1-component vector of float)
|
|
|
|
0:63 'inF2' ( in 1-component vector of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:65 Branch: Return with expression
|
|
|
|
0:65 Constant:
|
|
|
|
0:65 0.000000
|
|
|
|
0:69 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vu2;vu2; ( temp 2-component vector of float)
|
|
|
|
0:69 Function Parameters:
|
|
|
|
0:69 'inF0' ( in 2-component vector of float)
|
|
|
|
0:69 'inF1' ( in 2-component vector of float)
|
|
|
|
0:69 'inF2' ( in 2-component vector of float)
|
|
|
|
0:69 'inU0' ( in 2-component vector of uint)
|
|
|
|
0:69 'inU1' ( in 2-component vector of uint)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:70 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:70 Convert float to bool ( temp 2-component vector of bool)
|
|
|
|
0:70 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:71 Absolute value ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:71 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:72 arc cosine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:72 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:73 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:73 Convert float to bool ( temp 2-component vector of bool)
|
|
|
|
0:73 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:74 arc sine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:74 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:75 floatBitsToInt ( temp 2-component vector of int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:75 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:76 floatBitsToUint ( temp 2-component vector of uint)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:76 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:77 intBitsToFloat ( temp 2-component vector of float)
|
|
|
|
0:77 'inU0' ( in 2-component vector of uint)
|
|
|
|
0:79 arc tangent ( temp 2-component vector of float)
|
|
|
|
0:79 'inF0' ( in 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:80 arc tangent ( temp 2-component vector of float)
|
|
|
|
0:80 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:80 'inF1' ( in 2-component vector of float)
|
|
|
|
0:81 Ceiling ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:81 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:82 clamp ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:82 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:82 'inF1' ( in 2-component vector of float)
|
|
|
|
0:82 'inF2' ( in 2-component vector of float)
|
|
|
|
0:83 cosine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:83 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:84 hyp. cosine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:84 'inF0' ( in 2-component vector of float)
|
2021-05-11 08:42:11 +00:00
|
|
|
0:85 bitCount ( temp 2-component vector of int)
|
|
|
|
0:85 Constant:
|
|
|
|
0:85 7 (const int)
|
|
|
|
0:85 3 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:86 degrees ( temp 2-component vector of float)
|
|
|
|
0:86 'inF0' ( in 2-component vector of float)
|
|
|
|
0:87 distance ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:87 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:87 'inF1' ( in 2-component vector of float)
|
|
|
|
0:88 dot-product ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:88 'inF0' ( in 2-component vector of float)
|
|
|
|
0:88 'inF1' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:92 exp ( temp 2-component vector of float)
|
|
|
|
0:92 'inF0' ( in 2-component vector of float)
|
|
|
|
0:93 exp2 ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:93 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:94 face-forward ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:94 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:94 'inF1' ( in 2-component vector of float)
|
|
|
|
0:94 'inF2' ( in 2-component vector of float)
|
|
|
|
0:95 findMSB ( temp int)
|
|
|
|
0:95 Constant:
|
|
|
|
0:95 7 (const int)
|
|
|
|
0:96 findLSB ( temp int)
|
2016-06-13 15:22:28 +00:00
|
|
|
0:96 Constant:
|
|
|
|
0:96 7 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:97 Floor ( temp 2-component vector of float)
|
|
|
|
0:97 'inF0' ( in 2-component vector of float)
|
|
|
|
0:99 mod ( temp 2-component vector of float)
|
|
|
|
0:99 'inF0' ( in 2-component vector of float)
|
|
|
|
0:99 'inF1' ( in 2-component vector of float)
|
|
|
|
0:100 Fraction ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:100 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:101 isinf ( temp 2-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:101 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:102 isnan ( temp 2-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:102 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:103 ldexp ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:103 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:103 'inF1' ( in 2-component vector of float)
|
|
|
|
0:104 mix ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:104 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:104 'inF1' ( in 2-component vector of float)
|
|
|
|
0:104 'inF2' ( in 2-component vector of float)
|
|
|
|
0:105 length ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:105 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:106 log ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:106 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:107 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:107 log2 ( temp 2-component vector of float)
|
|
|
|
0:107 'inF0' ( in 2-component vector of float)
|
|
|
|
0:107 Constant:
|
|
|
|
0:107 0.301030
|
|
|
|
0:108 log2 ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:108 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:109 max ( temp 2-component vector of float)
|
|
|
|
0:109 'inF0' ( in 2-component vector of float)
|
|
|
|
0:109 'inF1' ( in 2-component vector of float)
|
|
|
|
0:110 min ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:110 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:110 'inF1' ( in 2-component vector of float)
|
|
|
|
0:112 normalize ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:112 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:113 pow ( temp 2-component vector of float)
|
|
|
|
0:113 'inF0' ( in 2-component vector of float)
|
|
|
|
0:113 'inF1' ( in 2-component vector of float)
|
|
|
|
0:114 radians ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:114 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:115 reflect ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:115 'inF0' ( in 2-component vector of float)
|
|
|
|
0:115 'inF1' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:116 refract ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:116 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:116 'inF1' ( in 2-component vector of float)
|
|
|
|
0:116 Constant:
|
|
|
|
0:116 2.000000
|
2021-05-11 08:42:11 +00:00
|
|
|
0:117 bitFieldReverse ( temp 2-component vector of int)
|
|
|
|
0:117 Constant:
|
|
|
|
0:117 1 (const int)
|
|
|
|
0:117 2 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:118 roundEven ( temp 2-component vector of float)
|
|
|
|
0:118 'inF0' ( in 2-component vector of float)
|
|
|
|
0:119 inverse sqrt ( temp 2-component vector of float)
|
|
|
|
0:119 'inF0' ( in 2-component vector of float)
|
|
|
|
0:120 clamp ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:120 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:120 Constant:
|
|
|
|
0:120 0.000000
|
|
|
|
0:120 Constant:
|
|
|
|
0:120 1.000000
|
|
|
|
0:121 Sign ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:121 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:122 sine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:122 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:123 Sequence
|
|
|
|
0:123 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:123 'inF1' ( in 2-component vector of float)
|
|
|
|
0:123 sine ( temp 2-component vector of float)
|
|
|
|
0:123 'inF0' ( in 2-component vector of float)
|
|
|
|
0:123 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:123 'inF2' ( in 2-component vector of float)
|
|
|
|
0:123 cosine ( temp 2-component vector of float)
|
|
|
|
0:123 'inF0' ( in 2-component vector of float)
|
|
|
|
0:124 hyp. sine ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:124 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:125 smoothstep ( temp 2-component vector of float)
|
|
|
|
0:125 'inF0' ( in 2-component vector of float)
|
|
|
|
0:125 'inF1' ( in 2-component vector of float)
|
|
|
|
0:125 'inF2' ( in 2-component vector of float)
|
|
|
|
0:126 sqrt ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:126 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:127 step ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:127 'inF0' ( in 2-component vector of float)
|
|
|
|
0:127 'inF1' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:128 tangent ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:128 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:129 hyp. tangent ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:129 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:131 trunc ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:131 'inF0' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:134 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:134 Constant:
|
|
|
|
0:134 1.000000
|
|
|
|
0:134 2.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:138 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vu3;vu3; ( temp 3-component vector of float)
|
|
|
|
0:138 Function Parameters:
|
|
|
|
0:138 'inF0' ( in 3-component vector of float)
|
|
|
|
0:138 'inF1' ( in 3-component vector of float)
|
|
|
|
0:138 'inF2' ( in 3-component vector of float)
|
|
|
|
0:138 'inU0' ( in 3-component vector of uint)
|
|
|
|
0:138 'inU1' ( in 3-component vector of uint)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:139 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:139 Convert float to bool ( temp 3-component vector of bool)
|
|
|
|
0:139 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:140 Absolute value ( temp 3-component vector of float)
|
|
|
|
0:140 'inF0' ( in 3-component vector of float)
|
|
|
|
0:141 arc cosine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:141 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:142 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:142 Convert float to bool ( temp 3-component vector of bool)
|
|
|
|
0:142 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:143 arc sine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:143 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:144 floatBitsToInt ( temp 3-component vector of int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:144 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:145 floatBitsToUint ( temp 3-component vector of uint)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:145 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:146 intBitsToFloat ( temp 3-component vector of float)
|
|
|
|
0:146 'inU0' ( in 3-component vector of uint)
|
|
|
|
0:148 arc tangent ( temp 3-component vector of float)
|
|
|
|
0:148 'inF0' ( in 3-component vector of float)
|
|
|
|
0:149 arc tangent ( temp 3-component vector of float)
|
|
|
|
0:149 'inF0' ( in 3-component vector of float)
|
|
|
|
0:149 'inF1' ( in 3-component vector of float)
|
|
|
|
0:150 Ceiling ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:150 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:151 clamp ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:151 'inF0' ( in 3-component vector of float)
|
|
|
|
0:151 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:151 'inF2' ( in 3-component vector of float)
|
|
|
|
0:152 cosine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:152 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:153 hyp. cosine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:153 'inF0' ( in 3-component vector of float)
|
2021-05-11 08:42:11 +00:00
|
|
|
0:154 bitCount ( temp 3-component vector of int)
|
|
|
|
0:154 Constant:
|
|
|
|
0:154 7 (const int)
|
|
|
|
0:154 3 (const int)
|
|
|
|
0:154 5 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:155 cross-product ( temp 3-component vector of float)
|
|
|
|
0:155 'inF0' ( in 3-component vector of float)
|
|
|
|
0:155 'inF1' ( in 3-component vector of float)
|
|
|
|
0:156 degrees ( temp 3-component vector of float)
|
|
|
|
0:156 'inF0' ( in 3-component vector of float)
|
|
|
|
0:157 distance ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:157 'inF0' ( in 3-component vector of float)
|
|
|
|
0:157 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:158 dot-product ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:158 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:158 'inF1' ( in 3-component vector of float)
|
|
|
|
0:162 exp ( temp 3-component vector of float)
|
|
|
|
0:162 'inF0' ( in 3-component vector of float)
|
|
|
|
0:163 exp2 ( temp 3-component vector of float)
|
|
|
|
0:163 'inF0' ( in 3-component vector of float)
|
|
|
|
0:164 face-forward ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:164 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:164 'inF1' ( in 3-component vector of float)
|
|
|
|
0:164 'inF2' ( in 3-component vector of float)
|
|
|
|
0:165 findMSB ( temp int)
|
|
|
|
0:165 Constant:
|
|
|
|
0:165 7 (const int)
|
|
|
|
0:166 findLSB ( temp int)
|
|
|
|
0:166 Constant:
|
|
|
|
0:166 7 (const int)
|
|
|
|
0:167 Floor ( temp 3-component vector of float)
|
|
|
|
0:167 'inF0' ( in 3-component vector of float)
|
|
|
|
0:169 mod ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:169 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:169 'inF1' ( in 3-component vector of float)
|
|
|
|
0:170 Fraction ( temp 3-component vector of float)
|
|
|
|
0:170 'inF0' ( in 3-component vector of float)
|
|
|
|
0:171 isinf ( temp 3-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:171 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:172 isnan ( temp 3-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:172 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:173 ldexp ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:173 'inF0' ( in 3-component vector of float)
|
|
|
|
0:173 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:174 mix ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:174 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:174 'inF1' ( in 3-component vector of float)
|
|
|
|
0:174 'inF2' ( in 3-component vector of float)
|
|
|
|
0:175 length ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:175 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:176 log ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:176 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:177 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:177 log2 ( temp 3-component vector of float)
|
|
|
|
0:177 'inF0' ( in 3-component vector of float)
|
|
|
|
0:177 Constant:
|
|
|
|
0:177 0.301030
|
|
|
|
0:178 log2 ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:178 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:179 max ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:179 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:179 'inF1' ( in 3-component vector of float)
|
|
|
|
0:180 min ( temp 3-component vector of float)
|
|
|
|
0:180 'inF0' ( in 3-component vector of float)
|
|
|
|
0:180 'inF1' ( in 3-component vector of float)
|
|
|
|
0:182 normalize ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:182 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:183 pow ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:183 'inF0' ( in 3-component vector of float)
|
|
|
|
0:183 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:184 radians ( temp 3-component vector of float)
|
|
|
|
0:184 'inF0' ( in 3-component vector of float)
|
|
|
|
0:185 reflect ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:185 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:185 'inF1' ( in 3-component vector of float)
|
|
|
|
0:186 refract ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:186 'inF0' ( in 3-component vector of float)
|
|
|
|
0:186 'inF1' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:186 Constant:
|
|
|
|
0:186 2.000000
|
2021-05-11 08:42:11 +00:00
|
|
|
0:187 bitFieldReverse ( temp 3-component vector of int)
|
|
|
|
0:187 Constant:
|
|
|
|
0:187 1 (const int)
|
|
|
|
0:187 2 (const int)
|
|
|
|
0:187 3 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:188 roundEven ( temp 3-component vector of float)
|
|
|
|
0:188 'inF0' ( in 3-component vector of float)
|
|
|
|
0:189 inverse sqrt ( temp 3-component vector of float)
|
|
|
|
0:189 'inF0' ( in 3-component vector of float)
|
|
|
|
0:190 clamp ( temp 3-component vector of float)
|
|
|
|
0:190 'inF0' ( in 3-component vector of float)
|
|
|
|
0:190 Constant:
|
|
|
|
0:190 0.000000
|
|
|
|
0:190 Constant:
|
|
|
|
0:190 1.000000
|
|
|
|
0:191 Sign ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:191 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:192 sine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:192 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:193 Sequence
|
|
|
|
0:193 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:193 'inF1' ( in 3-component vector of float)
|
|
|
|
0:193 sine ( temp 3-component vector of float)
|
|
|
|
0:193 'inF0' ( in 3-component vector of float)
|
|
|
|
0:193 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:193 'inF2' ( in 3-component vector of float)
|
|
|
|
0:193 cosine ( temp 3-component vector of float)
|
|
|
|
0:193 'inF0' ( in 3-component vector of float)
|
|
|
|
0:194 hyp. sine ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:194 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:195 smoothstep ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:195 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:195 'inF1' ( in 3-component vector of float)
|
|
|
|
0:195 'inF2' ( in 3-component vector of float)
|
|
|
|
0:196 sqrt ( temp 3-component vector of float)
|
|
|
|
0:196 'inF0' ( in 3-component vector of float)
|
|
|
|
0:197 step ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:197 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:197 'inF1' ( in 3-component vector of float)
|
|
|
|
0:198 tangent ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:198 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:199 hyp. tangent ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:199 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:201 trunc ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:201 'inF0' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:204 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:204 Constant:
|
|
|
|
0:204 1.000000
|
|
|
|
0:204 2.000000
|
|
|
|
0:204 3.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:208 Function Definition: VertexShaderFunction4(vf4;vf4;vf4;vu4;vu4; ( temp 4-component vector of float)
|
|
|
|
0:208 Function Parameters:
|
|
|
|
0:208 'inF0' ( in 4-component vector of float)
|
|
|
|
0:208 'inF1' ( in 4-component vector of float)
|
|
|
|
0:208 'inF2' ( in 4-component vector of float)
|
|
|
|
0:208 'inU0' ( in 4-component vector of uint)
|
|
|
|
0:208 'inU1' ( in 4-component vector of uint)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:209 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:209 Convert float to bool ( temp 4-component vector of bool)
|
|
|
|
0:209 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:210 Absolute value ( temp 4-component vector of float)
|
|
|
|
0:210 'inF0' ( in 4-component vector of float)
|
|
|
|
0:211 arc cosine ( temp 4-component vector of float)
|
|
|
|
0:211 'inF0' ( in 4-component vector of float)
|
|
|
|
0:212 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:212 Convert float to bool ( temp 4-component vector of bool)
|
|
|
|
0:212 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:213 arc sine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:213 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:214 floatBitsToInt ( temp 4-component vector of int)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:214 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:215 floatBitsToUint ( temp 4-component vector of uint)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:215 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:216 intBitsToFloat ( temp 4-component vector of float)
|
|
|
|
0:216 'inU0' ( in 4-component vector of uint)
|
|
|
|
0:218 arc tangent ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:218 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:219 arc tangent ( temp 4-component vector of float)
|
|
|
|
0:219 'inF0' ( in 4-component vector of float)
|
|
|
|
0:219 'inF1' ( in 4-component vector of float)
|
|
|
|
0:220 Ceiling ( temp 4-component vector of float)
|
|
|
|
0:220 'inF0' ( in 4-component vector of float)
|
|
|
|
0:221 clamp ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:221 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:221 'inF1' ( in 4-component vector of float)
|
|
|
|
0:221 'inF2' ( in 4-component vector of float)
|
|
|
|
0:222 cosine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:222 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:223 hyp. cosine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:223 'inF0' ( in 4-component vector of float)
|
2021-05-11 08:42:11 +00:00
|
|
|
0:224 bitCount ( temp 4-component vector of int)
|
|
|
|
0:224 Constant:
|
|
|
|
0:224 7 (const int)
|
|
|
|
0:224 3 (const int)
|
|
|
|
0:224 5 (const int)
|
|
|
|
0:224 2 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:225 degrees ( temp 4-component vector of float)
|
|
|
|
0:225 'inF0' ( in 4-component vector of float)
|
|
|
|
0:226 distance ( temp float)
|
|
|
|
0:226 'inF0' ( in 4-component vector of float)
|
|
|
|
0:226 'inF1' ( in 4-component vector of float)
|
|
|
|
0:227 dot-product ( temp float)
|
|
|
|
0:227 'inF0' ( in 4-component vector of float)
|
|
|
|
0:227 'inF1' ( in 4-component vector of float)
|
|
|
|
0:228 Construct vec4 ( temp 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 1.000000
|
|
|
|
0:228 component-wise multiply ( temp float)
|
|
|
|
0:228 direct index ( temp float)
|
|
|
|
0:228 'inF0' ( in 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 1 (const int)
|
|
|
|
0:228 direct index ( temp float)
|
|
|
|
0:228 'inF1' ( in 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 1 (const int)
|
|
|
|
0:228 direct index ( temp float)
|
|
|
|
0:228 'inF0' ( in 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 2 (const int)
|
|
|
|
0:228 direct index ( temp float)
|
|
|
|
0:228 'inF1' ( in 4-component vector of float)
|
|
|
|
0:228 Constant:
|
|
|
|
0:228 3 (const int)
|
|
|
|
0:232 exp ( temp 4-component vector of float)
|
|
|
|
0:232 'inF0' ( in 4-component vector of float)
|
|
|
|
0:233 exp2 ( temp 4-component vector of float)
|
|
|
|
0:233 'inF0' ( in 4-component vector of float)
|
|
|
|
0:234 face-forward ( temp 4-component vector of float)
|
|
|
|
0:234 'inF0' ( in 4-component vector of float)
|
|
|
|
0:234 'inF1' ( in 4-component vector of float)
|
|
|
|
0:234 'inF2' ( in 4-component vector of float)
|
|
|
|
0:235 findMSB ( temp int)
|
|
|
|
0:235 Constant:
|
|
|
|
0:235 7 (const int)
|
|
|
|
0:236 findLSB ( temp int)
|
|
|
|
0:236 Constant:
|
|
|
|
0:236 7 (const int)
|
|
|
|
0:237 Floor ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:237 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:239 mod ( temp 4-component vector of float)
|
|
|
|
0:239 'inF0' ( in 4-component vector of float)
|
|
|
|
0:239 'inF1' ( in 4-component vector of float)
|
|
|
|
0:240 Fraction ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:240 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:241 isinf ( temp 4-component vector of bool)
|
|
|
|
0:241 'inF0' ( in 4-component vector of float)
|
|
|
|
0:242 isnan ( temp 4-component vector of bool)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:242 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:243 ldexp ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:243 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:243 'inF1' ( in 4-component vector of float)
|
|
|
|
0:244 mix ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:244 'inF0' ( in 4-component vector of float)
|
|
|
|
0:244 'inF1' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:244 'inF2' ( in 4-component vector of float)
|
|
|
|
0:245 length ( temp float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:245 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:246 log ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:246 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:247 vector-scale ( temp 4-component vector of float)
|
|
|
|
0:247 log2 ( temp 4-component vector of float)
|
|
|
|
0:247 'inF0' ( in 4-component vector of float)
|
|
|
|
0:247 Constant:
|
|
|
|
0:247 0.301030
|
|
|
|
0:248 log2 ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:248 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:249 max ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:249 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:249 'inF1' ( in 4-component vector of float)
|
|
|
|
0:250 min ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:250 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:250 'inF1' ( in 4-component vector of float)
|
|
|
|
0:252 normalize ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:252 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:253 pow ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:253 'inF0' ( in 4-component vector of float)
|
|
|
|
0:253 'inF1' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:254 radians ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:254 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:255 reflect ( temp 4-component vector of float)
|
|
|
|
0:255 'inF0' ( in 4-component vector of float)
|
|
|
|
0:255 'inF1' ( in 4-component vector of float)
|
|
|
|
0:256 refract ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:256 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:256 'inF1' ( in 4-component vector of float)
|
|
|
|
0:256 Constant:
|
|
|
|
0:256 2.000000
|
2021-05-11 08:42:11 +00:00
|
|
|
0:257 bitFieldReverse ( temp 4-component vector of int)
|
|
|
|
0:257 Constant:
|
|
|
|
0:257 1 (const int)
|
|
|
|
0:257 2 (const int)
|
|
|
|
0:257 3 (const int)
|
|
|
|
0:257 4 (const int)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:258 roundEven ( temp 4-component vector of float)
|
|
|
|
0:258 'inF0' ( in 4-component vector of float)
|
|
|
|
0:259 inverse sqrt ( temp 4-component vector of float)
|
|
|
|
0:259 'inF0' ( in 4-component vector of float)
|
|
|
|
0:260 clamp ( temp 4-component vector of float)
|
|
|
|
0:260 'inF0' ( in 4-component vector of float)
|
|
|
|
0:260 Constant:
|
|
|
|
0:260 0.000000
|
|
|
|
0:260 Constant:
|
|
|
|
0:260 1.000000
|
|
|
|
0:261 Sign ( temp 4-component vector of float)
|
|
|
|
0:261 'inF0' ( in 4-component vector of float)
|
|
|
|
0:262 sine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:262 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:263 Sequence
|
|
|
|
0:263 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:263 'inF1' ( in 4-component vector of float)
|
|
|
|
0:263 sine ( temp 4-component vector of float)
|
|
|
|
0:263 'inF0' ( in 4-component vector of float)
|
|
|
|
0:263 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:263 'inF2' ( in 4-component vector of float)
|
|
|
|
0:263 cosine ( temp 4-component vector of float)
|
|
|
|
0:263 'inF0' ( in 4-component vector of float)
|
|
|
|
0:264 hyp. sine ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:264 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:265 smoothstep ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:265 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:265 'inF1' ( in 4-component vector of float)
|
|
|
|
0:265 'inF2' ( in 4-component vector of float)
|
|
|
|
0:266 sqrt ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:266 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:267 step ( temp 4-component vector of float)
|
|
|
|
0:267 'inF0' ( in 4-component vector of float)
|
|
|
|
0:267 'inF1' ( in 4-component vector of float)
|
|
|
|
0:268 tangent ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:268 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:269 hyp. tangent ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:269 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:271 trunc ( temp 4-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:271 'inF0' ( in 4-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:274 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:274 Constant:
|
|
|
|
0:274 1.000000
|
|
|
|
0:274 2.000000
|
|
|
|
0:274 3.000000
|
|
|
|
0:274 4.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:331 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; ( temp 2X2 matrix of float)
|
|
|
|
0:331 Function Parameters:
|
|
|
|
0:331 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:331 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:331 'inF2' ( in 2X2 matrix of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:333 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:333 Convert float to bool ( temp 2X2 matrix of bool)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:333 Absolute value ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 arc cosine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:333 Convert float to bool ( temp 2X2 matrix of bool)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:333 arc sine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 arc tangent ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 arc tangent ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 Ceiling ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 clamp ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF2' ( in 2X2 matrix of float)
|
|
|
|
0:333 cosine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 hyp. cosine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 degrees ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 determinant ( temp float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 exp ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 exp2 ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 findMSB ( temp int)
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 7 (const int)
|
|
|
|
0:333 findLSB ( temp int)
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 7 (const int)
|
|
|
|
0:333 Floor ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 mod ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 Fraction ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 ldexp ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 mix ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF2' ( in 2X2 matrix of float)
|
|
|
|
0:333 log ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 matrix-scale ( temp 2X2 matrix of float)
|
|
|
|
0:333 log2 ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 0.301030
|
|
|
|
0:333 log2 ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 max ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 min ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 pow ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 radians ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 roundEven ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 inverse sqrt ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 clamp ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 0.000000
|
|
|
|
0:333 Constant:
|
|
|
|
0:333 1.000000
|
|
|
|
0:333 Sign ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 sine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 Sequence
|
|
|
|
0:333 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 sine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF2' ( in 2X2 matrix of float)
|
|
|
|
0:333 cosine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 hyp. sine ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 smoothstep ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF2' ( in 2X2 matrix of float)
|
|
|
|
0:333 sqrt ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 step ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 'inF1' ( in 2X2 matrix of float)
|
|
|
|
0:333 tangent ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 hyp. tangent ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 transpose ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:333 trunc ( temp 2X2 matrix of float)
|
|
|
|
0:333 'inF0' ( in 2X2 matrix of float)
|
|
|
|
0:336 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:336 Constant:
|
|
|
|
0:336 2.000000
|
|
|
|
0:336 2.000000
|
|
|
|
0:336 2.000000
|
|
|
|
0:336 2.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:340 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; ( temp 3X3 matrix of float)
|
|
|
|
0:340 Function Parameters:
|
|
|
|
0:340 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:340 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:340 'inF2' ( in 3X3 matrix of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:342 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:342 Convert float to bool ( temp 3X3 matrix of bool)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:342 Absolute value ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 arc cosine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:342 Convert float to bool ( temp 3X3 matrix of bool)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:342 arc sine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 arc tangent ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 arc tangent ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 Ceiling ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 clamp ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF2' ( in 3X3 matrix of float)
|
|
|
|
0:342 cosine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 hyp. cosine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 degrees ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 determinant ( temp float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 exp ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 exp2 ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 findMSB ( temp int)
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 7 (const int)
|
|
|
|
0:342 findLSB ( temp int)
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 7 (const int)
|
|
|
|
0:342 Floor ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 mod ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 Fraction ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 ldexp ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 mix ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF2' ( in 3X3 matrix of float)
|
|
|
|
0:342 log ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 matrix-scale ( temp 3X3 matrix of float)
|
|
|
|
0:342 log2 ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 0.301030
|
|
|
|
0:342 log2 ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 max ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 min ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 pow ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 radians ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 roundEven ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 inverse sqrt ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 clamp ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 0.000000
|
|
|
|
0:342 Constant:
|
|
|
|
0:342 1.000000
|
|
|
|
0:342 Sign ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 sine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 Sequence
|
|
|
|
0:342 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 sine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF2' ( in 3X3 matrix of float)
|
|
|
|
0:342 cosine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 hyp. sine ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 smoothstep ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF2' ( in 3X3 matrix of float)
|
|
|
|
0:342 sqrt ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 step ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 'inF1' ( in 3X3 matrix of float)
|
|
|
|
0:342 tangent ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 hyp. tangent ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 transpose ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:342 trunc ( temp 3X3 matrix of float)
|
|
|
|
0:342 'inF0' ( in 3X3 matrix of float)
|
|
|
|
0:345 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:345 Constant:
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
|
|
|
0:345 3.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:349 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; ( temp 4X4 matrix of float)
|
|
|
|
0:349 Function Parameters:
|
|
|
|
0:349 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:349 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:349 'inF2' ( in 4X4 matrix of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:351 all ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:351 Convert float to bool ( temp 4X4 matrix of bool)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:351 Absolute value ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 arc cosine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 any ( temp bool)
|
2017-07-05 18:07:16 +00:00
|
|
|
0:351 Convert float to bool ( temp 4X4 matrix of bool)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:351 arc sine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 arc tangent ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 arc tangent ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 Ceiling ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 clamp ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF2' ( in 4X4 matrix of float)
|
|
|
|
0:351 cosine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 hyp. cosine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 degrees ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 determinant ( temp float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 exp ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 exp2 ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 findMSB ( temp int)
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 7 (const int)
|
|
|
|
0:351 findLSB ( temp int)
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 7 (const int)
|
|
|
|
0:351 Floor ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 mod ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 Fraction ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 ldexp ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 mix ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF2' ( in 4X4 matrix of float)
|
|
|
|
0:351 log ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 matrix-scale ( temp 4X4 matrix of float)
|
|
|
|
0:351 log2 ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 0.301030
|
|
|
|
0:351 log2 ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 max ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 min ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 pow ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 radians ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 roundEven ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 inverse sqrt ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 clamp ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 0.000000
|
|
|
|
0:351 Constant:
|
|
|
|
0:351 1.000000
|
|
|
|
0:351 Sign ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 sine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 Sequence
|
|
|
|
0:351 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 sine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF2' ( in 4X4 matrix of float)
|
|
|
|
0:351 cosine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 hyp. sine ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 smoothstep ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF2' ( in 4X4 matrix of float)
|
|
|
|
0:351 sqrt ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 step ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 'inF1' ( in 4X4 matrix of float)
|
|
|
|
0:351 tangent ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 hyp. tangent ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 transpose ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:351 trunc ( temp 4X4 matrix of float)
|
|
|
|
0:351 'inF0' ( in 4X4 matrix of float)
|
|
|
|
0:354 Branch: Return with expression
|
2021-05-11 08:42:11 +00:00
|
|
|
0:354 Constant:
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
|
|
|
0:354 4.000000
|
2017-03-29 09:04:58 +00:00
|
|
|
0:372 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; ( temp void)
|
|
|
|
0:372 Function Parameters:
|
|
|
|
0:372 'inF0' ( in float)
|
|
|
|
0:372 'inF1' ( in float)
|
|
|
|
0:372 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:372 'inFV1' ( in 2-component vector of float)
|
|
|
|
0:372 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:372 'inFM1' ( in 2X2 matrix of float)
|
2016-06-20 19:26:59 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp float)
|
|
|
|
0:373 'r0' ( temp float)
|
|
|
|
0:373 component-wise multiply ( temp float)
|
|
|
|
0:373 'inF1' ( in float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:373 'r1' ( temp 2-component vector of float)
|
|
|
|
0:373 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:373 'r2' ( temp 2-component vector of float)
|
|
|
|
0:373 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp float)
|
|
|
|
0:373 'r3' ( temp float)
|
|
|
|
0:373 dot-product ( temp float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 'inFV1' ( in 2-component vector of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:373 'r4' ( temp 2-component vector of float)
|
|
|
|
0:373 vector-times-matrix ( temp 2-component vector of float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:373 'r5' ( temp 2-component vector of float)
|
|
|
|
0:373 matrix-times-vector ( temp 2-component vector of float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:373 'inFV0' ( in 2-component vector of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:373 'r6' ( temp 2X2 matrix of float)
|
|
|
|
0:373 matrix-scale ( temp 2X2 matrix of float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:373 'r7' ( temp 2X2 matrix of float)
|
|
|
|
0:373 matrix-scale ( temp 2X2 matrix of float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:373 'inF0' ( in float)
|
|
|
|
0:373 Sequence
|
|
|
|
0:373 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:373 'r8' ( temp 2X2 matrix of float)
|
|
|
|
0:373 matrix-multiply ( temp 2X2 matrix of float)
|
|
|
|
0:373 'inFM1' ( in 2X2 matrix of float)
|
|
|
|
0:373 'inFM0' ( in 2X2 matrix of float)
|
|
|
|
0:379 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; ( temp void)
|
|
|
|
0:379 Function Parameters:
|
|
|
|
0:379 'inF0' ( in float)
|
|
|
|
0:379 'inF1' ( in float)
|
|
|
|
0:379 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:379 'inFV1' ( in 3-component vector of float)
|
|
|
|
0:379 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:379 'inFM1' ( in 3X3 matrix of float)
|
2016-06-09 14:57:35 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp float)
|
|
|
|
0:380 'r0' ( temp float)
|
|
|
|
0:380 component-wise multiply ( temp float)
|
|
|
|
0:380 'inF1' ( in float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:380 'r1' ( temp 3-component vector of float)
|
|
|
|
0:380 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:380 'r2' ( temp 3-component vector of float)
|
|
|
|
0:380 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp float)
|
|
|
|
0:380 'r3' ( temp float)
|
|
|
|
0:380 dot-product ( temp float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 'inFV1' ( in 3-component vector of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:380 'r4' ( temp 3-component vector of float)
|
|
|
|
0:380 vector-times-matrix ( temp 3-component vector of float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:380 'r5' ( temp 3-component vector of float)
|
|
|
|
0:380 matrix-times-vector ( temp 3-component vector of float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:380 'inFV0' ( in 3-component vector of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:380 'r6' ( temp 3X3 matrix of float)
|
|
|
|
0:380 matrix-scale ( temp 3X3 matrix of float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:380 'r7' ( temp 3X3 matrix of float)
|
|
|
|
0:380 matrix-scale ( temp 3X3 matrix of float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:380 'inF0' ( in float)
|
|
|
|
0:380 Sequence
|
|
|
|
0:380 move second child to first child ( temp 3X3 matrix of float)
|
|
|
|
0:380 'r8' ( temp 3X3 matrix of float)
|
|
|
|
0:380 matrix-multiply ( temp 3X3 matrix of float)
|
|
|
|
0:380 'inFM1' ( in 3X3 matrix of float)
|
|
|
|
0:380 'inFM0' ( in 3X3 matrix of float)
|
|
|
|
0:386 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; ( temp void)
|
|
|
|
0:386 Function Parameters:
|
|
|
|
0:386 'inF0' ( in float)
|
|
|
|
0:386 'inF1' ( in float)
|
|
|
|
0:386 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:386 'inFV1' ( in 4-component vector of float)
|
|
|
|
0:386 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:386 'inFM1' ( in 4X4 matrix of float)
|
2016-06-09 14:57:35 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp float)
|
|
|
|
0:387 'r0' ( temp float)
|
|
|
|
0:387 component-wise multiply ( temp float)
|
|
|
|
0:387 'inF1' ( in float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:387 'r1' ( temp 4-component vector of float)
|
|
|
|
0:387 vector-scale ( temp 4-component vector of float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:387 'r2' ( temp 4-component vector of float)
|
|
|
|
0:387 vector-scale ( temp 4-component vector of float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp float)
|
|
|
|
0:387 'r3' ( temp float)
|
|
|
|
0:387 dot-product ( temp float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 'inFV1' ( in 4-component vector of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:387 'r4' ( temp 4-component vector of float)
|
|
|
|
0:387 vector-times-matrix ( temp 4-component vector of float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4-component vector of float)
|
|
|
|
0:387 'r5' ( temp 4-component vector of float)
|
|
|
|
0:387 matrix-times-vector ( temp 4-component vector of float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:387 'inFV0' ( in 4-component vector of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:387 'r6' ( temp 4X4 matrix of float)
|
|
|
|
0:387 matrix-scale ( temp 4X4 matrix of float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:387 'r7' ( temp 4X4 matrix of float)
|
|
|
|
0:387 matrix-scale ( temp 4X4 matrix of float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:387 'inF0' ( in float)
|
|
|
|
0:387 Sequence
|
|
|
|
0:387 move second child to first child ( temp 4X4 matrix of float)
|
|
|
|
0:387 'r8' ( temp 4X4 matrix of float)
|
|
|
|
0:387 matrix-multiply ( temp 4X4 matrix of float)
|
|
|
|
0:387 'inFM1' ( in 4X4 matrix of float)
|
|
|
|
0:387 'inFM0' ( in 4X4 matrix of float)
|
|
|
|
0:396 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf23;mf32;mf33;mf34;mf24; ( temp void)
|
|
|
|
0:396 Function Parameters:
|
|
|
|
0:396 'inF0' ( in float)
|
|
|
|
0:396 'inF1' ( in float)
|
|
|
|
0:396 'inFV2' ( in 2-component vector of float)
|
|
|
|
0:396 'inFV3' ( in 3-component vector of float)
|
|
|
|
0:396 'inFM2x3' ( in 2X3 matrix of float)
|
|
|
|
0:396 'inFM3x2' ( in 3X2 matrix of float)
|
|
|
|
0:396 'inFM3x3' ( in 3X3 matrix of float)
|
|
|
|
0:396 'inFM3x4' ( in 3X4 matrix of float)
|
|
|
|
0:396 'inFM2x4' ( in 2X4 matrix of float)
|
2016-06-09 14:57:35 +00:00
|
|
|
0:? Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:397 Sequence
|
|
|
|
0:397 move second child to first child ( temp float)
|
|
|
|
0:397 'r00' ( temp float)
|
|
|
|
0:397 component-wise multiply ( temp float)
|
|
|
|
0:397 'inF1' ( in float)
|
|
|
|
0:397 'inF0' ( in float)
|
|
|
|
0:398 Sequence
|
|
|
|
0:398 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:398 'r01' ( temp 2-component vector of float)
|
|
|
|
0:398 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:398 'inF0' ( in float)
|
|
|
|
0:398 'inFV2' ( in 2-component vector of float)
|
|
|
|
0:399 Sequence
|
|
|
|
0:399 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:399 'r02' ( temp 3-component vector of float)
|
|
|
|
0:399 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:399 'inF0' ( in float)
|
|
|
|
0:399 'inFV3' ( in 3-component vector of float)
|
|
|
|
0:400 Sequence
|
|
|
|
0:400 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:400 'r03' ( temp 2-component vector of float)
|
|
|
|
0:400 vector-scale ( temp 2-component vector of float)
|
|
|
|
0:400 'inFV2' ( in 2-component vector of float)
|
|
|
|
0:400 'inF0' ( in float)
|
|
|
|
0:401 Sequence
|
|
|
|
0:401 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:401 'r04' ( temp 3-component vector of float)
|
|
|
|
0:401 vector-scale ( temp 3-component vector of float)
|
|
|
|
0:401 'inFV3' ( in 3-component vector of float)
|
|
|
|
0:401 'inF0' ( in float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:402 Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:402 move second child to first child ( temp float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:402 'r05' ( temp float)
|
|
|
|
0:402 dot-product ( temp float)
|
|
|
|
0:402 'inFV2' ( in 2-component vector of float)
|
|
|
|
0:402 'inFV2' ( in 2-component vector of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:403 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:403 move second child to first child ( temp float)
|
|
|
|
0:403 'r06' ( temp float)
|
|
|
|
0:403 dot-product ( temp float)
|
|
|
|
0:403 'inFV3' ( in 3-component vector of float)
|
|
|
|
0:403 'inFV3' ( in 3-component vector of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:404 Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:404 move second child to first child ( temp 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:404 'r07' ( temp 3-component vector of float)
|
|
|
|
0:404 matrix-times-vector ( temp 3-component vector of float)
|
|
|
|
0:404 'inFM2x3' ( in 2X3 matrix of float)
|
|
|
|
0:404 'inFV2' ( in 2-component vector of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:405 Sequence
|
2017-03-15 01:43:13 +00:00
|
|
|
0:405 move second child to first child ( temp 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:405 'r08' ( temp 2-component vector of float)
|
|
|
|
0:405 matrix-times-vector ( temp 2-component vector of float)
|
|
|
|
0:405 'inFM3x2' ( in 3X2 matrix of float)
|
|
|
|
0:405 'inFV3' ( in 3-component vector of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:406 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:406 move second child to first child ( temp 2-component vector of float)
|
|
|
|
0:406 'r09' ( temp 2-component vector of float)
|
|
|
|
0:406 vector-times-matrix ( temp 2-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:406 'inFV3' ( in 3-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:406 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:407 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:407 move second child to first child ( temp 3-component vector of float)
|
|
|
|
0:407 'r10' ( temp 3-component vector of float)
|
|
|
|
0:407 vector-times-matrix ( temp 3-component vector of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:407 'inFV2' ( in 2-component vector of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:407 'inFM3x2' ( in 3X2 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:408 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:408 move second child to first child ( temp 2X3 matrix of float)
|
|
|
|
0:408 'r11' ( temp 2X3 matrix of float)
|
|
|
|
0:408 matrix-scale ( temp 2X3 matrix of float)
|
|
|
|
0:408 'inF0' ( in float)
|
|
|
|
0:408 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:409 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:409 move second child to first child ( temp 3X2 matrix of float)
|
|
|
|
0:409 'r12' ( temp 3X2 matrix of float)
|
|
|
|
0:409 matrix-scale ( temp 3X2 matrix of float)
|
|
|
|
0:409 'inF0' ( in float)
|
|
|
|
0:409 'inFM3x2' ( in 3X2 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:410 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:410 move second child to first child ( temp 2X2 matrix of float)
|
|
|
|
0:410 'r13' ( temp 2X2 matrix of float)
|
|
|
|
0:410 matrix-multiply ( temp 2X2 matrix of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:410 'inFM3x2' ( in 3X2 matrix of float)
|
2017-03-29 09:04:58 +00:00
|
|
|
0:410 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:411 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:411 move second child to first child ( temp 2X3 matrix of float)
|
|
|
|
0:411 'r14' ( temp 2X3 matrix of float)
|
|
|
|
0:411 matrix-multiply ( temp 2X3 matrix of float)
|
|
|
|
0:411 'inFM3x3' ( in 3X3 matrix of float)
|
2017-03-15 01:43:13 +00:00
|
|
|
0:411 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:412 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:412 move second child to first child ( temp 2X4 matrix of float)
|
|
|
|
0:412 'r15' ( temp 2X4 matrix of float)
|
|
|
|
0:412 matrix-multiply ( temp 2X4 matrix of float)
|
|
|
|
0:412 'inFM3x4' ( in 3X4 matrix of float)
|
|
|
|
0:412 'inFM2x3' ( in 2X3 matrix of float)
|
2016-07-02 01:06:44 +00:00
|
|
|
0:413 Sequence
|
2017-03-29 09:04:58 +00:00
|
|
|
0:413 move second child to first child ( temp 3X4 matrix of float)
|
|
|
|
0:413 'r16' ( temp 3X4 matrix of float)
|
|
|
|
0:413 matrix-multiply ( temp 3X4 matrix of float)
|
|
|
|
0:413 'inFM2x4' ( in 2X4 matrix of float)
|
|
|
|
0:413 'inFM3x2' ( in 3X2 matrix of float)
|
2016-05-26 16:10:16 +00:00
|
|
|
0:? Linker Objects
|
|
|
|
|
2018-12-04 15:43:23 +00:00
|
|
|
Validation failed
|
2018-02-01 01:35:56 +00:00
|
|
|
// Module Version 10000
|
2022-10-13 00:16:41 +00:00
|
|
|
// Generated by (magic number): 8000b
|
2017-07-05 18:07:16 +00:00
|
|
|
// Id's are bound by 1225
|
2016-05-26 16:10:16 +00:00
|
|
|
|
|
|
|
Capability Shader
|
|
|
|
1: ExtInstImport "GLSL.std.450"
|
|
|
|
MemoryModel Logical GLSL450
|
2016-06-30 20:13:03 +00:00
|
|
|
EntryPoint Vertex 4 "VertexShaderFunction"
|
2017-04-07 21:33:08 +00:00
|
|
|
Source HLSL 500
|
2016-05-26 16:10:16 +00:00
|
|
|
Name 4 "VertexShaderFunction"
|
2016-06-30 20:13:03 +00:00
|
|
|
Name 16 "VertexShaderFunctionS(f1;f1;f1;u1;u1;"
|
|
|
|
Name 11 "inF0"
|
|
|
|
Name 12 "inF1"
|
|
|
|
Name 13 "inF2"
|
|
|
|
Name 14 "inU0"
|
|
|
|
Name 15 "inU1"
|
|
|
|
Name 22 "VertexShaderFunction1(vf1;vf1;vf1;"
|
|
|
|
Name 19 "inF0"
|
|
|
|
Name 20 "inF1"
|
|
|
|
Name 21 "inF2"
|
|
|
|
Name 34 "VertexShaderFunction2(vf2;vf2;vf2;vu2;vu2;"
|
|
|
|
Name 29 "inF0"
|
|
|
|
Name 30 "inF1"
|
|
|
|
Name 31 "inF2"
|
|
|
|
Name 32 "inU0"
|
|
|
|
Name 33 "inU1"
|
|
|
|
Name 46 "VertexShaderFunction3(vf3;vf3;vf3;vu3;vu3;"
|
|
|
|
Name 41 "inF0"
|
|
|
|
Name 42 "inF1"
|
|
|
|
Name 43 "inF2"
|
|
|
|
Name 44 "inU0"
|
|
|
|
Name 45 "inU1"
|
|
|
|
Name 58 "VertexShaderFunction4(vf4;vf4;vf4;vu4;vu4;"
|
|
|
|
Name 53 "inF0"
|
|
|
|
Name 54 "inF1"
|
|
|
|
Name 55 "inF2"
|
|
|
|
Name 56 "inU0"
|
|
|
|
Name 57 "inU1"
|
|
|
|
Name 66 "VertexShaderFunction2x2(mf22;mf22;mf22;"
|
|
|
|
Name 63 "inF0"
|
|
|
|
Name 64 "inF1"
|
|
|
|
Name 65 "inF2"
|
|
|
|
Name 74 "VertexShaderFunction3x3(mf33;mf33;mf33;"
|
|
|
|
Name 71 "inF0"
|
|
|
|
Name 72 "inF1"
|
|
|
|
Name 73 "inF2"
|
|
|
|
Name 82 "VertexShaderFunction4x4(mf44;mf44;mf44;"
|
|
|
|
Name 79 "inF0"
|
|
|
|
Name 80 "inF1"
|
|
|
|
Name 81 "inF2"
|
|
|
|
Name 91 "TestGenMul2(f1;f1;vf2;vf2;mf22;mf22;"
|
|
|
|
Name 85 "inF0"
|
|
|
|
Name 86 "inF1"
|
|
|
|
Name 87 "inFV0"
|
|
|
|
Name 88 "inFV1"
|
|
|
|
Name 89 "inFM0"
|
|
|
|
Name 90 "inFM1"
|
|
|
|
Name 100 "TestGenMul3(f1;f1;vf3;vf3;mf33;mf33;"
|
|
|
|
Name 94 "inF0"
|
|
|
|
Name 95 "inF1"
|
|
|
|
Name 96 "inFV0"
|
|
|
|
Name 97 "inFV1"
|
|
|
|
Name 98 "inFM0"
|
|
|
|
Name 99 "inFM1"
|
|
|
|
Name 109 "TestGenMul4(f1;f1;vf4;vf4;mf44;mf44;"
|
|
|
|
Name 103 "inF0"
|
|
|
|
Name 104 "inF1"
|
|
|
|
Name 105 "inFV0"
|
|
|
|
Name 106 "inFV1"
|
|
|
|
Name 107 "inFM0"
|
|
|
|
Name 108 "inFM1"
|
2016-08-24 20:36:13 +00:00
|
|
|
Name 129 "TestGenMulNxM(f1;f1;vf2;vf3;mf23;mf32;mf33;mf34;mf24;"
|
2016-06-30 20:13:03 +00:00
|
|
|
Name 120 "inF0"
|
|
|
|
Name 121 "inF1"
|
|
|
|
Name 122 "inFV2"
|
|
|
|
Name 123 "inFV3"
|
|
|
|
Name 124 "inFM2x3"
|
|
|
|
Name 125 "inFM3x2"
|
|
|
|
Name 126 "inFM3x3"
|
|
|
|
Name 127 "inFM3x4"
|
|
|
|
Name 128 "inFM2x4"
|
2017-07-05 18:07:16 +00:00
|
|
|
Name 1049 "r0"
|
|
|
|
Name 1053 "r1"
|
|
|
|
Name 1057 "r2"
|
|
|
|
Name 1061 "r3"
|
|
|
|
Name 1065 "r4"
|
|
|
|
Name 1069 "r5"
|
|
|
|
Name 1073 "r6"
|
|
|
|
Name 1077 "r7"
|
|
|
|
Name 1081 "r8"
|
|
|
|
Name 1085 "r0"
|
|
|
|
Name 1089 "r1"
|
|
|
|
Name 1093 "r2"
|
|
|
|
Name 1097 "r3"
|
|
|
|
Name 1101 "r4"
|
|
|
|
Name 1105 "r5"
|
|
|
|
Name 1109 "r6"
|
|
|
|
Name 1113 "r7"
|
|
|
|
Name 1117 "r8"
|
|
|
|
Name 1121 "r0"
|
|
|
|
Name 1125 "r1"
|
|
|
|
Name 1129 "r2"
|
|
|
|
Name 1133 "r3"
|
|
|
|
Name 1137 "r4"
|
|
|
|
Name 1141 "r5"
|
|
|
|
Name 1145 "r6"
|
|
|
|
Name 1149 "r7"
|
|
|
|
Name 1153 "r8"
|
|
|
|
Name 1157 "r00"
|
|
|
|
Name 1161 "r01"
|
|
|
|
Name 1165 "r02"
|
|
|
|
Name 1169 "r03"
|
|
|
|
Name 1173 "r04"
|
|
|
|
Name 1177 "r05"
|
|
|
|
Name 1181 "r06"
|
|
|
|
Name 1185 "r07"
|
|
|
|
Name 1189 "r08"
|
|
|
|
Name 1193 "r09"
|
|
|
|
Name 1197 "r10"
|
|
|
|
Name 1201 "r11"
|
|
|
|
Name 1205 "r12"
|
|
|
|
Name 1209 "r13"
|
|
|
|
Name 1213 "r14"
|
|
|
|
Name 1217 "r15"
|
|
|
|
Name 1221 "r16"
|
2016-05-26 16:10:16 +00:00
|
|
|
2: TypeVoid
|
|
|
|
3: TypeFunction 2
|
|
|
|
6: TypeFloat 32
|
|
|
|
7: TypePointer Function 6(float)
|
2016-06-30 20:13:03 +00:00
|
|
|
8: TypeInt 32 0
|
|
|
|
9: TypePointer Function 8(int)
|
|
|
|
10: TypeFunction 6(float) 7(ptr) 7(ptr) 7(ptr) 9(ptr) 9(ptr)
|
|
|
|
18: TypeFunction 6(float) 7(ptr) 7(ptr) 7(ptr)
|
|
|
|
24: TypeVector 6(float) 2
|
|
|
|
25: TypePointer Function 24(fvec2)
|
|
|
|
26: TypeVector 8(int) 2
|
|
|
|
27: TypePointer Function 26(ivec2)
|
|
|
|
28: TypeFunction 24(fvec2) 25(ptr) 25(ptr) 25(ptr) 27(ptr) 27(ptr)
|
|
|
|
36: TypeVector 6(float) 3
|
|
|
|
37: TypePointer Function 36(fvec3)
|
|
|
|
38: TypeVector 8(int) 3
|
|
|
|
39: TypePointer Function 38(ivec3)
|
|
|
|
40: TypeFunction 36(fvec3) 37(ptr) 37(ptr) 37(ptr) 39(ptr) 39(ptr)
|
|
|
|
48: TypeVector 6(float) 4
|
|
|
|
49: TypePointer Function 48(fvec4)
|
|
|
|
50: TypeVector 8(int) 4
|
|
|
|
51: TypePointer Function 50(ivec4)
|
|
|
|
52: TypeFunction 48(fvec4) 49(ptr) 49(ptr) 49(ptr) 51(ptr) 51(ptr)
|
|
|
|
60: TypeMatrix 24(fvec2) 2
|
|
|
|
61: TypePointer Function 60
|
|
|
|
62: TypeFunction 60 61(ptr) 61(ptr) 61(ptr)
|
|
|
|
68: TypeMatrix 36(fvec3) 3
|
|
|
|
69: TypePointer Function 68
|
|
|
|
70: TypeFunction 68 69(ptr) 69(ptr) 69(ptr)
|
|
|
|
76: TypeMatrix 48(fvec4) 4
|
|
|
|
77: TypePointer Function 76
|
|
|
|
78: TypeFunction 76 77(ptr) 77(ptr) 77(ptr)
|
|
|
|
84: TypeFunction 2 7(ptr) 7(ptr) 25(ptr) 25(ptr) 61(ptr) 61(ptr)
|
|
|
|
93: TypeFunction 2 7(ptr) 7(ptr) 37(ptr) 37(ptr) 69(ptr) 69(ptr)
|
|
|
|
102: TypeFunction 2 7(ptr) 7(ptr) 49(ptr) 49(ptr) 77(ptr) 77(ptr)
|
2016-08-24 20:36:13 +00:00
|
|
|
111: TypeMatrix 36(fvec3) 2
|
2016-06-30 20:13:03 +00:00
|
|
|
112: TypePointer Function 111
|
2016-08-24 20:36:13 +00:00
|
|
|
113: TypeMatrix 24(fvec2) 3
|
2016-06-30 20:13:03 +00:00
|
|
|
114: TypePointer Function 113
|
2016-08-24 20:36:13 +00:00
|
|
|
115: TypeMatrix 48(fvec4) 3
|
2016-06-30 20:13:03 +00:00
|
|
|
116: TypePointer Function 115
|
2016-08-24 20:36:13 +00:00
|
|
|
117: TypeMatrix 48(fvec4) 2
|
2016-06-30 20:13:03 +00:00
|
|
|
118: TypePointer Function 117
|
|
|
|
119: TypeFunction 2 7(ptr) 7(ptr) 25(ptr) 37(ptr) 112(ptr) 114(ptr) 69(ptr) 116(ptr) 118(ptr)
|
|
|
|
132: TypeBool
|
2017-07-05 18:07:16 +00:00
|
|
|
133: 6(float) Constant 0
|
|
|
|
146: TypeInt 32 1
|
|
|
|
167: 146(int) Constant 7
|
|
|
|
199: 6(float) Constant 1050288283
|
|
|
|
214: 146(int) Constant 2
|
|
|
|
221: 6(float) Constant 1065353216
|
|
|
|
253: TypeVector 132(bool) 2
|
|
|
|
254: 24(fvec2) ConstantComposite 133 133
|
|
|
|
267: TypeVector 146(int) 2
|
|
|
|
288: 146(int) Constant 3
|
|
|
|
289: 267(ivec2) ConstantComposite 167 288
|
|
|
|
354: 6(float) Constant 1073741824
|
|
|
|
356: 146(int) Constant 1
|
|
|
|
357: 267(ivec2) ConstantComposite 356 214
|
|
|
|
392: 24(fvec2) ConstantComposite 221 354
|
|
|
|
396: TypeVector 132(bool) 3
|
|
|
|
397: 36(fvec3) ConstantComposite 133 133 133
|
|
|
|
410: TypeVector 146(int) 3
|
|
|
|
431: 146(int) Constant 5
|
|
|
|
432: 410(ivec3) ConstantComposite 167 288 431
|
|
|
|
501: 410(ivec3) ConstantComposite 356 214 288
|
|
|
|
536: 6(float) Constant 1077936128
|
|
|
|
537: 36(fvec3) ConstantComposite 221 354 536
|
|
|
|
541: TypeVector 132(bool) 4
|
|
|
|
542: 48(fvec4) ConstantComposite 133 133 133 133
|
|
|
|
555: TypeVector 146(int) 4
|
|
|
|
576: 555(ivec4) ConstantComposite 167 288 431 214
|
|
|
|
586: 8(int) Constant 1
|
|
|
|
592: 8(int) Constant 2
|
|
|
|
595: 8(int) Constant 3
|
|
|
|
655: 146(int) Constant 4
|
|
|
|
656: 555(ivec4) ConstantComposite 356 214 288 655
|
|
|
|
691: 6(float) Constant 1082130432
|
|
|
|
692: 48(fvec4) ConstantComposite 221 354 536 691
|
|
|
|
696: TypeMatrix 253(bvec2) 2
|
|
|
|
806: 24(fvec2) ConstantComposite 354 354
|
|
|
|
807: 60 ConstantComposite 806 806
|
|
|
|
811: TypeMatrix 396(bvec3) 3
|
|
|
|
924: 36(fvec3) ConstantComposite 536 536 536
|
|
|
|
925: 68 ConstantComposite 924 924 924
|
|
|
|
929: TypeMatrix 541(bvec4) 4
|
|
|
|
1045: 48(fvec4) ConstantComposite 691 691 691 691
|
|
|
|
1046: 76 ConstantComposite 1045 1045 1045 1045
|
2016-05-26 16:10:16 +00:00
|
|
|
4(VertexShaderFunction): 2 Function None 3
|
|
|
|
5: Label
|
2016-11-26 20:23:20 +00:00
|
|
|
Return
|
2016-06-09 14:57:35 +00:00
|
|
|
FunctionEnd
|
2016-06-30 20:13:03 +00:00
|
|
|
16(VertexShaderFunctionS(f1;f1;f1;u1;u1;): 6(float) Function None 10
|
|
|
|
11(inF0): 7(ptr) FunctionParameter
|
|
|
|
12(inF1): 7(ptr) FunctionParameter
|
|
|
|
13(inF2): 7(ptr) FunctionParameter
|
|
|
|
14(inU0): 9(ptr) FunctionParameter
|
|
|
|
15(inU1): 9(ptr) FunctionParameter
|
|
|
|
17: Label
|
|
|
|
131: 6(float) Load 11(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
134: 132(bool) FUnordNotEqual 131 133
|
2017-07-05 18:07:16 +00:00
|
|
|
135: 132(bool) All 134
|
2016-06-30 20:13:03 +00:00
|
|
|
136: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
137: 6(float) ExtInst 1(GLSL.std.450) 4(FAbs) 136
|
2016-06-30 20:13:03 +00:00
|
|
|
138: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
139: 6(float) ExtInst 1(GLSL.std.450) 17(Acos) 138
|
2016-06-30 20:13:03 +00:00
|
|
|
140: 6(float) Load 11(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
141: 132(bool) FUnordNotEqual 140 133
|
2017-07-05 18:07:16 +00:00
|
|
|
142: 132(bool) Any 141
|
|
|
|
143: 6(float) Load 11(inF0)
|
|
|
|
144: 6(float) ExtInst 1(GLSL.std.450) 16(Asin) 143
|
2016-06-30 20:13:03 +00:00
|
|
|
145: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
147: 146(int) Bitcast 145
|
|
|
|
148: 6(float) Load 11(inF0)
|
|
|
|
149: 8(int) Bitcast 148
|
|
|
|
150: 8(int) Load 14(inU0)
|
|
|
|
151: 6(float) Bitcast 150
|
|
|
|
152: 6(float) Load 11(inF0)
|
|
|
|
153: 6(float) ExtInst 1(GLSL.std.450) 18(Atan) 152
|
2016-06-30 20:13:03 +00:00
|
|
|
154: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
155: 6(float) Load 12(inF1)
|
|
|
|
156: 6(float) ExtInst 1(GLSL.std.450) 25(Atan2) 154 155
|
|
|
|
157: 6(float) Load 11(inF0)
|
|
|
|
158: 6(float) ExtInst 1(GLSL.std.450) 9(Ceil) 157
|
|
|
|
159: 6(float) Load 11(inF0)
|
|
|
|
160: 6(float) Load 12(inF1)
|
|
|
|
161: 6(float) Load 13(inF2)
|
|
|
|
162: 6(float) ExtInst 1(GLSL.std.450) 43(FClamp) 159 160 161
|
|
|
|
163: 6(float) Load 11(inF0)
|
|
|
|
164: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 163
|
|
|
|
165: 6(float) Load 11(inF0)
|
|
|
|
166: 6(float) ExtInst 1(GLSL.std.450) 20(Cosh) 165
|
|
|
|
168: 146(int) BitCount 167
|
|
|
|
169: 6(float) Load 11(inF0)
|
|
|
|
170: 6(float) ExtInst 1(GLSL.std.450) 12(Degrees) 169
|
|
|
|
171: 6(float) Load 11(inF0)
|
|
|
|
172: 6(float) ExtInst 1(GLSL.std.450) 27(Exp) 171
|
|
|
|
173: 6(float) Load 11(inF0)
|
|
|
|
174: 6(float) ExtInst 1(GLSL.std.450) 29(Exp2) 173
|
|
|
|
175: 146(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 167
|
|
|
|
176: 146(int) ExtInst 1(GLSL.std.450) 73(FindILsb) 167
|
|
|
|
177: 6(float) Load 11(inF0)
|
|
|
|
178: 6(float) ExtInst 1(GLSL.std.450) 8(Floor) 177
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
179: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
180: 6(float) Load 12(inF1)
|
|
|
|
181: 6(float) FMod 179 180
|
|
|
|
182: 6(float) Load 11(inF0)
|
|
|
|
183: 6(float) ExtInst 1(GLSL.std.450) 10(Fract) 182
|
|
|
|
184: 6(float) Load 11(inF0)
|
|
|
|
185: 132(bool) IsInf 184
|
|
|
|
186: 6(float) Load 11(inF0)
|
|
|
|
187: 132(bool) IsNan 186
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
188: 6(float) Load 11(inF0)
|
2017-03-29 09:04:58 +00:00
|
|
|
189: 6(float) Load 12(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
190: 6(float) ExtInst 1(GLSL.std.450) 53(Ldexp) 188 189
|
|
|
|
191: 6(float) Load 11(inF0)
|
|
|
|
192: 6(float) Load 12(inF1)
|
|
|
|
193: 6(float) Load 13(inF2)
|
|
|
|
194: 6(float) ExtInst 1(GLSL.std.450) 46(FMix) 191 192 193
|
|
|
|
195: 6(float) Load 11(inF0)
|
|
|
|
196: 6(float) ExtInst 1(GLSL.std.450) 28(Log) 195
|
|
|
|
197: 6(float) Load 11(inF0)
|
|
|
|
198: 6(float) ExtInst 1(GLSL.std.450) 30(Log2) 197
|
|
|
|
200: 6(float) FMul 198 199
|
|
|
|
201: 6(float) Load 11(inF0)
|
|
|
|
202: 6(float) ExtInst 1(GLSL.std.450) 30(Log2) 201
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
203: 6(float) Load 11(inF0)
|
2017-03-29 09:04:58 +00:00
|
|
|
204: 6(float) Load 12(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
205: 6(float) ExtInst 1(GLSL.std.450) 40(FMax) 203 204
|
2017-03-29 09:04:58 +00:00
|
|
|
206: 6(float) Load 11(inF0)
|
|
|
|
207: 6(float) Load 12(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
208: 6(float) ExtInst 1(GLSL.std.450) 37(FMin) 206 207
|
2017-03-29 09:04:58 +00:00
|
|
|
209: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
210: 6(float) Load 12(inF1)
|
|
|
|
211: 6(float) ExtInst 1(GLSL.std.450) 26(Pow) 209 210
|
|
|
|
212: 6(float) Load 11(inF0)
|
|
|
|
213: 6(float) ExtInst 1(GLSL.std.450) 11(Radians) 212
|
|
|
|
215: 146(int) BitReverse 214
|
|
|
|
216: 6(float) Load 11(inF0)
|
|
|
|
217: 6(float) ExtInst 1(GLSL.std.450) 2(RoundEven) 216
|
|
|
|
218: 6(float) Load 11(inF0)
|
|
|
|
219: 6(float) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 218
|
|
|
|
220: 6(float) Load 11(inF0)
|
|
|
|
222: 6(float) ExtInst 1(GLSL.std.450) 43(FClamp) 220 133 221
|
2017-03-29 09:04:58 +00:00
|
|
|
223: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
224: 6(float) ExtInst 1(GLSL.std.450) 6(FSign) 223
|
2017-03-29 09:04:58 +00:00
|
|
|
225: 6(float) Load 11(inF0)
|
|
|
|
226: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 225
|
|
|
|
227: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
228: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 227
|
|
|
|
Store 12(inF1) 228
|
2017-03-29 09:04:58 +00:00
|
|
|
229: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
230: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 229
|
|
|
|
Store 13(inF2) 230
|
2017-03-29 09:04:58 +00:00
|
|
|
231: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
232: 6(float) ExtInst 1(GLSL.std.450) 19(Sinh) 231
|
|
|
|
233: 6(float) Load 11(inF0)
|
|
|
|
234: 6(float) Load 12(inF1)
|
|
|
|
235: 6(float) Load 13(inF2)
|
|
|
|
236: 6(float) ExtInst 1(GLSL.std.450) 49(SmoothStep) 233 234 235
|
2017-03-29 09:04:58 +00:00
|
|
|
237: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
238: 6(float) ExtInst 1(GLSL.std.450) 31(Sqrt) 237
|
|
|
|
239: 6(float) Load 11(inF0)
|
|
|
|
240: 6(float) Load 12(inF1)
|
|
|
|
241: 6(float) ExtInst 1(GLSL.std.450) 48(Step) 239 240
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
242: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
243: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 242
|
2017-03-29 09:04:58 +00:00
|
|
|
244: 6(float) Load 11(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
245: 6(float) ExtInst 1(GLSL.std.450) 21(Tanh) 244
|
|
|
|
246: 6(float) Load 11(inF0)
|
|
|
|
247: 6(float) ExtInst 1(GLSL.std.450) 3(Trunc) 246
|
|
|
|
ReturnValue 133
|
2016-06-30 20:13:03 +00:00
|
|
|
FunctionEnd
|
|
|
|
22(VertexShaderFunction1(vf1;vf1;vf1;): 6(float) Function None 18
|
|
|
|
19(inF0): 7(ptr) FunctionParameter
|
|
|
|
20(inF1): 7(ptr) FunctionParameter
|
|
|
|
21(inF2): 7(ptr) FunctionParameter
|
|
|
|
23: Label
|
2017-07-05 18:07:16 +00:00
|
|
|
ReturnValue 133
|
2016-06-30 20:13:03 +00:00
|
|
|
FunctionEnd
|
|
|
|
34(VertexShaderFunction2(vf2;vf2;vf2;vu2;vu2;): 24(fvec2) Function None 28
|
|
|
|
29(inF0): 25(ptr) FunctionParameter
|
|
|
|
30(inF1): 25(ptr) FunctionParameter
|
|
|
|
31(inF2): 25(ptr) FunctionParameter
|
|
|
|
32(inU0): 27(ptr) FunctionParameter
|
|
|
|
33(inU1): 27(ptr) FunctionParameter
|
|
|
|
35: Label
|
2017-03-29 09:04:58 +00:00
|
|
|
252: 24(fvec2) Load 29(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
255: 253(bvec2) FUnordNotEqual 252 254
|
2017-07-05 18:07:16 +00:00
|
|
|
256: 132(bool) All 255
|
|
|
|
257: 24(fvec2) Load 29(inF0)
|
|
|
|
258: 24(fvec2) ExtInst 1(GLSL.std.450) 4(FAbs) 257
|
|
|
|
259: 24(fvec2) Load 29(inF0)
|
|
|
|
260: 24(fvec2) ExtInst 1(GLSL.std.450) 17(Acos) 259
|
|
|
|
261: 24(fvec2) Load 29(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
262: 253(bvec2) FUnordNotEqual 261 254
|
2017-07-05 18:07:16 +00:00
|
|
|
263: 132(bool) Any 262
|
|
|
|
264: 24(fvec2) Load 29(inF0)
|
|
|
|
265: 24(fvec2) ExtInst 1(GLSL.std.450) 16(Asin) 264
|
|
|
|
266: 24(fvec2) Load 29(inF0)
|
|
|
|
268: 267(ivec2) Bitcast 266
|
2017-03-29 09:04:58 +00:00
|
|
|
269: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
270: 26(ivec2) Bitcast 269
|
|
|
|
271: 26(ivec2) Load 32(inU0)
|
|
|
|
272: 24(fvec2) Bitcast 271
|
|
|
|
273: 24(fvec2) Load 29(inF0)
|
|
|
|
274: 24(fvec2) ExtInst 1(GLSL.std.450) 18(Atan) 273
|
|
|
|
275: 24(fvec2) Load 29(inF0)
|
|
|
|
276: 24(fvec2) Load 30(inF1)
|
|
|
|
277: 24(fvec2) ExtInst 1(GLSL.std.450) 25(Atan2) 275 276
|
2017-03-29 09:04:58 +00:00
|
|
|
278: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
279: 24(fvec2) ExtInst 1(GLSL.std.450) 9(Ceil) 278
|
2017-03-29 09:04:58 +00:00
|
|
|
280: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
281: 24(fvec2) Load 30(inF1)
|
|
|
|
282: 24(fvec2) Load 31(inF2)
|
|
|
|
283: 24(fvec2) ExtInst 1(GLSL.std.450) 43(FClamp) 280 281 282
|
|
|
|
284: 24(fvec2) Load 29(inF0)
|
|
|
|
285: 24(fvec2) ExtInst 1(GLSL.std.450) 14(Cos) 284
|
|
|
|
286: 24(fvec2) Load 29(inF0)
|
|
|
|
287: 24(fvec2) ExtInst 1(GLSL.std.450) 20(Cosh) 286
|
|
|
|
290: 267(ivec2) BitCount 289
|
|
|
|
291: 24(fvec2) Load 29(inF0)
|
|
|
|
292: 24(fvec2) ExtInst 1(GLSL.std.450) 12(Degrees) 291
|
2017-03-29 09:04:58 +00:00
|
|
|
293: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
294: 24(fvec2) Load 30(inF1)
|
|
|
|
295: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 293 294
|
|
|
|
296: 24(fvec2) Load 29(inF0)
|
|
|
|
297: 24(fvec2) Load 30(inF1)
|
|
|
|
298: 6(float) Dot 296 297
|
|
|
|
299: 24(fvec2) Load 29(inF0)
|
|
|
|
300: 24(fvec2) ExtInst 1(GLSL.std.450) 27(Exp) 299
|
|
|
|
301: 24(fvec2) Load 29(inF0)
|
|
|
|
302: 24(fvec2) ExtInst 1(GLSL.std.450) 29(Exp2) 301
|
2017-03-29 09:04:58 +00:00
|
|
|
303: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
304: 24(fvec2) Load 30(inF1)
|
|
|
|
305: 24(fvec2) Load 31(inF2)
|
|
|
|
306: 24(fvec2) ExtInst 1(GLSL.std.450) 70(FaceForward) 303 304 305
|
|
|
|
307: 146(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 167
|
|
|
|
308: 146(int) ExtInst 1(GLSL.std.450) 73(FindILsb) 167
|
|
|
|
309: 24(fvec2) Load 29(inF0)
|
|
|
|
310: 24(fvec2) ExtInst 1(GLSL.std.450) 8(Floor) 309
|
|
|
|
311: 24(fvec2) Load 29(inF0)
|
|
|
|
312: 24(fvec2) Load 30(inF1)
|
|
|
|
313: 24(fvec2) FMod 311 312
|
|
|
|
314: 24(fvec2) Load 29(inF0)
|
|
|
|
315: 24(fvec2) ExtInst 1(GLSL.std.450) 10(Fract) 314
|
|
|
|
316: 24(fvec2) Load 29(inF0)
|
|
|
|
317: 253(bvec2) IsInf 316
|
2017-03-29 09:04:58 +00:00
|
|
|
318: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
319: 253(bvec2) IsNan 318
|
|
|
|
320: 24(fvec2) Load 29(inF0)
|
|
|
|
321: 24(fvec2) Load 30(inF1)
|
|
|
|
322: 24(fvec2) ExtInst 1(GLSL.std.450) 53(Ldexp) 320 321
|
|
|
|
323: 24(fvec2) Load 29(inF0)
|
|
|
|
324: 24(fvec2) Load 30(inF1)
|
|
|
|
325: 24(fvec2) Load 31(inF2)
|
|
|
|
326: 24(fvec2) ExtInst 1(GLSL.std.450) 46(FMix) 323 324 325
|
|
|
|
327: 24(fvec2) Load 29(inF0)
|
|
|
|
328: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 327
|
2017-03-29 09:04:58 +00:00
|
|
|
329: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
330: 24(fvec2) ExtInst 1(GLSL.std.450) 28(Log) 329
|
2017-03-29 09:04:58 +00:00
|
|
|
331: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
332: 24(fvec2) ExtInst 1(GLSL.std.450) 30(Log2) 331
|
|
|
|
333: 24(fvec2) VectorTimesScalar 332 199
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
334: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
335: 24(fvec2) ExtInst 1(GLSL.std.450) 30(Log2) 334
|
|
|
|
336: 24(fvec2) Load 29(inF0)
|
|
|
|
337: 24(fvec2) Load 30(inF1)
|
|
|
|
338: 24(fvec2) ExtInst 1(GLSL.std.450) 40(FMax) 336 337
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
339: 24(fvec2) Load 29(inF0)
|
2017-03-29 09:04:58 +00:00
|
|
|
340: 24(fvec2) Load 30(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
341: 24(fvec2) ExtInst 1(GLSL.std.450) 37(FMin) 339 340
|
2017-03-29 09:04:58 +00:00
|
|
|
342: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
343: 24(fvec2) ExtInst 1(GLSL.std.450) 69(Normalize) 342
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
344: 24(fvec2) Load 29(inF0)
|
|
|
|
345: 24(fvec2) Load 30(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
346: 24(fvec2) ExtInst 1(GLSL.std.450) 26(Pow) 344 345
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
347: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
348: 24(fvec2) ExtInst 1(GLSL.std.450) 11(Radians) 347
|
|
|
|
349: 24(fvec2) Load 29(inF0)
|
|
|
|
350: 24(fvec2) Load 30(inF1)
|
|
|
|
351: 24(fvec2) ExtInst 1(GLSL.std.450) 71(Reflect) 349 350
|
|
|
|
352: 24(fvec2) Load 29(inF0)
|
|
|
|
353: 24(fvec2) Load 30(inF1)
|
|
|
|
355: 24(fvec2) ExtInst 1(GLSL.std.450) 72(Refract) 352 353 354
|
|
|
|
358: 267(ivec2) BitReverse 357
|
|
|
|
359: 24(fvec2) Load 29(inF0)
|
|
|
|
360: 24(fvec2) ExtInst 1(GLSL.std.450) 2(RoundEven) 359
|
|
|
|
361: 24(fvec2) Load 29(inF0)
|
|
|
|
362: 24(fvec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 361
|
|
|
|
363: 24(fvec2) Load 29(inF0)
|
|
|
|
364: 24(fvec2) CompositeConstruct 133 133
|
|
|
|
365: 24(fvec2) CompositeConstruct 221 221
|
|
|
|
366: 24(fvec2) ExtInst 1(GLSL.std.450) 43(FClamp) 363 364 365
|
|
|
|
367: 24(fvec2) Load 29(inF0)
|
|
|
|
368: 24(fvec2) ExtInst 1(GLSL.std.450) 6(FSign) 367
|
|
|
|
369: 24(fvec2) Load 29(inF0)
|
|
|
|
370: 24(fvec2) ExtInst 1(GLSL.std.450) 13(Sin) 369
|
|
|
|
371: 24(fvec2) Load 29(inF0)
|
|
|
|
372: 24(fvec2) ExtInst 1(GLSL.std.450) 13(Sin) 371
|
|
|
|
Store 30(inF1) 372
|
|
|
|
373: 24(fvec2) Load 29(inF0)
|
|
|
|
374: 24(fvec2) ExtInst 1(GLSL.std.450) 14(Cos) 373
|
|
|
|
Store 31(inF2) 374
|
|
|
|
375: 24(fvec2) Load 29(inF0)
|
|
|
|
376: 24(fvec2) ExtInst 1(GLSL.std.450) 19(Sinh) 375
|
|
|
|
377: 24(fvec2) Load 29(inF0)
|
|
|
|
378: 24(fvec2) Load 30(inF1)
|
|
|
|
379: 24(fvec2) Load 31(inF2)
|
|
|
|
380: 24(fvec2) ExtInst 1(GLSL.std.450) 49(SmoothStep) 377 378 379
|
2017-03-29 09:04:58 +00:00
|
|
|
381: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
382: 24(fvec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 381
|
2017-03-29 09:04:58 +00:00
|
|
|
383: 24(fvec2) Load 29(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
384: 24(fvec2) Load 30(inF1)
|
|
|
|
385: 24(fvec2) ExtInst 1(GLSL.std.450) 48(Step) 383 384
|
|
|
|
386: 24(fvec2) Load 29(inF0)
|
|
|
|
387: 24(fvec2) ExtInst 1(GLSL.std.450) 15(Tan) 386
|
|
|
|
388: 24(fvec2) Load 29(inF0)
|
|
|
|
389: 24(fvec2) ExtInst 1(GLSL.std.450) 21(Tanh) 388
|
|
|
|
390: 24(fvec2) Load 29(inF0)
|
|
|
|
391: 24(fvec2) ExtInst 1(GLSL.std.450) 3(Trunc) 390
|
|
|
|
ReturnValue 392
|
2016-06-30 20:13:03 +00:00
|
|
|
FunctionEnd
|
|
|
|
46(VertexShaderFunction3(vf3;vf3;vf3;vu3;vu3;): 36(fvec3) Function None 40
|
|
|
|
41(inF0): 37(ptr) FunctionParameter
|
|
|
|
42(inF1): 37(ptr) FunctionParameter
|
|
|
|
43(inF2): 37(ptr) FunctionParameter
|
|
|
|
44(inU0): 39(ptr) FunctionParameter
|
|
|
|
45(inU1): 39(ptr) FunctionParameter
|
|
|
|
47: Label
|
2017-07-05 18:07:16 +00:00
|
|
|
395: 36(fvec3) Load 41(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
398: 396(bvec3) FUnordNotEqual 395 397
|
2017-07-05 18:07:16 +00:00
|
|
|
399: 132(bool) All 398
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
400: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
401: 36(fvec3) ExtInst 1(GLSL.std.450) 4(FAbs) 400
|
|
|
|
402: 36(fvec3) Load 41(inF0)
|
|
|
|
403: 36(fvec3) ExtInst 1(GLSL.std.450) 17(Acos) 402
|
|
|
|
404: 36(fvec3) Load 41(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
405: 396(bvec3) FUnordNotEqual 404 397
|
2017-07-05 18:07:16 +00:00
|
|
|
406: 132(bool) Any 405
|
2017-03-29 09:04:58 +00:00
|
|
|
407: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
408: 36(fvec3) ExtInst 1(GLSL.std.450) 16(Asin) 407
|
2017-03-29 09:04:58 +00:00
|
|
|
409: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
411: 410(ivec3) Bitcast 409
|
2017-03-29 09:04:58 +00:00
|
|
|
412: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
413: 38(ivec3) Bitcast 412
|
|
|
|
414: 38(ivec3) Load 44(inU0)
|
|
|
|
415: 36(fvec3) Bitcast 414
|
|
|
|
416: 36(fvec3) Load 41(inF0)
|
|
|
|
417: 36(fvec3) ExtInst 1(GLSL.std.450) 18(Atan) 416
|
2017-03-29 09:04:58 +00:00
|
|
|
418: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
419: 36(fvec3) Load 42(inF1)
|
|
|
|
420: 36(fvec3) ExtInst 1(GLSL.std.450) 25(Atan2) 418 419
|
|
|
|
421: 36(fvec3) Load 41(inF0)
|
|
|
|
422: 36(fvec3) ExtInst 1(GLSL.std.450) 9(Ceil) 421
|
|
|
|
423: 36(fvec3) Load 41(inF0)
|
|
|
|
424: 36(fvec3) Load 42(inF1)
|
|
|
|
425: 36(fvec3) Load 43(inF2)
|
|
|
|
426: 36(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 423 424 425
|
|
|
|
427: 36(fvec3) Load 41(inF0)
|
|
|
|
428: 36(fvec3) ExtInst 1(GLSL.std.450) 14(Cos) 427
|
|
|
|
429: 36(fvec3) Load 41(inF0)
|
|
|
|
430: 36(fvec3) ExtInst 1(GLSL.std.450) 20(Cosh) 429
|
|
|
|
433: 410(ivec3) BitCount 432
|
|
|
|
434: 36(fvec3) Load 41(inF0)
|
|
|
|
435: 36(fvec3) Load 42(inF1)
|
|
|
|
436: 36(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 434 435
|
|
|
|
437: 36(fvec3) Load 41(inF0)
|
|
|
|
438: 36(fvec3) ExtInst 1(GLSL.std.450) 12(Degrees) 437
|
|
|
|
439: 36(fvec3) Load 41(inF0)
|
|
|
|
440: 36(fvec3) Load 42(inF1)
|
|
|
|
441: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 439 440
|
|
|
|
442: 36(fvec3) Load 41(inF0)
|
|
|
|
443: 36(fvec3) Load 42(inF1)
|
|
|
|
444: 6(float) Dot 442 443
|
|
|
|
445: 36(fvec3) Load 41(inF0)
|
|
|
|
446: 36(fvec3) ExtInst 1(GLSL.std.450) 27(Exp) 445
|
|
|
|
447: 36(fvec3) Load 41(inF0)
|
|
|
|
448: 36(fvec3) ExtInst 1(GLSL.std.450) 29(Exp2) 447
|
|
|
|
449: 36(fvec3) Load 41(inF0)
|
|
|
|
450: 36(fvec3) Load 42(inF1)
|
|
|
|
451: 36(fvec3) Load 43(inF2)
|
|
|
|
452: 36(fvec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 449 450 451
|
|
|
|
453: 146(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 167
|
|
|
|
454: 146(int) ExtInst 1(GLSL.std.450) 73(FindILsb) 167
|
|
|
|
455: 36(fvec3) Load 41(inF0)
|
|
|
|
456: 36(fvec3) ExtInst 1(GLSL.std.450) 8(Floor) 455
|
|
|
|
457: 36(fvec3) Load 41(inF0)
|
|
|
|
458: 36(fvec3) Load 42(inF1)
|
|
|
|
459: 36(fvec3) FMod 457 458
|
|
|
|
460: 36(fvec3) Load 41(inF0)
|
|
|
|
461: 36(fvec3) ExtInst 1(GLSL.std.450) 10(Fract) 460
|
|
|
|
462: 36(fvec3) Load 41(inF0)
|
|
|
|
463: 396(bvec3) IsInf 462
|
|
|
|
464: 36(fvec3) Load 41(inF0)
|
|
|
|
465: 396(bvec3) IsNan 464
|
|
|
|
466: 36(fvec3) Load 41(inF0)
|
|
|
|
467: 36(fvec3) Load 42(inF1)
|
|
|
|
468: 36(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 466 467
|
2017-03-29 09:04:58 +00:00
|
|
|
469: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
470: 36(fvec3) Load 42(inF1)
|
|
|
|
471: 36(fvec3) Load 43(inF2)
|
|
|
|
472: 36(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 469 470 471
|
|
|
|
473: 36(fvec3) Load 41(inF0)
|
|
|
|
474: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 473
|
|
|
|
475: 36(fvec3) Load 41(inF0)
|
|
|
|
476: 36(fvec3) ExtInst 1(GLSL.std.450) 28(Log) 475
|
2017-03-29 09:04:58 +00:00
|
|
|
477: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
478: 36(fvec3) ExtInst 1(GLSL.std.450) 30(Log2) 477
|
|
|
|
479: 36(fvec3) VectorTimesScalar 478 199
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
480: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
481: 36(fvec3) ExtInst 1(GLSL.std.450) 30(Log2) 480
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
482: 36(fvec3) Load 41(inF0)
|
2017-03-29 09:04:58 +00:00
|
|
|
483: 36(fvec3) Load 42(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
484: 36(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 482 483
|
2017-03-29 09:04:58 +00:00
|
|
|
485: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
486: 36(fvec3) Load 42(inF1)
|
|
|
|
487: 36(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 485 486
|
|
|
|
488: 36(fvec3) Load 41(inF0)
|
|
|
|
489: 36(fvec3) ExtInst 1(GLSL.std.450) 69(Normalize) 488
|
2017-03-29 09:04:58 +00:00
|
|
|
490: 36(fvec3) Load 41(inF0)
|
|
|
|
491: 36(fvec3) Load 42(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
492: 36(fvec3) ExtInst 1(GLSL.std.450) 26(Pow) 490 491
|
|
|
|
493: 36(fvec3) Load 41(inF0)
|
|
|
|
494: 36(fvec3) ExtInst 1(GLSL.std.450) 11(Radians) 493
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
495: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
496: 36(fvec3) Load 42(inF1)
|
|
|
|
497: 36(fvec3) ExtInst 1(GLSL.std.450) 71(Reflect) 495 496
|
|
|
|
498: 36(fvec3) Load 41(inF0)
|
|
|
|
499: 36(fvec3) Load 42(inF1)
|
|
|
|
500: 36(fvec3) ExtInst 1(GLSL.std.450) 72(Refract) 498 499 354
|
|
|
|
502: 410(ivec3) BitReverse 501
|
2017-03-29 09:04:58 +00:00
|
|
|
503: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
504: 36(fvec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 503
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
505: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
506: 36(fvec3) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 505
|
2017-03-29 09:04:58 +00:00
|
|
|
507: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
508: 36(fvec3) CompositeConstruct 133 133 133
|
|
|
|
509: 36(fvec3) CompositeConstruct 221 221 221
|
|
|
|
510: 36(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 507 508 509
|
2017-03-29 09:04:58 +00:00
|
|
|
511: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
512: 36(fvec3) ExtInst 1(GLSL.std.450) 6(FSign) 511
|
2017-03-29 09:04:58 +00:00
|
|
|
513: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
514: 36(fvec3) ExtInst 1(GLSL.std.450) 13(Sin) 513
|
|
|
|
515: 36(fvec3) Load 41(inF0)
|
|
|
|
516: 36(fvec3) ExtInst 1(GLSL.std.450) 13(Sin) 515
|
|
|
|
Store 42(inF1) 516
|
2017-03-29 09:04:58 +00:00
|
|
|
517: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
518: 36(fvec3) ExtInst 1(GLSL.std.450) 14(Cos) 517
|
|
|
|
Store 43(inF2) 518
|
2017-03-29 09:04:58 +00:00
|
|
|
519: 36(fvec3) Load 41(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
520: 36(fvec3) ExtInst 1(GLSL.std.450) 19(Sinh) 519
|
|
|
|
521: 36(fvec3) Load 41(inF0)
|
|
|
|
522: 36(fvec3) Load 42(inF1)
|
|
|
|
523: 36(fvec3) Load 43(inF2)
|
|
|
|
524: 36(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 521 522 523
|
|
|
|
525: 36(fvec3) Load 41(inF0)
|
|
|
|
526: 36(fvec3) ExtInst 1(GLSL.std.450) 31(Sqrt) 525
|
|
|
|
527: 36(fvec3) Load 41(inF0)
|
|
|
|
528: 36(fvec3) Load 42(inF1)
|
|
|
|
529: 36(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 527 528
|
|
|
|
530: 36(fvec3) Load 41(inF0)
|
|
|
|
531: 36(fvec3) ExtInst 1(GLSL.std.450) 15(Tan) 530
|
|
|
|
532: 36(fvec3) Load 41(inF0)
|
|
|
|
533: 36(fvec3) ExtInst 1(GLSL.std.450) 21(Tanh) 532
|
|
|
|
534: 36(fvec3) Load 41(inF0)
|
|
|
|
535: 36(fvec3) ExtInst 1(GLSL.std.450) 3(Trunc) 534
|
|
|
|
ReturnValue 537
|
2016-06-30 20:13:03 +00:00
|
|
|
FunctionEnd
|
|
|
|
58(VertexShaderFunction4(vf4;vf4;vf4;vu4;vu4;): 48(fvec4) Function None 52
|
|
|
|
53(inF0): 49(ptr) FunctionParameter
|
|
|
|
54(inF1): 49(ptr) FunctionParameter
|
|
|
|
55(inF2): 49(ptr) FunctionParameter
|
|
|
|
56(inU0): 51(ptr) FunctionParameter
|
|
|
|
57(inU1): 51(ptr) FunctionParameter
|
|
|
|
59: Label
|
2017-03-29 09:04:58 +00:00
|
|
|
540: 48(fvec4) Load 53(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
543: 541(bvec4) FUnordNotEqual 540 542
|
2017-07-05 18:07:16 +00:00
|
|
|
544: 132(bool) All 543
|
2017-03-29 09:04:58 +00:00
|
|
|
545: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
546: 48(fvec4) ExtInst 1(GLSL.std.450) 4(FAbs) 545
|
|
|
|
547: 48(fvec4) Load 53(inF0)
|
|
|
|
548: 48(fvec4) ExtInst 1(GLSL.std.450) 17(Acos) 547
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
549: 48(fvec4) Load 53(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
550: 541(bvec4) FUnordNotEqual 549 542
|
2017-07-05 18:07:16 +00:00
|
|
|
551: 132(bool) Any 550
|
|
|
|
552: 48(fvec4) Load 53(inF0)
|
|
|
|
553: 48(fvec4) ExtInst 1(GLSL.std.450) 16(Asin) 552
|
2017-03-29 09:04:58 +00:00
|
|
|
554: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
556: 555(ivec4) Bitcast 554
|
|
|
|
557: 48(fvec4) Load 53(inF0)
|
|
|
|
558: 50(ivec4) Bitcast 557
|
|
|
|
559: 50(ivec4) Load 56(inU0)
|
|
|
|
560: 48(fvec4) Bitcast 559
|
|
|
|
561: 48(fvec4) Load 53(inF0)
|
|
|
|
562: 48(fvec4) ExtInst 1(GLSL.std.450) 18(Atan) 561
|
|
|
|
563: 48(fvec4) Load 53(inF0)
|
|
|
|
564: 48(fvec4) Load 54(inF1)
|
|
|
|
565: 48(fvec4) ExtInst 1(GLSL.std.450) 25(Atan2) 563 564
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
566: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
567: 48(fvec4) ExtInst 1(GLSL.std.450) 9(Ceil) 566
|
2017-03-29 09:04:58 +00:00
|
|
|
568: 48(fvec4) Load 53(inF0)
|
|
|
|
569: 48(fvec4) Load 54(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
570: 48(fvec4) Load 55(inF2)
|
|
|
|
571: 48(fvec4) ExtInst 1(GLSL.std.450) 43(FClamp) 568 569 570
|
|
|
|
572: 48(fvec4) Load 53(inF0)
|
|
|
|
573: 48(fvec4) ExtInst 1(GLSL.std.450) 14(Cos) 572
|
|
|
|
574: 48(fvec4) Load 53(inF0)
|
|
|
|
575: 48(fvec4) ExtInst 1(GLSL.std.450) 20(Cosh) 574
|
|
|
|
577: 555(ivec4) BitCount 576
|
|
|
|
578: 48(fvec4) Load 53(inF0)
|
|
|
|
579: 48(fvec4) ExtInst 1(GLSL.std.450) 12(Degrees) 578
|
|
|
|
580: 48(fvec4) Load 53(inF0)
|
|
|
|
581: 48(fvec4) Load 54(inF1)
|
|
|
|
582: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 580 581
|
|
|
|
583: 48(fvec4) Load 53(inF0)
|
|
|
|
584: 48(fvec4) Load 54(inF1)
|
|
|
|
585: 6(float) Dot 583 584
|
|
|
|
587: 7(ptr) AccessChain 53(inF0) 586
|
|
|
|
588: 6(float) Load 587
|
|
|
|
589: 7(ptr) AccessChain 54(inF1) 586
|
|
|
|
590: 6(float) Load 589
|
|
|
|
591: 6(float) FMul 588 590
|
|
|
|
593: 7(ptr) AccessChain 53(inF0) 592
|
|
|
|
594: 6(float) Load 593
|
|
|
|
596: 7(ptr) AccessChain 54(inF1) 595
|
|
|
|
597: 6(float) Load 596
|
|
|
|
598: 48(fvec4) CompositeConstruct 221 591 594 597
|
2017-03-29 09:04:58 +00:00
|
|
|
599: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
600: 48(fvec4) ExtInst 1(GLSL.std.450) 27(Exp) 599
|
|
|
|
601: 48(fvec4) Load 53(inF0)
|
|
|
|
602: 48(fvec4) ExtInst 1(GLSL.std.450) 29(Exp2) 601
|
|
|
|
603: 48(fvec4) Load 53(inF0)
|
|
|
|
604: 48(fvec4) Load 54(inF1)
|
|
|
|
605: 48(fvec4) Load 55(inF2)
|
|
|
|
606: 48(fvec4) ExtInst 1(GLSL.std.450) 70(FaceForward) 603 604 605
|
|
|
|
607: 146(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 167
|
|
|
|
608: 146(int) ExtInst 1(GLSL.std.450) 73(FindILsb) 167
|
2017-03-29 09:04:58 +00:00
|
|
|
609: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
610: 48(fvec4) ExtInst 1(GLSL.std.450) 8(Floor) 609
|
|
|
|
611: 48(fvec4) Load 53(inF0)
|
|
|
|
612: 48(fvec4) Load 54(inF1)
|
|
|
|
613: 48(fvec4) FMod 611 612
|
|
|
|
614: 48(fvec4) Load 53(inF0)
|
|
|
|
615: 48(fvec4) ExtInst 1(GLSL.std.450) 10(Fract) 614
|
2017-03-29 09:04:58 +00:00
|
|
|
616: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
617: 541(bvec4) IsInf 616
|
2017-03-29 09:04:58 +00:00
|
|
|
618: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
619: 541(bvec4) IsNan 618
|
2017-03-29 09:04:58 +00:00
|
|
|
620: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
621: 48(fvec4) Load 54(inF1)
|
|
|
|
622: 48(fvec4) ExtInst 1(GLSL.std.450) 53(Ldexp) 620 621
|
2017-03-29 09:04:58 +00:00
|
|
|
623: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
624: 48(fvec4) Load 54(inF1)
|
|
|
|
625: 48(fvec4) Load 55(inF2)
|
|
|
|
626: 48(fvec4) ExtInst 1(GLSL.std.450) 46(FMix) 623 624 625
|
|
|
|
627: 48(fvec4) Load 53(inF0)
|
|
|
|
628: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 627
|
|
|
|
629: 48(fvec4) Load 53(inF0)
|
|
|
|
630: 48(fvec4) ExtInst 1(GLSL.std.450) 28(Log) 629
|
2017-03-29 09:04:58 +00:00
|
|
|
631: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
632: 48(fvec4) ExtInst 1(GLSL.std.450) 30(Log2) 631
|
|
|
|
633: 48(fvec4) VectorTimesScalar 632 199
|
|
|
|
634: 48(fvec4) Load 53(inF0)
|
|
|
|
635: 48(fvec4) ExtInst 1(GLSL.std.450) 30(Log2) 634
|
2016-06-30 20:13:03 +00:00
|
|
|
636: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
637: 48(fvec4) Load 54(inF1)
|
|
|
|
638: 48(fvec4) ExtInst 1(GLSL.std.450) 40(FMax) 636 637
|
|
|
|
639: 48(fvec4) Load 53(inF0)
|
|
|
|
640: 48(fvec4) Load 54(inF1)
|
|
|
|
641: 48(fvec4) ExtInst 1(GLSL.std.450) 37(FMin) 639 640
|
|
|
|
642: 48(fvec4) Load 53(inF0)
|
|
|
|
643: 48(fvec4) ExtInst 1(GLSL.std.450) 69(Normalize) 642
|
|
|
|
644: 48(fvec4) Load 53(inF0)
|
|
|
|
645: 48(fvec4) Load 54(inF1)
|
|
|
|
646: 48(fvec4) ExtInst 1(GLSL.std.450) 26(Pow) 644 645
|
2017-03-29 09:04:58 +00:00
|
|
|
647: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
648: 48(fvec4) ExtInst 1(GLSL.std.450) 11(Radians) 647
|
2017-03-29 09:04:58 +00:00
|
|
|
649: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
650: 48(fvec4) Load 54(inF1)
|
|
|
|
651: 48(fvec4) ExtInst 1(GLSL.std.450) 71(Reflect) 649 650
|
|
|
|
652: 48(fvec4) Load 53(inF0)
|
|
|
|
653: 48(fvec4) Load 54(inF1)
|
|
|
|
654: 48(fvec4) ExtInst 1(GLSL.std.450) 72(Refract) 652 653 354
|
|
|
|
657: 555(ivec4) BitReverse 656
|
|
|
|
658: 48(fvec4) Load 53(inF0)
|
|
|
|
659: 48(fvec4) ExtInst 1(GLSL.std.450) 2(RoundEven) 658
|
|
|
|
660: 48(fvec4) Load 53(inF0)
|
|
|
|
661: 48(fvec4) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 660
|
|
|
|
662: 48(fvec4) Load 53(inF0)
|
|
|
|
663: 48(fvec4) CompositeConstruct 133 133 133 133
|
|
|
|
664: 48(fvec4) CompositeConstruct 221 221 221 221
|
|
|
|
665: 48(fvec4) ExtInst 1(GLSL.std.450) 43(FClamp) 662 663 664
|
|
|
|
666: 48(fvec4) Load 53(inF0)
|
|
|
|
667: 48(fvec4) ExtInst 1(GLSL.std.450) 6(FSign) 666
|
|
|
|
668: 48(fvec4) Load 53(inF0)
|
|
|
|
669: 48(fvec4) ExtInst 1(GLSL.std.450) 13(Sin) 668
|
|
|
|
670: 48(fvec4) Load 53(inF0)
|
|
|
|
671: 48(fvec4) ExtInst 1(GLSL.std.450) 13(Sin) 670
|
|
|
|
Store 54(inF1) 671
|
|
|
|
672: 48(fvec4) Load 53(inF0)
|
|
|
|
673: 48(fvec4) ExtInst 1(GLSL.std.450) 14(Cos) 672
|
|
|
|
Store 55(inF2) 673
|
2017-03-29 09:04:58 +00:00
|
|
|
674: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
675: 48(fvec4) ExtInst 1(GLSL.std.450) 19(Sinh) 674
|
2017-03-29 09:04:58 +00:00
|
|
|
676: 48(fvec4) Load 53(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
677: 48(fvec4) Load 54(inF1)
|
|
|
|
678: 48(fvec4) Load 55(inF2)
|
|
|
|
679: 48(fvec4) ExtInst 1(GLSL.std.450) 49(SmoothStep) 676 677 678
|
|
|
|
680: 48(fvec4) Load 53(inF0)
|
|
|
|
681: 48(fvec4) ExtInst 1(GLSL.std.450) 31(Sqrt) 680
|
|
|
|
682: 48(fvec4) Load 53(inF0)
|
|
|
|
683: 48(fvec4) Load 54(inF1)
|
|
|
|
684: 48(fvec4) ExtInst 1(GLSL.std.450) 48(Step) 682 683
|
|
|
|
685: 48(fvec4) Load 53(inF0)
|
|
|
|
686: 48(fvec4) ExtInst 1(GLSL.std.450) 15(Tan) 685
|
|
|
|
687: 48(fvec4) Load 53(inF0)
|
|
|
|
688: 48(fvec4) ExtInst 1(GLSL.std.450) 21(Tanh) 687
|
|
|
|
689: 48(fvec4) Load 53(inF0)
|
|
|
|
690: 48(fvec4) ExtInst 1(GLSL.std.450) 3(Trunc) 689
|
|
|
|
ReturnValue 692
|
2016-06-30 20:13:03 +00:00
|
|
|
FunctionEnd
|
|
|
|
66(VertexShaderFunction2x2(mf22;mf22;mf22;): 60 Function None 62
|
|
|
|
63(inF0): 61(ptr) FunctionParameter
|
|
|
|
64(inF1): 61(ptr) FunctionParameter
|
|
|
|
65(inF2): 61(ptr) FunctionParameter
|
|
|
|
67: Label
|
2017-07-05 18:07:16 +00:00
|
|
|
695: 60 Load 63(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
697: 696 FUnordNotEqual 695 133
|
2017-07-05 18:07:16 +00:00
|
|
|
698: 132(bool) All 697
|
2017-03-29 09:04:58 +00:00
|
|
|
699: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
700: 60 ExtInst 1(GLSL.std.450) 4(FAbs) 699
|
2017-03-29 09:04:58 +00:00
|
|
|
701: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
702: 60 ExtInst 1(GLSL.std.450) 17(Acos) 701
|
|
|
|
703: 60 Load 63(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
704: 696 FUnordNotEqual 703 133
|
2017-07-05 18:07:16 +00:00
|
|
|
705: 132(bool) Any 704
|
|
|
|
706: 60 Load 63(inF0)
|
|
|
|
707: 60 ExtInst 1(GLSL.std.450) 16(Asin) 706
|
|
|
|
708: 60 Load 63(inF0)
|
|
|
|
709: 60 ExtInst 1(GLSL.std.450) 18(Atan) 708
|
|
|
|
710: 60 Load 63(inF0)
|
|
|
|
711: 60 Load 64(inF1)
|
|
|
|
712: 60 ExtInst 1(GLSL.std.450) 25(Atan2) 710 711
|
2017-03-29 09:04:58 +00:00
|
|
|
713: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
714: 60 ExtInst 1(GLSL.std.450) 9(Ceil) 713
|
2017-03-29 09:04:58 +00:00
|
|
|
715: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
716: 60 Load 64(inF1)
|
|
|
|
717: 60 Load 65(inF2)
|
|
|
|
718: 60 ExtInst 1(GLSL.std.450) 43(FClamp) 715 716 717
|
2016-06-30 20:13:03 +00:00
|
|
|
719: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
720: 60 ExtInst 1(GLSL.std.450) 14(Cos) 719
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
721: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
722: 60 ExtInst 1(GLSL.std.450) 20(Cosh) 721
|
|
|
|
723: 60 Load 63(inF0)
|
|
|
|
724: 60 ExtInst 1(GLSL.std.450) 12(Degrees) 723
|
|
|
|
725: 60 Load 63(inF0)
|
|
|
|
726: 6(float) ExtInst 1(GLSL.std.450) 33(Determinant) 725
|
|
|
|
727: 60 Load 63(inF0)
|
|
|
|
728: 60 ExtInst 1(GLSL.std.450) 27(Exp) 727
|
|
|
|
729: 60 Load 63(inF0)
|
|
|
|
730: 60 ExtInst 1(GLSL.std.450) 29(Exp2) 729
|
|
|
|
731: 146(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 167
|
|
|
|
732: 146(int) ExtInst 1(GLSL.std.450) 73(FindILsb) 167
|
|
|
|
733: 60 Load 63(inF0)
|
|
|
|
734: 60 ExtInst 1(GLSL.std.450) 8(Floor) 733
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
735: 60 Load 63(inF0)
|
2017-03-29 09:04:58 +00:00
|
|
|
736: 60 Load 64(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
737: 24(fvec2) CompositeExtract 735 0
|
|
|
|
738: 24(fvec2) CompositeExtract 736 0
|
|
|
|
739: 24(fvec2) FMod 737 738
|
|
|
|
740: 24(fvec2) CompositeExtract 735 1
|
|
|
|
741: 24(fvec2) CompositeExtract 736 1
|
|
|
|
742: 24(fvec2) FMod 740 741
|
|
|
|
743: 60 CompositeConstruct 739 742
|
2017-03-29 09:04:58 +00:00
|
|
|
744: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
745: 60 ExtInst 1(GLSL.std.450) 10(Fract) 744
|
2017-03-29 09:04:58 +00:00
|
|
|
746: 60 Load 63(inF0)
|
|
|
|
747: 60 Load 64(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
748: 60 ExtInst 1(GLSL.std.450) 53(Ldexp) 746 747
|
2017-03-29 09:04:58 +00:00
|
|
|
749: 60 Load 63(inF0)
|
|
|
|
750: 60 Load 64(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
751: 60 Load 65(inF2)
|
|
|
|
752: 60 ExtInst 1(GLSL.std.450) 46(FMix) 749 750 751
|
|
|
|
753: 60 Load 63(inF0)
|
|
|
|
754: 60 ExtInst 1(GLSL.std.450) 28(Log) 753
|
2017-03-29 09:04:58 +00:00
|
|
|
755: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
756: 60 ExtInst 1(GLSL.std.450) 30(Log2) 755
|
|
|
|
757: 60 MatrixTimesScalar 756 199
|
|
|
|
758: 60 Load 63(inF0)
|
|
|
|
759: 60 ExtInst 1(GLSL.std.450) 30(Log2) 758
|
|
|
|
760: 60 Load 63(inF0)
|
|
|
|
761: 60 Load 64(inF1)
|
|
|
|
762: 60 ExtInst 1(GLSL.std.450) 40(FMax) 760 761
|
|
|
|
763: 60 Load 63(inF0)
|
|
|
|
764: 60 Load 64(inF1)
|
|
|
|
765: 60 ExtInst 1(GLSL.std.450) 37(FMin) 763 764
|
|
|
|
766: 60 Load 63(inF0)
|
|
|
|
767: 60 Load 64(inF1)
|
|
|
|
768: 60 ExtInst 1(GLSL.std.450) 26(Pow) 766 767
|
2016-06-30 20:13:03 +00:00
|
|
|
769: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
770: 60 ExtInst 1(GLSL.std.450) 11(Radians) 769
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
771: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
772: 60 ExtInst 1(GLSL.std.450) 2(RoundEven) 771
|
2017-03-29 09:04:58 +00:00
|
|
|
773: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
774: 60 ExtInst 1(GLSL.std.450) 32(InverseSqrt) 773
|
2017-03-29 09:04:58 +00:00
|
|
|
775: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
776: 24(fvec2) CompositeConstruct 133 133
|
|
|
|
777: 24(fvec2) CompositeConstruct 221 221
|
|
|
|
778: 60 ExtInst 1(GLSL.std.450) 43(FClamp) 775 776 777
|
2017-03-29 09:04:58 +00:00
|
|
|
779: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
780: 60 ExtInst 1(GLSL.std.450) 6(FSign) 779
|
2017-03-29 09:04:58 +00:00
|
|
|
781: 60 Load 63(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
782: 60 ExtInst 1(GLSL.std.450) 13(Sin) 781
|
|
|
|
783: 60 Load 63(inF0)
|
|
|
|
784: 60 ExtInst 1(GLSL.std.450) 13(Sin) 783
|
|
|
|
Store 64(inF1) 784
|
|
|
|
785: 60 Load 63(inF0)
|
|
|
|
786: 60 ExtInst 1(GLSL.std.450) 14(Cos) 785
|
|
|
|
Store 65(inF2) 786
|
|
|
|
787: 60 Load 63(inF0)
|
|
|
|
788: 60 ExtInst 1(GLSL.std.450) 19(Sinh) 787
|
|
|
|
789: 60 Load 63(inF0)
|
|
|
|
790: 60 Load 64(inF1)
|
|
|
|
791: 60 Load 65(inF2)
|
|
|
|
792: 60 ExtInst 1(GLSL.std.450) 49(SmoothStep) 789 790 791
|
|
|
|
793: 60 Load 63(inF0)
|
|
|
|
794: 60 ExtInst 1(GLSL.std.450) 31(Sqrt) 793
|
|
|
|
795: 60 Load 63(inF0)
|
|
|
|
796: 60 Load 64(inF1)
|
|
|
|
797: 60 ExtInst 1(GLSL.std.450) 48(Step) 795 796
|
|
|
|
798: 60 Load 63(inF0)
|
|
|
|
799: 60 ExtInst 1(GLSL.std.450) 15(Tan) 798
|
|
|
|
800: 60 Load 63(inF0)
|
|
|
|
801: 60 ExtInst 1(GLSL.std.450) 21(Tanh) 800
|
|
|
|
802: 60 Load 63(inF0)
|
|
|
|
803: 60 Transpose 802
|
|
|
|
804: 60 Load 63(inF0)
|
|
|
|
805: 60 ExtInst 1(GLSL.std.450) 3(Trunc) 804
|
|
|
|
ReturnValue 807
|
2016-06-30 20:13:03 +00:00
|
|
|
FunctionEnd
|
|
|
|
74(VertexShaderFunction3x3(mf33;mf33;mf33;): 68 Function None 70
|
|
|
|
71(inF0): 69(ptr) FunctionParameter
|
|
|
|
72(inF1): 69(ptr) FunctionParameter
|
|
|
|
73(inF2): 69(ptr) FunctionParameter
|
|
|
|
75: Label
|
2017-07-05 18:07:16 +00:00
|
|
|
810: 68 Load 71(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
812: 811 FUnordNotEqual 810 133
|
2017-07-05 18:07:16 +00:00
|
|
|
813: 132(bool) All 812
|
|
|
|
814: 68 Load 71(inF0)
|
|
|
|
815: 68 ExtInst 1(GLSL.std.450) 4(FAbs) 814
|
|
|
|
816: 68 Load 71(inF0)
|
|
|
|
817: 68 ExtInst 1(GLSL.std.450) 17(Acos) 816
|
|
|
|
818: 68 Load 71(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
819: 811 FUnordNotEqual 818 133
|
2017-07-05 18:07:16 +00:00
|
|
|
820: 132(bool) Any 819
|
2016-06-30 20:13:03 +00:00
|
|
|
821: 68 Load 71(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
822: 68 ExtInst 1(GLSL.std.450) 16(Asin) 821
|
2016-06-30 20:13:03 +00:00
|
|
|
823: 68 Load 71(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
824: 68 ExtInst 1(GLSL.std.450) 18(Atan) 823
|
2016-06-30 20:13:03 +00:00
|
|
|
825: 68 Load 71(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
826: 68 Load 72(inF1)
|
|
|
|
827: 68 ExtInst 1(GLSL.std.450) 25(Atan2) 825 826
|
|
|
|
828: 68 Load 71(inF0)
|
|
|
|
829: 68 ExtInst 1(GLSL.std.450) 9(Ceil) 828
|
|
|
|
830: 68 Load 71(inF0)
|
|
|
|
831: 68 Load 72(inF1)
|
|
|
|
832: 68 Load 73(inF2)
|
|
|
|
833: 68 ExtInst 1(GLSL.std.450) 43(FClamp) 830 831 832
|
|
|
|
834: 68 Load 71(inF0)
|
|
|
|
835: 68 ExtInst 1(GLSL.std.450) 14(Cos) 834
|
|
|
|
836: 68 Load 71(inF0)
|
|
|
|
837: 68 ExtInst 1(GLSL.std.450) 20(Cosh) 836
|
|
|
|
838: 68 Load 71(inF0)
|
|
|
|
839: 68 ExtInst 1(GLSL.std.450) 12(Degrees) 838
|
|
|
|
840: 68 Load 71(inF0)
|
|
|
|
841: 6(float) ExtInst 1(GLSL.std.450) 33(Determinant) 840
|
|
|
|
842: 68 Load 71(inF0)
|
|
|
|
843: 68 ExtInst 1(GLSL.std.450) 27(Exp) 842
|
|
|
|
844: 68 Load 71(inF0)
|
|
|
|
845: 68 ExtInst 1(GLSL.std.450) 29(Exp2) 844
|
|
|
|
846: 146(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 167
|
|
|
|
847: 146(int) ExtInst 1(GLSL.std.450) 73(FindILsb) 167
|
|
|
|
848: 68 Load 71(inF0)
|
|
|
|
849: 68 ExtInst 1(GLSL.std.450) 8(Floor) 848
|
2016-06-30 20:13:03 +00:00
|
|
|
850: 68 Load 71(inF0)
|
2017-03-29 09:04:58 +00:00
|
|
|
851: 68 Load 72(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
852: 36(fvec3) CompositeExtract 850 0
|
|
|
|
853: 36(fvec3) CompositeExtract 851 0
|
|
|
|
854: 36(fvec3) FMod 852 853
|
|
|
|
855: 36(fvec3) CompositeExtract 850 1
|
|
|
|
856: 36(fvec3) CompositeExtract 851 1
|
|
|
|
857: 36(fvec3) FMod 855 856
|
|
|
|
858: 36(fvec3) CompositeExtract 850 2
|
|
|
|
859: 36(fvec3) CompositeExtract 851 2
|
|
|
|
860: 36(fvec3) FMod 858 859
|
|
|
|
861: 68 CompositeConstruct 854 857 860
|
|
|
|
862: 68 Load 71(inF0)
|
|
|
|
863: 68 ExtInst 1(GLSL.std.450) 10(Fract) 862
|
2017-03-29 09:04:58 +00:00
|
|
|
864: 68 Load 71(inF0)
|
|
|
|
865: 68 Load 72(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
866: 68 ExtInst 1(GLSL.std.450) 53(Ldexp) 864 865
|
2017-03-29 09:04:58 +00:00
|
|
|
867: 68 Load 71(inF0)
|
|
|
|
868: 68 Load 72(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
869: 68 Load 73(inF2)
|
|
|
|
870: 68 ExtInst 1(GLSL.std.450) 46(FMix) 867 868 869
|
|
|
|
871: 68 Load 71(inF0)
|
|
|
|
872: 68 ExtInst 1(GLSL.std.450) 28(Log) 871
|
|
|
|
873: 68 Load 71(inF0)
|
|
|
|
874: 68 ExtInst 1(GLSL.std.450) 30(Log2) 873
|
|
|
|
875: 68 MatrixTimesScalar 874 199
|
2017-03-29 09:04:58 +00:00
|
|
|
876: 68 Load 71(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
877: 68 ExtInst 1(GLSL.std.450) 30(Log2) 876
|
|
|
|
878: 68 Load 71(inF0)
|
|
|
|
879: 68 Load 72(inF1)
|
|
|
|
880: 68 ExtInst 1(GLSL.std.450) 40(FMax) 878 879
|
|
|
|
881: 68 Load 71(inF0)
|
|
|
|
882: 68 Load 72(inF1)
|
|
|
|
883: 68 ExtInst 1(GLSL.std.450) 37(FMin) 881 882
|
2016-06-30 20:13:03 +00:00
|
|
|
884: 68 Load 71(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
885: 68 Load 72(inF1)
|
|
|
|
886: 68 ExtInst 1(GLSL.std.450) 26(Pow) 884 885
|
|
|
|
887: 68 Load 71(inF0)
|
|
|
|
888: 68 ExtInst 1(GLSL.std.450) 11(Radians) 887
|
|
|
|
889: 68 Load 71(inF0)
|
|
|
|
890: 68 ExtInst 1(GLSL.std.450) 2(RoundEven) 889
|
|
|
|
891: 68 Load 71(inF0)
|
|
|
|
892: 68 ExtInst 1(GLSL.std.450) 32(InverseSqrt) 891
|
|
|
|
893: 68 Load 71(inF0)
|
|
|
|
894: 36(fvec3) CompositeConstruct 133 133 133
|
|
|
|
895: 36(fvec3) CompositeConstruct 221 221 221
|
|
|
|
896: 68 ExtInst 1(GLSL.std.450) 43(FClamp) 893 894 895
|
|
|
|
897: 68 Load 71(inF0)
|
|
|
|
898: 68 ExtInst 1(GLSL.std.450) 6(FSign) 897
|
2017-03-29 09:04:58 +00:00
|
|
|
899: 68 Load 71(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
900: 68 ExtInst 1(GLSL.std.450) 13(Sin) 899
|
2017-03-29 09:04:58 +00:00
|
|
|
901: 68 Load 71(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
902: 68 ExtInst 1(GLSL.std.450) 13(Sin) 901
|
|
|
|
Store 72(inF1) 902
|
2017-03-29 09:04:58 +00:00
|
|
|
903: 68 Load 71(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
904: 68 ExtInst 1(GLSL.std.450) 14(Cos) 903
|
|
|
|
Store 73(inF2) 904
|
2017-03-29 09:04:58 +00:00
|
|
|
905: 68 Load 71(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
906: 68 ExtInst 1(GLSL.std.450) 19(Sinh) 905
|
|
|
|
907: 68 Load 71(inF0)
|
|
|
|
908: 68 Load 72(inF1)
|
|
|
|
909: 68 Load 73(inF2)
|
|
|
|
910: 68 ExtInst 1(GLSL.std.450) 49(SmoothStep) 907 908 909
|
|
|
|
911: 68 Load 71(inF0)
|
|
|
|
912: 68 ExtInst 1(GLSL.std.450) 31(Sqrt) 911
|
|
|
|
913: 68 Load 71(inF0)
|
|
|
|
914: 68 Load 72(inF1)
|
|
|
|
915: 68 ExtInst 1(GLSL.std.450) 48(Step) 913 914
|
|
|
|
916: 68 Load 71(inF0)
|
|
|
|
917: 68 ExtInst 1(GLSL.std.450) 15(Tan) 916
|
|
|
|
918: 68 Load 71(inF0)
|
|
|
|
919: 68 ExtInst 1(GLSL.std.450) 21(Tanh) 918
|
|
|
|
920: 68 Load 71(inF0)
|
|
|
|
921: 68 Transpose 920
|
|
|
|
922: 68 Load 71(inF0)
|
|
|
|
923: 68 ExtInst 1(GLSL.std.450) 3(Trunc) 922
|
|
|
|
ReturnValue 925
|
2016-06-30 20:13:03 +00:00
|
|
|
FunctionEnd
|
|
|
|
82(VertexShaderFunction4x4(mf44;mf44;mf44;): 76 Function None 78
|
|
|
|
79(inF0): 77(ptr) FunctionParameter
|
|
|
|
80(inF1): 77(ptr) FunctionParameter
|
|
|
|
81(inF2): 77(ptr) FunctionParameter
|
|
|
|
83: Label
|
2017-03-29 09:04:58 +00:00
|
|
|
928: 76 Load 79(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
930: 929 FUnordNotEqual 928 133
|
2017-07-05 18:07:16 +00:00
|
|
|
931: 132(bool) All 930
|
2017-03-29 09:04:58 +00:00
|
|
|
932: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
933: 76 ExtInst 1(GLSL.std.450) 4(FAbs) 932
|
2017-03-29 09:04:58 +00:00
|
|
|
934: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
935: 76 ExtInst 1(GLSL.std.450) 17(Acos) 934
|
2017-03-29 09:04:58 +00:00
|
|
|
936: 76 Load 79(inF0)
|
2020-06-05 13:30:05 +00:00
|
|
|
937: 929 FUnordNotEqual 936 133
|
2017-07-05 18:07:16 +00:00
|
|
|
938: 132(bool) Any 937
|
|
|
|
939: 76 Load 79(inF0)
|
|
|
|
940: 76 ExtInst 1(GLSL.std.450) 16(Asin) 939
|
|
|
|
941: 76 Load 79(inF0)
|
|
|
|
942: 76 ExtInst 1(GLSL.std.450) 18(Atan) 941
|
|
|
|
943: 76 Load 79(inF0)
|
|
|
|
944: 76 Load 80(inF1)
|
|
|
|
945: 76 ExtInst 1(GLSL.std.450) 25(Atan2) 943 944
|
2017-03-29 09:04:58 +00:00
|
|
|
946: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
947: 76 ExtInst 1(GLSL.std.450) 9(Ceil) 946
|
2017-03-29 09:04:58 +00:00
|
|
|
948: 76 Load 79(inF0)
|
|
|
|
949: 76 Load 80(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
950: 76 Load 81(inF2)
|
|
|
|
951: 76 ExtInst 1(GLSL.std.450) 43(FClamp) 948 949 950
|
|
|
|
952: 76 Load 79(inF0)
|
|
|
|
953: 76 ExtInst 1(GLSL.std.450) 14(Cos) 952
|
|
|
|
954: 76 Load 79(inF0)
|
|
|
|
955: 76 ExtInst 1(GLSL.std.450) 20(Cosh) 954
|
|
|
|
956: 76 Load 79(inF0)
|
|
|
|
957: 76 ExtInst 1(GLSL.std.450) 12(Degrees) 956
|
|
|
|
958: 76 Load 79(inF0)
|
|
|
|
959: 6(float) ExtInst 1(GLSL.std.450) 33(Determinant) 958
|
|
|
|
960: 76 Load 79(inF0)
|
|
|
|
961: 76 ExtInst 1(GLSL.std.450) 27(Exp) 960
|
|
|
|
962: 76 Load 79(inF0)
|
|
|
|
963: 76 ExtInst 1(GLSL.std.450) 29(Exp2) 962
|
|
|
|
964: 146(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 167
|
|
|
|
965: 146(int) ExtInst 1(GLSL.std.450) 73(FindILsb) 167
|
|
|
|
966: 76 Load 79(inF0)
|
|
|
|
967: 76 ExtInst 1(GLSL.std.450) 8(Floor) 966
|
2016-06-30 20:13:03 +00:00
|
|
|
968: 76 Load 79(inF0)
|
2017-03-29 09:04:58 +00:00
|
|
|
969: 76 Load 80(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
970: 48(fvec4) CompositeExtract 968 0
|
|
|
|
971: 48(fvec4) CompositeExtract 969 0
|
|
|
|
972: 48(fvec4) FMod 970 971
|
|
|
|
973: 48(fvec4) CompositeExtract 968 1
|
|
|
|
974: 48(fvec4) CompositeExtract 969 1
|
|
|
|
975: 48(fvec4) FMod 973 974
|
|
|
|
976: 48(fvec4) CompositeExtract 968 2
|
|
|
|
977: 48(fvec4) CompositeExtract 969 2
|
|
|
|
978: 48(fvec4) FMod 976 977
|
|
|
|
979: 48(fvec4) CompositeExtract 968 3
|
|
|
|
980: 48(fvec4) CompositeExtract 969 3
|
|
|
|
981: 48(fvec4) FMod 979 980
|
|
|
|
982: 76 CompositeConstruct 972 975 978 981
|
|
|
|
983: 76 Load 79(inF0)
|
|
|
|
984: 76 ExtInst 1(GLSL.std.450) 10(Fract) 983
|
2017-03-29 09:04:58 +00:00
|
|
|
985: 76 Load 79(inF0)
|
|
|
|
986: 76 Load 80(inF1)
|
2017-07-05 18:07:16 +00:00
|
|
|
987: 76 ExtInst 1(GLSL.std.450) 53(Ldexp) 985 986
|
2017-03-29 09:04:58 +00:00
|
|
|
988: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
989: 76 Load 80(inF1)
|
|
|
|
990: 76 Load 81(inF2)
|
|
|
|
991: 76 ExtInst 1(GLSL.std.450) 46(FMix) 988 989 990
|
2017-03-29 09:04:58 +00:00
|
|
|
992: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
993: 76 ExtInst 1(GLSL.std.450) 28(Log) 992
|
2017-03-29 09:04:58 +00:00
|
|
|
994: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
995: 76 ExtInst 1(GLSL.std.450) 30(Log2) 994
|
|
|
|
996: 76 MatrixTimesScalar 995 199
|
|
|
|
997: 76 Load 79(inF0)
|
|
|
|
998: 76 ExtInst 1(GLSL.std.450) 30(Log2) 997
|
|
|
|
999: 76 Load 79(inF0)
|
|
|
|
1000: 76 Load 80(inF1)
|
|
|
|
1001: 76 ExtInst 1(GLSL.std.450) 40(FMax) 999 1000
|
2017-03-29 09:04:58 +00:00
|
|
|
1002: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1003: 76 Load 80(inF1)
|
|
|
|
1004: 76 ExtInst 1(GLSL.std.450) 37(FMin) 1002 1003
|
|
|
|
1005: 76 Load 79(inF0)
|
|
|
|
1006: 76 Load 80(inF1)
|
|
|
|
1007: 76 ExtInst 1(GLSL.std.450) 26(Pow) 1005 1006
|
2017-03-29 09:04:58 +00:00
|
|
|
1008: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1009: 76 ExtInst 1(GLSL.std.450) 11(Radians) 1008
|
|
|
|
1010: 76 Load 79(inF0)
|
|
|
|
1011: 76 ExtInst 1(GLSL.std.450) 2(RoundEven) 1010
|
2016-06-30 20:13:03 +00:00
|
|
|
1012: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1013: 76 ExtInst 1(GLSL.std.450) 32(InverseSqrt) 1012
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
1014: 76 Load 79(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1015: 48(fvec4) CompositeConstruct 133 133 133 133
|
|
|
|
1016: 48(fvec4) CompositeConstruct 221 221 221 221
|
|
|
|
1017: 76 ExtInst 1(GLSL.std.450) 43(FClamp) 1014 1015 1016
|
|
|
|
1018: 76 Load 79(inF0)
|
|
|
|
1019: 76 ExtInst 1(GLSL.std.450) 6(FSign) 1018
|
|
|
|
1020: 76 Load 79(inF0)
|
|
|
|
1021: 76 ExtInst 1(GLSL.std.450) 13(Sin) 1020
|
|
|
|
1022: 76 Load 79(inF0)
|
|
|
|
1023: 76 ExtInst 1(GLSL.std.450) 13(Sin) 1022
|
|
|
|
Store 80(inF1) 1023
|
|
|
|
1024: 76 Load 79(inF0)
|
|
|
|
1025: 76 ExtInst 1(GLSL.std.450) 14(Cos) 1024
|
|
|
|
Store 81(inF2) 1025
|
|
|
|
1026: 76 Load 79(inF0)
|
|
|
|
1027: 76 ExtInst 1(GLSL.std.450) 19(Sinh) 1026
|
|
|
|
1028: 76 Load 79(inF0)
|
|
|
|
1029: 76 Load 80(inF1)
|
|
|
|
1030: 76 Load 81(inF2)
|
|
|
|
1031: 76 ExtInst 1(GLSL.std.450) 49(SmoothStep) 1028 1029 1030
|
|
|
|
1032: 76 Load 79(inF0)
|
|
|
|
1033: 76 ExtInst 1(GLSL.std.450) 31(Sqrt) 1032
|
|
|
|
1034: 76 Load 79(inF0)
|
|
|
|
1035: 76 Load 80(inF1)
|
|
|
|
1036: 76 ExtInst 1(GLSL.std.450) 48(Step) 1034 1035
|
|
|
|
1037: 76 Load 79(inF0)
|
|
|
|
1038: 76 ExtInst 1(GLSL.std.450) 15(Tan) 1037
|
|
|
|
1039: 76 Load 79(inF0)
|
|
|
|
1040: 76 ExtInst 1(GLSL.std.450) 21(Tanh) 1039
|
|
|
|
1041: 76 Load 79(inF0)
|
|
|
|
1042: 76 Transpose 1041
|
|
|
|
1043: 76 Load 79(inF0)
|
|
|
|
1044: 76 ExtInst 1(GLSL.std.450) 3(Trunc) 1043
|
|
|
|
ReturnValue 1046
|
2016-06-30 20:13:03 +00:00
|
|
|
FunctionEnd
|
|
|
|
91(TestGenMul2(f1;f1;vf2;vf2;mf22;mf22;): 2 Function None 84
|
|
|
|
85(inF0): 7(ptr) FunctionParameter
|
|
|
|
86(inF1): 7(ptr) FunctionParameter
|
|
|
|
87(inFV0): 25(ptr) FunctionParameter
|
|
|
|
88(inFV1): 25(ptr) FunctionParameter
|
|
|
|
89(inFM0): 61(ptr) FunctionParameter
|
|
|
|
90(inFM1): 61(ptr) FunctionParameter
|
|
|
|
92: Label
|
2017-07-05 18:07:16 +00:00
|
|
|
1049(r0): 7(ptr) Variable Function
|
|
|
|
1053(r1): 25(ptr) Variable Function
|
|
|
|
1057(r2): 25(ptr) Variable Function
|
|
|
|
1061(r3): 7(ptr) Variable Function
|
|
|
|
1065(r4): 25(ptr) Variable Function
|
|
|
|
1069(r5): 25(ptr) Variable Function
|
|
|
|
1073(r6): 61(ptr) Variable Function
|
|
|
|
1077(r7): 61(ptr) Variable Function
|
|
|
|
1081(r8): 61(ptr) Variable Function
|
|
|
|
1050: 6(float) Load 86(inF1)
|
|
|
|
1051: 6(float) Load 85(inF0)
|
|
|
|
1052: 6(float) FMul 1050 1051
|
|
|
|
Store 1049(r0) 1052
|
2017-03-29 09:04:58 +00:00
|
|
|
1054: 6(float) Load 85(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1055: 24(fvec2) Load 87(inFV0)
|
|
|
|
1056: 24(fvec2) VectorTimesScalar 1055 1054
|
|
|
|
Store 1053(r1) 1056
|
|
|
|
1058: 24(fvec2) Load 87(inFV0)
|
2017-03-29 09:04:58 +00:00
|
|
|
1059: 6(float) Load 85(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1060: 24(fvec2) VectorTimesScalar 1058 1059
|
|
|
|
Store 1057(r2) 1060
|
|
|
|
1062: 24(fvec2) Load 87(inFV0)
|
|
|
|
1063: 24(fvec2) Load 88(inFV1)
|
|
|
|
1064: 6(float) Dot 1062 1063
|
|
|
|
Store 1061(r3) 1064
|
|
|
|
1066: 24(fvec2) Load 87(inFV0)
|
|
|
|
1067: 60 Load 89(inFM0)
|
|
|
|
1068: 24(fvec2) VectorTimesMatrix 1066 1067
|
|
|
|
Store 1065(r4) 1068
|
|
|
|
1070: 60 Load 89(inFM0)
|
|
|
|
1071: 24(fvec2) Load 87(inFV0)
|
|
|
|
1072: 24(fvec2) MatrixTimesVector 1070 1071
|
|
|
|
Store 1069(r5) 1072
|
|
|
|
1074: 6(float) Load 85(inF0)
|
|
|
|
1075: 60 Load 89(inFM0)
|
|
|
|
1076: 60 MatrixTimesScalar 1075 1074
|
|
|
|
Store 1073(r6) 1076
|
|
|
|
1078: 60 Load 89(inFM0)
|
|
|
|
1079: 6(float) Load 85(inF0)
|
|
|
|
1080: 60 MatrixTimesScalar 1078 1079
|
|
|
|
Store 1077(r7) 1080
|
|
|
|
1082: 60 Load 90(inFM1)
|
|
|
|
1083: 60 Load 89(inFM0)
|
|
|
|
1084: 60 MatrixTimesMatrix 1082 1083
|
|
|
|
Store 1081(r8) 1084
|
2016-06-09 14:57:35 +00:00
|
|
|
Return
|
|
|
|
FunctionEnd
|
2016-06-30 20:13:03 +00:00
|
|
|
100(TestGenMul3(f1;f1;vf3;vf3;mf33;mf33;): 2 Function None 93
|
|
|
|
94(inF0): 7(ptr) FunctionParameter
|
|
|
|
95(inF1): 7(ptr) FunctionParameter
|
|
|
|
96(inFV0): 37(ptr) FunctionParameter
|
|
|
|
97(inFV1): 37(ptr) FunctionParameter
|
|
|
|
98(inFM0): 69(ptr) FunctionParameter
|
|
|
|
99(inFM1): 69(ptr) FunctionParameter
|
|
|
|
101: Label
|
2017-07-05 18:07:16 +00:00
|
|
|
1085(r0): 7(ptr) Variable Function
|
|
|
|
1089(r1): 37(ptr) Variable Function
|
|
|
|
1093(r2): 37(ptr) Variable Function
|
|
|
|
1097(r3): 7(ptr) Variable Function
|
|
|
|
1101(r4): 37(ptr) Variable Function
|
|
|
|
1105(r5): 37(ptr) Variable Function
|
|
|
|
1109(r6): 69(ptr) Variable Function
|
|
|
|
1113(r7): 69(ptr) Variable Function
|
|
|
|
1117(r8): 69(ptr) Variable Function
|
|
|
|
1086: 6(float) Load 95(inF1)
|
|
|
|
1087: 6(float) Load 94(inF0)
|
|
|
|
1088: 6(float) FMul 1086 1087
|
|
|
|
Store 1085(r0) 1088
|
2017-03-29 09:04:58 +00:00
|
|
|
1090: 6(float) Load 94(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1091: 36(fvec3) Load 96(inFV0)
|
|
|
|
1092: 36(fvec3) VectorTimesScalar 1091 1090
|
|
|
|
Store 1089(r1) 1092
|
|
|
|
1094: 36(fvec3) Load 96(inFV0)
|
2017-03-29 09:04:58 +00:00
|
|
|
1095: 6(float) Load 94(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1096: 36(fvec3) VectorTimesScalar 1094 1095
|
|
|
|
Store 1093(r2) 1096
|
|
|
|
1098: 36(fvec3) Load 96(inFV0)
|
|
|
|
1099: 36(fvec3) Load 97(inFV1)
|
|
|
|
1100: 6(float) Dot 1098 1099
|
|
|
|
Store 1097(r3) 1100
|
|
|
|
1102: 36(fvec3) Load 96(inFV0)
|
|
|
|
1103: 68 Load 98(inFM0)
|
|
|
|
1104: 36(fvec3) VectorTimesMatrix 1102 1103
|
|
|
|
Store 1101(r4) 1104
|
|
|
|
1106: 68 Load 98(inFM0)
|
|
|
|
1107: 36(fvec3) Load 96(inFV0)
|
|
|
|
1108: 36(fvec3) MatrixTimesVector 1106 1107
|
|
|
|
Store 1105(r5) 1108
|
|
|
|
1110: 6(float) Load 94(inF0)
|
|
|
|
1111: 68 Load 98(inFM0)
|
|
|
|
1112: 68 MatrixTimesScalar 1111 1110
|
|
|
|
Store 1109(r6) 1112
|
|
|
|
1114: 68 Load 98(inFM0)
|
|
|
|
1115: 6(float) Load 94(inF0)
|
|
|
|
1116: 68 MatrixTimesScalar 1114 1115
|
|
|
|
Store 1113(r7) 1116
|
|
|
|
1118: 68 Load 99(inFM1)
|
|
|
|
1119: 68 Load 98(inFM0)
|
|
|
|
1120: 68 MatrixTimesMatrix 1118 1119
|
|
|
|
Store 1117(r8) 1120
|
2016-06-09 14:57:35 +00:00
|
|
|
Return
|
|
|
|
FunctionEnd
|
2016-06-30 20:13:03 +00:00
|
|
|
109(TestGenMul4(f1;f1;vf4;vf4;mf44;mf44;): 2 Function None 102
|
|
|
|
103(inF0): 7(ptr) FunctionParameter
|
|
|
|
104(inF1): 7(ptr) FunctionParameter
|
|
|
|
105(inFV0): 49(ptr) FunctionParameter
|
|
|
|
106(inFV1): 49(ptr) FunctionParameter
|
|
|
|
107(inFM0): 77(ptr) FunctionParameter
|
|
|
|
108(inFM1): 77(ptr) FunctionParameter
|
|
|
|
110: Label
|
2017-07-05 18:07:16 +00:00
|
|
|
1121(r0): 7(ptr) Variable Function
|
|
|
|
1125(r1): 49(ptr) Variable Function
|
|
|
|
1129(r2): 49(ptr) Variable Function
|
|
|
|
1133(r3): 7(ptr) Variable Function
|
|
|
|
1137(r4): 49(ptr) Variable Function
|
|
|
|
1141(r5): 49(ptr) Variable Function
|
|
|
|
1145(r6): 77(ptr) Variable Function
|
|
|
|
1149(r7): 77(ptr) Variable Function
|
|
|
|
1153(r8): 77(ptr) Variable Function
|
|
|
|
1122: 6(float) Load 104(inF1)
|
|
|
|
1123: 6(float) Load 103(inF0)
|
|
|
|
1124: 6(float) FMul 1122 1123
|
|
|
|
Store 1121(r0) 1124
|
2017-03-29 09:04:58 +00:00
|
|
|
1126: 6(float) Load 103(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1127: 48(fvec4) Load 105(inFV0)
|
|
|
|
1128: 48(fvec4) VectorTimesScalar 1127 1126
|
|
|
|
Store 1125(r1) 1128
|
|
|
|
1130: 48(fvec4) Load 105(inFV0)
|
2017-03-29 09:04:58 +00:00
|
|
|
1131: 6(float) Load 103(inF0)
|
2017-07-05 18:07:16 +00:00
|
|
|
1132: 48(fvec4) VectorTimesScalar 1130 1131
|
|
|
|
Store 1129(r2) 1132
|
|
|
|
1134: 48(fvec4) Load 105(inFV0)
|
|
|
|
1135: 48(fvec4) Load 106(inFV1)
|
|
|
|
1136: 6(float) Dot 1134 1135
|
|
|
|
Store 1133(r3) 1136
|
|
|
|
1138: 48(fvec4) Load 105(inFV0)
|
|
|
|
1139: 76 Load 107(inFM0)
|
|
|
|
1140: 48(fvec4) VectorTimesMatrix 1138 1139
|
|
|
|
Store 1137(r4) 1140
|
|
|
|
1142: 76 Load 107(inFM0)
|
|
|
|
1143: 48(fvec4) Load 105(inFV0)
|
|
|
|
1144: 48(fvec4) MatrixTimesVector 1142 1143
|
|
|
|
Store 1141(r5) 1144
|
|
|
|
1146: 6(float) Load 103(inF0)
|
|
|
|
1147: 76 Load 107(inFM0)
|
|
|
|
1148: 76 MatrixTimesScalar 1147 1146
|
|
|
|
Store 1145(r6) 1148
|
|
|
|
1150: 76 Load 107(inFM0)
|
|
|
|
1151: 6(float) Load 103(inF0)
|
|
|
|
1152: 76 MatrixTimesScalar 1150 1151
|
|
|
|
Store 1149(r7) 1152
|
|
|
|
1154: 76 Load 108(inFM1)
|
|
|
|
1155: 76 Load 107(inFM0)
|
|
|
|
1156: 76 MatrixTimesMatrix 1154 1155
|
|
|
|
Store 1153(r8) 1156
|
2016-06-20 19:26:59 +00:00
|
|
|
Return
|
|
|
|
FunctionEnd
|
2016-08-24 20:36:13 +00:00
|
|
|
129(TestGenMulNxM(f1;f1;vf2;vf3;mf23;mf32;mf33;mf34;mf24;): 2 Function None 119
|
2016-06-30 20:13:03 +00:00
|
|
|
120(inF0): 7(ptr) FunctionParameter
|
|
|
|
121(inF1): 7(ptr) FunctionParameter
|
|
|
|
122(inFV2): 25(ptr) FunctionParameter
|
|
|
|
123(inFV3): 37(ptr) FunctionParameter
|
|
|
|
124(inFM2x3): 112(ptr) FunctionParameter
|
|
|
|
125(inFM3x2): 114(ptr) FunctionParameter
|
|
|
|
126(inFM3x3): 69(ptr) FunctionParameter
|
|
|
|
127(inFM3x4): 116(ptr) FunctionParameter
|
|
|
|
128(inFM2x4): 118(ptr) FunctionParameter
|
|
|
|
130: Label
|
2017-07-05 18:07:16 +00:00
|
|
|
1157(r00): 7(ptr) Variable Function
|
|
|
|
1161(r01): 25(ptr) Variable Function
|
|
|
|
1165(r02): 37(ptr) Variable Function
|
|
|
|
1169(r03): 25(ptr) Variable Function
|
|
|
|
1173(r04): 37(ptr) Variable Function
|
|
|
|
1177(r05): 7(ptr) Variable Function
|
|
|
|
1181(r06): 7(ptr) Variable Function
|
|
|
|
1185(r07): 37(ptr) Variable Function
|
|
|
|
1189(r08): 25(ptr) Variable Function
|
|
|
|
1193(r09): 25(ptr) Variable Function
|
|
|
|
1197(r10): 37(ptr) Variable Function
|
|
|
|
1201(r11): 112(ptr) Variable Function
|
|
|
|
1205(r12): 114(ptr) Variable Function
|
|
|
|
1209(r13): 61(ptr) Variable Function
|
|
|
|
1213(r14): 112(ptr) Variable Function
|
|
|
|
1217(r15): 118(ptr) Variable Function
|
|
|
|
1221(r16): 116(ptr) Variable Function
|
|
|
|
1158: 6(float) Load 121(inF1)
|
|
|
|
1159: 6(float) Load 120(inF0)
|
|
|
|
1160: 6(float) FMul 1158 1159
|
|
|
|
Store 1157(r00) 1160
|
|
|
|
1162: 6(float) Load 120(inF0)
|
|
|
|
1163: 24(fvec2) Load 122(inFV2)
|
|
|
|
1164: 24(fvec2) VectorTimesScalar 1163 1162
|
|
|
|
Store 1161(r01) 1164
|
|
|
|
1166: 6(float) Load 120(inF0)
|
|
|
|
1167: 36(fvec3) Load 123(inFV3)
|
|
|
|
1168: 36(fvec3) VectorTimesScalar 1167 1166
|
|
|
|
Store 1165(r02) 1168
|
|
|
|
1170: 24(fvec2) Load 122(inFV2)
|
|
|
|
1171: 6(float) Load 120(inF0)
|
|
|
|
1172: 24(fvec2) VectorTimesScalar 1170 1171
|
|
|
|
Store 1169(r03) 1172
|
2017-03-29 09:04:58 +00:00
|
|
|
1174: 36(fvec3) Load 123(inFV3)
|
2017-07-05 18:07:16 +00:00
|
|
|
1175: 6(float) Load 120(inF0)
|
|
|
|
1176: 36(fvec3) VectorTimesScalar 1174 1175
|
|
|
|
Store 1173(r04) 1176
|
HLSL: add intrinsic function implicit promotions
This PR handles implicit promotions for intrinsics when there is no exact match,
such as for example clamp(int, bool, float). In this case the int and bool will
be promoted to a float, and the clamp(float, float, float) form used.
These promotions can be mixed with shape conversions, e.g, clamp(int, bool2, float2).
Output conversions are handled either via the existing addOutputArgumentConversion
function, which this PR generalizes to handle either aggregates or unaries, or by
intrinsic decomposition. If there are methods or intrinsics to be decomposed,
then decomposition is responsible for any output conversions, which turns out to
happen automatically in all current cases. This can be revisited once inout
conversions are in place.
Some cases of actual ambiguity were fixed in several tests, e.g, spv.register.autoassign.*
Some intrinsics with only uint versions were expanded to signed ints natively, where the
underlying AST and SPIR-V supports that. E.g, countbits. This avoids extraneous
conversion nodes.
A new function promoteAggregate is added, and used by findFunction. This is essentially
a generalization of the "promote 1st or 2nd arg" algorithm in promoteBinary.
The actual selection proceeds in three steps, as described in the comments in
hlslParseContext::findFunction:
1. Attempt an exact match. If found, use it.
2. If not, obtain the operator from step 1, and promote arguments.
3. Re-select the intrinsic overload from the results of step 2.
2016-11-02 18:42:34 +00:00
|
|
|
1178: 24(fvec2) Load 122(inFV2)
|
2017-07-05 18:07:16 +00:00
|
|
|
1179: 24(fvec2) Load 122(inFV2)
|
|
|
|
1180: 6(float) Dot 1178 1179
|
|
|
|
Store 1177(r05) 1180
|
|
|
|
1182: 36(fvec3) Load 123(inFV3)
|
|
|
|
1183: 36(fvec3) Load 123(inFV3)
|
|
|
|
1184: 6(float) Dot 1182 1183
|
|
|
|
Store 1181(r06) 1184
|
|
|
|
1186: 111 Load 124(inFM2x3)
|
|
|
|
1187: 24(fvec2) Load 122(inFV2)
|
|
|
|
1188: 36(fvec3) MatrixTimesVector 1186 1187
|
|
|
|
Store 1185(r07) 1188
|
2017-03-29 09:04:58 +00:00
|
|
|
1190: 113 Load 125(inFM3x2)
|
2017-07-05 18:07:16 +00:00
|
|
|
1191: 36(fvec3) Load 123(inFV3)
|
|
|
|
1192: 24(fvec2) MatrixTimesVector 1190 1191
|
|
|
|
Store 1189(r08) 1192
|
|
|
|
1194: 36(fvec3) Load 123(inFV3)
|
2017-03-29 09:04:58 +00:00
|
|
|
1195: 111 Load 124(inFM2x3)
|
2017-07-05 18:07:16 +00:00
|
|
|
1196: 24(fvec2) VectorTimesMatrix 1194 1195
|
|
|
|
Store 1193(r09) 1196
|
|
|
|
1198: 24(fvec2) Load 122(inFV2)
|
|
|
|
1199: 113 Load 125(inFM3x2)
|
|
|
|
1200: 36(fvec3) VectorTimesMatrix 1198 1199
|
|
|
|
Store 1197(r10) 1200
|
|
|
|
1202: 6(float) Load 120(inF0)
|
|
|
|
1203: 111 Load 124(inFM2x3)
|
|
|
|
1204: 111 MatrixTimesScalar 1203 1202
|
|
|
|
Store 1201(r11) 1204
|
|
|
|
1206: 6(float) Load 120(inF0)
|
|
|
|
1207: 113 Load 125(inFM3x2)
|
|
|
|
1208: 113 MatrixTimesScalar 1207 1206
|
|
|
|
Store 1205(r12) 1208
|
|
|
|
1210: 113 Load 125(inFM3x2)
|
|
|
|
1211: 111 Load 124(inFM2x3)
|
|
|
|
1212: 60 MatrixTimesMatrix 1210 1211
|
|
|
|
Store 1209(r13) 1212
|
|
|
|
1214: 68 Load 126(inFM3x3)
|
|
|
|
1215: 111 Load 124(inFM2x3)
|
|
|
|
1216: 111 MatrixTimesMatrix 1214 1215
|
|
|
|
Store 1213(r14) 1216
|
|
|
|
1218: 115 Load 127(inFM3x4)
|
|
|
|
1219: 111 Load 124(inFM2x3)
|
|
|
|
1220: 117 MatrixTimesMatrix 1218 1219
|
|
|
|
Store 1217(r15) 1220
|
|
|
|
1222: 117 Load 128(inFM2x4)
|
|
|
|
1223: 113 Load 125(inFM3x2)
|
|
|
|
1224: 115 MatrixTimesMatrix 1222 1223
|
|
|
|
Store 1221(r16) 1224
|
2016-06-09 14:57:35 +00:00
|
|
|
Return
|
2016-05-26 16:10:16 +00:00
|
|
|
FunctionEnd
|