[all-commits] [llvm/llvm-project] 34d4cd: [Clang][AArch64] Include SME attributes in the nam...

Kerry McLaughlin via All-commits all-commits at lists.llvm.org
Mon Dec 2 02:11:22 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 34d4cd8208b9378d5ec00f256d8ea898162430be
      https://github.com/llvm/llvm-project/commit/34d4cd8208b9378d5ec00f256d8ea898162430be
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2024-12-02 (Mon, 02 Dec 2024)

  Changed paths:
    M clang/lib/AST/ItaniumMangle.cpp
    A clang/test/CodeGenCXX/aarch64-mangle-sme-atts.cpp

  Log Message:
  -----------
  [Clang][AArch64] Include SME attributes in the name mangling of function types (#114209)

Similar to arm_sve_vector_bits, the mangling of function types is
implemented as a pseudo template if there are any SME attributes
present, i.e.

  `__SME_ATTRS<normal_function_type, sme_state>`

For example, the following function:

  `void f(svint8_t (*fn)() __arm_streaming) { fn(); }`

would be mangled as:

  `_Z1fP11__SME_ATTRSIFu10__SVInt8_tELj1EE`

See https://github.com/ARM-software/acle/pull/358



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list