[all-commits] [llvm/llvm-project] e6b7d2: [PAC][lld][AArch64][ELF] Support signed GOT

Daniil Kovalev via All-commits all-commits at lists.llvm.org
Sun Dec 1 14:28:18 PST 2024


  Branch: refs/heads/users/kovdan01/pauth-signed-got-lld
  Home:   https://github.com/llvm/llvm-project
  Commit: e6b7d200edc79715224c8abb81309423f58fac8a
      https://github.com/llvm/llvm-project/commit/e6b7d200edc79715224c8abb81309423f58fac8a
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-12-02 (Mon, 02 Dec 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    A lld/test/ELF/aarch64-got-relocations-pauth.s

  Log Message:
  -----------
  [PAC][lld][AArch64][ELF] Support signed GOT

Support `R_AARCH64_AUTH_ADR_GOT_PAGE`, `R_AARCH64_AUTH_GOT_LO12_NC` and
`R_AARCH64_AUTH_GOT_ADD_LO12_NC` GOT-generating relocations. For preemptible
symbols, dynamic relocation `R_AARCH64_AUTH_GLOB_DAT` is emitted. Otherwise,
we unconditionally emit `R_AARCH64_AUTH_RELATIVE` dynamic relocation since
pointers in signed GOT needs to be signed during dynamic link time.


  Commit: 5e6c325285669b2d25da61b0983f5a550ac5d38d
      https://github.com/llvm/llvm-project/commit/5e6c325285669b2d25da61b0983f5a550ac5d38d
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-12-02 (Mon, 02 Dec 2024)

  Changed paths:
    M lld/ELF/Relocations.cpp
    M lld/ELF/SyntheticSections.cpp

  Log Message:
  -----------
  Address review comments


  Commit: ad72be51537c8a12f0f8bb31da5e389e749b1ff0
      https://github.com/llvm/llvm-project/commit/ad72be51537c8a12f0f8bb31da5e389e749b1ff0
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-12-02 (Mon, 02 Dec 2024)

  Changed paths:
    M lld/test/ELF/aarch64-got-relocations-pauth.s

  Log Message:
  -----------
  Use `##` for comments in tests


  Commit: 803bf634c491fd537b7d41af097129ff54b95e63
      https://github.com/llvm/llvm-project/commit/803bf634c491fd537b7d41af097129ff54b95e63
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-12-02 (Mon, 02 Dec 2024)

  Changed paths:
    M lld/ELF/Relocations.cpp
    M lld/test/ELF/aarch64-got-relocations-pauth.s

  Log Message:
  -----------
  Use `Err(ctx)` instead of `fatal` and use `getLocation` in error message


  Commit: bb4d8bcb126512ce110da1903af696ca4b7b592d
      https://github.com/llvm/llvm-project/commit/bb4d8bcb126512ce110da1903af696ca4b7b592d
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-12-02 (Mon, 02 Dec 2024)

  Changed paths:
    M lld/test/ELF/aarch64-got-relocations-pauth.s

  Log Message:
  -----------
  Use aarch64 triple in tests


  Commit: 6313f5cf1aec1f744a3e82a02794368c2f4eb23f
      https://github.com/llvm/llvm-project/commit/6313f5cf1aec1f744a3e82a02794368c2f4eb23f
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-12-02 (Mon, 02 Dec 2024)

  Changed paths:
    M lld/ELF/Relocations.cpp
    M lld/test/ELF/aarch64-got-relocations-pauth.s

  Log Message:
  -----------
  Switch to `printLocation` from `getLocation`


  Commit: b277e3ba49797f368139c62f2f64b6be25af8679
      https://github.com/llvm/llvm-project/commit/b277e3ba49797f368139c62f2f64b6be25af8679
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-12-02 (Mon, 02 Dec 2024)

  Changed paths:
    M lld/ELF/SyntheticSections.cpp
    M lld/test/ELF/aarch64-got-relocations-pauth.s

  Log Message:
  -----------
  Address review comments


Compare: https://github.com/llvm/llvm-project/compare/fd0c86888361...b277e3ba4979

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