summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-emit.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2023-08-30 11:45:47 -0700
committerGitHub <noreply@github.com>2023-08-30 11:45:47 -0700
commitbb15f5b494b20e957127f0ffa6040c94349da0d0 (patch)
treeb060f2b5751cc56c5f1fd8f7b37434e56b6b4e5b /source/slang/slang-emit.cpp
parent019f702e24d2d1d6ecf53d71f87776a83db96608 (diff)
Fix memory barrier intrinsics. (#3166)
* Fix memory barrier intrinsics. Makes them produce the same spirv code as dxc. * Fix. * filecheck barrier test for spirv backend. * Fix glsl intrinsic definition. * Fix intrinsics. * Fix intrinsics. * Fix. * Fix. --------- Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'source/slang/slang-emit.cpp')
-rw-r--r--source/slang/slang-emit.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/source/slang/slang-emit.cpp b/source/slang/slang-emit.cpp
index 8ee641acc..8dc0d2983 100644
--- a/source/slang/slang-emit.cpp
+++ b/source/slang/slang-emit.cpp
@@ -899,6 +899,9 @@ Result linkAndOptimizeIR(
eliminateMultiLevelBreak(irModule);
+ if (isKhronosTarget(targetRequest) && targetRequest->shouldEmitSPIRVDirectly())
+ performIntrinsicFunctionFunctionInlining(irModule);
+
simplifyIR(irModule, sink);
// As a late step, we need to take the SSA-form IR and move things *out*