[all-commits] [llvm/llvm-project] c218fd: [libunwind][AArch64] Add support for DWARF express...

Dani via All-commits all-commits at lists.llvm.org
Wed May 18 09:02:24 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c218fd3d7d3764eb123c8429bbcd33bacfe2e633
      https://github.com/llvm/llvm-project/commit/c218fd3d7d3764eb123c8429bbcd33bacfe2e633
  Author: Daniel Kiss <daniel.kiss at arm.com>
  Date:   2022-05-18 (Wed, 18 May 2022)

  Changed paths:
    A libcxxabi/test/native/AArch64/ra_sign_state.pass.cpp
    M libunwind/src/DwarfInstructions.hpp

  Log Message:
  -----------
  [libunwind][AArch64] Add support for DWARF expression for RA_SIGN_STATE.

Program may set the RA_SIGN_STATE pseudo register by expressions.
Libunwind expected only the DW_CFA_AARCH64_negate_ra_state could change the value
of the register which leads to runtime errors on PAC enabled systems.
In the recent version of the aadwarf64[1] a limitation is added[2] to forbid the mixing the
DW_CFA_AARCH64_negate_ra_state with other DWARF Register Rule Instructions.

[1] https://github.com/ARM-software/abi-aa/releases/tag/2022Q1
[2] https://github.com/ARM-software/abi-aa/pull/129

Reviewed By: #libunwind, MaskRay

Differential Revision: https://reviews.llvm.org/D123692
Reland: test moved because it depends on exceptions.




More information about the All-commits mailing list