aboutsummaryrefslogtreecommitdiffstats
path: root/backend/Linearizeaux.ml
diff options
context:
space:
mode:
Diffstat (limited to 'backend/Linearizeaux.ml')
-rw-r--r--backend/Linearizeaux.ml10
1 files changed, 5 insertions, 5 deletions
diff --git a/backend/Linearizeaux.ml b/backend/Linearizeaux.ml
index 41a98873..46d5c3f1 100644
--- a/backend/Linearizeaux.ml
+++ b/backend/Linearizeaux.ml
@@ -79,13 +79,13 @@ let basic_blocks f joins =
let rec do_instr_list = function
| [] -> assert false
| Lbranch s :: _ -> next_in_block blk minpc s
- | Ltailcall _ :: _ -> end_block blk minpc
- | Lcond (_, _, ifso, ifnot) :: _ ->
+ | Ltailcall (sig0, ros) :: _ -> end_block blk minpc
+ | Lcond (cond, args, ifso, ifnot) :: _ ->
end_block blk minpc; start_block ifso; start_block ifnot
- | Ljumptable(_, tbl) :: _ ->
+ | Ljumptable(arg, tbl) :: _ ->
end_block blk minpc; List.iter start_block tbl
| Lreturn :: _ -> end_block blk minpc
- | _ :: b' -> do_instr_list b' in
+ | instr :: b' -> do_instr_list b' in
do_instr_list b
(* next_in_block: check if join point and either extend block
or start block *)
@@ -110,5 +110,5 @@ let flatten_blocks blks =
(* Build the enumeration *)
-let enumerate_aux f _ =
+let enumerate_aux f reach =
flatten_blocks (basic_blocks f (join_points f))