[PATCH] D143177: Cleanup of Complex Deinterleaving pass (NFCI)
Nicholas Guy via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 14 05:11:39 PDT 2023
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG49384f14113b: Cleanup of Complex Deinterleaving pass (NFCI) (authored by NickGuy).
Changed prior to commit:
https://reviews.llvm.org/D143177?vs=503369&id=505041#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D143177/new/
https://reviews.llvm.org/D143177
Files:
llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
Index: llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
===================================================================
--- llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
+++ llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
@@ -271,8 +271,6 @@
bool identifyNodes(Instruction *RootI);
/// Perform the actual replacement of the underlying instruction graph.
- /// Returns false if the deinterleaving operation should be cancelled for the
- /// current graph.
void replaceNodes();
};
@@ -598,8 +596,16 @@
Rotation == ComplexDeinterleavingRotation::Rotation_270)
? CommonOperand
: nullptr);
- NodePtr CNode = identifyNodeWithImplicitAdd(
- cast<Instruction>(CR), cast<Instruction>(CI), PartialMatch);
+
+ auto *CRInst = dyn_cast<Instruction>(CR);
+ auto *CIInst = dyn_cast<Instruction>(CI);
+
+ if (!CRInst || !CIInst) {
+ LLVM_DEBUG(dbgs() << " - Common operands are not instructions.\n");
+ return nullptr;
+ }
+
+ NodePtr CNode = identifyNodeWithImplicitAdd(CRInst, CIInst, PartialMatch);
if (!CNode) {
LLVM_DEBUG(dbgs() << " - No cnode identified\n");
return nullptr;
@@ -788,8 +794,10 @@
PlaceholderNode->ReplacementNode = RealShuffle->getOperand(0);
return submitCompositeNode(PlaceholderNode);
}
- if (RealShuffle || ImagShuffle)
+ if (RealShuffle || ImagShuffle) {
+ LLVM_DEBUG(dbgs() << " - There's a shuffle where there shouldn't be.\n");
return nullptr;
+ }
auto *VTy = cast<FixedVectorType>(Real->getType());
auto *NewVTy =
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D143177.505041.patch
Type: text/x-patch
Size: 1542 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230314/b0a0a043/attachment.bin>
More information about the llvm-commits
mailing list