[AArch64] Convert mul x, -(pow2 +/- 1) to shift + add/sub.
authorChad Rosier <mcrosier@codeaurora.org>
Mon, 30 Jun 2014 14:51:14 +0000 (14:51 +0000)
committerChad Rosier <mcrosier@codeaurora.org>
Mon, 30 Jun 2014 14:51:14 +0000 (14:51 +0000)
commite6b8761ab992201020a61b755aa69b459c1eb6c9
tree5737559c5f3c11b43811e0a0de730c1f62f174c4
parent8f9590b6220a18d2d1056c2b4477be9555a89d12
[AArch64] Convert mul x, -(pow2 +/- 1) to shift + add/sub.

The combine for mul x, pow2 +/- 1 is unchanged. Test cases for
both combines as well as mul x, pow2 have been added as well.

llvm-svn: 212044
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/test/CodeGen/AArch64/mul_pow2.ll [new file with mode: 0644]