We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent a1ecdb1 commit 7b91933Copy full SHA for 7b91933
src/boot/me/trans.ml
@@ -625,7 +625,17 @@ let trans_visitor
625
let op_b = sub_sz b in
626
let tmp = next_vreg_cell word_sty in
627
mov tmp op_a;
628
- emit (Il.cmp op_a op_b);
+ (*
629
+ * FIXME: X86-ism going via a vreg; mem op= mem doesn't
630
+ * work and IL lacks sufficient brains to cope just now.
631
+ * Instead, should be
632
+ *
633
+ * emit (Il.cmp op_a op_b)
634
635
+ * Luckily this isn't the worst hack since we already
636
+ * needed a tmp vreg for op_a.
637
+ *)
638
+ emit (Il.cmp (Il.Cell tmp) op_b);
639
let jmp = mark () in
640
emit (Il.jmp Il.JAE Il.CodeNone);
641
mov tmp op_b;
0 commit comments