clang 24.0.0git
clang::PointerAuthOptions Struct Reference

#include "clang/Basic/PointerAuthOptions.h"

Public Attributes

bool ReturnAddresses = false
 Should return addresses be authenticated?
bool AuthTraps = false
 Do authentication failures cause a trap?
bool IndirectGotos = false
 Do indirect goto label addresses need to be authenticated?
bool AArch64JumpTableHardening = false
 Use hardened lowering for jump-table dispatch?
PointerAuthSchema FunctionPointers
 The ABI for C function pointers.
PointerAuthSchema CXXVTablePointers
 The ABI for C++ virtual table pointers (the pointer to the table itself) as installed in an actual class instance.
PointerAuthSchema CXXTypeInfoVTablePointer
 TypeInfo has external ABI requirements and is emitted without actually having parsed the libcxx definition, so we can't simply perform a look up.
PointerAuthSchema CXXVTTVTablePointers
 The ABI for C++ virtual table pointers as installed in a VTT.
PointerAuthSchema CXXVirtualFunctionPointers
 The ABI for most C++ virtual function pointers, i.e. v-table entries.
PointerAuthSchema CXXVirtualVariadicFunctionPointers
 The ABI for variadic C++ virtual function pointers.
PointerAuthSchema CXXMemberFunctionPointers
 The ABI for C++ member function pointers.
PointerAuthSchema BlockInvocationFunctionPointers
 The ABI for block invocation function pointers.
PointerAuthSchema BlockHelperFunctionPointers
 The ABI for block object copy/destroy function pointers.
PointerAuthSchema BlockByrefHelperFunctionPointers
 The ABI for __block variable copy/destroy function pointers.
PointerAuthSchema BlockDescriptorPointers
 The ABI for pointers to block descriptors.
PointerAuthSchema ObjCMethodListFunctionPointers
 The ABI for Objective-C method lists.
PointerAuthSchema ObjCMethodListPointer
 The ABI for a reference to an Objective-C method list in _class_ro_t.
PointerAuthSchema ObjCIsaPointers
 The ABI for Objective-C isa pointers.
PointerAuthSchema ObjCSuperPointers
 The ABI for Objective-C superclass pointers.
PointerAuthSchema ObjCClassROPointers
 The ABI for Objective-C class_ro_t pointers.

Detailed Description

Definition at line 185 of file PointerAuthOptions.h.

Member Data Documentation

◆ AArch64JumpTableHardening

bool clang::PointerAuthOptions::AArch64JumpTableHardening = false

◆ AuthTraps

◆ BlockByrefHelperFunctionPointers

PointerAuthSchema clang::PointerAuthOptions::BlockByrefHelperFunctionPointers

The ABI for __block variable copy/destroy function pointers.

Definition at line 230 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ BlockDescriptorPointers

PointerAuthSchema clang::PointerAuthOptions::BlockDescriptorPointers

The ABI for pointers to block descriptors.

Definition at line 233 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ BlockHelperFunctionPointers

PointerAuthSchema clang::PointerAuthOptions::BlockHelperFunctionPointers

The ABI for block object copy/destroy function pointers.

Definition at line 227 of file PointerAuthOptions.h.

Referenced by buildBlockDescriptor(), and clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ BlockInvocationFunctionPointers

PointerAuthSchema clang::PointerAuthOptions::BlockInvocationFunctionPointers

The ABI for block invocation function pointers.

Definition at line 224 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ CXXMemberFunctionPointers

PointerAuthSchema clang::PointerAuthOptions::CXXMemberFunctionPointers

◆ CXXTypeInfoVTablePointer

PointerAuthSchema clang::PointerAuthOptions::CXXTypeInfoVTablePointer

TypeInfo has external ABI requirements and is emitted without actually having parsed the libcxx definition, so we can't simply perform a look up.

The settings for this should match the exact specification in type_info.h

Definition at line 209 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ CXXVirtualFunctionPointers

PointerAuthSchema clang::PointerAuthOptions::CXXVirtualFunctionPointers

The ABI for most C++ virtual function pointers, i.e. v-table entries.

Definition at line 215 of file PointerAuthOptions.h.

Referenced by BuildAppleKextVirtualCall(), and clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ CXXVirtualVariadicFunctionPointers

PointerAuthSchema clang::PointerAuthOptions::CXXVirtualVariadicFunctionPointers

The ABI for variadic C++ virtual function pointers.

Definition at line 218 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ CXXVTablePointers

PointerAuthSchema clang::PointerAuthOptions::CXXVTablePointers

The ABI for C++ virtual table pointers (the pointer to the table itself) as installed in an actual class instance.

Definition at line 203 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ CXXVTTVTablePointers

PointerAuthSchema clang::PointerAuthOptions::CXXVTTVTablePointers

The ABI for C++ virtual table pointers as installed in a VTT.

Definition at line 212 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ FunctionPointers

◆ IndirectGotos

bool clang::PointerAuthOptions::IndirectGotos = false

◆ ObjCClassROPointers

PointerAuthSchema clang::PointerAuthOptions::ObjCClassROPointers

The ABI for Objective-C class_ro_t pointers.

Definition at line 248 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ ObjCIsaPointers

PointerAuthSchema clang::PointerAuthOptions::ObjCIsaPointers

The ABI for Objective-C isa pointers.

Definition at line 242 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ ObjCMethodListFunctionPointers

PointerAuthSchema clang::PointerAuthOptions::ObjCMethodListFunctionPointers

The ABI for Objective-C method lists.

Definition at line 236 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ ObjCMethodListPointer

PointerAuthSchema clang::PointerAuthOptions::ObjCMethodListPointer

The ABI for a reference to an Objective-C method list in _class_ro_t.

Definition at line 239 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ ObjCSuperPointers

PointerAuthSchema clang::PointerAuthOptions::ObjCSuperPointers

The ABI for Objective-C superclass pointers.

Definition at line 245 of file PointerAuthOptions.h.

Referenced by clang::CompilerInvocation::setDefaultPointerAuthOptions().

◆ ReturnAddresses

bool clang::PointerAuthOptions::ReturnAddresses = false

The documentation for this struct was generated from the following file: