[PATCH] D127762: [Clang][AArch64] Add ACLE attributes for SME.

Erich Keane via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Nov 15 06:29:20 PST 2022


erichkeane added inline comments.


================
Comment at: clang/include/clang/AST/Type.h:3926
+    SME_AttributeMask = 255 // We only support maximum 8 bits because of the
+                            // bitmask in FunctionTypeExtraBitfields
+  };
----------------



================
Comment at: clang/include/clang/AST/Type.h:3940
+    /// on declarations and function pointers.
+    unsigned AArch64SMEAttributes : 8;
+
----------------
We seem to be missing all of the modules-storage code for these.  Since this is modifying the AST, we need to increment the 'breaking change' AST code, plus add this to the ASTWriter/ASTReader interface.


================
Comment at: clang/include/clang/AST/Type.h:4008
     bool HasTrailingReturn : 1;
+    unsigned AArch64SMEAttributes : 8;
     Qualifiers TypeQuals;
----------------
sdesmalen wrote:
> aaron.ballman wrote:
> > So functions without prototypes cannot have any of these attributes?
> Yes, the ACLE explicitly states that [[https://github.com/ARM-software/acle/pull/188/commits/59751df91d9630400531a64108f179e3951c3b89#diff-516526d4a18101dc85300bc2033d0f86dc46c505b7510a7694baabea851aedfaR503|here]]:
> > The function type attributes cannot be used with K&R-style “unprototyped” C function types
Are they aware that includes; `void Baz();` ?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D127762/new/

https://reviews.llvm.org/D127762



More information about the cfe-commits mailing list