summaryrefslogtreecommitdiffstats
path: root/tests/serialization/obfuscated-serialized-module-test.slang
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2023-03-24 09:56:59 -0400
committerGitHub <noreply@github.com>2023-03-24 09:56:59 -0400
commite794de0d63e6de9be564c971fd40486ecf631293 (patch)
tree903bd4100fd9c259d68f2893c61a36880e182f14 /tests/serialization/obfuscated-serialized-module-test.slang
parent03c10833beb331e234554808c2a80d3cadecc7c0 (diff)
Obfuscated source map writing (#2727)
* #include an absolute path didn't work - because paths were taken to always be relative. * WIP produce obfuscated source map and write when container is specified. * Make the sourcemap generated name stable.
Diffstat (limited to 'tests/serialization/obfuscated-serialized-module-test.slang')
-rw-r--r--tests/serialization/obfuscated-serialized-module-test.slang35
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/serialization/obfuscated-serialized-module-test.slang b/tests/serialization/obfuscated-serialized-module-test.slang
new file mode 100644
index 000000000..55a68f6c2
--- /dev/null
+++ b/tests/serialization/obfuscated-serialized-module-test.slang
@@ -0,0 +1,35 @@
+// obfuscated-serialized-module-test.slang
+
+// A test to try out the basics of module
+// serialization, obfuscation and source maps.
+
+//TEST:COMPILE: tests/serialization/serialized-module.slang -o tests/serialization/obfuscated-serialized-module.slang-module -obfuscate -source-map
+//TEST:COMPARE_COMPUTE_EX:-slang -compute -Xslang... -r tests/serialization/obfuscated-serialized-module.slang-module -obfuscate -source-map -X. -shaderobj
+
+//import obfuscated_serialized_module;
+
+// This is fragile - needs match the definition in obfuscated_serialized_module
+struct Thing
+{
+ int a;
+ int b;
+};
+
+// TODO: need to get the name mangling to line up!
+int foo(Thing thing);
+
+//TEST_INPUT:ubuffer(data=[0 0 0 0 ], stride=4):out,name outputBuffer
+RWStructuredBuffer<int> outputBuffer;
+
+[numthreads(4, 1, 1)]
+void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
+{
+ Thing thing;
+
+ int index = (int)dispatchThreadID.x;
+
+ thing.a = index;
+ thing.b = -index;
+
+ outputBuffer[index] = foo(thing);
+}