[PATCH] D75861: [SVE] Generate overloaded functions for ACLE intrinsics.
    Sander de Smalen via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Mar  9 10:14:11 PDT 2020
    
    
  
sdesmalen created this revision.
sdesmalen added reviewers: SjoerdMeijer, miyuki, efriedma, simon_tatham.
Herald added subscribers: cfe-commits, danielkiss, dmgreen, psnobl, rkruppe, kristof.beyls, tschuett.
Herald added a reviewer: rengolin.
Herald added a project: clang.
The SVE ACLE allows using a short-form for the intrinsics, e.g.
the following two declarations generate the same code:
    
  svuint32_t svld1(svbool_t, uint32_t const *);
  svuint32_t svld1_u32(svbool_t, uint32_t const *);
    
This patch also adds the attribute:
  __clang_arm_sve_alias
    
similar to what has been done for MVE in:
  https://reviews.llvm.org/D67159
    
so that any call to svld1(svbool_t, uint32_t const *) will
map to __builtin_sve_svld1_u32.
Repository:
  rG LLVM Github Monorepo
https://reviews.llvm.org/D75861
Files:
  clang/include/clang/Basic/Attr.td
  clang/include/clang/Basic/AttrDocs.td
  clang/include/clang/Basic/DiagnosticSemaKinds.td
  clang/lib/AST/ASTContext.cpp
  clang/lib/AST/Decl.cpp
  clang/lib/Sema/SemaDeclAttr.cpp
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1_shortform.c
  clang/test/Misc/pragma-attribute-supported-attributes-list.test
  clang/test/Sema/arm-sve-alias-attribute.c
  clang/utils/TableGen/SveEmitter.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D75861.249142.patch
Type: text/x-patch
Size: 15817 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200309/41af991b/attachment.bin>
    
    
More information about the llvm-commits
mailing list