This also requires adjustment to code in AArch64ISelLowering so that vector_extract is distributed over strict_fadd.
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
The performExtractVectorEltCombine transformation doesn't work correctly when D115352 is applied (it causes there to be an extra add instruction) which I need to look into.
Comment Actions
Morph the strict_fadd instead of creating a new one, so that we don't end up with two strict_fadd nodes (as both would be kept when exceptions are enabled).
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp | ||
---|---|---|
14372 | I don't think you can use MorphNodeTo here. It has a comment about it in the description of the function. Can it just use one of the ReplaceAllUsesWith/ReplaceAllUsesOfValueWith/CombineTo/etc methods? As far as I understand it needs to replace the old Chain (from N0) with the new one. |
I don't think you can use MorphNodeTo here. It has a comment about it in the description of the function.
Can it just use one of the ReplaceAllUsesWith/ReplaceAllUsesOfValueWith/CombineTo/etc methods? As far as I understand it needs to replace the old Chain (from N0) with the new one.