summaryrefslogtreecommitdiff
path: root/src/mir/optimise.cpp
diff options
context:
space:
mode:
authorJohn Hodge <tpg@ucc.asn.au>2019-05-14 20:49:40 +0800
committerJohn Hodge <tpg@ucc.asn.au>2019-05-14 20:49:40 +0800
commitcee20b8f3ab7fd6eca9fddff712b899064d0536b (patch)
tree035610cf29f8266ad8d27df690ee32a27e2506b9 /src/mir/optimise.cpp
parent64933e013b3b9cf11f479a07cbe674de4f56ab7b (diff)
downloadmrust-cee20b8f3ab7fd6eca9fddff712b899064d0536b.tar.gz
Trans Enumerate - Cache paths used by function
Diffstat (limited to 'src/mir/optimise.cpp')
-rw-r--r--src/mir/optimise.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mir/optimise.cpp b/src/mir/optimise.cpp
index b1be20a4..440f65db 100644
--- a/src/mir/optimise.cpp
+++ b/src/mir/optimise.cpp
@@ -3921,7 +3921,9 @@ void MIR_OptimiseCrate_Inlining(const ::HIR::Crate& crate, TransList& list)
else if( hir_fcn.m_code )
{
auto& mir = hir_fcn.m_code.get_mir_or_error_mut(Span());
- did_inline_on_pass |= MIR_OptimiseInline(resolve, ip, mir, hir_fcn.m_args, hir_fcn.m_return, list);
+ bool did_opt = MIR_OptimiseInline(resolve, ip, mir, hir_fcn.m_args, hir_fcn.m_return, list);
+ mir.trans_enum_state = ::MIR::EnumCachePtr(); // Clear MIR enum cache
+ did_inline_on_pass |= did_opt;
}
else
{