From 90a9f43573ec0777c2ae4fa20c8fdc51a4ae7b3a Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Mon, 17 Apr 2023 15:09:37 -0400 Subject: 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. --- tests/serialization/obfuscated-loc-module.slang | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 tests/serialization/obfuscated-loc-module.slang (limited to 'tests/serialization/obfuscated-loc-module.slang') 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; +} -- cgit v1.2.3