[all-commits] [llvm/llvm-project] 5087ac: [Clang][SVE] Parse builtin type string for scalabl...

sdesmalen-arm via All-commits all-commits at lists.llvm.org
Sun Mar 15 07:51:10 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 5087ace65197471c07b78d16e3d599187c442cbf
      https://github.com/llvm/llvm-project/commit/5087ace65197471c07b78d16e3d599187c442cbf
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2020-03-15 (Sun, 15 Mar 2020)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/Basic/AArch64SVEACLETypes.def
    M clang/include/clang/Basic/Builtins.def
    M clang/include/clang/Basic/BuiltinsAArch64.def
    A clang/include/clang/Basic/arm_sve.td
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/module.modulemap
    A clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1.c
    M clang/utils/TableGen/CMakeLists.txt
    A clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/TableGen/TableGen.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [Clang][SVE] Parse builtin type string for scalable vectors

This patch adds 'q' to mean 'scalable vector' in the builtin
type string, and for SVE will return the matching builtin
type as defined in the C/C++ language extensions for SVE.

This patch also adds some scaffolding to generate the arm_sve.h
header file, and some builtin definitions (+CodeGen) to be able
to implement some simple masked load intrinsics that use the
ACLE types, such as:

 svint8_t test_svld1_s8(svbool_t pg, const int8_t *base) {
   return svld1_s8(pg, base);
 }

Reviewers: efriedma, rjmccall, rovka, rsandifo-arm, rengolin

Reviewed By: efriedma

Tags: #clang

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




More information about the All-commits mailing list