diff --git a/checkllvm.sh b/checkllvm.sh index 2498ffa..ed0b5ab 100755 --- a/checkllvm.sh +++ b/checkllvm.sh @@ -1,9 +1,11 @@ #!/usr/bin/env bash -rustc code.rs --crate-name ll -Zmir-enable-passes=-ConstProp --emit llvm-ir -Cno-prepopulate-passes --crate-type=lib +set -eu -clang ll.ll helper.c -O1 -o good -clang ll.ll helper.c -O2 -o bad +# rustc code.rs --crate-name ll -Zmir-enable-passes=-ConstProp --emit llvm-ir -Cno-prepopulate-passes --crate-type=lib + +clang $1 helper.c -O1 -o good +clang $1 helper.c -O2 -o bad bad=$(./bad) good=$(./good) @@ -12,4 +14,5 @@ if [ "$good" != "$bad" ]; then echo "MISCOMPILATION" else echo "no repro" + exit 1 fi \ No newline at end of file