From 2eac09facaeafb4527fc24ab01c3b1b479c2e1ad Mon Sep 17 00:00:00 2001 From: Peter Smith Date: Tue, 2 Apr 2024 17:44:04 +0100 Subject: [PATCH] [aaelf64] Fix PAuthABI relocation details. There is a typo in the spelling of R__ABS64. Similarly there should only be one entry in the dynamic relocation table, with R__ABS64 retaining the static relocation code but using the dynamic relocation semantics. Added a clarifying line to state that the R__ABS64 is both a static and dynamic relocation. --- aaelf64/aaelf64.rst | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/aaelf64/aaelf64.rst b/aaelf64/aaelf64.rst index c0c0978..134bdc3 100644 --- a/aaelf64/aaelf64.rst +++ b/aaelf64/aaelf64.rst @@ -1702,7 +1702,7 @@ For details on the relocations and operations see `PAUTHABIELF64`_. +------------+------------+---------------------------------+----------------------------------+-----------------------------------------------------+ | ELF64 Code | ELF32 Code | Name | Operation | Comment | +============+============+=================================+==================================+=====================================================+ - | 580 | \- | R\_\_AUTH\_ABS64 | PAUTH(S+A) | See `PAUTHABIELF64`_ | +------------+------------+---------------------------------+----------------------------------+-----------------------------------------------------+ Dynamic relocations @@ -1721,7 +1721,7 @@ The dynamic relocations for those execution environments that support only a lim +------------+------------+--------------------------+---------------------------------+-------------------------------------------+ | \- | 1 | R\_\_ABS32 | S + A | See note below. | +------------+------------+--------------------------+---------------------------------+-------------------------------------------+ - | 580 | \- | R\_\_AUTH\_ABS64 | SIGN(S + A, SCHEMA(\*P)) | See note below. | +------------+------------+--------------------------+---------------------------------+-------------------------------------------+ | 1024 | 180 | R\_\_COPY | | See note below. | +------------+------------+--------------------------+---------------------------------+-------------------------------------------+ @@ -1745,8 +1745,6 @@ The dynamic relocations for those execution environments that support only a lim +------------+------------+--------------------------+---------------------------------+-------------------------------------------+ | 1032 | 188 | R\_\_IRELATIVE | Indirect(Delta(S) + A) | See note below. | +------------+------------+--------------------------+---------------------------------+-------------------------------------------+ - | 1040 | \- | R\_\_AUTH\_ABS64 | SIGN(S + A, SCHEMA(\*P)) | See note below. | - +------------+------------+--------------------------+---------------------------------+-------------------------------------------+ | 1041 | \- | R\_\_AUTH\_RELATIVE | SIGN(DELTA(S) + A, SCHEMA(\*P)) | See note below. | +------------+------------+--------------------------+---------------------------------+-------------------------------------------+ @@ -1780,7 +1778,7 @@ Relocations ``R_AARCH64_TLS_DTPREL``, ``R_AARCH64_TLS_DTPMOD`` and ``R_AARCH64_T It is implementation defined whether ``R__TLS_IMPDEF1`` implements ``R__TLS_DTPREL`` and ``R__TLS_IMPDEF2`` implements ``R__TLS_DTPMOD`` or whether ``R__TLS_IMPDEF1`` implements ``R__TLS_DTPMOD`` and ``R__TLS_IMPDEF2`` implements ``R__TLS_DTPREL``; a platform must document its choice\ [#aaelf64-f1]_. -``R\_\_AUTH\_ABS64`` and ``R\_\_AUTH\_RELATIVE`` are part of the PAuth ABI Extension. For details on the relocations and operations see `PAUTHABIELF64`_. +``R\_\_AUTH\_ABS64`` and ``R\_\_AUTH\_RELATIVE`` are part of the PAuth ABI Extension. For details on the relocations and operations see `PAUTHABIELF64`_. Note that ``R\_\_AUTH\_ABS64`` is both a static and a dynamic relocation. Private and platform-specific relocations ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^