From e9f0544aa4737d5cba8424f95485811b4839d76e Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Mon, 23 Sep 2019 15:42:06 -0400 Subject: Fix for preprocessor defines for C++ / C (#1063) * First pass support for performance profiling * Test across all elements * Fix bug - sourceContents is not used, should use rawSource. * * Add ability to get prelude from API. * Allow specifying source language for render-test * Made it possible to compile a test input file as C++ * Special handling for reflection * Added C++ impl to performance-profile.slang * Remove some clang warnings. * Output profile timings on appveyor and other TC. * Remove passing around of StdWriters (can use global). Small comment improvements. * Fix defines being passed through to Visual Studio. * Fix bug handling preprocessor definitions in Gcc/Clang targets. --- source/slang/slang-compiler.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'source/slang/slang-compiler.cpp') diff --git a/source/slang/slang-compiler.cpp b/source/slang/slang-compiler.cpp index 0860a339c..a24289d22 100644 --- a/source/slang/slang-compiler.cpp +++ b/source/slang/slang-compiler.cpp @@ -1243,6 +1243,13 @@ SlangResult dissassembleDXILUsingDXC( { preprocessorDefinitions.Add(define.Key, define.Value); } + { + auto linkage = targetReq->getLinkage(); + for (auto& define : linkage->preprocessorDefinitions) + { + preprocessorDefinitions.Add(define.Key, define.Value); + } + } { /* TODO(JS): Not totally clear what options should be set here. If we are using the pass through - then using say the defines/includes -- cgit v1.2.3