]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
gas: aarch64: suppport CFI directive .cfi_mte_tagged_frame
authorIndu Bhagat <indu.bhagat@oracle.com>
Sat, 12 Jul 2025 09:05:15 +0000 (11:05 +0200)
committerJose E. Marchesi <jose.marchesi@oracle.com>
Sat, 12 Jul 2025 09:33:25 +0000 (11:33 +0200)
commit4c043ef6f3dc21dde095da4598b5b684d8f53b2e
tree412029d41a120a0d94631666bd29f2098547efb3
parent83318af49390d6d5f4f5af186befec13420ecab2
gas: aarch64: suppport CFI directive .cfi_mte_tagged_frame

Process a new aarch64-specific CFI directive: .cfi_mte_tagged_frame
(LLVM uses this CFI directive already).  The CFI directive, when
present for a function, indicates that the stack frame for the
function may modify the MTE tags of the stack space it uses.  The
assembler emits char 'G' in the CIE augmentation string to indicate
the same.

ChangeLog:

        * gas/config/tc-aarch64.c (s_aarch64_mte_tagged_frame): New
definition.
        * gas/config/tc-aarch64.h (tc_fde_entry_extras): Add
memtag_frame_p.
        (tc_cie_entry_extras): Likewise.
        (tc_fde_entry_init_extra): Likewise.
        (tc_cie_fde_equivalent_extra): Likewise.
        (tc_cie_entry_init_extra): Likewise.
        * gas/doc/c-aarch64.texi: Add documentation for
.cfi_mte_tagged_frame directive.
        * gas/testsuite/gas/aarch64/mte_tagged_stack.d: New test.
        * gas/testsuite/gas/aarch64/mte_tagged_stack.s: New test.
gas/config/tc-aarch64.c
gas/config/tc-aarch64.h
gas/doc/c-aarch64.texi
gas/dw2gencfi.c
gas/testsuite/gas/aarch64/mte_tagged_stack.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/mte_tagged_stack.s [new file with mode: 0644]