[all-commits] [llvm/llvm-project] 3a6bb3: [SelectionDAG] Remove ISD::LIFETIME_START/LIFETIME...
topperc via All-commits
all-commits at lists.llvm.org
Sun Feb 23 22:50:56 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 3a6bb32bd24b6f1b01ae2378ea7fa726f453fb1c
https://github.com/llvm/llvm-project/commit/3a6bb32bd24b6f1b01ae2378ea7fa726f453fb1c
Author: Craig Topper <craig.topper at gmail.com>
Date: 2020-02-23 (Sun, 23 Feb 2020)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Log Message:
-----------
[SelectionDAG] Remove ISD::LIFETIME_START/LIFETIME_END from assert in getMemIntrinsicNode.
These appear to have their own SDNode type and shouldn't use
MemIntrinsicSDNode.
Commit: f1b8ec3398fc0022b825b709eb6e792d35276bc1
https://github.com/llvm/llvm-project/commit/f1b8ec3398fc0022b825b709eb6e792d35276bc1
Author: Craig Topper <craig.topper at gmail.com>
Date: 2020-02-23 (Sun, 23 Feb 2020)
Changed paths:
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
M llvm/lib/Target/X86/X86InstrSSE.td
Log Message:
-----------
[X86] Use custom isel for gather/scatter instructions.
The type profile we use for the isel patterns lied about how
many operands the gather/scatter node has to skip the index
and scale operands. This allowed us to expand the baseptr
operand into base, displacement, and segment and then merge
the index and scale with them in the final instruction during
isel. This is kind of a hack that relies on isel not checking the
number of operands at all.
This commit switches to custom isel where we can manage this
directly without relying on holes in the isel checking.
Compare: https://github.com/llvm/llvm-project/compare/4d812acba61e...f1b8ec3398fc
More information about the All-commits
mailing list