Added more constraint when checking the number of vector elements during DAG combine for across vector reductions.
This fix PR25056.
Paths
| Differential D13447
[AArch64]Fix bug in DAG combine for ADDV AbandonedPublic Authored by junbuml on Oct 5 2015, 1:23 PM.
Details
Summary Added more constraint when checking the number of vector elements during DAG combine for across vector reductions. This fix PR25056.
Diff Detail Event Timelinejunbuml updated this object. jmolloy edited edge metadata. Comment ActionsHi Jun, I don't think this is the right fix. We generate oversized vectors in the loop vectorizer, and we expect them to work well. The right way to solve this PR is by implementing vector splitting for the [US]ADDV and [SU][MIN,MAX]V nodes. Cheers, James This revision now requires changes to proceed.Oct 5 2015, 1:29 PM Comment Actions Do you mean combining for oversized input vector for ADDV could be combined, but it should be legalized after then by splitting the vector ? Comment Actions Yes. This occurs for all other ISD nodes, see what happens for example if
Comment Actions Jun, Chad
Revision Contents
Diff 36543 lib/Target/AArch64/AArch64ISelLowering.cpp
test/CodeGen/AArch64/aarch64-addv.ll
test/CodeGen/AArch64/aarch64-minmaxv.ll
|