diff options
author | John Hodge <tpg@ucc.asn.au> | 2019-05-14 20:49:40 +0800 |
---|---|---|
committer | John Hodge <tpg@ucc.asn.au> | 2019-05-14 20:49:40 +0800 |
commit | cee20b8f3ab7fd6eca9fddff712b899064d0536b (patch) | |
tree | 035610cf29f8266ad8d27df690ee32a27e2506b9 /src/mir/optimise.cpp | |
parent | 64933e013b3b9cf11f479a07cbe674de4f56ab7b (diff) | |
download | mrust-cee20b8f3ab7fd6eca9fddff712b899064d0536b.tar.gz |
Trans Enumerate - Cache paths used by function
Diffstat (limited to 'src/mir/optimise.cpp')
-rw-r--r-- | src/mir/optimise.cpp | 4 |
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 { |