[all-commits] [llvm/llvm-project] 1d26bb: [RISCV] Return false from isShuffleMaskLegal excep...

Craig Topper via All-commits all-commits at lists.llvm.org
Thu Mar 11 20:05:12 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1d26bbcf9bb3b9bf1d1efea9d0aeac667995db3f
      https://github.com/llvm/llvm-project/commit/1d26bbcf9bb3b9bf1d1efea9d0aeac667995db3f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2021-03-11 (Thu, 11 Mar 2021)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap.ll

  Log Message:
  -----------
  [RISCV] Return false from isShuffleMaskLegal except for splats.

We don't support any other shuffles currently.

This changes the bswap/bitreverse tests that check for this in
their expansion code. Previously we expanded a byte swapping
shuffle through memory. Now we're scalarizing and doing bit
operations on scalars to swap bytes.

In the future we can probably use vrgather.vx to do a byte swap
shuffle.




More information about the All-commits mailing list