From 971740991b877a7f364e1dd59e9cd742f6d839db Mon Sep 17 00:00:00 2001 From: Stefanos Kornilios Mitsis Poiitidis Date: Wed, 17 Mar 2021 02:42:20 +0200 Subject: [PATCH] RCLSE: Invalidate around OP_SYSCALLs, Syscalls might read the context and need the latest version of it Fixes steam w/ all optimization passes enabled --- .../Source/Interface/IR/Passes/DeadContextStoreElimination.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/External/FEXCore/Source/Interface/IR/Passes/DeadContextStoreElimination.cpp b/External/FEXCore/Source/Interface/IR/Passes/DeadContextStoreElimination.cpp index 460eb2d25..f55482b73 100644 --- a/External/FEXCore/Source/Interface/IR/Passes/DeadContextStoreElimination.cpp +++ b/External/FEXCore/Source/Interface/IR/Passes/DeadContextStoreElimination.cpp @@ -598,7 +598,8 @@ bool RCLSE::RedundantStoreLoadElimination(FEXCore::IR::IREmitter *IREmit) { } } else if (IROp->Op == OP_STORECONTEXTINDEXED || - IROp->Op == OP_LOADCONTEXTINDEXED) { + IROp->Op == OP_LOADCONTEXTINDEXED || + IROp->Op == OP_SYSCALL) { // We can't track through these ResetClassificationAccesses(&LocalInfo); }