From 10b2038a8e71eb4a0e41cff38bc71e36dc0003aa Mon Sep 17 00:00:00 2001 From: Ellie Hermaszewska Date: Tue, 8 Aug 2023 06:01:02 +0800 Subject: Diagnostic improvements for direct spirv (#3053) * Fail on an unhandled spv operand * Diagnose on emitting a function with no definition or intrinsic * clearer error message * Add assert * Add assert * remove unused assert * Disagnostic on snippet parsing failure * Mention unimplemented instruction in error message * mention unhandled local instruction for spirv in error message * Allow specifying dump options in dumpIRToString --------- Co-authored-by: Yong He --- source/slang/slang-ir-spirv-snippet.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'source/slang/slang-ir-spirv-snippet.cpp') diff --git a/source/slang/slang-ir-spirv-snippet.cpp b/source/slang/slang-ir-spirv-snippet.cpp index 81e4d0bff..a263ad7f7 100644 --- a/source/slang/slang-ir-spirv-snippet.cpp +++ b/source/slang/slang-ir-spirv-snippet.cpp @@ -288,7 +288,7 @@ RefPtr SpvSnippet::parse(UnownedStringSlice definition) } else { - SLANG_ASSERT(!"Invalid SPV ASM operand."); + SLANG_UNEXPECTED(("Invalid SPV ASM operand: \"" + identifier + "\"").getBuffer()); } } break; @@ -302,7 +302,7 @@ RefPtr SpvSnippet::parse(UnownedStringSlice definition) } catch (const Slang::Misc::TextFormatException&) { - SLANG_ASSERT(!"Invalid ASM format."); + return nullptr; } return snippet; } -- cgit v1.2.3