Add basic ComputeNumSignBits support for TRUNCATE ops for cases where the source's number of sign bits overlaps with the truncated size.
Improves X86 SIGN_EXTEND_IN_REG vector cases which were needlessly sign extending boolean vector results.
Paths
| Differential D26851
[SelectionDAG] ComputeNumSignBits of TRUNCATE operations ClosedPublic Authored by RKSimon on Nov 18 2016, 6:15 AM.
Details Summary Add basic ComputeNumSignBits support for TRUNCATE ops for cases where the source's number of sign bits overlaps with the truncated size. Improves X86 SIGN_EXTEND_IN_REG vector cases which were needlessly sign extending boolean vector results.
Diff Detail
Event TimelineRKSimon updated this object.
This revision is now accepted and ready to land.Nov 21 2016, 2:06 PM Closed by commit rL287635: [SelectionDAG] ComputeNumSignBits of TRUNCATE operations (authored by RKSimon). · Explain WhyNov 22 2016, 3:39 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 78844 llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
llvm/trunk/test/CodeGen/X86/avx512-mask-op.ll
llvm/trunk/test/CodeGen/X86/psubus.ll
|