[PATCH] D109035: [TableGen][SelectionDAG] Use ComplexPattern type for non-leaf nodes

Krzysztof Parzyszek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 1 11:04:24 PDT 2021


kparzysz added a comment.

This fails to build because `SVDup0` is a complex pattern defined with type `i64`, but it's used in places that require vectors:

  def SVEDup0 : ComplexPattern<i64, 0, "SelectDupZero", []>;
  def SVEDup0Undef : ComplexPattern<i64, 0, "SelectDupZeroOrUndef", []>;

and

  multiclass SVE_SETCC_Pat_With_Zero<CondCode cc, CondCode invcc, ValueType predvt,
                                     ValueType intvt, Instruction cmp> {
    def : Pat<(predvt (AArch64setcc_z predvt:$Op1, intvt:$Op2, (SVEDup0), cc)),
              (cmp $Op1, $Op2)>;
    def : Pat<(predvt (AArch64setcc_z predvt:$Op1, (SVEDup0), intvt:$Op2, invcc)),
              (cmp $Op1, $Op2)>;
  }

Looks good to me otherwise.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D109035/new/

https://reviews.llvm.org/D109035



More information about the llvm-commits mailing list