diff options
author | David Majnemer <david.majnemer@gmail.com> | 2015-03-18 00:03:36 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2015-03-18 00:03:36 +0000 |
commit | e48237df95b49a36b8ffceb78c8a58f4be1b4344 (patch) | |
tree | cc8a126afad37cb11835340949f3eba1931bb219 /llvm/unittests/IR/ConstantRangeTest.cpp | |
parent | 8fa8c384d22c606980161631e42a8290597c11ea (diff) | |
download | bcm5719-llvm-e48237df95b49a36b8ffceb78c8a58f4be1b4344.tar.gz bcm5719-llvm-e48237df95b49a36b8ffceb78c8a58f4be1b4344.zip |
DAGCombiner: fold (xor (shl 1, x), -1) -> (rotl ~1, x)
Targets which provide a rotate make it possible to replace a sequence of
(XOR (SHL 1, x), -1) with (ROTL ~1, x). This saves an instruction on
architectures like X86 and POWER(64).
Differential Revision: http://reviews.llvm.org/D8350
llvm-svn: 232572
Diffstat (limited to 'llvm/unittests/IR/ConstantRangeTest.cpp')
0 files changed, 0 insertions, 0 deletions