From ef4c9f1f1c297f1a33be95795a7a7561e0cc3bde Mon Sep 17 00:00:00 2001 From: Ellie Hermaszewska Date: Sat, 26 Aug 2023 01:42:34 +0800 Subject: Initial version of spirv_asm block (#3151) * Initial version of spirv_asm block * Correct indentation of parent instruction dumping * neater dumping for spirv_asm instructions * Add $$ DollarDollar token * Allow passing addresses to spirv_asm blocks * spirv OpUndef * String literals in spirv asm * OpName for spirv_asm ids * Correct failure in lower spirv_asm * correct position for spirv_asm idents * comment correct * several more tests for spirv_asm blocks * Fill out some unimplemented functions for spirv_asm expressions --------- Co-authored-by: Yong He --- source/compiler-core/slang-lexer.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'source/compiler-core/slang-lexer.cpp') diff --git a/source/compiler-core/slang-lexer.cpp b/source/compiler-core/slang-lexer.cpp index 24cd3034b..5954dc668 100644 --- a/source/compiler-core/slang-lexer.cpp +++ b/source/compiler-core/slang-lexer.cpp @@ -1314,7 +1314,16 @@ namespace Slang case '?': _advance(lexer); return TokenType::QuestionMark; case '@': _advance(lexer); return TokenType::At; - case '$': _advance(lexer); return TokenType::Dollar; + case '$': + { + _advance(lexer); + if(_peek(lexer) == '$') + { + _advance(lexer); + return TokenType::DollarDollar; + } + return TokenType::Dollar; + } } -- cgit v1.2.3