[all-commits] [llvm/llvm-project] 875c76: [RISCV] Add support for matching .vx and .vi forms...

Craig Topper via All-commits all-commits at lists.llvm.org
Fri Feb 12 09:18:45 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 875c76de2b6ad67b10c027ed74422642cf4d1aed
      https://github.com/llvm/llvm-project/commit/875c76de2b6ad67b10c027ed74422642cf4d1aed
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2021-02-12 (Fri, 12 Feb 2021)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll

  Log Message:
  -----------
  [RISCV] Add support for matching .vx and .vi forms of binary instructions for fixed vectors.

Unlike scalable vectors, I'm only using a ComplexPattern for
the immediate itself. The vmv_v_x is matched explicitly. We igore
the VL argument when matching a binary operator, but we do check
it when matching splat directly.

I left out tests for vXi64 as they fail on rv32 right now.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D96365




More information about the All-commits mailing list