clang 20.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 37 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 47 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 55 of file PointerAuthOptions.h.
|
strong |
Enumerator | |
---|---|
None | |
ARM8_3 |
Definition at line 39 of file PointerAuthOptions.h.
|
inline |
Definition at line 80 of file PointerAuthOptions.h.
|
inline |
Definition at line 82 of file PointerAuthOptions.h.
References Constant, and getOtherDiscrimination().
|
inline |
Definition at line 100 of file PointerAuthOptions.h.
|
inline |
Definition at line 126 of file PointerAuthOptions.h.
|
inline |
Definition at line 159 of file PointerAuthOptions.h.
References ARM8_3, and getKind().
Referenced by getKey().
|
inline |
Definition at line 155 of file PointerAuthOptions.h.
Referenced by clang::CodeGen::CodeGenModule::getMemberFunctionPointerAuthInfo(), and clang::CodeGen::CodeGenModule::shouldSignPointer().
|
inline |
Definition at line 140 of file PointerAuthOptions.h.
References Constant, and getOtherDiscrimination().
Referenced by clang::CodeGen::CodeGenModule::getPointerAuthOtherDiscriminator().
|
inline |
Definition at line 145 of file PointerAuthOptions.h.
References ARM8_3, getARM8_3Key(), getKind(), and None.
Referenced by clang::CodeGen::CodeGenModule::getConstantSignedPointer(), and clang::CodeGen::CodeGenModule::getMemberFunctionPointerAuthInfo().
|
inline |
Definition at line 110 of file PointerAuthOptions.h.
Referenced by authenticatesNullValues(), getARM8_3Key(), getKey(), getOtherDiscrimination(), isAddressDiscriminated(), isEnabled(), and isIsaPointer().
|
inline |
Definition at line 135 of file PointerAuthOptions.h.
References getKind(), and None.
Referenced by getConstantDiscrimination(), clang::CodeGen::CodeGenModule::getPointerAuthOtherDiscriminator(), hasOtherDiscrimination(), and PointerAuthSchema().
|
inline |
Definition at line 131 of file PointerAuthOptions.h.
References getOtherDiscrimination(), and None.
|
inline |
Definition at line 116 of file PointerAuthOptions.h.
References getKind(), and None.
Referenced by clang::CodeGen::ConstantAggregateBuilderBase::addSignedPointer(), and clang::CodeGen::CodeGenModule::getMemberFunctionPointerAuthInfo().
|
inline |
Definition at line 114 of file PointerAuthOptions.h.
References getKind(), and None.
Referenced by operator bool().
|
inline |
Definition at line 121 of file PointerAuthOptions.h.
|
inlineexplicit |
Definition at line 112 of file PointerAuthOptions.h.
References isEnabled().