aboutsummaryrefslogtreecommitdiffstats
path: root/test/Transforms/Reassociate/mul-neg-add.ll
blob: 4219044dc7ac73148fc52cd2e63fecf49a27e8b4 (plain)
1
2
3
4
5
6
7
8
9
; RUN: llvm-upgrade < %s | llvm-as | opt -reassociate -instcombine | llvm-dis |\
; RUN:   not grep {sub i32 0}

int %test(int %X, int %Y, int %Z) {
	%A = sub int 0, %X
	%B = mul int %A, %Y
	%C = add int %B, %Z   ; (-X)*Y + Z -> Z-X*Y
	ret int %C
}