diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2024-02-19 15:29:00 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-19 15:29:00 -0800 |
commit | 513d9f2395ea017e72602ca6e747a2e061ab8c3f (patch) | |
tree | 088822379898922361a9a36c48462fa99bcc1e8e /lldb | |
parent | 61a96e5afadd034e7d13126f0e43731bbad7ad89 (diff) | |
download | llvm-513d9f2395ea017e72602ca6e747a2e061ab8c3f.zip llvm-513d9f2395ea017e72602ca6e747a2e061ab8c3f.tar.gz llvm-513d9f2395ea017e72602ca6e747a2e061ab8c3f.tar.bz2 |
[ptrauth] Teach LLVM & LLDB about LLVM_ptrauth_authentication_mode (#82272)
Teach LLVM & LLDB about `DW_AT_LLVM_ptrauth_authentication_mode`
Diffstat (limited to 'lldb')
-rw-r--r-- | lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp b/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp index d4446be..4884374 100644 --- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp +++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp @@ -316,8 +316,14 @@ void DWARFDIE::AppendTypeName(Stream &s) const { GetAttributeValueAsUnsigned(DW_AT_LLVM_ptrauth_extra_discriminator, 0); bool isaPointer = GetAttributeValueAsUnsigned(DW_AT_LLVM_ptrauth_isa_pointer, 0); - s.Printf("__ptrauth(%d, %d, 0x0%x, %d)", key, isAddressDiscriminated, - extraDiscriminator, isaPointer); + bool authenticatesNullValues = GetAttributeValueAsUnsigned( + DW_AT_LLVM_ptrauth_authenticates_null_values, 0); + unsigned authenticationMode = + GetAttributeValueAsUnsigned(DW_AT_LLVM_ptrauth_authentication_mode, 3); + + s.Printf("__ptrauth(%d, %d, 0x0%x, %d, %d, %d)", key, + isAddressDiscriminated, extraDiscriminator, isaPointer, + authenticatesNullValues, authenticationMode); break; } default: |