[PATCH] D72524: [X86] Try to avoid casts around logical vector ops recursively.
Simon Pilgrim via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jan 10 11:58:07 PST 2020
RKSimon added a comment.
Not sure if its reusable but we already have signExtendBitcastSrcVector which we use for the (i16 bitcast (v16i1 x)) combine
================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:39815
+ if (!--Depth)
+ return SDValue();
+
----------------
Very minor, but in most depth search cases we start at Depth = 0 and bail once it reaches at maximum.
================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:39881
// Generate the wide operation.
- SDValue Op = DAG.getNode(Narrow->getOpcode(), DL, VT, N0, N1);
- unsigned Opcode = N->getOpcode();
- switch (Opcode) {
+ SDValue Op = PromoteMaskArithmetic(Narrow.getNode(), VT, DAG, 8);
+ if (!Op)
----------------
Does max depth have to be 8 or would we be better using SelectionDAG::MaxRecursionDepth = 6?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D72524/new/
https://reviews.llvm.org/D72524
More information about the llvm-commits
mailing list