diff --git a/backend/arm64/emit.ml b/backend/arm64/emit.ml index b2a3baff5e6..d3093369a98 100644 --- a/backend/arm64/emit.ml +++ b/backend/arm64/emit.ml @@ -1160,10 +1160,10 @@ let assembly_code_for_allocation i ~local ~n ~far ~dbginfo = emit_subimm reg_alloc_ptr reg_alloc_ptr n; DSL.ins I.CMP [| DSL.emit_reg reg_alloc_ptr; DSL.emit_reg reg_tmp1 |]; (if not far - then DSL.ins (I.B_cond CC) [| DSL.emit_label lbl_call_gc |] + then DSL.ins (I.B_cond LS) [| DSL.emit_label lbl_call_gc |] else let lbl = L.create Text in - DSL.ins (I.B_cond CS) [| DSL.emit_label lbl |]; + DSL.ins (I.B_cond HI) [| DSL.emit_label lbl |]; DSL.ins I.B [| DSL.emit_label lbl_call_gc |]; D.define_label lbl); DSL.labeled_ins lbl_after_alloc I.ADD