summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-readobj/llvm-readobj.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2017-05-10 13:56:52 +0000
committerSanjay Patel <spatel@rotateright.com>2017-05-10 13:56:52 +0000
commit2e069f250a156cfaed3b334ade37a39814bd6bef (patch)
treeb5e0bb8bfd6a8d0265b5d1a33eee74e2c035a563 /llvm/tools/llvm-readobj/llvm-readobj.cpp
parentb7fb267ed3033fff977b40553714defa1a0b57d1 (diff)
downloadbcm5719-llvm-2e069f250a156cfaed3b334ade37a39814bd6bef.tar.gz
bcm5719-llvm-2e069f250a156cfaed3b334ade37a39814bd6bef.zip
[InstCombine] add (ashr (shl i32 X, 31), 31), 1 --> and (not X), 1
This is another step towards favoring 'not' ops over random 'xor' in IR: https://bugs.llvm.org/show_bug.cgi?id=32706 This transformation may have occurred in longer IR sequences using computeKnownBits, but that could be much more expensive to calculate. As the scalar result shows, we do not currently favor 'not' in all cases. The 'not' created by the transform is transformed again (unnecessarily). Vectors don't have this problem because vectors are (wrongly) excluded from several other combines. llvm-svn: 302659
Diffstat (limited to 'llvm/tools/llvm-readobj/llvm-readobj.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud