Open langston-barrett opened 1 week ago
Is it possible to reproduce this error using crux-llvm
?
Hmm, evidently not. I tried adding an entrypoint foo
as follows:
#[inline(never)]
#[no_mangle]
pub fn foo() {
test(&mut 5, 7);
}
; Function Attrs: noinline nonlazybind uwtable
define dso_local void @foo() unnamed_addr #0 {
start:
%_4 = alloca [8 x i8], align 8
store i64 5, ptr %_4, align 8
call void @test(ptr %_4, i64 7)
ret void
}
but got
cabal run exe:crux-llvm -- --no-compile prog.bc --entry-point=foo
[Crux] Using pointer width: 64 for file prog.bc
[Crux] Simulating function foo
[Crux] All goals discharged through internal simplification.
[Crux] Overall status: Valid.
Crucible-LLVM runs into a translation error on some
rustc
-produced LLVM bitcode:Here's the bitcode for
@test
:And the bitcode itself: double-free.zip