diff options
author | Florian Hahn <flo@fhahn.com> | 2022-01-06 11:52:19 +0000 |
---|---|---|
committer | Florian Hahn <flo@fhahn.com> | 2022-01-06 11:52:19 +0000 |
commit | 86d113a8b8aec1092d51115a8ff3e7e6682d1931 (patch) | |
tree | 159e5c50552598b841eb58eebfcd41c8a79b4707 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | d4d9de362b6ac2aac67e557f819c57dcfe79e2fe (diff) | |
download | llvm-86d113a8b8aec1092d51115a8ff3e7e6682d1931.zip llvm-86d113a8b8aec1092d51115a8ff3e7e6682d1931.tar.gz llvm-86d113a8b8aec1092d51115a8ff3e7e6682d1931.tar.bz2 |
[SCEVExpand] Do not create redundant 'or false' for pred expansion.
This patch updates SCEVExpander::expandUnionPredicate to not create
redundant 'or false, x' instructions. While those are trivially
foldable, they can be easily avoided and hinder code that checks the
size/cost of the generated checks before further folds.
I am planning on look into a few other similar improvements to code
generated by SCEVExpander.
I remember a while ago @lebedev.ri working on doing some trivial folds
like that in IRBuilder itself, but there where concerns that such
changes may subtly break existing code.
Reviewed By: reames, lebedev.ri
Differential Revision: https://reviews.llvm.org/D116696
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions