diff options
-rw-r--r-- | asmcomp/liveness.ml | 2 | ||||
-rw-r--r-- | asmcomp/split.ml | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/asmcomp/liveness.ml b/asmcomp/liveness.ml index 1e9bd6712..ad1f31c74 100644 --- a/asmcomp/liveness.ml +++ b/asmcomp/liveness.ml @@ -71,7 +71,7 @@ let rec live i finally = i.live <- before_body; before_body | Iexit -> - (* i.live remains empty since no regs are live across *) + i.live <- !live_at_exit; (* These regs are live across *) !live_at_exit | Itrywith(body, handler) -> let at_join = live i.next finally in diff --git a/asmcomp/split.ml b/asmcomp/split.ml index 3a5e902a5..f22ddc93e 100644 --- a/asmcomp/split.ml +++ b/asmcomp/split.ml @@ -170,7 +170,7 @@ let rec rename i sub = (instr_cons (Icatch(new_body, new_handler)) [||] [||] new_next, sub_next) | Iexit -> - exit_subst := merge_substs !exit_subst sub i.next; + exit_subst := merge_substs !exit_subst sub i; (i, None) | Itrywith(body, handler) -> let (new_body, sub_body) = rename body sub in |