xref: /aosp_15_r20/external/llvm/test/CodeGen/PowerPC/2006-10-17-brcc-miscompile.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=ppc32 | grep xor
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Workertarget datalayout = "E-p:32:32"
4*9880d681SAndroid Build Coastguard Workertarget triple = "powerpc-apple-darwin8.7.0"
5*9880d681SAndroid Build Coastguard Worker
6*9880d681SAndroid Build Coastguard Workerdefine void @foo(i32 %X) {
7*9880d681SAndroid Build Coastguard Workerentry:
8*9880d681SAndroid Build Coastguard Worker        %tmp1 = and i32 %X, 3           ; <i32> [#uses=1]
9*9880d681SAndroid Build Coastguard Worker        %tmp2 = xor i32 %tmp1, 1                ; <i32> [#uses=1]
10*9880d681SAndroid Build Coastguard Worker        %tmp = icmp eq i32 %tmp2, 0             ; <i1> [#uses=1]
11*9880d681SAndroid Build Coastguard Worker        br i1 %tmp, label %UnifiedReturnBlock, label %cond_true
12*9880d681SAndroid Build Coastguard Workercond_true:              ; preds = %entry
13*9880d681SAndroid Build Coastguard Worker        tail call i32 (...) @bar( )            ; <i32>:0 [#uses=0]
14*9880d681SAndroid Build Coastguard Worker        ret void
15*9880d681SAndroid Build Coastguard WorkerUnifiedReturnBlock:             ; preds = %entry
16*9880d681SAndroid Build Coastguard Worker        ret void
17*9880d681SAndroid Build Coastguard Worker}
18*9880d681SAndroid Build Coastguard Worker
19*9880d681SAndroid Build Coastguard Workerdeclare i32 @bar(...)
20*9880d681SAndroid Build Coastguard Worker
21