LLDB  mainline
Classes | Functions | Variables
AppleObjCRuntimeV2.cpp File Reference
#include <stdint.h>
#include <memory>
#include <string>
#include <vector>
#include "clang/AST/ASTContext.h"
#include "clang/AST/DeclObjC.h"
#include "lldb/Core/ClangForward.h"
#include "lldb/Host/OptionParser.h"
#include "lldb/Symbol/CompilerType.h"
#include "lldb/lldb-enumerations.h"
#include "lldb/Core/Debugger.h"
#include "lldb/Core/Module.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Core/Section.h"
#include "lldb/Core/ValueObjectConstResult.h"
#include "lldb/Core/ValueObjectVariable.h"
#include "lldb/Expression/DiagnosticManager.h"
#include "lldb/Expression/FunctionCaller.h"
#include "lldb/Expression/UtilityFunction.h"
#include "lldb/Interpreter/CommandObject.h"
#include "lldb/Interpreter/CommandObjectMultiword.h"
#include "lldb/Interpreter/CommandReturnObject.h"
#include "lldb/Interpreter/OptionArgParser.h"
#include "lldb/Interpreter/OptionValueBoolean.h"
#include "lldb/Symbol/ClangASTContext.h"
#include "lldb/Symbol/ObjectFile.h"
#include "lldb/Symbol/Symbol.h"
#include "lldb/Symbol/TypeList.h"
#include "lldb/Symbol/VariableList.h"
#include "lldb/Target/ABI.h"
#include "lldb/Target/ExecutionContext.h"
#include "lldb/Target/Platform.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/RegisterContext.h"
#include "lldb/Target/StackFrameRecognizer.h"
#include "lldb/Target/Target.h"
#include "lldb/Target/Thread.h"
#include "lldb/Utility/ConstString.h"
#include "lldb/Utility/Log.h"
#include "lldb/Utility/Scalar.h"
#include "lldb/Utility/Status.h"
#include "lldb/Utility/Stream.h"
#include "lldb/Utility/StreamString.h"
#include "lldb/Utility/Timer.h"
#include "AppleObjCClassDescriptorV2.h"
#include "AppleObjCDeclVendor.h"
#include "AppleObjCRuntimeV2.h"
#include "AppleObjCTrampolineHandler.h"
#include "AppleObjCTypeEncodingParser.h"
Include dependency graph for AppleObjCRuntimeV2.cpp:

Go to the source code of this file.

Classes

class  CommandObjectObjC_ClassTable_Dump
 
class  CommandObjectObjC_ClassTable_Dump::CommandOptions
 
class  CommandObjectMultiwordObjC_TaggedPointer_Info
 
class  CommandObjectMultiwordObjC_ClassTable
 
class  CommandObjectMultiwordObjC_TaggedPointer
 
class  CommandObjectMultiwordObjC
 
class  RemoteNXMapTable
 
class  RemoteNXMapTable::const_iterator
 
class  ObjCExceptionRecognizedStackFrame
 
class  ObjCExceptionThrowFrameRecognizer
 

Functions

static uint64_t ExtractRuntimeGlobalSymbol (Process *process, ConstString name, const ModuleSP &module_sp, Status &error, bool read_value=true, uint8_t byte_size=0, uint64_t default_value=LLDB_INVALID_ADDRESS, SymbolType sym_type=lldb::eSymbolTypeData)
 
static void RegisterObjCExceptionRecognizer ()
 
static bool DoesProcessHaveSharedCache (Process &process)
 

Variables

static const char * g_get_dynamic_class_info_name
 
static const char * g_get_dynamic_class_info_body
 
static const char * g_get_shared_cache_class_info_name
 
static const char * g_get_shared_cache_class_info_body
 
static constexpr OptionDefinition g_objc_classtable_dump_options []
 

Function Documentation

◆ DoesProcessHaveSharedCache()

static bool DoesProcessHaveSharedCache ( Process process)
static

◆ ExtractRuntimeGlobalSymbol()

static uint64_t ExtractRuntimeGlobalSymbol ( Process process,
ConstString  name,
const ModuleSP &  module_sp,
Status error,
bool  read_value = true,
uint8_t  byte_size = 0,
uint64_t  default_value = LLDB_INVALID_ADDRESS,
SymbolType  sym_type = lldb::eSymbolTypeData 
)
static

◆ RegisterObjCExceptionRecognizer()

static void RegisterObjCExceptionRecognizer ( )
static

Variable Documentation

◆ g_get_dynamic_class_info_body

const char* g_get_dynamic_class_info_body
static

◆ g_get_dynamic_class_info_name

const char* g_get_dynamic_class_info_name
static
Initial value:
=
"__lldb_apple_objc_v2_get_dynamic_class_info"

Definition at line 73 of file AppleObjCRuntimeV2.cpp.

Referenced by lldb_private::AppleObjCRuntimeV2::GetTaggedPointerObfuscator().

◆ g_get_shared_cache_class_info_body

const char* g_get_shared_cache_class_info_body
static

◆ g_get_shared_cache_class_info_name

const char* g_get_shared_cache_class_info_name
static
Initial value:
=
"__lldb_apple_objc_v2_get_shared_cache_class_info"

Definition at line 157 of file AppleObjCRuntimeV2.cpp.

Referenced by lldb_private::AppleObjCRuntimeV2::GetTaggedPointerObfuscator().

◆ g_objc_classtable_dump_options

constexpr OptionDefinition g_objc_classtable_dump_options[]
static
Initial value:
= {
{LLDB_OPT_SET_ALL, false, "verbose", 'v', OptionParser::eNoArgument,
nullptr, {}, 0, eArgTypeNone,
"Print ivar and method information in detail"}}
#define LLDB_OPT_SET_ALL
Definition: lldb-defines.h:110

Definition at line 496 of file AppleObjCRuntimeV2.cpp.

Referenced by CommandObjectObjC_ClassTable_Dump::CommandOptions::GetDefinitions().