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:
Diffstat (limited to 'reference/shaders-msl/asm/frag/pass-by-value.asm.frag')
-rw-r--r--reference/shaders-msl/asm/frag/pass-by-value.asm.frag29
1 files changed, 29 insertions, 0 deletions
diff --git a/reference/shaders-msl/asm/frag/pass-by-value.asm.frag b/reference/shaders-msl/asm/frag/pass-by-value.asm.frag
new file mode 100644
index 00000000..6ed945ec
--- /dev/null
+++ b/reference/shaders-msl/asm/frag/pass-by-value.asm.frag
@@ -0,0 +1,29 @@
+#pragma clang diagnostic ignored "-Wmissing-prototypes"
+
+#include <metal_stdlib>
+#include <simd/simd.h>
+
+using namespace metal;
+
+struct Registers
+{
+ float foo;
+};
+
+struct main0_out
+{
+ float FragColor [[color(0)]];
+};
+
+float add_value(float v, float w)
+{
+ return v + w;
+}
+
+fragment main0_out main0(constant Registers& registers [[buffer(0)]])
+{
+ main0_out out = {};
+ out.FragColor = add_value(10.0, registers.foo);
+ return out;
+}
+