[all-commits] [llvm/llvm-project] e8973d: [RISCV] Add the passthru operand for some RVV noma...

Zakk Chen via All-commits all-commits at lists.llvm.org
Tue Feb 15 22:59:59 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e8973dd389e7af47fe1c6859a2dcbcc2272afa43
      https://github.com/llvm/llvm-project/commit/e8973dd389e7af47fe1c6859a2dcbcc2272afa43
  Author: Zakk Chen <zakk.chen at sifive.com>
  Date:   2022-02-15 (Tue, 15 Feb 2022)

  Changed paths:
    M clang/include/clang/Basic/riscv_vector.td
    M clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vfclass.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vfcvt.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vfncvt.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vfrec7.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vfrsqrt7.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vfsqrt.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vfwcvt.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vsext.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vzext.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vfclass.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vfcvt.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vfncvt.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vfrec7.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vfrsqrt7.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vfsqrt.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vfwcvt.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vid.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/viota.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vsext.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics/vzext.c
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/test/CodeGen/RISCV/rvv/unmasked-tu.ll
    M llvm/test/CodeGen/RISCV/rvv/vfclass.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcvt-f-x.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcvt-f-xu.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcvt-rtz-x-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcvt-rtz-xu-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcvt-x-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcvt-xu-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfncvt-f-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfncvt-f-x.ll
    M llvm/test/CodeGen/RISCV/rvv/vfncvt-f-xu.ll
    M llvm/test/CodeGen/RISCV/rvv/vfncvt-rod-f-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfncvt-rtz-x-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfncvt-rtz-xu-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfncvt-x-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfncvt-xu-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfrec7.ll
    M llvm/test/CodeGen/RISCV/rvv/vfrsqrt7.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsqrt.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwcvt-f-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwcvt-f-x.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwcvt-f-xu.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwcvt-rtz-x-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwcvt-rtz-xu-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwcvt-x-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwcvt-xu-f.ll
    M llvm/test/CodeGen/RISCV/rvv/vid.ll
    M llvm/test/CodeGen/RISCV/rvv/viota.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.mir
    M llvm/test/CodeGen/RISCV/rvv/vsext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvv/vsext-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/vzext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvv/vzext-rv64.ll

  Log Message:
  -----------
  [RISCV] Add the passthru operand for some RVV nomask unary and nullary intrinsics.

The goal is support tail and mask policy in RVV builtins.
We focus on IR part first.
If the passthru operand is undef, we use tail agnostic, otherwise
use tail undisturbed.

My plan is to handle more complex operations in follow-up patches.

Reviewers: frasercrmck

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




More information about the All-commits mailing list