| ; With sub reassociation, constant folding can eliminate the two 12 constants. | |
| ; | |
| ; RUN: llvm-upgrade < %s | llvm-as | opt -reassociate -constprop -dce | llvm-dis | not grep 12 | |
| int "test"(int %A, int %B, int %C, int %D) { | |
| %M = add int %A, 12 | |
| %N = add int %M, %B | |
| %O = add int %N, %C | |
| %P = sub int %D, %O | |
| %Q = add int %P, 12 | |
| ret int %Q | |
| } |