Skip to content

Commit

Permalink
fix: do not panic on ref types while safepoint disabled
Browse files Browse the repository at this point in the history
  • Loading branch information
csmoe committed Feb 29, 2020
1 parent 91768e5 commit 506d35e
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 1 deletion.
6 changes: 5 additions & 1 deletion cranelift/codegen/src/regalloc/context.rs
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,11 @@ impl Context {
for val in func.dfg.values() {
let ty = func.dfg.value_type(val);
if ty.lane_type().is_ref() {
panic!("reference types were found but safepoints were not enabled.");
errors.report((
val,
"reference types were found but safepoints were not enabled.",
));
return Err(errors.into());
}
}
}
Expand Down
13 changes: 13 additions & 0 deletions cranelift/filetests/filetests/verifier/ref-safepoint.clif
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
test safepoint
test verifier
target x86_64

function %test(r64) -> r64 {
block0(v0: r64):
v1 = null.r64
v2 = is_null v0
brz v2, block2(v0)
jump block2(v1)
block2(v3: r64):
return v3
}

0 comments on commit 506d35e

Please sign in to comment.