diff options
author | Bill Wendling <isanbard@gmail.com> | 2009-03-04 00:18:06 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2009-03-04 00:18:06 +0000 |
commit | 36ae6c182759871a4af71d9af85f970b29a669f1 (patch) | |
tree | 76f7ebdf6942034a2aa5a3001aa850f90871970f /lib/Transforms/Utils/InlineFunction.cpp | |
parent | 127a7936dea7b86e5cad337ad4b537bc115c2588 (diff) |
The DAG combiner was performing a BT combine. The BT combine had a value of -1,
so it changed it into a 31 via the TLO.ShrinkDemandedConstant() call. Then it
would go through the DAG combiner again. This time it had a value of 31, which
was turned into a -1 by TLI.SimplifyDemandedBits(). This would ping pong
forever.
Teach the TLO.ShrinkDemandedConstant() call not to lower a value if the demanded
value is an XOR of all ones.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65985 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Utils/InlineFunction.cpp')
0 files changed, 0 insertions, 0 deletions