Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/KhronosGroup/SPIRV-Cross.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Kristian Arntzen <post@arntzen-software.no>2022-05-13 14:01:24 +0300
committerHans-Kristian Arntzen <post@arntzen-software.no>2022-05-13 14:02:45 +0300
commit05206005cab735709f42f6a7d595d8b41da8ebd4 (patch)
tree530abfe3f7a633b3f6dce0dd18a23d9cad96d1c6 /reference/opt
parent940efca099afd08bf9ef1679239b5040976d2cb2 (diff)
MSL: Potentially cast loaded Input variables.
If the sign is rewritten for an input, we might have to fixup the sign in OpLoad, similar to builtins.
Diffstat (limited to 'reference/opt')
-rw-r--r--reference/opt/shaders-msl/frag/vecsize-mismatch.shader-inputs.frag2
-rw-r--r--reference/opt/shaders-msl/vert/signedness-mismatch.shader-inputs.vert2
2 files changed, 2 insertions, 2 deletions
diff --git a/reference/opt/shaders-msl/frag/vecsize-mismatch.shader-inputs.frag b/reference/opt/shaders-msl/frag/vecsize-mismatch.shader-inputs.frag
index 6116deab..1cb7aa70 100644
--- a/reference/opt/shaders-msl/frag/vecsize-mismatch.shader-inputs.frag
+++ b/reference/opt/shaders-msl/frag/vecsize-mismatch.shader-inputs.frag
@@ -69,7 +69,7 @@ fragment main0_out main0(main0_in in [[stage_in]])
c[1] = in.c_1;
e[0] = in.e_0;
e[1] = in.e_1;
- out.FragColor = float4(float(int(in.a.x)), float(in.b.x), float2(float(uint(c[1])), float(e[0].w)) + in.d.xy);
+ out.FragColor = float4(float(int(short(in.a.x))), float(int(in.b.x)), float2(float(uint(c[1])), float(e[0].w)) + in.d.xy);
return out;
}
diff --git a/reference/opt/shaders-msl/vert/signedness-mismatch.shader-inputs.vert b/reference/opt/shaders-msl/vert/signedness-mismatch.shader-inputs.vert
index d6e056be..56e00199 100644
--- a/reference/opt/shaders-msl/vert/signedness-mismatch.shader-inputs.vert
+++ b/reference/opt/shaders-msl/vert/signedness-mismatch.shader-inputs.vert
@@ -68,7 +68,7 @@ vertex main0_out main0(main0_in in [[stage_in]])
c[1] = in.c_1;
d[0] = in.d_0;
d[1] = in.d_1;
- out.gl_Position = float4(float(int(in.a.x)), float(in.b.x), float(uint(c[1])), float(d[0].w));
+ out.gl_Position = float4(float(int(short(in.a.x))), float(int(in.b.x)), float(uint(c[1])), float(d[0].w));
return out;
}