diff options
author | Daniil Kovalev <dkovalev@accesssoftek.com> | 2023-12-09 00:31:40 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-09 00:31:40 +0300 |
commit | 3c6efe5fdbca07ada9a2710d68efdb07064044c2 (patch) | |
tree | 718d00e76b401f397c172a3cd8204b6893060e22 /llvm/lib/Object/ELF.cpp | |
parent | 05420a17547e495f5748e9662150d6eb931e2c28 (diff) | |
download | llvm-3c6efe5fdbca07ada9a2710d68efdb07064044c2.zip llvm-3c6efe5fdbca07ada9a2710d68efdb07064044c2.tar.gz llvm-3c6efe5fdbca07ada9a2710d68efdb07064044c2.tar.bz2 |
[llvm-readobj][AArch64][ELF][PAC] Support ELF AUTH constants (#74874)
Reapply llvm/llvm-project#72713 after fixing formatted printing of
`uint64_t` values as hex (see failing build here
https://lab.llvm.org/buildbot/#/builders/186/builds/13604).
This patch adds llvm-readobj support for:
- Dynamic `R_AARCH64_AUTH_*` relocations (including RELR compressed AUTH
relocations) as described here:
https://github.com/ARM-software/abi-aa/blob/main/pauthabielf64/pauthabielf64.rst#auth-variant-dynamic-relocations
- `.note.AARCH64-PAUTH-ABI-tag` section as defined here
https://github.com/ARM-software/abi-aa/blob/main/pauthabielf64/pauthabielf64.rst#elf-marking
Diffstat (limited to 'llvm/lib/Object/ELF.cpp')
-rw-r--r-- | llvm/lib/Object/ELF.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Object/ELF.cpp b/llvm/lib/Object/ELF.cpp index 1d73a6f..36847d1 100644 --- a/llvm/lib/Object/ELF.cpp +++ b/llvm/lib/Object/ELF.cpp @@ -273,6 +273,7 @@ StringRef llvm::object::getELFSectionTypeName(uint32_t Machine, unsigned Type) { break; case ELF::EM_AARCH64: switch (Type) { + STRINGIFY_ENUM_CASE(ELF, SHT_AARCH64_AUTH_RELR); STRINGIFY_ENUM_CASE(ELF, SHT_AARCH64_MEMTAG_GLOBALS_DYNAMIC); STRINGIFY_ENUM_CASE(ELF, SHT_AARCH64_MEMTAG_GLOBALS_STATIC); } |