From 59ba2594dedac02ad2ef7bc049bd78f5412e1a92 Mon Sep 17 00:00:00 2001 From: Yong He Date: Tue, 3 Dec 2024 22:36:46 -0800 Subject: Fix `SpvExecutionModeOutputLinesEXT`. (#5740) --- source/slang/slang-check-decl.cpp | 3 ++- source/slang/slang-emit-spirv.cpp | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'source/slang') diff --git a/source/slang/slang-check-decl.cpp b/source/slang/slang-check-decl.cpp index e4206827f..4a4ade047 100644 --- a/source/slang/slang-check-decl.cpp +++ b/source/slang/slang-check-decl.cpp @@ -8789,7 +8789,8 @@ void SemanticsDeclHeaderVisitor::checkMeshOutputDecl(VarDeclBase* varDecl) nullptr, ConstantFoldingKind::LinkTime, getSink()); - + if (!index) + return; Type* d = m_astBuilder->getMeshOutputTypeFromModifier(modifier, base, index); varDecl->type.type = d; } diff --git a/source/slang/slang-emit-spirv.cpp b/source/slang/slang-emit-spirv.cpp index b0da7e4a6..58f5e4f66 100644 --- a/source/slang/slang-emit-spirv.cpp +++ b/source/slang/slang-emit-spirv.cpp @@ -4467,7 +4467,7 @@ struct SPIRVEmitContext : public SourceEmitterBase, public SPIRVEmitSharedContex if (t == "triangle") m = SpvExecutionModeOutputTrianglesEXT; else if (t == "line") - m = SpvExecutionModeOutputTrianglesEXT; + m = SpvExecutionModeOutputLinesEXT; else if (t == "point") m = SpvExecutionModeOutputPoints; } -- cgit v1.2.3