summaryrefslogtreecommitdiff
path: root/tests/serialization/obfuscated-loc-module.slang
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2023-04-17 15:09:37 -0400
committerGitHub <noreply@github.com>2023-04-17 15:09:37 -0400
commit90a9f43573ec0777c2ae4fa20c8fdc51a4ae7b3a (patch)
tree360750778be872a086674024a9ce5a68bf4e7cb3 /tests/serialization/obfuscated-loc-module.slang
parenta3f622ace1bdef1f1a4150ec85d1328d1a589333 (diff)
Round trip source map (#2810)
* #include an absolute path didn't work - because paths were taken to always be relative. * Make output of obfuscation locs work in a slang-module. * Tidy up detection for writing serialized source locs. * Support for .zip references. Handling of obfuscated source maps read from containers. A test to check obfuscated source map working on a module. * When using obfuscation, always obfuscate locs instead of stripping them. We keep a source map, so we can still produce reasonable errors. * Write out source locs if debug information is enabled. * Check output without sourcemap. * Small fixes. * Small improvements around hash calculation for source map name. * Disable test that fails on x86 gcc linux for now. * Fix issues around obfuscated source map using lines rather than columns. Fix some issues around encoding/decoding. * Make column calculation of source locs take into account utf8/tabs. Don't special case obfuscated source map for lookup for source loc. * Support following multiple source maps. * Small fixes/improvements around SourceMap lookup.
Diffstat (limited to 'tests/serialization/obfuscated-loc-module.slang')
-rw-r--r--tests/serialization/obfuscated-loc-module.slang21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/serialization/obfuscated-loc-module.slang b/tests/serialization/obfuscated-loc-module.slang
new file mode 100644
index 000000000..63c4f61ee
--- /dev/null
+++ b/tests/serialization/obfuscated-loc-module.slang
@@ -0,0 +1,21 @@
+//TEST_IGNORE_FILE:
+
+// obfuscated-loc-module.slang
+
+
+int billy(int v)
+{
+ return v + 1;
+}
+
+// This function is designed to fail during IR passes/emit.
+int silly(int a)
+{
+ int t = 0;
+ [ForceUnroll(10)]
+ while ( a > 0)
+ {
+ t = t + t + a;
+ }
+ return t;
+}