[all-commits] [llvm/llvm-project] 41d526: [SveEmitter] Add support for _n form builtins

sdesmalen-arm via All-commits all-commits at lists.llvm.org
Wed Apr 22 06:36:49 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 41d52662d54b693c417cb0f6eb8a768672f58a8e
      https://github.com/llvm/llvm-project/commit/41d52662d54b693c417cb0f6eb8a768672f58a8e
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2020-04-22 (Wed, 22 Apr 2020)

  Changed paths:
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/arm_sve.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_abd.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_add.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_div.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_divr.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_max.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_min.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_mul.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_mulh.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_sub.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_subr.c
    M clang/utils/TableGen/SveEmitter.cpp

  Log Message:
  -----------
  [SveEmitter] Add support for _n form builtins

The ACLE has builtins that take a scalar value that is to be expanded
into a vector by the operation. While the ISA may have an instruction
that takes an immediate or a scalar to represent this, the LLVM IR
intrinsic may not, so Clang will have to splat the scalar value.

This patch also adds the _n forms for svabd, svadd, svdiv, svdivr,
svmax, svmin, svmul, svmulh, svub and svsubr.

Reviewers: SjoerdMeijer, efriedma, rovka

Reviewed By: SjoerdMeijer

Tags: #clang

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




More information about the All-commits mailing list