SPIRV-Cross/reference/opt/shaders/asm/vert/spec-constant-op-composite.asm.vk.vert.vk
Hans-Kristian Arntzen 23662668dd Attempt more optimal codegen for OpCompositeInsert.
Speculate that we can modify the SSA value in-place. As long as it is
not used after the modify, this is fine.

Also need to make sure we don't attempt to RMW something that is
impossible to modify.
2022-05-18 16:37:33 +02:00

29 lines
654 B
Plaintext

#version 450
layout(constant_id = 201) const int _7 = -10;
const int _20 = (_7 + 2);
layout(constant_id = 202) const uint _8 = 100u;
const uint _25 = (_8 % 5u);
const int _30 = _7 - (-3) * (_7 / (-3));
const ivec4 _32 = ivec4(20, 30, _20, _30);
const ivec2 _34 = ivec2(_32.y, _32.x);
const int _35 = _32.y;
layout(location = 0) flat out int _4;
void main()
{
float _42 = float(_20);
vec4 _65 = vec4(0.0);
_65.y = _42;
float _47 = float(_25);
_65.z = _47;
vec4 _52 = vec4(_32);
vec4 _54 = _65 + _52;
vec2 _55 = vec2(_34);
vec2 _58 = _54.xy + _55;
gl_Position = vec4(_58.x, _58.y, _54.z, _54.w);
_4 = _35;
}