[all-commits] [llvm/llvm-project] af42d8: [AArch64] Unit test for zext lowering for differen...

Nilanjana Basu via All-commits all-commits at lists.llvm.org
Fri Dec 9 00:51:18 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: af42d80a63e38a941bc0d9df8e4d6ae287f75566
      https://github.com/llvm/llvm-project/commit/af42d80a63e38a941bc0d9df8e4d6ae287f75566
  Author: Nilanjana Basu <n_basu at apple.com>
  Date:   2022-12-09 (Fri, 09 Dec 2022)

  Changed paths:
    M llvm/test/CodeGen/AArch64/zext-to-tbl.ll

  Log Message:
  -----------
  [AArch64] Unit test for zext lowering for different types of vectors

These are unit tests for code generated for zext lowering of vectors.
There are tests for different types of vectors, as well as cases where multiple 'zext' instructions of same type occur back-to-back.
Testing of Global-ISel path is added.
This will help in comparing changes in zext lowering in https://reviews.llvm.org/D136722.

Reviewed By: fhahn

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


  Commit: 955c0f13cd70d546c856bf185a60b88fed4ad9b0
      https://github.com/llvm/llvm-project/commit/955c0f13cd70d546c856bf185a60b88fed4ad9b0
  Author: Nilanjana Basu <n_basu at apple.com>
  Date:   2022-12-09 (Fri, 09 Dec 2022)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/zext-to-tbl.ll

  Log Message:
  -----------
  [AArch64] Extending lowering of 'zext <Y x i8> %x to <Y x i8X>' to use tbl instructions

Adding support for ZExt lowering for destination types beyond the existing support for (8|16) x i32

Patch for lowering zext instructions to 'tbl' for (8|16)xi8 -> (8|16)xi32 conversions in https://reviews.llvm.org/D120571 is extended to support zext to 'tbl' lowering for Y x i8 to Y x i8X where X > 2 and X < 8, that is, any number of vector elements & any destination element type whose size is a multiple of 8 and lies between 16 & 64 is allowed for this transformation.

Related microbenchmarks are in https://reviews.llvm.org/D136274 & https://reviews.llvm.org/D138059

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


Compare: https://github.com/llvm/llvm-project/compare/ee7a62a30646...955c0f13cd70


More information about the All-commits mailing list