summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bgfx/3rdparty/spirv-tools/source/opt/ir_context.cpp
diff options
context:
space:
mode:
author Julian Sikorski <belegdol+github@gmail.com>2019-11-13 04:08:23 +0100
committer R. Belmont <rb6502@users.noreply.github.com>2019-11-12 22:08:23 -0500
commit0c70101b74db61f883fdd7907a4975ffff735044 (patch)
tree067ae1c831088d6853b6f443e5a05a4c5d8cd7aa /3rdparty/bgfx/3rdparty/spirv-tools/source/opt/ir_context.cpp
parentc089bea7011de9ca78f43979d902978a113d33e2 (diff)
Sync bgfx, bx and bimg with upstream; fix the hlsl fs_chroma.sc matrix transposition properly (#5875)
* Sync bgfx with upstream revision 280420d * Sync bx with upstream revision 267727d * Sync bimg with upstream revision c1bab10 * Use bgfx helper functions to ensure correct matrix orientation * Rebuild hlsl chain
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-tools/source/opt/ir_context.cpp')
-rw-r--r--3rdparty/bgfx/3rdparty/spirv-tools/source/opt/ir_context.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-tools/source/opt/ir_context.cpp b/3rdparty/bgfx/3rdparty/spirv-tools/source/opt/ir_context.cpp
index 1c747b7a3a6..d940180da0b 100644
--- a/3rdparty/bgfx/3rdparty/spirv-tools/source/opt/ir_context.cpp
+++ b/3rdparty/bgfx/3rdparty/spirv-tools/source/opt/ir_context.cpp
@@ -94,6 +94,14 @@ void IRContext::InvalidateAnalyses(IRContext::Analysis analyses_to_invalidate) {
if (analyses_to_invalidate & kAnalysisTypes) {
analyses_to_invalidate |= kAnalysisConstants;
}
+
+ // The dominator analysis hold the psuedo entry and exit nodes from the CFG.
+ // Also if the CFG change the dominators many changed as well, so the
+ // dominator analysis should be invalidated as well.
+ if (analyses_to_invalidate & kAnalysisCFG) {
+ analyses_to_invalidate |= kAnalysisDominatorAnalysis;
+ }
+
if (analyses_to_invalidate & kAnalysisDefUse) {
def_use_mgr_.reset(nullptr);
}