Test source: git
Source: /home/nlopes/llvm/llvm/test/Transforms/InstCombine/compare-alloca.ll ---------------------------------------- define i1 @alloca_argument_compare(* %arg) { %0: %alloc = alloca i64 8, align 8 %cmp = icmp eq * %arg, %alloc ret i1 %cmp } => define i1 @alloca_argument_compare(* %arg) { %0: ret i1 0 } Transformation doesn't verify! ERROR: Value mismatch Example: * %arg = pointer(non-local, block_id=1, offset=6) Source: * %alloc = pointer(local, block_id=2, offset=0) i1 %cmp = any SOURCE MEMORY STATE =================== NON-LOCAL BLOCKS: Block 0 > size: 0 align: 1 alloc type: 0 address: 0 Block 1 > size: 4 align: 2 alloc type: 0 address: 10 LOCAL BLOCKS: Block 2 > size: 8 align: 8 alloc type: 1 Target: Source value: any Target value: #x0 (0) ------------------- SMT STATS ------------------- Num queries: 4 Num invalid: 0 Num skips: 0 Num trivial: 9 (69.2%) Num timeout: 0 (0.0%) Num errors: 0 (0.0%) Num SAT: 2 (50.0%) Num UNSAT: 2 (50.0%) Alive2: Transform doesn't verify; aborting!
+ : 'RUN: at line 1' + /home/nlopes/alive2/build/opt-alive.sh -instcombine -S /home/nlopes/llvm/llvm/test/Transforms/InstCombine/compare-alloca.ll + /home/nlopes/llvm/build/bin/FileCheck /home/nlopes/llvm/llvm/test/Transforms/InstCombine/compare-alloca.ll FileCheck error: '<stdin>' is empty. FileCheck command line: /home/nlopes/llvm/build/bin/FileCheck /home/nlopes/llvm/llvm/test/Transforms/InstCombine/compare-alloca.ll