parent
6752366ed7
commit
6662fd0f15
|
@ -199,7 +199,7 @@ namespace {
|
||||||
}
|
}
|
||||||
|
|
||||||
XorOpnd::XorOpnd(Value *V) {
|
XorOpnd::XorOpnd(Value *V) {
|
||||||
assert(!isa<Constant>(V) && "No constant");
|
assert(!isa<ConstantInt>(V) && "No ConstantInt");
|
||||||
OrigVal = V;
|
OrigVal = V;
|
||||||
Instruction *I = dyn_cast<Instruction>(V);
|
Instruction *I = dyn_cast<Instruction>(V);
|
||||||
SymbolicRank = 0;
|
SymbolicRank = 0;
|
||||||
|
|
|
@ -149,3 +149,18 @@ define i32 @xor_ra_size2(i32 %x) {
|
||||||
;CHECK: %or1 = or i32 %x, 456
|
;CHECK: %or1 = or i32 %x, 456
|
||||||
;CHECK: %xor = xor i32 %or, %or1
|
;CHECK: %xor = xor i32 %or, %or1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
; ==========================================================================
|
||||||
|
;
|
||||||
|
; Xor reassociation bugs
|
||||||
|
;
|
||||||
|
; ==========================================================================
|
||||||
|
|
||||||
|
@xor_bug1_data = external global <{}>, align 4
|
||||||
|
define void @xor_bug1() {
|
||||||
|
%1 = ptrtoint i32* undef to i64
|
||||||
|
%2 = xor i64 %1, ptrtoint (<{}>* @xor_bug1_data to i64)
|
||||||
|
%3 = and i64 undef, %2
|
||||||
|
ret void
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue