On Wed, 22 Jul 2026 01:35:56 GMT, Yasumasa Suenaga <[email protected]> wrote:

> In PR #31669 for [JDK-8386593](https://bugs.openjdk.org/browse/JDK-8386593), 
> we discoverd `DW_CFA_offset_extended` and `DW_CFA_restore_extended` are not 
> supported in SA.
> 
> GCC on Fedora 44 and Ubuntu 26.04 (at least) generates DWARF instructions in 
> below:
> 
> 
>   DW_CFA_offset_extended: r79 (v15) at cfa-16
>   DW_CFA_advance_loc: 204 to 00000000006646e4
>   DW_CFA_restore: r30 (x30)
>   DW_CFA_restore: r29 (x29)
>   DW_CFA_restore: r19 (x19)
>   DW_CFA_restore: r20 (x20)
>   DW_CFA_restore_extended: r79 (v15)
> 
> 
> We need to add `DW_CFA_offset_extended` and `DW_CFA_restore_extended`, and 
> vector registers for AArch64 which are defined in [DWARF for the ArmĀ® 64-bit 
> Architecture 
> (AArch64)](https://github.com/ARM-software/abi-aa/blob/2025Q4/aadwarf64/aadwarf64.rst#dwarf-register-names).
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

We can see V registers in DWARF instructions as following in the binary built 
by GCC on Ubuntu 26.04 and Fedora 44 at least. Thus I added them in this PR. 
Otherwise DWARF parser in SA does not work because they are unknown registers.


DW_CFA_restore_extended: r79 (v15)

-------------

PR Comment: https://git.openjdk.org/jdk/pull/31999#issuecomment-5110900068

Reply via email to