This patch refactors the existing TargetLowering::BuildSDIV base implementation to support non-uniform constant vector denominators.
This is the last patch necessary to close PR36545
Paths
| Differential D50765
[TargetLowering] Add support for non-uniform vectors to BuildSDIV ClosedPublic Authored by RKSimon on Aug 15 2018, 4:40 AM.
Details Summary This patch refactors the existing TargetLowering::BuildSDIV base implementation to support non-uniform constant vector denominators. This is the last patch necessary to close PR36545
Diff Detail
Event TimelineComment Actions Would it be possible to split this into a NFC refactoring and leave here just the change to actually enable the vector support? Comment Actions Thanks, looks almost NFC to me.
This revision is now accepted and ready to land.Aug 16 2018, 10:17 AM
Closed by commit rL339908: [TargetLowering] Add support for non-uniform vectors to BuildSDIV (authored by RKSimon). · Explain WhyAug 16 2018, 10:45 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 161051 lib/CodeGen/SelectionDAG/TargetLowering.cpp
test/CodeGen/X86/combine-sdiv.ll
|
We will end up with improperly-sized/indexed arrays.
I understand that / 0 is ub, but i wonder if we should be more proactive in failing?
Perhaps we should push 0, 0, 0 to the vectors. Or maybe the current way is sufficient.