Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dotnet/runtime.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/coreclr')
-rw-r--r--src/coreclr/jit/sideeffects.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/coreclr/jit/sideeffects.h b/src/coreclr/jit/sideeffects.h
index 9f28e5fe419..f16fe59c9bd 100644
--- a/src/coreclr/jit/sideeffects.h
+++ b/src/coreclr/jit/sideeffects.h
@@ -128,8 +128,12 @@ public:
if ((m_flags & ALIAS_WRITES_LCL_VAR) != 0)
{
+ // Stores to 'lvLiveInOutOfHndlr' locals cannot be reordered with
+ // exception-throwing nodes so we conservatively consider them
+ // globally visible.
+
LclVarDsc* const varDsc = m_compiler->lvaGetDesc(LclNum());
- return varDsc->IsAlwaysAliveInMemory();
+ return varDsc->lvLiveInOutOfHndlr != 0;
}
return false;