Browse Source

Fix a bug in the binemit file test.

Only emit each instruction once, or the offset computations go all
wrong.
pull/3/head
Jakob Stoklund Olesen 8 years ago
parent
commit
e56482d0fd
  1. 2
      filetests/isa/riscv/binary32.cton
  2. 2
      src/filetest/binemit.rs

2
filetests/isa/riscv/binary32.cton

@ -75,9 +75,11 @@ ebb0:
[-,%x7] v140 = iconst.i32 0x12345000 ; bin: 123453b7
[-,%x16] v141 = iconst.i32 0xffffffff_fedcb000 ; bin: fedcb837
jump ebb1
; Control Transfer Instructions
ebb1:
; beq
br_icmp eq, v1, v2, ebb0 ; bin: Branch(ebb0) 01550063
; bne

2
src/filetest/binemit.rs

@ -177,8 +177,6 @@ impl SubTest for TestBinEmit {
inst,
func.dfg.display_inst(inst)));
}
sink.text.clear();
isa.emit_inst(&func, inst, &mut sink);
let have = sink.text.trim();
if have != want {
return Err(format!("Bad machine code for {}: {}\nWant: {}\nGot: {}",

Loading…
Cancel
Save