From 285a44058ed77624a808680ea435ca506d585de9 Mon Sep 17 00:00:00 2001 From: John Hodge Date: Sun, 22 Jan 2017 16:15:56 +0800 Subject: MIR Optimise - Validate before GC --- src/mir/optimise.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/mir/optimise.cpp') diff --git a/src/mir/optimise.cpp b/src/mir/optimise.cpp index a0b42e0d..b67aa4d2 100644 --- a/src/mir/optimise.cpp +++ b/src/mir/optimise.cpp @@ -324,6 +324,8 @@ void MIR_Optimise(const StaticTraitResolve& resolve, const ::HIR::ItemPath& path MIR_Optimise_UnifyBlocks(state, fcn); + // DEFENCE: Run validation _before_ GC (so validation errors refer to the pre-gc numbers) + MIR_Validate(resolve, path, fcn, args, ret_type); // GC pass on blocks and variables // - Find unused blocks, then delete and rewrite all references. MIR_Optimise_GarbageCollect(state, fcn); -- cgit v1.2.3