|
clang 22.0.0git
|
#include "clang/Basic/PointerAuthOptions.h"
Public Types | |
| enum class | Kind : unsigned { None , ARM8_3 } |
| enum class | ARM8_3Key : unsigned { ASIA = 0 , ASIB = 1 , ASDA = 2 , ASDB = 3 } |
| Hardware pointer-signing keys in ARM8.3. More... | |
| enum class | Discrimination : unsigned { None , Type , Decl , Constant } |
| Forms of extra discrimination. More... | |
Public Member Functions | |
| PointerAuthSchema () | |
| PointerAuthSchema (ARM8_3Key Key, bool IsAddressDiscriminated, PointerAuthenticationMode AuthenticationMode, Discrimination OtherDiscrimination, std::optional< uint16_t > ConstantDiscriminatorOrNone=std::nullopt, bool IsIsaPointer=false, bool AuthenticatesNullValues=false) | |
| PointerAuthSchema (ARM8_3Key Key, bool IsAddressDiscriminated, Discrimination OtherDiscrimination, std::optional< uint16_t > ConstantDiscriminatorOrNone=std::nullopt, bool IsIsaPointer=false, bool AuthenticatesNullValues=false) | |
| Kind | getKind () const |
| operator bool () const | |
| bool | isEnabled () const |
| bool | isAddressDiscriminated () const |
| bool | isIsaPointer () const |
| bool | authenticatesNullValues () const |
| bool | hasOtherDiscrimination () const |
| Discrimination | getOtherDiscrimination () const |
| uint16_t | getConstantDiscrimination () const |
| unsigned | getKey () const |
| PointerAuthenticationMode | getAuthenticationMode () const |
| ARM8_3Key | getARM8_3Key () const |
Definition at line 61 of file PointerAuthOptions.h.
|
strong |
Hardware pointer-signing keys in ARM8.3.
These values are the same used in ptrauth.h.
| Enumerator | |
|---|---|
| ASIA | |
| ASIB | |
| ASDA | |
| ASDB | |
Definition at line 71 of file PointerAuthOptions.h.
|
strong |
Forms of extra discrimination.
| Enumerator | |
|---|---|
| None | No additional discrimination. |
| Type | Include a hash of the entity's type. |
| Decl | Include a hash of the entity's identity. |
| Constant | Discriminate using a constant value. |
Definition at line 79 of file PointerAuthOptions.h.
|
strong |
| Enumerator | |
|---|---|
| None | |
| ARM8_3 | |
Definition at line 63 of file PointerAuthOptions.h.
|
inline |
Definition at line 104 of file PointerAuthOptions.h.
References None.
Referenced by PointerAuthSchema().
|
inline |
Definition at line 106 of file PointerAuthOptions.h.
References ARM8_3, Constant, and getOtherDiscrimination().
|
inline |
Definition at line 124 of file PointerAuthOptions.h.
References PointerAuthSchema(), and clang::SignAndAuth.
|
inline |
Definition at line 150 of file PointerAuthOptions.h.
References getKind(), and None.
Referenced by clang::CodeGen::CodeGenFunction::EmitPointerAuthInfo().
|
inline |
Definition at line 183 of file PointerAuthOptions.h.
References ARM8_3, and getKind().
Referenced by getKey().
|
inline |
Definition at line 179 of file PointerAuthOptions.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitPointerAuthInfo(), and clang::CodeGen::CodeGenModule::shouldSignPointer().
|
inline |
Definition at line 164 of file PointerAuthOptions.h.
References Constant, and getOtherDiscrimination().
Referenced by clang::CodeGen::CodeGenModule::getPointerAuthOtherDiscriminator().
|
inline |
Definition at line 169 of file PointerAuthOptions.h.
References ARM8_3, getARM8_3Key(), getKind(), and None.
Referenced by clang::CodeGen::CodeGenFunction::EmitPointerAuthInfo(), and clang::CodeGen::CodeGenModule::getConstantSignedPointer().
|
inline |
Definition at line 134 of file PointerAuthOptions.h.
Referenced by authenticatesNullValues(), getARM8_3Key(), getKey(), getOtherDiscrimination(), isAddressDiscriminated(), isEnabled(), and isIsaPointer().
|
inline |
Definition at line 159 of file PointerAuthOptions.h.
References getKind(), and None.
Referenced by getConstantDiscrimination(), clang::CodeGen::CodeGenModule::getPointerAuthOtherDiscriminator(), hasOtherDiscrimination(), and PointerAuthSchema().
|
inline |
Definition at line 155 of file PointerAuthOptions.h.
References getOtherDiscrimination(), and None.
|
inline |
Definition at line 140 of file PointerAuthOptions.h.
References getKind(), and None.
Referenced by clang::CodeGen::ConstantAggregateBuilderBase::addSignedPointer(), and clang::CodeGen::CodeGenFunction::EmitPointerAuthInfo().
|
inline |
Definition at line 138 of file PointerAuthOptions.h.
References getKind(), and None.
Referenced by operator bool().
|
inline |
Definition at line 145 of file PointerAuthOptions.h.
References getKind(), and None.
Referenced by clang::CodeGen::CodeGenFunction::EmitPointerAuthInfo().
|
inlineexplicit |
Definition at line 136 of file PointerAuthOptions.h.
References isEnabled().