[all-commits] [llvm/llvm-project] e5edc1: [AArch64][SVE] Ensure PTEST operands have type nxv...

RosieSumpter via All-commits all-commits at lists.llvm.org
Tue Jul 12 01:34:34 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e5edc1b5eecfb8abc4e6d4d385da7ed0b456579c
      https://github.com/llvm/llvm-project/commit/e5edc1b5eecfb8abc4e6d4d385da7ed0b456579c
  Author: Rosie Sumpter <rosie.sumpter at arm.com>
  Date:   2022-07-12 (Tue, 12 Jul 2022)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/test/CodeGen/AArch64/sve-setcc.ll

  Log Message:
  -----------
  [AArch64][SVE] Ensure PTEST operands have type nxv16i1

Currently any legal predicate types will be pattern-matched when
creating a PTEST instruction. This could be a problem in future since
PTEST always uses the .B specifier for the operand, but it is not
always guaranteed that the extra lanes of unpacked types (e.g. nxv4i1)
are zero. This patch ensures the operands of PTEST are type nxv16i1,
where the undef lanes are set to zero.

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




More information about the All-commits mailing list