From a2a7c4d988b2b7126130d9dcbe4ec94e1ce8424b Mon Sep 17 00:00:00 2001 From: Yong He Date: Wed, 2 Sep 2020 12:21:28 -0700 Subject: Allow unspecialized existential shader parameters (dynamic dispatch). (#1529) * Allow unspecialized existential shader parameters (dynamic dispatch). * Fixes. * Fixes * disable cuda test --- source/slang/slang-compiler.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'source/slang/slang-compiler.cpp') diff --git a/source/slang/slang-compiler.cpp b/source/slang/slang-compiler.cpp index 53e529cc7..9b567a7d7 100755 --- a/source/slang/slang-compiler.cpp +++ b/source/slang/slang-compiler.cpp @@ -2483,13 +2483,14 @@ SlangResult dissassembleDXILUsingDXC( BackEndCompileRequest* compileRequest, EndToEndCompileRequest* endToEndReq) { - // If we are about to generate output code, but we still + // When dynamic dispatch is disabled, the program must + // be fully specialized by now. So we check if we still // have unspecialized generic/existential parameters, - // then there is a problem. + // and report them as an error. // auto program = compileRequest->getProgram(); auto specializationParamCount = program->getSpecializationParamCount(); - if( specializationParamCount != 0 ) + if (compileRequest->disableDynamicDispatch && specializationParamCount != 0) { auto sink = compileRequest->getSink(); -- cgit v1.2.3