aboutsummaryrefslogtreecommitdiff
path: root/src/boot/be
diff options
context:
space:
mode:
authorGraydon Hoare <[email protected]>2010-10-12 12:28:46 -0700
committerGraydon Hoare <[email protected]>2010-10-12 12:28:46 -0700
commitbeb4c07e26794dde482b4de85107f1e078375036 (patch)
tree84bff2b8cddc28b6f0020c9dffc1e6dacec873cb /src/boot/be
parentChanges to make rustboot compile on OCaml 3.12 (diff)
downloadrust-beb4c07e26794dde482b4de85107f1e078375036.tar.xz
rust-beb4c07e26794dde482b4de85107f1e078375036.zip
Git index wins again.
Diffstat (limited to 'src/boot/be')
-rw-r--r--src/boot/be/ra.ml9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/boot/be/ra.ml b/src/boot/be/ra.ml
index 3b3e8b92..66da8093 100644
--- a/src/boot/be/ra.ml
+++ b/src/boot/be/ra.ml
@@ -132,7 +132,12 @@ let kill_redundant_moves (cx:ctxt) : unit =
let quad_jump_target_labels (q:quad) : Il.label list =
match q.Il.quad_body with
- Il.Jmp { Il.jmp_targ = Il.CodeLabel lab; _ } -> [ lab ]
+ Il.Jmp jmp ->
+ begin
+ match jmp.Il.jmp_targ with
+ Il.CodeLabel lab -> [ lab ]
+ | _ -> []
+ end
| _ -> []
;;
@@ -172,7 +177,7 @@ let quad_defined_vregs (q:quad) : Il.vreg list =
let quad_is_unconditional_jump (q:quad) : bool =
match q.Il.quad_body with
- Il.Jmp { jmp_op = Il.JMP; _ } -> true
+ Il.Jmp { jmp_op = Il.JMP; jmp_targ = _ } -> true
| Il.Ret -> true
| _ -> false
;;