Created
October 5, 2023 16:06
-
-
Save gnachman/f7d05bf54f766692e7b2c963d1c56338 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
SwiftLanguageRuntime: _swift_disableExclusivityChecking = 8089784864 | |
== [UserExpression::Evaluate] Parsing expression | |
struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned line; | |
unsigned col; | |
char *memory_addr; | |
} t; | |
__ubsan_get_current_report_data(&t.issue_kind, &t.message, &t.filename, &t.line, | |
&t.col, &t.memory_addr); | |
t; | |
== | |
ClangUserExpression::ScanContext() | |
[CUE::SC] Null function | |
ClangModulesDeclVendor's compiler flags clang -fmodules -fimplicit-module-maps -fcxx-modules -fsyntax-only -femit-all-decls -target arm64-apple-macosx11.0.0 -fmodules-validate-system-headers -Werror=non-modular-include-in-framework-module -Rmodule-build -x objective-c++ -fobjc-arc -fblocks -D_ISO646_H -D__ISO646_H -fgnuc-version=4.2.1 -mmacos-version-min=14.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk LLDBModulesMemoryBuffer -fmodules-cache-path=/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/C/clang/ModuleCache -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/clang | |
Parsing the following code: | |
#line 1 "<lldb wrapper prefix>" | |
#ifndef offsetof | |
#define offsetof(t, d) __builtin_offsetof(t, d) | |
#endif | |
#ifndef NULL | |
#define NULL (__null) | |
#endif | |
#ifndef Nil | |
#define Nil (__null) | |
#endif | |
#ifndef nil | |
#define nil (__null) | |
#endif | |
#ifndef YES | |
#define YES ((BOOL)1) | |
#endif | |
#ifndef NO | |
#define NO ((BOOL)0) | |
#endif | |
typedef __INT8_TYPE__ int8_t; | |
typedef __UINT8_TYPE__ uint8_t; | |
typedef __INT16_TYPE__ int16_t; | |
typedef __UINT16_TYPE__ uint16_t; | |
typedef __INT32_TYPE__ int32_t; | |
typedef __UINT32_TYPE__ uint32_t; | |
typedef __INT64_TYPE__ int64_t; | |
typedef __UINT64_TYPE__ uint64_t; | |
typedef __INTPTR_TYPE__ intptr_t; | |
typedef __UINTPTR_TYPE__ uintptr_t; | |
typedef __SIZE_TYPE__ size_t; | |
typedef __PTRDIFF_TYPE__ ptrdiff_t; | |
typedef unsigned short unichar; | |
extern "C" | |
{ | |
int printf(const char * __restrict, ...); | |
} | |
typedef bool BOOL; | |
extern "C" { | |
void | |
__ubsan_get_current_report_data(const char **OutIssueKind, | |
const char **OutMessage, const char **OutFilename, unsigned *OutLine, | |
unsigned *OutCol, char **OutMemoryAddr); | |
} | |
void | |
$__lldb_expr(void *$__lldb_arg) | |
{ | |
; | |
#line 1 "<user expression 0>" | |
struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned line; | |
unsigned col; | |
char *memory_addr; | |
} t; | |
__ubsan_get_current_report_data(&t.issue_kind, &t.message, &t.filename, &t.line, | |
&t.col, &t.memory_addr); | |
t; | |
; | |
#line 1 "<lldb wrapper suffix>" | |
} | |
Frame has language of type objective-c++ | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_arg' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x00000001411CB000 'Expression ASTContext for '<user expression 0>'' for '$__lldb_arg' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_expr' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x00000001411CB000 'Expression ASTContext for '<user expression 0>'' for '$__lldb_expr' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for 't' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
TypeSystemSwiftTypeRef("iTerm2")::TypeSystemSwiftTypeRef() | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x00000001411CB000 'Expression ASTContext for '<user expression 0>'' for 't' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
AppleObjCDeclVendor::FindDecls ('t', false, 1, ) | |
AOCTV::FT Couldn't find t in the ASTContext | |
objc_debug_realized_class_generation_count changed from 0 to 4430 | |
Creating utility function __lldb_apple_objc_v2_get_dynamic_class_info3 | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
LayoutRecordType on (ASTContext*)0x0000000127BE3800 'Expression ASTContext for '<clang expression>'' for (RecordDecl*)0x0000000127C28BB0 [name = 'ClassInfo'] | |
Found function _Z44__lldb_apple_objc_v2_get_dynamic_class_info3PvS_jS_jj for __lldb_apple_objc_v2_get_dynamic_class_info3 | |
DoPrepareForExecution - Current expression language is unknown | |
Module as passed in to IRForTarget: | |
"; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.ClassInfo = type <{ ptr, i32 }> | |
@.str = private unnamed_addr constant [22 x i8] c"class_infos_ptr = %p\0A\00", align 1, !dbg !0 | |
@.str.1 = private unnamed_addr constant [28 x i8] c"class_infos_byte_size = %u\0A\00", align 1, !dbg !8 | |
@.str.2 = private unnamed_addr constant [22 x i8] c"max_class_infos = %u\0A\00", align 1, !dbg !13 | |
@.str.3 = private unnamed_addr constant [12 x i8] c"count = %u\0A\00", align 1, !dbg !15 | |
@.str.4 = private unnamed_addr constant [19 x i8] c"[%u] isa = %8p %s\0A\00", align 1, !dbg !20 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define i32 @_Z44__lldb_apple_objc_v2_get_dynamic_class_info3PvS_jS_jj(ptr %gdb_objc_realized_classes_ptr, ptr %class_infos_ptr, i32 %class_infos_byte_size, ptr %class_buffer, i32 %class_buffer_len, i32 %should_log) #0 !dbg !56 { | |
entry: | |
%gdb_objc_realized_classes_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !61 | |
%class_infos_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !62 | |
%class_infos_byte_size.addr = alloca i32, align 4, !clang.decl.ptr !63 | |
%class_buffer.addr = alloca ptr, align 8, !clang.decl.ptr !64 | |
%class_buffer_len.addr = alloca i32, align 4, !clang.decl.ptr !65 | |
%should_log.addr = alloca i32, align 4, !clang.decl.ptr !66 | |
%max_class_infos = alloca i64, align 8, !clang.decl.ptr !67 | |
%class_infos = alloca ptr, align 8, !clang.decl.ptr !68 | |
%realized_class_list = alloca ptr, align 8, !clang.decl.ptr !69 | |
%count = alloca i32, align 4, !clang.decl.ptr !70 | |
%idx = alloca i32, align 4, !clang.decl.ptr !71 | |
%i = alloca i32, align 4, !clang.decl.ptr !72 | |
%isa = alloca ptr, align 8, !clang.decl.ptr !73 | |
%name_ptr = alloca ptr, align 8, !clang.decl.ptr !74 | |
%s = alloca ptr, align 8, !clang.decl.ptr !75 | |
%h = alloca i32, align 4, !clang.decl.ptr !76 | |
%c = alloca i8, align 1, !clang.decl.ptr !77 | |
store ptr %gdb_objc_realized_classes_ptr, ptr %gdb_objc_realized_classes_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %gdb_objc_realized_classes_ptr.addr, metadata !78, metadata !DIExpression()), !dbg !79 | |
store ptr %class_infos_ptr, ptr %class_infos_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %class_infos_ptr.addr, metadata !80, metadata !DIExpression()), !dbg !81 | |
store i32 %class_infos_byte_size, ptr %class_infos_byte_size.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %class_infos_byte_size.addr, metadata !82, metadata !DIExpression()), !dbg !83 | |
store ptr %class_buffer, ptr %class_buffer.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %class_buffer.addr, metadata !84, metadata !DIExpression()), !dbg !85 | |
store i32 %class_buffer_len, ptr %class_buffer_len.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %class_buffer_len.addr, metadata !86, metadata !DIExpression()), !dbg !87 | |
store i32 %should_log, ptr %should_log.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %should_log.addr, metadata !88, metadata !DIExpression()), !dbg !89 | |
%0 = load i32, ptr %should_log.addr, align 4, !dbg !90 | |
%tobool = icmp ne i32 %0, 0, !dbg !90 | |
br i1 %tobool, label %if.then, label %if.end, !dbg !92 | |
if.then: ; preds = %entry | |
%1 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !90 | |
%call = call i32 (ptr, ...) @printf(ptr @.str, ptr %1) #3, !dbg !90 | |
br label %if.end, !dbg !90 | |
if.end: ; preds = %if.then, %entry | |
%2 = load i32, ptr %should_log.addr, align 4, !dbg !93 | |
%tobool1 = icmp ne i32 %2, 0, !dbg !93 | |
br i1 %tobool1, label %if.then2, label %if.end4, !dbg !95 | |
if.then2: ; preds = %if.end | |
%3 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !93 | |
%call3 = call i32 (ptr, ...) @printf(ptr @.str.1, i32 %3) #3, !dbg !93 | |
br label %if.end4, !dbg !93 | |
if.end4: ; preds = %if.then2, %if.end | |
call void @llvm.dbg.declare(metadata ptr %max_class_infos, metadata !96, metadata !DIExpression()), !dbg !100 | |
%4 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !100 | |
%conv = zext i32 %4 to i64, !dbg !100 | |
%div = udiv i64 %conv, 12, !dbg !100 | |
store i64 %div, ptr %max_class_infos, align 8, !dbg !100 | |
%5 = load i32, ptr %should_log.addr, align 4, !dbg !101 | |
%tobool5 = icmp ne i32 %5, 0, !dbg !101 | |
br i1 %tobool5, label %if.then6, label %if.end8, !dbg !103 | |
if.then6: ; preds = %if.end4 | |
%6 = load i64, ptr %max_class_infos, align 8, !dbg !101 | |
%call7 = call i32 (ptr, ...) @printf(ptr @.str.2, i64 %6) #3, !dbg !101 | |
br label %if.end8, !dbg !101 | |
if.end8: ; preds = %if.then6, %if.end4 | |
call void @llvm.dbg.declare(metadata ptr %class_infos, metadata !104, metadata !DIExpression()), !dbg !105 | |
%7 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !105 | |
store ptr %7, ptr %class_infos, align 8, !dbg !105 | |
call void @llvm.dbg.declare(metadata ptr %realized_class_list, metadata !106, metadata !DIExpression()), !dbg !107 | |
%8 = load ptr, ptr %class_buffer.addr, align 8, !dbg !107 | |
store ptr %8, ptr %realized_class_list, align 8, !dbg !107 | |
call void @llvm.dbg.declare(metadata ptr %count, metadata !108, metadata !DIExpression()), !dbg !109 | |
%9 = load ptr, ptr %realized_class_list, align 8, !dbg !109 | |
%10 = load i32, ptr %class_buffer_len.addr, align 4, !dbg !110 | |
%conv9 = zext i32 %10 to i64, !dbg !110 | |
%call10 = call i64 @objc_getRealizedClassList_trylock(ptr %9, i64 %conv9) #3, !dbg !109 | |
%conv11 = trunc i64 %call10 to i32, !dbg !109 | |
store i32 %conv11, ptr %count, align 4, !dbg !109 | |
%11 = load i32, ptr %should_log.addr, align 4, !dbg !111 | |
%tobool12 = icmp ne i32 %11, 0, !dbg !111 | |
br i1 %tobool12, label %if.then13, label %if.end15, !dbg !113 | |
if.then13: ; preds = %if.end8 | |
%12 = load i32, ptr %count, align 4, !dbg !111 | |
%call14 = call i32 (ptr, ...) @printf(ptr @.str.3, i32 %12) #3, !dbg !111 | |
br label %if.end15, !dbg !111 | |
if.end15: ; preds = %if.then13, %if.end8 | |
call void @llvm.dbg.declare(metadata ptr %idx, metadata !114, metadata !DIExpression()), !dbg !115 | |
store i32 0, ptr %idx, align 4, !dbg !115 | |
call void @llvm.dbg.declare(metadata ptr %i, metadata !116, metadata !DIExpression()), !dbg !118 | |
store i32 0, ptr %i, align 4, !dbg !118 | |
br label %for.cond, !dbg !118 | |
for.cond: ; preds = %for.inc46, %if.end15 | |
%13 = load i32, ptr %i, align 4, !dbg !119 | |
%14 = load i32, ptr %count, align 4, !dbg !119 | |
%cmp = icmp ult i32 %13, %14, !dbg !119 | |
br i1 %cmp, label %for.body, label %for.end48, !dbg !118 | |
for.body: ; preds = %for.cond | |
%15 = load i32, ptr %idx, align 4, !dbg !121 | |
%conv16 = zext i32 %15 to i64, !dbg !121 | |
%16 = load i64, ptr %max_class_infos, align 8, !dbg !121 | |
%cmp17 = icmp ult i64 %conv16, %16, !dbg !121 | |
br i1 %cmp17, label %if.then18, label %if.end45, !dbg !124 | |
if.then18: ; preds = %for.body | |
call void @llvm.dbg.declare(metadata ptr %isa, metadata !125, metadata !DIExpression()), !dbg !127 | |
%17 = load ptr, ptr %realized_class_list, align 8, !dbg !127 | |
%18 = load i32, ptr %i, align 4, !dbg !127 | |
%idxprom = zext i32 %18 to i64, !dbg !127 | |
%arrayidx = getelementptr inbounds ptr, ptr %17, i64 %idxprom, !dbg !127 | |
%19 = load ptr, ptr %arrayidx, align 8, !dbg !127 | |
store ptr %19, ptr %isa, align 8, !dbg !127 | |
call void @llvm.dbg.declare(metadata ptr %name_ptr, metadata !128, metadata !DIExpression()), !dbg !130 | |
%20 = load ptr, ptr %isa, align 8, !dbg !130 | |
%call19 = call ptr @objc_debug_class_getNameRaw(ptr %20) #3, !dbg !130 | |
store ptr %call19, ptr %name_ptr, align 8, !dbg !130 | |
%21 = load ptr, ptr %name_ptr, align 8, !dbg !131 | |
%tobool20 = icmp ne ptr %21, null, !dbg !131 | |
br i1 %tobool20, label %if.end24, label %if.then21, !dbg !133 | |
if.then21: ; preds = %if.then18 | |
%22 = load ptr, ptr %isa, align 8, !dbg !134 | |
%call22 = call ptr @class_getName(ptr %22) #3, !dbg !134 | |
%23 = load ptr, ptr %isa, align 8, !dbg !136 | |
%call23 = call ptr @objc_debug_class_getNameRaw(ptr %23) #3, !dbg !136 | |
store ptr %call23, ptr %name_ptr, align 8, !dbg !136 | |
br label %if.end24, !dbg !137 | |
if.end24: ; preds = %if.then21, %if.then18 | |
%24 = load ptr, ptr %name_ptr, align 8, !dbg !138 | |
%tobool25 = icmp ne ptr %24, null, !dbg !138 | |
br i1 %tobool25, label %if.end27, label %if.then26, !dbg !140 | |
if.then26: ; preds = %if.end24 | |
br label %for.inc46, !dbg !141 | |
if.end27: ; preds = %if.end24 | |
call void @llvm.dbg.declare(metadata ptr %s, metadata !142, metadata !DIExpression()), !dbg !143 | |
%25 = load ptr, ptr %name_ptr, align 8, !dbg !143 | |
store ptr %25, ptr %s, align 8, !dbg !143 | |
call void @llvm.dbg.declare(metadata ptr %h, metadata !144, metadata !DIExpression()), !dbg !145 | |
store i32 5381, ptr %h, align 4, !dbg !145 | |
call void @llvm.dbg.declare(metadata ptr %c, metadata !146, metadata !DIExpression()), !dbg !149 | |
%26 = load ptr, ptr %s, align 8, !dbg !149 | |
%27 = load i8, ptr %26, align 1, !dbg !149 | |
store i8 %27, ptr %c, align 1, !dbg !149 | |
br label %for.cond28, !dbg !149 | |
for.cond28: ; preds = %for.inc, %if.end27 | |
%28 = load i8, ptr %c, align 1, !dbg !150 | |
%tobool29 = icmp ne i8 %28, 0, !dbg !150 | |
br i1 %tobool29, label %for.body30, label %for.end, !dbg !149 | |
for.body30: ; preds = %for.cond28 | |
%29 = load i32, ptr %h, align 4, !dbg !152 | |
%shl = shl i32 %29, 5, !dbg !152 | |
%30 = load i32, ptr %h, align 4, !dbg !152 | |
%add = add i32 %shl, %30, !dbg !152 | |
%31 = load i8, ptr %c, align 1, !dbg !152 | |
%conv31 = zext i8 %31 to i32, !dbg !152 | |
%add32 = add i32 %add, %conv31, !dbg !152 | |
store i32 %add32, ptr %h, align 4, !dbg !152 | |
br label %for.inc, !dbg !152 | |
for.inc: ; preds = %for.body30 | |
%32 = load ptr, ptr %s, align 8, !dbg !150 | |
%incdec.ptr = getelementptr inbounds i8, ptr %32, i32 1, !dbg !150 | |
store ptr %incdec.ptr, ptr %s, align 8, !dbg !150 | |
%33 = load i8, ptr %incdec.ptr, align 1, !dbg !150 | |
store i8 %33, ptr %c, align 1, !dbg !150 | |
br label %for.cond28, !dbg !150, !llvm.loop !153 | |
for.end: ; preds = %for.cond28 | |
%34 = load i32, ptr %h, align 4, !dbg !156 | |
%35 = load ptr, ptr %class_infos, align 8, !dbg !156 | |
%36 = load i32, ptr %idx, align 4, !dbg !156 | |
%idxprom33 = zext i32 %36 to i64, !dbg !156 | |
%arrayidx34 = getelementptr inbounds %struct.ClassInfo, ptr %35, i64 %idxprom33, !dbg !156 | |
%hash = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx34, i32 0, i32 1, !dbg !156 | |
store i32 %34, ptr %hash, align 1, !dbg !156 | |
%37 = load ptr, ptr %isa, align 8, !dbg !157 | |
%38 = load ptr, ptr %class_infos, align 8, !dbg !157 | |
%39 = load i32, ptr %idx, align 4, !dbg !157 | |
%idxprom35 = zext i32 %39 to i64, !dbg !157 | |
%arrayidx36 = getelementptr inbounds %struct.ClassInfo, ptr %38, i64 %idxprom35, !dbg !157 | |
%isa37 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx36, i32 0, i32 0, !dbg !157 | |
store ptr %37, ptr %isa37, align 1, !dbg !157 | |
%40 = load i32, ptr %should_log.addr, align 4, !dbg !158 | |
%tobool38 = icmp ne i32 %40, 0, !dbg !158 | |
br i1 %tobool38, label %if.then39, label %if.end44, !dbg !160 | |
if.then39: ; preds = %for.end | |
%41 = load i32, ptr %idx, align 4, !dbg !158 | |
%42 = load ptr, ptr %class_infos, align 8, !dbg !158 | |
%43 = load i32, ptr %idx, align 4, !dbg !158 | |
%idxprom40 = zext i32 %43 to i64, !dbg !158 | |
%arrayidx41 = getelementptr inbounds %struct.ClassInfo, ptr %42, i64 %idxprom40, !dbg !158 | |
%isa42 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx41, i32 0, i32 0, !dbg !158 | |
%44 = load ptr, ptr %isa42, align 1, !dbg !158 | |
%45 = load ptr, ptr %name_ptr, align 8, !dbg !158 | |
%call43 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %41, ptr %44, ptr %45) #3, !dbg !158 | |
br label %if.end44, !dbg !158 | |
if.end44: ; preds = %if.then39, %for.end | |
br label %if.end45, !dbg !161 | |
if.end45: ; preds = %if.end44, %for.body | |
%46 = load i32, ptr %idx, align 4, !dbg !162 | |
%inc = add i32 %46, 1, !dbg !162 | |
store i32 %inc, ptr %idx, align 4, !dbg !162 | |
br label %for.inc46, !dbg !163 | |
for.inc46: ; preds = %if.end45, %if.then26 | |
%47 = load i32, ptr %i, align 4, !dbg !119 | |
%inc47 = add i32 %47, 1, !dbg !119 | |
store i32 %inc47, ptr %i, align 4, !dbg !119 | |
br label %for.cond, !dbg !119, !llvm.loop !164 | |
for.end48: ; preds = %for.cond | |
%48 = load i32, ptr %idx, align 4, !dbg !166 | |
%conv49 = zext i32 %48 to i64, !dbg !166 | |
%49 = load i64, ptr %max_class_infos, align 8, !dbg !166 | |
%cmp50 = icmp ult i64 %conv49, %49, !dbg !166 | |
br i1 %cmp50, label %if.then51, label %if.end58, !dbg !168 | |
if.then51: ; preds = %for.end48 | |
%50 = load ptr, ptr %class_infos, align 8, !dbg !169 | |
%51 = load i32, ptr %idx, align 4, !dbg !169 | |
%idxprom52 = zext i32 %51 to i64, !dbg !169 | |
%arrayidx53 = getelementptr inbounds %struct.ClassInfo, ptr %50, i64 %idxprom52, !dbg !169 | |
%isa54 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx53, i32 0, i32 0, !dbg !169 | |
store ptr null, ptr %isa54, align 1, !dbg !169 | |
%52 = load ptr, ptr %class_infos, align 8, !dbg !171 | |
%53 = load i32, ptr %idx, align 4, !dbg !171 | |
%idxprom55 = zext i32 %53 to i64, !dbg !171 | |
%arrayidx56 = getelementptr inbounds %struct.ClassInfo, ptr %52, i64 %idxprom55, !dbg !171 | |
%hash57 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx56, i32 0, i32 1, !dbg !171 | |
store i32 0, ptr %hash57, align 1, !dbg !171 | |
br label %if.end58, !dbg !172 | |
if.end58: ; preds = %if.then51, %for.end48 | |
%54 = load i32, ptr %count, align 4, !dbg !173 | |
ret i32 %54, !dbg !173 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 | |
; Function Attrs: convergent | |
declare i32 @printf(ptr, ...) #2 | |
; Function Attrs: convergent | |
declare i64 @objc_getRealizedClassList_trylock(ptr, i64) #2 | |
; Function Attrs: convergent | |
declare ptr @objc_debug_class_getNameRaw(ptr) #2 | |
; Function Attrs: convergent | |
declare ptr @class_getName(ptr) #2 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
attributes #2 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #3 = { convergent "no-builtins" } | |
!llvm.dbg.cu = !{!25} | |
!llvm.module.flags = !{!41, !42, !43, !44, !45, !46, !47, !48, !49} | |
!clang.global.decl.ptrs = !{!50, !51, !52, !53, !54} | |
!llvm.ident = !{!55} | |
!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression()) | |
!1 = distinct !DIGlobalVariable(scope: null, file: !2, line: 62, type: !3, isLocal: true, isDefinition: true) | |
!2 = !DIFile(filename: "<lldb wrapper prefix>", directory: "/") | |
!3 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 176, elements: !6) | |
!4 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !5) | |
!5 = !DIBasicType(name: "char", size: 8, encoding: DW_ATE_signed_char) | |
!6 = !{!7} | |
!7 = !DISubrange(count: 22) | |
!8 = !DIGlobalVariableExpression(var: !9, expr: !DIExpression()) | |
!9 = distinct !DIGlobalVariable(scope: null, file: !2, line: 63, type: !10, isLocal: true, isDefinition: true) | |
!10 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 224, elements: !11) | |
!11 = !{!12} | |
!12 = !DISubrange(count: 28) | |
!13 = !DIGlobalVariableExpression(var: !14, expr: !DIExpression()) | |
!14 = distinct !DIGlobalVariable(scope: null, file: !2, line: 66, type: !3, isLocal: true, isDefinition: true) | |
!15 = !DIGlobalVariableExpression(var: !16, expr: !DIExpression()) | |
!16 = distinct !DIGlobalVariable(scope: null, file: !2, line: 74, type: !17, isLocal: true, isDefinition: true) | |
!17 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 96, elements: !18) | |
!18 = !{!19} | |
!19 = !DISubrange(count: 12) | |
!20 = !DIGlobalVariableExpression(var: !21, expr: !DIExpression()) | |
!21 = distinct !DIGlobalVariable(scope: null, file: !2, line: 95, type: !22, isLocal: true, isDefinition: true) | |
!22 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 152, elements: !23) | |
!23 = !{!24} | |
!24 = !DISubrange(count: 19) | |
!25 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !26, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug, retainedTypes: !27, globals: !40) | |
!26 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!27 = !{!28, !39} | |
!28 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !29, size: 64) | |
!29 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "ClassInfo", file: !2, line: 48, size: 96, flags: DIFlagTypePassByValue, elements: !30, identifier: "_ZTS9ClassInfo") | |
!30 = !{!31, !36} | |
!31 = !DIDerivedType(tag: DW_TAG_member, name: "isa", scope: !29, file: !2, line: 50, baseType: !32, size: 64) | |
!32 = !DIDerivedType(tag: DW_TAG_typedef, name: "Class", file: !33, baseType: !34) | |
!33 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "") | |
!34 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !35, size: 64) | |
!35 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_class", file: !26, flags: DIFlagFwdDecl) | |
!36 = !DIDerivedType(tag: DW_TAG_member, name: "hash", scope: !29, file: !2, line: 51, baseType: !37, size: 32, offset: 64) | |
!37 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint32_t", file: !2, line: 24, baseType: !38) | |
!38 = !DIBasicType(name: "unsigned int", size: 32, encoding: DW_ATE_unsigned) | |
!39 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !32, size: 64) | |
!40 = !{!0, !8, !13, !15, !20} | |
!41 = !{i32 1, !"Objective-C Version", i32 2} | |
!42 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!43 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!44 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!45 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!46 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!47 = !{i32 2, !"Debug Info Version", i32 3} | |
!48 = !{i32 1, !"wchar_size", i32 4} | |
!49 = !{i32 7, !"frame-pointer", i32 2} | |
!50 = !{ptr @_Z44__lldb_apple_objc_v2_get_dynamic_class_info3PvS_jS_jj, i64 4962055680} | |
!51 = !{ptr @printf, i64 4961922488} | |
!52 = !{ptr @objc_getRealizedClassList_trylock, i64 4962027368} | |
!53 = !{ptr @objc_debug_class_getNameRaw, i64 4962027872} | |
!54 = !{ptr @class_getName, i64 4962028264} | |
!55 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!56 = distinct !DISubprogram(name: "__lldb_apple_objc_v2_get_dynamic_class_info3", linkageName: "_Z44__lldb_apple_objc_v2_get_dynamic_class_info3PvS_jS_jj", scope: !2, file: !2, line: 55, type: !57, scopeLine: 61, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !25, retainedNodes: !60) | |
!57 = !DISubroutineType(types: !58) | |
!58 = !{!37, !59, !59, !37, !59, !37, !37} | |
!59 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64) | |
!60 = !{} | |
!61 = !{i64 4962029320} | |
!62 = !{i64 4962029448} | |
!63 = !{i64 4962029568} | |
!64 = !{i64 4962029696} | |
!65 = !{i64 4962029816} | |
!66 = !{i64 4962029936} | |
!67 = !{i64 4962057080} | |
!68 = !{i64 4962058280} | |
!69 = !{i64 4962058576} | |
!70 = !{i64 4962058864} | |
!71 = !{i64 4961962216} | |
!72 = !{i64 4961962440} | |
!73 = !{i64 4961963032} | |
!74 = !{i64 4961963376} | |
!75 = !{i64 4961964696} | |
!76 = !{i64 4961964920} | |
!77 = !{i64 4961965152} | |
!78 = !DILocalVariable(name: "gdb_objc_realized_classes_ptr", arg: 1, scope: !56, file: !2, line: 55, type: !59) | |
!79 = !DILocation(line: 55, scope: !56) | |
!80 = !DILocalVariable(name: "class_infos_ptr", arg: 2, scope: !56, file: !2, line: 56, type: !59) | |
!81 = !DILocation(line: 56, scope: !56) | |
!82 = !DILocalVariable(name: "class_infos_byte_size", arg: 3, scope: !56, file: !2, line: 57, type: !37) | |
!83 = !DILocation(line: 57, scope: !56) | |
!84 = !DILocalVariable(name: "class_buffer", arg: 4, scope: !56, file: !2, line: 58, type: !59) | |
!85 = !DILocation(line: 58, scope: !56) | |
!86 = !DILocalVariable(name: "class_buffer_len", arg: 5, scope: !56, file: !2, line: 59, type: !37) | |
!87 = !DILocation(line: 59, scope: !56) | |
!88 = !DILocalVariable(name: "should_log", arg: 6, scope: !56, file: !2, line: 60, type: !37) | |
!89 = !DILocation(line: 60, scope: !56) | |
!90 = !DILocation(line: 62, scope: !91) | |
!91 = distinct !DILexicalBlock(scope: !56, file: !2, line: 62) | |
!92 = !DILocation(line: 62, scope: !56) | |
!93 = !DILocation(line: 63, scope: !94) | |
!94 = distinct !DILexicalBlock(scope: !56, file: !2, line: 63) | |
!95 = !DILocation(line: 63, scope: !56) | |
!96 = !DILocalVariable(name: "max_class_infos", scope: !56, file: !2, line: 65, type: !97) | |
!97 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !98) | |
!98 = !DIDerivedType(tag: DW_TAG_typedef, name: "size_t", file: !2, line: 29, baseType: !99) | |
!99 = !DIBasicType(name: "unsigned long", size: 64, encoding: DW_ATE_unsigned) | |
!100 = !DILocation(line: 65, scope: !56) | |
!101 = !DILocation(line: 66, scope: !102) | |
!102 = distinct !DILexicalBlock(scope: !56, file: !2, line: 66) | |
!103 = !DILocation(line: 66, scope: !56) | |
!104 = !DILocalVariable(name: "class_infos", scope: !56, file: !2, line: 68, type: !28) | |
!105 = !DILocation(line: 68, scope: !56) | |
!106 = !DILocalVariable(name: "realized_class_list", scope: !56, file: !2, line: 70, type: !39) | |
!107 = !DILocation(line: 70, scope: !56) | |
!108 = !DILocalVariable(name: "count", scope: !56, file: !2, line: 72, type: !37) | |
!109 = !DILocation(line: 72, scope: !56) | |
!110 = !DILocation(line: 73, scope: !56) | |
!111 = !DILocation(line: 74, scope: !112) | |
!112 = distinct !DILexicalBlock(scope: !56, file: !2, line: 74) | |
!113 = !DILocation(line: 74, scope: !56) | |
!114 = !DILocalVariable(name: "idx", scope: !56, file: !2, line: 76, type: !37) | |
!115 = !DILocation(line: 76, scope: !56) | |
!116 = !DILocalVariable(name: "i", scope: !117, file: !2, line: 77, type: !37) | |
!117 = distinct !DILexicalBlock(scope: !56, file: !2, line: 77) | |
!118 = !DILocation(line: 77, scope: !117) | |
!119 = !DILocation(line: 77, scope: !120) | |
!120 = distinct !DILexicalBlock(scope: !117, file: !2, line: 77) | |
!121 = !DILocation(line: 79, scope: !122) | |
!122 = distinct !DILexicalBlock(scope: !123, file: !2, line: 79) | |
!123 = distinct !DILexicalBlock(scope: !120, file: !2, line: 78) | |
!124 = !DILocation(line: 79, scope: !123) | |
!125 = !DILocalVariable(name: "isa", scope: !126, file: !2, line: 81, type: !32) | |
!126 = distinct !DILexicalBlock(scope: !122, file: !2, line: 80) | |
!127 = !DILocation(line: 81, scope: !126) | |
!128 = !DILocalVariable(name: "name_ptr", scope: !126, file: !2, line: 82, type: !129) | |
!129 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64) | |
!130 = !DILocation(line: 82, scope: !126) | |
!131 = !DILocation(line: 83, scope: !132) | |
!132 = distinct !DILexicalBlock(scope: !126, file: !2, line: 83) | |
!133 = !DILocation(line: 83, scope: !126) | |
!134 = !DILocation(line: 84, scope: !135) | |
!135 = distinct !DILexicalBlock(scope: !132, file: !2, line: 83) | |
!136 = !DILocation(line: 85, scope: !135) | |
!137 = !DILocation(line: 86, scope: !135) | |
!138 = !DILocation(line: 87, scope: !139) | |
!139 = distinct !DILexicalBlock(scope: !126, file: !2, line: 87) | |
!140 = !DILocation(line: 87, scope: !126) | |
!141 = !DILocation(line: 88, scope: !139) | |
!142 = !DILocalVariable(name: "s", scope: !126, file: !2, line: 89, type: !129) | |
!143 = !DILocation(line: 89, scope: !126) | |
!144 = !DILocalVariable(name: "h", scope: !126, file: !2, line: 90, type: !37) | |
!145 = !DILocation(line: 90, scope: !126) | |
!146 = !DILocalVariable(name: "c", scope: !147, file: !2, line: 91, type: !148) | |
!147 = distinct !DILexicalBlock(scope: !126, file: !2, line: 91) | |
!148 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char) | |
!149 = !DILocation(line: 91, scope: !147) | |
!150 = !DILocation(line: 91, scope: !151) | |
!151 = distinct !DILexicalBlock(scope: !147, file: !2, line: 91) | |
!152 = !DILocation(line: 92, scope: !151) | |
!153 = distinct !{!153, !149, !154, !155} | |
!154 = !DILocation(line: 92, scope: !147) | |
!155 = !{!"llvm.loop.mustprogress"} | |
!156 = !DILocation(line: 93, scope: !126) | |
!157 = !DILocation(line: 94, scope: !126) | |
!158 = !DILocation(line: 95, scope: !159) | |
!159 = distinct !DILexicalBlock(scope: !126, file: !2, line: 95) | |
!160 = !DILocation(line: 95, scope: !126) | |
!161 = !DILocation(line: 96, scope: !126) | |
!162 = !DILocation(line: 97, scope: !123) | |
!163 = !DILocation(line: 98, scope: !123) | |
!164 = distinct !{!164, !118, !165, !155} | |
!165 = !DILocation(line: 98, scope: !117) | |
!166 = !DILocation(line: 100, scope: !167) | |
!167 = distinct !DILexicalBlock(scope: !56, file: !2, line: 100) | |
!168 = !DILocation(line: 100, scope: !56) | |
!169 = !DILocation(line: 102, scope: !170) | |
!170 = distinct !DILexicalBlock(scope: !167, file: !2, line: 101) | |
!171 = !DILocation(line: 103, scope: !170) | |
!172 = !DILocation(line: 104, scope: !170) | |
!173 = !DILocation(line: 106, scope: !56) | |
" | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %gdb_objc_realized_classes_ptr.addr, metadata !78, metadata !DIExpression()), !dbg !79) | |
MaybeHandleVariable (ptr %gdb_objc_realized_classes_ptr.addr) | |
MaybeHandleVariable (!78 = !DILocalVariable(name: "gdb_objc_realized_classes_ptr", arg: 1, scope: !56, file: !2, line: 55, type: !59)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %class_infos_ptr.addr, metadata !80, metadata !DIExpression()), !dbg !81) | |
MaybeHandleVariable (ptr %class_infos_ptr.addr) | |
MaybeHandleVariable (!80 = !DILocalVariable(name: "class_infos_ptr", arg: 2, scope: !56, file: !2, line: 56, type: !59)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %class_infos_byte_size.addr, metadata !82, metadata !DIExpression()), !dbg !83) | |
MaybeHandleVariable (ptr %class_infos_byte_size.addr) | |
MaybeHandleVariable (!82 = !DILocalVariable(name: "class_infos_byte_size", arg: 3, scope: !56, file: !2, line: 57, type: !37)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %class_buffer.addr, metadata !84, metadata !DIExpression()), !dbg !85) | |
MaybeHandleVariable (ptr %class_buffer.addr) | |
MaybeHandleVariable (!84 = !DILocalVariable(name: "class_buffer", arg: 4, scope: !56, file: !2, line: 58, type: !59)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %class_buffer_len.addr, metadata !86, metadata !DIExpression()), !dbg !87) | |
MaybeHandleVariable (ptr %class_buffer_len.addr) | |
MaybeHandleVariable (!86 = !DILocalVariable(name: "class_buffer_len", arg: 5, scope: !56, file: !2, line: 59, type: !37)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %should_log.addr, metadata !88, metadata !DIExpression()), !dbg !89) | |
MaybeHandleVariable (ptr %should_log.addr) | |
MaybeHandleVariable (!88 = !DILocalVariable(name: "should_log", arg: 6, scope: !56, file: !2, line: 60, type: !37)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call = call i32 (ptr, ...) @printf(ptr @.str, ptr %1) #3, !dbg !90) | |
MaybeHandleVariable (@.str = private unnamed_addr constant [22 x i8] c"class_infos_ptr = %p\0A\00", align 1, !dbg !0) | |
MaybeHandleVariable ( %1 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !90) | |
MaybeHandleCallArguments( %call3 = call i32 (ptr, ...) @printf(ptr @.str.1, i32 %3) #3, !dbg !93) | |
MaybeHandleVariable (@.str.1 = private unnamed_addr constant [28 x i8] c"class_infos_byte_size = %u\0A\00", align 1, !dbg !8) | |
MaybeHandleVariable ( %3 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !93) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %max_class_infos, metadata !96, metadata !DIExpression()), !dbg !100) | |
MaybeHandleVariable (ptr %max_class_infos) | |
MaybeHandleVariable (!96 = !DILocalVariable(name: "max_class_infos", scope: !56, file: !2, line: 65, type: !97)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call7 = call i32 (ptr, ...) @printf(ptr @.str.2, i64 %6) #3, !dbg !101) | |
MaybeHandleVariable (@.str.2 = private unnamed_addr constant [22 x i8] c"max_class_infos = %u\0A\00", align 1, !dbg !13) | |
MaybeHandleVariable ( %6 = load i64, ptr %max_class_infos, align 8, !dbg !101) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %class_infos, metadata !104, metadata !DIExpression()), !dbg !105) | |
MaybeHandleVariable (ptr %class_infos) | |
MaybeHandleVariable (!104 = !DILocalVariable(name: "class_infos", scope: !56, file: !2, line: 68, type: !28)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %realized_class_list, metadata !106, metadata !DIExpression()), !dbg !107) | |
MaybeHandleVariable (ptr %realized_class_list) | |
MaybeHandleVariable (!106 = !DILocalVariable(name: "realized_class_list", scope: !56, file: !2, line: 70, type: !39)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %count, metadata !108, metadata !DIExpression()), !dbg !109) | |
MaybeHandleVariable (ptr %count) | |
MaybeHandleVariable (!108 = !DILocalVariable(name: "count", scope: !56, file: !2, line: 72, type: !37)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call10 = call i64 @objc_getRealizedClassList_trylock(ptr %9, i64 %conv9) #3, !dbg !109) | |
MaybeHandleVariable ( %9 = load ptr, ptr %realized_class_list, align 8, !dbg !109) | |
MaybeHandleVariable ( %conv9 = zext i32 %10 to i64, !dbg !110) | |
MaybeHandleCallArguments( %call14 = call i32 (ptr, ...) @printf(ptr @.str.3, i32 %12) #3, !dbg !111) | |
MaybeHandleVariable (@.str.3 = private unnamed_addr constant [12 x i8] c"count = %u\0A\00", align 1, !dbg !15) | |
MaybeHandleVariable ( %12 = load i32, ptr %count, align 4, !dbg !111) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %idx, metadata !114, metadata !DIExpression()), !dbg !115) | |
MaybeHandleVariable (ptr %idx) | |
MaybeHandleVariable (!114 = !DILocalVariable(name: "idx", scope: !56, file: !2, line: 76, type: !37)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %i, metadata !116, metadata !DIExpression()), !dbg !118) | |
MaybeHandleVariable (ptr %i) | |
MaybeHandleVariable (!116 = !DILocalVariable(name: "i", scope: !117, file: !2, line: 77, type: !37)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %isa, metadata !125, metadata !DIExpression()), !dbg !127) | |
MaybeHandleVariable (ptr %isa) | |
MaybeHandleVariable (!125 = !DILocalVariable(name: "isa", scope: !126, file: !2, line: 81, type: !32)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %name_ptr, metadata !128, metadata !DIExpression()), !dbg !130) | |
MaybeHandleVariable (ptr %name_ptr) | |
MaybeHandleVariable (!128 = !DILocalVariable(name: "name_ptr", scope: !126, file: !2, line: 82, type: !129)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call19 = call ptr @objc_debug_class_getNameRaw(ptr %20) #3, !dbg !130) | |
MaybeHandleVariable ( %20 = load ptr, ptr %isa, align 8, !dbg !130) | |
MaybeHandleCallArguments( %call22 = call ptr @class_getName(ptr %22) #3, !dbg !134) | |
MaybeHandleVariable ( %22 = load ptr, ptr %isa, align 8, !dbg !134) | |
MaybeHandleCallArguments( %call23 = call ptr @objc_debug_class_getNameRaw(ptr %23) #3, !dbg !136) | |
MaybeHandleVariable ( %23 = load ptr, ptr %isa, align 8, !dbg !136) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %s, metadata !142, metadata !DIExpression()), !dbg !143) | |
MaybeHandleVariable (ptr %s) | |
MaybeHandleVariable (!142 = !DILocalVariable(name: "s", scope: !126, file: !2, line: 89, type: !129)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %h, metadata !144, metadata !DIExpression()), !dbg !145) | |
MaybeHandleVariable (ptr %h) | |
MaybeHandleVariable (!144 = !DILocalVariable(name: "h", scope: !126, file: !2, line: 90, type: !37)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %c, metadata !146, metadata !DIExpression()), !dbg !149) | |
MaybeHandleVariable (ptr %c) | |
MaybeHandleVariable (!146 = !DILocalVariable(name: "c", scope: !147, file: !2, line: 91, type: !148)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call43 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %41, ptr %44, ptr %45) #3, !dbg !158) | |
MaybeHandleVariable (@.str.4 = private unnamed_addr constant [19 x i8] c"[%u] isa = %8p %s\0A\00", align 1, !dbg !20) | |
MaybeHandleVariable ( %41 = load i32, ptr %idx, align 4, !dbg !158) | |
MaybeHandleVariable ( %44 = load ptr, ptr %isa42, align 1, !dbg !158) | |
MaybeHandleVariable ( %45 = load ptr, ptr %name_ptr, align 8, !dbg !158) | |
Examining .str, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.1, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.2, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.3, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.4, DeclForGlobalValue returns 0x0000000000000000 | |
Examining reloc_placeholder, DeclForGlobalValue returns 0x0000000000000000 | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.ClassInfo = type <{ ptr, i32 }> | |
@.str = private unnamed_addr constant [22 x i8] c"class_infos_ptr = %p\0A\00", align 1, !dbg !0 | |
@.str.1 = private unnamed_addr constant [28 x i8] c"class_infos_byte_size = %u\0A\00", align 1, !dbg !8 | |
@.str.2 = private unnamed_addr constant [22 x i8] c"max_class_infos = %u\0A\00", align 1, !dbg !13 | |
@.str.3 = private unnamed_addr constant [12 x i8] c"count = %u\0A\00", align 1, !dbg !15 | |
@.str.4 = private unnamed_addr constant [19 x i8] c"[%u] isa = %8p %s\0A\00", align 1, !dbg !20 | |
@reloc_placeholder = internal global i8 0 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define i32 @_Z44__lldb_apple_objc_v2_get_dynamic_class_info3PvS_jS_jj(ptr %gdb_objc_realized_classes_ptr, ptr %class_infos_ptr, i32 %class_infos_byte_size, ptr %class_buffer, i32 %class_buffer_len, i32 %should_log) #0 !dbg !56 { | |
entry: | |
%gdb_objc_realized_classes_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !61 | |
%class_infos_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !62 | |
%class_infos_byte_size.addr = alloca i32, align 4, !clang.decl.ptr !63 | |
%class_buffer.addr = alloca ptr, align 8, !clang.decl.ptr !64 | |
%class_buffer_len.addr = alloca i32, align 4, !clang.decl.ptr !65 | |
%should_log.addr = alloca i32, align 4, !clang.decl.ptr !66 | |
%max_class_infos = alloca i64, align 8, !clang.decl.ptr !67 | |
%class_infos = alloca ptr, align 8, !clang.decl.ptr !68 | |
%realized_class_list = alloca ptr, align 8, !clang.decl.ptr !69 | |
%count = alloca i32, align 4, !clang.decl.ptr !70 | |
%idx = alloca i32, align 4, !clang.decl.ptr !71 | |
%i = alloca i32, align 4, !clang.decl.ptr !72 | |
%isa = alloca ptr, align 8, !clang.decl.ptr !73 | |
%name_ptr = alloca ptr, align 8, !clang.decl.ptr !74 | |
%s = alloca ptr, align 8, !clang.decl.ptr !75 | |
%h = alloca i32, align 4, !clang.decl.ptr !76 | |
%c = alloca i8, align 1, !clang.decl.ptr !77 | |
store ptr %gdb_objc_realized_classes_ptr, ptr %gdb_objc_realized_classes_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %gdb_objc_realized_classes_ptr.addr, metadata !78, metadata !DIExpression()), !dbg !79 | |
store ptr %class_infos_ptr, ptr %class_infos_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %class_infos_ptr.addr, metadata !80, metadata !DIExpression()), !dbg !81 | |
store i32 %class_infos_byte_size, ptr %class_infos_byte_size.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %class_infos_byte_size.addr, metadata !82, metadata !DIExpression()), !dbg !83 | |
store ptr %class_buffer, ptr %class_buffer.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %class_buffer.addr, metadata !84, metadata !DIExpression()), !dbg !85 | |
store i32 %class_buffer_len, ptr %class_buffer_len.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %class_buffer_len.addr, metadata !86, metadata !DIExpression()), !dbg !87 | |
store i32 %should_log, ptr %should_log.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %should_log.addr, metadata !88, metadata !DIExpression()), !dbg !89 | |
%0 = load i32, ptr %should_log.addr, align 4, !dbg !90 | |
%tobool = icmp ne i32 %0, 0, !dbg !90 | |
br i1 %tobool, label %if.then, label %if.end, !dbg !92 | |
if.then: ; preds = %entry | |
%1 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !90 | |
%call = call i32 (ptr, ...) @printf(ptr @.str, ptr %1) #3, !dbg !90 | |
br label %if.end, !dbg !90 | |
if.end: ; preds = %if.then, %entry | |
%2 = load i32, ptr %should_log.addr, align 4, !dbg !93 | |
%tobool1 = icmp ne i32 %2, 0, !dbg !93 | |
br i1 %tobool1, label %if.then2, label %if.end4, !dbg !95 | |
if.then2: ; preds = %if.end | |
%3 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !93 | |
%call3 = call i32 (ptr, ...) @printf(ptr @.str.1, i32 %3) #3, !dbg !93 | |
br label %if.end4, !dbg !93 | |
if.end4: ; preds = %if.then2, %if.end | |
call void @llvm.dbg.declare(metadata ptr %max_class_infos, metadata !96, metadata !DIExpression()), !dbg !100 | |
%4 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !100 | |
%conv = zext i32 %4 to i64, !dbg !100 | |
%div = udiv i64 %conv, 12, !dbg !100 | |
store i64 %div, ptr %max_class_infos, align 8, !dbg !100 | |
%5 = load i32, ptr %should_log.addr, align 4, !dbg !101 | |
%tobool5 = icmp ne i32 %5, 0, !dbg !101 | |
br i1 %tobool5, label %if.then6, label %if.end8, !dbg !103 | |
if.then6: ; preds = %if.end4 | |
%6 = load i64, ptr %max_class_infos, align 8, !dbg !101 | |
%call7 = call i32 (ptr, ...) @printf(ptr @.str.2, i64 %6) #3, !dbg !101 | |
br label %if.end8, !dbg !101 | |
if.end8: ; preds = %if.then6, %if.end4 | |
call void @llvm.dbg.declare(metadata ptr %class_infos, metadata !104, metadata !DIExpression()), !dbg !105 | |
%7 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !105 | |
store ptr %7, ptr %class_infos, align 8, !dbg !105 | |
call void @llvm.dbg.declare(metadata ptr %realized_class_list, metadata !106, metadata !DIExpression()), !dbg !107 | |
%8 = load ptr, ptr %class_buffer.addr, align 8, !dbg !107 | |
store ptr %8, ptr %realized_class_list, align 8, !dbg !107 | |
call void @llvm.dbg.declare(metadata ptr %count, metadata !108, metadata !DIExpression()), !dbg !109 | |
%9 = load ptr, ptr %realized_class_list, align 8, !dbg !109 | |
%10 = load i32, ptr %class_buffer_len.addr, align 4, !dbg !110 | |
%conv9 = zext i32 %10 to i64, !dbg !110 | |
%call10 = call i64 @objc_getRealizedClassList_trylock(ptr %9, i64 %conv9) #3, !dbg !109 | |
%conv11 = trunc i64 %call10 to i32, !dbg !109 | |
store i32 %conv11, ptr %count, align 4, !dbg !109 | |
%11 = load i32, ptr %should_log.addr, align 4, !dbg !111 | |
%tobool12 = icmp ne i32 %11, 0, !dbg !111 | |
br i1 %tobool12, label %if.then13, label %if.end15, !dbg !113 | |
if.then13: ; preds = %if.end8 | |
%12 = load i32, ptr %count, align 4, !dbg !111 | |
%call14 = call i32 (ptr, ...) @printf(ptr @.str.3, i32 %12) #3, !dbg !111 | |
br label %if.end15, !dbg !111 | |
if.end15: ; preds = %if.then13, %if.end8 | |
call void @llvm.dbg.declare(metadata ptr %idx, metadata !114, metadata !DIExpression()), !dbg !115 | |
store i32 0, ptr %idx, align 4, !dbg !115 | |
call void @llvm.dbg.declare(metadata ptr %i, metadata !116, metadata !DIExpression()), !dbg !118 | |
store i32 0, ptr %i, align 4, !dbg !118 | |
br label %for.cond, !dbg !118 | |
for.cond: ; preds = %for.inc46, %if.end15 | |
%13 = load i32, ptr %i, align 4, !dbg !119 | |
%14 = load i32, ptr %count, align 4, !dbg !119 | |
%cmp = icmp ult i32 %13, %14, !dbg !119 | |
br i1 %cmp, label %for.body, label %for.end48, !dbg !118 | |
for.body: ; preds = %for.cond | |
%15 = load i32, ptr %idx, align 4, !dbg !121 | |
%conv16 = zext i32 %15 to i64, !dbg !121 | |
%16 = load i64, ptr %max_class_infos, align 8, !dbg !121 | |
%cmp17 = icmp ult i64 %conv16, %16, !dbg !121 | |
br i1 %cmp17, label %if.then18, label %if.end45, !dbg !124 | |
if.then18: ; preds = %for.body | |
call void @llvm.dbg.declare(metadata ptr %isa, metadata !125, metadata !DIExpression()), !dbg !127 | |
%17 = load ptr, ptr %realized_class_list, align 8, !dbg !127 | |
%18 = load i32, ptr %i, align 4, !dbg !127 | |
%idxprom = zext i32 %18 to i64, !dbg !127 | |
%arrayidx = getelementptr inbounds ptr, ptr %17, i64 %idxprom, !dbg !127 | |
%19 = load ptr, ptr %arrayidx, align 8, !dbg !127 | |
store ptr %19, ptr %isa, align 8, !dbg !127 | |
call void @llvm.dbg.declare(metadata ptr %name_ptr, metadata !128, metadata !DIExpression()), !dbg !130 | |
%20 = load ptr, ptr %isa, align 8, !dbg !130 | |
%call19 = call ptr @objc_debug_class_getNameRaw(ptr %20) #3, !dbg !130 | |
store ptr %call19, ptr %name_ptr, align 8, !dbg !130 | |
%21 = load ptr, ptr %name_ptr, align 8, !dbg !131 | |
%tobool20 = icmp ne ptr %21, null, !dbg !131 | |
br i1 %tobool20, label %if.end24, label %if.then21, !dbg !133 | |
if.then21: ; preds = %if.then18 | |
%22 = load ptr, ptr %isa, align 8, !dbg !134 | |
%call22 = call ptr @class_getName(ptr %22) #3, !dbg !134 | |
%23 = load ptr, ptr %isa, align 8, !dbg !136 | |
%call23 = call ptr @objc_debug_class_getNameRaw(ptr %23) #3, !dbg !136 | |
store ptr %call23, ptr %name_ptr, align 8, !dbg !136 | |
br label %if.end24, !dbg !137 | |
if.end24: ; preds = %if.then21, %if.then18 | |
%24 = load ptr, ptr %name_ptr, align 8, !dbg !138 | |
%tobool25 = icmp ne ptr %24, null, !dbg !138 | |
br i1 %tobool25, label %if.end27, label %if.then26, !dbg !140 | |
if.then26: ; preds = %if.end24 | |
br label %for.inc46, !dbg !141 | |
if.end27: ; preds = %if.end24 | |
call void @llvm.dbg.declare(metadata ptr %s, metadata !142, metadata !DIExpression()), !dbg !143 | |
%25 = load ptr, ptr %name_ptr, align 8, !dbg !143 | |
store ptr %25, ptr %s, align 8, !dbg !143 | |
call void @llvm.dbg.declare(metadata ptr %h, metadata !144, metadata !DIExpression()), !dbg !145 | |
store i32 5381, ptr %h, align 4, !dbg !145 | |
call void @llvm.dbg.declare(metadata ptr %c, metadata !146, metadata !DIExpression()), !dbg !149 | |
%26 = load ptr, ptr %s, align 8, !dbg !149 | |
%27 = load i8, ptr %26, align 1, !dbg !149 | |
store i8 %27, ptr %c, align 1, !dbg !149 | |
br label %for.cond28, !dbg !149 | |
for.cond28: ; preds = %for.inc, %if.end27 | |
%28 = load i8, ptr %c, align 1, !dbg !150 | |
%tobool29 = icmp ne i8 %28, 0, !dbg !150 | |
br i1 %tobool29, label %for.body30, label %for.end, !dbg !149 | |
for.body30: ; preds = %for.cond28 | |
%29 = load i32, ptr %h, align 4, !dbg !152 | |
%shl = shl i32 %29, 5, !dbg !152 | |
%30 = load i32, ptr %h, align 4, !dbg !152 | |
%add = add i32 %shl, %30, !dbg !152 | |
%31 = load i8, ptr %c, align 1, !dbg !152 | |
%conv31 = zext i8 %31 to i32, !dbg !152 | |
%add32 = add i32 %add, %conv31, !dbg !152 | |
store i32 %add32, ptr %h, align 4, !dbg !152 | |
br label %for.inc, !dbg !152 | |
for.inc: ; preds = %for.body30 | |
%32 = load ptr, ptr %s, align 8, !dbg !150 | |
%incdec.ptr = getelementptr inbounds i8, ptr %32, i32 1, !dbg !150 | |
store ptr %incdec.ptr, ptr %s, align 8, !dbg !150 | |
%33 = load i8, ptr %incdec.ptr, align 1, !dbg !150 | |
store i8 %33, ptr %c, align 1, !dbg !150 | |
br label %for.cond28, !dbg !150, !llvm.loop !153 | |
for.end: ; preds = %for.cond28 | |
%34 = load i32, ptr %h, align 4, !dbg !156 | |
%35 = load ptr, ptr %class_infos, align 8, !dbg !156 | |
%36 = load i32, ptr %idx, align 4, !dbg !156 | |
%idxprom33 = zext i32 %36 to i64, !dbg !156 | |
%arrayidx34 = getelementptr inbounds %struct.ClassInfo, ptr %35, i64 %idxprom33, !dbg !156 | |
%hash = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx34, i32 0, i32 1, !dbg !156 | |
store i32 %34, ptr %hash, align 1, !dbg !156 | |
%37 = load ptr, ptr %isa, align 8, !dbg !157 | |
%38 = load ptr, ptr %class_infos, align 8, !dbg !157 | |
%39 = load i32, ptr %idx, align 4, !dbg !157 | |
%idxprom35 = zext i32 %39 to i64, !dbg !157 | |
%arrayidx36 = getelementptr inbounds %struct.ClassInfo, ptr %38, i64 %idxprom35, !dbg !157 | |
%isa37 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx36, i32 0, i32 0, !dbg !157 | |
store ptr %37, ptr %isa37, align 1, !dbg !157 | |
%40 = load i32, ptr %should_log.addr, align 4, !dbg !158 | |
%tobool38 = icmp ne i32 %40, 0, !dbg !158 | |
br i1 %tobool38, label %if.then39, label %if.end44, !dbg !160 | |
if.then39: ; preds = %for.end | |
%41 = load i32, ptr %idx, align 4, !dbg !158 | |
%42 = load ptr, ptr %class_infos, align 8, !dbg !158 | |
%43 = load i32, ptr %idx, align 4, !dbg !158 | |
%idxprom40 = zext i32 %43 to i64, !dbg !158 | |
%arrayidx41 = getelementptr inbounds %struct.ClassInfo, ptr %42, i64 %idxprom40, !dbg !158 | |
%isa42 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx41, i32 0, i32 0, !dbg !158 | |
%44 = load ptr, ptr %isa42, align 1, !dbg !158 | |
%45 = load ptr, ptr %name_ptr, align 8, !dbg !158 | |
%call43 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %41, ptr %44, ptr %45) #3, !dbg !158 | |
br label %if.end44, !dbg !158 | |
if.end44: ; preds = %if.then39, %for.end | |
br label %if.end45, !dbg !161 | |
if.end45: ; preds = %if.end44, %for.body | |
%46 = load i32, ptr %idx, align 4, !dbg !162 | |
%inc = add i32 %46, 1, !dbg !162 | |
store i32 %inc, ptr %idx, align 4, !dbg !162 | |
br label %for.inc46, !dbg !163 | |
for.inc46: ; preds = %if.end45, %if.then26 | |
%47 = load i32, ptr %i, align 4, !dbg !119 | |
%inc47 = add i32 %47, 1, !dbg !119 | |
store i32 %inc47, ptr %i, align 4, !dbg !119 | |
br label %for.cond, !dbg !119, !llvm.loop !164 | |
for.end48: ; preds = %for.cond | |
%48 = load i32, ptr %idx, align 4, !dbg !166 | |
%conv49 = zext i32 %48 to i64, !dbg !166 | |
%49 = load i64, ptr %max_class_infos, align 8, !dbg !166 | |
%cmp50 = icmp ult i64 %conv49, %49, !dbg !166 | |
br i1 %cmp50, label %if.then51, label %if.end58, !dbg !168 | |
if.then51: ; preds = %for.end48 | |
%50 = load ptr, ptr %class_infos, align 8, !dbg !169 | |
%51 = load i32, ptr %idx, align 4, !dbg !169 | |
%idxprom52 = zext i32 %51 to i64, !dbg !169 | |
%arrayidx53 = getelementptr inbounds %struct.ClassInfo, ptr %50, i64 %idxprom52, !dbg !169 | |
%isa54 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx53, i32 0, i32 0, !dbg !169 | |
store ptr null, ptr %isa54, align 1, !dbg !169 | |
%52 = load ptr, ptr %class_infos, align 8, !dbg !171 | |
%53 = load i32, ptr %idx, align 4, !dbg !171 | |
%idxprom55 = zext i32 %53 to i64, !dbg !171 | |
%arrayidx56 = getelementptr inbounds %struct.ClassInfo, ptr %52, i64 %idxprom55, !dbg !171 | |
%hash57 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx56, i32 0, i32 1, !dbg !171 | |
store i32 0, ptr %hash57, align 1, !dbg !171 | |
br label %if.end58, !dbg !172 | |
if.end58: ; preds = %if.then51, %for.end48 | |
%54 = load i32, ptr %count, align 4, !dbg !173 | |
ret i32 %54, !dbg !173 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 | |
; Function Attrs: convergent | |
declare i32 @printf(ptr, ...) #2 | |
; Function Attrs: convergent | |
declare i64 @objc_getRealizedClassList_trylock(ptr, i64) #2 | |
; Function Attrs: convergent | |
declare ptr @objc_debug_class_getNameRaw(ptr) #2 | |
; Function Attrs: convergent | |
declare ptr @class_getName(ptr) #2 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
attributes #2 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #3 = { convergent "no-builtins" } | |
!llvm.dbg.cu = !{!25} | |
!llvm.module.flags = !{!41, !42, !43, !44, !45, !46, !47, !48, !49} | |
!clang.global.decl.ptrs = !{!50, !51, !52, !53, !54} | |
!llvm.ident = !{!55} | |
!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression()) | |
!1 = distinct !DIGlobalVariable(scope: null, file: !2, line: 62, type: !3, isLocal: true, isDefinition: true) | |
!2 = !DIFile(filename: "<lldb wrapper prefix>", directory: "/") | |
!3 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 176, elements: !6) | |
!4 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !5) | |
!5 = !DIBasicType(name: "char", size: 8, encoding: DW_ATE_signed_char) | |
!6 = !{!7} | |
!7 = !DISubrange(count: 22) | |
!8 = !DIGlobalVariableExpression(var: !9, expr: !DIExpression()) | |
!9 = distinct !DIGlobalVariable(scope: null, file: !2, line: 63, type: !10, isLocal: true, isDefinition: true) | |
!10 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 224, elements: !11) | |
!11 = !{!12} | |
!12 = !DISubrange(count: 28) | |
!13 = !DIGlobalVariableExpression(var: !14, expr: !DIExpression()) | |
!14 = distinct !DIGlobalVariable(scope: null, file: !2, line: 66, type: !3, isLocal: true, isDefinition: true) | |
!15 = !DIGlobalVariableExpression(var: !16, expr: !DIExpression()) | |
!16 = distinct !DIGlobalVariable(scope: null, file: !2, line: 74, type: !17, isLocal: true, isDefinition: true) | |
!17 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 96, elements: !18) | |
!18 = !{!19} | |
!19 = !DISubrange(count: 12) | |
!20 = !DIGlobalVariableExpression(var: !21, expr: !DIExpression()) | |
!21 = distinct !DIGlobalVariable(scope: null, file: !2, line: 95, type: !22, isLocal: true, isDefinition: true) | |
!22 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 152, elements: !23) | |
!23 = !{!24} | |
!24 = !DISubrange(count: 19) | |
!25 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !26, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug, retainedTypes: !27, globals: !40) | |
!26 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!27 = !{!28, !39} | |
!28 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !29, size: 64) | |
!29 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "ClassInfo", file: !2, line: 48, size: 96, flags: DIFlagTypePassByValue, elements: !30, identifier: "_ZTS9ClassInfo") | |
!30 = !{!31, !36} | |
!31 = !DIDerivedType(tag: DW_TAG_member, name: "isa", scope: !29, file: !2, line: 50, baseType: !32, size: 64) | |
!32 = !DIDerivedType(tag: DW_TAG_typedef, name: "Class", file: !33, baseType: !34) | |
!33 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "") | |
!34 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !35, size: 64) | |
!35 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_class", file: !26, flags: DIFlagFwdDecl) | |
!36 = !DIDerivedType(tag: DW_TAG_member, name: "hash", scope: !29, file: !2, line: 51, baseType: !37, size: 32, offset: 64) | |
!37 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint32_t", file: !2, line: 24, baseType: !38) | |
!38 = !DIBasicType(name: "unsigned int", size: 32, encoding: DW_ATE_unsigned) | |
!39 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !32, size: 64) | |
!40 = !{!0, !8, !13, !15, !20} | |
!41 = !{i32 1, !"Objective-C Version", i32 2} | |
!42 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!43 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!44 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!45 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!46 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!47 = !{i32 2, !"Debug Info Version", i32 3} | |
!48 = !{i32 1, !"wchar_size", i32 4} | |
!49 = !{i32 7, !"frame-pointer", i32 2} | |
!50 = !{ptr @_Z44__lldb_apple_objc_v2_get_dynamic_class_info3PvS_jS_jj, i64 4962055680} | |
!51 = !{ptr @printf, i64 4961922488} | |
!52 = !{ptr @objc_getRealizedClassList_trylock, i64 4962027368} | |
!53 = !{ptr @objc_debug_class_getNameRaw, i64 4962027872} | |
!54 = !{ptr @class_getName, i64 4962028264} | |
!55 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!56 = distinct !DISubprogram(name: "__lldb_apple_objc_v2_get_dynamic_class_info3", linkageName: "_Z44__lldb_apple_objc_v2_get_dynamic_class_info3PvS_jS_jj", scope: !2, file: !2, line: 55, type: !57, scopeLine: 61, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !25, retainedNodes: !60) | |
!57 = !DISubroutineType(types: !58) | |
!58 = !{!37, !59, !59, !37, !59, !37, !37} | |
!59 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64) | |
!60 = !{} | |
!61 = !{i64 4962029320} | |
!62 = !{i64 4962029448} | |
!63 = !{i64 4962029568} | |
!64 = !{i64 4962029696} | |
!65 = !{i64 4962029816} | |
!66 = !{i64 4962029936} | |
!67 = !{i64 4962057080} | |
!68 = !{i64 4962058280} | |
!69 = !{i64 4962058576} | |
!70 = !{i64 4962058864} | |
!71 = !{i64 4961962216} | |
!72 = !{i64 4961962440} | |
!73 = !{i64 4961963032} | |
!74 = !{i64 4961963376} | |
!75 = !{i64 4961964696} | |
!76 = !{i64 4961964920} | |
!77 = !{i64 4961965152} | |
!78 = !DILocalVariable(name: "gdb_objc_realized_classes_ptr", arg: 1, scope: !56, file: !2, line: 55, type: !59) | |
!79 = !DILocation(line: 55, scope: !56) | |
!80 = !DILocalVariable(name: "class_infos_ptr", arg: 2, scope: !56, file: !2, line: 56, type: !59) | |
!81 = !DILocation(line: 56, scope: !56) | |
!82 = !DILocalVariable(name: "class_infos_byte_size", arg: 3, scope: !56, file: !2, line: 57, type: !37) | |
!83 = !DILocation(line: 57, scope: !56) | |
!84 = !DILocalVariable(name: "class_buffer", arg: 4, scope: !56, file: !2, line: 58, type: !59) | |
!85 = !DILocation(line: 58, scope: !56) | |
!86 = !DILocalVariable(name: "class_buffer_len", arg: 5, scope: !56, file: !2, line: 59, type: !37) | |
!87 = !DILocation(line: 59, scope: !56) | |
!88 = !DILocalVariable(name: "should_log", arg: 6, scope: !56, file: !2, line: 60, type: !37) | |
!89 = !DILocation(line: 60, scope: !56) | |
!90 = !DILocation(line: 62, scope: !91) | |
!91 = distinct !DILexicalBlock(scope: !56, file: !2, line: 62) | |
!92 = !DILocation(line: 62, scope: !56) | |
!93 = !DILocation(line: 63, scope: !94) | |
!94 = distinct !DILexicalBlock(scope: !56, file: !2, line: 63) | |
!95 = !DILocation(line: 63, scope: !56) | |
!96 = !DILocalVariable(name: "max_class_infos", scope: !56, file: !2, line: 65, type: !97) | |
!97 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !98) | |
!98 = !DIDerivedType(tag: DW_TAG_typedef, name: "size_t", file: !2, line: 29, baseType: !99) | |
!99 = !DIBasicType(name: "unsigned long", size: 64, encoding: DW_ATE_unsigned) | |
!100 = !DILocation(line: 65, scope: !56) | |
!101 = !DILocation(line: 66, scope: !102) | |
!102 = distinct !DILexicalBlock(scope: !56, file: !2, line: 66) | |
!103 = !DILocation(line: 66, scope: !56) | |
!104 = !DILocalVariable(name: "class_infos", scope: !56, file: !2, line: 68, type: !28) | |
!105 = !DILocation(line: 68, scope: !56) | |
!106 = !DILocalVariable(name: "realized_class_list", scope: !56, file: !2, line: 70, type: !39) | |
!107 = !DILocation(line: 70, scope: !56) | |
!108 = !DILocalVariable(name: "count", scope: !56, file: !2, line: 72, type: !37) | |
!109 = !DILocation(line: 72, scope: !56) | |
!110 = !DILocation(line: 73, scope: !56) | |
!111 = !DILocation(line: 74, scope: !112) | |
!112 = distinct !DILexicalBlock(scope: !56, file: !2, line: 74) | |
!113 = !DILocation(line: 74, scope: !56) | |
!114 = !DILocalVariable(name: "idx", scope: !56, file: !2, line: 76, type: !37) | |
!115 = !DILocation(line: 76, scope: !56) | |
!116 = !DILocalVariable(name: "i", scope: !117, file: !2, line: 77, type: !37) | |
!117 = distinct !DILexicalBlock(scope: !56, file: !2, line: 77) | |
!118 = !DILocation(line: 77, scope: !117) | |
!119 = !DILocation(line: 77, scope: !120) | |
!120 = distinct !DILexicalBlock(scope: !117, file: !2, line: 77) | |
!121 = !DILocation(line: 79, scope: !122) | |
!122 = distinct !DILexicalBlock(scope: !123, file: !2, line: 79) | |
!123 = distinct !DILexicalBlock(scope: !120, file: !2, line: 78) | |
!124 = !DILocation(line: 79, scope: !123) | |
!125 = !DILocalVariable(name: "isa", scope: !126, file: !2, line: 81, type: !32) | |
!126 = distinct !DILexicalBlock(scope: !122, file: !2, line: 80) | |
!127 = !DILocation(line: 81, scope: !126) | |
!128 = !DILocalVariable(name: "name_ptr", scope: !126, file: !2, line: 82, type: !129) | |
!129 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64) | |
!130 = !DILocation(line: 82, scope: !126) | |
!131 = !DILocation(line: 83, scope: !132) | |
!132 = distinct !DILexicalBlock(scope: !126, file: !2, line: 83) | |
!133 = !DILocation(line: 83, scope: !126) | |
!134 = !DILocation(line: 84, scope: !135) | |
!135 = distinct !DILexicalBlock(scope: !132, file: !2, line: 83) | |
!136 = !DILocation(line: 85, scope: !135) | |
!137 = !DILocation(line: 86, scope: !135) | |
!138 = !DILocation(line: 87, scope: !139) | |
!139 = distinct !DILexicalBlock(scope: !126, file: !2, line: 87) | |
!140 = !DILocation(line: 87, scope: !126) | |
!141 = !DILocation(line: 88, scope: !139) | |
!142 = !DILocalVariable(name: "s", scope: !126, file: !2, line: 89, type: !129) | |
!143 = !DILocation(line: 89, scope: !126) | |
!144 = !DILocalVariable(name: "h", scope: !126, file: !2, line: 90, type: !37) | |
!145 = !DILocation(line: 90, scope: !126) | |
!146 = !DILocalVariable(name: "c", scope: !147, file: !2, line: 91, type: !148) | |
!147 = distinct !DILexicalBlock(scope: !126, file: !2, line: 91) | |
!148 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char) | |
!149 = !DILocation(line: 91, scope: !147) | |
!150 = !DILocation(line: 91, scope: !151) | |
!151 = distinct !DILexicalBlock(scope: !147, file: !2, line: 91) | |
!152 = !DILocation(line: 92, scope: !151) | |
!153 = distinct !{!153, !149, !154, !155} | |
!154 = !DILocation(line: 92, scope: !147) | |
!155 = !{!"llvm.loop.mustprogress"} | |
!156 = !DILocation(line: 93, scope: !126) | |
!157 = !DILocation(line: 94, scope: !126) | |
!158 = !DILocation(line: 95, scope: !159) | |
!159 = distinct !DILexicalBlock(scope: !126, file: !2, line: 95) | |
!160 = !DILocation(line: 95, scope: !126) | |
!161 = !DILocation(line: 96, scope: !126) | |
!162 = !DILocation(line: 97, scope: !123) | |
!163 = !DILocation(line: 98, scope: !123) | |
!164 = distinct !{!164, !118, !165, !155} | |
!165 = !DILocation(line: 98, scope: !117) | |
!166 = !DILocation(line: 100, scope: !167) | |
!167 = distinct !DILexicalBlock(scope: !56, file: !2, line: 100) | |
!168 = !DILocation(line: 100, scope: !56) | |
!169 = !DILocation(line: 102, scope: !170) | |
!170 = distinct !DILexicalBlock(scope: !167, file: !2, line: 101) | |
!171 = !DILocation(line: 103, scope: !170) | |
!172 = !DILocation(line: 104, scope: !170) | |
!173 = !DILocation(line: 106, scope: !56) | |
IRExecutionUnit::allocateCodeSection(Size=0x397, Alignment=8, SectionID=0) = 0x100898000 | |
IRExecutionUnit::allocateDataSection(Size=0x75, Alignment=8, SectionID=1) = 0x1055f8000 | |
IRExecutionUnit::allocateDataSection(Size=0xf, Alignment=8, SectionID=2) = 0x1055f8078 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=3) = 0x1055f8088 | |
IRExecutionUnit::allocateDataSection(Size=0xe6, Alignment=8, SectionID=4) = 0x1055f80a0 | |
IRExecutionUnit::allocateDataSection(Size=0x2d0, Alignment=8, SectionID=5) = 0x1055f8188 | |
IRExecutionUnit::allocateDataSection(Size=0x219, Alignment=8, SectionID=6) = 0x1055f8458 | |
IRExecutionUnit::allocateDataSection(Size=0x92, Alignment=8, SectionID=7) = 0x1055f8678 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=8) = 0x1055f8710 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=9) = 0x1055f8748 | |
IRExecutionUnit::allocateDataSection(Size=0x14d, Alignment=8, SectionID=10) = 0x1055f8780 | |
IRExecutionUnit::allocateDataSection(Size=0xc1, Alignment=8, SectionID=11) = 0x1055f88d0 | |
IRMemoryMap::Malloc (927, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11ceec000 | |
IRMemoryMap::Malloc (127, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8000 | |
IRMemoryMap::Malloc (23, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8080 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f80a0 | |
IRExecutionUnit::getSymbolAddress(Name="_class_getName") = 18a5fb4fc | |
IRExecutionUnit::getSymbolAddress(Name="_objc_debug_class_getNameRaw") = 18a621204 | |
IRExecutionUnit::getSymbolAddress(Name="_objc_getRealizedClassList_trylock") = 18a61ddf8 | |
IRExecutionUnit::getSymbolAddress(Name="_printf") = 18a88001c | |
IRMemoryMap::WriteMemory (0x11ceec000, 0x100898000, 0x919) went to [0x11ceec000..0x11ceec39f) | |
IRMemoryMap::WriteMemory (0x11d0f8000, 0x1055f8000, 0x117) went to [0x11d0f8000..0x11d0f807f) | |
IRMemoryMap::WriteMemory (0x11d0f8080, 0x1055f8078, 0x15) went to [0x11d0f8080..0x11d0f8097) | |
IRMemoryMap::WriteMemory (0x11d0f80a0, 0x1055f8088, 0x22) went to [0x11d0f80a0..0x11d0f80bf) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x100898000 in [0x100898000..0x100898397], and returned 0x11ceec000 from [0x11ceec000..0x11ceec397]. | |
Code can be run in the target. | |
Found function, has local address 0x100898000 and remote address 0x11ceec000 | |
Function's code range is [0x11ceec000+0x397] | |
Function data has contents: | |
0x11ceec000: ff 83 02 d1 fd 7b 09 a9 fd 43 02 91 a0 83 1f f8 | |
0x11ceec010: a1 03 1f f8 a2 c3 1e b8 a3 03 1e f8 a4 c3 1d b8 | |
0x11ceec020: a5 83 1d b8 a8 83 5d b8 08 01 00 34 a8 03 5f f8 | |
0x11ceec030: e8 03 00 f9 00 00 00 90 00 78 41 f9 08 00 00 90 | |
0x11ceec040: 08 59 41 f9 00 01 3f d6 a8 83 5d b8 08 01 00 34 | |
0x11ceec050: a8 c3 5e b8 e8 03 00 f9 00 00 00 90 00 74 41 f9 | |
0x11ceec060: 08 00 00 90 08 59 41 f9 00 01 3f d6 a8 c3 5e b8 | |
0x11ceec070: 89 01 80 d2 08 09 c9 9a a8 03 1d f8 a8 83 5d b8 | |
0x11ceec080: 08 01 00 34 a8 03 5d f8 e8 03 00 f9 00 00 00 90 | |
0x11ceec090: 00 70 41 f9 08 00 00 90 08 59 41 f9 00 01 3f d6 | |
0x11ceec0a0: a8 03 5f f8 a8 83 1c f8 a8 03 5e f8 a8 03 1c f8 | |
0x11ceec0b0: a0 03 5c f8 a1 c3 5d b8 08 00 00 90 08 6d 41 f9 | |
0x11ceec0c0: 00 01 3f d6 a0 c3 1b b8 a8 83 5d b8 08 01 00 34 | |
0x11ceec0d0: a8 c3 5b b8 e8 03 00 f9 00 00 00 90 00 68 41 f9 | |
0x11ceec0e0: 08 00 00 90 08 59 41 f9 00 01 3f d6 ff 4b 00 b9 | |
0x11ceec0f0: ff 47 00 b9 e8 47 40 b9 a9 c3 5b b8 1f 01 09 6b | |
0x11ceec100: 22 0b 00 54 e8 4b 40 b9 a9 03 5d f8 1f 01 09 eb | |
0x11ceec110: c2 09 00 54 a8 03 5c f8 e9 47 40 b9 0a 01 80 d2 | |
0x11ceec120: 28 21 0a 9b 08 01 40 f9 e8 1f 00 f9 e0 1f 40 f9 | |
0x11ceec130: 08 00 00 90 08 61 41 f9 00 01 3f d6 e0 1b 00 f9 | |
0x11ceec140: e8 1b 40 f9 48 01 00 b5 e0 1f 40 f9 08 00 00 90 | |
0x11ceec150: 08 65 41 f9 00 01 3f d6 e0 1f 40 f9 08 00 00 90 | |
0x11ceec160: 08 61 41 f9 00 01 3f d6 e0 1b 00 f9 e8 1b 40 f9 | |
0x11ceec170: 48 00 00 b5 38 00 00 14 e8 1b 40 f9 e8 17 00 f9 | |
0x11ceec180: a8 a0 82 52 e8 27 00 b9 e8 17 40 f9 08 01 40 39 | |
0x11ceec190: e8 8f 00 39 e8 8f 40 39 08 1d 00 53 a8 01 00 34 | |
0x11ceec1a0: e8 27 40 b9 e9 27 40 b9 28 15 08 0b e9 8f 40 39 | |
0x11ceec1b0: 08 01 09 0b e8 27 00 b9 e8 17 40 f9 09 05 00 91 | |
0x11ceec1c0: e9 17 00 f9 08 05 40 39 e8 8f 00 39 f2 ff ff 17 | |
0x11ceec1d0: e8 27 40 b9 a9 83 5c f8 ea 4b 40 b9 8b 01 80 d2 | |
0x11ceec1e0: 49 25 0b 9b 28 09 00 b9 e8 1f 40 f9 a9 83 5c f8 | |
0x11ceec1f0: ea 4b 40 b9 8b 01 80 d2 49 25 0b 9b 28 01 00 f9 | |
0x11ceec200: a8 83 5d b8 08 02 00 34 e8 4b 40 b9 a9 83 5c f8 | |
0x11ceec210: ea 4b 40 b9 8b 01 80 d2 49 25 0b 9b 29 01 40 f9 | |
0x11ceec220: ea 1b 40 f9 ea 0b 00 f9 e9 07 00 f9 e8 03 00 f9 | |
0x11ceec230: 00 00 00 90 00 5c 41 f9 08 00 00 90 08 59 41 f9 | |
0x11ceec240: 00 01 3f d6 01 00 00 14 e8 4b 40 b9 08 05 00 11 | |
0x11ceec250: e8 4b 00 b9 e8 47 40 b9 08 05 00 11 e8 47 00 b9 | |
0x11ceec260: a5 ff ff 17 e8 4b 40 b9 a9 03 5d f8 1f 01 09 eb | |
0x11ceec270: 62 01 00 54 a8 83 5c f8 e9 4b 40 b9 8a 01 80 d2 | |
0x11ceec280: 28 21 0a 9b 1f 01 00 f9 a8 83 5c f8 e9 4b 40 b9 | |
0x11ceec290: 8a 01 80 d2 28 21 0a 9b 1f 09 00 b9 a0 c3 5b b8 | |
0x11ceec2a0: fd 7b 49 a9 ff 83 02 91 c0 03 5f d6 00 00 00 00 | |
0x11ceec2b0: 1c 00 88 8a 01 00 00 00 54 80 0f 1d 01 00 00 00 | |
0x11ceec2c0: 04 12 62 8a 01 00 00 00 fc b4 5f 8a 01 00 00 00 | |
0x11ceec2d0: 48 80 0f 1d 01 00 00 00 f8 dd 61 8a 01 00 00 00 | |
0x11ceec2e0: 32 80 0f 1d 01 00 00 00 16 80 0f 1d 01 00 00 00 | |
0x11ceec2f0: 00 80 0f 1d 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec390: 00 00 00 00 00 00 00 | |
Function disassembly: | |
0x11ceec000: 0xd10283ff unknown sub sp, sp, #0xa0 | |
0x11ceec004: 0xa9097bfd unknown stp x29, x30, [sp, #0x90] | |
0x11ceec008: 0x910243fd unknown add x29, sp, #0x90 | |
0x11ceec00c: 0xf81f83a0 unknown stur x0, [x29, #-0x8] | |
0x11ceec010: 0xf81f03a1 unknown stur x1, [x29, #-0x10] | |
0x11ceec014: 0xb81ec3a2 unknown stur w2, [x29, #-0x14] | |
0x11ceec018: 0xf81e03a3 unknown stur x3, [x29, #-0x20] | |
0x11ceec01c: 0xb81dc3a4 unknown stur w4, [x29, #-0x24] | |
0x11ceec020: 0xb81d83a5 unknown stur w5, [x29, #-0x28] | |
0x11ceec024: 0xb85d83a8 unknown ldur w8, [x29, #-0x28] | |
0x11ceec028: 0x34000108 unknown cbz w8, 0x11ceec048 | |
0x11ceec02c: 0xf85f03a8 unknown ldur x8, [x29, #-0x10] | |
0x11ceec030: 0xf90003e8 unknown str x8, [sp] | |
0x11ceec034: 0x90000000 unknown adrp x0, 0 | |
0x11ceec038: 0xf9417800 unknown ldr x0, [x0, #0x2f0] | |
0x11ceec03c: 0x90000008 unknown adrp x8, 0 | |
0x11ceec040: 0xf9415908 unknown ldr x8, [x8, #0x2b0] | |
0x11ceec044: 0xd63f0100 unknown blr x8 | |
0x11ceec048: 0xb85d83a8 unknown ldur w8, [x29, #-0x28] | |
0x11ceec04c: 0x34000108 unknown cbz w8, 0x11ceec06c | |
0x11ceec050: 0xb85ec3a8 unknown ldur w8, [x29, #-0x14] | |
0x11ceec054: 0xf90003e8 unknown str x8, [sp] | |
0x11ceec058: 0x90000000 unknown adrp x0, 0 | |
0x11ceec05c: 0xf9417400 unknown ldr x0, [x0, #0x2e8] | |
0x11ceec060: 0x90000008 unknown adrp x8, 0 | |
0x11ceec064: 0xf9415908 unknown ldr x8, [x8, #0x2b0] | |
0x11ceec068: 0xd63f0100 unknown blr x8 | |
0x11ceec06c: 0xb85ec3a8 unknown ldur w8, [x29, #-0x14] | |
0x11ceec070: 0xd2800189 unknown mov x9, #0xc | |
0x11ceec074: 0x9ac90908 unknown udiv x8, x8, x9 | |
0x11ceec078: 0xf81d03a8 unknown stur x8, [x29, #-0x30] | |
0x11ceec07c: 0xb85d83a8 unknown ldur w8, [x29, #-0x28] | |
0x11ceec080: 0x34000108 unknown cbz w8, 0x11ceec0a0 | |
0x11ceec084: 0xf85d03a8 unknown ldur x8, [x29, #-0x30] | |
0x11ceec088: 0xf90003e8 unknown str x8, [sp] | |
0x11ceec08c: 0x90000000 unknown adrp x0, 0 | |
0x11ceec090: 0xf9417000 unknown ldr x0, [x0, #0x2e0] | |
0x11ceec094: 0x90000008 unknown adrp x8, 0 | |
0x11ceec098: 0xf9415908 unknown ldr x8, [x8, #0x2b0] | |
0x11ceec09c: 0xd63f0100 unknown blr x8 | |
0x11ceec0a0: 0xf85f03a8 unknown ldur x8, [x29, #-0x10] | |
0x11ceec0a4: 0xf81c83a8 unknown stur x8, [x29, #-0x38] | |
0x11ceec0a8: 0xf85e03a8 unknown ldur x8, [x29, #-0x20] | |
0x11ceec0ac: 0xf81c03a8 unknown stur x8, [x29, #-0x40] | |
0x11ceec0b0: 0xf85c03a0 unknown ldur x0, [x29, #-0x40] | |
0x11ceec0b4: 0xb85dc3a1 unknown ldur w1, [x29, #-0x24] | |
0x11ceec0b8: 0x90000008 unknown adrp x8, 0 | |
0x11ceec0bc: 0xf9416d08 unknown ldr x8, [x8, #0x2d8] | |
0x11ceec0c0: 0xd63f0100 unknown blr x8 | |
0x11ceec0c4: 0xb81bc3a0 unknown stur w0, [x29, #-0x44] | |
0x11ceec0c8: 0xb85d83a8 unknown ldur w8, [x29, #-0x28] | |
0x11ceec0cc: 0x34000108 unknown cbz w8, 0x11ceec0ec | |
0x11ceec0d0: 0xb85bc3a8 unknown ldur w8, [x29, #-0x44] | |
0x11ceec0d4: 0xf90003e8 unknown str x8, [sp] | |
0x11ceec0d8: 0x90000000 unknown adrp x0, 0 | |
0x11ceec0dc: 0xf9416800 unknown ldr x0, [x0, #0x2d0] | |
0x11ceec0e0: 0x90000008 unknown adrp x8, 0 | |
0x11ceec0e4: 0xf9415908 unknown ldr x8, [x8, #0x2b0] | |
0x11ceec0e8: 0xd63f0100 unknown blr x8 | |
0x11ceec0ec: 0xb9004bff unknown str wzr, [sp, #0x48] | |
0x11ceec0f0: 0xb90047ff unknown str wzr, [sp, #0x44] | |
0x11ceec0f4: 0xb94047e8 unknown ldr w8, [sp, #0x44] | |
0x11ceec0f8: 0xb85bc3a9 unknown ldur w9, [x29, #-0x44] | |
0x11ceec0fc: 0x6b09011f unknown cmp w8, w9 | |
0x11ceec100: 0x54000b22 unknown b.hs 0x11ceec264 | |
0x11ceec104: 0xb9404be8 unknown ldr w8, [sp, #0x48] | |
0x11ceec108: 0xf85d03a9 unknown ldur x9, [x29, #-0x30] | |
0x11ceec10c: 0xeb09011f unknown cmp x8, x9 | |
0x11ceec110: 0x540009c2 unknown b.hs 0x11ceec248 | |
0x11ceec114: 0xf85c03a8 unknown ldur x8, [x29, #-0x40] | |
0x11ceec118: 0xb94047e9 unknown ldr w9, [sp, #0x44] | |
0x11ceec11c: 0xd280010a unknown mov x10, #0x8 | |
0x11ceec120: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11ceec124: 0xf9400108 unknown ldr x8, [x8] | |
0x11ceec128: 0xf9001fe8 unknown str x8, [sp, #0x38] | |
0x11ceec12c: 0xf9401fe0 unknown ldr x0, [sp, #0x38] | |
0x11ceec130: 0x90000008 unknown adrp x8, 0 | |
0x11ceec134: 0xf9416108 unknown ldr x8, [x8, #0x2c0] | |
0x11ceec138: 0xd63f0100 unknown blr x8 | |
0x11ceec13c: 0xf9001be0 unknown str x0, [sp, #0x30] | |
0x11ceec140: 0xf9401be8 unknown ldr x8, [sp, #0x30] | |
0x11ceec144: 0xb5000148 unknown cbnz x8, 0x11ceec16c | |
0x11ceec148: 0xf9401fe0 unknown ldr x0, [sp, #0x38] | |
0x11ceec14c: 0x90000008 unknown adrp x8, 0 | |
0x11ceec150: 0xf9416508 unknown ldr x8, [x8, #0x2c8] | |
0x11ceec154: 0xd63f0100 unknown blr x8 | |
0x11ceec158: 0xf9401fe0 unknown ldr x0, [sp, #0x38] | |
0x11ceec15c: 0x90000008 unknown adrp x8, 0 | |
0x11ceec160: 0xf9416108 unknown ldr x8, [x8, #0x2c0] | |
0x11ceec164: 0xd63f0100 unknown blr x8 | |
0x11ceec168: 0xf9001be0 unknown str x0, [sp, #0x30] | |
0x11ceec16c: 0xf9401be8 unknown ldr x8, [sp, #0x30] | |
0x11ceec170: 0xb5000048 unknown cbnz x8, 0x11ceec178 | |
0x11ceec174: 0x14000038 unknown b 0x11ceec254 | |
0x11ceec178: 0xf9401be8 unknown ldr x8, [sp, #0x30] | |
0x11ceec17c: 0xf90017e8 unknown str x8, [sp, #0x28] | |
0x11ceec180: 0x5282a0a8 unknown mov w8, #0x1505 | |
0x11ceec184: 0xb90027e8 unknown str w8, [sp, #0x24] | |
0x11ceec188: 0xf94017e8 unknown ldr x8, [sp, #0x28] | |
0x11ceec18c: 0x39400108 unknown ldrb w8, [x8] | |
0x11ceec190: 0x39008fe8 unknown strb w8, [sp, #0x23] | |
0x11ceec194: 0x39408fe8 unknown ldrb w8, [sp, #0x23] | |
0x11ceec198: 0x53001d08 unknown uxtb w8, w8 | |
0x11ceec19c: 0x340001a8 unknown cbz w8, 0x11ceec1d0 | |
0x11ceec1a0: 0xb94027e8 unknown ldr w8, [sp, #0x24] | |
0x11ceec1a4: 0xb94027e9 unknown ldr w9, [sp, #0x24] | |
0x11ceec1a8: 0x0b081528 unknown add w8, w9, w8, lsl #5 | |
0x11ceec1ac: 0x39408fe9 unknown ldrb w9, [sp, #0x23] | |
0x11ceec1b0: 0x0b090108 unknown add w8, w8, w9 | |
0x11ceec1b4: 0xb90027e8 unknown str w8, [sp, #0x24] | |
0x11ceec1b8: 0xf94017e8 unknown ldr x8, [sp, #0x28] | |
0x11ceec1bc: 0x91000509 unknown add x9, x8, #0x1 | |
0x11ceec1c0: 0xf90017e9 unknown str x9, [sp, #0x28] | |
0x11ceec1c4: 0x39400508 unknown ldrb w8, [x8, #0x1] | |
0x11ceec1c8: 0x39008fe8 unknown strb w8, [sp, #0x23] | |
0x11ceec1cc: 0x17fffff2 unknown b 0x11ceec194 | |
0x11ceec1d0: 0xb94027e8 unknown ldr w8, [sp, #0x24] | |
0x11ceec1d4: 0xf85c83a9 unknown ldur x9, [x29, #-0x38] | |
0x11ceec1d8: 0xb9404bea unknown ldr w10, [sp, #0x48] | |
0x11ceec1dc: 0xd280018b unknown mov x11, #0xc | |
0x11ceec1e0: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11ceec1e4: 0xb9000928 unknown str w8, [x9, #0x8] | |
0x11ceec1e8: 0xf9401fe8 unknown ldr x8, [sp, #0x38] | |
0x11ceec1ec: 0xf85c83a9 unknown ldur x9, [x29, #-0x38] | |
0x11ceec1f0: 0xb9404bea unknown ldr w10, [sp, #0x48] | |
0x11ceec1f4: 0xd280018b unknown mov x11, #0xc | |
0x11ceec1f8: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11ceec1fc: 0xf9000128 unknown str x8, [x9] | |
0x11ceec200: 0xb85d83a8 unknown ldur w8, [x29, #-0x28] | |
0x11ceec204: 0x34000208 unknown cbz w8, 0x11ceec244 | |
0x11ceec208: 0xb9404be8 unknown ldr w8, [sp, #0x48] | |
0x11ceec20c: 0xf85c83a9 unknown ldur x9, [x29, #-0x38] | |
0x11ceec210: 0xb9404bea unknown ldr w10, [sp, #0x48] | |
0x11ceec214: 0xd280018b unknown mov x11, #0xc | |
0x11ceec218: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11ceec21c: 0xf9400129 unknown ldr x9, [x9] | |
0x11ceec220: 0xf9401bea unknown ldr x10, [sp, #0x30] | |
0x11ceec224: 0xf9000bea unknown str x10, [sp, #0x10] | |
0x11ceec228: 0xf90007e9 unknown str x9, [sp, #0x8] | |
0x11ceec22c: 0xf90003e8 unknown str x8, [sp] | |
0x11ceec230: 0x90000000 unknown adrp x0, 0 | |
0x11ceec234: 0xf9415c00 unknown ldr x0, [x0, #0x2b8] | |
0x11ceec238: 0x90000008 unknown adrp x8, 0 | |
0x11ceec23c: 0xf9415908 unknown ldr x8, [x8, #0x2b0] | |
0x11ceec240: 0xd63f0100 unknown blr x8 | |
0x11ceec244: 0x14000001 unknown b 0x11ceec248 | |
0x11ceec248: 0xb9404be8 unknown ldr w8, [sp, #0x48] | |
0x11ceec24c: 0x11000508 unknown add w8, w8, #0x1 | |
0x11ceec250: 0xb9004be8 unknown str w8, [sp, #0x48] | |
0x11ceec254: 0xb94047e8 unknown ldr w8, [sp, #0x44] | |
0x11ceec258: 0x11000508 unknown add w8, w8, #0x1 | |
0x11ceec25c: 0xb90047e8 unknown str w8, [sp, #0x44] | |
0x11ceec260: 0x17ffffa5 unknown b 0x11ceec0f4 | |
0x11ceec264: 0xb9404be8 unknown ldr w8, [sp, #0x48] | |
0x11ceec268: 0xf85d03a9 unknown ldur x9, [x29, #-0x30] | |
0x11ceec26c: 0xeb09011f unknown cmp x8, x9 | |
0x11ceec270: 0x54000162 unknown b.hs 0x11ceec29c | |
0x11ceec274: 0xf85c83a8 unknown ldur x8, [x29, #-0x38] | |
0x11ceec278: 0xb9404be9 unknown ldr w9, [sp, #0x48] | |
0x11ceec27c: 0xd280018a unknown mov x10, #0xc | |
0x11ceec280: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11ceec284: 0xf900011f unknown str xzr, [x8] | |
0x11ceec288: 0xf85c83a8 unknown ldur x8, [x29, #-0x38] | |
0x11ceec28c: 0xb9404be9 unknown ldr w9, [sp, #0x48] | |
0x11ceec290: 0xd280018a unknown mov x10, #0xc | |
0x11ceec294: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11ceec298: 0xb900091f unknown str wzr, [x8, #0x8] | |
0x11ceec29c: 0xb85bc3a0 unknown ldur w0, [x29, #-0x44] | |
0x11ceec2a0: 0xa9497bfd unknown ldp x29, x30, [sp, #0x90] | |
0x11ceec2a4: 0x910283ff unknown add sp, sp, #0xa0 | |
0x11ceec2a8: 0xd65f03c0 unknown ret | |
0x11ceec2ac: 0x00000000 unknown udf #0x0 | |
0x11ceec2b0: 0x8a88001c unknown and x28, x0, x8, asr #0 | |
0x11ceec2b4: 0x00000001 unknown udf #0x1 | |
0x11ceec2b8: 0x1d0f8054 unknown .long 0x1d0f8054 ; unknown opcode | |
0x11ceec2bc: 0x00000001 unknown udf #0x1 | |
0x11ceec2c0: 0x8a621204 unknown bic x4, x16, x2, lsr #4 | |
0x11ceec2c4: 0x00000001 unknown udf #0x1 | |
0x11ceec2c8: 0x8a5fb4fc unknown and x28, x7, xzr, lsr #45 | |
0x11ceec2cc: 0x00000001 unknown udf #0x1 | |
0x11ceec2d0: 0x1d0f8048 unknown .long 0x1d0f8048 ; unknown opcode | |
0x11ceec2d4: 0x00000001 unknown udf #0x1 | |
0x11ceec2d8: 0x8a61ddf8 unknown bic x24, x15, x1, lsr #55 | |
0x11ceec2dc: 0x00000001 unknown udf #0x1 | |
0x11ceec2e0: 0x1d0f8032 unknown .long 0x1d0f8032 ; unknown opcode | |
0x11ceec2e4: 0x00000001 unknown udf #0x1 | |
0x11ceec2e8: 0x1d0f8016 unknown .long 0x1d0f8016 ; unknown opcode | |
0x11ceec2ec: 0x00000001 unknown udf #0x1 | |
0x11ceec2f0: 0x1d0f8000 unknown .long 0x1d0f8000 ; unknown opcode | |
0x11ceec2f4: 0x00000001 unknown udf #0x1 | |
0x11ceec2f8: 0x00000000 unknown udf #0x0 | |
0x11ceec2fc: 0x00000000 unknown udf #0x0 | |
0x11ceec300: 0x00000000 unknown udf #0x0 | |
0x11ceec304: 0x00000000 unknown udf #0x0 | |
0x11ceec308: 0x00000000 unknown udf #0x0 | |
0x11ceec30c: 0x00000000 unknown udf #0x0 | |
0x11ceec310: 0x00000000 unknown udf #0x0 | |
0x11ceec314: 0x00000000 unknown udf #0x0 | |
0x11ceec318: 0x00000000 unknown udf #0x0 | |
0x11ceec31c: 0x00000000 unknown udf #0x0 | |
0x11ceec320: 0x00000000 unknown udf #0x0 | |
0x11ceec324: 0x00000000 unknown udf #0x0 | |
0x11ceec328: 0x00000000 unknown udf #0x0 | |
0x11ceec32c: 0x00000000 unknown udf #0x0 | |
0x11ceec330: 0x00000000 unknown udf #0x0 | |
0x11ceec334: 0x00000000 unknown udf #0x0 | |
0x11ceec338: 0x00000000 unknown udf #0x0 | |
0x11ceec33c: 0x00000000 unknown udf #0x0 | |
0x11ceec340: 0x00000000 unknown udf #0x0 | |
0x11ceec344: 0x00000000 unknown udf #0x0 | |
0x11ceec348: 0x00000000 unknown udf #0x0 | |
0x11ceec34c: 0x00000000 unknown udf #0x0 | |
0x11ceec350: 0x00000000 unknown udf #0x0 | |
0x11ceec354: 0x00000000 unknown udf #0x0 | |
0x11ceec358: 0x00000000 unknown udf #0x0 | |
0x11ceec35c: 0x00000000 unknown udf #0x0 | |
0x11ceec360: 0x00000000 unknown udf #0x0 | |
0x11ceec364: 0x00000000 unknown udf #0x0 | |
0x11ceec368: 0x00000000 unknown udf #0x0 | |
0x11ceec36c: 0x00000000 unknown udf #0x0 | |
0x11ceec370: 0x00000000 unknown udf #0x0 | |
0x11ceec374: 0x00000000 unknown udf #0x0 | |
0x11ceec378: 0x00000000 unknown udf #0x0 | |
0x11ceec37c: 0x00000000 unknown udf #0x0 | |
0x11ceec380: 0x00000000 unknown udf #0x0 | |
0x11ceec384: 0x00000000 unknown udf #0x0 | |
0x11ceec388: 0x00000000 unknown udf #0x0 | |
0x11ceec38c: 0x00000000 unknown udf #0x0 | |
0x11ceec390: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x100898000+0x397]->0x11ceec000 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11ceec000, 0x125482810, 0x919) came from [0x11ceec000..0x11ceec39f) | |
0x11ceec000: ff 83 02 d1 fd 7b 09 a9 fd 43 02 91 a0 83 1f f8 | |
0x11ceec010: a1 03 1f f8 a2 c3 1e b8 a3 03 1e f8 a4 c3 1d b8 | |
0x11ceec020: a5 83 1d b8 a8 83 5d b8 08 01 00 34 a8 03 5f f8 | |
0x11ceec030: e8 03 00 f9 00 00 00 90 00 78 41 f9 08 00 00 90 | |
0x11ceec040: 08 59 41 f9 00 01 3f d6 a8 83 5d b8 08 01 00 34 | |
0x11ceec050: a8 c3 5e b8 e8 03 00 f9 00 00 00 90 00 74 41 f9 | |
0x11ceec060: 08 00 00 90 08 59 41 f9 00 01 3f d6 a8 c3 5e b8 | |
0x11ceec070: 89 01 80 d2 08 09 c9 9a a8 03 1d f8 a8 83 5d b8 | |
0x11ceec080: 08 01 00 34 a8 03 5d f8 e8 03 00 f9 00 00 00 90 | |
0x11ceec090: 00 70 41 f9 08 00 00 90 08 59 41 f9 00 01 3f d6 | |
0x11ceec0a0: a8 03 5f f8 a8 83 1c f8 a8 03 5e f8 a8 03 1c f8 | |
0x11ceec0b0: a0 03 5c f8 a1 c3 5d b8 08 00 00 90 08 6d 41 f9 | |
0x11ceec0c0: 00 01 3f d6 a0 c3 1b b8 a8 83 5d b8 08 01 00 34 | |
0x11ceec0d0: a8 c3 5b b8 e8 03 00 f9 00 00 00 90 00 68 41 f9 | |
0x11ceec0e0: 08 00 00 90 08 59 41 f9 00 01 3f d6 ff 4b 00 b9 | |
0x11ceec0f0: ff 47 00 b9 e8 47 40 b9 a9 c3 5b b8 1f 01 09 6b | |
0x11ceec100: 22 0b 00 54 e8 4b 40 b9 a9 03 5d f8 1f 01 09 eb | |
0x11ceec110: c2 09 00 54 a8 03 5c f8 e9 47 40 b9 0a 01 80 d2 | |
0x11ceec120: 28 21 0a 9b 08 01 40 f9 e8 1f 00 f9 e0 1f 40 f9 | |
0x11ceec130: 08 00 00 90 08 61 41 f9 00 01 3f d6 e0 1b 00 f9 | |
0x11ceec140: e8 1b 40 f9 48 01 00 b5 e0 1f 40 f9 08 00 00 90 | |
0x11ceec150: 08 65 41 f9 00 01 3f d6 e0 1f 40 f9 08 00 00 90 | |
0x11ceec160: 08 61 41 f9 00 01 3f d6 e0 1b 00 f9 e8 1b 40 f9 | |
0x11ceec170: 48 00 00 b5 38 00 00 14 e8 1b 40 f9 e8 17 00 f9 | |
0x11ceec180: a8 a0 82 52 e8 27 00 b9 e8 17 40 f9 08 01 40 39 | |
0x11ceec190: e8 8f 00 39 e8 8f 40 39 08 1d 00 53 a8 01 00 34 | |
0x11ceec1a0: e8 27 40 b9 e9 27 40 b9 28 15 08 0b e9 8f 40 39 | |
0x11ceec1b0: 08 01 09 0b e8 27 00 b9 e8 17 40 f9 09 05 00 91 | |
0x11ceec1c0: e9 17 00 f9 08 05 40 39 e8 8f 00 39 f2 ff ff 17 | |
0x11ceec1d0: e8 27 40 b9 a9 83 5c f8 ea 4b 40 b9 8b 01 80 d2 | |
0x11ceec1e0: 49 25 0b 9b 28 09 00 b9 e8 1f 40 f9 a9 83 5c f8 | |
0x11ceec1f0: ea 4b 40 b9 8b 01 80 d2 49 25 0b 9b 28 01 00 f9 | |
0x11ceec200: a8 83 5d b8 08 02 00 34 e8 4b 40 b9 a9 83 5c f8 | |
0x11ceec210: ea 4b 40 b9 8b 01 80 d2 49 25 0b 9b 29 01 40 f9 | |
0x11ceec220: ea 1b 40 f9 ea 0b 00 f9 e9 07 00 f9 e8 03 00 f9 | |
0x11ceec230: 00 00 00 90 00 5c 41 f9 08 00 00 90 08 59 41 f9 | |
0x11ceec240: 00 01 3f d6 01 00 00 14 e8 4b 40 b9 08 05 00 11 | |
0x11ceec250: e8 4b 00 b9 e8 47 40 b9 08 05 00 11 e8 47 00 b9 | |
0x11ceec260: a5 ff ff 17 e8 4b 40 b9 a9 03 5d f8 1f 01 09 eb | |
0x11ceec270: 62 01 00 54 a8 83 5c f8 e9 4b 40 b9 8a 01 80 d2 | |
0x11ceec280: 28 21 0a 9b 1f 01 00 f9 a8 83 5c f8 e9 4b 40 b9 | |
0x11ceec290: 8a 01 80 d2 28 21 0a 9b 1f 09 00 b9 a0 c3 5b b8 | |
0x11ceec2a0: fd 7b 49 a9 ff 83 02 91 c0 03 5f d6 00 00 00 00 | |
0x11ceec2b0: 1c 00 88 8a 01 00 00 00 54 80 0f 1d 01 00 00 00 | |
0x11ceec2c0: 04 12 62 8a 01 00 00 00 fc b4 5f 8a 01 00 00 00 | |
0x11ceec2d0: 48 80 0f 1d 01 00 00 00 f8 dd 61 8a 01 00 00 00 | |
0x11ceec2e0: 32 80 0f 1d 01 00 00 00 16 80 0f 1d 01 00 00 00 | |
0x11ceec2f0: 00 80 0f 1d 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec390: 00 00 00 00 00 00 00 | |
[0x1055f8000+0x75]->0x11d0f8000 (alignment 8, section ID 1, name __cstring) | |
IRMemoryMap::ReadMemory (0x11d0f8000, 0x600002ea0a00, 0x117) came from [0x11d0f8000..0x11d0f807f) | |
0x11d0f8000: 63 6c 61 73 73 5f 69 6e 66 6f 73 5f 70 74 72 20 | |
0x11d0f8010: 3d 20 25 70 0a 00 63 6c 61 73 73 5f 69 6e 66 6f | |
0x11d0f8020: 73 5f 62 79 74 65 5f 73 69 7a 65 20 3d 20 25 75 | |
0x11d0f8030: 0a 00 6d 61 78 5f 63 6c 61 73 73 5f 69 6e 66 6f | |
0x11d0f8040: 73 20 3d 20 25 75 0a 00 63 6f 75 6e 74 20 3d 20 | |
0x11d0f8050: 25 75 0a 00 5b 25 75 5d 20 69 73 61 20 3d 20 25 | |
0x11d0f8060: 38 70 20 25 73 0a 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f8070: 00 00 00 00 00 | |
[0x1055f8078+0xf]->0x11d0f8080 (alignment 8, section ID 2, name __bss) | |
IRMemoryMap::ReadMemory (0x11d0f8080, 0x60000031c110, 0x15) came from [0x11d0f8080..0x11d0f8097) | |
0x11d0f8080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1055f8088+0x16]->0x11d0f80a0 (alignment 8, section ID 3, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f80a0, 0x600000573000, 0x22) came from [0x11d0f80a0..0x11d0f80bf) | |
0x11d0f80a0: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f80b0: 00 00 00 00 00 00 | |
[0x1055f80a0+0xe6]->0xffffffffffffffff (alignment 8, section ID 4, name __debug_abbrev) | |
0x1055f80a0: 01 11 01 25 0e 13 05 03 0e 10 17 1b 0e e5 7f 0b | |
0x1055f80b0: 11 01 12 06 00 00 02 34 00 49 13 3a 0b 3b 0b 02 | |
0x1055f80c0: 18 00 00 03 01 01 49 13 00 00 04 21 00 49 13 37 | |
0x1055f80d0: 0b 00 00 05 26 00 49 13 00 00 06 24 00 03 0e 3e | |
0x1055f80e0: 0b 0b 0b 00 00 07 24 00 03 0e 0b 0b 3e 0b 00 00 | |
0x1055f80f0: 08 0f 00 49 13 00 00 09 13 01 36 0b 03 0e 0b 0b | |
0x1055f8100: 3a 0b 3b 0b 00 00 0a 0d 00 03 0e 49 13 3a 0b 3b | |
0x1055f8110: 0b 38 0b 00 00 0b 16 00 49 13 03 0e 00 00 0c 13 | |
0x1055f8120: 00 03 0e 3c 19 00 00 0d 16 00 49 13 03 0e 3a 0b | |
0x1055f8130: 3b 0b 00 00 0e 2e 01 11 01 12 06 40 18 6e 0e 03 | |
0x1055f8140: 0e 3a 0b 3b 0b 49 13 3f 19 00 00 0f 05 00 02 18 | |
0x1055f8150: 03 0e 3a 0b 3b 0b 49 13 00 00 10 34 00 02 18 03 | |
0x1055f8160: 0e 3a 0b 3b 0b 49 13 00 00 11 0b 01 11 01 12 06 | |
0x1055f8170: 00 00 12 0f 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8180: 00 00 00 00 00 00 | |
[0x1055f8188+0x2d0]->0xffffffffffffffff (alignment 8, section ID 5, name __debug_info) | |
0x1055f8188: 6e 02 00 00 04 00 00 00 00 00 08 01 00 00 00 00 | |
0x1055f8198: 11 00 2f 00 00 00 00 00 00 00 73 00 00 00 02 00 | |
0x1055f81a8: c0 ee 1c 01 00 00 00 ac 02 00 00 02 3c 00 00 00 | |
0x1055f81b8: 01 3e 09 03 00 80 0f 1d 01 00 00 00 03 48 00 00 | |
0x1055f81c8: 00 04 54 00 00 00 16 00 05 4d 00 00 00 06 75 00 | |
0x1055f81d8: 00 00 06 01 07 7a 00 00 00 08 07 02 6c 00 00 00 | |
0x1055f81e8: 01 3f 09 03 16 80 0f 1d 01 00 00 00 03 48 00 00 | |
0x1055f81f8: 00 04 54 00 00 00 1c 00 02 3c 00 00 00 01 42 09 | |
0x1055f8208: 03 32 80 0f 1d 01 00 00 00 02 9a 00 00 00 01 4a | |
0x1055f8218: 09 03 48 80 0f 1d 01 00 00 00 03 48 00 00 00 04 | |
0x1055f8228: 54 00 00 00 0c 00 02 b7 00 00 00 01 5f 09 03 54 | |
0x1055f8238: 80 0f 1d 01 00 00 00 03 48 00 00 00 04 54 00 00 | |
0x1055f8248: 00 13 00 08 c8 00 00 00 09 05 8f 00 00 00 0c 01 | |
0x1055f8258: 30 0a 99 00 00 00 ea 00 00 00 01 32 00 0a ae 00 | |
0x1055f8268: 00 00 fd 00 00 00 01 33 08 00 0b f3 00 00 00 9d | |
0x1055f8278: 00 00 00 08 f8 00 00 00 0c a3 00 00 00 0d 08 01 | |
0x1055f8288: 00 00 b3 00 00 00 01 18 06 bc 00 00 00 07 04 08 | |
0x1055f8298: ea 00 00 00 0e 00 c0 ee 1c 01 00 00 00 ac 02 00 | |
0x1055f82a8: 00 01 6d f6 00 00 00 c9 00 00 00 01 37 fd 00 00 | |
0x1055f82b8: 00 0f 02 91 78 30 01 00 00 01 37 4d 02 00 00 0f | |
0x1055f82c8: 02 91 70 4e 01 00 00 01 38 4d 02 00 00 0f 02 91 | |
0x1055f82d8: 6c 5e 01 00 00 01 39 fd 00 00 00 0f 02 91 60 74 | |
0x1055f82e8: 01 00 00 01 3a 4d 02 00 00 0f 02 91 5c 81 01 00 | |
0x1055f82f8: 00 01 3b fd 00 00 00 0f 02 91 58 92 01 00 00 01 | |
0x1055f8308: 3c fd 00 00 00 10 02 91 50 9d 01 00 00 01 41 4e | |
0x1055f8318: 02 00 00 10 02 91 48 c2 01 00 00 01 44 c3 00 00 | |
0x1055f8328: 00 10 02 91 40 ce 01 00 00 01 46 0f 01 00 00 10 | |
0x1055f8338: 03 91 bc 7f e2 01 00 00 01 48 fd 00 00 00 10 03 | |
0x1055f8348: 8f c8 00 e8 01 00 00 01 4c fd 00 00 00 11 f0 c0 | |
0x1055f8358: ee 1c 01 00 00 00 74 01 00 00 10 03 8f c4 00 ec | |
0x1055f8368: 01 00 00 01 4d fd 00 00 00 11 14 c1 ee 1c 01 00 | |
0x1055f8378: 00 00 34 01 00 00 10 02 8f 38 99 00 00 00 01 51 | |
0x1055f8388: ea 00 00 00 10 02 8f 30 ee 01 00 00 01 52 65 02 | |
0x1055f8398: 00 00 10 02 8f 28 f7 01 00 00 01 59 65 02 00 00 | |
0x1055f83a8: 10 02 8f 24 f9 01 00 00 01 5a fd 00 00 00 11 88 | |
0x1055f83b8: c1 ee 1c 01 00 00 00 48 00 00 00 10 02 8f 23 fb | |
0x1055f83c8: 01 00 00 01 5b 6a 02 00 00 00 00 00 00 12 05 53 | |
0x1055f83d8: 02 00 00 0d 5e 02 00 00 ad 01 00 00 01 1d 06 b4 | |
0x1055f83e8: 01 00 00 07 08 08 48 00 00 00 06 fd 01 00 00 08 | |
0x1055f83f8: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8408: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8418: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8428: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8438: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8448: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1055f8458+0x219]->0xffffffffffffffff (alignment 8, section ID 6, name __debug_str) | |
0x1055f8458: 41 70 70 6c 65 20 63 6c 61 6e 67 20 76 65 72 73 | |
0x1055f8468: 69 6f 6e 20 31 35 2e 30 2e 30 20 28 63 6c 61 6e | |
0x1055f8478: 67 2d 31 35 30 30 2e 30 2e 34 30 2e 31 29 00 2f | |
0x1055f8488: 76 61 72 2f 66 6f 6c 64 65 72 73 2f 6a 6b 2f 32 | |
0x1055f8498: 6e 6b 6c 62 68 30 78 35 6b 73 63 31 39 32 6a 73 | |
0x1055f84a8: 6d 39 6e 68 6e 68 63 30 30 30 30 67 6e 2f 54 2f | |
0x1055f84b8: 6c 6c 64 62 2f 38 39 35 30 31 2f 3c 73 74 64 69 | |
0x1055f84c8: 6e 3e 00 2f 00 63 68 61 72 00 5f 5f 41 52 52 41 | |
0x1055f84d8: 59 5f 53 49 5a 45 5f 54 59 50 45 5f 5f 00 00 43 | |
0x1055f84e8: 6c 61 73 73 49 6e 66 6f 00 69 73 61 00 43 6c 61 | |
0x1055f84f8: 73 73 00 6f 62 6a 63 5f 63 6c 61 73 73 00 68 61 | |
0x1055f8508: 73 68 00 75 69 6e 74 33 32 5f 74 00 75 6e 73 69 | |
0x1055f8518: 67 6e 65 64 20 69 6e 74 00 5f 5f 6c 6c 64 62 5f | |
0x1055f8528: 61 70 70 6c 65 5f 6f 62 6a 63 5f 76 32 5f 67 65 | |
0x1055f8538: 74 5f 64 79 6e 61 6d 69 63 5f 63 6c 61 73 73 5f | |
0x1055f8548: 69 6e 66 6f 33 00 5f 5a 34 34 5f 5f 6c 6c 64 62 | |
0x1055f8558: 5f 61 70 70 6c 65 5f 6f 62 6a 63 5f 76 32 5f 67 | |
0x1055f8568: 65 74 5f 64 79 6e 61 6d 69 63 5f 63 6c 61 73 73 | |
0x1055f8578: 5f 69 6e 66 6f 33 50 76 53 5f 6a 53 5f 6a 6a 00 | |
0x1055f8588: 67 64 62 5f 6f 62 6a 63 5f 72 65 61 6c 69 7a 65 | |
0x1055f8598: 64 5f 63 6c 61 73 73 65 73 5f 70 74 72 00 63 6c | |
0x1055f85a8: 61 73 73 5f 69 6e 66 6f 73 5f 70 74 72 00 63 6c | |
0x1055f85b8: 61 73 73 5f 69 6e 66 6f 73 5f 62 79 74 65 5f 73 | |
0x1055f85c8: 69 7a 65 00 63 6c 61 73 73 5f 62 75 66 66 65 72 | |
0x1055f85d8: 00 63 6c 61 73 73 5f 62 75 66 66 65 72 5f 6c 65 | |
0x1055f85e8: 6e 00 73 68 6f 75 6c 64 5f 6c 6f 67 00 6d 61 78 | |
0x1055f85f8: 5f 63 6c 61 73 73 5f 69 6e 66 6f 73 00 73 69 7a | |
0x1055f8608: 65 5f 74 00 75 6e 73 69 67 6e 65 64 20 6c 6f 6e | |
0x1055f8618: 67 00 63 6c 61 73 73 5f 69 6e 66 6f 73 00 72 65 | |
0x1055f8628: 61 6c 69 7a 65 64 5f 63 6c 61 73 73 5f 6c 69 73 | |
0x1055f8638: 74 00 63 6f 75 6e 74 00 69 64 78 00 69 00 6e 61 | |
0x1055f8648: 6d 65 5f 70 74 72 00 73 00 68 00 63 00 75 6e 73 | |
0x1055f8658: 69 67 6e 65 64 20 63 68 61 72 00 00 00 00 00 00 | |
0x1055f8668: 00 00 00 00 00 00 00 00 00 | |
[0x1055f8678+0x92]->0xffffffffffffffff (alignment 8, section ID 7, name __apple_names) | |
0x1055f8678: 48 53 41 48 01 00 00 00 03 00 00 00 03 00 00 00 | |
0x1055f8688: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x1055f8698: ff ff ff ff 00 00 00 00 01 00 00 00 ac 20 88 87 | |
0x1055f86a8: 05 15 00 00 75 f2 f5 58 44 00 00 00 54 00 00 00 | |
0x1055f86b8: 74 00 00 00 c9 00 00 00 01 00 00 00 14 01 00 00 | |
0x1055f86c8: 00 00 00 00 8e 00 00 00 05 00 00 00 2b 00 00 00 | |
0x1055f86d8: 5b 00 00 00 78 00 00 00 89 00 00 00 a6 00 00 00 | |
0x1055f86e8: 00 00 00 00 f6 00 00 00 01 00 00 00 14 01 00 00 | |
0x1055f86f8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8708: 00 00 | |
[0x1055f8710+0x32]->0xffffffffffffffff (alignment 8, section ID 8, name __apple_objc) | |
0x1055f8710: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x1055f8720: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x1055f8730: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8740: 00 00 | |
[0x1055f8748+0x32]->0xffffffffffffffff (alignment 8, section ID 9, name __apple_namespac) | |
0x1055f8748: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x1055f8758: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x1055f8768: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8778: 00 00 | |
[0x1055f8780+0x14d]->0xffffffffffffffff (alignment 8, section ID 10, name __apple_types) | |
0x1055f8780: 48 53 41 48 01 00 00 00 09 00 00 00 09 00 00 00 | |
0x1055f8790: 14 00 00 00 00 00 00 00 03 00 00 00 01 00 06 00 | |
0x1055f87a0: 03 00 05 00 04 00 0b 00 00 00 00 00 ff ff ff ff | |
0x1055f87b0: ff ff ff ff ff ff ff ff ff ff ff ff 01 00 00 00 | |
0x1055f87c0: 04 00 00 00 06 00 00 00 07 00 00 00 72 b6 d0 f9 | |
0x1055f87d0: cd 93 3c b2 5b 73 8c dc a0 a7 cb f9 bb 4e f8 0c | |
0x1055f87e0: 93 f2 d0 1b 67 1d d1 59 5d e8 53 11 63 20 95 7c | |
0x1055f87f0: 94 00 00 00 a7 00 00 00 ba 00 00 00 cd 00 00 00 | |
0x1055f8800: e0 00 00 00 f3 00 00 00 06 01 00 00 19 01 00 00 | |
0x1055f8810: 2c 01 00 00 b4 01 00 00 01 00 00 00 5e 02 00 00 | |
0x1055f8820: 24 00 00 00 00 00 00 bc 00 00 00 01 00 00 00 08 | |
0x1055f8830: 01 00 00 24 00 00 00 00 00 00 7a 00 00 00 01 00 | |
0x1055f8840: 00 00 54 00 00 00 24 00 00 00 00 00 00 fd 01 00 | |
0x1055f8850: 00 01 00 00 00 6a 02 00 00 24 00 00 00 00 00 00 | |
0x1055f8860: 9d 00 00 00 01 00 00 00 ea 00 00 00 16 00 00 00 | |
0x1055f8870: 00 00 00 ad 01 00 00 01 00 00 00 53 02 00 00 16 | |
0x1055f8880: 00 00 00 00 00 00 8f 00 00 00 01 00 00 00 c8 00 | |
0x1055f8890: 00 00 13 00 00 00 00 00 00 b3 00 00 00 01 00 00 | |
0x1055f88a0: 00 fd 00 00 00 16 00 00 00 00 00 00 75 00 00 00 | |
0x1055f88b0: 01 00 00 00 4d 00 00 00 24 00 00 00 00 00 00 00 | |
0x1055f88c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1055f88d0+0xc1]->0xffffffffffffffff (alignment 8, section ID 11, name __debug_line) | |
0x1055f88d0: a7 00 00 00 04 00 2d 00 00 00 01 01 01 fb 0e 0d | |
0x1055f88e0: 00 01 01 01 01 00 00 00 01 00 00 01 00 3c 6c 6c | |
0x1055f88f0: 64 62 20 77 72 61 70 70 65 72 20 70 72 65 66 69 | |
0x1055f8900: 78 3e 00 00 00 00 00 00 09 02 00 c0 ee 1c 01 00 | |
0x1055f8910: 00 00 03 3c 01 0a 02 24 13 06 4a 4a 06 08 ad 06 | |
0x1055f8920: 4a 4a 06 08 ae f3 06 4a 4a 06 08 ae 84 84 4b 49 | |
0x1055f8930: f4 06 4a 4a 06 08 ae 4b 06 4a 82 06 84 06 82 06 | |
0x1055f8940: 84 08 75 08 3d 06 4a 06 4b f3 08 3e 06 4a 06 4b | |
0x1055f8950: 4b 83 83 06 ba 4a 06 83 08 73 08 76 08 75 08 75 | |
0x1055f8960: 06 4a 4a 06 02 3c 13 4b 03 6c ba 03 17 f2 06 82 | |
0x1055f8970: 06 84 08 3d 08 3f 02 10 00 01 01 00 00 00 00 00 | |
0x1055f8980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1055f8990: 00 | |
Couldn't find llvm.global_ctors. | |
[ClangASTImporter] Forgetting destination (ASTContext*)0x0000000127BE3800 | |
[ClangASTImporter] Forgetting source->dest (ASTContext*)0x0000000127BE3800->(ASTContext*)0x0000000134A71600 | |
Expression: | |
extern "C" void __lldb_caller_function (void *input) | |
{ | |
struct __lldb_caller_struct | |
{ | |
unsigned int (*fn_ptr) (void *, void *, unsigned int, void *, unsigned int, unsigned int); | |
void * arg_0; | |
void * arg_1; | |
unsigned int arg_2; | |
void * arg_3; | |
unsigned int arg_4; | |
unsigned int arg_5; | |
unsigned int return_value; | |
}; | |
struct __lldb_caller_struct* __lldb_fn_data = (struct __lldb_caller_struct *) input; | |
__lldb_fn_data->return_value = __lldb_fn_data->fn_ptr (__lldb_fn_data->arg_0, __lldb_fn_data->arg_1, __lldb_fn_data->arg_2, __lldb_fn_data->arg_3, __lldb_fn_data->arg_4, __lldb_fn_data->arg_5); | |
} | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
Found function __lldb_caller_function for __lldb_caller_function | |
DoPrepareForExecution - Current expression language is unknown | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.__lldb_caller_struct = type { ptr, ptr, ptr, i32, ptr, i32, i32, i32 } | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @__lldb_caller_function(ptr %input) #0 !dbg !6 { | |
entry: | |
%input.addr = alloca ptr, align 8, !clang.decl.ptr !35 | |
%__lldb_fn_data = alloca ptr, align 8, !clang.decl.ptr !36 | |
store ptr %input, ptr %input.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %input.addr, metadata !37, metadata !DIExpression()), !dbg !38 | |
call void @llvm.dbg.declare(metadata ptr %__lldb_fn_data, metadata !39, metadata !DIExpression()), !dbg !40 | |
%0 = load ptr, ptr %input.addr, align 8, !dbg !40 | |
store ptr %0, ptr %__lldb_fn_data, align 8, !dbg !40 | |
%1 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !41 | |
%fn_ptr = getelementptr inbounds %struct.__lldb_caller_struct, ptr %1, i32 0, i32 0, !dbg !41 | |
%2 = load ptr, ptr %fn_ptr, align 8, !dbg !41 | |
%3 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !41 | |
%arg_0 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %3, i32 0, i32 1, !dbg !41 | |
%4 = load ptr, ptr %arg_0, align 8, !dbg !41 | |
%5 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !41 | |
%arg_1 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %5, i32 0, i32 2, !dbg !41 | |
%6 = load ptr, ptr %arg_1, align 8, !dbg !41 | |
%7 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !41 | |
%arg_2 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %7, i32 0, i32 3, !dbg !41 | |
%8 = load i32, ptr %arg_2, align 8, !dbg !41 | |
%9 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !41 | |
%arg_3 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %9, i32 0, i32 4, !dbg !41 | |
%10 = load ptr, ptr %arg_3, align 8, !dbg !41 | |
%11 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !41 | |
%arg_4 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %11, i32 0, i32 5, !dbg !41 | |
%12 = load i32, ptr %arg_4, align 8, !dbg !41 | |
%13 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !41 | |
%arg_5 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %13, i32 0, i32 6, !dbg !41 | |
%14 = load i32, ptr %arg_5, align 4, !dbg !41 | |
%call = call i32 %2(ptr %4, ptr %6, i32 %8, ptr %10, i32 %12, i32 %14) #2, !dbg !41 | |
%15 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !41 | |
%return_value = getelementptr inbounds %struct.__lldb_caller_struct, ptr %15, i32 0, i32 7, !dbg !41 | |
store i32 %call, ptr %return_value, align 8, !dbg !41 | |
ret void, !dbg !42 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
attributes #2 = { convergent "no-builtins" } | |
!llvm.dbg.cu = !{!0} | |
!llvm.module.flags = !{!24, !25, !26, !27, !28, !29, !30, !31, !32} | |
!clang.global.decl.ptrs = !{!33} | |
!llvm.ident = !{!34} | |
!0 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !1, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug, retainedTypes: !2) | |
!1 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!2 = !{!3} | |
!3 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64) | |
!4 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__lldb_caller_struct", scope: !6, file: !5, line: 3, size: 448, flags: DIFlagTypePassByValue, elements: !11) | |
!5 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/lldb-f9102b.expr", directory: "") | |
!6 = distinct !DISubprogram(name: "__lldb_caller_function", scope: !5, file: !5, line: 1, type: !7, scopeLine: 2, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !10) | |
!7 = !DISubroutineType(types: !8) | |
!8 = !{null, !9} | |
!9 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64) | |
!10 = !{} | |
!11 = !{!12, !17, !18, !19, !20, !21, !22, !23} | |
!12 = !DIDerivedType(tag: DW_TAG_member, name: "fn_ptr", scope: !4, file: !5, line: 5, baseType: !13, size: 64) | |
!13 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !14, size: 64) | |
!14 = !DISubroutineType(types: !15) | |
!15 = !{!16, !9, !9, !16, !9, !16, !16} | |
!16 = !DIBasicType(name: "unsigned int", size: 32, encoding: DW_ATE_unsigned) | |
!17 = !DIDerivedType(tag: DW_TAG_member, name: "arg_0", scope: !4, file: !5, line: 6, baseType: !9, size: 64, offset: 64) | |
!18 = !DIDerivedType(tag: DW_TAG_member, name: "arg_1", scope: !4, file: !5, line: 7, baseType: !9, size: 64, offset: 128) | |
!19 = !DIDerivedType(tag: DW_TAG_member, name: "arg_2", scope: !4, file: !5, line: 8, baseType: !16, size: 32, offset: 192) | |
!20 = !DIDerivedType(tag: DW_TAG_member, name: "arg_3", scope: !4, file: !5, line: 9, baseType: !9, size: 64, offset: 256) | |
!21 = !DIDerivedType(tag: DW_TAG_member, name: "arg_4", scope: !4, file: !5, line: 10, baseType: !16, size: 32, offset: 320) | |
!22 = !DIDerivedType(tag: DW_TAG_member, name: "arg_5", scope: !4, file: !5, line: 11, baseType: !16, size: 32, offset: 352) | |
!23 = !DIDerivedType(tag: DW_TAG_member, name: "return_value", scope: !4, file: !5, line: 12, baseType: !16, size: 32, offset: 384) | |
!24 = !{i32 1, !"Objective-C Version", i32 2} | |
!25 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!26 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!27 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!28 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!29 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!30 = !{i32 2, !"Debug Info Version", i32 3} | |
!31 = !{i32 1, !"wchar_size", i32 4} | |
!32 = !{i32 7, !"frame-pointer", i32 2} | |
!33 = !{ptr @__lldb_caller_function, i64 5180203688} | |
!34 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!35 = !{i64 5180203488} | |
!36 = !{i64 5180206520} | |
!37 = !DILocalVariable(name: "input", arg: 1, scope: !6, file: !5, line: 1, type: !9) | |
!38 = !DILocation(line: 1, scope: !6) | |
!39 = !DILocalVariable(name: "__lldb_fn_data", scope: !6, file: !5, line: 14, type: !3) | |
!40 = !DILocation(line: 14, scope: !6) | |
!41 = !DILocation(line: 15, scope: !6) | |
!42 = !DILocation(line: 16, scope: !6) | |
IRExecutionUnit::allocateCodeSection(Size=0x73, Alignment=8, SectionID=0) = 0x1055fc000 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=1) = 0x105738000 | |
IRExecutionUnit::allocateDataSection(Size=0x99, Alignment=8, SectionID=2) = 0x105738018 | |
IRExecutionUnit::allocateDataSection(Size=0x11c, Alignment=8, SectionID=3) = 0x1057380b8 | |
IRExecutionUnit::allocateDataSection(Size=0x109, Alignment=8, SectionID=4) = 0x1057381d8 | |
IRExecutionUnit::allocateDataSection(Size=0x4a, Alignment=8, SectionID=5) = 0x1057382e8 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=6) = 0x105738338 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=7) = 0x105738370 | |
IRExecutionUnit::allocateDataSection(Size=0x74, Alignment=8, SectionID=8) = 0x1057383a8 | |
IRExecutionUnit::allocateDataSection(Size=0x9d, Alignment=8, SectionID=9) = 0x105738420 | |
IRMemoryMap::Malloc (127, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11ceec3a0 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f80c0 | |
IRMemoryMap::WriteMemory (0x11ceec3a0, 0x1055fc000, 0x115) went to [0x11ceec3a0..0x11ceec41f) | |
IRMemoryMap::WriteMemory (0x11d0f80c0, 0x105738000, 0x22) went to [0x11d0f80c0..0x11d0f80df) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x1055fc000 in [0x1055fc000..0x1055fc073], and returned 0x11ceec3a0 from [0x11ceec3a0..0x11ceec413]. | |
Code can be run in the target. | |
Found function, has local address 0x1055fc000 and remote address 0x11ceec3a0 | |
Function's code range is [0x11ceec3a0+0x73] | |
Function data has contents: | |
0x11ceec3a0: ff 83 00 d1 fd 7b 01 a9 fd 43 00 91 e0 07 00 f9 | |
0x11ceec3b0: e8 07 40 f9 e8 03 00 f9 e8 03 40 f9 08 01 40 f9 | |
0x11ceec3c0: e9 03 40 f9 20 05 40 f9 e9 03 40 f9 21 09 40 f9 | |
0x11ceec3d0: e9 03 40 f9 22 19 40 b9 e9 03 40 f9 23 11 40 f9 | |
0x11ceec3e0: e9 03 40 f9 24 29 40 b9 e9 03 40 f9 25 2d 40 b9 | |
0x11ceec3f0: 00 01 3f d6 e8 03 40 f9 00 31 00 b9 fd 7b 41 a9 | |
0x11ceec400: ff 83 00 91 c0 03 5f d6 00 00 00 00 00 00 00 00 | |
0x11ceec410: 00 00 00 | |
Function disassembly: | |
0x11ceec3a0: 0xd10083ff unknown sub sp, sp, #0x20 | |
0x11ceec3a4: 0xa9017bfd unknown stp x29, x30, [sp, #0x10] | |
0x11ceec3a8: 0x910043fd unknown add x29, sp, #0x10 | |
0x11ceec3ac: 0xf90007e0 unknown str x0, [sp, #0x8] | |
0x11ceec3b0: 0xf94007e8 unknown ldr x8, [sp, #0x8] | |
0x11ceec3b4: 0xf90003e8 unknown str x8, [sp] | |
0x11ceec3b8: 0xf94003e8 unknown ldr x8, [sp] | |
0x11ceec3bc: 0xf9400108 unknown ldr x8, [x8] | |
0x11ceec3c0: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec3c4: 0xf9400520 unknown ldr x0, [x9, #0x8] | |
0x11ceec3c8: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec3cc: 0xf9400921 unknown ldr x1, [x9, #0x10] | |
0x11ceec3d0: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec3d4: 0xb9401922 unknown ldr w2, [x9, #0x18] | |
0x11ceec3d8: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec3dc: 0xf9401123 unknown ldr x3, [x9, #0x20] | |
0x11ceec3e0: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec3e4: 0xb9402924 unknown ldr w4, [x9, #0x28] | |
0x11ceec3e8: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec3ec: 0xb9402d25 unknown ldr w5, [x9, #0x2c] | |
0x11ceec3f0: 0xd63f0100 unknown blr x8 | |
0x11ceec3f4: 0xf94003e8 unknown ldr x8, [sp] | |
0x11ceec3f8: 0xb9003100 unknown str w0, [x8, #0x30] | |
0x11ceec3fc: 0xa9417bfd unknown ldp x29, x30, [sp, #0x10] | |
0x11ceec400: 0x910083ff unknown add sp, sp, #0x20 | |
0x11ceec404: 0xd65f03c0 unknown ret | |
0x11ceec408: 0x00000000 unknown udf #0x0 | |
0x11ceec40c: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x1055fc000+0x73]->0x11ceec3a0 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11ceec3a0, 0x600002ea0a00, 0x115) came from [0x11ceec3a0..0x11ceec41f) | |
0x11ceec3a0: ff 83 00 d1 fd 7b 01 a9 fd 43 00 91 e0 07 00 f9 | |
0x11ceec3b0: e8 07 40 f9 e8 03 00 f9 e8 03 40 f9 08 01 40 f9 | |
0x11ceec3c0: e9 03 40 f9 20 05 40 f9 e9 03 40 f9 21 09 40 f9 | |
0x11ceec3d0: e9 03 40 f9 22 19 40 b9 e9 03 40 f9 23 11 40 f9 | |
0x11ceec3e0: e9 03 40 f9 24 29 40 b9 e9 03 40 f9 25 2d 40 b9 | |
0x11ceec3f0: 00 01 3f d6 e8 03 40 f9 00 31 00 b9 fd 7b 41 a9 | |
0x11ceec400: ff 83 00 91 c0 03 5f d6 00 00 00 00 00 00 00 00 | |
0x11ceec410: 00 00 00 | |
[0x105738000+0x16]->0x11d0f80c0 (alignment 8, section ID 1, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f80c0, 0x6000007d0080, 0x22) came from [0x11d0f80c0..0x11d0f80df) | |
0x11d0f80c0: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f80d0: 00 00 00 00 00 00 | |
[0x105738018+0x99]->0xffffffffffffffff (alignment 8, section ID 2, name __debug_abbrev) | |
0x105738018: 01 11 01 25 0e 13 05 03 0e 10 17 1b 0e e5 7f 0b | |
0x105738028: 11 01 12 06 00 00 02 0f 00 49 13 00 00 03 2e 01 | |
0x105738038: 11 01 12 06 40 18 03 0e 3a 0b 3b 0b 3f 19 00 00 | |
0x105738048: 04 13 01 36 0b 03 0e 0b 0b 3a 0b 3b 0b 00 00 05 | |
0x105738058: 0d 00 03 0e 49 13 3a 0b 3b 0b 38 0b 00 00 06 05 | |
0x105738068: 00 02 18 03 0e 3a 0b 3b 0b 49 13 00 00 07 34 00 | |
0x105738078: 02 18 03 0e 3a 0b 3b 0b 49 13 00 00 08 15 01 49 | |
0x105738088: 13 00 00 09 05 00 49 13 00 00 0a 24 00 03 0e 3e | |
0x105738098: 0b 0b 0b 00 00 0b 0f 00 00 00 00 00 00 00 00 00 | |
0x1057380a8: 00 00 00 00 00 00 00 00 00 | |
[0x1057380b8+0x11c]->0xffffffffffffffff (alignment 8, section ID 3, name __debug_info) | |
0x1057380b8: fa 00 00 00 04 00 00 00 00 00 08 01 00 00 00 00 | |
0x1057380c8: 11 00 2f 00 00 00 00 00 00 00 73 00 00 00 02 a0 | |
0x1057380d8: c3 ee 1c 01 00 00 00 68 00 00 00 02 45 00 00 00 | |
0x1057380e8: 03 a0 c3 ee 1c 01 00 00 00 68 00 00 00 01 6d cf | |
0x1057380f8: 00 00 00 01 01 04 05 75 00 00 00 38 01 03 05 8a | |
0x105738108: 00 00 00 cc 00 00 00 01 05 00 05 9e 00 00 00 fc | |
0x105738118: 00 00 00 01 06 08 05 a4 00 00 00 fc 00 00 00 01 | |
0x105738128: 07 10 05 aa 00 00 00 f5 00 00 00 01 08 18 05 b0 | |
0x105738138: 00 00 00 fc 00 00 00 01 09 20 05 b6 00 00 00 f5 | |
0x105738148: 00 00 00 01 0a 28 05 bc 00 00 00 f5 00 00 00 01 | |
0x105738158: 0b 2c 05 c2 00 00 00 f5 00 00 00 01 0c 30 00 06 | |
0x105738168: 02 8f 08 e6 00 00 00 01 01 fc 00 00 00 07 02 8f | |
0x105738178: 00 ec 00 00 00 01 0e 2b 00 00 00 00 02 d1 00 00 | |
0x105738188: 00 08 f5 00 00 00 09 fc 00 00 00 09 fc 00 00 00 | |
0x105738198: 09 f5 00 00 00 09 fc 00 00 00 09 f5 00 00 00 09 | |
0x1057381a8: f5 00 00 00 00 0a 91 00 00 00 07 04 0b 00 00 00 | |
0x1057381b8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1057381c8: 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1057381d8+0x109]->0xffffffffffffffff (alignment 8, section ID 4, name __debug_str) | |
0x1057381d8: 41 70 70 6c 65 20 63 6c 61 6e 67 20 76 65 72 73 | |
0x1057381e8: 69 6f 6e 20 31 35 2e 30 2e 30 20 28 63 6c 61 6e | |
0x1057381f8: 67 2d 31 35 30 30 2e 30 2e 34 30 2e 31 29 00 2f | |
0x105738208: 76 61 72 2f 66 6f 6c 64 65 72 73 2f 6a 6b 2f 32 | |
0x105738218: 6e 6b 6c 62 68 30 78 35 6b 73 63 31 39 32 6a 73 | |
0x105738228: 6d 39 6e 68 6e 68 63 30 30 30 30 67 6e 2f 54 2f | |
0x105738238: 6c 6c 64 62 2f 38 39 35 30 31 2f 3c 73 74 64 69 | |
0x105738248: 6e 3e 00 2f 00 5f 5f 6c 6c 64 62 5f 63 61 6c 6c | |
0x105738258: 65 72 5f 73 74 72 75 63 74 00 66 6e 5f 70 74 72 | |
0x105738268: 00 75 6e 73 69 67 6e 65 64 20 69 6e 74 00 61 72 | |
0x105738278: 67 5f 30 00 61 72 67 5f 31 00 61 72 67 5f 32 00 | |
0x105738288: 61 72 67 5f 33 00 61 72 67 5f 34 00 61 72 67 5f | |
0x105738298: 35 00 72 65 74 75 72 6e 5f 76 61 6c 75 65 00 5f | |
0x1057382a8: 5f 6c 6c 64 62 5f 63 61 6c 6c 65 72 5f 66 75 6e | |
0x1057382b8: 63 74 69 6f 6e 00 69 6e 70 75 74 00 5f 5f 6c 6c | |
0x1057382c8: 64 62 5f 66 6e 5f 64 61 74 61 00 00 00 00 00 00 | |
0x1057382d8: 00 00 00 00 00 00 00 00 00 | |
[0x1057382e8+0x4a]->0xffffffffffffffff (alignment 8, section ID 5, name __apple_names) | |
0x1057382e8: 48 53 41 48 01 00 00 00 01 00 00 00 01 00 00 00 | |
0x1057382f8: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x105738308: 00 00 00 00 78 e2 e3 24 2c 00 00 00 cf 00 00 00 | |
0x105738318: 01 00 00 00 30 00 00 00 00 00 00 00 00 00 00 00 | |
0x105738328: 00 00 00 00 00 00 00 00 00 00 | |
[0x105738338+0x32]->0xffffffffffffffff (alignment 8, section ID 6, name __apple_objc) | |
0x105738338: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x105738348: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x105738358: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x105738368: 00 00 | |
[0x105738370+0x32]->0xffffffffffffffff (alignment 8, section ID 7, name __apple_namespac) | |
0x105738370: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x105738380: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x105738390: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1057383a0: 00 00 | |
[0x1057383a8+0x74]->0xffffffffffffffff (alignment 8, section ID 8, name __apple_types) | |
0x1057383a8: 48 53 41 48 01 00 00 00 02 00 00 00 02 00 00 00 | |
0x1057383b8: 14 00 00 00 00 00 00 00 03 00 00 00 01 00 06 00 | |
0x1057383c8: 03 00 05 00 04 00 0b 00 ff ff ff ff 00 00 00 00 | |
0x1057383d8: cd 93 3c b2 97 1c 19 b7 40 00 00 00 53 00 00 00 | |
0x1057383e8: 91 00 00 00 01 00 00 00 f5 00 00 00 24 00 00 00 | |
0x1057383f8: 00 00 00 75 00 00 00 01 00 00 00 45 00 00 00 13 | |
0x105738408: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x105738418: 00 00 00 00 | |
[0x105738420+0x9d]->0xffffffffffffffff (alignment 8, section ID 9, name __debug_line) | |
0x105738420: 83 00 00 00 04 00 64 00 00 00 01 01 01 fb 0e 0d | |
0x105738430: 00 01 01 01 01 00 00 00 01 00 00 01 2f 76 61 72 | |
0x105738440: 2f 66 6f 6c 64 65 72 73 2f 6a 6b 2f 32 6e 6b 6c | |
0x105738450: 62 68 30 78 35 6b 73 63 31 39 32 6a 73 6d 39 6e | |
0x105738460: 68 6e 68 63 30 30 30 30 67 6e 2f 54 2f 6c 6c 64 | |
0x105738470: 62 2f 38 39 35 30 31 00 00 6c 6c 64 62 2d 66 39 | |
0x105738480: 31 30 32 62 2e 65 78 70 72 00 01 00 00 00 00 09 | |
0x105738490: 02 a0 c3 ee 1c 01 00 00 00 13 0a 03 0c f2 83 02 | |
0x1057384a0: 44 13 02 0c 00 01 01 00 00 00 00 00 00 00 00 00 | |
0x1057384b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
== [FunctionCaller::ExecuteFunction] Executing function "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" == | |
-- [FunctionCaller::GetThreadPlanToCallFunction] Creating thread plan to call function "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" -- | |
ABIMacOSX_arm64::PrepareTrivialCall (tid = 0x247096, sp = 0x16fb8eef0, func_addr = 0x11ceec3a0, return_addr = 0x10026d6ec, arg1 = 0x11d0f80e0) | |
About to write arg1 (0x11d0f80e0) into x0 | |
== [FunctionCaller::ExecuteFunction] Execution of "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" completed normally == | |
-- [FunctionCaller::FetchFunctionResults] Fetching function results for "__lldb_apple_objc_v2_get_dynamic_class_info3-caller"-- | |
Discovered 2380 Objective-C classes | |
Creating utility function __lldb_apple_objc_v2_get_shared_cache_class_info | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
LayoutRecordType on (ASTContext*)0x0000000134D0DC00 'Expression ASTContext for '<clang expression>'' for (RecordDecl*)0x0000000134D5A558 [name = 'ClassInfo'] | |
LayoutRecordType on (ASTContext*)0x0000000134D0DC00 'Expression ASTContext for '<clang expression>'' for (RecordDecl*)0x0000000134D59800 [name = 'objc_opt_t'] | |
LayoutRecordType on (ASTContext*)0x0000000134D0DC00 'Expression ASTContext for '<clang expression>'' for (RecordDecl*)0x0000000134D59B78 [name = 'objc_opt_v14_t'] | |
LayoutRecordType on (ASTContext*)0x0000000134D0DC00 'Expression ASTContext for '<clang expression>'' for (RecordDecl*)0x0000000134D59F48 [name = 'objc_opt_v16_t'] | |
LayoutRecordType on (ASTContext*)0x0000000134D0DC00 'Expression ASTContext for '<clang expression>'' for (RecordDecl*)0x0000000134D581B0 [name = 'objc_clsopt_v16_t'] | |
LayoutRecordType on (ASTContext*)0x0000000134D0DC00 'Expression ASTContext for '<clang expression>'' for (RecordDecl*)0x0000000134D51A38 [name = 'objc_classheader_v16_t'] | |
LayoutRecordType on (ASTContext*)0x0000000134D0DC00 'Expression ASTContext for '<clang expression>'' for (RecordDecl*)0x0000000134D57A68 [name = 'objc_clsopt_t'] | |
LayoutRecordType on (ASTContext*)0x0000000134D0DC00 'Expression ASTContext for '<clang expression>'' for (RecordDecl*)0x0000000134D51750 [name = 'objc_classheader_t'] | |
Found function _Z48__lldb_apple_objc_v2_get_shared_cache_class_infoPvS_S_Pyjj for __lldb_apple_objc_v2_get_shared_cache_class_info | |
DoPrepareForExecution - Current expression language is unknown | |
Module as passed in to IRForTarget: | |
"; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.objc_opt_t = type { i32, i32, i32, i32 } | |
%struct.objc_opt_v16_t = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i64 } | |
%struct.objc_opt_v14_t = type { i32, i32, i32, i32, i32 } | |
%struct.objc_clsopt_v16_t = type { i32, i32, i32, i32, i32, i32, i64, [256 x i32], [0 x i8] } | |
%struct.objc_classheader_v16_t = type { i64 } | |
%struct.ClassInfo = type <{ ptr, i32 }> | |
%struct.objc_clsopt_t = type { i32, i32, i32, i32, i32, i32, i64, [256 x i32], [0 x i8] } | |
%struct.objc_classheader_t = type { i32, i32 } | |
@class_name_lookup_func = global ptr @objc_debug_class_getNameRaw, align 8, !dbg !0 | |
@.str = private unnamed_addr constant [22 x i8] c"objc_opt_ro_ptr = %p\0A\00", align 1, !dbg !102 | |
@.str.1 = private unnamed_addr constant [28 x i8] c"shared_cache_base_ptr = %p\0A\00", align 1, !dbg !109 | |
@.str.2 = private unnamed_addr constant [22 x i8] c"class_infos_ptr = %p\0A\00", align 1, !dbg !114 | |
@.str.3 = private unnamed_addr constant [47 x i8] c"class_infos_byte_size = %u (%llu class infos)\0A\00", align 1, !dbg !116 | |
@.str.4 = private unnamed_addr constant [24 x i8] c"objc_opt->version = %u\0A\00", align 1, !dbg !121 | |
@.str.5 = private unnamed_addr constant [22 x i8] c"objc_opt->flags = %u\0A\00", align 1, !dbg !126 | |
@.str.6 = private unnamed_addr constant [30 x i8] c"objc_opt->selopt_offset = %d\0A\00", align 1, !dbg !128 | |
@.str.7 = private unnamed_addr constant [36 x i8] c"objc_opt->headeropt_ro_offset = %d\0A\00", align 1, !dbg !133 | |
@.str.8 = private unnamed_addr constant [61 x i8] c"objc_opt->relativeMethodSelectorBaseAddressCacheOffset = %d\0A\00", align 1, !dbg !138 | |
@.str.9 = private unnamed_addr constant [33 x i8] c"objc_opt->headeropt_offset = %d\0A\00", align 1, !dbg !143 | |
@.str.10 = private unnamed_addr constant [30 x i8] c"objc_opt->clsopt_offset = %d\0A\00", align 1, !dbg !148 | |
@.str.11 = private unnamed_addr constant [24 x i8] c"max_class_infos = %llu\0A\00", align 1, !dbg !150 | |
@.str.12 = private unnamed_addr constant [23 x i8] c"clsopt->capacity = %u\0A\00", align 1, !dbg !152 | |
@.str.13 = private unnamed_addr constant [24 x i8] c"clsopt->mask = 0x%8.8x\0A\00", align 1, !dbg !157 | |
@.str.14 = private unnamed_addr constant [19 x i8] c"classOffsets = %p\0A\00", align 1, !dbg !159 | |
@.str.15 = private unnamed_addr constant [28 x i8] c"objectCacheOffset[%u] = %u\0A\00", align 1, !dbg !164 | |
@.str.16 = private unnamed_addr constant [20 x i8] c"isDuplicate = true\0A\00", align 1, !dbg !166 | |
@.str.17 = private unnamed_addr constant [41 x i8] c"objectCacheOffset == invalidEntryOffset\0A\00", align 1, !dbg !171 | |
@.str.18 = private unnamed_addr constant [19 x i8] c"[%u] isa = %8p %s\0A\00", align 1, !dbg !176 | |
@.str.19 = private unnamed_addr constant [43 x i8] c"not(class_infos && idx < max_class_infos)\0A\00", align 1, !dbg !178 | |
@.str.20 = private unnamed_addr constant [22 x i8] c"duplicate_count = %u\0A\00", align 1, !dbg !183 | |
@.str.21 = private unnamed_addr constant [28 x i8] c"duplicateClassOffsets = %p\0A\00", align 1, !dbg !185 | |
@.str.22 = private unnamed_addr constant [25 x i8] c"invalidEntryOffset = %d\0A\00", align 1, !dbg !187 | |
@.str.23 = private unnamed_addr constant [20 x i8] c"clsOffset[%u] = %u\0A\00", align 1, !dbg !192 | |
@.str.24 = private unnamed_addr constant [15 x i8] c"clsOffset & 1\0A\00", align 1, !dbg !194 | |
@.str.25 = private unnamed_addr constant [33 x i8] c"clsOffset == invalidEntryOffset\0A\00", align 1, !dbg !199 | |
@.str.26 = private unnamed_addr constant [16 x i8] c"%u class_infos\0A\00", align 1, !dbg !201 | |
@.str.27 = private unnamed_addr constant [6 x i8] c"done\0A\00", align 1, !dbg !206 | |
; Function Attrs: convergent | |
declare ptr @objc_debug_class_getNameRaw(ptr) #0 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define i32 @_Z48__lldb_apple_objc_v2_get_shared_cache_class_infoPvS_S_Pyjj(ptr %objc_opt_ro_ptr, ptr %shared_cache_base_ptr, ptr %class_infos_ptr, ptr %relative_selector_offset, i32 %class_infos_byte_size, i32 %should_log) #1 !dbg !230 { | |
entry: | |
%objc_opt_ro_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !235 | |
%shared_cache_base_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !236 | |
%class_infos_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !237 | |
%relative_selector_offset.addr = alloca ptr, align 8, !clang.decl.ptr !238 | |
%class_infos_byte_size.addr = alloca i32, align 4, !clang.decl.ptr !239 | |
%should_log.addr = alloca i32, align 4, !clang.decl.ptr !240 | |
%idx = alloca i32, align 4, !clang.decl.ptr !241 | |
%objc_opt = alloca ptr, align 8, !clang.decl.ptr !242 | |
%objc_opt_v14 = alloca ptr, align 8, !clang.decl.ptr !243 | |
%objc_opt_v16 = alloca ptr, align 8, !clang.decl.ptr !244 | |
%clsopt = alloca ptr, align 8, !clang.decl.ptr !245 | |
%max_class_infos = alloca i64, align 8, !clang.decl.ptr !246 | |
%class_infos = alloca ptr, align 8, !clang.decl.ptr !247 | |
%checkbytes = alloca ptr, align 8, !clang.decl.ptr !248 | |
%offsets = alloca ptr, align 8, !clang.decl.ptr !249 | |
%classOffsets = alloca ptr, align 8, !clang.decl.ptr !250 | |
%i = alloca i32, align 4, !clang.decl.ptr !251 | |
%objectCacheOffset = alloca i64, align 8, !clang.decl.ptr !252 | |
%name = alloca ptr, align 8, !clang.decl.ptr !253 | |
%s = alloca ptr, align 8, !clang.decl.ptr !254 | |
%h = alloca i32, align 4, !clang.decl.ptr !255 | |
%c = alloca i8, align 1, !clang.decl.ptr !256 | |
%duplicate_count_ptr = alloca ptr, align 8, !clang.decl.ptr !257 | |
%duplicate_count = alloca i32, align 4, !clang.decl.ptr !258 | |
%duplicateClassOffsets = alloca ptr, align 8, !clang.decl.ptr !259 | |
%i191 = alloca i32, align 4, !clang.decl.ptr !260 | |
%objectCacheOffset195 = alloca i64, align 8, !clang.decl.ptr !261 | |
%name232 = alloca ptr, align 8, !clang.decl.ptr !262 | |
%s244 = alloca ptr, align 8, !clang.decl.ptr !263 | |
%h245 = alloca i32, align 4, !clang.decl.ptr !264 | |
%c246 = alloca i8, align 1, !clang.decl.ptr !265 | |
%clsopt275 = alloca ptr, align 8, !clang.decl.ptr !266 | |
%max_class_infos287 = alloca i64, align 8, !clang.decl.ptr !267 | |
%class_infos294 = alloca ptr, align 8, !clang.decl.ptr !268 | |
%invalidEntryOffset = alloca i32, align 4, !clang.decl.ptr !269 | |
%checkbytes299 = alloca ptr, align 8, !clang.decl.ptr !270 | |
%offsets305 = alloca ptr, align 8, !clang.decl.ptr !271 | |
%classOffsets309 = alloca ptr, align 8, !clang.decl.ptr !272 | |
%i331 = alloca i32, align 4, !clang.decl.ptr !273 | |
%clsOffset = alloca i32, align 4, !clang.decl.ptr !274 | |
%name368 = alloca ptr, align 8, !clang.decl.ptr !275 | |
%s380 = alloca ptr, align 8, !clang.decl.ptr !276 | |
%h381 = alloca i32, align 4, !clang.decl.ptr !277 | |
%c382 = alloca i8, align 1, !clang.decl.ptr !278 | |
%duplicate_count_ptr410 = alloca ptr, align 8, !clang.decl.ptr !279 | |
%duplicate_count414 = alloca i32, align 4, !clang.decl.ptr !280 | |
%duplicateClassOffsets415 = alloca ptr, align 8, !clang.decl.ptr !281 | |
%i425 = alloca i32, align 4, !clang.decl.ptr !282 | |
%clsOffset429 = alloca i32, align 4, !clang.decl.ptr !283 | |
%name451 = alloca ptr, align 8, !clang.decl.ptr !284 | |
%s463 = alloca ptr, align 8, !clang.decl.ptr !285 | |
%h464 = alloca i32, align 4, !clang.decl.ptr !286 | |
%c465 = alloca i8, align 1, !clang.decl.ptr !287 | |
store ptr %objc_opt_ro_ptr, ptr %objc_opt_ro_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %objc_opt_ro_ptr.addr, metadata !288, metadata !DIExpression()), !dbg !289 | |
store ptr %shared_cache_base_ptr, ptr %shared_cache_base_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %shared_cache_base_ptr.addr, metadata !290, metadata !DIExpression()), !dbg !291 | |
store ptr %class_infos_ptr, ptr %class_infos_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %class_infos_ptr.addr, metadata !292, metadata !DIExpression()), !dbg !293 | |
store ptr %relative_selector_offset, ptr %relative_selector_offset.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %relative_selector_offset.addr, metadata !294, metadata !DIExpression()), !dbg !295 | |
store i32 %class_infos_byte_size, ptr %class_infos_byte_size.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %class_infos_byte_size.addr, metadata !296, metadata !DIExpression()), !dbg !297 | |
store i32 %should_log, ptr %should_log.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %should_log.addr, metadata !298, metadata !DIExpression()), !dbg !299 | |
%0 = load ptr, ptr %relative_selector_offset.addr, align 8, !dbg !300 | |
store i64 0, ptr %0, align 8, !dbg !300 | |
call void @llvm.dbg.declare(metadata ptr %idx, metadata !301, metadata !DIExpression()), !dbg !302 | |
store i32 0, ptr %idx, align 4, !dbg !302 | |
%1 = load i32, ptr %should_log.addr, align 4, !dbg !303 | |
%tobool = icmp ne i32 %1, 0, !dbg !303 | |
br i1 %tobool, label %if.then, label %if.end, !dbg !305 | |
if.then: ; preds = %entry | |
%2 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !303 | |
%call = call i32 (ptr, ...) @printf(ptr @.str, ptr %2) #3, !dbg !303 | |
br label %if.end, !dbg !303 | |
if.end: ; preds = %if.then, %entry | |
%3 = load i32, ptr %should_log.addr, align 4, !dbg !306 | |
%tobool1 = icmp ne i32 %3, 0, !dbg !306 | |
br i1 %tobool1, label %if.then2, label %if.end4, !dbg !308 | |
if.then2: ; preds = %if.end | |
%4 = load ptr, ptr %shared_cache_base_ptr.addr, align 8, !dbg !306 | |
%call3 = call i32 (ptr, ...) @printf(ptr @.str.1, ptr %4) #3, !dbg !306 | |
br label %if.end4, !dbg !306 | |
if.end4: ; preds = %if.then2, %if.end | |
%5 = load i32, ptr %should_log.addr, align 4, !dbg !309 | |
%tobool5 = icmp ne i32 %5, 0, !dbg !309 | |
br i1 %tobool5, label %if.then6, label %if.end8, !dbg !311 | |
if.then6: ; preds = %if.end4 | |
%6 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !309 | |
%call7 = call i32 (ptr, ...) @printf(ptr @.str.2, ptr %6) #3, !dbg !309 | |
br label %if.end8, !dbg !309 | |
if.end8: ; preds = %if.then6, %if.end4 | |
%7 = load i32, ptr %should_log.addr, align 4, !dbg !312 | |
%tobool9 = icmp ne i32 %7, 0, !dbg !312 | |
br i1 %tobool9, label %if.then10, label %if.end12, !dbg !314 | |
if.then10: ; preds = %if.end8 | |
%8 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !312 | |
%9 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !312 | |
%conv = zext i32 %9 to i64, !dbg !312 | |
%div = udiv i64 %conv, 12, !dbg !312 | |
%call11 = call i32 (ptr, ...) @printf(ptr @.str.3, i32 %8, i64 %div) #3, !dbg !312 | |
br label %if.end12, !dbg !312 | |
if.end12: ; preds = %if.then10, %if.end8 | |
%10 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !315 | |
%tobool13 = icmp ne ptr %10, null, !dbg !315 | |
br i1 %tobool13, label %if.then14, label %if.end498, !dbg !317 | |
if.then14: ; preds = %if.end12 | |
call void @llvm.dbg.declare(metadata ptr %objc_opt, metadata !318, metadata !DIExpression()), !dbg !322 | |
%11 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !322 | |
store ptr %11, ptr %objc_opt, align 8, !dbg !322 | |
call void @llvm.dbg.declare(metadata ptr %objc_opt_v14, metadata !323, metadata !DIExpression()), !dbg !326 | |
%12 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !326 | |
store ptr %12, ptr %objc_opt_v14, align 8, !dbg !326 | |
call void @llvm.dbg.declare(metadata ptr %objc_opt_v16, metadata !327, metadata !DIExpression()), !dbg !330 | |
%13 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !330 | |
store ptr %13, ptr %objc_opt_v16, align 8, !dbg !330 | |
%14 = load ptr, ptr %objc_opt, align 8, !dbg !331 | |
%version = getelementptr inbounds %struct.objc_opt_t, ptr %14, i32 0, i32 0, !dbg !331 | |
%15 = load i32, ptr %version, align 4, !dbg !331 | |
%cmp = icmp uge i32 %15, 16, !dbg !331 | |
br i1 %cmp, label %if.then15, label %if.else, !dbg !333 | |
if.then15: ; preds = %if.then14 | |
%16 = load ptr, ptr %objc_opt_v16, align 8, !dbg !334 | |
%relativeMethodSelectorBaseAddressCacheOffset = getelementptr inbounds %struct.objc_opt_v16_t, ptr %16, i32 0, i32 10, !dbg !334 | |
%17 = load i64, ptr %relativeMethodSelectorBaseAddressCacheOffset, align 8, !dbg !334 | |
%18 = load ptr, ptr %relative_selector_offset.addr, align 8, !dbg !334 | |
store i64 %17, ptr %18, align 8, !dbg !334 | |
%19 = load i32, ptr %should_log.addr, align 4, !dbg !336 | |
%tobool16 = icmp ne i32 %19, 0, !dbg !336 | |
br i1 %tobool16, label %if.then17, label %if.end20, !dbg !338 | |
if.then17: ; preds = %if.then15 | |
%20 = load ptr, ptr %objc_opt_v16, align 8, !dbg !336 | |
%version18 = getelementptr inbounds %struct.objc_opt_v16_t, ptr %20, i32 0, i32 0, !dbg !336 | |
%21 = load i32, ptr %version18, align 8, !dbg !336 | |
%call19 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %21) #3, !dbg !336 | |
br label %if.end20, !dbg !336 | |
if.end20: ; preds = %if.then17, %if.then15 | |
%22 = load i32, ptr %should_log.addr, align 4, !dbg !339 | |
%tobool21 = icmp ne i32 %22, 0, !dbg !339 | |
br i1 %tobool21, label %if.then22, label %if.end24, !dbg !341 | |
if.then22: ; preds = %if.end20 | |
%23 = load ptr, ptr %objc_opt_v16, align 8, !dbg !339 | |
%flags = getelementptr inbounds %struct.objc_opt_v16_t, ptr %23, i32 0, i32 1, !dbg !339 | |
%24 = load i32, ptr %flags, align 4, !dbg !339 | |
%call23 = call i32 (ptr, ...) @printf(ptr @.str.5, i32 %24) #3, !dbg !339 | |
br label %if.end24, !dbg !339 | |
if.end24: ; preds = %if.then22, %if.end20 | |
%25 = load i32, ptr %should_log.addr, align 4, !dbg !342 | |
%tobool25 = icmp ne i32 %25, 0, !dbg !342 | |
br i1 %tobool25, label %if.then26, label %if.end28, !dbg !344 | |
if.then26: ; preds = %if.end24 | |
%26 = load ptr, ptr %objc_opt_v16, align 8, !dbg !342 | |
%selopt_offset = getelementptr inbounds %struct.objc_opt_v16_t, ptr %26, i32 0, i32 2, !dbg !342 | |
%27 = load i32, ptr %selopt_offset, align 8, !dbg !342 | |
%call27 = call i32 (ptr, ...) @printf(ptr @.str.6, i32 %27) #3, !dbg !342 | |
br label %if.end28, !dbg !342 | |
if.end28: ; preds = %if.then26, %if.end24 | |
%28 = load i32, ptr %should_log.addr, align 4, !dbg !345 | |
%tobool29 = icmp ne i32 %28, 0, !dbg !345 | |
br i1 %tobool29, label %if.then30, label %if.end32, !dbg !347 | |
if.then30: ; preds = %if.end28 | |
%29 = load ptr, ptr %objc_opt_v16, align 8, !dbg !345 | |
%headeropt_ro_offset = getelementptr inbounds %struct.objc_opt_v16_t, ptr %29, i32 0, i32 3, !dbg !345 | |
%30 = load i32, ptr %headeropt_ro_offset, align 4, !dbg !345 | |
%call31 = call i32 (ptr, ...) @printf(ptr @.str.7, i32 %30) #3, !dbg !345 | |
br label %if.end32, !dbg !345 | |
if.end32: ; preds = %if.then30, %if.end28 | |
%31 = load i32, ptr %should_log.addr, align 4, !dbg !348 | |
%tobool33 = icmp ne i32 %31, 0, !dbg !348 | |
br i1 %tobool33, label %if.then34, label %if.end36, !dbg !350 | |
if.then34: ; preds = %if.end32 | |
%32 = load ptr, ptr %relative_selector_offset.addr, align 8, !dbg !348 | |
%33 = load i64, ptr %32, align 8, !dbg !348 | |
%call35 = call i32 (ptr, ...) @printf(ptr @.str.8, i64 %33) #3, !dbg !348 | |
br label %if.end36, !dbg !348 | |
if.end36: ; preds = %if.then34, %if.end32 | |
br label %if.end85, !dbg !351 | |
if.else: ; preds = %if.then14 | |
%34 = load ptr, ptr %objc_opt, align 8, !dbg !352 | |
%version37 = getelementptr inbounds %struct.objc_opt_t, ptr %34, i32 0, i32 0, !dbg !352 | |
%35 = load i32, ptr %version37, align 4, !dbg !352 | |
%cmp38 = icmp uge i32 %35, 14, !dbg !352 | |
br i1 %cmp38, label %if.then39, label %if.else63, !dbg !354 | |
if.then39: ; preds = %if.else | |
%36 = load i32, ptr %should_log.addr, align 4, !dbg !355 | |
%tobool40 = icmp ne i32 %36, 0, !dbg !355 | |
br i1 %tobool40, label %if.then41, label %if.end44, !dbg !358 | |
if.then41: ; preds = %if.then39 | |
%37 = load ptr, ptr %objc_opt_v14, align 8, !dbg !355 | |
%version42 = getelementptr inbounds %struct.objc_opt_v14_t, ptr %37, i32 0, i32 0, !dbg !355 | |
%38 = load i32, ptr %version42, align 4, !dbg !355 | |
%call43 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %38) #3, !dbg !355 | |
br label %if.end44, !dbg !355 | |
if.end44: ; preds = %if.then41, %if.then39 | |
%39 = load i32, ptr %should_log.addr, align 4, !dbg !359 | |
%tobool45 = icmp ne i32 %39, 0, !dbg !359 | |
br i1 %tobool45, label %if.then46, label %if.end49, !dbg !361 | |
if.then46: ; preds = %if.end44 | |
%40 = load ptr, ptr %objc_opt_v14, align 8, !dbg !359 | |
%flags47 = getelementptr inbounds %struct.objc_opt_v14_t, ptr %40, i32 0, i32 1, !dbg !359 | |
%41 = load i32, ptr %flags47, align 4, !dbg !359 | |
%call48 = call i32 (ptr, ...) @printf(ptr @.str.5, i32 %41) #3, !dbg !359 | |
br label %if.end49, !dbg !359 | |
if.end49: ; preds = %if.then46, %if.end44 | |
%42 = load i32, ptr %should_log.addr, align 4, !dbg !362 | |
%tobool50 = icmp ne i32 %42, 0, !dbg !362 | |
br i1 %tobool50, label %if.then51, label %if.end54, !dbg !364 | |
if.then51: ; preds = %if.end49 | |
%43 = load ptr, ptr %objc_opt_v14, align 8, !dbg !362 | |
%selopt_offset52 = getelementptr inbounds %struct.objc_opt_v14_t, ptr %43, i32 0, i32 2, !dbg !362 | |
%44 = load i32, ptr %selopt_offset52, align 4, !dbg !362 | |
%call53 = call i32 (ptr, ...) @printf(ptr @.str.6, i32 %44) #3, !dbg !362 | |
br label %if.end54, !dbg !362 | |
if.end54: ; preds = %if.then51, %if.end49 | |
%45 = load i32, ptr %should_log.addr, align 4, !dbg !365 | |
%tobool55 = icmp ne i32 %45, 0, !dbg !365 | |
br i1 %tobool55, label %if.then56, label %if.end58, !dbg !367 | |
if.then56: ; preds = %if.end54 | |
%46 = load ptr, ptr %objc_opt_v14, align 8, !dbg !365 | |
%headeropt_offset = getelementptr inbounds %struct.objc_opt_v14_t, ptr %46, i32 0, i32 3, !dbg !365 | |
%47 = load i32, ptr %headeropt_offset, align 4, !dbg !365 | |
%call57 = call i32 (ptr, ...) @printf(ptr @.str.9, i32 %47) #3, !dbg !365 | |
br label %if.end58, !dbg !365 | |
if.end58: ; preds = %if.then56, %if.end54 | |
%48 = load i32, ptr %should_log.addr, align 4, !dbg !368 | |
%tobool59 = icmp ne i32 %48, 0, !dbg !368 | |
br i1 %tobool59, label %if.then60, label %if.end62, !dbg !370 | |
if.then60: ; preds = %if.end58 | |
%49 = load ptr, ptr %objc_opt_v14, align 8, !dbg !368 | |
%clsopt_offset = getelementptr inbounds %struct.objc_opt_v14_t, ptr %49, i32 0, i32 4, !dbg !368 | |
%50 = load i32, ptr %clsopt_offset, align 4, !dbg !368 | |
%call61 = call i32 (ptr, ...) @printf(ptr @.str.10, i32 %50) #3, !dbg !368 | |
br label %if.end62, !dbg !368 | |
if.end62: ; preds = %if.then60, %if.end58 | |
br label %if.end84, !dbg !371 | |
if.else63: ; preds = %if.else | |
%51 = load i32, ptr %should_log.addr, align 4, !dbg !372 | |
%tobool64 = icmp ne i32 %51, 0, !dbg !372 | |
br i1 %tobool64, label %if.then65, label %if.end68, !dbg !375 | |
if.then65: ; preds = %if.else63 | |
%52 = load ptr, ptr %objc_opt, align 8, !dbg !372 | |
%version66 = getelementptr inbounds %struct.objc_opt_t, ptr %52, i32 0, i32 0, !dbg !372 | |
%53 = load i32, ptr %version66, align 4, !dbg !372 | |
%call67 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %53) #3, !dbg !372 | |
br label %if.end68, !dbg !372 | |
if.end68: ; preds = %if.then65, %if.else63 | |
%54 = load i32, ptr %should_log.addr, align 4, !dbg !376 | |
%tobool69 = icmp ne i32 %54, 0, !dbg !376 | |
br i1 %tobool69, label %if.then70, label %if.end73, !dbg !378 | |
if.then70: ; preds = %if.end68 | |
%55 = load ptr, ptr %objc_opt, align 8, !dbg !376 | |
%selopt_offset71 = getelementptr inbounds %struct.objc_opt_t, ptr %55, i32 0, i32 1, !dbg !376 | |
%56 = load i32, ptr %selopt_offset71, align 4, !dbg !376 | |
%call72 = call i32 (ptr, ...) @printf(ptr @.str.6, i32 %56) #3, !dbg !376 | |
br label %if.end73, !dbg !376 | |
if.end73: ; preds = %if.then70, %if.end68 | |
%57 = load i32, ptr %should_log.addr, align 4, !dbg !379 | |
%tobool74 = icmp ne i32 %57, 0, !dbg !379 | |
br i1 %tobool74, label %if.then75, label %if.end78, !dbg !381 | |
if.then75: ; preds = %if.end73 | |
%58 = load ptr, ptr %objc_opt, align 8, !dbg !379 | |
%headeropt_offset76 = getelementptr inbounds %struct.objc_opt_t, ptr %58, i32 0, i32 2, !dbg !379 | |
%59 = load i32, ptr %headeropt_offset76, align 4, !dbg !379 | |
%call77 = call i32 (ptr, ...) @printf(ptr @.str.9, i32 %59) #3, !dbg !379 | |
br label %if.end78, !dbg !379 | |
if.end78: ; preds = %if.then75, %if.end73 | |
%60 = load i32, ptr %should_log.addr, align 4, !dbg !382 | |
%tobool79 = icmp ne i32 %60, 0, !dbg !382 | |
br i1 %tobool79, label %if.then80, label %if.end83, !dbg !384 | |
if.then80: ; preds = %if.end78 | |
%61 = load ptr, ptr %objc_opt, align 8, !dbg !382 | |
%clsopt_offset81 = getelementptr inbounds %struct.objc_opt_t, ptr %61, i32 0, i32 3, !dbg !382 | |
%62 = load i32, ptr %clsopt_offset81, align 4, !dbg !382 | |
%call82 = call i32 (ptr, ...) @printf(ptr @.str.10, i32 %62) #3, !dbg !382 | |
br label %if.end83, !dbg !382 | |
if.end83: ; preds = %if.then80, %if.end78 | |
br label %if.end84 | |
if.end84: ; preds = %if.end83, %if.end62 | |
br label %if.end85 | |
if.end85: ; preds = %if.end84, %if.end36 | |
%63 = load ptr, ptr %objc_opt, align 8, !dbg !385 | |
%version86 = getelementptr inbounds %struct.objc_opt_t, ptr %63, i32 0, i32 0, !dbg !385 | |
%64 = load i32, ptr %version86, align 4, !dbg !385 | |
%cmp87 = icmp eq i32 %64, 16, !dbg !385 | |
br i1 %cmp87, label %if.then88, label %if.else268, !dbg !387 | |
if.then88: ; preds = %if.end85 | |
call void @llvm.dbg.declare(metadata ptr %clsopt, metadata !388, metadata !DIExpression()), !dbg !390 | |
%65 = load ptr, ptr %objc_opt, align 8, !dbg !390 | |
%66 = load ptr, ptr %objc_opt_v16, align 8, !dbg !390 | |
%largeSharedCachesClassOffset = getelementptr inbounds %struct.objc_opt_v16_t, ptr %66, i32 0, i32 8, !dbg !390 | |
%67 = load i32, ptr %largeSharedCachesClassOffset, align 8, !dbg !390 | |
%idx.ext = sext i32 %67 to i64, !dbg !390 | |
%add.ptr = getelementptr inbounds i8, ptr %65, i64 %idx.ext, !dbg !390 | |
store ptr %add.ptr, ptr %clsopt, align 8, !dbg !390 | |
call void @llvm.dbg.declare(metadata ptr %max_class_infos, metadata !391, metadata !DIExpression()), !dbg !395 | |
%68 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !395 | |
%conv89 = zext i32 %68 to i64, !dbg !395 | |
%div90 = udiv i64 %conv89, 12, !dbg !395 | |
store i64 %div90, ptr %max_class_infos, align 8, !dbg !395 | |
%69 = load i32, ptr %should_log.addr, align 4, !dbg !396 | |
%tobool91 = icmp ne i32 %69, 0, !dbg !396 | |
br i1 %tobool91, label %if.then92, label %if.end94, !dbg !398 | |
if.then92: ; preds = %if.then88 | |
%70 = load i64, ptr %max_class_infos, align 8, !dbg !396 | |
%call93 = call i32 (ptr, ...) @printf(ptr @.str.11, i64 %70) #3, !dbg !396 | |
br label %if.end94, !dbg !396 | |
if.end94: ; preds = %if.then92, %if.then88 | |
call void @llvm.dbg.declare(metadata ptr %class_infos, metadata !399, metadata !DIExpression()), !dbg !400 | |
%71 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !400 | |
store ptr %71, ptr %class_infos, align 8, !dbg !400 | |
call void @llvm.dbg.declare(metadata ptr %checkbytes, metadata !401, metadata !DIExpression()), !dbg !404 | |
%72 = load ptr, ptr %clsopt, align 8, !dbg !404 | |
%tab = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %72, i32 0, i32 8, !dbg !404 | |
%73 = load ptr, ptr %clsopt, align 8, !dbg !404 | |
%mask = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %73, i32 0, i32 4, !dbg !404 | |
%74 = load i32, ptr %mask, align 8, !dbg !404 | |
%add = add i32 %74, 1, !dbg !404 | |
%idxprom = zext i32 %add to i64, !dbg !404 | |
%arrayidx = getelementptr inbounds [0 x i8], ptr %tab, i64 0, i64 %idxprom, !dbg !404 | |
store ptr %arrayidx, ptr %checkbytes, align 8, !dbg !404 | |
call void @llvm.dbg.declare(metadata ptr %offsets, metadata !405, metadata !DIExpression()), !dbg !406 | |
%75 = load ptr, ptr %checkbytes, align 8, !dbg !406 | |
%76 = load ptr, ptr %clsopt, align 8, !dbg !406 | |
%capacity = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %76, i32 0, i32 1, !dbg !406 | |
%77 = load i32, ptr %capacity, align 4, !dbg !406 | |
%idx.ext95 = zext i32 %77 to i64, !dbg !406 | |
%add.ptr96 = getelementptr inbounds i8, ptr %75, i64 %idx.ext95, !dbg !406 | |
store ptr %add.ptr96, ptr %offsets, align 8, !dbg !406 | |
call void @llvm.dbg.declare(metadata ptr %classOffsets, metadata !407, metadata !DIExpression()), !dbg !408 | |
%78 = load ptr, ptr %offsets, align 8, !dbg !408 | |
%79 = load ptr, ptr %clsopt, align 8, !dbg !408 | |
%capacity97 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %79, i32 0, i32 1, !dbg !408 | |
%80 = load i32, ptr %capacity97, align 4, !dbg !408 | |
%idx.ext98 = zext i32 %80 to i64, !dbg !408 | |
%add.ptr99 = getelementptr inbounds i32, ptr %78, i64 %idx.ext98, !dbg !408 | |
store ptr %add.ptr99, ptr %classOffsets, align 8, !dbg !408 | |
%81 = load i32, ptr %should_log.addr, align 4, !dbg !409 | |
%tobool100 = icmp ne i32 %81, 0, !dbg !409 | |
br i1 %tobool100, label %if.then101, label %if.end104, !dbg !411 | |
if.then101: ; preds = %if.end94 | |
%82 = load ptr, ptr %clsopt, align 8, !dbg !409 | |
%capacity102 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %82, i32 0, i32 1, !dbg !409 | |
%83 = load i32, ptr %capacity102, align 4, !dbg !409 | |
%call103 = call i32 (ptr, ...) @printf(ptr @.str.12, i32 %83) #3, !dbg !409 | |
br label %if.end104, !dbg !409 | |
if.end104: ; preds = %if.then101, %if.end94 | |
%84 = load i32, ptr %should_log.addr, align 4, !dbg !412 | |
%tobool105 = icmp ne i32 %84, 0, !dbg !412 | |
br i1 %tobool105, label %if.then106, label %if.end109, !dbg !414 | |
if.then106: ; preds = %if.end104 | |
%85 = load ptr, ptr %clsopt, align 8, !dbg !412 | |
%mask107 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %85, i32 0, i32 4, !dbg !412 | |
%86 = load i32, ptr %mask107, align 8, !dbg !412 | |
%call108 = call i32 (ptr, ...) @printf(ptr @.str.13, i32 %86) #3, !dbg !412 | |
br label %if.end109, !dbg !412 | |
if.end109: ; preds = %if.then106, %if.end104 | |
%87 = load i32, ptr %should_log.addr, align 4, !dbg !415 | |
%tobool110 = icmp ne i32 %87, 0, !dbg !415 | |
br i1 %tobool110, label %if.then111, label %if.end113, !dbg !417 | |
if.then111: ; preds = %if.end109 | |
%88 = load ptr, ptr %classOffsets, align 8, !dbg !415 | |
%call112 = call i32 (ptr, ...) @printf(ptr @.str.14, ptr %88) #3, !dbg !415 | |
br label %if.end113, !dbg !415 | |
if.end113: ; preds = %if.then111, %if.end109 | |
call void @llvm.dbg.declare(metadata ptr %i, metadata !418, metadata !DIExpression()), !dbg !420 | |
store i32 0, ptr %i, align 4, !dbg !420 | |
br label %for.cond, !dbg !420 | |
for.cond: ; preds = %for.inc176, %if.end113 | |
%89 = load i32, ptr %i, align 4, !dbg !421 | |
%90 = load ptr, ptr %clsopt, align 8, !dbg !421 | |
%capacity114 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %90, i32 0, i32 1, !dbg !421 | |
%91 = load i32, ptr %capacity114, align 4, !dbg !421 | |
%cmp115 = icmp ult i32 %89, %91, !dbg !421 | |
br i1 %cmp115, label %for.body, label %for.end178, !dbg !420 | |
for.body: ; preds = %for.cond | |
call void @llvm.dbg.declare(metadata ptr %objectCacheOffset, metadata !423, metadata !DIExpression()), !dbg !426 | |
%92 = load ptr, ptr %classOffsets, align 8, !dbg !426 | |
%93 = load i32, ptr %i, align 4, !dbg !426 | |
%idxprom116 = zext i32 %93 to i64, !dbg !426 | |
%arrayidx117 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %92, i64 %idxprom116, !dbg !426 | |
%bf.load = load i64, ptr %arrayidx117, align 8, !dbg !426 | |
%bf.lshr = lshr i64 %bf.load, 1, !dbg !426 | |
%bf.clear = and i64 %bf.lshr, 140737488355327, !dbg !426 | |
store i64 %bf.clear, ptr %objectCacheOffset, align 8, !dbg !426 | |
%94 = load i32, ptr %should_log.addr, align 4, !dbg !427 | |
%tobool118 = icmp ne i32 %94, 0, !dbg !427 | |
br i1 %tobool118, label %if.then119, label %if.end121, !dbg !429 | |
if.then119: ; preds = %for.body | |
%95 = load i32, ptr %i, align 4, !dbg !427 | |
%96 = load i64, ptr %objectCacheOffset, align 8, !dbg !427 | |
%call120 = call i32 (ptr, ...) @printf(ptr @.str.15, i32 %95, i64 %96) #3, !dbg !427 | |
br label %if.end121, !dbg !427 | |
if.end121: ; preds = %if.then119, %for.body | |
%97 = load ptr, ptr %classOffsets, align 8, !dbg !430 | |
%98 = load i32, ptr %i, align 4, !dbg !430 | |
%idxprom122 = zext i32 %98 to i64, !dbg !430 | |
%arrayidx123 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %97, i64 %idxprom122, !dbg !430 | |
%bf.load124 = load i64, ptr %arrayidx123, align 8, !dbg !430 | |
%bf.clear125 = and i64 %bf.load124, 1, !dbg !430 | |
%tobool126 = icmp ne i64 %bf.clear125, 0, !dbg !430 | |
br i1 %tobool126, label %if.then127, label %if.end132, !dbg !432 | |
if.then127: ; preds = %if.end121 | |
%99 = load i32, ptr %should_log.addr, align 4, !dbg !433 | |
%tobool128 = icmp ne i32 %99, 0, !dbg !433 | |
br i1 %tobool128, label %if.then129, label %if.end131, !dbg !436 | |
if.then129: ; preds = %if.then127 | |
%call130 = call i32 (ptr, ...) @printf(ptr @.str.16) #3, !dbg !433 | |
br label %if.end131, !dbg !433 | |
if.end131: ; preds = %if.then129, %if.then127 | |
br label %for.inc176, !dbg !437 | |
if.end132: ; preds = %if.end121 | |
%100 = load i64, ptr %objectCacheOffset, align 8, !dbg !438 | |
%cmp133 = icmp eq i64 %100, 0, !dbg !438 | |
br i1 %cmp133, label %if.then134, label %if.end139, !dbg !440 | |
if.then134: ; preds = %if.end132 | |
%101 = load i32, ptr %should_log.addr, align 4, !dbg !441 | |
%tobool135 = icmp ne i32 %101, 0, !dbg !441 | |
br i1 %tobool135, label %if.then136, label %if.end138, !dbg !444 | |
if.then136: ; preds = %if.then134 | |
%call137 = call i32 (ptr, ...) @printf(ptr @.str.17) #3, !dbg !441 | |
br label %if.end138, !dbg !441 | |
if.end138: ; preds = %if.then136, %if.then134 | |
br label %for.inc176, !dbg !445 | |
if.end139: ; preds = %if.end132 | |
%102 = load ptr, ptr %class_infos, align 8, !dbg !446 | |
%tobool140 = icmp ne ptr %102, null, !dbg !446 | |
br i1 %tobool140, label %land.lhs.true, label %if.else170, !dbg !446 | |
land.lhs.true: ; preds = %if.end139 | |
%103 = load i32, ptr %idx, align 4, !dbg !446 | |
%conv141 = zext i32 %103 to i64, !dbg !446 | |
%104 = load i64, ptr %max_class_infos, align 8, !dbg !446 | |
%cmp142 = icmp ult i64 %conv141, %104, !dbg !446 | |
br i1 %cmp142, label %if.then143, label %if.else170, !dbg !448 | |
if.then143: ; preds = %land.lhs.true | |
%105 = load ptr, ptr %shared_cache_base_ptr.addr, align 8, !dbg !449 | |
%106 = load i64, ptr %objectCacheOffset, align 8, !dbg !449 | |
%add.ptr144 = getelementptr inbounds i8, ptr %105, i64 %106, !dbg !449 | |
%107 = load ptr, ptr %class_infos, align 8, !dbg !449 | |
%108 = load i32, ptr %idx, align 4, !dbg !449 | |
%idxprom145 = zext i32 %108 to i64, !dbg !449 | |
%arrayidx146 = getelementptr inbounds %struct.ClassInfo, ptr %107, i64 %idxprom145, !dbg !449 | |
%isa = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx146, i32 0, i32 0, !dbg !449 | |
store ptr %add.ptr144, ptr %isa, align 1, !dbg !449 | |
call void @llvm.dbg.declare(metadata ptr %name, metadata !451, metadata !DIExpression()), !dbg !452 | |
%109 = load ptr, ptr @class_name_lookup_func, align 8, !dbg !452 | |
%110 = load ptr, ptr %class_infos, align 8, !dbg !452 | |
%111 = load i32, ptr %idx, align 4, !dbg !452 | |
%idxprom147 = zext i32 %111 to i64, !dbg !452 | |
%arrayidx148 = getelementptr inbounds %struct.ClassInfo, ptr %110, i64 %idxprom147, !dbg !452 | |
%isa149 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx148, i32 0, i32 0, !dbg !452 | |
%112 = load ptr, ptr %isa149, align 1, !dbg !452 | |
%call150 = call ptr %109(ptr %112) #3, !dbg !452 | |
store ptr %call150, ptr %name, align 8, !dbg !452 | |
%113 = load i32, ptr %should_log.addr, align 4, !dbg !453 | |
%tobool151 = icmp ne i32 %113, 0, !dbg !453 | |
br i1 %tobool151, label %if.then152, label %if.end157, !dbg !455 | |
if.then152: ; preds = %if.then143 | |
%114 = load i32, ptr %idx, align 4, !dbg !453 | |
%115 = load ptr, ptr %class_infos, align 8, !dbg !453 | |
%116 = load i32, ptr %idx, align 4, !dbg !453 | |
%idxprom153 = zext i32 %116 to i64, !dbg !453 | |
%arrayidx154 = getelementptr inbounds %struct.ClassInfo, ptr %115, i64 %idxprom153, !dbg !453 | |
%isa155 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx154, i32 0, i32 0, !dbg !453 | |
%117 = load ptr, ptr %isa155, align 1, !dbg !453 | |
%118 = load ptr, ptr %name, align 8, !dbg !453 | |
%call156 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %114, ptr %117, ptr %118) #3, !dbg !453 | |
br label %if.end157, !dbg !453 | |
if.end157: ; preds = %if.then152, %if.then143 | |
call void @llvm.dbg.declare(metadata ptr %s, metadata !456, metadata !DIExpression()), !dbg !457 | |
%119 = load ptr, ptr %name, align 8, !dbg !457 | |
store ptr %119, ptr %s, align 8, !dbg !457 | |
call void @llvm.dbg.declare(metadata ptr %h, metadata !458, metadata !DIExpression()), !dbg !459 | |
store i32 5381, ptr %h, align 4, !dbg !459 | |
call void @llvm.dbg.declare(metadata ptr %c, metadata !460, metadata !DIExpression()), !dbg !462 | |
%120 = load ptr, ptr %s, align 8, !dbg !462 | |
%121 = load i8, ptr %120, align 1, !dbg !462 | |
store i8 %121, ptr %c, align 1, !dbg !462 | |
br label %for.cond158, !dbg !462 | |
for.cond158: ; preds = %for.inc, %if.end157 | |
%122 = load i8, ptr %c, align 1, !dbg !463 | |
%tobool159 = icmp ne i8 %122, 0, !dbg !463 | |
br i1 %tobool159, label %for.body160, label %for.end, !dbg !462 | |
for.body160: ; preds = %for.cond158 | |
%123 = load i8, ptr %c, align 1, !dbg !465 | |
%conv161 = zext i8 %123 to i32, !dbg !465 | |
%cmp162 = icmp eq i32 %conv161, 46, !dbg !465 | |
br i1 %cmp162, label %if.then163, label %if.end164, !dbg !468 | |
if.then163: ; preds = %for.body160 | |
store i32 0, ptr %h, align 4, !dbg !469 | |
br label %for.end, !dbg !471 | |
if.end164: ; preds = %for.body160 | |
%124 = load i32, ptr %h, align 4, !dbg !472 | |
%shl = shl i32 %124, 5, !dbg !472 | |
%125 = load i32, ptr %h, align 4, !dbg !472 | |
%add165 = add i32 %shl, %125, !dbg !472 | |
%126 = load i8, ptr %c, align 1, !dbg !472 | |
%conv166 = zext i8 %126 to i32, !dbg !472 | |
%add167 = add i32 %add165, %conv166, !dbg !472 | |
store i32 %add167, ptr %h, align 4, !dbg !472 | |
br label %for.inc, !dbg !473 | |
for.inc: ; preds = %if.end164 | |
%127 = load ptr, ptr %s, align 8, !dbg !463 | |
%incdec.ptr = getelementptr inbounds i8, ptr %127, i32 1, !dbg !463 | |
store ptr %incdec.ptr, ptr %s, align 8, !dbg !463 | |
%128 = load i8, ptr %incdec.ptr, align 1, !dbg !463 | |
store i8 %128, ptr %c, align 1, !dbg !463 | |
br label %for.cond158, !dbg !463, !llvm.loop !474 | |
for.end: ; preds = %if.then163, %for.cond158 | |
%129 = load i32, ptr %h, align 4, !dbg !477 | |
%130 = load ptr, ptr %class_infos, align 8, !dbg !477 | |
%131 = load i32, ptr %idx, align 4, !dbg !477 | |
%idxprom168 = zext i32 %131 to i64, !dbg !477 | |
%arrayidx169 = getelementptr inbounds %struct.ClassInfo, ptr %130, i64 %idxprom168, !dbg !477 | |
%hash = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx169, i32 0, i32 1, !dbg !477 | |
store i32 %129, ptr %hash, align 1, !dbg !477 | |
br label %if.end175, !dbg !478 | |
if.else170: ; preds = %land.lhs.true, %if.end139 | |
%132 = load i32, ptr %should_log.addr, align 4, !dbg !479 | |
%tobool171 = icmp ne i32 %132, 0, !dbg !479 | |
br i1 %tobool171, label %if.then172, label %if.end174, !dbg !482 | |
if.then172: ; preds = %if.else170 | |
%call173 = call i32 (ptr, ...) @printf(ptr @.str.19) #3, !dbg !479 | |
br label %if.end174, !dbg !479 | |
if.end174: ; preds = %if.then172, %if.else170 | |
br label %if.end175 | |
if.end175: ; preds = %if.end174, %for.end | |
%133 = load i32, ptr %idx, align 4, !dbg !483 | |
%inc = add i32 %133, 1, !dbg !483 | |
store i32 %inc, ptr %idx, align 4, !dbg !483 | |
br label %for.inc176, !dbg !484 | |
for.inc176: ; preds = %if.end175, %if.end138, %if.end131 | |
%134 = load i32, ptr %i, align 4, !dbg !421 | |
%inc177 = add i32 %134, 1, !dbg !421 | |
store i32 %inc177, ptr %i, align 4, !dbg !421 | |
br label %for.cond, !dbg !421, !llvm.loop !485 | |
for.end178: ; preds = %for.cond | |
call void @llvm.dbg.declare(metadata ptr %duplicate_count_ptr, metadata !487, metadata !DIExpression()), !dbg !490 | |
%135 = load ptr, ptr %classOffsets, align 8, !dbg !490 | |
%136 = load ptr, ptr %clsopt, align 8, !dbg !490 | |
%capacity179 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %136, i32 0, i32 1, !dbg !490 | |
%137 = load i32, ptr %capacity179, align 4, !dbg !490 | |
%idxprom180 = zext i32 %137 to i64, !dbg !490 | |
%arrayidx181 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %135, i64 %idxprom180, !dbg !490 | |
store ptr %arrayidx181, ptr %duplicate_count_ptr, align 8, !dbg !490 | |
call void @llvm.dbg.declare(metadata ptr %duplicate_count, metadata !491, metadata !DIExpression()), !dbg !492 | |
%138 = load ptr, ptr %duplicate_count_ptr, align 8, !dbg !492 | |
%139 = load i32, ptr %138, align 4, !dbg !492 | |
store i32 %139, ptr %duplicate_count, align 4, !dbg !492 | |
call void @llvm.dbg.declare(metadata ptr %duplicateClassOffsets, metadata !493, metadata !DIExpression()), !dbg !494 | |
%140 = load ptr, ptr %duplicate_count_ptr, align 8, !dbg !494 | |
%arrayidx182 = getelementptr inbounds i32, ptr %140, i64 1, !dbg !494 | |
store ptr %arrayidx182, ptr %duplicateClassOffsets, align 8, !dbg !494 | |
%141 = load i32, ptr %should_log.addr, align 4, !dbg !495 | |
%tobool183 = icmp ne i32 %141, 0, !dbg !495 | |
br i1 %tobool183, label %if.then184, label %if.end186, !dbg !497 | |
if.then184: ; preds = %for.end178 | |
%142 = load i32, ptr %duplicate_count, align 4, !dbg !495 | |
%call185 = call i32 (ptr, ...) @printf(ptr @.str.20, i32 %142) #3, !dbg !495 | |
br label %if.end186, !dbg !495 | |
if.end186: ; preds = %if.then184, %for.end178 | |
%143 = load i32, ptr %should_log.addr, align 4, !dbg !498 | |
%tobool187 = icmp ne i32 %143, 0, !dbg !498 | |
br i1 %tobool187, label %if.then188, label %if.end190, !dbg !500 | |
if.then188: ; preds = %if.end186 | |
%144 = load ptr, ptr %duplicateClassOffsets, align 8, !dbg !498 | |
%call189 = call i32 (ptr, ...) @printf(ptr @.str.21, ptr %144) #3, !dbg !498 | |
br label %if.end190, !dbg !498 | |
if.end190: ; preds = %if.then188, %if.end186 | |
call void @llvm.dbg.declare(metadata ptr %i191, metadata !501, metadata !DIExpression()), !dbg !503 | |
store i32 0, ptr %i191, align 4, !dbg !503 | |
br label %for.cond192, !dbg !503 | |
for.cond192: ; preds = %for.inc265, %if.end190 | |
%145 = load i32, ptr %i191, align 4, !dbg !504 | |
%146 = load i32, ptr %duplicate_count, align 4, !dbg !504 | |
%cmp193 = icmp ult i32 %145, %146, !dbg !504 | |
br i1 %cmp193, label %for.body194, label %for.end267, !dbg !503 | |
for.body194: ; preds = %for.cond192 | |
call void @llvm.dbg.declare(metadata ptr %objectCacheOffset195, metadata !506, metadata !DIExpression()), !dbg !508 | |
%147 = load ptr, ptr %classOffsets, align 8, !dbg !508 | |
%148 = load i32, ptr %i191, align 4, !dbg !508 | |
%idxprom196 = zext i32 %148 to i64, !dbg !508 | |
%arrayidx197 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %147, i64 %idxprom196, !dbg !508 | |
%bf.load198 = load i64, ptr %arrayidx197, align 8, !dbg !508 | |
%bf.lshr199 = lshr i64 %bf.load198, 1, !dbg !508 | |
%bf.clear200 = and i64 %bf.lshr199, 140737488355327, !dbg !508 | |
store i64 %bf.clear200, ptr %objectCacheOffset195, align 8, !dbg !508 | |
%149 = load i32, ptr %should_log.addr, align 4, !dbg !509 | |
%tobool201 = icmp ne i32 %149, 0, !dbg !509 | |
br i1 %tobool201, label %if.then202, label %if.end204, !dbg !511 | |
if.then202: ; preds = %for.body194 | |
%150 = load i32, ptr %i191, align 4, !dbg !509 | |
%151 = load i64, ptr %objectCacheOffset195, align 8, !dbg !509 | |
%call203 = call i32 (ptr, ...) @printf(ptr @.str.15, i32 %150, i64 %151) #3, !dbg !509 | |
br label %if.end204, !dbg !509 | |
if.end204: ; preds = %if.then202, %for.body194 | |
%152 = load ptr, ptr %classOffsets, align 8, !dbg !512 | |
%153 = load i32, ptr %i191, align 4, !dbg !512 | |
%idxprom205 = zext i32 %153 to i64, !dbg !512 | |
%arrayidx206 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %152, i64 %idxprom205, !dbg !512 | |
%bf.load207 = load i64, ptr %arrayidx206, align 8, !dbg !512 | |
%bf.clear208 = and i64 %bf.load207, 1, !dbg !512 | |
%tobool209 = icmp ne i64 %bf.clear208, 0, !dbg !512 | |
br i1 %tobool209, label %if.then210, label %if.end215, !dbg !514 | |
if.then210: ; preds = %if.end204 | |
%154 = load i32, ptr %should_log.addr, align 4, !dbg !515 | |
%tobool211 = icmp ne i32 %154, 0, !dbg !515 | |
br i1 %tobool211, label %if.then212, label %if.end214, !dbg !518 | |
if.then212: ; preds = %if.then210 | |
%call213 = call i32 (ptr, ...) @printf(ptr @.str.16) #3, !dbg !515 | |
br label %if.end214, !dbg !515 | |
if.end214: ; preds = %if.then212, %if.then210 | |
br label %for.inc265, !dbg !519 | |
if.end215: ; preds = %if.end204 | |
%155 = load i64, ptr %objectCacheOffset195, align 8, !dbg !520 | |
%cmp216 = icmp eq i64 %155, 0, !dbg !520 | |
br i1 %cmp216, label %if.then217, label %if.end222, !dbg !522 | |
if.then217: ; preds = %if.end215 | |
%156 = load i32, ptr %should_log.addr, align 4, !dbg !523 | |
%tobool218 = icmp ne i32 %156, 0, !dbg !523 | |
br i1 %tobool218, label %if.then219, label %if.end221, !dbg !526 | |
if.then219: ; preds = %if.then217 | |
%call220 = call i32 (ptr, ...) @printf(ptr @.str.17) #3, !dbg !523 | |
br label %if.end221, !dbg !523 | |
if.end221: ; preds = %if.then219, %if.then217 | |
br label %for.inc265, !dbg !527 | |
if.end222: ; preds = %if.end215 | |
%157 = load ptr, ptr %class_infos, align 8, !dbg !528 | |
%tobool223 = icmp ne ptr %157, null, !dbg !528 | |
br i1 %tobool223, label %land.lhs.true224, label %if.end264, !dbg !528 | |
land.lhs.true224: ; preds = %if.end222 | |
%158 = load i32, ptr %idx, align 4, !dbg !528 | |
%conv225 = zext i32 %158 to i64, !dbg !528 | |
%159 = load i64, ptr %max_class_infos, align 8, !dbg !528 | |
%cmp226 = icmp ult i64 %conv225, %159, !dbg !528 | |
br i1 %cmp226, label %if.then227, label %if.end264, !dbg !530 | |
if.then227: ; preds = %land.lhs.true224 | |
%160 = load ptr, ptr %shared_cache_base_ptr.addr, align 8, !dbg !531 | |
%161 = load i64, ptr %objectCacheOffset195, align 8, !dbg !531 | |
%add.ptr228 = getelementptr inbounds i8, ptr %160, i64 %161, !dbg !531 | |
%162 = load ptr, ptr %class_infos, align 8, !dbg !531 | |
%163 = load i32, ptr %idx, align 4, !dbg !531 | |
%idxprom229 = zext i32 %163 to i64, !dbg !531 | |
%arrayidx230 = getelementptr inbounds %struct.ClassInfo, ptr %162, i64 %idxprom229, !dbg !531 | |
%isa231 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx230, i32 0, i32 0, !dbg !531 | |
store ptr %add.ptr228, ptr %isa231, align 1, !dbg !531 | |
call void @llvm.dbg.declare(metadata ptr %name232, metadata !533, metadata !DIExpression()), !dbg !534 | |
%164 = load ptr, ptr @class_name_lookup_func, align 8, !dbg !534 | |
%165 = load ptr, ptr %class_infos, align 8, !dbg !534 | |
%166 = load i32, ptr %idx, align 4, !dbg !534 | |
%idxprom233 = zext i32 %166 to i64, !dbg !534 | |
%arrayidx234 = getelementptr inbounds %struct.ClassInfo, ptr %165, i64 %idxprom233, !dbg !534 | |
%isa235 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx234, i32 0, i32 0, !dbg !534 | |
%167 = load ptr, ptr %isa235, align 1, !dbg !534 | |
%call236 = call ptr %164(ptr %167) #3, !dbg !534 | |
store ptr %call236, ptr %name232, align 8, !dbg !534 | |
%168 = load i32, ptr %should_log.addr, align 4, !dbg !535 | |
%tobool237 = icmp ne i32 %168, 0, !dbg !535 | |
br i1 %tobool237, label %if.then238, label %if.end243, !dbg !537 | |
if.then238: ; preds = %if.then227 | |
%169 = load i32, ptr %idx, align 4, !dbg !535 | |
%170 = load ptr, ptr %class_infos, align 8, !dbg !535 | |
%171 = load i32, ptr %idx, align 4, !dbg !535 | |
%idxprom239 = zext i32 %171 to i64, !dbg !535 | |
%arrayidx240 = getelementptr inbounds %struct.ClassInfo, ptr %170, i64 %idxprom239, !dbg !535 | |
%isa241 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx240, i32 0, i32 0, !dbg !535 | |
%172 = load ptr, ptr %isa241, align 1, !dbg !535 | |
%173 = load ptr, ptr %name232, align 8, !dbg !535 | |
%call242 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %169, ptr %172, ptr %173) #3, !dbg !535 | |
br label %if.end243, !dbg !535 | |
if.end243: ; preds = %if.then238, %if.then227 | |
call void @llvm.dbg.declare(metadata ptr %s244, metadata !538, metadata !DIExpression()), !dbg !539 | |
%174 = load ptr, ptr %name232, align 8, !dbg !539 | |
store ptr %174, ptr %s244, align 8, !dbg !539 | |
call void @llvm.dbg.declare(metadata ptr %h245, metadata !540, metadata !DIExpression()), !dbg !541 | |
store i32 5381, ptr %h245, align 4, !dbg !541 | |
call void @llvm.dbg.declare(metadata ptr %c246, metadata !542, metadata !DIExpression()), !dbg !544 | |
%175 = load ptr, ptr %s244, align 8, !dbg !544 | |
%176 = load i8, ptr %175, align 1, !dbg !544 | |
store i8 %176, ptr %c246, align 1, !dbg !544 | |
br label %for.cond247, !dbg !544 | |
for.cond247: ; preds = %for.inc258, %if.end243 | |
%177 = load i8, ptr %c246, align 1, !dbg !545 | |
%tobool248 = icmp ne i8 %177, 0, !dbg !545 | |
br i1 %tobool248, label %for.body249, label %for.end260, !dbg !544 | |
for.body249: ; preds = %for.cond247 | |
%178 = load i8, ptr %c246, align 1, !dbg !547 | |
%conv250 = zext i8 %178 to i32, !dbg !547 | |
%cmp251 = icmp eq i32 %conv250, 46, !dbg !547 | |
br i1 %cmp251, label %if.then252, label %if.end253, !dbg !550 | |
if.then252: ; preds = %for.body249 | |
store i32 0, ptr %h245, align 4, !dbg !551 | |
br label %for.end260, !dbg !553 | |
if.end253: ; preds = %for.body249 | |
%179 = load i32, ptr %h245, align 4, !dbg !554 | |
%shl254 = shl i32 %179, 5, !dbg !554 | |
%180 = load i32, ptr %h245, align 4, !dbg !554 | |
%add255 = add i32 %shl254, %180, !dbg !554 | |
%181 = load i8, ptr %c246, align 1, !dbg !554 | |
%conv256 = zext i8 %181 to i32, !dbg !554 | |
%add257 = add i32 %add255, %conv256, !dbg !554 | |
store i32 %add257, ptr %h245, align 4, !dbg !554 | |
br label %for.inc258, !dbg !555 | |
for.inc258: ; preds = %if.end253 | |
%182 = load ptr, ptr %s244, align 8, !dbg !545 | |
%incdec.ptr259 = getelementptr inbounds i8, ptr %182, i32 1, !dbg !545 | |
store ptr %incdec.ptr259, ptr %s244, align 8, !dbg !545 | |
%183 = load i8, ptr %incdec.ptr259, align 1, !dbg !545 | |
store i8 %183, ptr %c246, align 1, !dbg !545 | |
br label %for.cond247, !dbg !545, !llvm.loop !556 | |
for.end260: ; preds = %if.then252, %for.cond247 | |
%184 = load i32, ptr %h245, align 4, !dbg !558 | |
%185 = load ptr, ptr %class_infos, align 8, !dbg !558 | |
%186 = load i32, ptr %idx, align 4, !dbg !558 | |
%idxprom261 = zext i32 %186 to i64, !dbg !558 | |
%arrayidx262 = getelementptr inbounds %struct.ClassInfo, ptr %185, i64 %idxprom261, !dbg !558 | |
%hash263 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx262, i32 0, i32 1, !dbg !558 | |
store i32 %184, ptr %hash263, align 1, !dbg !558 | |
br label %if.end264, !dbg !559 | |
if.end264: ; preds = %for.end260, %land.lhs.true224, %if.end222 | |
br label %for.inc265, !dbg !560 | |
for.inc265: ; preds = %if.end264, %if.end221, %if.end214 | |
%187 = load i32, ptr %i191, align 4, !dbg !504 | |
%inc266 = add i32 %187, 1, !dbg !504 | |
store i32 %inc266, ptr %i191, align 4, !dbg !504 | |
br label %for.cond192, !dbg !504, !llvm.loop !561 | |
for.end267: ; preds = %for.cond192 | |
br label %if.end489, !dbg !563 | |
if.else268: ; preds = %if.end85 | |
%188 = load ptr, ptr %objc_opt, align 8, !dbg !564 | |
%version269 = getelementptr inbounds %struct.objc_opt_t, ptr %188, i32 0, i32 0, !dbg !564 | |
%189 = load i32, ptr %version269, align 4, !dbg !564 | |
%cmp270 = icmp uge i32 %189, 12, !dbg !564 | |
br i1 %cmp270, label %land.lhs.true271, label %if.end488, !dbg !564 | |
land.lhs.true271: ; preds = %if.else268 | |
%190 = load ptr, ptr %objc_opt, align 8, !dbg !564 | |
%version272 = getelementptr inbounds %struct.objc_opt_t, ptr %190, i32 0, i32 0, !dbg !564 | |
%191 = load i32, ptr %version272, align 4, !dbg !564 | |
%cmp273 = icmp ule i32 %191, 15, !dbg !564 | |
br i1 %cmp273, label %if.then274, label %if.end488, !dbg !566 | |
if.then274: ; preds = %land.lhs.true271 | |
call void @llvm.dbg.declare(metadata ptr %clsopt275, metadata !567, metadata !DIExpression()), !dbg !569 | |
store ptr null, ptr %clsopt275, align 8, !dbg !569 | |
%192 = load ptr, ptr %objc_opt, align 8, !dbg !570 | |
%version276 = getelementptr inbounds %struct.objc_opt_t, ptr %192, i32 0, i32 0, !dbg !570 | |
%193 = load i32, ptr %version276, align 4, !dbg !570 | |
%cmp277 = icmp uge i32 %193, 14, !dbg !570 | |
br i1 %cmp277, label %if.then278, label %if.else282, !dbg !572 | |
if.then278: ; preds = %if.then274 | |
%194 = load ptr, ptr %objc_opt_v14, align 8, !dbg !573 | |
%195 = load ptr, ptr %objc_opt_v14, align 8, !dbg !573 | |
%clsopt_offset279 = getelementptr inbounds %struct.objc_opt_v14_t, ptr %195, i32 0, i32 4, !dbg !573 | |
%196 = load i32, ptr %clsopt_offset279, align 4, !dbg !573 | |
%idx.ext280 = sext i32 %196 to i64, !dbg !573 | |
%add.ptr281 = getelementptr inbounds i8, ptr %194, i64 %idx.ext280, !dbg !573 | |
store ptr %add.ptr281, ptr %clsopt275, align 8, !dbg !573 | |
br label %if.end286, !dbg !573 | |
if.else282: ; preds = %if.then274 | |
%197 = load ptr, ptr %objc_opt, align 8, !dbg !574 | |
%198 = load ptr, ptr %objc_opt, align 8, !dbg !574 | |
%clsopt_offset283 = getelementptr inbounds %struct.objc_opt_t, ptr %198, i32 0, i32 3, !dbg !574 | |
%199 = load i32, ptr %clsopt_offset283, align 4, !dbg !574 | |
%idx.ext284 = sext i32 %199 to i64, !dbg !574 | |
%add.ptr285 = getelementptr inbounds i8, ptr %197, i64 %idx.ext284, !dbg !574 | |
store ptr %add.ptr285, ptr %clsopt275, align 8, !dbg !574 | |
br label %if.end286 | |
if.end286: ; preds = %if.else282, %if.then278 | |
call void @llvm.dbg.declare(metadata ptr %max_class_infos287, metadata !575, metadata !DIExpression()), !dbg !576 | |
%200 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !576 | |
%conv288 = zext i32 %200 to i64, !dbg !576 | |
%div289 = udiv i64 %conv288, 12, !dbg !576 | |
store i64 %div289, ptr %max_class_infos287, align 8, !dbg !576 | |
%201 = load i32, ptr %should_log.addr, align 4, !dbg !577 | |
%tobool290 = icmp ne i32 %201, 0, !dbg !577 | |
br i1 %tobool290, label %if.then291, label %if.end293, !dbg !579 | |
if.then291: ; preds = %if.end286 | |
%202 = load i64, ptr %max_class_infos287, align 8, !dbg !577 | |
%call292 = call i32 (ptr, ...) @printf(ptr @.str.11, i64 %202) #3, !dbg !577 | |
br label %if.end293, !dbg !577 | |
if.end293: ; preds = %if.then291, %if.end286 | |
call void @llvm.dbg.declare(metadata ptr %class_infos294, metadata !580, metadata !DIExpression()), !dbg !581 | |
%203 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !581 | |
store ptr %203, ptr %class_infos294, align 8, !dbg !581 | |
call void @llvm.dbg.declare(metadata ptr %invalidEntryOffset, metadata !582, metadata !DIExpression()), !dbg !583 | |
store i32 0, ptr %invalidEntryOffset, align 4, !dbg !583 | |
%204 = load ptr, ptr %objc_opt, align 8, !dbg !584 | |
%version295 = getelementptr inbounds %struct.objc_opt_t, ptr %204, i32 0, i32 0, !dbg !584 | |
%205 = load i32, ptr %version295, align 4, !dbg !584 | |
%cmp296 = icmp eq i32 %205, 12, !dbg !584 | |
br i1 %cmp296, label %if.then297, label %if.end298, !dbg !586 | |
if.then297: ; preds = %if.end293 | |
store i32 16, ptr %invalidEntryOffset, align 4, !dbg !587 | |
br label %if.end298, !dbg !587 | |
if.end298: ; preds = %if.then297, %if.end293 | |
call void @llvm.dbg.declare(metadata ptr %checkbytes299, metadata !588, metadata !DIExpression()), !dbg !589 | |
%206 = load ptr, ptr %clsopt275, align 8, !dbg !589 | |
%tab300 = getelementptr inbounds %struct.objc_clsopt_t, ptr %206, i32 0, i32 8, !dbg !589 | |
%207 = load ptr, ptr %clsopt275, align 8, !dbg !589 | |
%mask301 = getelementptr inbounds %struct.objc_clsopt_t, ptr %207, i32 0, i32 3, !dbg !589 | |
%208 = load i32, ptr %mask301, align 4, !dbg !589 | |
%add302 = add i32 %208, 1, !dbg !589 | |
%idxprom303 = zext i32 %add302 to i64, !dbg !589 | |
%arrayidx304 = getelementptr inbounds [0 x i8], ptr %tab300, i64 0, i64 %idxprom303, !dbg !589 | |
store ptr %arrayidx304, ptr %checkbytes299, align 8, !dbg !589 | |
call void @llvm.dbg.declare(metadata ptr %offsets305, metadata !590, metadata !DIExpression()), !dbg !591 | |
%209 = load ptr, ptr %checkbytes299, align 8, !dbg !591 | |
%210 = load ptr, ptr %clsopt275, align 8, !dbg !591 | |
%capacity306 = getelementptr inbounds %struct.objc_clsopt_t, ptr %210, i32 0, i32 0, !dbg !591 | |
%211 = load i32, ptr %capacity306, align 8, !dbg !591 | |
%idx.ext307 = zext i32 %211 to i64, !dbg !591 | |
%add.ptr308 = getelementptr inbounds i8, ptr %209, i64 %idx.ext307, !dbg !591 | |
store ptr %add.ptr308, ptr %offsets305, align 8, !dbg !591 | |
call void @llvm.dbg.declare(metadata ptr %classOffsets309, metadata !592, metadata !DIExpression()), !dbg !593 | |
%212 = load ptr, ptr %offsets305, align 8, !dbg !593 | |
%213 = load ptr, ptr %clsopt275, align 8, !dbg !593 | |
%capacity310 = getelementptr inbounds %struct.objc_clsopt_t, ptr %213, i32 0, i32 0, !dbg !593 | |
%214 = load i32, ptr %capacity310, align 8, !dbg !593 | |
%idx.ext311 = zext i32 %214 to i64, !dbg !593 | |
%add.ptr312 = getelementptr inbounds i32, ptr %212, i64 %idx.ext311, !dbg !593 | |
store ptr %add.ptr312, ptr %classOffsets309, align 8, !dbg !593 | |
%215 = load i32, ptr %should_log.addr, align 4, !dbg !594 | |
%tobool313 = icmp ne i32 %215, 0, !dbg !594 | |
br i1 %tobool313, label %if.then314, label %if.end317, !dbg !596 | |
if.then314: ; preds = %if.end298 | |
%216 = load ptr, ptr %clsopt275, align 8, !dbg !594 | |
%capacity315 = getelementptr inbounds %struct.objc_clsopt_t, ptr %216, i32 0, i32 0, !dbg !594 | |
%217 = load i32, ptr %capacity315, align 8, !dbg !594 | |
%call316 = call i32 (ptr, ...) @printf(ptr @.str.12, i32 %217) #3, !dbg !594 | |
br label %if.end317, !dbg !594 | |
if.end317: ; preds = %if.then314, %if.end298 | |
%218 = load i32, ptr %should_log.addr, align 4, !dbg !597 | |
%tobool318 = icmp ne i32 %218, 0, !dbg !597 | |
br i1 %tobool318, label %if.then319, label %if.end322, !dbg !599 | |
if.then319: ; preds = %if.end317 | |
%219 = load ptr, ptr %clsopt275, align 8, !dbg !597 | |
%mask320 = getelementptr inbounds %struct.objc_clsopt_t, ptr %219, i32 0, i32 3, !dbg !597 | |
%220 = load i32, ptr %mask320, align 4, !dbg !597 | |
%call321 = call i32 (ptr, ...) @printf(ptr @.str.13, i32 %220) #3, !dbg !597 | |
br label %if.end322, !dbg !597 | |
if.end322: ; preds = %if.then319, %if.end317 | |
%221 = load i32, ptr %should_log.addr, align 4, !dbg !600 | |
%tobool323 = icmp ne i32 %221, 0, !dbg !600 | |
br i1 %tobool323, label %if.then324, label %if.end326, !dbg !602 | |
if.then324: ; preds = %if.end322 | |
%222 = load ptr, ptr %classOffsets309, align 8, !dbg !600 | |
%call325 = call i32 (ptr, ...) @printf(ptr @.str.14, ptr %222) #3, !dbg !600 | |
br label %if.end326, !dbg !600 | |
if.end326: ; preds = %if.then324, %if.end322 | |
%223 = load i32, ptr %should_log.addr, align 4, !dbg !603 | |
%tobool327 = icmp ne i32 %223, 0, !dbg !603 | |
br i1 %tobool327, label %if.then328, label %if.end330, !dbg !605 | |
if.then328: ; preds = %if.end326 | |
%224 = load i32, ptr %invalidEntryOffset, align 4, !dbg !603 | |
%call329 = call i32 (ptr, ...) @printf(ptr @.str.22, i32 %224) #3, !dbg !603 | |
br label %if.end330, !dbg !603 | |
if.end330: ; preds = %if.then328, %if.end326 | |
call void @llvm.dbg.declare(metadata ptr %i331, metadata !606, metadata !DIExpression()), !dbg !608 | |
store i32 0, ptr %i331, align 4, !dbg !608 | |
br label %for.cond332, !dbg !608 | |
for.cond332: ; preds = %for.inc407, %if.end330 | |
%225 = load i32, ptr %i331, align 4, !dbg !609 | |
%226 = load ptr, ptr %clsopt275, align 8, !dbg !609 | |
%capacity333 = getelementptr inbounds %struct.objc_clsopt_t, ptr %226, i32 0, i32 0, !dbg !609 | |
%227 = load i32, ptr %capacity333, align 8, !dbg !609 | |
%cmp334 = icmp ult i32 %225, %227, !dbg !609 | |
br i1 %cmp334, label %for.body335, label %for.end409, !dbg !608 | |
for.body335: ; preds = %for.cond332 | |
call void @llvm.dbg.declare(metadata ptr %clsOffset, metadata !611, metadata !DIExpression()), !dbg !613 | |
%228 = load ptr, ptr %classOffsets309, align 8, !dbg !613 | |
%229 = load i32, ptr %i331, align 4, !dbg !613 | |
%idxprom336 = zext i32 %229 to i64, !dbg !613 | |
%arrayidx337 = getelementptr inbounds %struct.objc_classheader_t, ptr %228, i64 %idxprom336, !dbg !613 | |
%clsOffset338 = getelementptr inbounds %struct.objc_classheader_t, ptr %arrayidx337, i32 0, i32 0, !dbg !613 | |
%230 = load i32, ptr %clsOffset338, align 4, !dbg !613 | |
store i32 %230, ptr %clsOffset, align 4, !dbg !613 | |
%231 = load i32, ptr %should_log.addr, align 4, !dbg !614 | |
%tobool339 = icmp ne i32 %231, 0, !dbg !614 | |
br i1 %tobool339, label %if.then340, label %if.end342, !dbg !616 | |
if.then340: ; preds = %for.body335 | |
%232 = load i32, ptr %i331, align 4, !dbg !614 | |
%233 = load i32, ptr %clsOffset, align 4, !dbg !614 | |
%call341 = call i32 (ptr, ...) @printf(ptr @.str.23, i32 %232, i32 %233) #3, !dbg !614 | |
br label %if.end342, !dbg !614 | |
if.end342: ; preds = %if.then340, %for.body335 | |
%234 = load i32, ptr %clsOffset, align 4, !dbg !617 | |
%and = and i32 %234, 1, !dbg !617 | |
%tobool343 = icmp ne i32 %and, 0, !dbg !617 | |
br i1 %tobool343, label %if.then344, label %if.else349, !dbg !619 | |
if.then344: ; preds = %if.end342 | |
%235 = load i32, ptr %should_log.addr, align 4, !dbg !620 | |
%tobool345 = icmp ne i32 %235, 0, !dbg !620 | |
br i1 %tobool345, label %if.then346, label %if.end348, !dbg !623 | |
if.then346: ; preds = %if.then344 | |
%call347 = call i32 (ptr, ...) @printf(ptr @.str.24) #3, !dbg !620 | |
br label %if.end348, !dbg !620 | |
if.end348: ; preds = %if.then346, %if.then344 | |
br label %for.inc407, !dbg !624 | |
if.else349: ; preds = %if.end342 | |
%236 = load i32, ptr %clsOffset, align 4, !dbg !625 | |
%237 = load i32, ptr %invalidEntryOffset, align 4, !dbg !625 | |
%cmp350 = icmp eq i32 %236, %237, !dbg !625 | |
br i1 %cmp350, label %if.then351, label %if.end356, !dbg !627 | |
if.then351: ; preds = %if.else349 | |
%238 = load i32, ptr %should_log.addr, align 4, !dbg !628 | |
%tobool352 = icmp ne i32 %238, 0, !dbg !628 | |
br i1 %tobool352, label %if.then353, label %if.end355, !dbg !631 | |
if.then353: ; preds = %if.then351 | |
%call354 = call i32 (ptr, ...) @printf(ptr @.str.25) #3, !dbg !628 | |
br label %if.end355, !dbg !628 | |
if.end355: ; preds = %if.then353, %if.then351 | |
br label %for.inc407, !dbg !632 | |
if.end356: ; preds = %if.else349 | |
br label %if.end357 | |
if.end357: ; preds = %if.end356 | |
%239 = load ptr, ptr %class_infos294, align 8, !dbg !633 | |
%tobool358 = icmp ne ptr %239, null, !dbg !633 | |
br i1 %tobool358, label %land.lhs.true359, label %if.else400, !dbg !633 | |
land.lhs.true359: ; preds = %if.end357 | |
%240 = load i32, ptr %idx, align 4, !dbg !633 | |
%conv360 = zext i32 %240 to i64, !dbg !633 | |
%241 = load i64, ptr %max_class_infos287, align 8, !dbg !633 | |
%cmp361 = icmp ult i64 %conv360, %241, !dbg !633 | |
br i1 %cmp361, label %if.then362, label %if.else400, !dbg !635 | |
if.then362: ; preds = %land.lhs.true359 | |
%242 = load ptr, ptr %clsopt275, align 8, !dbg !636 | |
%243 = load i32, ptr %clsOffset, align 4, !dbg !636 | |
%idx.ext363 = sext i32 %243 to i64, !dbg !636 | |
%add.ptr364 = getelementptr inbounds i8, ptr %242, i64 %idx.ext363, !dbg !636 | |
%244 = load ptr, ptr %class_infos294, align 8, !dbg !636 | |
%245 = load i32, ptr %idx, align 4, !dbg !636 | |
%idxprom365 = zext i32 %245 to i64, !dbg !636 | |
%arrayidx366 = getelementptr inbounds %struct.ClassInfo, ptr %244, i64 %idxprom365, !dbg !636 | |
%isa367 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx366, i32 0, i32 0, !dbg !636 | |
store ptr %add.ptr364, ptr %isa367, align 1, !dbg !636 | |
call void @llvm.dbg.declare(metadata ptr %name368, metadata !638, metadata !DIExpression()), !dbg !639 | |
%246 = load ptr, ptr @class_name_lookup_func, align 8, !dbg !639 | |
%247 = load ptr, ptr %class_infos294, align 8, !dbg !639 | |
%248 = load i32, ptr %idx, align 4, !dbg !639 | |
%idxprom369 = zext i32 %248 to i64, !dbg !639 | |
%arrayidx370 = getelementptr inbounds %struct.ClassInfo, ptr %247, i64 %idxprom369, !dbg !639 | |
%isa371 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx370, i32 0, i32 0, !dbg !639 | |
%249 = load ptr, ptr %isa371, align 1, !dbg !639 | |
%call372 = call ptr %246(ptr %249) #3, !dbg !639 | |
store ptr %call372, ptr %name368, align 8, !dbg !639 | |
%250 = load i32, ptr %should_log.addr, align 4, !dbg !640 | |
%tobool373 = icmp ne i32 %250, 0, !dbg !640 | |
br i1 %tobool373, label %if.then374, label %if.end379, !dbg !642 | |
if.then374: ; preds = %if.then362 | |
%251 = load i32, ptr %idx, align 4, !dbg !640 | |
%252 = load ptr, ptr %class_infos294, align 8, !dbg !640 | |
%253 = load i32, ptr %idx, align 4, !dbg !640 | |
%idxprom375 = zext i32 %253 to i64, !dbg !640 | |
%arrayidx376 = getelementptr inbounds %struct.ClassInfo, ptr %252, i64 %idxprom375, !dbg !640 | |
%isa377 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx376, i32 0, i32 0, !dbg !640 | |
%254 = load ptr, ptr %isa377, align 1, !dbg !640 | |
%255 = load ptr, ptr %name368, align 8, !dbg !640 | |
%call378 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %251, ptr %254, ptr %255) #3, !dbg !640 | |
br label %if.end379, !dbg !640 | |
if.end379: ; preds = %if.then374, %if.then362 | |
call void @llvm.dbg.declare(metadata ptr %s380, metadata !643, metadata !DIExpression()), !dbg !644 | |
%256 = load ptr, ptr %name368, align 8, !dbg !644 | |
store ptr %256, ptr %s380, align 8, !dbg !644 | |
call void @llvm.dbg.declare(metadata ptr %h381, metadata !645, metadata !DIExpression()), !dbg !646 | |
store i32 5381, ptr %h381, align 4, !dbg !646 | |
call void @llvm.dbg.declare(metadata ptr %c382, metadata !647, metadata !DIExpression()), !dbg !649 | |
%257 = load ptr, ptr %s380, align 8, !dbg !649 | |
%258 = load i8, ptr %257, align 1, !dbg !649 | |
store i8 %258, ptr %c382, align 1, !dbg !649 | |
br label %for.cond383, !dbg !649 | |
for.cond383: ; preds = %for.inc394, %if.end379 | |
%259 = load i8, ptr %c382, align 1, !dbg !650 | |
%tobool384 = icmp ne i8 %259, 0, !dbg !650 | |
br i1 %tobool384, label %for.body385, label %for.end396, !dbg !649 | |
for.body385: ; preds = %for.cond383 | |
%260 = load i8, ptr %c382, align 1, !dbg !652 | |
%conv386 = zext i8 %260 to i32, !dbg !652 | |
%cmp387 = icmp eq i32 %conv386, 46, !dbg !652 | |
br i1 %cmp387, label %if.then388, label %if.end389, !dbg !655 | |
if.then388: ; preds = %for.body385 | |
store i32 0, ptr %h381, align 4, !dbg !656 | |
br label %for.end396, !dbg !658 | |
if.end389: ; preds = %for.body385 | |
%261 = load i32, ptr %h381, align 4, !dbg !659 | |
%shl390 = shl i32 %261, 5, !dbg !659 | |
%262 = load i32, ptr %h381, align 4, !dbg !659 | |
%add391 = add i32 %shl390, %262, !dbg !659 | |
%263 = load i8, ptr %c382, align 1, !dbg !659 | |
%conv392 = zext i8 %263 to i32, !dbg !659 | |
%add393 = add i32 %add391, %conv392, !dbg !659 | |
store i32 %add393, ptr %h381, align 4, !dbg !659 | |
br label %for.inc394, !dbg !660 | |
for.inc394: ; preds = %if.end389 | |
%264 = load ptr, ptr %s380, align 8, !dbg !650 | |
%incdec.ptr395 = getelementptr inbounds i8, ptr %264, i32 1, !dbg !650 | |
store ptr %incdec.ptr395, ptr %s380, align 8, !dbg !650 | |
%265 = load i8, ptr %incdec.ptr395, align 1, !dbg !650 | |
store i8 %265, ptr %c382, align 1, !dbg !650 | |
br label %for.cond383, !dbg !650, !llvm.loop !661 | |
for.end396: ; preds = %if.then388, %for.cond383 | |
%266 = load i32, ptr %h381, align 4, !dbg !663 | |
%267 = load ptr, ptr %class_infos294, align 8, !dbg !663 | |
%268 = load i32, ptr %idx, align 4, !dbg !663 | |
%idxprom397 = zext i32 %268 to i64, !dbg !663 | |
%arrayidx398 = getelementptr inbounds %struct.ClassInfo, ptr %267, i64 %idxprom397, !dbg !663 | |
%hash399 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx398, i32 0, i32 1, !dbg !663 | |
store i32 %266, ptr %hash399, align 1, !dbg !663 | |
br label %if.end405, !dbg !664 | |
if.else400: ; preds = %land.lhs.true359, %if.end357 | |
%269 = load i32, ptr %should_log.addr, align 4, !dbg !665 | |
%tobool401 = icmp ne i32 %269, 0, !dbg !665 | |
br i1 %tobool401, label %if.then402, label %if.end404, !dbg !668 | |
if.then402: ; preds = %if.else400 | |
%call403 = call i32 (ptr, ...) @printf(ptr @.str.19) #3, !dbg !665 | |
br label %if.end404, !dbg !665 | |
if.end404: ; preds = %if.then402, %if.else400 | |
br label %if.end405 | |
if.end405: ; preds = %if.end404, %for.end396 | |
%270 = load i32, ptr %idx, align 4, !dbg !669 | |
%inc406 = add i32 %270, 1, !dbg !669 | |
store i32 %inc406, ptr %idx, align 4, !dbg !669 | |
br label %for.inc407, !dbg !670 | |
for.inc407: ; preds = %if.end405, %if.end355, %if.end348 | |
%271 = load i32, ptr %i331, align 4, !dbg !609 | |
%inc408 = add i32 %271, 1, !dbg !609 | |
store i32 %inc408, ptr %i331, align 4, !dbg !609 | |
br label %for.cond332, !dbg !609, !llvm.loop !671 | |
for.end409: ; preds = %for.cond332 | |
call void @llvm.dbg.declare(metadata ptr %duplicate_count_ptr410, metadata !673, metadata !DIExpression()), !dbg !674 | |
%272 = load ptr, ptr %classOffsets309, align 8, !dbg !674 | |
%273 = load ptr, ptr %clsopt275, align 8, !dbg !674 | |
%capacity411 = getelementptr inbounds %struct.objc_clsopt_t, ptr %273, i32 0, i32 0, !dbg !674 | |
%274 = load i32, ptr %capacity411, align 8, !dbg !674 | |
%idxprom412 = zext i32 %274 to i64, !dbg !674 | |
%arrayidx413 = getelementptr inbounds %struct.objc_classheader_t, ptr %272, i64 %idxprom412, !dbg !674 | |
store ptr %arrayidx413, ptr %duplicate_count_ptr410, align 8, !dbg !674 | |
call void @llvm.dbg.declare(metadata ptr %duplicate_count414, metadata !675, metadata !DIExpression()), !dbg !676 | |
%275 = load ptr, ptr %duplicate_count_ptr410, align 8, !dbg !676 | |
%276 = load i32, ptr %275, align 4, !dbg !676 | |
store i32 %276, ptr %duplicate_count414, align 4, !dbg !676 | |
call void @llvm.dbg.declare(metadata ptr %duplicateClassOffsets415, metadata !677, metadata !DIExpression()), !dbg !678 | |
%277 = load ptr, ptr %duplicate_count_ptr410, align 8, !dbg !678 | |
%arrayidx416 = getelementptr inbounds i32, ptr %277, i64 1, !dbg !678 | |
store ptr %arrayidx416, ptr %duplicateClassOffsets415, align 8, !dbg !678 | |
%278 = load i32, ptr %should_log.addr, align 4, !dbg !679 | |
%tobool417 = icmp ne i32 %278, 0, !dbg !679 | |
br i1 %tobool417, label %if.then418, label %if.end420, !dbg !681 | |
if.then418: ; preds = %for.end409 | |
%279 = load i32, ptr %duplicate_count414, align 4, !dbg !679 | |
%call419 = call i32 (ptr, ...) @printf(ptr @.str.20, i32 %279) #3, !dbg !679 | |
br label %if.end420, !dbg !679 | |
if.end420: ; preds = %if.then418, %for.end409 | |
%280 = load i32, ptr %should_log.addr, align 4, !dbg !682 | |
%tobool421 = icmp ne i32 %280, 0, !dbg !682 | |
br i1 %tobool421, label %if.then422, label %if.end424, !dbg !684 | |
if.then422: ; preds = %if.end420 | |
%281 = load ptr, ptr %duplicateClassOffsets415, align 8, !dbg !682 | |
%call423 = call i32 (ptr, ...) @printf(ptr @.str.21, ptr %281) #3, !dbg !682 | |
br label %if.end424, !dbg !682 | |
if.end424: ; preds = %if.then422, %if.end420 | |
call void @llvm.dbg.declare(metadata ptr %i425, metadata !685, metadata !DIExpression()), !dbg !687 | |
store i32 0, ptr %i425, align 4, !dbg !687 | |
br label %for.cond426, !dbg !687 | |
for.cond426: ; preds = %for.inc485, %if.end424 | |
%282 = load i32, ptr %i425, align 4, !dbg !688 | |
%283 = load i32, ptr %duplicate_count414, align 4, !dbg !688 | |
%cmp427 = icmp ult i32 %282, %283, !dbg !688 | |
br i1 %cmp427, label %for.body428, label %for.end487, !dbg !687 | |
for.body428: ; preds = %for.cond426 | |
call void @llvm.dbg.declare(metadata ptr %clsOffset429, metadata !690, metadata !DIExpression()), !dbg !692 | |
%284 = load ptr, ptr %duplicateClassOffsets415, align 8, !dbg !692 | |
%285 = load i32, ptr %i425, align 4, !dbg !692 | |
%idxprom430 = zext i32 %285 to i64, !dbg !692 | |
%arrayidx431 = getelementptr inbounds %struct.objc_classheader_t, ptr %284, i64 %idxprom430, !dbg !692 | |
%clsOffset432 = getelementptr inbounds %struct.objc_classheader_t, ptr %arrayidx431, i32 0, i32 0, !dbg !692 | |
%286 = load i32, ptr %clsOffset432, align 4, !dbg !692 | |
store i32 %286, ptr %clsOffset429, align 4, !dbg !692 | |
%287 = load i32, ptr %clsOffset429, align 4, !dbg !693 | |
%and433 = and i32 %287, 1, !dbg !693 | |
%tobool434 = icmp ne i32 %and433, 0, !dbg !693 | |
br i1 %tobool434, label %if.then435, label %if.else436, !dbg !695 | |
if.then435: ; preds = %for.body428 | |
br label %for.inc485, !dbg !696 | |
if.else436: ; preds = %for.body428 | |
%288 = load i32, ptr %clsOffset429, align 4, !dbg !697 | |
%289 = load i32, ptr %invalidEntryOffset, align 4, !dbg !697 | |
%cmp437 = icmp eq i32 %288, %289, !dbg !697 | |
br i1 %cmp437, label %if.then438, label %if.end439, !dbg !699 | |
if.then438: ; preds = %if.else436 | |
br label %for.inc485, !dbg !700 | |
if.end439: ; preds = %if.else436 | |
br label %if.end440 | |
if.end440: ; preds = %if.end439 | |
%290 = load ptr, ptr %class_infos294, align 8, !dbg !701 | |
%tobool441 = icmp ne ptr %290, null, !dbg !701 | |
br i1 %tobool441, label %land.lhs.true442, label %if.end483, !dbg !701 | |
land.lhs.true442: ; preds = %if.end440 | |
%291 = load i32, ptr %idx, align 4, !dbg !701 | |
%conv443 = zext i32 %291 to i64, !dbg !701 | |
%292 = load i64, ptr %max_class_infos287, align 8, !dbg !701 | |
%cmp444 = icmp ult i64 %conv443, %292, !dbg !701 | |
br i1 %cmp444, label %if.then445, label %if.end483, !dbg !703 | |
if.then445: ; preds = %land.lhs.true442 | |
%293 = load ptr, ptr %clsopt275, align 8, !dbg !704 | |
%294 = load i32, ptr %clsOffset429, align 4, !dbg !704 | |
%idx.ext446 = sext i32 %294 to i64, !dbg !704 | |
%add.ptr447 = getelementptr inbounds i8, ptr %293, i64 %idx.ext446, !dbg !704 | |
%295 = load ptr, ptr %class_infos294, align 8, !dbg !704 | |
%296 = load i32, ptr %idx, align 4, !dbg !704 | |
%idxprom448 = zext i32 %296 to i64, !dbg !704 | |
%arrayidx449 = getelementptr inbounds %struct.ClassInfo, ptr %295, i64 %idxprom448, !dbg !704 | |
%isa450 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx449, i32 0, i32 0, !dbg !704 | |
store ptr %add.ptr447, ptr %isa450, align 1, !dbg !704 | |
call void @llvm.dbg.declare(metadata ptr %name451, metadata !706, metadata !DIExpression()), !dbg !707 | |
%297 = load ptr, ptr @class_name_lookup_func, align 8, !dbg !707 | |
%298 = load ptr, ptr %class_infos294, align 8, !dbg !707 | |
%299 = load i32, ptr %idx, align 4, !dbg !707 | |
%idxprom452 = zext i32 %299 to i64, !dbg !707 | |
%arrayidx453 = getelementptr inbounds %struct.ClassInfo, ptr %298, i64 %idxprom452, !dbg !707 | |
%isa454 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx453, i32 0, i32 0, !dbg !707 | |
%300 = load ptr, ptr %isa454, align 1, !dbg !707 | |
%call455 = call ptr %297(ptr %300) #3, !dbg !707 | |
store ptr %call455, ptr %name451, align 8, !dbg !707 | |
%301 = load i32, ptr %should_log.addr, align 4, !dbg !708 | |
%tobool456 = icmp ne i32 %301, 0, !dbg !708 | |
br i1 %tobool456, label %if.then457, label %if.end462, !dbg !710 | |
if.then457: ; preds = %if.then445 | |
%302 = load i32, ptr %idx, align 4, !dbg !708 | |
%303 = load ptr, ptr %class_infos294, align 8, !dbg !708 | |
%304 = load i32, ptr %idx, align 4, !dbg !708 | |
%idxprom458 = zext i32 %304 to i64, !dbg !708 | |
%arrayidx459 = getelementptr inbounds %struct.ClassInfo, ptr %303, i64 %idxprom458, !dbg !708 | |
%isa460 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx459, i32 0, i32 0, !dbg !708 | |
%305 = load ptr, ptr %isa460, align 1, !dbg !708 | |
%306 = load ptr, ptr %name451, align 8, !dbg !708 | |
%call461 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %302, ptr %305, ptr %306) #3, !dbg !708 | |
br label %if.end462, !dbg !708 | |
if.end462: ; preds = %if.then457, %if.then445 | |
call void @llvm.dbg.declare(metadata ptr %s463, metadata !711, metadata !DIExpression()), !dbg !712 | |
%307 = load ptr, ptr %name451, align 8, !dbg !712 | |
store ptr %307, ptr %s463, align 8, !dbg !712 | |
call void @llvm.dbg.declare(metadata ptr %h464, metadata !713, metadata !DIExpression()), !dbg !714 | |
store i32 5381, ptr %h464, align 4, !dbg !714 | |
call void @llvm.dbg.declare(metadata ptr %c465, metadata !715, metadata !DIExpression()), !dbg !717 | |
%308 = load ptr, ptr %s463, align 8, !dbg !717 | |
%309 = load i8, ptr %308, align 1, !dbg !717 | |
store i8 %309, ptr %c465, align 1, !dbg !717 | |
br label %for.cond466, !dbg !717 | |
for.cond466: ; preds = %for.inc477, %if.end462 | |
%310 = load i8, ptr %c465, align 1, !dbg !718 | |
%tobool467 = icmp ne i8 %310, 0, !dbg !718 | |
br i1 %tobool467, label %for.body468, label %for.end479, !dbg !717 | |
for.body468: ; preds = %for.cond466 | |
%311 = load i8, ptr %c465, align 1, !dbg !720 | |
%conv469 = zext i8 %311 to i32, !dbg !720 | |
%cmp470 = icmp eq i32 %conv469, 46, !dbg !720 | |
br i1 %cmp470, label %if.then471, label %if.end472, !dbg !723 | |
if.then471: ; preds = %for.body468 | |
store i32 0, ptr %h464, align 4, !dbg !724 | |
br label %for.end479, !dbg !726 | |
if.end472: ; preds = %for.body468 | |
%312 = load i32, ptr %h464, align 4, !dbg !727 | |
%shl473 = shl i32 %312, 5, !dbg !727 | |
%313 = load i32, ptr %h464, align 4, !dbg !727 | |
%add474 = add i32 %shl473, %313, !dbg !727 | |
%314 = load i8, ptr %c465, align 1, !dbg !727 | |
%conv475 = zext i8 %314 to i32, !dbg !727 | |
%add476 = add i32 %add474, %conv475, !dbg !727 | |
store i32 %add476, ptr %h464, align 4, !dbg !727 | |
br label %for.inc477, !dbg !728 | |
for.inc477: ; preds = %if.end472 | |
%315 = load ptr, ptr %s463, align 8, !dbg !718 | |
%incdec.ptr478 = getelementptr inbounds i8, ptr %315, i32 1, !dbg !718 | |
store ptr %incdec.ptr478, ptr %s463, align 8, !dbg !718 | |
%316 = load i8, ptr %incdec.ptr478, align 1, !dbg !718 | |
store i8 %316, ptr %c465, align 1, !dbg !718 | |
br label %for.cond466, !dbg !718, !llvm.loop !729 | |
for.end479: ; preds = %if.then471, %for.cond466 | |
%317 = load i32, ptr %h464, align 4, !dbg !731 | |
%318 = load ptr, ptr %class_infos294, align 8, !dbg !731 | |
%319 = load i32, ptr %idx, align 4, !dbg !731 | |
%idxprom480 = zext i32 %319 to i64, !dbg !731 | |
%arrayidx481 = getelementptr inbounds %struct.ClassInfo, ptr %318, i64 %idxprom480, !dbg !731 | |
%hash482 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx481, i32 0, i32 1, !dbg !731 | |
store i32 %317, ptr %hash482, align 1, !dbg !731 | |
br label %if.end483, !dbg !732 | |
if.end483: ; preds = %for.end479, %land.lhs.true442, %if.end440 | |
%320 = load i32, ptr %idx, align 4, !dbg !733 | |
%inc484 = add i32 %320, 1, !dbg !733 | |
store i32 %inc484, ptr %idx, align 4, !dbg !733 | |
br label %for.inc485, !dbg !734 | |
for.inc485: ; preds = %if.end483, %if.then438, %if.then435 | |
%321 = load i32, ptr %i425, align 4, !dbg !688 | |
%inc486 = add i32 %321, 1, !dbg !688 | |
store i32 %inc486, ptr %i425, align 4, !dbg !688 | |
br label %for.cond426, !dbg !688, !llvm.loop !735 | |
for.end487: ; preds = %for.cond426 | |
br label %if.end488, !dbg !737 | |
if.end488: ; preds = %for.end487, %land.lhs.true271, %if.else268 | |
br label %if.end489 | |
if.end489: ; preds = %if.end488, %for.end267 | |
%322 = load i32, ptr %should_log.addr, align 4, !dbg !738 | |
%tobool490 = icmp ne i32 %322, 0, !dbg !738 | |
br i1 %tobool490, label %if.then491, label %if.end493, !dbg !740 | |
if.then491: ; preds = %if.end489 | |
%323 = load i32, ptr %idx, align 4, !dbg !738 | |
%call492 = call i32 (ptr, ...) @printf(ptr @.str.26, i32 %323) #3, !dbg !738 | |
br label %if.end493, !dbg !738 | |
if.end493: ; preds = %if.then491, %if.end489 | |
%324 = load i32, ptr %should_log.addr, align 4, !dbg !741 | |
%tobool494 = icmp ne i32 %324, 0, !dbg !741 | |
br i1 %tobool494, label %if.then495, label %if.end497, !dbg !743 | |
if.then495: ; preds = %if.end493 | |
%call496 = call i32 (ptr, ...) @printf(ptr @.str.27) #3, !dbg !741 | |
br label %if.end497, !dbg !741 | |
if.end497: ; preds = %if.then495, %if.end493 | |
br label %if.end498, !dbg !744 | |
if.end498: ; preds = %if.end497, %if.end12 | |
%325 = load i32, ptr %idx, align 4, !dbg !745 | |
ret i32 %325, !dbg !745 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #2 | |
; Function Attrs: convergent | |
declare i32 @printf(ptr, ...) #0 | |
attributes #0 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
attributes #3 = { convergent "no-builtins" } | |
!llvm.dbg.cu = !{!2} | |
!llvm.module.flags = !{!216, !217, !218, !219, !220, !221, !222, !223, !224} | |
!clang.global.decl.ptrs = !{!225, !226, !227, !228} | |
!llvm.ident = !{!229} | |
!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression()) | |
!1 = distinct !DIGlobalVariable(name: "class_name_lookup_func", scope: !2, file: !6, line: 40, type: !211, isLocal: false, isDefinition: true) | |
!2 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !3, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug, retainedTypes: !4, globals: !101) | |
!3 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!4 = !{!5, !8, !19, !27, !41, !62, !63, !72, !74, !67, !81, !82, !95} | |
!5 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint64_t", file: !6, line: 26, baseType: !7) | |
!6 = !DIFile(filename: "<lldb wrapper prefix>", directory: "/") | |
!7 = !DIBasicType(name: "unsigned long long", size: 64, encoding: DW_ATE_unsigned) | |
!8 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !9, size: 64) | |
!9 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_opt_t", file: !6, line: 101, size: 128, flags: DIFlagTypePassByValue, elements: !10, identifier: "_ZTS10objc_opt_t") | |
!10 = !{!11, !14, !17, !18} | |
!11 = !DIDerivedType(tag: DW_TAG_member, name: "version", scope: !9, file: !6, line: 102, baseType: !12, size: 32) | |
!12 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint32_t", file: !6, line: 24, baseType: !13) | |
!13 = !DIBasicType(name: "unsigned int", size: 32, encoding: DW_ATE_unsigned) | |
!14 = !DIDerivedType(tag: DW_TAG_member, name: "selopt_offset", scope: !9, file: !6, line: 103, baseType: !15, size: 32, offset: 32) | |
!15 = !DIDerivedType(tag: DW_TAG_typedef, name: "int32_t", file: !6, line: 23, baseType: !16) | |
!16 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) | |
!17 = !DIDerivedType(tag: DW_TAG_member, name: "headeropt_offset", scope: !9, file: !6, line: 104, baseType: !15, size: 32, offset: 64) | |
!18 = !DIDerivedType(tag: DW_TAG_member, name: "clsopt_offset", scope: !9, file: !6, line: 105, baseType: !15, size: 32, offset: 96) | |
!19 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !20, size: 64) | |
!20 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_opt_v14_t", file: !6, line: 108, size: 160, flags: DIFlagTypePassByValue, elements: !21, identifier: "_ZTS14objc_opt_v14_t") | |
!21 = !{!22, !23, !24, !25, !26} | |
!22 = !DIDerivedType(tag: DW_TAG_member, name: "version", scope: !20, file: !6, line: 109, baseType: !12, size: 32) | |
!23 = !DIDerivedType(tag: DW_TAG_member, name: "flags", scope: !20, file: !6, line: 110, baseType: !12, size: 32, offset: 32) | |
!24 = !DIDerivedType(tag: DW_TAG_member, name: "selopt_offset", scope: !20, file: !6, line: 111, baseType: !15, size: 32, offset: 64) | |
!25 = !DIDerivedType(tag: DW_TAG_member, name: "headeropt_offset", scope: !20, file: !6, line: 112, baseType: !15, size: 32, offset: 96) | |
!26 = !DIDerivedType(tag: DW_TAG_member, name: "clsopt_offset", scope: !20, file: !6, line: 113, baseType: !15, size: 32, offset: 128) | |
!27 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !28, size: 64) | |
!28 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_opt_v16_t", file: !6, line: 116, size: 384, flags: DIFlagTypePassByValue, elements: !29, identifier: "_ZTS14objc_opt_v16_t") | |
!29 = !{!30, !31, !32, !33, !34, !35, !36, !37, !38, !39, !40} | |
!30 = !DIDerivedType(tag: DW_TAG_member, name: "version", scope: !28, file: !6, line: 117, baseType: !12, size: 32) | |
!31 = !DIDerivedType(tag: DW_TAG_member, name: "flags", scope: !28, file: !6, line: 118, baseType: !12, size: 32, offset: 32) | |
!32 = !DIDerivedType(tag: DW_TAG_member, name: "selopt_offset", scope: !28, file: !6, line: 119, baseType: !15, size: 32, offset: 64) | |
!33 = !DIDerivedType(tag: DW_TAG_member, name: "headeropt_ro_offset", scope: !28, file: !6, line: 120, baseType: !15, size: 32, offset: 96) | |
!34 = !DIDerivedType(tag: DW_TAG_member, name: "unused_clsopt_offset", scope: !28, file: !6, line: 121, baseType: !15, size: 32, offset: 128) | |
!35 = !DIDerivedType(tag: DW_TAG_member, name: "unused_protocolopt_offset", scope: !28, file: !6, line: 122, baseType: !15, size: 32, offset: 160) | |
!36 = !DIDerivedType(tag: DW_TAG_member, name: "headeropt_rw_offset", scope: !28, file: !6, line: 123, baseType: !15, size: 32, offset: 192) | |
!37 = !DIDerivedType(tag: DW_TAG_member, name: "unused_protocolopt2_offset", scope: !28, file: !6, line: 124, baseType: !15, size: 32, offset: 224) | |
!38 = !DIDerivedType(tag: DW_TAG_member, name: "largeSharedCachesClassOffset", scope: !28, file: !6, line: 125, baseType: !15, size: 32, offset: 256) | |
!39 = !DIDerivedType(tag: DW_TAG_member, name: "largeSharedCachesProtocolOffset", scope: !28, file: !6, line: 126, baseType: !15, size: 32, offset: 288) | |
!40 = !DIDerivedType(tag: DW_TAG_member, name: "relativeMethodSelectorBaseAddressCacheOffset", scope: !28, file: !6, line: 127, baseType: !5, size: 64, offset: 320) | |
!41 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !42, size: 64) | |
!42 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !43) | |
!43 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_clsopt_v16_t", file: !6, line: 84, size: 8448, flags: DIFlagTypePassByValue, elements: !44, identifier: "_ZTS17objc_clsopt_v16_t") | |
!44 = !{!45, !46, !47, !48, !49, !50, !51, !52, !56} | |
!45 = !DIDerivedType(tag: DW_TAG_member, name: "version", scope: !43, file: !6, line: 85, baseType: !12, size: 32) | |
!46 = !DIDerivedType(tag: DW_TAG_member, name: "capacity", scope: !43, file: !6, line: 86, baseType: !12, size: 32, offset: 32) | |
!47 = !DIDerivedType(tag: DW_TAG_member, name: "occupied", scope: !43, file: !6, line: 87, baseType: !12, size: 32, offset: 64) | |
!48 = !DIDerivedType(tag: DW_TAG_member, name: "shift", scope: !43, file: !6, line: 88, baseType: !12, size: 32, offset: 96) | |
!49 = !DIDerivedType(tag: DW_TAG_member, name: "mask", scope: !43, file: !6, line: 89, baseType: !12, size: 32, offset: 128) | |
!50 = !DIDerivedType(tag: DW_TAG_member, name: "zero", scope: !43, file: !6, line: 90, baseType: !12, size: 32, offset: 160) | |
!51 = !DIDerivedType(tag: DW_TAG_member, name: "salt", scope: !43, file: !6, line: 91, baseType: !5, size: 64, offset: 192) | |
!52 = !DIDerivedType(tag: DW_TAG_member, name: "scramble", scope: !43, file: !6, line: 92, baseType: !53, size: 8192, offset: 256) | |
!53 = !DICompositeType(tag: DW_TAG_array_type, baseType: !12, size: 8192, elements: !54) | |
!54 = !{!55} | |
!55 = !DISubrange(count: 256) | |
!56 = !DIDerivedType(tag: DW_TAG_member, name: "tab", scope: !43, file: !6, line: 93, baseType: !57, offset: 8448) | |
!57 = !DICompositeType(tag: DW_TAG_array_type, baseType: !58, elements: !60) | |
!58 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint8_t", file: !6, line: 20, baseType: !59) | |
!59 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char) | |
!60 = !{!61} | |
!61 = !DISubrange(count: 0) | |
!62 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !58, size: 64) | |
!63 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !64, size: 64) | |
!64 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "ClassInfo", file: !6, line: 130, size: 96, flags: DIFlagTypePassByValue, elements: !65, identifier: "_ZTS9ClassInfo") | |
!65 = !{!66, !71} | |
!66 = !DIDerivedType(tag: DW_TAG_member, name: "isa", scope: !64, file: !6, line: 132, baseType: !67, size: 64) | |
!67 = !DIDerivedType(tag: DW_TAG_typedef, name: "Class", file: !68, baseType: !69) | |
!68 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "") | |
!69 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !70, size: 64) | |
!70 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_class", file: !3, flags: DIFlagFwdDecl) | |
!71 = !DIDerivedType(tag: DW_TAG_member, name: "hash", scope: !64, file: !6, line: 133, baseType: !12, size: 32, offset: 64) | |
!72 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !73, size: 64) | |
!73 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !15) | |
!74 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !75, size: 64) | |
!75 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !76) | |
!76 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_classheader_v16_t", file: !6, line: 61, size: 64, flags: DIFlagTypePassByValue, elements: !77, identifier: "_ZTS22objc_classheader_v16_t") | |
!77 = !{!78, !79, !80} | |
!78 = !DIDerivedType(tag: DW_TAG_member, name: "isDuplicate", scope: !76, file: !6, line: 62, baseType: !5, size: 1, flags: DIFlagBitField, extraData: i64 0) | |
!79 = !DIDerivedType(tag: DW_TAG_member, name: "objectCacheOffset", scope: !76, file: !6, line: 63, baseType: !5, size: 47, offset: 1, flags: DIFlagBitField, extraData: i64 0) | |
!80 = !DIDerivedType(tag: DW_TAG_member, name: "dylibObjCIndex", scope: !76, file: !6, line: 64, baseType: !5, size: 16, offset: 48, flags: DIFlagBitField, extraData: i64 0) | |
!81 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !12, size: 64) | |
!82 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !83, size: 64) | |
!83 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !84) | |
!84 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_clsopt_t", file: !6, line: 67, size: 8448, flags: DIFlagTypePassByValue, elements: !85, identifier: "_ZTS13objc_clsopt_t") | |
!85 = !{!86, !87, !88, !89, !90, !91, !92, !93, !94} | |
!86 = !DIDerivedType(tag: DW_TAG_member, name: "capacity", scope: !84, file: !6, line: 68, baseType: !12, size: 32) | |
!87 = !DIDerivedType(tag: DW_TAG_member, name: "occupied", scope: !84, file: !6, line: 69, baseType: !12, size: 32, offset: 32) | |
!88 = !DIDerivedType(tag: DW_TAG_member, name: "shift", scope: !84, file: !6, line: 70, baseType: !12, size: 32, offset: 64) | |
!89 = !DIDerivedType(tag: DW_TAG_member, name: "mask", scope: !84, file: !6, line: 71, baseType: !12, size: 32, offset: 96) | |
!90 = !DIDerivedType(tag: DW_TAG_member, name: "zero", scope: !84, file: !6, line: 72, baseType: !12, size: 32, offset: 128) | |
!91 = !DIDerivedType(tag: DW_TAG_member, name: "unused", scope: !84, file: !6, line: 73, baseType: !12, size: 32, offset: 160) | |
!92 = !DIDerivedType(tag: DW_TAG_member, name: "salt", scope: !84, file: !6, line: 74, baseType: !5, size: 64, offset: 192) | |
!93 = !DIDerivedType(tag: DW_TAG_member, name: "scramble", scope: !84, file: !6, line: 75, baseType: !53, size: 8192, offset: 256) | |
!94 = !DIDerivedType(tag: DW_TAG_member, name: "tab", scope: !84, file: !6, line: 76, baseType: !57, offset: 8448) | |
!95 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !96, size: 64) | |
!96 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !97) | |
!97 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_classheader_t", file: !6, line: 56, size: 64, flags: DIFlagTypePassByValue, elements: !98, identifier: "_ZTS18objc_classheader_t") | |
!98 = !{!99, !100} | |
!99 = !DIDerivedType(tag: DW_TAG_member, name: "clsOffset", scope: !97, file: !6, line: 57, baseType: !15, size: 32) | |
!100 = !DIDerivedType(tag: DW_TAG_member, name: "hiOffset", scope: !97, file: !6, line: 58, baseType: !15, size: 32, offset: 32) | |
!101 = !{!0, !102, !109, !114, !116, !121, !126, !128, !133, !138, !143, !148, !150, !152, !157, !159, !164, !166, !171, !176, !178, !183, !185, !187, !192, !194, !199, !201, !206} | |
!102 = !DIGlobalVariableExpression(var: !103, expr: !DIExpression()) | |
!103 = distinct !DIGlobalVariable(scope: null, file: !6, line: 146, type: !104, isLocal: true, isDefinition: true) | |
!104 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 176, elements: !107) | |
!105 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !106) | |
!106 = !DIBasicType(name: "char", size: 8, encoding: DW_ATE_signed_char) | |
!107 = !{!108} | |
!108 = !DISubrange(count: 22) | |
!109 = !DIGlobalVariableExpression(var: !110, expr: !DIExpression()) | |
!110 = distinct !DIGlobalVariable(scope: null, file: !6, line: 147, type: !111, isLocal: true, isDefinition: true) | |
!111 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 224, elements: !112) | |
!112 = !{!113} | |
!113 = !DISubrange(count: 28) | |
!114 = !DIGlobalVariableExpression(var: !115, expr: !DIExpression()) | |
!115 = distinct !DIGlobalVariable(scope: null, file: !6, line: 148, type: !104, isLocal: true, isDefinition: true) | |
!116 = !DIGlobalVariableExpression(var: !117, expr: !DIExpression()) | |
!117 = distinct !DIGlobalVariable(scope: null, file: !6, line: 149, type: !118, isLocal: true, isDefinition: true) | |
!118 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 376, elements: !119) | |
!119 = !{!120} | |
!120 = !DISubrange(count: 47) | |
!121 = !DIGlobalVariableExpression(var: !122, expr: !DIExpression()) | |
!122 = distinct !DIGlobalVariable(scope: null, file: !6, line: 158, type: !123, isLocal: true, isDefinition: true) | |
!123 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 192, elements: !124) | |
!124 = !{!125} | |
!125 = !DISubrange(count: 24) | |
!126 = !DIGlobalVariableExpression(var: !127, expr: !DIExpression()) | |
!127 = distinct !DIGlobalVariable(scope: null, file: !6, line: 159, type: !104, isLocal: true, isDefinition: true) | |
!128 = !DIGlobalVariableExpression(var: !129, expr: !DIExpression()) | |
!129 = distinct !DIGlobalVariable(scope: null, file: !6, line: 160, type: !130, isLocal: true, isDefinition: true) | |
!130 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 240, elements: !131) | |
!131 = !{!132} | |
!132 = !DISubrange(count: 30) | |
!133 = !DIGlobalVariableExpression(var: !134, expr: !DIExpression()) | |
!134 = distinct !DIGlobalVariable(scope: null, file: !6, line: 161, type: !135, isLocal: true, isDefinition: true) | |
!135 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 288, elements: !136) | |
!136 = !{!137} | |
!137 = !DISubrange(count: 36) | |
!138 = !DIGlobalVariableExpression(var: !139, expr: !DIExpression()) | |
!139 = distinct !DIGlobalVariable(scope: null, file: !6, line: 162, type: !140, isLocal: true, isDefinition: true) | |
!140 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 488, elements: !141) | |
!141 = !{!142} | |
!142 = !DISubrange(count: 61) | |
!143 = !DIGlobalVariableExpression(var: !144, expr: !DIExpression()) | |
!144 = distinct !DIGlobalVariable(scope: null, file: !6, line: 169, type: !145, isLocal: true, isDefinition: true) | |
!145 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 264, elements: !146) | |
!146 = !{!147} | |
!147 = !DISubrange(count: 33) | |
!148 = !DIGlobalVariableExpression(var: !149, expr: !DIExpression()) | |
!149 = distinct !DIGlobalVariable(scope: null, file: !6, line: 170, type: !130, isLocal: true, isDefinition: true) | |
!150 = !DIGlobalVariableExpression(var: !151, expr: !DIExpression()) | |
!151 = distinct !DIGlobalVariable(scope: null, file: !6, line: 185, type: !123, isLocal: true, isDefinition: true) | |
!152 = !DIGlobalVariableExpression(var: !153, expr: !DIExpression()) | |
!153 = distinct !DIGlobalVariable(scope: null, file: !6, line: 193, type: !154, isLocal: true, isDefinition: true) | |
!154 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 184, elements: !155) | |
!155 = !{!156} | |
!156 = !DISubrange(count: 23) | |
!157 = !DIGlobalVariableExpression(var: !158, expr: !DIExpression()) | |
!158 = distinct !DIGlobalVariable(scope: null, file: !6, line: 194, type: !123, isLocal: true, isDefinition: true) | |
!159 = !DIGlobalVariableExpression(var: !160, expr: !DIExpression()) | |
!160 = distinct !DIGlobalVariable(scope: null, file: !6, line: 195, type: !161, isLocal: true, isDefinition: true) | |
!161 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 152, elements: !162) | |
!162 = !{!163} | |
!163 = !DISubrange(count: 19) | |
!164 = !DIGlobalVariableExpression(var: !165, expr: !DIExpression()) | |
!165 = distinct !DIGlobalVariable(scope: null, file: !6, line: 200, type: !111, isLocal: true, isDefinition: true) | |
!166 = !DIGlobalVariableExpression(var: !167, expr: !DIExpression()) | |
!167 = distinct !DIGlobalVariable(scope: null, file: !6, line: 203, type: !168, isLocal: true, isDefinition: true) | |
!168 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 160, elements: !169) | |
!169 = !{!170} | |
!170 = !DISubrange(count: 20) | |
!171 = !DIGlobalVariableExpression(var: !172, expr: !DIExpression()) | |
!172 = distinct !DIGlobalVariable(scope: null, file: !6, line: 208, type: !173, isLocal: true, isDefinition: true) | |
!173 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 328, elements: !174) | |
!174 = !{!175} | |
!175 = !DISubrange(count: 41) | |
!176 = !DIGlobalVariableExpression(var: !177, expr: !DIExpression()) | |
!177 = distinct !DIGlobalVariable(scope: null, file: !6, line: 218, type: !161, isLocal: true, isDefinition: true) | |
!178 = !DIGlobalVariableExpression(var: !179, expr: !DIExpression()) | |
!179 = distinct !DIGlobalVariable(scope: null, file: !6, line: 240, type: !180, isLocal: true, isDefinition: true) | |
!180 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 344, elements: !181) | |
!181 = !{!182} | |
!182 = !DISubrange(count: 43) | |
!183 = !DIGlobalVariableExpression(var: !184, expr: !DIExpression()) | |
!184 = distinct !DIGlobalVariable(scope: null, file: !6, line: 249, type: !104, isLocal: true, isDefinition: true) | |
!185 = !DIGlobalVariableExpression(var: !186, expr: !DIExpression()) | |
!186 = distinct !DIGlobalVariable(scope: null, file: !6, line: 250, type: !111, isLocal: true, isDefinition: true) | |
!187 = !DIGlobalVariableExpression(var: !188, expr: !DIExpression()) | |
!188 = distinct !DIGlobalVariable(scope: null, file: !6, line: 315, type: !189, isLocal: true, isDefinition: true) | |
!189 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 200, elements: !190) | |
!190 = !{!191} | |
!191 = !DISubrange(count: 25) | |
!192 = !DIGlobalVariableExpression(var: !193, expr: !DIExpression()) | |
!193 = distinct !DIGlobalVariable(scope: null, file: !6, line: 319, type: !168, isLocal: true, isDefinition: true) | |
!194 = !DIGlobalVariableExpression(var: !195, expr: !DIExpression()) | |
!195 = distinct !DIGlobalVariable(scope: null, file: !6, line: 322, type: !196, isLocal: true, isDefinition: true) | |
!196 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 120, elements: !197) | |
!197 = !{!198} | |
!198 = !DISubrange(count: 15) | |
!199 = !DIGlobalVariableExpression(var: !200, expr: !DIExpression()) | |
!200 = distinct !DIGlobalVariable(scope: null, file: !6, line: 327, type: !145, isLocal: true, isDefinition: true) | |
!201 = !DIGlobalVariableExpression(var: !202, expr: !DIExpression()) | |
!202 = distinct !DIGlobalVariable(scope: null, file: !6, line: 400, type: !203, isLocal: true, isDefinition: true) | |
!203 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 128, elements: !204) | |
!204 = !{!205} | |
!205 = !DISubrange(count: 16) | |
!206 = !DIGlobalVariableExpression(var: !207, expr: !DIExpression()) | |
!207 = distinct !DIGlobalVariable(scope: null, file: !6, line: 401, type: !208, isLocal: true, isDefinition: true) | |
!208 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 48, elements: !209) | |
!209 = !{!210} | |
!210 = !DISubrange(count: 6) | |
!211 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !212, size: 64) | |
!212 = !DISubroutineType(types: !213) | |
!213 = !{!214, !215} | |
!214 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !105, size: 64) | |
!215 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64) | |
!216 = !{i32 1, !"Objective-C Version", i32 2} | |
!217 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!218 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!219 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!220 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!221 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!222 = !{i32 2, !"Debug Info Version", i32 3} | |
!223 = !{i32 1, !"wchar_size", i32 4} | |
!224 = !{i32 7, !"frame-pointer", i32 2} | |
!225 = !{ptr @objc_debug_class_getNameRaw, i64 5181241392} | |
!226 = !{ptr @class_name_lookup_func, i64 5181344880} | |
!227 = !{ptr @_Z48__lldb_apple_objc_v2_get_shared_cache_class_infoPvS_S_Pyjj, i64 5181401512} | |
!228 = !{ptr @printf, i64 5181240760} | |
!229 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!230 = distinct !DISubprogram(name: "__lldb_apple_objc_v2_get_shared_cache_class_info", linkageName: "_Z48__lldb_apple_objc_v2_get_shared_cache_class_infoPvS_S_Pyjj", scope: !6, file: !6, line: 137, type: !231, scopeLine: 143, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !2, retainedNodes: !234) | |
!231 = !DISubroutineType(types: !232) | |
!232 = !{!12, !215, !215, !215, !233, !12, !12} | |
!233 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !5, size: 64) | |
!234 = !{} | |
!235 = !{i64 5181400280} | |
!236 = !{i64 5181400408} | |
!237 = !{i64 5181400536} | |
!238 = !{i64 5181400760} | |
!239 = !{i64 5181400880} | |
!240 = !{i64 5181401000} | |
!241 = !{i64 5181401936} | |
!242 = !{i64 5181412760} | |
!243 = !{i64 5181413320} | |
!244 = !{i64 5181413880} | |
!245 = !{i64 5181428808} | |
!246 = !{i64 5181429480} | |
!247 = !{i64 5181433592} | |
!248 = !{i64 5181433992} | |
!249 = !{i64 5181434744} | |
!250 = !{i64 5181435416} | |
!251 = !{i64 5181437568} | |
!252 = !{i64 5181438064} | |
!253 = !{i64 5181441376} | |
!254 = !{i64 5181442592} | |
!255 = !{i64 5181442816} | |
!256 = !{i64 5181443048} | |
!257 = !{i64 5181445768} | |
!258 = !{i64 5181446360} | |
!259 = !{i64 5181446728} | |
!260 = !{i64 5181448008} | |
!261 = !{i64 5181448432} | |
!262 = !{i64 5181451480} | |
!263 = !{i64 5181452696} | |
!264 = !{i64 5181452920} | |
!265 = !{i64 5181453152} | |
!266 = !{i64 5181455896} | |
!267 = !{i64 5181457408} | |
!268 = !{i64 5181458328} | |
!269 = !{i64 5181458616} | |
!270 = !{i64 5181459168} | |
!271 = !{i64 5181459792} | |
!272 = !{i64 5181460456} | |
!273 = !{i64 5181462912} | |
!274 = !{i64 5181463408} | |
!275 = !{i64 5181472648} | |
!276 = !{i64 5181473864} | |
!277 = !{i64 5181474088} | |
!278 = !{i64 5181474320} | |
!279 = !{i64 5181476800} | |
!280 = !{i64 5181477296} | |
!281 = !{i64 5181477664} | |
!282 = !{i64 5181478944} | |
!283 = !{i64 5181479368} | |
!284 = !{i64 5181481088} | |
!285 = !{i64 5181482304} | |
!286 = !{i64 5181482528} | |
!287 = !{i64 5181482760} | |
!288 = !DILocalVariable(name: "objc_opt_ro_ptr", arg: 1, scope: !230, file: !6, line: 137, type: !215) | |
!289 = !DILocation(line: 137, scope: !230) | |
!290 = !DILocalVariable(name: "shared_cache_base_ptr", arg: 2, scope: !230, file: !6, line: 138, type: !215) | |
!291 = !DILocation(line: 138, scope: !230) | |
!292 = !DILocalVariable(name: "class_infos_ptr", arg: 3, scope: !230, file: !6, line: 139, type: !215) | |
!293 = !DILocation(line: 139, scope: !230) | |
!294 = !DILocalVariable(name: "relative_selector_offset", arg: 4, scope: !230, file: !6, line: 140, type: !233) | |
!295 = !DILocation(line: 140, scope: !230) | |
!296 = !DILocalVariable(name: "class_infos_byte_size", arg: 5, scope: !230, file: !6, line: 141, type: !12) | |
!297 = !DILocation(line: 141, scope: !230) | |
!298 = !DILocalVariable(name: "should_log", arg: 6, scope: !230, file: !6, line: 142, type: !12) | |
!299 = !DILocation(line: 142, scope: !230) | |
!300 = !DILocation(line: 144, scope: !230) | |
!301 = !DILocalVariable(name: "idx", scope: !230, file: !6, line: 145, type: !12) | |
!302 = !DILocation(line: 145, scope: !230) | |
!303 = !DILocation(line: 146, scope: !304) | |
!304 = distinct !DILexicalBlock(scope: !230, file: !6, line: 146) | |
!305 = !DILocation(line: 146, scope: !230) | |
!306 = !DILocation(line: 147, scope: !307) | |
!307 = distinct !DILexicalBlock(scope: !230, file: !6, line: 147) | |
!308 = !DILocation(line: 147, scope: !230) | |
!309 = !DILocation(line: 148, scope: !310) | |
!310 = distinct !DILexicalBlock(scope: !230, file: !6, line: 148) | |
!311 = !DILocation(line: 148, scope: !230) | |
!312 = !DILocation(line: 149, scope: !313) | |
!313 = distinct !DILexicalBlock(scope: !230, file: !6, line: 149) | |
!314 = !DILocation(line: 149, scope: !230) | |
!315 = !DILocation(line: 150, scope: !316) | |
!316 = distinct !DILexicalBlock(scope: !230, file: !6, line: 150) | |
!317 = !DILocation(line: 150, scope: !230) | |
!318 = !DILocalVariable(name: "objc_opt", scope: !319, file: !6, line: 152, type: !320) | |
!319 = distinct !DILexicalBlock(scope: !316, file: !6, line: 151) | |
!320 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !321, size: 64) | |
!321 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !9) | |
!322 = !DILocation(line: 152, scope: !319) | |
!323 = !DILocalVariable(name: "objc_opt_v14", scope: !319, file: !6, line: 153, type: !324) | |
!324 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !325, size: 64) | |
!325 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !20) | |
!326 = !DILocation(line: 153, scope: !319) | |
!327 = !DILocalVariable(name: "objc_opt_v16", scope: !319, file: !6, line: 154, type: !328) | |
!328 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !329, size: 64) | |
!329 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !28) | |
!330 = !DILocation(line: 154, scope: !319) | |
!331 = !DILocation(line: 155, scope: !332) | |
!332 = distinct !DILexicalBlock(scope: !319, file: !6, line: 155) | |
!333 = !DILocation(line: 155, scope: !319) | |
!334 = !DILocation(line: 157, scope: !335) | |
!335 = distinct !DILexicalBlock(scope: !332, file: !6, line: 156) | |
!336 = !DILocation(line: 158, scope: !337) | |
!337 = distinct !DILexicalBlock(scope: !335, file: !6, line: 158) | |
!338 = !DILocation(line: 158, scope: !335) | |
!339 = !DILocation(line: 159, scope: !340) | |
!340 = distinct !DILexicalBlock(scope: !335, file: !6, line: 159) | |
!341 = !DILocation(line: 159, scope: !335) | |
!342 = !DILocation(line: 160, scope: !343) | |
!343 = distinct !DILexicalBlock(scope: !335, file: !6, line: 160) | |
!344 = !DILocation(line: 160, scope: !335) | |
!345 = !DILocation(line: 161, scope: !346) | |
!346 = distinct !DILexicalBlock(scope: !335, file: !6, line: 161) | |
!347 = !DILocation(line: 161, scope: !335) | |
!348 = !DILocation(line: 162, scope: !349) | |
!349 = distinct !DILexicalBlock(scope: !335, file: !6, line: 162) | |
!350 = !DILocation(line: 162, scope: !335) | |
!351 = !DILocation(line: 163, scope: !335) | |
!352 = !DILocation(line: 164, scope: !353) | |
!353 = distinct !DILexicalBlock(scope: !332, file: !6, line: 164) | |
!354 = !DILocation(line: 164, scope: !332) | |
!355 = !DILocation(line: 166, scope: !356) | |
!356 = distinct !DILexicalBlock(scope: !357, file: !6, line: 166) | |
!357 = distinct !DILexicalBlock(scope: !353, file: !6, line: 165) | |
!358 = !DILocation(line: 166, scope: !357) | |
!359 = !DILocation(line: 167, scope: !360) | |
!360 = distinct !DILexicalBlock(scope: !357, file: !6, line: 167) | |
!361 = !DILocation(line: 167, scope: !357) | |
!362 = !DILocation(line: 168, scope: !363) | |
!363 = distinct !DILexicalBlock(scope: !357, file: !6, line: 168) | |
!364 = !DILocation(line: 168, scope: !357) | |
!365 = !DILocation(line: 169, scope: !366) | |
!366 = distinct !DILexicalBlock(scope: !357, file: !6, line: 169) | |
!367 = !DILocation(line: 169, scope: !357) | |
!368 = !DILocation(line: 170, scope: !369) | |
!369 = distinct !DILexicalBlock(scope: !357, file: !6, line: 170) | |
!370 = !DILocation(line: 170, scope: !357) | |
!371 = !DILocation(line: 171, scope: !357) | |
!372 = !DILocation(line: 174, scope: !373) | |
!373 = distinct !DILexicalBlock(scope: !374, file: !6, line: 174) | |
!374 = distinct !DILexicalBlock(scope: !353, file: !6, line: 173) | |
!375 = !DILocation(line: 174, scope: !374) | |
!376 = !DILocation(line: 175, scope: !377) | |
!377 = distinct !DILexicalBlock(scope: !374, file: !6, line: 175) | |
!378 = !DILocation(line: 175, scope: !374) | |
!379 = !DILocation(line: 176, scope: !380) | |
!380 = distinct !DILexicalBlock(scope: !374, file: !6, line: 176) | |
!381 = !DILocation(line: 176, scope: !374) | |
!382 = !DILocation(line: 177, scope: !383) | |
!383 = distinct !DILexicalBlock(scope: !374, file: !6, line: 177) | |
!384 = !DILocation(line: 177, scope: !374) | |
!385 = !DILocation(line: 180, scope: !386) | |
!386 = distinct !DILexicalBlock(scope: !319, file: !6, line: 180) | |
!387 = !DILocation(line: 180, scope: !319) | |
!388 = !DILocalVariable(name: "clsopt", scope: !389, file: !6, line: 182, type: !41) | |
!389 = distinct !DILexicalBlock(scope: !386, file: !6, line: 181) | |
!390 = !DILocation(line: 182, scope: !389) | |
!391 = !DILocalVariable(name: "max_class_infos", scope: !389, file: !6, line: 183, type: !392) | |
!392 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !393) | |
!393 = !DIDerivedType(tag: DW_TAG_typedef, name: "size_t", file: !6, line: 29, baseType: !394) | |
!394 = !DIBasicType(name: "unsigned long", size: 64, encoding: DW_ATE_unsigned) | |
!395 = !DILocation(line: 183, scope: !389) | |
!396 = !DILocation(line: 185, scope: !397) | |
!397 = distinct !DILexicalBlock(scope: !389, file: !6, line: 185) | |
!398 = !DILocation(line: 185, scope: !389) | |
!399 = !DILocalVariable(name: "class_infos", scope: !389, file: !6, line: 187, type: !63) | |
!400 = !DILocation(line: 187, scope: !389) | |
!401 = !DILocalVariable(name: "checkbytes", scope: !389, file: !6, line: 189, type: !402) | |
!402 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !403, size: 64) | |
!403 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !58) | |
!404 = !DILocation(line: 189, scope: !389) | |
!405 = !DILocalVariable(name: "offsets", scope: !389, file: !6, line: 190, type: !72) | |
!406 = !DILocation(line: 190, scope: !389) | |
!407 = !DILocalVariable(name: "classOffsets", scope: !389, file: !6, line: 191, type: !74) | |
!408 = !DILocation(line: 191, scope: !389) | |
!409 = !DILocation(line: 193, scope: !410) | |
!410 = distinct !DILexicalBlock(scope: !389, file: !6, line: 193) | |
!411 = !DILocation(line: 193, scope: !389) | |
!412 = !DILocation(line: 194, scope: !413) | |
!413 = distinct !DILexicalBlock(scope: !389, file: !6, line: 194) | |
!414 = !DILocation(line: 194, scope: !389) | |
!415 = !DILocation(line: 195, scope: !416) | |
!416 = distinct !DILexicalBlock(scope: !389, file: !6, line: 195) | |
!417 = !DILocation(line: 195, scope: !389) | |
!418 = !DILocalVariable(name: "i", scope: !419, file: !6, line: 197, type: !12) | |
!419 = distinct !DILexicalBlock(scope: !389, file: !6, line: 197) | |
!420 = !DILocation(line: 197, scope: !419) | |
!421 = !DILocation(line: 197, scope: !422) | |
!422 = distinct !DILexicalBlock(scope: !419, file: !6, line: 197) | |
!423 = !DILocalVariable(name: "objectCacheOffset", scope: !424, file: !6, line: 199, type: !425) | |
!424 = distinct !DILexicalBlock(scope: !422, file: !6, line: 198) | |
!425 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !5) | |
!426 = !DILocation(line: 199, scope: !424) | |
!427 = !DILocation(line: 200, scope: !428) | |
!428 = distinct !DILexicalBlock(scope: !424, file: !6, line: 200) | |
!429 = !DILocation(line: 200, scope: !424) | |
!430 = !DILocation(line: 202, scope: !431) | |
!431 = distinct !DILexicalBlock(scope: !424, file: !6, line: 202) | |
!432 = !DILocation(line: 202, scope: !424) | |
!433 = !DILocation(line: 203, scope: !434) | |
!434 = distinct !DILexicalBlock(scope: !435, file: !6, line: 203) | |
!435 = distinct !DILexicalBlock(scope: !431, file: !6, line: 202) | |
!436 = !DILocation(line: 203, scope: !435) | |
!437 = !DILocation(line: 204, scope: !435) | |
!438 = !DILocation(line: 207, scope: !439) | |
!439 = distinct !DILexicalBlock(scope: !424, file: !6, line: 207) | |
!440 = !DILocation(line: 207, scope: !424) | |
!441 = !DILocation(line: 208, scope: !442) | |
!442 = distinct !DILexicalBlock(scope: !443, file: !6, line: 208) | |
!443 = distinct !DILexicalBlock(scope: !439, file: !6, line: 207) | |
!444 = !DILocation(line: 208, scope: !443) | |
!445 = !DILocation(line: 209, scope: !443) | |
!446 = !DILocation(line: 212, scope: !447) | |
!447 = distinct !DILexicalBlock(scope: !424, file: !6, line: 212) | |
!448 = !DILocation(line: 212, scope: !424) | |
!449 = !DILocation(line: 214, scope: !450) | |
!450 = distinct !DILexicalBlock(scope: !447, file: !6, line: 213) | |
!451 = !DILocalVariable(name: "name", scope: !450, file: !6, line: 217, type: !214) | |
!452 = !DILocation(line: 217, scope: !450) | |
!453 = !DILocation(line: 218, scope: !454) | |
!454 = distinct !DILexicalBlock(scope: !450, file: !6, line: 218) | |
!455 = !DILocation(line: 218, scope: !450) | |
!456 = !DILocalVariable(name: "s", scope: !450, file: !6, line: 221, type: !214) | |
!457 = !DILocation(line: 221, scope: !450) | |
!458 = !DILocalVariable(name: "h", scope: !450, file: !6, line: 222, type: !12) | |
!459 = !DILocation(line: 222, scope: !450) | |
!460 = !DILocalVariable(name: "c", scope: !461, file: !6, line: 223, type: !59) | |
!461 = distinct !DILexicalBlock(scope: !450, file: !6, line: 223) | |
!462 = !DILocation(line: 223, scope: !461) | |
!463 = !DILocation(line: 223, scope: !464) | |
!464 = distinct !DILexicalBlock(scope: !461, file: !6, line: 223) | |
!465 = !DILocation(line: 229, scope: !466) | |
!466 = distinct !DILexicalBlock(scope: !467, file: !6, line: 229) | |
!467 = distinct !DILexicalBlock(scope: !464, file: !6, line: 224) | |
!468 = !DILocation(line: 229, scope: !467) | |
!469 = !DILocation(line: 231, scope: !470) | |
!470 = distinct !DILexicalBlock(scope: !466, file: !6, line: 230) | |
!471 = !DILocation(line: 232, scope: !470) | |
!472 = !DILocation(line: 234, scope: !467) | |
!473 = !DILocation(line: 235, scope: !467) | |
!474 = distinct !{!474, !462, !475, !476} | |
!475 = !DILocation(line: 235, scope: !461) | |
!476 = !{!"llvm.loop.mustprogress"} | |
!477 = !DILocation(line: 236, scope: !450) | |
!478 = !DILocation(line: 237, scope: !450) | |
!479 = !DILocation(line: 240, scope: !480) | |
!480 = distinct !DILexicalBlock(scope: !481, file: !6, line: 240) | |
!481 = distinct !DILexicalBlock(scope: !447, file: !6, line: 239) | |
!482 = !DILocation(line: 240, scope: !481) | |
!483 = !DILocation(line: 242, scope: !424) | |
!484 = !DILocation(line: 243, scope: !424) | |
!485 = distinct !{!485, !420, !486, !476} | |
!486 = !DILocation(line: 243, scope: !419) | |
!487 = !DILocalVariable(name: "duplicate_count_ptr", scope: !389, file: !6, line: 245, type: !488) | |
!488 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !489, size: 64) | |
!489 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !12) | |
!490 = !DILocation(line: 245, scope: !389) | |
!491 = !DILocalVariable(name: "duplicate_count", scope: !389, file: !6, line: 246, type: !489) | |
!492 = !DILocation(line: 246, scope: !389) | |
!493 = !DILocalVariable(name: "duplicateClassOffsets", scope: !389, file: !6, line: 247, type: !74) | |
!494 = !DILocation(line: 247, scope: !389) | |
!495 = !DILocation(line: 249, scope: !496) | |
!496 = distinct !DILexicalBlock(scope: !389, file: !6, line: 249) | |
!497 = !DILocation(line: 249, scope: !389) | |
!498 = !DILocation(line: 250, scope: !499) | |
!499 = distinct !DILexicalBlock(scope: !389, file: !6, line: 250) | |
!500 = !DILocation(line: 250, scope: !389) | |
!501 = !DILocalVariable(name: "i", scope: !502, file: !6, line: 252, type: !12) | |
!502 = distinct !DILexicalBlock(scope: !389, file: !6, line: 252) | |
!503 = !DILocation(line: 252, scope: !502) | |
!504 = !DILocation(line: 252, scope: !505) | |
!505 = distinct !DILexicalBlock(scope: !502, file: !6, line: 252) | |
!506 = !DILocalVariable(name: "objectCacheOffset", scope: !507, file: !6, line: 254, type: !425) | |
!507 = distinct !DILexicalBlock(scope: !505, file: !6, line: 253) | |
!508 = !DILocation(line: 254, scope: !507) | |
!509 = !DILocation(line: 255, scope: !510) | |
!510 = distinct !DILexicalBlock(scope: !507, file: !6, line: 255) | |
!511 = !DILocation(line: 255, scope: !507) | |
!512 = !DILocation(line: 257, scope: !513) | |
!513 = distinct !DILexicalBlock(scope: !507, file: !6, line: 257) | |
!514 = !DILocation(line: 257, scope: !507) | |
!515 = !DILocation(line: 258, scope: !516) | |
!516 = distinct !DILexicalBlock(scope: !517, file: !6, line: 258) | |
!517 = distinct !DILexicalBlock(scope: !513, file: !6, line: 257) | |
!518 = !DILocation(line: 258, scope: !517) | |
!519 = !DILocation(line: 259, scope: !517) | |
!520 = !DILocation(line: 262, scope: !521) | |
!521 = distinct !DILexicalBlock(scope: !507, file: !6, line: 262) | |
!522 = !DILocation(line: 262, scope: !507) | |
!523 = !DILocation(line: 263, scope: !524) | |
!524 = distinct !DILexicalBlock(scope: !525, file: !6, line: 263) | |
!525 = distinct !DILexicalBlock(scope: !521, file: !6, line: 262) | |
!526 = !DILocation(line: 263, scope: !525) | |
!527 = !DILocation(line: 264, scope: !525) | |
!528 = !DILocation(line: 267, scope: !529) | |
!529 = distinct !DILexicalBlock(scope: !507, file: !6, line: 267) | |
!530 = !DILocation(line: 267, scope: !507) | |
!531 = !DILocation(line: 269, scope: !532) | |
!532 = distinct !DILexicalBlock(scope: !529, file: !6, line: 268) | |
!533 = !DILocalVariable(name: "name", scope: !532, file: !6, line: 272, type: !214) | |
!534 = !DILocation(line: 272, scope: !532) | |
!535 = !DILocation(line: 273, scope: !536) | |
!536 = distinct !DILexicalBlock(scope: !532, file: !6, line: 273) | |
!537 = !DILocation(line: 273, scope: !532) | |
!538 = !DILocalVariable(name: "s", scope: !532, file: !6, line: 276, type: !214) | |
!539 = !DILocation(line: 276, scope: !532) | |
!540 = !DILocalVariable(name: "h", scope: !532, file: !6, line: 277, type: !12) | |
!541 = !DILocation(line: 277, scope: !532) | |
!542 = !DILocalVariable(name: "c", scope: !543, file: !6, line: 278, type: !59) | |
!543 = distinct !DILexicalBlock(scope: !532, file: !6, line: 278) | |
!544 = !DILocation(line: 278, scope: !543) | |
!545 = !DILocation(line: 278, scope: !546) | |
!546 = distinct !DILexicalBlock(scope: !543, file: !6, line: 278) | |
!547 = !DILocation(line: 284, scope: !548) | |
!548 = distinct !DILexicalBlock(scope: !549, file: !6, line: 284) | |
!549 = distinct !DILexicalBlock(scope: !546, file: !6, line: 279) | |
!550 = !DILocation(line: 284, scope: !549) | |
!551 = !DILocation(line: 286, scope: !552) | |
!552 = distinct !DILexicalBlock(scope: !548, file: !6, line: 285) | |
!553 = !DILocation(line: 287, scope: !552) | |
!554 = !DILocation(line: 289, scope: !549) | |
!555 = !DILocation(line: 290, scope: !549) | |
!556 = distinct !{!556, !544, !557, !476} | |
!557 = !DILocation(line: 290, scope: !543) | |
!558 = !DILocation(line: 291, scope: !532) | |
!559 = !DILocation(line: 292, scope: !532) | |
!560 = !DILocation(line: 293, scope: !507) | |
!561 = distinct !{!561, !503, !562, !476} | |
!562 = !DILocation(line: 293, scope: !502) | |
!563 = !DILocation(line: 294, scope: !389) | |
!564 = !DILocation(line: 295, scope: !565) | |
!565 = distinct !DILexicalBlock(scope: !386, file: !6, line: 295) | |
!566 = !DILocation(line: 295, scope: !386) | |
!567 = !DILocalVariable(name: "clsopt", scope: !568, file: !6, line: 297, type: !82) | |
!568 = distinct !DILexicalBlock(scope: !565, file: !6, line: 296) | |
!569 = !DILocation(line: 297, scope: !568) | |
!570 = !DILocation(line: 298, scope: !571) | |
!571 = distinct !DILexicalBlock(scope: !568, file: !6, line: 298) | |
!572 = !DILocation(line: 298, scope: !568) | |
!573 = !DILocation(line: 299, scope: !571) | |
!574 = !DILocation(line: 301, scope: !571) | |
!575 = !DILocalVariable(name: "max_class_infos", scope: !568, file: !6, line: 302, type: !392) | |
!576 = !DILocation(line: 302, scope: !568) | |
!577 = !DILocation(line: 303, scope: !578) | |
!578 = distinct !DILexicalBlock(scope: !568, file: !6, line: 303) | |
!579 = !DILocation(line: 303, scope: !568) | |
!580 = !DILocalVariable(name: "class_infos", scope: !568, file: !6, line: 304, type: !63) | |
!581 = !DILocation(line: 304, scope: !568) | |
!582 = !DILocalVariable(name: "invalidEntryOffset", scope: !568, file: !6, line: 305, type: !15) | |
!583 = !DILocation(line: 305, scope: !568) | |
!584 = !DILocation(line: 307, scope: !585) | |
!585 = distinct !DILexicalBlock(scope: !568, file: !6, line: 307) | |
!586 = !DILocation(line: 307, scope: !568) | |
!587 = !DILocation(line: 308, scope: !585) | |
!588 = !DILocalVariable(name: "checkbytes", scope: !568, file: !6, line: 309, type: !402) | |
!589 = !DILocation(line: 309, scope: !568) | |
!590 = !DILocalVariable(name: "offsets", scope: !568, file: !6, line: 310, type: !72) | |
!591 = !DILocation(line: 310, scope: !568) | |
!592 = !DILocalVariable(name: "classOffsets", scope: !568, file: !6, line: 311, type: !95) | |
!593 = !DILocation(line: 311, scope: !568) | |
!594 = !DILocation(line: 312, scope: !595) | |
!595 = distinct !DILexicalBlock(scope: !568, file: !6, line: 312) | |
!596 = !DILocation(line: 312, scope: !568) | |
!597 = !DILocation(line: 313, scope: !598) | |
!598 = distinct !DILexicalBlock(scope: !568, file: !6, line: 313) | |
!599 = !DILocation(line: 313, scope: !568) | |
!600 = !DILocation(line: 314, scope: !601) | |
!601 = distinct !DILexicalBlock(scope: !568, file: !6, line: 314) | |
!602 = !DILocation(line: 314, scope: !568) | |
!603 = !DILocation(line: 315, scope: !604) | |
!604 = distinct !DILexicalBlock(scope: !568, file: !6, line: 315) | |
!605 = !DILocation(line: 315, scope: !568) | |
!606 = !DILocalVariable(name: "i", scope: !607, file: !6, line: 316, type: !12) | |
!607 = distinct !DILexicalBlock(scope: !568, file: !6, line: 316) | |
!608 = !DILocation(line: 316, scope: !607) | |
!609 = !DILocation(line: 316, scope: !610) | |
!610 = distinct !DILexicalBlock(scope: !607, file: !6, line: 316) | |
!611 = !DILocalVariable(name: "clsOffset", scope: !612, file: !6, line: 318, type: !73) | |
!612 = distinct !DILexicalBlock(scope: !610, file: !6, line: 317) | |
!613 = !DILocation(line: 318, scope: !612) | |
!614 = !DILocation(line: 319, scope: !615) | |
!615 = distinct !DILexicalBlock(scope: !612, file: !6, line: 319) | |
!616 = !DILocation(line: 319, scope: !612) | |
!617 = !DILocation(line: 320, scope: !618) | |
!618 = distinct !DILexicalBlock(scope: !612, file: !6, line: 320) | |
!619 = !DILocation(line: 320, scope: !612) | |
!620 = !DILocation(line: 322, scope: !621) | |
!621 = distinct !DILexicalBlock(scope: !622, file: !6, line: 322) | |
!622 = distinct !DILexicalBlock(scope: !618, file: !6, line: 321) | |
!623 = !DILocation(line: 322, scope: !622) | |
!624 = !DILocation(line: 323, scope: !622) | |
!625 = !DILocation(line: 325, scope: !626) | |
!626 = distinct !DILexicalBlock(scope: !618, file: !6, line: 325) | |
!627 = !DILocation(line: 325, scope: !618) | |
!628 = !DILocation(line: 327, scope: !629) | |
!629 = distinct !DILexicalBlock(scope: !630, file: !6, line: 327) | |
!630 = distinct !DILexicalBlock(scope: !626, file: !6, line: 326) | |
!631 = !DILocation(line: 327, scope: !630) | |
!632 = !DILocation(line: 328, scope: !630) | |
!633 = !DILocation(line: 331, scope: !634) | |
!634 = distinct !DILexicalBlock(scope: !612, file: !6, line: 331) | |
!635 = !DILocation(line: 331, scope: !612) | |
!636 = !DILocation(line: 333, scope: !637) | |
!637 = distinct !DILexicalBlock(scope: !634, file: !6, line: 332) | |
!638 = !DILocalVariable(name: "name", scope: !637, file: !6, line: 334, type: !214) | |
!639 = !DILocation(line: 334, scope: !637) | |
!640 = !DILocation(line: 335, scope: !641) | |
!641 = distinct !DILexicalBlock(scope: !637, file: !6, line: 335) | |
!642 = !DILocation(line: 335, scope: !637) | |
!643 = !DILocalVariable(name: "s", scope: !637, file: !6, line: 337, type: !214) | |
!644 = !DILocation(line: 337, scope: !637) | |
!645 = !DILocalVariable(name: "h", scope: !637, file: !6, line: 338, type: !12) | |
!646 = !DILocation(line: 338, scope: !637) | |
!647 = !DILocalVariable(name: "c", scope: !648, file: !6, line: 339, type: !59) | |
!648 = distinct !DILexicalBlock(scope: !637, file: !6, line: 339) | |
!649 = !DILocation(line: 339, scope: !648) | |
!650 = !DILocation(line: 339, scope: !651) | |
!651 = distinct !DILexicalBlock(scope: !648, file: !6, line: 339) | |
!652 = !DILocation(line: 345, scope: !653) | |
!653 = distinct !DILexicalBlock(scope: !654, file: !6, line: 345) | |
!654 = distinct !DILexicalBlock(scope: !651, file: !6, line: 340) | |
!655 = !DILocation(line: 345, scope: !654) | |
!656 = !DILocation(line: 347, scope: !657) | |
!657 = distinct !DILexicalBlock(scope: !653, file: !6, line: 346) | |
!658 = !DILocation(line: 348, scope: !657) | |
!659 = !DILocation(line: 350, scope: !654) | |
!660 = !DILocation(line: 351, scope: !654) | |
!661 = distinct !{!661, !649, !662, !476} | |
!662 = !DILocation(line: 351, scope: !648) | |
!663 = !DILocation(line: 352, scope: !637) | |
!664 = !DILocation(line: 353, scope: !637) | |
!665 = !DILocation(line: 356, scope: !666) | |
!666 = distinct !DILexicalBlock(scope: !667, file: !6, line: 356) | |
!667 = distinct !DILexicalBlock(scope: !634, file: !6, line: 355) | |
!668 = !DILocation(line: 356, scope: !667) | |
!669 = !DILocation(line: 358, scope: !612) | |
!670 = !DILocation(line: 359, scope: !612) | |
!671 = distinct !{!671, !608, !672, !476} | |
!672 = !DILocation(line: 359, scope: !607) | |
!673 = !DILocalVariable(name: "duplicate_count_ptr", scope: !568, file: !6, line: 361, type: !488) | |
!674 = !DILocation(line: 361, scope: !568) | |
!675 = !DILocalVariable(name: "duplicate_count", scope: !568, file: !6, line: 362, type: !489) | |
!676 = !DILocation(line: 362, scope: !568) | |
!677 = !DILocalVariable(name: "duplicateClassOffsets", scope: !568, file: !6, line: 363, type: !95) | |
!678 = !DILocation(line: 363, scope: !568) | |
!679 = !DILocation(line: 364, scope: !680) | |
!680 = distinct !DILexicalBlock(scope: !568, file: !6, line: 364) | |
!681 = !DILocation(line: 364, scope: !568) | |
!682 = !DILocation(line: 365, scope: !683) | |
!683 = distinct !DILexicalBlock(scope: !568, file: !6, line: 365) | |
!684 = !DILocation(line: 365, scope: !568) | |
!685 = !DILocalVariable(name: "i", scope: !686, file: !6, line: 366, type: !12) | |
!686 = distinct !DILexicalBlock(scope: !568, file: !6, line: 366) | |
!687 = !DILocation(line: 366, scope: !686) | |
!688 = !DILocation(line: 366, scope: !689) | |
!689 = distinct !DILexicalBlock(scope: !686, file: !6, line: 366) | |
!690 = !DILocalVariable(name: "clsOffset", scope: !691, file: !6, line: 368, type: !73) | |
!691 = distinct !DILexicalBlock(scope: !689, file: !6, line: 367) | |
!692 = !DILocation(line: 368, scope: !691) | |
!693 = !DILocation(line: 369, scope: !694) | |
!694 = distinct !DILexicalBlock(scope: !691, file: !6, line: 369) | |
!695 = !DILocation(line: 369, scope: !691) | |
!696 = !DILocation(line: 370, scope: !694) | |
!697 = !DILocation(line: 371, scope: !698) | |
!698 = distinct !DILexicalBlock(scope: !694, file: !6, line: 371) | |
!699 = !DILocation(line: 371, scope: !694) | |
!700 = !DILocation(line: 372, scope: !698) | |
!701 = !DILocation(line: 374, scope: !702) | |
!702 = distinct !DILexicalBlock(scope: !691, file: !6, line: 374) | |
!703 = !DILocation(line: 374, scope: !691) | |
!704 = !DILocation(line: 376, scope: !705) | |
!705 = distinct !DILexicalBlock(scope: !702, file: !6, line: 375) | |
!706 = !DILocalVariable(name: "name", scope: !705, file: !6, line: 377, type: !214) | |
!707 = !DILocation(line: 377, scope: !705) | |
!708 = !DILocation(line: 378, scope: !709) | |
!709 = distinct !DILexicalBlock(scope: !705, file: !6, line: 378) | |
!710 = !DILocation(line: 378, scope: !705) | |
!711 = !DILocalVariable(name: "s", scope: !705, file: !6, line: 380, type: !214) | |
!712 = !DILocation(line: 380, scope: !705) | |
!713 = !DILocalVariable(name: "h", scope: !705, file: !6, line: 381, type: !12) | |
!714 = !DILocation(line: 381, scope: !705) | |
!715 = !DILocalVariable(name: "c", scope: !716, file: !6, line: 382, type: !59) | |
!716 = distinct !DILexicalBlock(scope: !705, file: !6, line: 382) | |
!717 = !DILocation(line: 382, scope: !716) | |
!718 = !DILocation(line: 382, scope: !719) | |
!719 = distinct !DILexicalBlock(scope: !716, file: !6, line: 382) | |
!720 = !DILocation(line: 388, scope: !721) | |
!721 = distinct !DILexicalBlock(scope: !722, file: !6, line: 388) | |
!722 = distinct !DILexicalBlock(scope: !719, file: !6, line: 383) | |
!723 = !DILocation(line: 388, scope: !722) | |
!724 = !DILocation(line: 390, scope: !725) | |
!725 = distinct !DILexicalBlock(scope: !721, file: !6, line: 389) | |
!726 = !DILocation(line: 391, scope: !725) | |
!727 = !DILocation(line: 393, scope: !722) | |
!728 = !DILocation(line: 394, scope: !722) | |
!729 = distinct !{!729, !717, !730, !476} | |
!730 = !DILocation(line: 394, scope: !716) | |
!731 = !DILocation(line: 395, scope: !705) | |
!732 = !DILocation(line: 396, scope: !705) | |
!733 = !DILocation(line: 397, scope: !691) | |
!734 = !DILocation(line: 398, scope: !691) | |
!735 = distinct !{!735, !687, !736, !476} | |
!736 = !DILocation(line: 398, scope: !686) | |
!737 = !DILocation(line: 399, scope: !568) | |
!738 = !DILocation(line: 400, scope: !739) | |
!739 = distinct !DILexicalBlock(scope: !319, file: !6, line: 400) | |
!740 = !DILocation(line: 400, scope: !319) | |
!741 = !DILocation(line: 401, scope: !742) | |
!742 = distinct !DILexicalBlock(scope: !319, file: !6, line: 401) | |
!743 = !DILocation(line: 401, scope: !319) | |
!744 = !DILocation(line: 402, scope: !319) | |
!745 = !DILocation(line: 403, scope: !230) | |
" | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %objc_opt_ro_ptr.addr, metadata !288, metadata !DIExpression()), !dbg !289) | |
MaybeHandleVariable (ptr %objc_opt_ro_ptr.addr) | |
MaybeHandleVariable (!288 = !DILocalVariable(name: "objc_opt_ro_ptr", arg: 1, scope: !230, file: !6, line: 137, type: !215)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %shared_cache_base_ptr.addr, metadata !290, metadata !DIExpression()), !dbg !291) | |
MaybeHandleVariable (ptr %shared_cache_base_ptr.addr) | |
MaybeHandleVariable (!290 = !DILocalVariable(name: "shared_cache_base_ptr", arg: 2, scope: !230, file: !6, line: 138, type: !215)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %class_infos_ptr.addr, metadata !292, metadata !DIExpression()), !dbg !293) | |
MaybeHandleVariable (ptr %class_infos_ptr.addr) | |
MaybeHandleVariable (!292 = !DILocalVariable(name: "class_infos_ptr", arg: 3, scope: !230, file: !6, line: 139, type: !215)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %relative_selector_offset.addr, metadata !294, metadata !DIExpression()), !dbg !295) | |
MaybeHandleVariable (ptr %relative_selector_offset.addr) | |
MaybeHandleVariable (!294 = !DILocalVariable(name: "relative_selector_offset", arg: 4, scope: !230, file: !6, line: 140, type: !233)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %class_infos_byte_size.addr, metadata !296, metadata !DIExpression()), !dbg !297) | |
MaybeHandleVariable (ptr %class_infos_byte_size.addr) | |
MaybeHandleVariable (!296 = !DILocalVariable(name: "class_infos_byte_size", arg: 5, scope: !230, file: !6, line: 141, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %should_log.addr, metadata !298, metadata !DIExpression()), !dbg !299) | |
MaybeHandleVariable (ptr %should_log.addr) | |
MaybeHandleVariable (!298 = !DILocalVariable(name: "should_log", arg: 6, scope: !230, file: !6, line: 142, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %idx, metadata !301, metadata !DIExpression()), !dbg !302) | |
MaybeHandleVariable (ptr %idx) | |
MaybeHandleVariable (!301 = !DILocalVariable(name: "idx", scope: !230, file: !6, line: 145, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call = call i32 (ptr, ...) @printf(ptr @.str, ptr %2) #3, !dbg !303) | |
MaybeHandleVariable (@.str = private unnamed_addr constant [22 x i8] c"objc_opt_ro_ptr = %p\0A\00", align 1, !dbg !102) | |
MaybeHandleVariable ( %2 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !303) | |
MaybeHandleCallArguments( %call3 = call i32 (ptr, ...) @printf(ptr @.str.1, ptr %4) #3, !dbg !306) | |
MaybeHandleVariable (@.str.1 = private unnamed_addr constant [28 x i8] c"shared_cache_base_ptr = %p\0A\00", align 1, !dbg !109) | |
MaybeHandleVariable ( %4 = load ptr, ptr %shared_cache_base_ptr.addr, align 8, !dbg !306) | |
MaybeHandleCallArguments( %call7 = call i32 (ptr, ...) @printf(ptr @.str.2, ptr %6) #3, !dbg !309) | |
MaybeHandleVariable (@.str.2 = private unnamed_addr constant [22 x i8] c"class_infos_ptr = %p\0A\00", align 1, !dbg !114) | |
MaybeHandleVariable ( %6 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !309) | |
MaybeHandleCallArguments( %call11 = call i32 (ptr, ...) @printf(ptr @.str.3, i32 %8, i64 %div) #3, !dbg !312) | |
MaybeHandleVariable (@.str.3 = private unnamed_addr constant [47 x i8] c"class_infos_byte_size = %u (%llu class infos)\0A\00", align 1, !dbg !116) | |
MaybeHandleVariable ( %8 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !312) | |
MaybeHandleVariable ( %div = udiv i64 %conv, 12, !dbg !312) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %objc_opt, metadata !318, metadata !DIExpression()), !dbg !322) | |
MaybeHandleVariable (ptr %objc_opt) | |
MaybeHandleVariable (!318 = !DILocalVariable(name: "objc_opt", scope: !319, file: !6, line: 152, type: !320)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %objc_opt_v14, metadata !323, metadata !DIExpression()), !dbg !326) | |
MaybeHandleVariable (ptr %objc_opt_v14) | |
MaybeHandleVariable (!323 = !DILocalVariable(name: "objc_opt_v14", scope: !319, file: !6, line: 153, type: !324)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %objc_opt_v16, metadata !327, metadata !DIExpression()), !dbg !330) | |
MaybeHandleVariable (ptr %objc_opt_v16) | |
MaybeHandleVariable (!327 = !DILocalVariable(name: "objc_opt_v16", scope: !319, file: !6, line: 154, type: !328)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call19 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %21) #3, !dbg !336) | |
MaybeHandleVariable (@.str.4 = private unnamed_addr constant [24 x i8] c"objc_opt->version = %u\0A\00", align 1, !dbg !121) | |
MaybeHandleVariable ( %21 = load i32, ptr %version18, align 8, !dbg !336) | |
MaybeHandleCallArguments( %call23 = call i32 (ptr, ...) @printf(ptr @.str.5, i32 %24) #3, !dbg !339) | |
MaybeHandleVariable (@.str.5 = private unnamed_addr constant [22 x i8] c"objc_opt->flags = %u\0A\00", align 1, !dbg !126) | |
MaybeHandleVariable ( %24 = load i32, ptr %flags, align 4, !dbg !339) | |
MaybeHandleCallArguments( %call27 = call i32 (ptr, ...) @printf(ptr @.str.6, i32 %27) #3, !dbg !342) | |
MaybeHandleVariable (@.str.6 = private unnamed_addr constant [30 x i8] c"objc_opt->selopt_offset = %d\0A\00", align 1, !dbg !128) | |
MaybeHandleVariable ( %27 = load i32, ptr %selopt_offset, align 8, !dbg !342) | |
MaybeHandleCallArguments( %call31 = call i32 (ptr, ...) @printf(ptr @.str.7, i32 %30) #3, !dbg !345) | |
MaybeHandleVariable (@.str.7 = private unnamed_addr constant [36 x i8] c"objc_opt->headeropt_ro_offset = %d\0A\00", align 1, !dbg !133) | |
MaybeHandleVariable ( %30 = load i32, ptr %headeropt_ro_offset, align 4, !dbg !345) | |
MaybeHandleCallArguments( %call35 = call i32 (ptr, ...) @printf(ptr @.str.8, i64 %33) #3, !dbg !348) | |
MaybeHandleVariable (@.str.8 = private unnamed_addr constant [61 x i8] c"objc_opt->relativeMethodSelectorBaseAddressCacheOffset = %d\0A\00", align 1, !dbg !138) | |
MaybeHandleVariable ( %33 = load i64, ptr %32, align 8, !dbg !348) | |
MaybeHandleCallArguments( %call43 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %38) #3, !dbg !355) | |
MaybeHandleVariable (@.str.4 = private unnamed_addr constant [24 x i8] c"objc_opt->version = %u\0A\00", align 1, !dbg !121) | |
MaybeHandleVariable ( %38 = load i32, ptr %version42, align 4, !dbg !355) | |
MaybeHandleCallArguments( %call48 = call i32 (ptr, ...) @printf(ptr @.str.5, i32 %41) #3, !dbg !359) | |
MaybeHandleVariable (@.str.5 = private unnamed_addr constant [22 x i8] c"objc_opt->flags = %u\0A\00", align 1, !dbg !126) | |
MaybeHandleVariable ( %41 = load i32, ptr %flags47, align 4, !dbg !359) | |
MaybeHandleCallArguments( %call53 = call i32 (ptr, ...) @printf(ptr @.str.6, i32 %44) #3, !dbg !362) | |
MaybeHandleVariable (@.str.6 = private unnamed_addr constant [30 x i8] c"objc_opt->selopt_offset = %d\0A\00", align 1, !dbg !128) | |
MaybeHandleVariable ( %44 = load i32, ptr %selopt_offset52, align 4, !dbg !362) | |
MaybeHandleCallArguments( %call57 = call i32 (ptr, ...) @printf(ptr @.str.9, i32 %47) #3, !dbg !365) | |
MaybeHandleVariable (@.str.9 = private unnamed_addr constant [33 x i8] c"objc_opt->headeropt_offset = %d\0A\00", align 1, !dbg !143) | |
MaybeHandleVariable ( %47 = load i32, ptr %headeropt_offset, align 4, !dbg !365) | |
MaybeHandleCallArguments( %call61 = call i32 (ptr, ...) @printf(ptr @.str.10, i32 %50) #3, !dbg !368) | |
MaybeHandleVariable (@.str.10 = private unnamed_addr constant [30 x i8] c"objc_opt->clsopt_offset = %d\0A\00", align 1, !dbg !148) | |
MaybeHandleVariable ( %50 = load i32, ptr %clsopt_offset, align 4, !dbg !368) | |
MaybeHandleCallArguments( %call67 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %53) #3, !dbg !372) | |
MaybeHandleVariable (@.str.4 = private unnamed_addr constant [24 x i8] c"objc_opt->version = %u\0A\00", align 1, !dbg !121) | |
MaybeHandleVariable ( %53 = load i32, ptr %version66, align 4, !dbg !372) | |
MaybeHandleCallArguments( %call72 = call i32 (ptr, ...) @printf(ptr @.str.6, i32 %56) #3, !dbg !376) | |
MaybeHandleVariable (@.str.6 = private unnamed_addr constant [30 x i8] c"objc_opt->selopt_offset = %d\0A\00", align 1, !dbg !128) | |
MaybeHandleVariable ( %56 = load i32, ptr %selopt_offset71, align 4, !dbg !376) | |
MaybeHandleCallArguments( %call77 = call i32 (ptr, ...) @printf(ptr @.str.9, i32 %59) #3, !dbg !379) | |
MaybeHandleVariable (@.str.9 = private unnamed_addr constant [33 x i8] c"objc_opt->headeropt_offset = %d\0A\00", align 1, !dbg !143) | |
MaybeHandleVariable ( %59 = load i32, ptr %headeropt_offset76, align 4, !dbg !379) | |
MaybeHandleCallArguments( %call82 = call i32 (ptr, ...) @printf(ptr @.str.10, i32 %62) #3, !dbg !382) | |
MaybeHandleVariable (@.str.10 = private unnamed_addr constant [30 x i8] c"objc_opt->clsopt_offset = %d\0A\00", align 1, !dbg !148) | |
MaybeHandleVariable ( %62 = load i32, ptr %clsopt_offset81, align 4, !dbg !382) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %clsopt, metadata !388, metadata !DIExpression()), !dbg !390) | |
MaybeHandleVariable (ptr %clsopt) | |
MaybeHandleVariable (!388 = !DILocalVariable(name: "clsopt", scope: !389, file: !6, line: 182, type: !41)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %max_class_infos, metadata !391, metadata !DIExpression()), !dbg !395) | |
MaybeHandleVariable (ptr %max_class_infos) | |
MaybeHandleVariable (!391 = !DILocalVariable(name: "max_class_infos", scope: !389, file: !6, line: 183, type: !392)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call93 = call i32 (ptr, ...) @printf(ptr @.str.11, i64 %70) #3, !dbg !396) | |
MaybeHandleVariable (@.str.11 = private unnamed_addr constant [24 x i8] c"max_class_infos = %llu\0A\00", align 1, !dbg !150) | |
MaybeHandleVariable ( %70 = load i64, ptr %max_class_infos, align 8, !dbg !396) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %class_infos, metadata !399, metadata !DIExpression()), !dbg !400) | |
MaybeHandleVariable (ptr %class_infos) | |
MaybeHandleVariable (!399 = !DILocalVariable(name: "class_infos", scope: !389, file: !6, line: 187, type: !63)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %checkbytes, metadata !401, metadata !DIExpression()), !dbg !404) | |
MaybeHandleVariable (ptr %checkbytes) | |
MaybeHandleVariable (!401 = !DILocalVariable(name: "checkbytes", scope: !389, file: !6, line: 189, type: !402)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %offsets, metadata !405, metadata !DIExpression()), !dbg !406) | |
MaybeHandleVariable (ptr %offsets) | |
MaybeHandleVariable (!405 = !DILocalVariable(name: "offsets", scope: !389, file: !6, line: 190, type: !72)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %classOffsets, metadata !407, metadata !DIExpression()), !dbg !408) | |
MaybeHandleVariable (ptr %classOffsets) | |
MaybeHandleVariable (!407 = !DILocalVariable(name: "classOffsets", scope: !389, file: !6, line: 191, type: !74)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call103 = call i32 (ptr, ...) @printf(ptr @.str.12, i32 %83) #3, !dbg !409) | |
MaybeHandleVariable (@.str.12 = private unnamed_addr constant [23 x i8] c"clsopt->capacity = %u\0A\00", align 1, !dbg !152) | |
MaybeHandleVariable ( %83 = load i32, ptr %capacity102, align 4, !dbg !409) | |
MaybeHandleCallArguments( %call108 = call i32 (ptr, ...) @printf(ptr @.str.13, i32 %86) #3, !dbg !412) | |
MaybeHandleVariable (@.str.13 = private unnamed_addr constant [24 x i8] c"clsopt->mask = 0x%8.8x\0A\00", align 1, !dbg !157) | |
MaybeHandleVariable ( %86 = load i32, ptr %mask107, align 8, !dbg !412) | |
MaybeHandleCallArguments( %call112 = call i32 (ptr, ...) @printf(ptr @.str.14, ptr %88) #3, !dbg !415) | |
MaybeHandleVariable (@.str.14 = private unnamed_addr constant [19 x i8] c"classOffsets = %p\0A\00", align 1, !dbg !159) | |
MaybeHandleVariable ( %88 = load ptr, ptr %classOffsets, align 8, !dbg !415) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %i, metadata !418, metadata !DIExpression()), !dbg !420) | |
MaybeHandleVariable (ptr %i) | |
MaybeHandleVariable (!418 = !DILocalVariable(name: "i", scope: !419, file: !6, line: 197, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %objectCacheOffset, metadata !423, metadata !DIExpression()), !dbg !426) | |
MaybeHandleVariable (ptr %objectCacheOffset) | |
MaybeHandleVariable (!423 = !DILocalVariable(name: "objectCacheOffset", scope: !424, file: !6, line: 199, type: !425)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call120 = call i32 (ptr, ...) @printf(ptr @.str.15, i32 %95, i64 %96) #3, !dbg !427) | |
MaybeHandleVariable (@.str.15 = private unnamed_addr constant [28 x i8] c"objectCacheOffset[%u] = %u\0A\00", align 1, !dbg !164) | |
MaybeHandleVariable ( %95 = load i32, ptr %i, align 4, !dbg !427) | |
MaybeHandleVariable ( %96 = load i64, ptr %objectCacheOffset, align 8, !dbg !427) | |
MaybeHandleCallArguments( %call130 = call i32 (ptr, ...) @printf(ptr @.str.16) #3, !dbg !433) | |
MaybeHandleVariable (@.str.16 = private unnamed_addr constant [20 x i8] c"isDuplicate = true\0A\00", align 1, !dbg !166) | |
MaybeHandleCallArguments( %call137 = call i32 (ptr, ...) @printf(ptr @.str.17) #3, !dbg !441) | |
MaybeHandleVariable (@.str.17 = private unnamed_addr constant [41 x i8] c"objectCacheOffset == invalidEntryOffset\0A\00", align 1, !dbg !171) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %name, metadata !451, metadata !DIExpression()), !dbg !452) | |
MaybeHandleVariable (ptr %name) | |
MaybeHandleVariable (!451 = !DILocalVariable(name: "name", scope: !450, file: !6, line: 217, type: !214)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call150 = call ptr %109(ptr %112) #3, !dbg !452) | |
MaybeHandleVariable ( %112 = load ptr, ptr %isa149, align 1, !dbg !452) | |
MaybeHandleCallArguments( %call156 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %114, ptr %117, ptr %118) #3, !dbg !453) | |
MaybeHandleVariable (@.str.18 = private unnamed_addr constant [19 x i8] c"[%u] isa = %8p %s\0A\00", align 1, !dbg !176) | |
MaybeHandleVariable ( %114 = load i32, ptr %idx, align 4, !dbg !453) | |
MaybeHandleVariable ( %117 = load ptr, ptr %isa155, align 1, !dbg !453) | |
MaybeHandleVariable ( %118 = load ptr, ptr %name, align 8, !dbg !453) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %s, metadata !456, metadata !DIExpression()), !dbg !457) | |
MaybeHandleVariable (ptr %s) | |
MaybeHandleVariable (!456 = !DILocalVariable(name: "s", scope: !450, file: !6, line: 221, type: !214)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %h, metadata !458, metadata !DIExpression()), !dbg !459) | |
MaybeHandleVariable (ptr %h) | |
MaybeHandleVariable (!458 = !DILocalVariable(name: "h", scope: !450, file: !6, line: 222, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %c, metadata !460, metadata !DIExpression()), !dbg !462) | |
MaybeHandleVariable (ptr %c) | |
MaybeHandleVariable (!460 = !DILocalVariable(name: "c", scope: !461, file: !6, line: 223, type: !59)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call173 = call i32 (ptr, ...) @printf(ptr @.str.19) #3, !dbg !479) | |
MaybeHandleVariable (@.str.19 = private unnamed_addr constant [43 x i8] c"not(class_infos && idx < max_class_infos)\0A\00", align 1, !dbg !178) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %duplicate_count_ptr, metadata !487, metadata !DIExpression()), !dbg !490) | |
MaybeHandleVariable (ptr %duplicate_count_ptr) | |
MaybeHandleVariable (!487 = !DILocalVariable(name: "duplicate_count_ptr", scope: !389, file: !6, line: 245, type: !488)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %duplicate_count, metadata !491, metadata !DIExpression()), !dbg !492) | |
MaybeHandleVariable (ptr %duplicate_count) | |
MaybeHandleVariable (!491 = !DILocalVariable(name: "duplicate_count", scope: !389, file: !6, line: 246, type: !489)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %duplicateClassOffsets, metadata !493, metadata !DIExpression()), !dbg !494) | |
MaybeHandleVariable (ptr %duplicateClassOffsets) | |
MaybeHandleVariable (!493 = !DILocalVariable(name: "duplicateClassOffsets", scope: !389, file: !6, line: 247, type: !74)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call185 = call i32 (ptr, ...) @printf(ptr @.str.20, i32 %142) #3, !dbg !495) | |
MaybeHandleVariable (@.str.20 = private unnamed_addr constant [22 x i8] c"duplicate_count = %u\0A\00", align 1, !dbg !183) | |
MaybeHandleVariable ( %142 = load i32, ptr %duplicate_count, align 4, !dbg !495) | |
MaybeHandleCallArguments( %call189 = call i32 (ptr, ...) @printf(ptr @.str.21, ptr %144) #3, !dbg !498) | |
MaybeHandleVariable (@.str.21 = private unnamed_addr constant [28 x i8] c"duplicateClassOffsets = %p\0A\00", align 1, !dbg !185) | |
MaybeHandleVariable ( %144 = load ptr, ptr %duplicateClassOffsets, align 8, !dbg !498) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %i191, metadata !501, metadata !DIExpression()), !dbg !503) | |
MaybeHandleVariable (ptr %i191) | |
MaybeHandleVariable (!501 = !DILocalVariable(name: "i", scope: !502, file: !6, line: 252, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %objectCacheOffset195, metadata !506, metadata !DIExpression()), !dbg !508) | |
MaybeHandleVariable (ptr %objectCacheOffset195) | |
MaybeHandleVariable (!506 = !DILocalVariable(name: "objectCacheOffset", scope: !507, file: !6, line: 254, type: !425)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call203 = call i32 (ptr, ...) @printf(ptr @.str.15, i32 %150, i64 %151) #3, !dbg !509) | |
MaybeHandleVariable (@.str.15 = private unnamed_addr constant [28 x i8] c"objectCacheOffset[%u] = %u\0A\00", align 1, !dbg !164) | |
MaybeHandleVariable ( %150 = load i32, ptr %i191, align 4, !dbg !509) | |
MaybeHandleVariable ( %151 = load i64, ptr %objectCacheOffset195, align 8, !dbg !509) | |
MaybeHandleCallArguments( %call213 = call i32 (ptr, ...) @printf(ptr @.str.16) #3, !dbg !515) | |
MaybeHandleVariable (@.str.16 = private unnamed_addr constant [20 x i8] c"isDuplicate = true\0A\00", align 1, !dbg !166) | |
MaybeHandleCallArguments( %call220 = call i32 (ptr, ...) @printf(ptr @.str.17) #3, !dbg !523) | |
MaybeHandleVariable (@.str.17 = private unnamed_addr constant [41 x i8] c"objectCacheOffset == invalidEntryOffset\0A\00", align 1, !dbg !171) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %name232, metadata !533, metadata !DIExpression()), !dbg !534) | |
MaybeHandleVariable (ptr %name232) | |
MaybeHandleVariable (!533 = !DILocalVariable(name: "name", scope: !532, file: !6, line: 272, type: !214)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call236 = call ptr %164(ptr %167) #3, !dbg !534) | |
MaybeHandleVariable ( %167 = load ptr, ptr %isa235, align 1, !dbg !534) | |
MaybeHandleCallArguments( %call242 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %169, ptr %172, ptr %173) #3, !dbg !535) | |
MaybeHandleVariable (@.str.18 = private unnamed_addr constant [19 x i8] c"[%u] isa = %8p %s\0A\00", align 1, !dbg !176) | |
MaybeHandleVariable ( %169 = load i32, ptr %idx, align 4, !dbg !535) | |
MaybeHandleVariable ( %172 = load ptr, ptr %isa241, align 1, !dbg !535) | |
MaybeHandleVariable ( %173 = load ptr, ptr %name232, align 8, !dbg !535) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %s244, metadata !538, metadata !DIExpression()), !dbg !539) | |
MaybeHandleVariable (ptr %s244) | |
MaybeHandleVariable (!538 = !DILocalVariable(name: "s", scope: !532, file: !6, line: 276, type: !214)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %h245, metadata !540, metadata !DIExpression()), !dbg !541) | |
MaybeHandleVariable (ptr %h245) | |
MaybeHandleVariable (!540 = !DILocalVariable(name: "h", scope: !532, file: !6, line: 277, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %c246, metadata !542, metadata !DIExpression()), !dbg !544) | |
MaybeHandleVariable (ptr %c246) | |
MaybeHandleVariable (!542 = !DILocalVariable(name: "c", scope: !543, file: !6, line: 278, type: !59)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %clsopt275, metadata !567, metadata !DIExpression()), !dbg !569) | |
MaybeHandleVariable (ptr %clsopt275) | |
MaybeHandleVariable (!567 = !DILocalVariable(name: "clsopt", scope: !568, file: !6, line: 297, type: !82)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %max_class_infos287, metadata !575, metadata !DIExpression()), !dbg !576) | |
MaybeHandleVariable (ptr %max_class_infos287) | |
MaybeHandleVariable (!575 = !DILocalVariable(name: "max_class_infos", scope: !568, file: !6, line: 302, type: !392)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call292 = call i32 (ptr, ...) @printf(ptr @.str.11, i64 %202) #3, !dbg !577) | |
MaybeHandleVariable (@.str.11 = private unnamed_addr constant [24 x i8] c"max_class_infos = %llu\0A\00", align 1, !dbg !150) | |
MaybeHandleVariable ( %202 = load i64, ptr %max_class_infos287, align 8, !dbg !577) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %class_infos294, metadata !580, metadata !DIExpression()), !dbg !581) | |
MaybeHandleVariable (ptr %class_infos294) | |
MaybeHandleVariable (!580 = !DILocalVariable(name: "class_infos", scope: !568, file: !6, line: 304, type: !63)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %invalidEntryOffset, metadata !582, metadata !DIExpression()), !dbg !583) | |
MaybeHandleVariable (ptr %invalidEntryOffset) | |
MaybeHandleVariable (!582 = !DILocalVariable(name: "invalidEntryOffset", scope: !568, file: !6, line: 305, type: !15)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %checkbytes299, metadata !588, metadata !DIExpression()), !dbg !589) | |
MaybeHandleVariable (ptr %checkbytes299) | |
MaybeHandleVariable (!588 = !DILocalVariable(name: "checkbytes", scope: !568, file: !6, line: 309, type: !402)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %offsets305, metadata !590, metadata !DIExpression()), !dbg !591) | |
MaybeHandleVariable (ptr %offsets305) | |
MaybeHandleVariable (!590 = !DILocalVariable(name: "offsets", scope: !568, file: !6, line: 310, type: !72)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %classOffsets309, metadata !592, metadata !DIExpression()), !dbg !593) | |
MaybeHandleVariable (ptr %classOffsets309) | |
MaybeHandleVariable (!592 = !DILocalVariable(name: "classOffsets", scope: !568, file: !6, line: 311, type: !95)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call316 = call i32 (ptr, ...) @printf(ptr @.str.12, i32 %217) #3, !dbg !594) | |
MaybeHandleVariable (@.str.12 = private unnamed_addr constant [23 x i8] c"clsopt->capacity = %u\0A\00", align 1, !dbg !152) | |
MaybeHandleVariable ( %217 = load i32, ptr %capacity315, align 8, !dbg !594) | |
MaybeHandleCallArguments( %call321 = call i32 (ptr, ...) @printf(ptr @.str.13, i32 %220) #3, !dbg !597) | |
MaybeHandleVariable (@.str.13 = private unnamed_addr constant [24 x i8] c"clsopt->mask = 0x%8.8x\0A\00", align 1, !dbg !157) | |
MaybeHandleVariable ( %220 = load i32, ptr %mask320, align 4, !dbg !597) | |
MaybeHandleCallArguments( %call325 = call i32 (ptr, ...) @printf(ptr @.str.14, ptr %222) #3, !dbg !600) | |
MaybeHandleVariable (@.str.14 = private unnamed_addr constant [19 x i8] c"classOffsets = %p\0A\00", align 1, !dbg !159) | |
MaybeHandleVariable ( %222 = load ptr, ptr %classOffsets309, align 8, !dbg !600) | |
MaybeHandleCallArguments( %call329 = call i32 (ptr, ...) @printf(ptr @.str.22, i32 %224) #3, !dbg !603) | |
MaybeHandleVariable (@.str.22 = private unnamed_addr constant [25 x i8] c"invalidEntryOffset = %d\0A\00", align 1, !dbg !187) | |
MaybeHandleVariable ( %224 = load i32, ptr %invalidEntryOffset, align 4, !dbg !603) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %i331, metadata !606, metadata !DIExpression()), !dbg !608) | |
MaybeHandleVariable (ptr %i331) | |
MaybeHandleVariable (!606 = !DILocalVariable(name: "i", scope: !607, file: !6, line: 316, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %clsOffset, metadata !611, metadata !DIExpression()), !dbg !613) | |
MaybeHandleVariable (ptr %clsOffset) | |
MaybeHandleVariable (!611 = !DILocalVariable(name: "clsOffset", scope: !612, file: !6, line: 318, type: !73)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call341 = call i32 (ptr, ...) @printf(ptr @.str.23, i32 %232, i32 %233) #3, !dbg !614) | |
MaybeHandleVariable (@.str.23 = private unnamed_addr constant [20 x i8] c"clsOffset[%u] = %u\0A\00", align 1, !dbg !192) | |
MaybeHandleVariable ( %232 = load i32, ptr %i331, align 4, !dbg !614) | |
MaybeHandleVariable ( %233 = load i32, ptr %clsOffset, align 4, !dbg !614) | |
MaybeHandleCallArguments( %call347 = call i32 (ptr, ...) @printf(ptr @.str.24) #3, !dbg !620) | |
MaybeHandleVariable (@.str.24 = private unnamed_addr constant [15 x i8] c"clsOffset & 1\0A\00", align 1, !dbg !194) | |
MaybeHandleCallArguments( %call354 = call i32 (ptr, ...) @printf(ptr @.str.25) #3, !dbg !628) | |
MaybeHandleVariable (@.str.25 = private unnamed_addr constant [33 x i8] c"clsOffset == invalidEntryOffset\0A\00", align 1, !dbg !199) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %name368, metadata !638, metadata !DIExpression()), !dbg !639) | |
MaybeHandleVariable (ptr %name368) | |
MaybeHandleVariable (!638 = !DILocalVariable(name: "name", scope: !637, file: !6, line: 334, type: !214)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call372 = call ptr %246(ptr %249) #3, !dbg !639) | |
MaybeHandleVariable ( %249 = load ptr, ptr %isa371, align 1, !dbg !639) | |
MaybeHandleCallArguments( %call378 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %251, ptr %254, ptr %255) #3, !dbg !640) | |
MaybeHandleVariable (@.str.18 = private unnamed_addr constant [19 x i8] c"[%u] isa = %8p %s\0A\00", align 1, !dbg !176) | |
MaybeHandleVariable ( %251 = load i32, ptr %idx, align 4, !dbg !640) | |
MaybeHandleVariable ( %254 = load ptr, ptr %isa377, align 1, !dbg !640) | |
MaybeHandleVariable ( %255 = load ptr, ptr %name368, align 8, !dbg !640) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %s380, metadata !643, metadata !DIExpression()), !dbg !644) | |
MaybeHandleVariable (ptr %s380) | |
MaybeHandleVariable (!643 = !DILocalVariable(name: "s", scope: !637, file: !6, line: 337, type: !214)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %h381, metadata !645, metadata !DIExpression()), !dbg !646) | |
MaybeHandleVariable (ptr %h381) | |
MaybeHandleVariable (!645 = !DILocalVariable(name: "h", scope: !637, file: !6, line: 338, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %c382, metadata !647, metadata !DIExpression()), !dbg !649) | |
MaybeHandleVariable (ptr %c382) | |
MaybeHandleVariable (!647 = !DILocalVariable(name: "c", scope: !648, file: !6, line: 339, type: !59)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call403 = call i32 (ptr, ...) @printf(ptr @.str.19) #3, !dbg !665) | |
MaybeHandleVariable (@.str.19 = private unnamed_addr constant [43 x i8] c"not(class_infos && idx < max_class_infos)\0A\00", align 1, !dbg !178) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %duplicate_count_ptr410, metadata !673, metadata !DIExpression()), !dbg !674) | |
MaybeHandleVariable (ptr %duplicate_count_ptr410) | |
MaybeHandleVariable (!673 = !DILocalVariable(name: "duplicate_count_ptr", scope: !568, file: !6, line: 361, type: !488)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %duplicate_count414, metadata !675, metadata !DIExpression()), !dbg !676) | |
MaybeHandleVariable (ptr %duplicate_count414) | |
MaybeHandleVariable (!675 = !DILocalVariable(name: "duplicate_count", scope: !568, file: !6, line: 362, type: !489)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %duplicateClassOffsets415, metadata !677, metadata !DIExpression()), !dbg !678) | |
MaybeHandleVariable (ptr %duplicateClassOffsets415) | |
MaybeHandleVariable (!677 = !DILocalVariable(name: "duplicateClassOffsets", scope: !568, file: !6, line: 363, type: !95)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call419 = call i32 (ptr, ...) @printf(ptr @.str.20, i32 %279) #3, !dbg !679) | |
MaybeHandleVariable (@.str.20 = private unnamed_addr constant [22 x i8] c"duplicate_count = %u\0A\00", align 1, !dbg !183) | |
MaybeHandleVariable ( %279 = load i32, ptr %duplicate_count414, align 4, !dbg !679) | |
MaybeHandleCallArguments( %call423 = call i32 (ptr, ...) @printf(ptr @.str.21, ptr %281) #3, !dbg !682) | |
MaybeHandleVariable (@.str.21 = private unnamed_addr constant [28 x i8] c"duplicateClassOffsets = %p\0A\00", align 1, !dbg !185) | |
MaybeHandleVariable ( %281 = load ptr, ptr %duplicateClassOffsets415, align 8, !dbg !682) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %i425, metadata !685, metadata !DIExpression()), !dbg !687) | |
MaybeHandleVariable (ptr %i425) | |
MaybeHandleVariable (!685 = !DILocalVariable(name: "i", scope: !686, file: !6, line: 366, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %clsOffset429, metadata !690, metadata !DIExpression()), !dbg !692) | |
MaybeHandleVariable (ptr %clsOffset429) | |
MaybeHandleVariable (!690 = !DILocalVariable(name: "clsOffset", scope: !691, file: !6, line: 368, type: !73)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %name451, metadata !706, metadata !DIExpression()), !dbg !707) | |
MaybeHandleVariable (ptr %name451) | |
MaybeHandleVariable (!706 = !DILocalVariable(name: "name", scope: !705, file: !6, line: 377, type: !214)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call455 = call ptr %297(ptr %300) #3, !dbg !707) | |
MaybeHandleVariable ( %300 = load ptr, ptr %isa454, align 1, !dbg !707) | |
MaybeHandleCallArguments( %call461 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %302, ptr %305, ptr %306) #3, !dbg !708) | |
MaybeHandleVariable (@.str.18 = private unnamed_addr constant [19 x i8] c"[%u] isa = %8p %s\0A\00", align 1, !dbg !176) | |
MaybeHandleVariable ( %302 = load i32, ptr %idx, align 4, !dbg !708) | |
MaybeHandleVariable ( %305 = load ptr, ptr %isa460, align 1, !dbg !708) | |
MaybeHandleVariable ( %306 = load ptr, ptr %name451, align 8, !dbg !708) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %s463, metadata !711, metadata !DIExpression()), !dbg !712) | |
MaybeHandleVariable (ptr %s463) | |
MaybeHandleVariable (!711 = !DILocalVariable(name: "s", scope: !705, file: !6, line: 380, type: !214)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %h464, metadata !713, metadata !DIExpression()), !dbg !714) | |
MaybeHandleVariable (ptr %h464) | |
MaybeHandleVariable (!713 = !DILocalVariable(name: "h", scope: !705, file: !6, line: 381, type: !12)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %c465, metadata !715, metadata !DIExpression()), !dbg !717) | |
MaybeHandleVariable (ptr %c465) | |
MaybeHandleVariable (!715 = !DILocalVariable(name: "c", scope: !716, file: !6, line: 382, type: !59)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call492 = call i32 (ptr, ...) @printf(ptr @.str.26, i32 %323) #3, !dbg !738) | |
MaybeHandleVariable (@.str.26 = private unnamed_addr constant [16 x i8] c"%u class_infos\0A\00", align 1, !dbg !201) | |
MaybeHandleVariable ( %323 = load i32, ptr %idx, align 4, !dbg !738) | |
MaybeHandleCallArguments( %call496 = call i32 (ptr, ...) @printf(ptr @.str.27) #3, !dbg !741) | |
MaybeHandleVariable (@.str.27 = private unnamed_addr constant [6 x i8] c"done\0A\00", align 1, !dbg !206) | |
Examining class_name_lookup_func, DeclForGlobalValue returns 0x0000000134D50C70 | |
MaybeHandleVariable (@class_name_lookup_func = global ptr @objc_debug_class_getNameRaw, align 8, !dbg !0) | |
Type of "class_name_lookup_func" is [clang "const char *(*)(void *)", llvm "ptr"] [size 8, align 8] | |
Examining .str, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.1, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.2, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.3, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.4, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.5, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.6, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.7, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.8, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.9, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.10, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.11, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.12, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.13, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.14, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.15, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.16, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.17, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.18, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.19, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.20, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.21, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.22, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.23, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.24, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.25, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.26, DeclForGlobalValue returns 0x0000000000000000 | |
Examining .str.27, DeclForGlobalValue returns 0x0000000000000000 | |
Examining reloc_placeholder, DeclForGlobalValue returns 0x0000000000000000 | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.objc_opt_t = type { i32, i32, i32, i32 } | |
%struct.objc_opt_v16_t = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i64 } | |
%struct.objc_opt_v14_t = type { i32, i32, i32, i32, i32 } | |
%struct.objc_clsopt_v16_t = type { i32, i32, i32, i32, i32, i32, i64, [256 x i32], [0 x i8] } | |
%struct.objc_classheader_v16_t = type { i64 } | |
%struct.ClassInfo = type <{ ptr, i32 }> | |
%struct.objc_clsopt_t = type { i32, i32, i32, i32, i32, i32, i64, [256 x i32], [0 x i8] } | |
%struct.objc_classheader_t = type { i32, i32 } | |
@class_name_lookup_func = global ptr @objc_debug_class_getNameRaw, align 8, !dbg !0 | |
@.str = private unnamed_addr constant [22 x i8] c"objc_opt_ro_ptr = %p\0A\00", align 1, !dbg !102 | |
@.str.1 = private unnamed_addr constant [28 x i8] c"shared_cache_base_ptr = %p\0A\00", align 1, !dbg !109 | |
@.str.2 = private unnamed_addr constant [22 x i8] c"class_infos_ptr = %p\0A\00", align 1, !dbg !114 | |
@.str.3 = private unnamed_addr constant [47 x i8] c"class_infos_byte_size = %u (%llu class infos)\0A\00", align 1, !dbg !116 | |
@.str.4 = private unnamed_addr constant [24 x i8] c"objc_opt->version = %u\0A\00", align 1, !dbg !121 | |
@.str.5 = private unnamed_addr constant [22 x i8] c"objc_opt->flags = %u\0A\00", align 1, !dbg !126 | |
@.str.6 = private unnamed_addr constant [30 x i8] c"objc_opt->selopt_offset = %d\0A\00", align 1, !dbg !128 | |
@.str.7 = private unnamed_addr constant [36 x i8] c"objc_opt->headeropt_ro_offset = %d\0A\00", align 1, !dbg !133 | |
@.str.8 = private unnamed_addr constant [61 x i8] c"objc_opt->relativeMethodSelectorBaseAddressCacheOffset = %d\0A\00", align 1, !dbg !138 | |
@.str.9 = private unnamed_addr constant [33 x i8] c"objc_opt->headeropt_offset = %d\0A\00", align 1, !dbg !143 | |
@.str.10 = private unnamed_addr constant [30 x i8] c"objc_opt->clsopt_offset = %d\0A\00", align 1, !dbg !148 | |
@.str.11 = private unnamed_addr constant [24 x i8] c"max_class_infos = %llu\0A\00", align 1, !dbg !150 | |
@.str.12 = private unnamed_addr constant [23 x i8] c"clsopt->capacity = %u\0A\00", align 1, !dbg !152 | |
@.str.13 = private unnamed_addr constant [24 x i8] c"clsopt->mask = 0x%8.8x\0A\00", align 1, !dbg !157 | |
@.str.14 = private unnamed_addr constant [19 x i8] c"classOffsets = %p\0A\00", align 1, !dbg !159 | |
@.str.15 = private unnamed_addr constant [28 x i8] c"objectCacheOffset[%u] = %u\0A\00", align 1, !dbg !164 | |
@.str.16 = private unnamed_addr constant [20 x i8] c"isDuplicate = true\0A\00", align 1, !dbg !166 | |
@.str.17 = private unnamed_addr constant [41 x i8] c"objectCacheOffset == invalidEntryOffset\0A\00", align 1, !dbg !171 | |
@.str.18 = private unnamed_addr constant [19 x i8] c"[%u] isa = %8p %s\0A\00", align 1, !dbg !176 | |
@.str.19 = private unnamed_addr constant [43 x i8] c"not(class_infos && idx < max_class_infos)\0A\00", align 1, !dbg !178 | |
@.str.20 = private unnamed_addr constant [22 x i8] c"duplicate_count = %u\0A\00", align 1, !dbg !183 | |
@.str.21 = private unnamed_addr constant [28 x i8] c"duplicateClassOffsets = %p\0A\00", align 1, !dbg !185 | |
@.str.22 = private unnamed_addr constant [25 x i8] c"invalidEntryOffset = %d\0A\00", align 1, !dbg !187 | |
@.str.23 = private unnamed_addr constant [20 x i8] c"clsOffset[%u] = %u\0A\00", align 1, !dbg !192 | |
@.str.24 = private unnamed_addr constant [15 x i8] c"clsOffset & 1\0A\00", align 1, !dbg !194 | |
@.str.25 = private unnamed_addr constant [33 x i8] c"clsOffset == invalidEntryOffset\0A\00", align 1, !dbg !199 | |
@.str.26 = private unnamed_addr constant [16 x i8] c"%u class_infos\0A\00", align 1, !dbg !201 | |
@.str.27 = private unnamed_addr constant [6 x i8] c"done\0A\00", align 1, !dbg !206 | |
@reloc_placeholder = internal global i8 0 | |
; Function Attrs: convergent | |
declare ptr @objc_debug_class_getNameRaw(ptr) #0 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define i32 @_Z48__lldb_apple_objc_v2_get_shared_cache_class_infoPvS_S_Pyjj(ptr %objc_opt_ro_ptr, ptr %shared_cache_base_ptr, ptr %class_infos_ptr, ptr %relative_selector_offset, i32 %class_infos_byte_size, i32 %should_log) #1 !dbg !230 { | |
entry: | |
%objc_opt_ro_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !235 | |
%shared_cache_base_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !236 | |
%class_infos_ptr.addr = alloca ptr, align 8, !clang.decl.ptr !237 | |
%relative_selector_offset.addr = alloca ptr, align 8, !clang.decl.ptr !238 | |
%class_infos_byte_size.addr = alloca i32, align 4, !clang.decl.ptr !239 | |
%should_log.addr = alloca i32, align 4, !clang.decl.ptr !240 | |
%idx = alloca i32, align 4, !clang.decl.ptr !241 | |
%objc_opt = alloca ptr, align 8, !clang.decl.ptr !242 | |
%objc_opt_v14 = alloca ptr, align 8, !clang.decl.ptr !243 | |
%objc_opt_v16 = alloca ptr, align 8, !clang.decl.ptr !244 | |
%clsopt = alloca ptr, align 8, !clang.decl.ptr !245 | |
%max_class_infos = alloca i64, align 8, !clang.decl.ptr !246 | |
%class_infos = alloca ptr, align 8, !clang.decl.ptr !247 | |
%checkbytes = alloca ptr, align 8, !clang.decl.ptr !248 | |
%offsets = alloca ptr, align 8, !clang.decl.ptr !249 | |
%classOffsets = alloca ptr, align 8, !clang.decl.ptr !250 | |
%i = alloca i32, align 4, !clang.decl.ptr !251 | |
%objectCacheOffset = alloca i64, align 8, !clang.decl.ptr !252 | |
%name = alloca ptr, align 8, !clang.decl.ptr !253 | |
%s = alloca ptr, align 8, !clang.decl.ptr !254 | |
%h = alloca i32, align 4, !clang.decl.ptr !255 | |
%c = alloca i8, align 1, !clang.decl.ptr !256 | |
%duplicate_count_ptr = alloca ptr, align 8, !clang.decl.ptr !257 | |
%duplicate_count = alloca i32, align 4, !clang.decl.ptr !258 | |
%duplicateClassOffsets = alloca ptr, align 8, !clang.decl.ptr !259 | |
%i191 = alloca i32, align 4, !clang.decl.ptr !260 | |
%objectCacheOffset195 = alloca i64, align 8, !clang.decl.ptr !261 | |
%name232 = alloca ptr, align 8, !clang.decl.ptr !262 | |
%s244 = alloca ptr, align 8, !clang.decl.ptr !263 | |
%h245 = alloca i32, align 4, !clang.decl.ptr !264 | |
%c246 = alloca i8, align 1, !clang.decl.ptr !265 | |
%clsopt275 = alloca ptr, align 8, !clang.decl.ptr !266 | |
%max_class_infos287 = alloca i64, align 8, !clang.decl.ptr !267 | |
%class_infos294 = alloca ptr, align 8, !clang.decl.ptr !268 | |
%invalidEntryOffset = alloca i32, align 4, !clang.decl.ptr !269 | |
%checkbytes299 = alloca ptr, align 8, !clang.decl.ptr !270 | |
%offsets305 = alloca ptr, align 8, !clang.decl.ptr !271 | |
%classOffsets309 = alloca ptr, align 8, !clang.decl.ptr !272 | |
%i331 = alloca i32, align 4, !clang.decl.ptr !273 | |
%clsOffset = alloca i32, align 4, !clang.decl.ptr !274 | |
%name368 = alloca ptr, align 8, !clang.decl.ptr !275 | |
%s380 = alloca ptr, align 8, !clang.decl.ptr !276 | |
%h381 = alloca i32, align 4, !clang.decl.ptr !277 | |
%c382 = alloca i8, align 1, !clang.decl.ptr !278 | |
%duplicate_count_ptr410 = alloca ptr, align 8, !clang.decl.ptr !279 | |
%duplicate_count414 = alloca i32, align 4, !clang.decl.ptr !280 | |
%duplicateClassOffsets415 = alloca ptr, align 8, !clang.decl.ptr !281 | |
%i425 = alloca i32, align 4, !clang.decl.ptr !282 | |
%clsOffset429 = alloca i32, align 4, !clang.decl.ptr !283 | |
%name451 = alloca ptr, align 8, !clang.decl.ptr !284 | |
%s463 = alloca ptr, align 8, !clang.decl.ptr !285 | |
%h464 = alloca i32, align 4, !clang.decl.ptr !286 | |
%c465 = alloca i8, align 1, !clang.decl.ptr !287 | |
store ptr %objc_opt_ro_ptr, ptr %objc_opt_ro_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %objc_opt_ro_ptr.addr, metadata !288, metadata !DIExpression()), !dbg !289 | |
store ptr %shared_cache_base_ptr, ptr %shared_cache_base_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %shared_cache_base_ptr.addr, metadata !290, metadata !DIExpression()), !dbg !291 | |
store ptr %class_infos_ptr, ptr %class_infos_ptr.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %class_infos_ptr.addr, metadata !292, metadata !DIExpression()), !dbg !293 | |
store ptr %relative_selector_offset, ptr %relative_selector_offset.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %relative_selector_offset.addr, metadata !294, metadata !DIExpression()), !dbg !295 | |
store i32 %class_infos_byte_size, ptr %class_infos_byte_size.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %class_infos_byte_size.addr, metadata !296, metadata !DIExpression()), !dbg !297 | |
store i32 %should_log, ptr %should_log.addr, align 4 | |
call void @llvm.dbg.declare(metadata ptr %should_log.addr, metadata !298, metadata !DIExpression()), !dbg !299 | |
%0 = load ptr, ptr %relative_selector_offset.addr, align 8, !dbg !300 | |
store i64 0, ptr %0, align 8, !dbg !300 | |
call void @llvm.dbg.declare(metadata ptr %idx, metadata !301, metadata !DIExpression()), !dbg !302 | |
store i32 0, ptr %idx, align 4, !dbg !302 | |
%1 = load i32, ptr %should_log.addr, align 4, !dbg !303 | |
%tobool = icmp ne i32 %1, 0, !dbg !303 | |
br i1 %tobool, label %if.then, label %if.end, !dbg !305 | |
if.then: ; preds = %entry | |
%2 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !303 | |
%call = call i32 (ptr, ...) @printf(ptr @.str, ptr %2) #3, !dbg !303 | |
br label %if.end, !dbg !303 | |
if.end: ; preds = %if.then, %entry | |
%3 = load i32, ptr %should_log.addr, align 4, !dbg !306 | |
%tobool1 = icmp ne i32 %3, 0, !dbg !306 | |
br i1 %tobool1, label %if.then2, label %if.end4, !dbg !308 | |
if.then2: ; preds = %if.end | |
%4 = load ptr, ptr %shared_cache_base_ptr.addr, align 8, !dbg !306 | |
%call3 = call i32 (ptr, ...) @printf(ptr @.str.1, ptr %4) #3, !dbg !306 | |
br label %if.end4, !dbg !306 | |
if.end4: ; preds = %if.then2, %if.end | |
%5 = load i32, ptr %should_log.addr, align 4, !dbg !309 | |
%tobool5 = icmp ne i32 %5, 0, !dbg !309 | |
br i1 %tobool5, label %if.then6, label %if.end8, !dbg !311 | |
if.then6: ; preds = %if.end4 | |
%6 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !309 | |
%call7 = call i32 (ptr, ...) @printf(ptr @.str.2, ptr %6) #3, !dbg !309 | |
br label %if.end8, !dbg !309 | |
if.end8: ; preds = %if.then6, %if.end4 | |
%7 = load i32, ptr %should_log.addr, align 4, !dbg !312 | |
%tobool9 = icmp ne i32 %7, 0, !dbg !312 | |
br i1 %tobool9, label %if.then10, label %if.end12, !dbg !314 | |
if.then10: ; preds = %if.end8 | |
%8 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !312 | |
%9 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !312 | |
%conv = zext i32 %9 to i64, !dbg !312 | |
%div = udiv i64 %conv, 12, !dbg !312 | |
%call11 = call i32 (ptr, ...) @printf(ptr @.str.3, i32 %8, i64 %div) #3, !dbg !312 | |
br label %if.end12, !dbg !312 | |
if.end12: ; preds = %if.then10, %if.end8 | |
%10 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !315 | |
%tobool13 = icmp ne ptr %10, null, !dbg !315 | |
br i1 %tobool13, label %if.then14, label %if.end498, !dbg !317 | |
if.then14: ; preds = %if.end12 | |
call void @llvm.dbg.declare(metadata ptr %objc_opt, metadata !318, metadata !DIExpression()), !dbg !322 | |
%11 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !322 | |
store ptr %11, ptr %objc_opt, align 8, !dbg !322 | |
call void @llvm.dbg.declare(metadata ptr %objc_opt_v14, metadata !323, metadata !DIExpression()), !dbg !326 | |
%12 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !326 | |
store ptr %12, ptr %objc_opt_v14, align 8, !dbg !326 | |
call void @llvm.dbg.declare(metadata ptr %objc_opt_v16, metadata !327, metadata !DIExpression()), !dbg !330 | |
%13 = load ptr, ptr %objc_opt_ro_ptr.addr, align 8, !dbg !330 | |
store ptr %13, ptr %objc_opt_v16, align 8, !dbg !330 | |
%14 = load ptr, ptr %objc_opt, align 8, !dbg !331 | |
%version = getelementptr inbounds %struct.objc_opt_t, ptr %14, i32 0, i32 0, !dbg !331 | |
%15 = load i32, ptr %version, align 4, !dbg !331 | |
%cmp = icmp uge i32 %15, 16, !dbg !331 | |
br i1 %cmp, label %if.then15, label %if.else, !dbg !333 | |
if.then15: ; preds = %if.then14 | |
%16 = load ptr, ptr %objc_opt_v16, align 8, !dbg !334 | |
%relativeMethodSelectorBaseAddressCacheOffset = getelementptr inbounds %struct.objc_opt_v16_t, ptr %16, i32 0, i32 10, !dbg !334 | |
%17 = load i64, ptr %relativeMethodSelectorBaseAddressCacheOffset, align 8, !dbg !334 | |
%18 = load ptr, ptr %relative_selector_offset.addr, align 8, !dbg !334 | |
store i64 %17, ptr %18, align 8, !dbg !334 | |
%19 = load i32, ptr %should_log.addr, align 4, !dbg !336 | |
%tobool16 = icmp ne i32 %19, 0, !dbg !336 | |
br i1 %tobool16, label %if.then17, label %if.end20, !dbg !338 | |
if.then17: ; preds = %if.then15 | |
%20 = load ptr, ptr %objc_opt_v16, align 8, !dbg !336 | |
%version18 = getelementptr inbounds %struct.objc_opt_v16_t, ptr %20, i32 0, i32 0, !dbg !336 | |
%21 = load i32, ptr %version18, align 8, !dbg !336 | |
%call19 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %21) #3, !dbg !336 | |
br label %if.end20, !dbg !336 | |
if.end20: ; preds = %if.then17, %if.then15 | |
%22 = load i32, ptr %should_log.addr, align 4, !dbg !339 | |
%tobool21 = icmp ne i32 %22, 0, !dbg !339 | |
br i1 %tobool21, label %if.then22, label %if.end24, !dbg !341 | |
if.then22: ; preds = %if.end20 | |
%23 = load ptr, ptr %objc_opt_v16, align 8, !dbg !339 | |
%flags = getelementptr inbounds %struct.objc_opt_v16_t, ptr %23, i32 0, i32 1, !dbg !339 | |
%24 = load i32, ptr %flags, align 4, !dbg !339 | |
%call23 = call i32 (ptr, ...) @printf(ptr @.str.5, i32 %24) #3, !dbg !339 | |
br label %if.end24, !dbg !339 | |
if.end24: ; preds = %if.then22, %if.end20 | |
%25 = load i32, ptr %should_log.addr, align 4, !dbg !342 | |
%tobool25 = icmp ne i32 %25, 0, !dbg !342 | |
br i1 %tobool25, label %if.then26, label %if.end28, !dbg !344 | |
if.then26: ; preds = %if.end24 | |
%26 = load ptr, ptr %objc_opt_v16, align 8, !dbg !342 | |
%selopt_offset = getelementptr inbounds %struct.objc_opt_v16_t, ptr %26, i32 0, i32 2, !dbg !342 | |
%27 = load i32, ptr %selopt_offset, align 8, !dbg !342 | |
%call27 = call i32 (ptr, ...) @printf(ptr @.str.6, i32 %27) #3, !dbg !342 | |
br label %if.end28, !dbg !342 | |
if.end28: ; preds = %if.then26, %if.end24 | |
%28 = load i32, ptr %should_log.addr, align 4, !dbg !345 | |
%tobool29 = icmp ne i32 %28, 0, !dbg !345 | |
br i1 %tobool29, label %if.then30, label %if.end32, !dbg !347 | |
if.then30: ; preds = %if.end28 | |
%29 = load ptr, ptr %objc_opt_v16, align 8, !dbg !345 | |
%headeropt_ro_offset = getelementptr inbounds %struct.objc_opt_v16_t, ptr %29, i32 0, i32 3, !dbg !345 | |
%30 = load i32, ptr %headeropt_ro_offset, align 4, !dbg !345 | |
%call31 = call i32 (ptr, ...) @printf(ptr @.str.7, i32 %30) #3, !dbg !345 | |
br label %if.end32, !dbg !345 | |
if.end32: ; preds = %if.then30, %if.end28 | |
%31 = load i32, ptr %should_log.addr, align 4, !dbg !348 | |
%tobool33 = icmp ne i32 %31, 0, !dbg !348 | |
br i1 %tobool33, label %if.then34, label %if.end36, !dbg !350 | |
if.then34: ; preds = %if.end32 | |
%32 = load ptr, ptr %relative_selector_offset.addr, align 8, !dbg !348 | |
%33 = load i64, ptr %32, align 8, !dbg !348 | |
%call35 = call i32 (ptr, ...) @printf(ptr @.str.8, i64 %33) #3, !dbg !348 | |
br label %if.end36, !dbg !348 | |
if.end36: ; preds = %if.then34, %if.end32 | |
br label %if.end85, !dbg !351 | |
if.else: ; preds = %if.then14 | |
%34 = load ptr, ptr %objc_opt, align 8, !dbg !352 | |
%version37 = getelementptr inbounds %struct.objc_opt_t, ptr %34, i32 0, i32 0, !dbg !352 | |
%35 = load i32, ptr %version37, align 4, !dbg !352 | |
%cmp38 = icmp uge i32 %35, 14, !dbg !352 | |
br i1 %cmp38, label %if.then39, label %if.else63, !dbg !354 | |
if.then39: ; preds = %if.else | |
%36 = load i32, ptr %should_log.addr, align 4, !dbg !355 | |
%tobool40 = icmp ne i32 %36, 0, !dbg !355 | |
br i1 %tobool40, label %if.then41, label %if.end44, !dbg !358 | |
if.then41: ; preds = %if.then39 | |
%37 = load ptr, ptr %objc_opt_v14, align 8, !dbg !355 | |
%version42 = getelementptr inbounds %struct.objc_opt_v14_t, ptr %37, i32 0, i32 0, !dbg !355 | |
%38 = load i32, ptr %version42, align 4, !dbg !355 | |
%call43 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %38) #3, !dbg !355 | |
br label %if.end44, !dbg !355 | |
if.end44: ; preds = %if.then41, %if.then39 | |
%39 = load i32, ptr %should_log.addr, align 4, !dbg !359 | |
%tobool45 = icmp ne i32 %39, 0, !dbg !359 | |
br i1 %tobool45, label %if.then46, label %if.end49, !dbg !361 | |
if.then46: ; preds = %if.end44 | |
%40 = load ptr, ptr %objc_opt_v14, align 8, !dbg !359 | |
%flags47 = getelementptr inbounds %struct.objc_opt_v14_t, ptr %40, i32 0, i32 1, !dbg !359 | |
%41 = load i32, ptr %flags47, align 4, !dbg !359 | |
%call48 = call i32 (ptr, ...) @printf(ptr @.str.5, i32 %41) #3, !dbg !359 | |
br label %if.end49, !dbg !359 | |
if.end49: ; preds = %if.then46, %if.end44 | |
%42 = load i32, ptr %should_log.addr, align 4, !dbg !362 | |
%tobool50 = icmp ne i32 %42, 0, !dbg !362 | |
br i1 %tobool50, label %if.then51, label %if.end54, !dbg !364 | |
if.then51: ; preds = %if.end49 | |
%43 = load ptr, ptr %objc_opt_v14, align 8, !dbg !362 | |
%selopt_offset52 = getelementptr inbounds %struct.objc_opt_v14_t, ptr %43, i32 0, i32 2, !dbg !362 | |
%44 = load i32, ptr %selopt_offset52, align 4, !dbg !362 | |
%call53 = call i32 (ptr, ...) @printf(ptr @.str.6, i32 %44) #3, !dbg !362 | |
br label %if.end54, !dbg !362 | |
if.end54: ; preds = %if.then51, %if.end49 | |
%45 = load i32, ptr %should_log.addr, align 4, !dbg !365 | |
%tobool55 = icmp ne i32 %45, 0, !dbg !365 | |
br i1 %tobool55, label %if.then56, label %if.end58, !dbg !367 | |
if.then56: ; preds = %if.end54 | |
%46 = load ptr, ptr %objc_opt_v14, align 8, !dbg !365 | |
%headeropt_offset = getelementptr inbounds %struct.objc_opt_v14_t, ptr %46, i32 0, i32 3, !dbg !365 | |
%47 = load i32, ptr %headeropt_offset, align 4, !dbg !365 | |
%call57 = call i32 (ptr, ...) @printf(ptr @.str.9, i32 %47) #3, !dbg !365 | |
br label %if.end58, !dbg !365 | |
if.end58: ; preds = %if.then56, %if.end54 | |
%48 = load i32, ptr %should_log.addr, align 4, !dbg !368 | |
%tobool59 = icmp ne i32 %48, 0, !dbg !368 | |
br i1 %tobool59, label %if.then60, label %if.end62, !dbg !370 | |
if.then60: ; preds = %if.end58 | |
%49 = load ptr, ptr %objc_opt_v14, align 8, !dbg !368 | |
%clsopt_offset = getelementptr inbounds %struct.objc_opt_v14_t, ptr %49, i32 0, i32 4, !dbg !368 | |
%50 = load i32, ptr %clsopt_offset, align 4, !dbg !368 | |
%call61 = call i32 (ptr, ...) @printf(ptr @.str.10, i32 %50) #3, !dbg !368 | |
br label %if.end62, !dbg !368 | |
if.end62: ; preds = %if.then60, %if.end58 | |
br label %if.end84, !dbg !371 | |
if.else63: ; preds = %if.else | |
%51 = load i32, ptr %should_log.addr, align 4, !dbg !372 | |
%tobool64 = icmp ne i32 %51, 0, !dbg !372 | |
br i1 %tobool64, label %if.then65, label %if.end68, !dbg !375 | |
if.then65: ; preds = %if.else63 | |
%52 = load ptr, ptr %objc_opt, align 8, !dbg !372 | |
%version66 = getelementptr inbounds %struct.objc_opt_t, ptr %52, i32 0, i32 0, !dbg !372 | |
%53 = load i32, ptr %version66, align 4, !dbg !372 | |
%call67 = call i32 (ptr, ...) @printf(ptr @.str.4, i32 %53) #3, !dbg !372 | |
br label %if.end68, !dbg !372 | |
if.end68: ; preds = %if.then65, %if.else63 | |
%54 = load i32, ptr %should_log.addr, align 4, !dbg !376 | |
%tobool69 = icmp ne i32 %54, 0, !dbg !376 | |
br i1 %tobool69, label %if.then70, label %if.end73, !dbg !378 | |
if.then70: ; preds = %if.end68 | |
%55 = load ptr, ptr %objc_opt, align 8, !dbg !376 | |
%selopt_offset71 = getelementptr inbounds %struct.objc_opt_t, ptr %55, i32 0, i32 1, !dbg !376 | |
%56 = load i32, ptr %selopt_offset71, align 4, !dbg !376 | |
%call72 = call i32 (ptr, ...) @printf(ptr @.str.6, i32 %56) #3, !dbg !376 | |
br label %if.end73, !dbg !376 | |
if.end73: ; preds = %if.then70, %if.end68 | |
%57 = load i32, ptr %should_log.addr, align 4, !dbg !379 | |
%tobool74 = icmp ne i32 %57, 0, !dbg !379 | |
br i1 %tobool74, label %if.then75, label %if.end78, !dbg !381 | |
if.then75: ; preds = %if.end73 | |
%58 = load ptr, ptr %objc_opt, align 8, !dbg !379 | |
%headeropt_offset76 = getelementptr inbounds %struct.objc_opt_t, ptr %58, i32 0, i32 2, !dbg !379 | |
%59 = load i32, ptr %headeropt_offset76, align 4, !dbg !379 | |
%call77 = call i32 (ptr, ...) @printf(ptr @.str.9, i32 %59) #3, !dbg !379 | |
br label %if.end78, !dbg !379 | |
if.end78: ; preds = %if.then75, %if.end73 | |
%60 = load i32, ptr %should_log.addr, align 4, !dbg !382 | |
%tobool79 = icmp ne i32 %60, 0, !dbg !382 | |
br i1 %tobool79, label %if.then80, label %if.end83, !dbg !384 | |
if.then80: ; preds = %if.end78 | |
%61 = load ptr, ptr %objc_opt, align 8, !dbg !382 | |
%clsopt_offset81 = getelementptr inbounds %struct.objc_opt_t, ptr %61, i32 0, i32 3, !dbg !382 | |
%62 = load i32, ptr %clsopt_offset81, align 4, !dbg !382 | |
%call82 = call i32 (ptr, ...) @printf(ptr @.str.10, i32 %62) #3, !dbg !382 | |
br label %if.end83, !dbg !382 | |
if.end83: ; preds = %if.then80, %if.end78 | |
br label %if.end84 | |
if.end84: ; preds = %if.end83, %if.end62 | |
br label %if.end85 | |
if.end85: ; preds = %if.end84, %if.end36 | |
%63 = load ptr, ptr %objc_opt, align 8, !dbg !385 | |
%version86 = getelementptr inbounds %struct.objc_opt_t, ptr %63, i32 0, i32 0, !dbg !385 | |
%64 = load i32, ptr %version86, align 4, !dbg !385 | |
%cmp87 = icmp eq i32 %64, 16, !dbg !385 | |
br i1 %cmp87, label %if.then88, label %if.else268, !dbg !387 | |
if.then88: ; preds = %if.end85 | |
call void @llvm.dbg.declare(metadata ptr %clsopt, metadata !388, metadata !DIExpression()), !dbg !390 | |
%65 = load ptr, ptr %objc_opt, align 8, !dbg !390 | |
%66 = load ptr, ptr %objc_opt_v16, align 8, !dbg !390 | |
%largeSharedCachesClassOffset = getelementptr inbounds %struct.objc_opt_v16_t, ptr %66, i32 0, i32 8, !dbg !390 | |
%67 = load i32, ptr %largeSharedCachesClassOffset, align 8, !dbg !390 | |
%idx.ext = sext i32 %67 to i64, !dbg !390 | |
%add.ptr = getelementptr inbounds i8, ptr %65, i64 %idx.ext, !dbg !390 | |
store ptr %add.ptr, ptr %clsopt, align 8, !dbg !390 | |
call void @llvm.dbg.declare(metadata ptr %max_class_infos, metadata !391, metadata !DIExpression()), !dbg !395 | |
%68 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !395 | |
%conv89 = zext i32 %68 to i64, !dbg !395 | |
%div90 = udiv i64 %conv89, 12, !dbg !395 | |
store i64 %div90, ptr %max_class_infos, align 8, !dbg !395 | |
%69 = load i32, ptr %should_log.addr, align 4, !dbg !396 | |
%tobool91 = icmp ne i32 %69, 0, !dbg !396 | |
br i1 %tobool91, label %if.then92, label %if.end94, !dbg !398 | |
if.then92: ; preds = %if.then88 | |
%70 = load i64, ptr %max_class_infos, align 8, !dbg !396 | |
%call93 = call i32 (ptr, ...) @printf(ptr @.str.11, i64 %70) #3, !dbg !396 | |
br label %if.end94, !dbg !396 | |
if.end94: ; preds = %if.then92, %if.then88 | |
call void @llvm.dbg.declare(metadata ptr %class_infos, metadata !399, metadata !DIExpression()), !dbg !400 | |
%71 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !400 | |
store ptr %71, ptr %class_infos, align 8, !dbg !400 | |
call void @llvm.dbg.declare(metadata ptr %checkbytes, metadata !401, metadata !DIExpression()), !dbg !404 | |
%72 = load ptr, ptr %clsopt, align 8, !dbg !404 | |
%tab = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %72, i32 0, i32 8, !dbg !404 | |
%73 = load ptr, ptr %clsopt, align 8, !dbg !404 | |
%mask = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %73, i32 0, i32 4, !dbg !404 | |
%74 = load i32, ptr %mask, align 8, !dbg !404 | |
%add = add i32 %74, 1, !dbg !404 | |
%idxprom = zext i32 %add to i64, !dbg !404 | |
%arrayidx = getelementptr inbounds [0 x i8], ptr %tab, i64 0, i64 %idxprom, !dbg !404 | |
store ptr %arrayidx, ptr %checkbytes, align 8, !dbg !404 | |
call void @llvm.dbg.declare(metadata ptr %offsets, metadata !405, metadata !DIExpression()), !dbg !406 | |
%75 = load ptr, ptr %checkbytes, align 8, !dbg !406 | |
%76 = load ptr, ptr %clsopt, align 8, !dbg !406 | |
%capacity = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %76, i32 0, i32 1, !dbg !406 | |
%77 = load i32, ptr %capacity, align 4, !dbg !406 | |
%idx.ext95 = zext i32 %77 to i64, !dbg !406 | |
%add.ptr96 = getelementptr inbounds i8, ptr %75, i64 %idx.ext95, !dbg !406 | |
store ptr %add.ptr96, ptr %offsets, align 8, !dbg !406 | |
call void @llvm.dbg.declare(metadata ptr %classOffsets, metadata !407, metadata !DIExpression()), !dbg !408 | |
%78 = load ptr, ptr %offsets, align 8, !dbg !408 | |
%79 = load ptr, ptr %clsopt, align 8, !dbg !408 | |
%capacity97 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %79, i32 0, i32 1, !dbg !408 | |
%80 = load i32, ptr %capacity97, align 4, !dbg !408 | |
%idx.ext98 = zext i32 %80 to i64, !dbg !408 | |
%add.ptr99 = getelementptr inbounds i32, ptr %78, i64 %idx.ext98, !dbg !408 | |
store ptr %add.ptr99, ptr %classOffsets, align 8, !dbg !408 | |
%81 = load i32, ptr %should_log.addr, align 4, !dbg !409 | |
%tobool100 = icmp ne i32 %81, 0, !dbg !409 | |
br i1 %tobool100, label %if.then101, label %if.end104, !dbg !411 | |
if.then101: ; preds = %if.end94 | |
%82 = load ptr, ptr %clsopt, align 8, !dbg !409 | |
%capacity102 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %82, i32 0, i32 1, !dbg !409 | |
%83 = load i32, ptr %capacity102, align 4, !dbg !409 | |
%call103 = call i32 (ptr, ...) @printf(ptr @.str.12, i32 %83) #3, !dbg !409 | |
br label %if.end104, !dbg !409 | |
if.end104: ; preds = %if.then101, %if.end94 | |
%84 = load i32, ptr %should_log.addr, align 4, !dbg !412 | |
%tobool105 = icmp ne i32 %84, 0, !dbg !412 | |
br i1 %tobool105, label %if.then106, label %if.end109, !dbg !414 | |
if.then106: ; preds = %if.end104 | |
%85 = load ptr, ptr %clsopt, align 8, !dbg !412 | |
%mask107 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %85, i32 0, i32 4, !dbg !412 | |
%86 = load i32, ptr %mask107, align 8, !dbg !412 | |
%call108 = call i32 (ptr, ...) @printf(ptr @.str.13, i32 %86) #3, !dbg !412 | |
br label %if.end109, !dbg !412 | |
if.end109: ; preds = %if.then106, %if.end104 | |
%87 = load i32, ptr %should_log.addr, align 4, !dbg !415 | |
%tobool110 = icmp ne i32 %87, 0, !dbg !415 | |
br i1 %tobool110, label %if.then111, label %if.end113, !dbg !417 | |
if.then111: ; preds = %if.end109 | |
%88 = load ptr, ptr %classOffsets, align 8, !dbg !415 | |
%call112 = call i32 (ptr, ...) @printf(ptr @.str.14, ptr %88) #3, !dbg !415 | |
br label %if.end113, !dbg !415 | |
if.end113: ; preds = %if.then111, %if.end109 | |
call void @llvm.dbg.declare(metadata ptr %i, metadata !418, metadata !DIExpression()), !dbg !420 | |
store i32 0, ptr %i, align 4, !dbg !420 | |
br label %for.cond, !dbg !420 | |
for.cond: ; preds = %for.inc176, %if.end113 | |
%89 = load i32, ptr %i, align 4, !dbg !421 | |
%90 = load ptr, ptr %clsopt, align 8, !dbg !421 | |
%capacity114 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %90, i32 0, i32 1, !dbg !421 | |
%91 = load i32, ptr %capacity114, align 4, !dbg !421 | |
%cmp115 = icmp ult i32 %89, %91, !dbg !421 | |
br i1 %cmp115, label %for.body, label %for.end178, !dbg !420 | |
for.body: ; preds = %for.cond | |
call void @llvm.dbg.declare(metadata ptr %objectCacheOffset, metadata !423, metadata !DIExpression()), !dbg !426 | |
%92 = load ptr, ptr %classOffsets, align 8, !dbg !426 | |
%93 = load i32, ptr %i, align 4, !dbg !426 | |
%idxprom116 = zext i32 %93 to i64, !dbg !426 | |
%arrayidx117 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %92, i64 %idxprom116, !dbg !426 | |
%bf.load = load i64, ptr %arrayidx117, align 8, !dbg !426 | |
%bf.lshr = lshr i64 %bf.load, 1, !dbg !426 | |
%bf.clear = and i64 %bf.lshr, 140737488355327, !dbg !426 | |
store i64 %bf.clear, ptr %objectCacheOffset, align 8, !dbg !426 | |
%94 = load i32, ptr %should_log.addr, align 4, !dbg !427 | |
%tobool118 = icmp ne i32 %94, 0, !dbg !427 | |
br i1 %tobool118, label %if.then119, label %if.end121, !dbg !429 | |
if.then119: ; preds = %for.body | |
%95 = load i32, ptr %i, align 4, !dbg !427 | |
%96 = load i64, ptr %objectCacheOffset, align 8, !dbg !427 | |
%call120 = call i32 (ptr, ...) @printf(ptr @.str.15, i32 %95, i64 %96) #3, !dbg !427 | |
br label %if.end121, !dbg !427 | |
if.end121: ; preds = %if.then119, %for.body | |
%97 = load ptr, ptr %classOffsets, align 8, !dbg !430 | |
%98 = load i32, ptr %i, align 4, !dbg !430 | |
%idxprom122 = zext i32 %98 to i64, !dbg !430 | |
%arrayidx123 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %97, i64 %idxprom122, !dbg !430 | |
%bf.load124 = load i64, ptr %arrayidx123, align 8, !dbg !430 | |
%bf.clear125 = and i64 %bf.load124, 1, !dbg !430 | |
%tobool126 = icmp ne i64 %bf.clear125, 0, !dbg !430 | |
br i1 %tobool126, label %if.then127, label %if.end132, !dbg !432 | |
if.then127: ; preds = %if.end121 | |
%99 = load i32, ptr %should_log.addr, align 4, !dbg !433 | |
%tobool128 = icmp ne i32 %99, 0, !dbg !433 | |
br i1 %tobool128, label %if.then129, label %if.end131, !dbg !436 | |
if.then129: ; preds = %if.then127 | |
%call130 = call i32 (ptr, ...) @printf(ptr @.str.16) #3, !dbg !433 | |
br label %if.end131, !dbg !433 | |
if.end131: ; preds = %if.then129, %if.then127 | |
br label %for.inc176, !dbg !437 | |
if.end132: ; preds = %if.end121 | |
%100 = load i64, ptr %objectCacheOffset, align 8, !dbg !438 | |
%cmp133 = icmp eq i64 %100, 0, !dbg !438 | |
br i1 %cmp133, label %if.then134, label %if.end139, !dbg !440 | |
if.then134: ; preds = %if.end132 | |
%101 = load i32, ptr %should_log.addr, align 4, !dbg !441 | |
%tobool135 = icmp ne i32 %101, 0, !dbg !441 | |
br i1 %tobool135, label %if.then136, label %if.end138, !dbg !444 | |
if.then136: ; preds = %if.then134 | |
%call137 = call i32 (ptr, ...) @printf(ptr @.str.17) #3, !dbg !441 | |
br label %if.end138, !dbg !441 | |
if.end138: ; preds = %if.then136, %if.then134 | |
br label %for.inc176, !dbg !445 | |
if.end139: ; preds = %if.end132 | |
%102 = load ptr, ptr %class_infos, align 8, !dbg !446 | |
%tobool140 = icmp ne ptr %102, null, !dbg !446 | |
br i1 %tobool140, label %land.lhs.true, label %if.else170, !dbg !446 | |
land.lhs.true: ; preds = %if.end139 | |
%103 = load i32, ptr %idx, align 4, !dbg !446 | |
%conv141 = zext i32 %103 to i64, !dbg !446 | |
%104 = load i64, ptr %max_class_infos, align 8, !dbg !446 | |
%cmp142 = icmp ult i64 %conv141, %104, !dbg !446 | |
br i1 %cmp142, label %if.then143, label %if.else170, !dbg !448 | |
if.then143: ; preds = %land.lhs.true | |
%105 = load ptr, ptr %shared_cache_base_ptr.addr, align 8, !dbg !449 | |
%106 = load i64, ptr %objectCacheOffset, align 8, !dbg !449 | |
%add.ptr144 = getelementptr inbounds i8, ptr %105, i64 %106, !dbg !449 | |
%107 = load ptr, ptr %class_infos, align 8, !dbg !449 | |
%108 = load i32, ptr %idx, align 4, !dbg !449 | |
%idxprom145 = zext i32 %108 to i64, !dbg !449 | |
%arrayidx146 = getelementptr inbounds %struct.ClassInfo, ptr %107, i64 %idxprom145, !dbg !449 | |
%isa = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx146, i32 0, i32 0, !dbg !449 | |
store ptr %add.ptr144, ptr %isa, align 1, !dbg !449 | |
call void @llvm.dbg.declare(metadata ptr %name, metadata !451, metadata !DIExpression()), !dbg !452 | |
%109 = load ptr, ptr @class_name_lookup_func, align 8, !dbg !452 | |
%110 = load ptr, ptr %class_infos, align 8, !dbg !452 | |
%111 = load i32, ptr %idx, align 4, !dbg !452 | |
%idxprom147 = zext i32 %111 to i64, !dbg !452 | |
%arrayidx148 = getelementptr inbounds %struct.ClassInfo, ptr %110, i64 %idxprom147, !dbg !452 | |
%isa149 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx148, i32 0, i32 0, !dbg !452 | |
%112 = load ptr, ptr %isa149, align 1, !dbg !452 | |
%call150 = call ptr %109(ptr %112) #3, !dbg !452 | |
store ptr %call150, ptr %name, align 8, !dbg !452 | |
%113 = load i32, ptr %should_log.addr, align 4, !dbg !453 | |
%tobool151 = icmp ne i32 %113, 0, !dbg !453 | |
br i1 %tobool151, label %if.then152, label %if.end157, !dbg !455 | |
if.then152: ; preds = %if.then143 | |
%114 = load i32, ptr %idx, align 4, !dbg !453 | |
%115 = load ptr, ptr %class_infos, align 8, !dbg !453 | |
%116 = load i32, ptr %idx, align 4, !dbg !453 | |
%idxprom153 = zext i32 %116 to i64, !dbg !453 | |
%arrayidx154 = getelementptr inbounds %struct.ClassInfo, ptr %115, i64 %idxprom153, !dbg !453 | |
%isa155 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx154, i32 0, i32 0, !dbg !453 | |
%117 = load ptr, ptr %isa155, align 1, !dbg !453 | |
%118 = load ptr, ptr %name, align 8, !dbg !453 | |
%call156 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %114, ptr %117, ptr %118) #3, !dbg !453 | |
br label %if.end157, !dbg !453 | |
if.end157: ; preds = %if.then152, %if.then143 | |
call void @llvm.dbg.declare(metadata ptr %s, metadata !456, metadata !DIExpression()), !dbg !457 | |
%119 = load ptr, ptr %name, align 8, !dbg !457 | |
store ptr %119, ptr %s, align 8, !dbg !457 | |
call void @llvm.dbg.declare(metadata ptr %h, metadata !458, metadata !DIExpression()), !dbg !459 | |
store i32 5381, ptr %h, align 4, !dbg !459 | |
call void @llvm.dbg.declare(metadata ptr %c, metadata !460, metadata !DIExpression()), !dbg !462 | |
%120 = load ptr, ptr %s, align 8, !dbg !462 | |
%121 = load i8, ptr %120, align 1, !dbg !462 | |
store i8 %121, ptr %c, align 1, !dbg !462 | |
br label %for.cond158, !dbg !462 | |
for.cond158: ; preds = %for.inc, %if.end157 | |
%122 = load i8, ptr %c, align 1, !dbg !463 | |
%tobool159 = icmp ne i8 %122, 0, !dbg !463 | |
br i1 %tobool159, label %for.body160, label %for.end, !dbg !462 | |
for.body160: ; preds = %for.cond158 | |
%123 = load i8, ptr %c, align 1, !dbg !465 | |
%conv161 = zext i8 %123 to i32, !dbg !465 | |
%cmp162 = icmp eq i32 %conv161, 46, !dbg !465 | |
br i1 %cmp162, label %if.then163, label %if.end164, !dbg !468 | |
if.then163: ; preds = %for.body160 | |
store i32 0, ptr %h, align 4, !dbg !469 | |
br label %for.end, !dbg !471 | |
if.end164: ; preds = %for.body160 | |
%124 = load i32, ptr %h, align 4, !dbg !472 | |
%shl = shl i32 %124, 5, !dbg !472 | |
%125 = load i32, ptr %h, align 4, !dbg !472 | |
%add165 = add i32 %shl, %125, !dbg !472 | |
%126 = load i8, ptr %c, align 1, !dbg !472 | |
%conv166 = zext i8 %126 to i32, !dbg !472 | |
%add167 = add i32 %add165, %conv166, !dbg !472 | |
store i32 %add167, ptr %h, align 4, !dbg !472 | |
br label %for.inc, !dbg !473 | |
for.inc: ; preds = %if.end164 | |
%127 = load ptr, ptr %s, align 8, !dbg !463 | |
%incdec.ptr = getelementptr inbounds i8, ptr %127, i32 1, !dbg !463 | |
store ptr %incdec.ptr, ptr %s, align 8, !dbg !463 | |
%128 = load i8, ptr %incdec.ptr, align 1, !dbg !463 | |
store i8 %128, ptr %c, align 1, !dbg !463 | |
br label %for.cond158, !dbg !463, !llvm.loop !474 | |
for.end: ; preds = %if.then163, %for.cond158 | |
%129 = load i32, ptr %h, align 4, !dbg !477 | |
%130 = load ptr, ptr %class_infos, align 8, !dbg !477 | |
%131 = load i32, ptr %idx, align 4, !dbg !477 | |
%idxprom168 = zext i32 %131 to i64, !dbg !477 | |
%arrayidx169 = getelementptr inbounds %struct.ClassInfo, ptr %130, i64 %idxprom168, !dbg !477 | |
%hash = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx169, i32 0, i32 1, !dbg !477 | |
store i32 %129, ptr %hash, align 1, !dbg !477 | |
br label %if.end175, !dbg !478 | |
if.else170: ; preds = %land.lhs.true, %if.end139 | |
%132 = load i32, ptr %should_log.addr, align 4, !dbg !479 | |
%tobool171 = icmp ne i32 %132, 0, !dbg !479 | |
br i1 %tobool171, label %if.then172, label %if.end174, !dbg !482 | |
if.then172: ; preds = %if.else170 | |
%call173 = call i32 (ptr, ...) @printf(ptr @.str.19) #3, !dbg !479 | |
br label %if.end174, !dbg !479 | |
if.end174: ; preds = %if.then172, %if.else170 | |
br label %if.end175 | |
if.end175: ; preds = %if.end174, %for.end | |
%133 = load i32, ptr %idx, align 4, !dbg !483 | |
%inc = add i32 %133, 1, !dbg !483 | |
store i32 %inc, ptr %idx, align 4, !dbg !483 | |
br label %for.inc176, !dbg !484 | |
for.inc176: ; preds = %if.end175, %if.end138, %if.end131 | |
%134 = load i32, ptr %i, align 4, !dbg !421 | |
%inc177 = add i32 %134, 1, !dbg !421 | |
store i32 %inc177, ptr %i, align 4, !dbg !421 | |
br label %for.cond, !dbg !421, !llvm.loop !485 | |
for.end178: ; preds = %for.cond | |
call void @llvm.dbg.declare(metadata ptr %duplicate_count_ptr, metadata !487, metadata !DIExpression()), !dbg !490 | |
%135 = load ptr, ptr %classOffsets, align 8, !dbg !490 | |
%136 = load ptr, ptr %clsopt, align 8, !dbg !490 | |
%capacity179 = getelementptr inbounds %struct.objc_clsopt_v16_t, ptr %136, i32 0, i32 1, !dbg !490 | |
%137 = load i32, ptr %capacity179, align 4, !dbg !490 | |
%idxprom180 = zext i32 %137 to i64, !dbg !490 | |
%arrayidx181 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %135, i64 %idxprom180, !dbg !490 | |
store ptr %arrayidx181, ptr %duplicate_count_ptr, align 8, !dbg !490 | |
call void @llvm.dbg.declare(metadata ptr %duplicate_count, metadata !491, metadata !DIExpression()), !dbg !492 | |
%138 = load ptr, ptr %duplicate_count_ptr, align 8, !dbg !492 | |
%139 = load i32, ptr %138, align 4, !dbg !492 | |
store i32 %139, ptr %duplicate_count, align 4, !dbg !492 | |
call void @llvm.dbg.declare(metadata ptr %duplicateClassOffsets, metadata !493, metadata !DIExpression()), !dbg !494 | |
%140 = load ptr, ptr %duplicate_count_ptr, align 8, !dbg !494 | |
%arrayidx182 = getelementptr inbounds i32, ptr %140, i64 1, !dbg !494 | |
store ptr %arrayidx182, ptr %duplicateClassOffsets, align 8, !dbg !494 | |
%141 = load i32, ptr %should_log.addr, align 4, !dbg !495 | |
%tobool183 = icmp ne i32 %141, 0, !dbg !495 | |
br i1 %tobool183, label %if.then184, label %if.end186, !dbg !497 | |
if.then184: ; preds = %for.end178 | |
%142 = load i32, ptr %duplicate_count, align 4, !dbg !495 | |
%call185 = call i32 (ptr, ...) @printf(ptr @.str.20, i32 %142) #3, !dbg !495 | |
br label %if.end186, !dbg !495 | |
if.end186: ; preds = %if.then184, %for.end178 | |
%143 = load i32, ptr %should_log.addr, align 4, !dbg !498 | |
%tobool187 = icmp ne i32 %143, 0, !dbg !498 | |
br i1 %tobool187, label %if.then188, label %if.end190, !dbg !500 | |
if.then188: ; preds = %if.end186 | |
%144 = load ptr, ptr %duplicateClassOffsets, align 8, !dbg !498 | |
%call189 = call i32 (ptr, ...) @printf(ptr @.str.21, ptr %144) #3, !dbg !498 | |
br label %if.end190, !dbg !498 | |
if.end190: ; preds = %if.then188, %if.end186 | |
call void @llvm.dbg.declare(metadata ptr %i191, metadata !501, metadata !DIExpression()), !dbg !503 | |
store i32 0, ptr %i191, align 4, !dbg !503 | |
br label %for.cond192, !dbg !503 | |
for.cond192: ; preds = %for.inc265, %if.end190 | |
%145 = load i32, ptr %i191, align 4, !dbg !504 | |
%146 = load i32, ptr %duplicate_count, align 4, !dbg !504 | |
%cmp193 = icmp ult i32 %145, %146, !dbg !504 | |
br i1 %cmp193, label %for.body194, label %for.end267, !dbg !503 | |
for.body194: ; preds = %for.cond192 | |
call void @llvm.dbg.declare(metadata ptr %objectCacheOffset195, metadata !506, metadata !DIExpression()), !dbg !508 | |
%147 = load ptr, ptr %classOffsets, align 8, !dbg !508 | |
%148 = load i32, ptr %i191, align 4, !dbg !508 | |
%idxprom196 = zext i32 %148 to i64, !dbg !508 | |
%arrayidx197 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %147, i64 %idxprom196, !dbg !508 | |
%bf.load198 = load i64, ptr %arrayidx197, align 8, !dbg !508 | |
%bf.lshr199 = lshr i64 %bf.load198, 1, !dbg !508 | |
%bf.clear200 = and i64 %bf.lshr199, 140737488355327, !dbg !508 | |
store i64 %bf.clear200, ptr %objectCacheOffset195, align 8, !dbg !508 | |
%149 = load i32, ptr %should_log.addr, align 4, !dbg !509 | |
%tobool201 = icmp ne i32 %149, 0, !dbg !509 | |
br i1 %tobool201, label %if.then202, label %if.end204, !dbg !511 | |
if.then202: ; preds = %for.body194 | |
%150 = load i32, ptr %i191, align 4, !dbg !509 | |
%151 = load i64, ptr %objectCacheOffset195, align 8, !dbg !509 | |
%call203 = call i32 (ptr, ...) @printf(ptr @.str.15, i32 %150, i64 %151) #3, !dbg !509 | |
br label %if.end204, !dbg !509 | |
if.end204: ; preds = %if.then202, %for.body194 | |
%152 = load ptr, ptr %classOffsets, align 8, !dbg !512 | |
%153 = load i32, ptr %i191, align 4, !dbg !512 | |
%idxprom205 = zext i32 %153 to i64, !dbg !512 | |
%arrayidx206 = getelementptr inbounds %struct.objc_classheader_v16_t, ptr %152, i64 %idxprom205, !dbg !512 | |
%bf.load207 = load i64, ptr %arrayidx206, align 8, !dbg !512 | |
%bf.clear208 = and i64 %bf.load207, 1, !dbg !512 | |
%tobool209 = icmp ne i64 %bf.clear208, 0, !dbg !512 | |
br i1 %tobool209, label %if.then210, label %if.end215, !dbg !514 | |
if.then210: ; preds = %if.end204 | |
%154 = load i32, ptr %should_log.addr, align 4, !dbg !515 | |
%tobool211 = icmp ne i32 %154, 0, !dbg !515 | |
br i1 %tobool211, label %if.then212, label %if.end214, !dbg !518 | |
if.then212: ; preds = %if.then210 | |
%call213 = call i32 (ptr, ...) @printf(ptr @.str.16) #3, !dbg !515 | |
br label %if.end214, !dbg !515 | |
if.end214: ; preds = %if.then212, %if.then210 | |
br label %for.inc265, !dbg !519 | |
if.end215: ; preds = %if.end204 | |
%155 = load i64, ptr %objectCacheOffset195, align 8, !dbg !520 | |
%cmp216 = icmp eq i64 %155, 0, !dbg !520 | |
br i1 %cmp216, label %if.then217, label %if.end222, !dbg !522 | |
if.then217: ; preds = %if.end215 | |
%156 = load i32, ptr %should_log.addr, align 4, !dbg !523 | |
%tobool218 = icmp ne i32 %156, 0, !dbg !523 | |
br i1 %tobool218, label %if.then219, label %if.end221, !dbg !526 | |
if.then219: ; preds = %if.then217 | |
%call220 = call i32 (ptr, ...) @printf(ptr @.str.17) #3, !dbg !523 | |
br label %if.end221, !dbg !523 | |
if.end221: ; preds = %if.then219, %if.then217 | |
br label %for.inc265, !dbg !527 | |
if.end222: ; preds = %if.end215 | |
%157 = load ptr, ptr %class_infos, align 8, !dbg !528 | |
%tobool223 = icmp ne ptr %157, null, !dbg !528 | |
br i1 %tobool223, label %land.lhs.true224, label %if.end264, !dbg !528 | |
land.lhs.true224: ; preds = %if.end222 | |
%158 = load i32, ptr %idx, align 4, !dbg !528 | |
%conv225 = zext i32 %158 to i64, !dbg !528 | |
%159 = load i64, ptr %max_class_infos, align 8, !dbg !528 | |
%cmp226 = icmp ult i64 %conv225, %159, !dbg !528 | |
br i1 %cmp226, label %if.then227, label %if.end264, !dbg !530 | |
if.then227: ; preds = %land.lhs.true224 | |
%160 = load ptr, ptr %shared_cache_base_ptr.addr, align 8, !dbg !531 | |
%161 = load i64, ptr %objectCacheOffset195, align 8, !dbg !531 | |
%add.ptr228 = getelementptr inbounds i8, ptr %160, i64 %161, !dbg !531 | |
%162 = load ptr, ptr %class_infos, align 8, !dbg !531 | |
%163 = load i32, ptr %idx, align 4, !dbg !531 | |
%idxprom229 = zext i32 %163 to i64, !dbg !531 | |
%arrayidx230 = getelementptr inbounds %struct.ClassInfo, ptr %162, i64 %idxprom229, !dbg !531 | |
%isa231 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx230, i32 0, i32 0, !dbg !531 | |
store ptr %add.ptr228, ptr %isa231, align 1, !dbg !531 | |
call void @llvm.dbg.declare(metadata ptr %name232, metadata !533, metadata !DIExpression()), !dbg !534 | |
%164 = load ptr, ptr @class_name_lookup_func, align 8, !dbg !534 | |
%165 = load ptr, ptr %class_infos, align 8, !dbg !534 | |
%166 = load i32, ptr %idx, align 4, !dbg !534 | |
%idxprom233 = zext i32 %166 to i64, !dbg !534 | |
%arrayidx234 = getelementptr inbounds %struct.ClassInfo, ptr %165, i64 %idxprom233, !dbg !534 | |
%isa235 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx234, i32 0, i32 0, !dbg !534 | |
%167 = load ptr, ptr %isa235, align 1, !dbg !534 | |
%call236 = call ptr %164(ptr %167) #3, !dbg !534 | |
store ptr %call236, ptr %name232, align 8, !dbg !534 | |
%168 = load i32, ptr %should_log.addr, align 4, !dbg !535 | |
%tobool237 = icmp ne i32 %168, 0, !dbg !535 | |
br i1 %tobool237, label %if.then238, label %if.end243, !dbg !537 | |
if.then238: ; preds = %if.then227 | |
%169 = load i32, ptr %idx, align 4, !dbg !535 | |
%170 = load ptr, ptr %class_infos, align 8, !dbg !535 | |
%171 = load i32, ptr %idx, align 4, !dbg !535 | |
%idxprom239 = zext i32 %171 to i64, !dbg !535 | |
%arrayidx240 = getelementptr inbounds %struct.ClassInfo, ptr %170, i64 %idxprom239, !dbg !535 | |
%isa241 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx240, i32 0, i32 0, !dbg !535 | |
%172 = load ptr, ptr %isa241, align 1, !dbg !535 | |
%173 = load ptr, ptr %name232, align 8, !dbg !535 | |
%call242 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %169, ptr %172, ptr %173) #3, !dbg !535 | |
br label %if.end243, !dbg !535 | |
if.end243: ; preds = %if.then238, %if.then227 | |
call void @llvm.dbg.declare(metadata ptr %s244, metadata !538, metadata !DIExpression()), !dbg !539 | |
%174 = load ptr, ptr %name232, align 8, !dbg !539 | |
store ptr %174, ptr %s244, align 8, !dbg !539 | |
call void @llvm.dbg.declare(metadata ptr %h245, metadata !540, metadata !DIExpression()), !dbg !541 | |
store i32 5381, ptr %h245, align 4, !dbg !541 | |
call void @llvm.dbg.declare(metadata ptr %c246, metadata !542, metadata !DIExpression()), !dbg !544 | |
%175 = load ptr, ptr %s244, align 8, !dbg !544 | |
%176 = load i8, ptr %175, align 1, !dbg !544 | |
store i8 %176, ptr %c246, align 1, !dbg !544 | |
br label %for.cond247, !dbg !544 | |
for.cond247: ; preds = %for.inc258, %if.end243 | |
%177 = load i8, ptr %c246, align 1, !dbg !545 | |
%tobool248 = icmp ne i8 %177, 0, !dbg !545 | |
br i1 %tobool248, label %for.body249, label %for.end260, !dbg !544 | |
for.body249: ; preds = %for.cond247 | |
%178 = load i8, ptr %c246, align 1, !dbg !547 | |
%conv250 = zext i8 %178 to i32, !dbg !547 | |
%cmp251 = icmp eq i32 %conv250, 46, !dbg !547 | |
br i1 %cmp251, label %if.then252, label %if.end253, !dbg !550 | |
if.then252: ; preds = %for.body249 | |
store i32 0, ptr %h245, align 4, !dbg !551 | |
br label %for.end260, !dbg !553 | |
if.end253: ; preds = %for.body249 | |
%179 = load i32, ptr %h245, align 4, !dbg !554 | |
%shl254 = shl i32 %179, 5, !dbg !554 | |
%180 = load i32, ptr %h245, align 4, !dbg !554 | |
%add255 = add i32 %shl254, %180, !dbg !554 | |
%181 = load i8, ptr %c246, align 1, !dbg !554 | |
%conv256 = zext i8 %181 to i32, !dbg !554 | |
%add257 = add i32 %add255, %conv256, !dbg !554 | |
store i32 %add257, ptr %h245, align 4, !dbg !554 | |
br label %for.inc258, !dbg !555 | |
for.inc258: ; preds = %if.end253 | |
%182 = load ptr, ptr %s244, align 8, !dbg !545 | |
%incdec.ptr259 = getelementptr inbounds i8, ptr %182, i32 1, !dbg !545 | |
store ptr %incdec.ptr259, ptr %s244, align 8, !dbg !545 | |
%183 = load i8, ptr %incdec.ptr259, align 1, !dbg !545 | |
store i8 %183, ptr %c246, align 1, !dbg !545 | |
br label %for.cond247, !dbg !545, !llvm.loop !556 | |
for.end260: ; preds = %if.then252, %for.cond247 | |
%184 = load i32, ptr %h245, align 4, !dbg !558 | |
%185 = load ptr, ptr %class_infos, align 8, !dbg !558 | |
%186 = load i32, ptr %idx, align 4, !dbg !558 | |
%idxprom261 = zext i32 %186 to i64, !dbg !558 | |
%arrayidx262 = getelementptr inbounds %struct.ClassInfo, ptr %185, i64 %idxprom261, !dbg !558 | |
%hash263 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx262, i32 0, i32 1, !dbg !558 | |
store i32 %184, ptr %hash263, align 1, !dbg !558 | |
br label %if.end264, !dbg !559 | |
if.end264: ; preds = %for.end260, %land.lhs.true224, %if.end222 | |
br label %for.inc265, !dbg !560 | |
for.inc265: ; preds = %if.end264, %if.end221, %if.end214 | |
%187 = load i32, ptr %i191, align 4, !dbg !504 | |
%inc266 = add i32 %187, 1, !dbg !504 | |
store i32 %inc266, ptr %i191, align 4, !dbg !504 | |
br label %for.cond192, !dbg !504, !llvm.loop !561 | |
for.end267: ; preds = %for.cond192 | |
br label %if.end489, !dbg !563 | |
if.else268: ; preds = %if.end85 | |
%188 = load ptr, ptr %objc_opt, align 8, !dbg !564 | |
%version269 = getelementptr inbounds %struct.objc_opt_t, ptr %188, i32 0, i32 0, !dbg !564 | |
%189 = load i32, ptr %version269, align 4, !dbg !564 | |
%cmp270 = icmp uge i32 %189, 12, !dbg !564 | |
br i1 %cmp270, label %land.lhs.true271, label %if.end488, !dbg !564 | |
land.lhs.true271: ; preds = %if.else268 | |
%190 = load ptr, ptr %objc_opt, align 8, !dbg !564 | |
%version272 = getelementptr inbounds %struct.objc_opt_t, ptr %190, i32 0, i32 0, !dbg !564 | |
%191 = load i32, ptr %version272, align 4, !dbg !564 | |
%cmp273 = icmp ule i32 %191, 15, !dbg !564 | |
br i1 %cmp273, label %if.then274, label %if.end488, !dbg !566 | |
if.then274: ; preds = %land.lhs.true271 | |
call void @llvm.dbg.declare(metadata ptr %clsopt275, metadata !567, metadata !DIExpression()), !dbg !569 | |
store ptr null, ptr %clsopt275, align 8, !dbg !569 | |
%192 = load ptr, ptr %objc_opt, align 8, !dbg !570 | |
%version276 = getelementptr inbounds %struct.objc_opt_t, ptr %192, i32 0, i32 0, !dbg !570 | |
%193 = load i32, ptr %version276, align 4, !dbg !570 | |
%cmp277 = icmp uge i32 %193, 14, !dbg !570 | |
br i1 %cmp277, label %if.then278, label %if.else282, !dbg !572 | |
if.then278: ; preds = %if.then274 | |
%194 = load ptr, ptr %objc_opt_v14, align 8, !dbg !573 | |
%195 = load ptr, ptr %objc_opt_v14, align 8, !dbg !573 | |
%clsopt_offset279 = getelementptr inbounds %struct.objc_opt_v14_t, ptr %195, i32 0, i32 4, !dbg !573 | |
%196 = load i32, ptr %clsopt_offset279, align 4, !dbg !573 | |
%idx.ext280 = sext i32 %196 to i64, !dbg !573 | |
%add.ptr281 = getelementptr inbounds i8, ptr %194, i64 %idx.ext280, !dbg !573 | |
store ptr %add.ptr281, ptr %clsopt275, align 8, !dbg !573 | |
br label %if.end286, !dbg !573 | |
if.else282: ; preds = %if.then274 | |
%197 = load ptr, ptr %objc_opt, align 8, !dbg !574 | |
%198 = load ptr, ptr %objc_opt, align 8, !dbg !574 | |
%clsopt_offset283 = getelementptr inbounds %struct.objc_opt_t, ptr %198, i32 0, i32 3, !dbg !574 | |
%199 = load i32, ptr %clsopt_offset283, align 4, !dbg !574 | |
%idx.ext284 = sext i32 %199 to i64, !dbg !574 | |
%add.ptr285 = getelementptr inbounds i8, ptr %197, i64 %idx.ext284, !dbg !574 | |
store ptr %add.ptr285, ptr %clsopt275, align 8, !dbg !574 | |
br label %if.end286 | |
if.end286: ; preds = %if.else282, %if.then278 | |
call void @llvm.dbg.declare(metadata ptr %max_class_infos287, metadata !575, metadata !DIExpression()), !dbg !576 | |
%200 = load i32, ptr %class_infos_byte_size.addr, align 4, !dbg !576 | |
%conv288 = zext i32 %200 to i64, !dbg !576 | |
%div289 = udiv i64 %conv288, 12, !dbg !576 | |
store i64 %div289, ptr %max_class_infos287, align 8, !dbg !576 | |
%201 = load i32, ptr %should_log.addr, align 4, !dbg !577 | |
%tobool290 = icmp ne i32 %201, 0, !dbg !577 | |
br i1 %tobool290, label %if.then291, label %if.end293, !dbg !579 | |
if.then291: ; preds = %if.end286 | |
%202 = load i64, ptr %max_class_infos287, align 8, !dbg !577 | |
%call292 = call i32 (ptr, ...) @printf(ptr @.str.11, i64 %202) #3, !dbg !577 | |
br label %if.end293, !dbg !577 | |
if.end293: ; preds = %if.then291, %if.end286 | |
call void @llvm.dbg.declare(metadata ptr %class_infos294, metadata !580, metadata !DIExpression()), !dbg !581 | |
%203 = load ptr, ptr %class_infos_ptr.addr, align 8, !dbg !581 | |
store ptr %203, ptr %class_infos294, align 8, !dbg !581 | |
call void @llvm.dbg.declare(metadata ptr %invalidEntryOffset, metadata !582, metadata !DIExpression()), !dbg !583 | |
store i32 0, ptr %invalidEntryOffset, align 4, !dbg !583 | |
%204 = load ptr, ptr %objc_opt, align 8, !dbg !584 | |
%version295 = getelementptr inbounds %struct.objc_opt_t, ptr %204, i32 0, i32 0, !dbg !584 | |
%205 = load i32, ptr %version295, align 4, !dbg !584 | |
%cmp296 = icmp eq i32 %205, 12, !dbg !584 | |
br i1 %cmp296, label %if.then297, label %if.end298, !dbg !586 | |
if.then297: ; preds = %if.end293 | |
store i32 16, ptr %invalidEntryOffset, align 4, !dbg !587 | |
br label %if.end298, !dbg !587 | |
if.end298: ; preds = %if.then297, %if.end293 | |
call void @llvm.dbg.declare(metadata ptr %checkbytes299, metadata !588, metadata !DIExpression()), !dbg !589 | |
%206 = load ptr, ptr %clsopt275, align 8, !dbg !589 | |
%tab300 = getelementptr inbounds %struct.objc_clsopt_t, ptr %206, i32 0, i32 8, !dbg !589 | |
%207 = load ptr, ptr %clsopt275, align 8, !dbg !589 | |
%mask301 = getelementptr inbounds %struct.objc_clsopt_t, ptr %207, i32 0, i32 3, !dbg !589 | |
%208 = load i32, ptr %mask301, align 4, !dbg !589 | |
%add302 = add i32 %208, 1, !dbg !589 | |
%idxprom303 = zext i32 %add302 to i64, !dbg !589 | |
%arrayidx304 = getelementptr inbounds [0 x i8], ptr %tab300, i64 0, i64 %idxprom303, !dbg !589 | |
store ptr %arrayidx304, ptr %checkbytes299, align 8, !dbg !589 | |
call void @llvm.dbg.declare(metadata ptr %offsets305, metadata !590, metadata !DIExpression()), !dbg !591 | |
%209 = load ptr, ptr %checkbytes299, align 8, !dbg !591 | |
%210 = load ptr, ptr %clsopt275, align 8, !dbg !591 | |
%capacity306 = getelementptr inbounds %struct.objc_clsopt_t, ptr %210, i32 0, i32 0, !dbg !591 | |
%211 = load i32, ptr %capacity306, align 8, !dbg !591 | |
%idx.ext307 = zext i32 %211 to i64, !dbg !591 | |
%add.ptr308 = getelementptr inbounds i8, ptr %209, i64 %idx.ext307, !dbg !591 | |
store ptr %add.ptr308, ptr %offsets305, align 8, !dbg !591 | |
call void @llvm.dbg.declare(metadata ptr %classOffsets309, metadata !592, metadata !DIExpression()), !dbg !593 | |
%212 = load ptr, ptr %offsets305, align 8, !dbg !593 | |
%213 = load ptr, ptr %clsopt275, align 8, !dbg !593 | |
%capacity310 = getelementptr inbounds %struct.objc_clsopt_t, ptr %213, i32 0, i32 0, !dbg !593 | |
%214 = load i32, ptr %capacity310, align 8, !dbg !593 | |
%idx.ext311 = zext i32 %214 to i64, !dbg !593 | |
%add.ptr312 = getelementptr inbounds i32, ptr %212, i64 %idx.ext311, !dbg !593 | |
store ptr %add.ptr312, ptr %classOffsets309, align 8, !dbg !593 | |
%215 = load i32, ptr %should_log.addr, align 4, !dbg !594 | |
%tobool313 = icmp ne i32 %215, 0, !dbg !594 | |
br i1 %tobool313, label %if.then314, label %if.end317, !dbg !596 | |
if.then314: ; preds = %if.end298 | |
%216 = load ptr, ptr %clsopt275, align 8, !dbg !594 | |
%capacity315 = getelementptr inbounds %struct.objc_clsopt_t, ptr %216, i32 0, i32 0, !dbg !594 | |
%217 = load i32, ptr %capacity315, align 8, !dbg !594 | |
%call316 = call i32 (ptr, ...) @printf(ptr @.str.12, i32 %217) #3, !dbg !594 | |
br label %if.end317, !dbg !594 | |
if.end317: ; preds = %if.then314, %if.end298 | |
%218 = load i32, ptr %should_log.addr, align 4, !dbg !597 | |
%tobool318 = icmp ne i32 %218, 0, !dbg !597 | |
br i1 %tobool318, label %if.then319, label %if.end322, !dbg !599 | |
if.then319: ; preds = %if.end317 | |
%219 = load ptr, ptr %clsopt275, align 8, !dbg !597 | |
%mask320 = getelementptr inbounds %struct.objc_clsopt_t, ptr %219, i32 0, i32 3, !dbg !597 | |
%220 = load i32, ptr %mask320, align 4, !dbg !597 | |
%call321 = call i32 (ptr, ...) @printf(ptr @.str.13, i32 %220) #3, !dbg !597 | |
br label %if.end322, !dbg !597 | |
if.end322: ; preds = %if.then319, %if.end317 | |
%221 = load i32, ptr %should_log.addr, align 4, !dbg !600 | |
%tobool323 = icmp ne i32 %221, 0, !dbg !600 | |
br i1 %tobool323, label %if.then324, label %if.end326, !dbg !602 | |
if.then324: ; preds = %if.end322 | |
%222 = load ptr, ptr %classOffsets309, align 8, !dbg !600 | |
%call325 = call i32 (ptr, ...) @printf(ptr @.str.14, ptr %222) #3, !dbg !600 | |
br label %if.end326, !dbg !600 | |
if.end326: ; preds = %if.then324, %if.end322 | |
%223 = load i32, ptr %should_log.addr, align 4, !dbg !603 | |
%tobool327 = icmp ne i32 %223, 0, !dbg !603 | |
br i1 %tobool327, label %if.then328, label %if.end330, !dbg !605 | |
if.then328: ; preds = %if.end326 | |
%224 = load i32, ptr %invalidEntryOffset, align 4, !dbg !603 | |
%call329 = call i32 (ptr, ...) @printf(ptr @.str.22, i32 %224) #3, !dbg !603 | |
br label %if.end330, !dbg !603 | |
if.end330: ; preds = %if.then328, %if.end326 | |
call void @llvm.dbg.declare(metadata ptr %i331, metadata !606, metadata !DIExpression()), !dbg !608 | |
store i32 0, ptr %i331, align 4, !dbg !608 | |
br label %for.cond332, !dbg !608 | |
for.cond332: ; preds = %for.inc407, %if.end330 | |
%225 = load i32, ptr %i331, align 4, !dbg !609 | |
%226 = load ptr, ptr %clsopt275, align 8, !dbg !609 | |
%capacity333 = getelementptr inbounds %struct.objc_clsopt_t, ptr %226, i32 0, i32 0, !dbg !609 | |
%227 = load i32, ptr %capacity333, align 8, !dbg !609 | |
%cmp334 = icmp ult i32 %225, %227, !dbg !609 | |
br i1 %cmp334, label %for.body335, label %for.end409, !dbg !608 | |
for.body335: ; preds = %for.cond332 | |
call void @llvm.dbg.declare(metadata ptr %clsOffset, metadata !611, metadata !DIExpression()), !dbg !613 | |
%228 = load ptr, ptr %classOffsets309, align 8, !dbg !613 | |
%229 = load i32, ptr %i331, align 4, !dbg !613 | |
%idxprom336 = zext i32 %229 to i64, !dbg !613 | |
%arrayidx337 = getelementptr inbounds %struct.objc_classheader_t, ptr %228, i64 %idxprom336, !dbg !613 | |
%clsOffset338 = getelementptr inbounds %struct.objc_classheader_t, ptr %arrayidx337, i32 0, i32 0, !dbg !613 | |
%230 = load i32, ptr %clsOffset338, align 4, !dbg !613 | |
store i32 %230, ptr %clsOffset, align 4, !dbg !613 | |
%231 = load i32, ptr %should_log.addr, align 4, !dbg !614 | |
%tobool339 = icmp ne i32 %231, 0, !dbg !614 | |
br i1 %tobool339, label %if.then340, label %if.end342, !dbg !616 | |
if.then340: ; preds = %for.body335 | |
%232 = load i32, ptr %i331, align 4, !dbg !614 | |
%233 = load i32, ptr %clsOffset, align 4, !dbg !614 | |
%call341 = call i32 (ptr, ...) @printf(ptr @.str.23, i32 %232, i32 %233) #3, !dbg !614 | |
br label %if.end342, !dbg !614 | |
if.end342: ; preds = %if.then340, %for.body335 | |
%234 = load i32, ptr %clsOffset, align 4, !dbg !617 | |
%and = and i32 %234, 1, !dbg !617 | |
%tobool343 = icmp ne i32 %and, 0, !dbg !617 | |
br i1 %tobool343, label %if.then344, label %if.else349, !dbg !619 | |
if.then344: ; preds = %if.end342 | |
%235 = load i32, ptr %should_log.addr, align 4, !dbg !620 | |
%tobool345 = icmp ne i32 %235, 0, !dbg !620 | |
br i1 %tobool345, label %if.then346, label %if.end348, !dbg !623 | |
if.then346: ; preds = %if.then344 | |
%call347 = call i32 (ptr, ...) @printf(ptr @.str.24) #3, !dbg !620 | |
br label %if.end348, !dbg !620 | |
if.end348: ; preds = %if.then346, %if.then344 | |
br label %for.inc407, !dbg !624 | |
if.else349: ; preds = %if.end342 | |
%236 = load i32, ptr %clsOffset, align 4, !dbg !625 | |
%237 = load i32, ptr %invalidEntryOffset, align 4, !dbg !625 | |
%cmp350 = icmp eq i32 %236, %237, !dbg !625 | |
br i1 %cmp350, label %if.then351, label %if.end356, !dbg !627 | |
if.then351: ; preds = %if.else349 | |
%238 = load i32, ptr %should_log.addr, align 4, !dbg !628 | |
%tobool352 = icmp ne i32 %238, 0, !dbg !628 | |
br i1 %tobool352, label %if.then353, label %if.end355, !dbg !631 | |
if.then353: ; preds = %if.then351 | |
%call354 = call i32 (ptr, ...) @printf(ptr @.str.25) #3, !dbg !628 | |
br label %if.end355, !dbg !628 | |
if.end355: ; preds = %if.then353, %if.then351 | |
br label %for.inc407, !dbg !632 | |
if.end356: ; preds = %if.else349 | |
br label %if.end357 | |
if.end357: ; preds = %if.end356 | |
%239 = load ptr, ptr %class_infos294, align 8, !dbg !633 | |
%tobool358 = icmp ne ptr %239, null, !dbg !633 | |
br i1 %tobool358, label %land.lhs.true359, label %if.else400, !dbg !633 | |
land.lhs.true359: ; preds = %if.end357 | |
%240 = load i32, ptr %idx, align 4, !dbg !633 | |
%conv360 = zext i32 %240 to i64, !dbg !633 | |
%241 = load i64, ptr %max_class_infos287, align 8, !dbg !633 | |
%cmp361 = icmp ult i64 %conv360, %241, !dbg !633 | |
br i1 %cmp361, label %if.then362, label %if.else400, !dbg !635 | |
if.then362: ; preds = %land.lhs.true359 | |
%242 = load ptr, ptr %clsopt275, align 8, !dbg !636 | |
%243 = load i32, ptr %clsOffset, align 4, !dbg !636 | |
%idx.ext363 = sext i32 %243 to i64, !dbg !636 | |
%add.ptr364 = getelementptr inbounds i8, ptr %242, i64 %idx.ext363, !dbg !636 | |
%244 = load ptr, ptr %class_infos294, align 8, !dbg !636 | |
%245 = load i32, ptr %idx, align 4, !dbg !636 | |
%idxprom365 = zext i32 %245 to i64, !dbg !636 | |
%arrayidx366 = getelementptr inbounds %struct.ClassInfo, ptr %244, i64 %idxprom365, !dbg !636 | |
%isa367 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx366, i32 0, i32 0, !dbg !636 | |
store ptr %add.ptr364, ptr %isa367, align 1, !dbg !636 | |
call void @llvm.dbg.declare(metadata ptr %name368, metadata !638, metadata !DIExpression()), !dbg !639 | |
%246 = load ptr, ptr @class_name_lookup_func, align 8, !dbg !639 | |
%247 = load ptr, ptr %class_infos294, align 8, !dbg !639 | |
%248 = load i32, ptr %idx, align 4, !dbg !639 | |
%idxprom369 = zext i32 %248 to i64, !dbg !639 | |
%arrayidx370 = getelementptr inbounds %struct.ClassInfo, ptr %247, i64 %idxprom369, !dbg !639 | |
%isa371 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx370, i32 0, i32 0, !dbg !639 | |
%249 = load ptr, ptr %isa371, align 1, !dbg !639 | |
%call372 = call ptr %246(ptr %249) #3, !dbg !639 | |
store ptr %call372, ptr %name368, align 8, !dbg !639 | |
%250 = load i32, ptr %should_log.addr, align 4, !dbg !640 | |
%tobool373 = icmp ne i32 %250, 0, !dbg !640 | |
br i1 %tobool373, label %if.then374, label %if.end379, !dbg !642 | |
if.then374: ; preds = %if.then362 | |
%251 = load i32, ptr %idx, align 4, !dbg !640 | |
%252 = load ptr, ptr %class_infos294, align 8, !dbg !640 | |
%253 = load i32, ptr %idx, align 4, !dbg !640 | |
%idxprom375 = zext i32 %253 to i64, !dbg !640 | |
%arrayidx376 = getelementptr inbounds %struct.ClassInfo, ptr %252, i64 %idxprom375, !dbg !640 | |
%isa377 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx376, i32 0, i32 0, !dbg !640 | |
%254 = load ptr, ptr %isa377, align 1, !dbg !640 | |
%255 = load ptr, ptr %name368, align 8, !dbg !640 | |
%call378 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %251, ptr %254, ptr %255) #3, !dbg !640 | |
br label %if.end379, !dbg !640 | |
if.end379: ; preds = %if.then374, %if.then362 | |
call void @llvm.dbg.declare(metadata ptr %s380, metadata !643, metadata !DIExpression()), !dbg !644 | |
%256 = load ptr, ptr %name368, align 8, !dbg !644 | |
store ptr %256, ptr %s380, align 8, !dbg !644 | |
call void @llvm.dbg.declare(metadata ptr %h381, metadata !645, metadata !DIExpression()), !dbg !646 | |
store i32 5381, ptr %h381, align 4, !dbg !646 | |
call void @llvm.dbg.declare(metadata ptr %c382, metadata !647, metadata !DIExpression()), !dbg !649 | |
%257 = load ptr, ptr %s380, align 8, !dbg !649 | |
%258 = load i8, ptr %257, align 1, !dbg !649 | |
store i8 %258, ptr %c382, align 1, !dbg !649 | |
br label %for.cond383, !dbg !649 | |
for.cond383: ; preds = %for.inc394, %if.end379 | |
%259 = load i8, ptr %c382, align 1, !dbg !650 | |
%tobool384 = icmp ne i8 %259, 0, !dbg !650 | |
br i1 %tobool384, label %for.body385, label %for.end396, !dbg !649 | |
for.body385: ; preds = %for.cond383 | |
%260 = load i8, ptr %c382, align 1, !dbg !652 | |
%conv386 = zext i8 %260 to i32, !dbg !652 | |
%cmp387 = icmp eq i32 %conv386, 46, !dbg !652 | |
br i1 %cmp387, label %if.then388, label %if.end389, !dbg !655 | |
if.then388: ; preds = %for.body385 | |
store i32 0, ptr %h381, align 4, !dbg !656 | |
br label %for.end396, !dbg !658 | |
if.end389: ; preds = %for.body385 | |
%261 = load i32, ptr %h381, align 4, !dbg !659 | |
%shl390 = shl i32 %261, 5, !dbg !659 | |
%262 = load i32, ptr %h381, align 4, !dbg !659 | |
%add391 = add i32 %shl390, %262, !dbg !659 | |
%263 = load i8, ptr %c382, align 1, !dbg !659 | |
%conv392 = zext i8 %263 to i32, !dbg !659 | |
%add393 = add i32 %add391, %conv392, !dbg !659 | |
store i32 %add393, ptr %h381, align 4, !dbg !659 | |
br label %for.inc394, !dbg !660 | |
for.inc394: ; preds = %if.end389 | |
%264 = load ptr, ptr %s380, align 8, !dbg !650 | |
%incdec.ptr395 = getelementptr inbounds i8, ptr %264, i32 1, !dbg !650 | |
store ptr %incdec.ptr395, ptr %s380, align 8, !dbg !650 | |
%265 = load i8, ptr %incdec.ptr395, align 1, !dbg !650 | |
store i8 %265, ptr %c382, align 1, !dbg !650 | |
br label %for.cond383, !dbg !650, !llvm.loop !661 | |
for.end396: ; preds = %if.then388, %for.cond383 | |
%266 = load i32, ptr %h381, align 4, !dbg !663 | |
%267 = load ptr, ptr %class_infos294, align 8, !dbg !663 | |
%268 = load i32, ptr %idx, align 4, !dbg !663 | |
%idxprom397 = zext i32 %268 to i64, !dbg !663 | |
%arrayidx398 = getelementptr inbounds %struct.ClassInfo, ptr %267, i64 %idxprom397, !dbg !663 | |
%hash399 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx398, i32 0, i32 1, !dbg !663 | |
store i32 %266, ptr %hash399, align 1, !dbg !663 | |
br label %if.end405, !dbg !664 | |
if.else400: ; preds = %land.lhs.true359, %if.end357 | |
%269 = load i32, ptr %should_log.addr, align 4, !dbg !665 | |
%tobool401 = icmp ne i32 %269, 0, !dbg !665 | |
br i1 %tobool401, label %if.then402, label %if.end404, !dbg !668 | |
if.then402: ; preds = %if.else400 | |
%call403 = call i32 (ptr, ...) @printf(ptr @.str.19) #3, !dbg !665 | |
br label %if.end404, !dbg !665 | |
if.end404: ; preds = %if.then402, %if.else400 | |
br label %if.end405 | |
if.end405: ; preds = %if.end404, %for.end396 | |
%270 = load i32, ptr %idx, align 4, !dbg !669 | |
%inc406 = add i32 %270, 1, !dbg !669 | |
store i32 %inc406, ptr %idx, align 4, !dbg !669 | |
br label %for.inc407, !dbg !670 | |
for.inc407: ; preds = %if.end405, %if.end355, %if.end348 | |
%271 = load i32, ptr %i331, align 4, !dbg !609 | |
%inc408 = add i32 %271, 1, !dbg !609 | |
store i32 %inc408, ptr %i331, align 4, !dbg !609 | |
br label %for.cond332, !dbg !609, !llvm.loop !671 | |
for.end409: ; preds = %for.cond332 | |
call void @llvm.dbg.declare(metadata ptr %duplicate_count_ptr410, metadata !673, metadata !DIExpression()), !dbg !674 | |
%272 = load ptr, ptr %classOffsets309, align 8, !dbg !674 | |
%273 = load ptr, ptr %clsopt275, align 8, !dbg !674 | |
%capacity411 = getelementptr inbounds %struct.objc_clsopt_t, ptr %273, i32 0, i32 0, !dbg !674 | |
%274 = load i32, ptr %capacity411, align 8, !dbg !674 | |
%idxprom412 = zext i32 %274 to i64, !dbg !674 | |
%arrayidx413 = getelementptr inbounds %struct.objc_classheader_t, ptr %272, i64 %idxprom412, !dbg !674 | |
store ptr %arrayidx413, ptr %duplicate_count_ptr410, align 8, !dbg !674 | |
call void @llvm.dbg.declare(metadata ptr %duplicate_count414, metadata !675, metadata !DIExpression()), !dbg !676 | |
%275 = load ptr, ptr %duplicate_count_ptr410, align 8, !dbg !676 | |
%276 = load i32, ptr %275, align 4, !dbg !676 | |
store i32 %276, ptr %duplicate_count414, align 4, !dbg !676 | |
call void @llvm.dbg.declare(metadata ptr %duplicateClassOffsets415, metadata !677, metadata !DIExpression()), !dbg !678 | |
%277 = load ptr, ptr %duplicate_count_ptr410, align 8, !dbg !678 | |
%arrayidx416 = getelementptr inbounds i32, ptr %277, i64 1, !dbg !678 | |
store ptr %arrayidx416, ptr %duplicateClassOffsets415, align 8, !dbg !678 | |
%278 = load i32, ptr %should_log.addr, align 4, !dbg !679 | |
%tobool417 = icmp ne i32 %278, 0, !dbg !679 | |
br i1 %tobool417, label %if.then418, label %if.end420, !dbg !681 | |
if.then418: ; preds = %for.end409 | |
%279 = load i32, ptr %duplicate_count414, align 4, !dbg !679 | |
%call419 = call i32 (ptr, ...) @printf(ptr @.str.20, i32 %279) #3, !dbg !679 | |
br label %if.end420, !dbg !679 | |
if.end420: ; preds = %if.then418, %for.end409 | |
%280 = load i32, ptr %should_log.addr, align 4, !dbg !682 | |
%tobool421 = icmp ne i32 %280, 0, !dbg !682 | |
br i1 %tobool421, label %if.then422, label %if.end424, !dbg !684 | |
if.then422: ; preds = %if.end420 | |
%281 = load ptr, ptr %duplicateClassOffsets415, align 8, !dbg !682 | |
%call423 = call i32 (ptr, ...) @printf(ptr @.str.21, ptr %281) #3, !dbg !682 | |
br label %if.end424, !dbg !682 | |
if.end424: ; preds = %if.then422, %if.end420 | |
call void @llvm.dbg.declare(metadata ptr %i425, metadata !685, metadata !DIExpression()), !dbg !687 | |
store i32 0, ptr %i425, align 4, !dbg !687 | |
br label %for.cond426, !dbg !687 | |
for.cond426: ; preds = %for.inc485, %if.end424 | |
%282 = load i32, ptr %i425, align 4, !dbg !688 | |
%283 = load i32, ptr %duplicate_count414, align 4, !dbg !688 | |
%cmp427 = icmp ult i32 %282, %283, !dbg !688 | |
br i1 %cmp427, label %for.body428, label %for.end487, !dbg !687 | |
for.body428: ; preds = %for.cond426 | |
call void @llvm.dbg.declare(metadata ptr %clsOffset429, metadata !690, metadata !DIExpression()), !dbg !692 | |
%284 = load ptr, ptr %duplicateClassOffsets415, align 8, !dbg !692 | |
%285 = load i32, ptr %i425, align 4, !dbg !692 | |
%idxprom430 = zext i32 %285 to i64, !dbg !692 | |
%arrayidx431 = getelementptr inbounds %struct.objc_classheader_t, ptr %284, i64 %idxprom430, !dbg !692 | |
%clsOffset432 = getelementptr inbounds %struct.objc_classheader_t, ptr %arrayidx431, i32 0, i32 0, !dbg !692 | |
%286 = load i32, ptr %clsOffset432, align 4, !dbg !692 | |
store i32 %286, ptr %clsOffset429, align 4, !dbg !692 | |
%287 = load i32, ptr %clsOffset429, align 4, !dbg !693 | |
%and433 = and i32 %287, 1, !dbg !693 | |
%tobool434 = icmp ne i32 %and433, 0, !dbg !693 | |
br i1 %tobool434, label %if.then435, label %if.else436, !dbg !695 | |
if.then435: ; preds = %for.body428 | |
br label %for.inc485, !dbg !696 | |
if.else436: ; preds = %for.body428 | |
%288 = load i32, ptr %clsOffset429, align 4, !dbg !697 | |
%289 = load i32, ptr %invalidEntryOffset, align 4, !dbg !697 | |
%cmp437 = icmp eq i32 %288, %289, !dbg !697 | |
br i1 %cmp437, label %if.then438, label %if.end439, !dbg !699 | |
if.then438: ; preds = %if.else436 | |
br label %for.inc485, !dbg !700 | |
if.end439: ; preds = %if.else436 | |
br label %if.end440 | |
if.end440: ; preds = %if.end439 | |
%290 = load ptr, ptr %class_infos294, align 8, !dbg !701 | |
%tobool441 = icmp ne ptr %290, null, !dbg !701 | |
br i1 %tobool441, label %land.lhs.true442, label %if.end483, !dbg !701 | |
land.lhs.true442: ; preds = %if.end440 | |
%291 = load i32, ptr %idx, align 4, !dbg !701 | |
%conv443 = zext i32 %291 to i64, !dbg !701 | |
%292 = load i64, ptr %max_class_infos287, align 8, !dbg !701 | |
%cmp444 = icmp ult i64 %conv443, %292, !dbg !701 | |
br i1 %cmp444, label %if.then445, label %if.end483, !dbg !703 | |
if.then445: ; preds = %land.lhs.true442 | |
%293 = load ptr, ptr %clsopt275, align 8, !dbg !704 | |
%294 = load i32, ptr %clsOffset429, align 4, !dbg !704 | |
%idx.ext446 = sext i32 %294 to i64, !dbg !704 | |
%add.ptr447 = getelementptr inbounds i8, ptr %293, i64 %idx.ext446, !dbg !704 | |
%295 = load ptr, ptr %class_infos294, align 8, !dbg !704 | |
%296 = load i32, ptr %idx, align 4, !dbg !704 | |
%idxprom448 = zext i32 %296 to i64, !dbg !704 | |
%arrayidx449 = getelementptr inbounds %struct.ClassInfo, ptr %295, i64 %idxprom448, !dbg !704 | |
%isa450 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx449, i32 0, i32 0, !dbg !704 | |
store ptr %add.ptr447, ptr %isa450, align 1, !dbg !704 | |
call void @llvm.dbg.declare(metadata ptr %name451, metadata !706, metadata !DIExpression()), !dbg !707 | |
%297 = load ptr, ptr @class_name_lookup_func, align 8, !dbg !707 | |
%298 = load ptr, ptr %class_infos294, align 8, !dbg !707 | |
%299 = load i32, ptr %idx, align 4, !dbg !707 | |
%idxprom452 = zext i32 %299 to i64, !dbg !707 | |
%arrayidx453 = getelementptr inbounds %struct.ClassInfo, ptr %298, i64 %idxprom452, !dbg !707 | |
%isa454 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx453, i32 0, i32 0, !dbg !707 | |
%300 = load ptr, ptr %isa454, align 1, !dbg !707 | |
%call455 = call ptr %297(ptr %300) #3, !dbg !707 | |
store ptr %call455, ptr %name451, align 8, !dbg !707 | |
%301 = load i32, ptr %should_log.addr, align 4, !dbg !708 | |
%tobool456 = icmp ne i32 %301, 0, !dbg !708 | |
br i1 %tobool456, label %if.then457, label %if.end462, !dbg !710 | |
if.then457: ; preds = %if.then445 | |
%302 = load i32, ptr %idx, align 4, !dbg !708 | |
%303 = load ptr, ptr %class_infos294, align 8, !dbg !708 | |
%304 = load i32, ptr %idx, align 4, !dbg !708 | |
%idxprom458 = zext i32 %304 to i64, !dbg !708 | |
%arrayidx459 = getelementptr inbounds %struct.ClassInfo, ptr %303, i64 %idxprom458, !dbg !708 | |
%isa460 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx459, i32 0, i32 0, !dbg !708 | |
%305 = load ptr, ptr %isa460, align 1, !dbg !708 | |
%306 = load ptr, ptr %name451, align 8, !dbg !708 | |
%call461 = call i32 (ptr, ...) @printf(ptr @.str.18, i32 %302, ptr %305, ptr %306) #3, !dbg !708 | |
br label %if.end462, !dbg !708 | |
if.end462: ; preds = %if.then457, %if.then445 | |
call void @llvm.dbg.declare(metadata ptr %s463, metadata !711, metadata !DIExpression()), !dbg !712 | |
%307 = load ptr, ptr %name451, align 8, !dbg !712 | |
store ptr %307, ptr %s463, align 8, !dbg !712 | |
call void @llvm.dbg.declare(metadata ptr %h464, metadata !713, metadata !DIExpression()), !dbg !714 | |
store i32 5381, ptr %h464, align 4, !dbg !714 | |
call void @llvm.dbg.declare(metadata ptr %c465, metadata !715, metadata !DIExpression()), !dbg !717 | |
%308 = load ptr, ptr %s463, align 8, !dbg !717 | |
%309 = load i8, ptr %308, align 1, !dbg !717 | |
store i8 %309, ptr %c465, align 1, !dbg !717 | |
br label %for.cond466, !dbg !717 | |
for.cond466: ; preds = %for.inc477, %if.end462 | |
%310 = load i8, ptr %c465, align 1, !dbg !718 | |
%tobool467 = icmp ne i8 %310, 0, !dbg !718 | |
br i1 %tobool467, label %for.body468, label %for.end479, !dbg !717 | |
for.body468: ; preds = %for.cond466 | |
%311 = load i8, ptr %c465, align 1, !dbg !720 | |
%conv469 = zext i8 %311 to i32, !dbg !720 | |
%cmp470 = icmp eq i32 %conv469, 46, !dbg !720 | |
br i1 %cmp470, label %if.then471, label %if.end472, !dbg !723 | |
if.then471: ; preds = %for.body468 | |
store i32 0, ptr %h464, align 4, !dbg !724 | |
br label %for.end479, !dbg !726 | |
if.end472: ; preds = %for.body468 | |
%312 = load i32, ptr %h464, align 4, !dbg !727 | |
%shl473 = shl i32 %312, 5, !dbg !727 | |
%313 = load i32, ptr %h464, align 4, !dbg !727 | |
%add474 = add i32 %shl473, %313, !dbg !727 | |
%314 = load i8, ptr %c465, align 1, !dbg !727 | |
%conv475 = zext i8 %314 to i32, !dbg !727 | |
%add476 = add i32 %add474, %conv475, !dbg !727 | |
store i32 %add476, ptr %h464, align 4, !dbg !727 | |
br label %for.inc477, !dbg !728 | |
for.inc477: ; preds = %if.end472 | |
%315 = load ptr, ptr %s463, align 8, !dbg !718 | |
%incdec.ptr478 = getelementptr inbounds i8, ptr %315, i32 1, !dbg !718 | |
store ptr %incdec.ptr478, ptr %s463, align 8, !dbg !718 | |
%316 = load i8, ptr %incdec.ptr478, align 1, !dbg !718 | |
store i8 %316, ptr %c465, align 1, !dbg !718 | |
br label %for.cond466, !dbg !718, !llvm.loop !729 | |
for.end479: ; preds = %if.then471, %for.cond466 | |
%317 = load i32, ptr %h464, align 4, !dbg !731 | |
%318 = load ptr, ptr %class_infos294, align 8, !dbg !731 | |
%319 = load i32, ptr %idx, align 4, !dbg !731 | |
%idxprom480 = zext i32 %319 to i64, !dbg !731 | |
%arrayidx481 = getelementptr inbounds %struct.ClassInfo, ptr %318, i64 %idxprom480, !dbg !731 | |
%hash482 = getelementptr inbounds %struct.ClassInfo, ptr %arrayidx481, i32 0, i32 1, !dbg !731 | |
store i32 %317, ptr %hash482, align 1, !dbg !731 | |
br label %if.end483, !dbg !732 | |
if.end483: ; preds = %for.end479, %land.lhs.true442, %if.end440 | |
%320 = load i32, ptr %idx, align 4, !dbg !733 | |
%inc484 = add i32 %320, 1, !dbg !733 | |
store i32 %inc484, ptr %idx, align 4, !dbg !733 | |
br label %for.inc485, !dbg !734 | |
for.inc485: ; preds = %if.end483, %if.then438, %if.then435 | |
%321 = load i32, ptr %i425, align 4, !dbg !688 | |
%inc486 = add i32 %321, 1, !dbg !688 | |
store i32 %inc486, ptr %i425, align 4, !dbg !688 | |
br label %for.cond426, !dbg !688, !llvm.loop !735 | |
for.end487: ; preds = %for.cond426 | |
br label %if.end488, !dbg !737 | |
if.end488: ; preds = %for.end487, %land.lhs.true271, %if.else268 | |
br label %if.end489 | |
if.end489: ; preds = %if.end488, %for.end267 | |
%322 = load i32, ptr %should_log.addr, align 4, !dbg !738 | |
%tobool490 = icmp ne i32 %322, 0, !dbg !738 | |
br i1 %tobool490, label %if.then491, label %if.end493, !dbg !740 | |
if.then491: ; preds = %if.end489 | |
%323 = load i32, ptr %idx, align 4, !dbg !738 | |
%call492 = call i32 (ptr, ...) @printf(ptr @.str.26, i32 %323) #3, !dbg !738 | |
br label %if.end493, !dbg !738 | |
if.end493: ; preds = %if.then491, %if.end489 | |
%324 = load i32, ptr %should_log.addr, align 4, !dbg !741 | |
%tobool494 = icmp ne i32 %324, 0, !dbg !741 | |
br i1 %tobool494, label %if.then495, label %if.end497, !dbg !743 | |
if.then495: ; preds = %if.end493 | |
%call496 = call i32 (ptr, ...) @printf(ptr @.str.27) #3, !dbg !741 | |
br label %if.end497, !dbg !741 | |
if.end497: ; preds = %if.then495, %if.end493 | |
br label %if.end498, !dbg !744 | |
if.end498: ; preds = %if.end497, %if.end12 | |
%325 = load i32, ptr %idx, align 4, !dbg !745 | |
ret i32 %325, !dbg !745 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #2 | |
; Function Attrs: convergent | |
declare i32 @printf(ptr, ...) #0 | |
attributes #0 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
attributes #3 = { convergent "no-builtins" } | |
!llvm.dbg.cu = !{!2} | |
!llvm.module.flags = !{!216, !217, !218, !219, !220, !221, !222, !223, !224} | |
!clang.global.decl.ptrs = !{!225, !226, !227, !228} | |
!llvm.ident = !{!229} | |
!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression()) | |
!1 = distinct !DIGlobalVariable(name: "class_name_lookup_func", scope: !2, file: !6, line: 40, type: !211, isLocal: false, isDefinition: true) | |
!2 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !3, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug, retainedTypes: !4, globals: !101) | |
!3 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!4 = !{!5, !8, !19, !27, !41, !62, !63, !72, !74, !67, !81, !82, !95} | |
!5 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint64_t", file: !6, line: 26, baseType: !7) | |
!6 = !DIFile(filename: "<lldb wrapper prefix>", directory: "/") | |
!7 = !DIBasicType(name: "unsigned long long", size: 64, encoding: DW_ATE_unsigned) | |
!8 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !9, size: 64) | |
!9 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_opt_t", file: !6, line: 101, size: 128, flags: DIFlagTypePassByValue, elements: !10, identifier: "_ZTS10objc_opt_t") | |
!10 = !{!11, !14, !17, !18} | |
!11 = !DIDerivedType(tag: DW_TAG_member, name: "version", scope: !9, file: !6, line: 102, baseType: !12, size: 32) | |
!12 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint32_t", file: !6, line: 24, baseType: !13) | |
!13 = !DIBasicType(name: "unsigned int", size: 32, encoding: DW_ATE_unsigned) | |
!14 = !DIDerivedType(tag: DW_TAG_member, name: "selopt_offset", scope: !9, file: !6, line: 103, baseType: !15, size: 32, offset: 32) | |
!15 = !DIDerivedType(tag: DW_TAG_typedef, name: "int32_t", file: !6, line: 23, baseType: !16) | |
!16 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) | |
!17 = !DIDerivedType(tag: DW_TAG_member, name: "headeropt_offset", scope: !9, file: !6, line: 104, baseType: !15, size: 32, offset: 64) | |
!18 = !DIDerivedType(tag: DW_TAG_member, name: "clsopt_offset", scope: !9, file: !6, line: 105, baseType: !15, size: 32, offset: 96) | |
!19 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !20, size: 64) | |
!20 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_opt_v14_t", file: !6, line: 108, size: 160, flags: DIFlagTypePassByValue, elements: !21, identifier: "_ZTS14objc_opt_v14_t") | |
!21 = !{!22, !23, !24, !25, !26} | |
!22 = !DIDerivedType(tag: DW_TAG_member, name: "version", scope: !20, file: !6, line: 109, baseType: !12, size: 32) | |
!23 = !DIDerivedType(tag: DW_TAG_member, name: "flags", scope: !20, file: !6, line: 110, baseType: !12, size: 32, offset: 32) | |
!24 = !DIDerivedType(tag: DW_TAG_member, name: "selopt_offset", scope: !20, file: !6, line: 111, baseType: !15, size: 32, offset: 64) | |
!25 = !DIDerivedType(tag: DW_TAG_member, name: "headeropt_offset", scope: !20, file: !6, line: 112, baseType: !15, size: 32, offset: 96) | |
!26 = !DIDerivedType(tag: DW_TAG_member, name: "clsopt_offset", scope: !20, file: !6, line: 113, baseType: !15, size: 32, offset: 128) | |
!27 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !28, size: 64) | |
!28 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_opt_v16_t", file: !6, line: 116, size: 384, flags: DIFlagTypePassByValue, elements: !29, identifier: "_ZTS14objc_opt_v16_t") | |
!29 = !{!30, !31, !32, !33, !34, !35, !36, !37, !38, !39, !40} | |
!30 = !DIDerivedType(tag: DW_TAG_member, name: "version", scope: !28, file: !6, line: 117, baseType: !12, size: 32) | |
!31 = !DIDerivedType(tag: DW_TAG_member, name: "flags", scope: !28, file: !6, line: 118, baseType: !12, size: 32, offset: 32) | |
!32 = !DIDerivedType(tag: DW_TAG_member, name: "selopt_offset", scope: !28, file: !6, line: 119, baseType: !15, size: 32, offset: 64) | |
!33 = !DIDerivedType(tag: DW_TAG_member, name: "headeropt_ro_offset", scope: !28, file: !6, line: 120, baseType: !15, size: 32, offset: 96) | |
!34 = !DIDerivedType(tag: DW_TAG_member, name: "unused_clsopt_offset", scope: !28, file: !6, line: 121, baseType: !15, size: 32, offset: 128) | |
!35 = !DIDerivedType(tag: DW_TAG_member, name: "unused_protocolopt_offset", scope: !28, file: !6, line: 122, baseType: !15, size: 32, offset: 160) | |
!36 = !DIDerivedType(tag: DW_TAG_member, name: "headeropt_rw_offset", scope: !28, file: !6, line: 123, baseType: !15, size: 32, offset: 192) | |
!37 = !DIDerivedType(tag: DW_TAG_member, name: "unused_protocolopt2_offset", scope: !28, file: !6, line: 124, baseType: !15, size: 32, offset: 224) | |
!38 = !DIDerivedType(tag: DW_TAG_member, name: "largeSharedCachesClassOffset", scope: !28, file: !6, line: 125, baseType: !15, size: 32, offset: 256) | |
!39 = !DIDerivedType(tag: DW_TAG_member, name: "largeSharedCachesProtocolOffset", scope: !28, file: !6, line: 126, baseType: !15, size: 32, offset: 288) | |
!40 = !DIDerivedType(tag: DW_TAG_member, name: "relativeMethodSelectorBaseAddressCacheOffset", scope: !28, file: !6, line: 127, baseType: !5, size: 64, offset: 320) | |
!41 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !42, size: 64) | |
!42 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !43) | |
!43 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_clsopt_v16_t", file: !6, line: 84, size: 8448, flags: DIFlagTypePassByValue, elements: !44, identifier: "_ZTS17objc_clsopt_v16_t") | |
!44 = !{!45, !46, !47, !48, !49, !50, !51, !52, !56} | |
!45 = !DIDerivedType(tag: DW_TAG_member, name: "version", scope: !43, file: !6, line: 85, baseType: !12, size: 32) | |
!46 = !DIDerivedType(tag: DW_TAG_member, name: "capacity", scope: !43, file: !6, line: 86, baseType: !12, size: 32, offset: 32) | |
!47 = !DIDerivedType(tag: DW_TAG_member, name: "occupied", scope: !43, file: !6, line: 87, baseType: !12, size: 32, offset: 64) | |
!48 = !DIDerivedType(tag: DW_TAG_member, name: "shift", scope: !43, file: !6, line: 88, baseType: !12, size: 32, offset: 96) | |
!49 = !DIDerivedType(tag: DW_TAG_member, name: "mask", scope: !43, file: !6, line: 89, baseType: !12, size: 32, offset: 128) | |
!50 = !DIDerivedType(tag: DW_TAG_member, name: "zero", scope: !43, file: !6, line: 90, baseType: !12, size: 32, offset: 160) | |
!51 = !DIDerivedType(tag: DW_TAG_member, name: "salt", scope: !43, file: !6, line: 91, baseType: !5, size: 64, offset: 192) | |
!52 = !DIDerivedType(tag: DW_TAG_member, name: "scramble", scope: !43, file: !6, line: 92, baseType: !53, size: 8192, offset: 256) | |
!53 = !DICompositeType(tag: DW_TAG_array_type, baseType: !12, size: 8192, elements: !54) | |
!54 = !{!55} | |
!55 = !DISubrange(count: 256) | |
!56 = !DIDerivedType(tag: DW_TAG_member, name: "tab", scope: !43, file: !6, line: 93, baseType: !57, offset: 8448) | |
!57 = !DICompositeType(tag: DW_TAG_array_type, baseType: !58, elements: !60) | |
!58 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint8_t", file: !6, line: 20, baseType: !59) | |
!59 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char) | |
!60 = !{!61} | |
!61 = !DISubrange(count: 0) | |
!62 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !58, size: 64) | |
!63 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !64, size: 64) | |
!64 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "ClassInfo", file: !6, line: 130, size: 96, flags: DIFlagTypePassByValue, elements: !65, identifier: "_ZTS9ClassInfo") | |
!65 = !{!66, !71} | |
!66 = !DIDerivedType(tag: DW_TAG_member, name: "isa", scope: !64, file: !6, line: 132, baseType: !67, size: 64) | |
!67 = !DIDerivedType(tag: DW_TAG_typedef, name: "Class", file: !68, baseType: !69) | |
!68 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "") | |
!69 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !70, size: 64) | |
!70 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_class", file: !3, flags: DIFlagFwdDecl) | |
!71 = !DIDerivedType(tag: DW_TAG_member, name: "hash", scope: !64, file: !6, line: 133, baseType: !12, size: 32, offset: 64) | |
!72 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !73, size: 64) | |
!73 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !15) | |
!74 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !75, size: 64) | |
!75 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !76) | |
!76 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_classheader_v16_t", file: !6, line: 61, size: 64, flags: DIFlagTypePassByValue, elements: !77, identifier: "_ZTS22objc_classheader_v16_t") | |
!77 = !{!78, !79, !80} | |
!78 = !DIDerivedType(tag: DW_TAG_member, name: "isDuplicate", scope: !76, file: !6, line: 62, baseType: !5, size: 1, flags: DIFlagBitField, extraData: i64 0) | |
!79 = !DIDerivedType(tag: DW_TAG_member, name: "objectCacheOffset", scope: !76, file: !6, line: 63, baseType: !5, size: 47, offset: 1, flags: DIFlagBitField, extraData: i64 0) | |
!80 = !DIDerivedType(tag: DW_TAG_member, name: "dylibObjCIndex", scope: !76, file: !6, line: 64, baseType: !5, size: 16, offset: 48, flags: DIFlagBitField, extraData: i64 0) | |
!81 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !12, size: 64) | |
!82 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !83, size: 64) | |
!83 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !84) | |
!84 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_clsopt_t", file: !6, line: 67, size: 8448, flags: DIFlagTypePassByValue, elements: !85, identifier: "_ZTS13objc_clsopt_t") | |
!85 = !{!86, !87, !88, !89, !90, !91, !92, !93, !94} | |
!86 = !DIDerivedType(tag: DW_TAG_member, name: "capacity", scope: !84, file: !6, line: 68, baseType: !12, size: 32) | |
!87 = !DIDerivedType(tag: DW_TAG_member, name: "occupied", scope: !84, file: !6, line: 69, baseType: !12, size: 32, offset: 32) | |
!88 = !DIDerivedType(tag: DW_TAG_member, name: "shift", scope: !84, file: !6, line: 70, baseType: !12, size: 32, offset: 64) | |
!89 = !DIDerivedType(tag: DW_TAG_member, name: "mask", scope: !84, file: !6, line: 71, baseType: !12, size: 32, offset: 96) | |
!90 = !DIDerivedType(tag: DW_TAG_member, name: "zero", scope: !84, file: !6, line: 72, baseType: !12, size: 32, offset: 128) | |
!91 = !DIDerivedType(tag: DW_TAG_member, name: "unused", scope: !84, file: !6, line: 73, baseType: !12, size: 32, offset: 160) | |
!92 = !DIDerivedType(tag: DW_TAG_member, name: "salt", scope: !84, file: !6, line: 74, baseType: !5, size: 64, offset: 192) | |
!93 = !DIDerivedType(tag: DW_TAG_member, name: "scramble", scope: !84, file: !6, line: 75, baseType: !53, size: 8192, offset: 256) | |
!94 = !DIDerivedType(tag: DW_TAG_member, name: "tab", scope: !84, file: !6, line: 76, baseType: !57, offset: 8448) | |
!95 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !96, size: 64) | |
!96 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !97) | |
!97 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "objc_classheader_t", file: !6, line: 56, size: 64, flags: DIFlagTypePassByValue, elements: !98, identifier: "_ZTS18objc_classheader_t") | |
!98 = !{!99, !100} | |
!99 = !DIDerivedType(tag: DW_TAG_member, name: "clsOffset", scope: !97, file: !6, line: 57, baseType: !15, size: 32) | |
!100 = !DIDerivedType(tag: DW_TAG_member, name: "hiOffset", scope: !97, file: !6, line: 58, baseType: !15, size: 32, offset: 32) | |
!101 = !{!0, !102, !109, !114, !116, !121, !126, !128, !133, !138, !143, !148, !150, !152, !157, !159, !164, !166, !171, !176, !178, !183, !185, !187, !192, !194, !199, !201, !206} | |
!102 = !DIGlobalVariableExpression(var: !103, expr: !DIExpression()) | |
!103 = distinct !DIGlobalVariable(scope: null, file: !6, line: 146, type: !104, isLocal: true, isDefinition: true) | |
!104 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 176, elements: !107) | |
!105 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !106) | |
!106 = !DIBasicType(name: "char", size: 8, encoding: DW_ATE_signed_char) | |
!107 = !{!108} | |
!108 = !DISubrange(count: 22) | |
!109 = !DIGlobalVariableExpression(var: !110, expr: !DIExpression()) | |
!110 = distinct !DIGlobalVariable(scope: null, file: !6, line: 147, type: !111, isLocal: true, isDefinition: true) | |
!111 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 224, elements: !112) | |
!112 = !{!113} | |
!113 = !DISubrange(count: 28) | |
!114 = !DIGlobalVariableExpression(var: !115, expr: !DIExpression()) | |
!115 = distinct !DIGlobalVariable(scope: null, file: !6, line: 148, type: !104, isLocal: true, isDefinition: true) | |
!116 = !DIGlobalVariableExpression(var: !117, expr: !DIExpression()) | |
!117 = distinct !DIGlobalVariable(scope: null, file: !6, line: 149, type: !118, isLocal: true, isDefinition: true) | |
!118 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 376, elements: !119) | |
!119 = !{!120} | |
!120 = !DISubrange(count: 47) | |
!121 = !DIGlobalVariableExpression(var: !122, expr: !DIExpression()) | |
!122 = distinct !DIGlobalVariable(scope: null, file: !6, line: 158, type: !123, isLocal: true, isDefinition: true) | |
!123 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 192, elements: !124) | |
!124 = !{!125} | |
!125 = !DISubrange(count: 24) | |
!126 = !DIGlobalVariableExpression(var: !127, expr: !DIExpression()) | |
!127 = distinct !DIGlobalVariable(scope: null, file: !6, line: 159, type: !104, isLocal: true, isDefinition: true) | |
!128 = !DIGlobalVariableExpression(var: !129, expr: !DIExpression()) | |
!129 = distinct !DIGlobalVariable(scope: null, file: !6, line: 160, type: !130, isLocal: true, isDefinition: true) | |
!130 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 240, elements: !131) | |
!131 = !{!132} | |
!132 = !DISubrange(count: 30) | |
!133 = !DIGlobalVariableExpression(var: !134, expr: !DIExpression()) | |
!134 = distinct !DIGlobalVariable(scope: null, file: !6, line: 161, type: !135, isLocal: true, isDefinition: true) | |
!135 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 288, elements: !136) | |
!136 = !{!137} | |
!137 = !DISubrange(count: 36) | |
!138 = !DIGlobalVariableExpression(var: !139, expr: !DIExpression()) | |
!139 = distinct !DIGlobalVariable(scope: null, file: !6, line: 162, type: !140, isLocal: true, isDefinition: true) | |
!140 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 488, elements: !141) | |
!141 = !{!142} | |
!142 = !DISubrange(count: 61) | |
!143 = !DIGlobalVariableExpression(var: !144, expr: !DIExpression()) | |
!144 = distinct !DIGlobalVariable(scope: null, file: !6, line: 169, type: !145, isLocal: true, isDefinition: true) | |
!145 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 264, elements: !146) | |
!146 = !{!147} | |
!147 = !DISubrange(count: 33) | |
!148 = !DIGlobalVariableExpression(var: !149, expr: !DIExpression()) | |
!149 = distinct !DIGlobalVariable(scope: null, file: !6, line: 170, type: !130, isLocal: true, isDefinition: true) | |
!150 = !DIGlobalVariableExpression(var: !151, expr: !DIExpression()) | |
!151 = distinct !DIGlobalVariable(scope: null, file: !6, line: 185, type: !123, isLocal: true, isDefinition: true) | |
!152 = !DIGlobalVariableExpression(var: !153, expr: !DIExpression()) | |
!153 = distinct !DIGlobalVariable(scope: null, file: !6, line: 193, type: !154, isLocal: true, isDefinition: true) | |
!154 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 184, elements: !155) | |
!155 = !{!156} | |
!156 = !DISubrange(count: 23) | |
!157 = !DIGlobalVariableExpression(var: !158, expr: !DIExpression()) | |
!158 = distinct !DIGlobalVariable(scope: null, file: !6, line: 194, type: !123, isLocal: true, isDefinition: true) | |
!159 = !DIGlobalVariableExpression(var: !160, expr: !DIExpression()) | |
!160 = distinct !DIGlobalVariable(scope: null, file: !6, line: 195, type: !161, isLocal: true, isDefinition: true) | |
!161 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 152, elements: !162) | |
!162 = !{!163} | |
!163 = !DISubrange(count: 19) | |
!164 = !DIGlobalVariableExpression(var: !165, expr: !DIExpression()) | |
!165 = distinct !DIGlobalVariable(scope: null, file: !6, line: 200, type: !111, isLocal: true, isDefinition: true) | |
!166 = !DIGlobalVariableExpression(var: !167, expr: !DIExpression()) | |
!167 = distinct !DIGlobalVariable(scope: null, file: !6, line: 203, type: !168, isLocal: true, isDefinition: true) | |
!168 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 160, elements: !169) | |
!169 = !{!170} | |
!170 = !DISubrange(count: 20) | |
!171 = !DIGlobalVariableExpression(var: !172, expr: !DIExpression()) | |
!172 = distinct !DIGlobalVariable(scope: null, file: !6, line: 208, type: !173, isLocal: true, isDefinition: true) | |
!173 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 328, elements: !174) | |
!174 = !{!175} | |
!175 = !DISubrange(count: 41) | |
!176 = !DIGlobalVariableExpression(var: !177, expr: !DIExpression()) | |
!177 = distinct !DIGlobalVariable(scope: null, file: !6, line: 218, type: !161, isLocal: true, isDefinition: true) | |
!178 = !DIGlobalVariableExpression(var: !179, expr: !DIExpression()) | |
!179 = distinct !DIGlobalVariable(scope: null, file: !6, line: 240, type: !180, isLocal: true, isDefinition: true) | |
!180 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 344, elements: !181) | |
!181 = !{!182} | |
!182 = !DISubrange(count: 43) | |
!183 = !DIGlobalVariableExpression(var: !184, expr: !DIExpression()) | |
!184 = distinct !DIGlobalVariable(scope: null, file: !6, line: 249, type: !104, isLocal: true, isDefinition: true) | |
!185 = !DIGlobalVariableExpression(var: !186, expr: !DIExpression()) | |
!186 = distinct !DIGlobalVariable(scope: null, file: !6, line: 250, type: !111, isLocal: true, isDefinition: true) | |
!187 = !DIGlobalVariableExpression(var: !188, expr: !DIExpression()) | |
!188 = distinct !DIGlobalVariable(scope: null, file: !6, line: 315, type: !189, isLocal: true, isDefinition: true) | |
!189 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 200, elements: !190) | |
!190 = !{!191} | |
!191 = !DISubrange(count: 25) | |
!192 = !DIGlobalVariableExpression(var: !193, expr: !DIExpression()) | |
!193 = distinct !DIGlobalVariable(scope: null, file: !6, line: 319, type: !168, isLocal: true, isDefinition: true) | |
!194 = !DIGlobalVariableExpression(var: !195, expr: !DIExpression()) | |
!195 = distinct !DIGlobalVariable(scope: null, file: !6, line: 322, type: !196, isLocal: true, isDefinition: true) | |
!196 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 120, elements: !197) | |
!197 = !{!198} | |
!198 = !DISubrange(count: 15) | |
!199 = !DIGlobalVariableExpression(var: !200, expr: !DIExpression()) | |
!200 = distinct !DIGlobalVariable(scope: null, file: !6, line: 327, type: !145, isLocal: true, isDefinition: true) | |
!201 = !DIGlobalVariableExpression(var: !202, expr: !DIExpression()) | |
!202 = distinct !DIGlobalVariable(scope: null, file: !6, line: 400, type: !203, isLocal: true, isDefinition: true) | |
!203 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 128, elements: !204) | |
!204 = !{!205} | |
!205 = !DISubrange(count: 16) | |
!206 = !DIGlobalVariableExpression(var: !207, expr: !DIExpression()) | |
!207 = distinct !DIGlobalVariable(scope: null, file: !6, line: 401, type: !208, isLocal: true, isDefinition: true) | |
!208 = !DICompositeType(tag: DW_TAG_array_type, baseType: !105, size: 48, elements: !209) | |
!209 = !{!210} | |
!210 = !DISubrange(count: 6) | |
!211 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !212, size: 64) | |
!212 = !DISubroutineType(types: !213) | |
!213 = !{!214, !215} | |
!214 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !105, size: 64) | |
!215 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64) | |
!216 = !{i32 1, !"Objective-C Version", i32 2} | |
!217 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!218 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!219 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!220 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!221 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!222 = !{i32 2, !"Debug Info Version", i32 3} | |
!223 = !{i32 1, !"wchar_size", i32 4} | |
!224 = !{i32 7, !"frame-pointer", i32 2} | |
!225 = !{ptr @objc_debug_class_getNameRaw, i64 5181241392} | |
!226 = !{ptr @class_name_lookup_func, i64 5181344880} | |
!227 = !{ptr @_Z48__lldb_apple_objc_v2_get_shared_cache_class_infoPvS_S_Pyjj, i64 5181401512} | |
!228 = !{ptr @printf, i64 5181240760} | |
!229 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!230 = distinct !DISubprogram(name: "__lldb_apple_objc_v2_get_shared_cache_class_info", linkageName: "_Z48__lldb_apple_objc_v2_get_shared_cache_class_infoPvS_S_Pyjj", scope: !6, file: !6, line: 137, type: !231, scopeLine: 143, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !2, retainedNodes: !234) | |
!231 = !DISubroutineType(types: !232) | |
!232 = !{!12, !215, !215, !215, !233, !12, !12} | |
!233 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !5, size: 64) | |
!234 = !{} | |
!235 = !{i64 5181400280} | |
!236 = !{i64 5181400408} | |
!237 = !{i64 5181400536} | |
!238 = !{i64 5181400760} | |
!239 = !{i64 5181400880} | |
!240 = !{i64 5181401000} | |
!241 = !{i64 5181401936} | |
!242 = !{i64 5181412760} | |
!243 = !{i64 5181413320} | |
!244 = !{i64 5181413880} | |
!245 = !{i64 5181428808} | |
!246 = !{i64 5181429480} | |
!247 = !{i64 5181433592} | |
!248 = !{i64 5181433992} | |
!249 = !{i64 5181434744} | |
!250 = !{i64 5181435416} | |
!251 = !{i64 5181437568} | |
!252 = !{i64 5181438064} | |
!253 = !{i64 5181441376} | |
!254 = !{i64 5181442592} | |
!255 = !{i64 5181442816} | |
!256 = !{i64 5181443048} | |
!257 = !{i64 5181445768} | |
!258 = !{i64 5181446360} | |
!259 = !{i64 5181446728} | |
!260 = !{i64 5181448008} | |
!261 = !{i64 5181448432} | |
!262 = !{i64 5181451480} | |
!263 = !{i64 5181452696} | |
!264 = !{i64 5181452920} | |
!265 = !{i64 5181453152} | |
!266 = !{i64 5181455896} | |
!267 = !{i64 5181457408} | |
!268 = !{i64 5181458328} | |
!269 = !{i64 5181458616} | |
!270 = !{i64 5181459168} | |
!271 = !{i64 5181459792} | |
!272 = !{i64 5181460456} | |
!273 = !{i64 5181462912} | |
!274 = !{i64 5181463408} | |
!275 = !{i64 5181472648} | |
!276 = !{i64 5181473864} | |
!277 = !{i64 5181474088} | |
!278 = !{i64 5181474320} | |
!279 = !{i64 5181476800} | |
!280 = !{i64 5181477296} | |
!281 = !{i64 5181477664} | |
!282 = !{i64 5181478944} | |
!283 = !{i64 5181479368} | |
!284 = !{i64 5181481088} | |
!285 = !{i64 5181482304} | |
!286 = !{i64 5181482528} | |
!287 = !{i64 5181482760} | |
!288 = !DILocalVariable(name: "objc_opt_ro_ptr", arg: 1, scope: !230, file: !6, line: 137, type: !215) | |
!289 = !DILocation(line: 137, scope: !230) | |
!290 = !DILocalVariable(name: "shared_cache_base_ptr", arg: 2, scope: !230, file: !6, line: 138, type: !215) | |
!291 = !DILocation(line: 138, scope: !230) | |
!292 = !DILocalVariable(name: "class_infos_ptr", arg: 3, scope: !230, file: !6, line: 139, type: !215) | |
!293 = !DILocation(line: 139, scope: !230) | |
!294 = !DILocalVariable(name: "relative_selector_offset", arg: 4, scope: !230, file: !6, line: 140, type: !233) | |
!295 = !DILocation(line: 140, scope: !230) | |
!296 = !DILocalVariable(name: "class_infos_byte_size", arg: 5, scope: !230, file: !6, line: 141, type: !12) | |
!297 = !DILocation(line: 141, scope: !230) | |
!298 = !DILocalVariable(name: "should_log", arg: 6, scope: !230, file: !6, line: 142, type: !12) | |
!299 = !DILocation(line: 142, scope: !230) | |
!300 = !DILocation(line: 144, scope: !230) | |
!301 = !DILocalVariable(name: "idx", scope: !230, file: !6, line: 145, type: !12) | |
!302 = !DILocation(line: 145, scope: !230) | |
!303 = !DILocation(line: 146, scope: !304) | |
!304 = distinct !DILexicalBlock(scope: !230, file: !6, line: 146) | |
!305 = !DILocation(line: 146, scope: !230) | |
!306 = !DILocation(line: 147, scope: !307) | |
!307 = distinct !DILexicalBlock(scope: !230, file: !6, line: 147) | |
!308 = !DILocation(line: 147, scope: !230) | |
!309 = !DILocation(line: 148, scope: !310) | |
!310 = distinct !DILexicalBlock(scope: !230, file: !6, line: 148) | |
!311 = !DILocation(line: 148, scope: !230) | |
!312 = !DILocation(line: 149, scope: !313) | |
!313 = distinct !DILexicalBlock(scope: !230, file: !6, line: 149) | |
!314 = !DILocation(line: 149, scope: !230) | |
!315 = !DILocation(line: 150, scope: !316) | |
!316 = distinct !DILexicalBlock(scope: !230, file: !6, line: 150) | |
!317 = !DILocation(line: 150, scope: !230) | |
!318 = !DILocalVariable(name: "objc_opt", scope: !319, file: !6, line: 152, type: !320) | |
!319 = distinct !DILexicalBlock(scope: !316, file: !6, line: 151) | |
!320 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !321, size: 64) | |
!321 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !9) | |
!322 = !DILocation(line: 152, scope: !319) | |
!323 = !DILocalVariable(name: "objc_opt_v14", scope: !319, file: !6, line: 153, type: !324) | |
!324 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !325, size: 64) | |
!325 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !20) | |
!326 = !DILocation(line: 153, scope: !319) | |
!327 = !DILocalVariable(name: "objc_opt_v16", scope: !319, file: !6, line: 154, type: !328) | |
!328 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !329, size: 64) | |
!329 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !28) | |
!330 = !DILocation(line: 154, scope: !319) | |
!331 = !DILocation(line: 155, scope: !332) | |
!332 = distinct !DILexicalBlock(scope: !319, file: !6, line: 155) | |
!333 = !DILocation(line: 155, scope: !319) | |
!334 = !DILocation(line: 157, scope: !335) | |
!335 = distinct !DILexicalBlock(scope: !332, file: !6, line: 156) | |
!336 = !DILocation(line: 158, scope: !337) | |
!337 = distinct !DILexicalBlock(scope: !335, file: !6, line: 158) | |
!338 = !DILocation(line: 158, scope: !335) | |
!339 = !DILocation(line: 159, scope: !340) | |
!340 = distinct !DILexicalBlock(scope: !335, file: !6, line: 159) | |
!341 = !DILocation(line: 159, scope: !335) | |
!342 = !DILocation(line: 160, scope: !343) | |
!343 = distinct !DILexicalBlock(scope: !335, file: !6, line: 160) | |
!344 = !DILocation(line: 160, scope: !335) | |
!345 = !DILocation(line: 161, scope: !346) | |
!346 = distinct !DILexicalBlock(scope: !335, file: !6, line: 161) | |
!347 = !DILocation(line: 161, scope: !335) | |
!348 = !DILocation(line: 162, scope: !349) | |
!349 = distinct !DILexicalBlock(scope: !335, file: !6, line: 162) | |
!350 = !DILocation(line: 162, scope: !335) | |
!351 = !DILocation(line: 163, scope: !335) | |
!352 = !DILocation(line: 164, scope: !353) | |
!353 = distinct !DILexicalBlock(scope: !332, file: !6, line: 164) | |
!354 = !DILocation(line: 164, scope: !332) | |
!355 = !DILocation(line: 166, scope: !356) | |
!356 = distinct !DILexicalBlock(scope: !357, file: !6, line: 166) | |
!357 = distinct !DILexicalBlock(scope: !353, file: !6, line: 165) | |
!358 = !DILocation(line: 166, scope: !357) | |
!359 = !DILocation(line: 167, scope: !360) | |
!360 = distinct !DILexicalBlock(scope: !357, file: !6, line: 167) | |
!361 = !DILocation(line: 167, scope: !357) | |
!362 = !DILocation(line: 168, scope: !363) | |
!363 = distinct !DILexicalBlock(scope: !357, file: !6, line: 168) | |
!364 = !DILocation(line: 168, scope: !357) | |
!365 = !DILocation(line: 169, scope: !366) | |
!366 = distinct !DILexicalBlock(scope: !357, file: !6, line: 169) | |
!367 = !DILocation(line: 169, scope: !357) | |
!368 = !DILocation(line: 170, scope: !369) | |
!369 = distinct !DILexicalBlock(scope: !357, file: !6, line: 170) | |
!370 = !DILocation(line: 170, scope: !357) | |
!371 = !DILocation(line: 171, scope: !357) | |
!372 = !DILocation(line: 174, scope: !373) | |
!373 = distinct !DILexicalBlock(scope: !374, file: !6, line: 174) | |
!374 = distinct !DILexicalBlock(scope: !353, file: !6, line: 173) | |
!375 = !DILocation(line: 174, scope: !374) | |
!376 = !DILocation(line: 175, scope: !377) | |
!377 = distinct !DILexicalBlock(scope: !374, file: !6, line: 175) | |
!378 = !DILocation(line: 175, scope: !374) | |
!379 = !DILocation(line: 176, scope: !380) | |
!380 = distinct !DILexicalBlock(scope: !374, file: !6, line: 176) | |
!381 = !DILocation(line: 176, scope: !374) | |
!382 = !DILocation(line: 177, scope: !383) | |
!383 = distinct !DILexicalBlock(scope: !374, file: !6, line: 177) | |
!384 = !DILocation(line: 177, scope: !374) | |
!385 = !DILocation(line: 180, scope: !386) | |
!386 = distinct !DILexicalBlock(scope: !319, file: !6, line: 180) | |
!387 = !DILocation(line: 180, scope: !319) | |
!388 = !DILocalVariable(name: "clsopt", scope: !389, file: !6, line: 182, type: !41) | |
!389 = distinct !DILexicalBlock(scope: !386, file: !6, line: 181) | |
!390 = !DILocation(line: 182, scope: !389) | |
!391 = !DILocalVariable(name: "max_class_infos", scope: !389, file: !6, line: 183, type: !392) | |
!392 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !393) | |
!393 = !DIDerivedType(tag: DW_TAG_typedef, name: "size_t", file: !6, line: 29, baseType: !394) | |
!394 = !DIBasicType(name: "unsigned long", size: 64, encoding: DW_ATE_unsigned) | |
!395 = !DILocation(line: 183, scope: !389) | |
!396 = !DILocation(line: 185, scope: !397) | |
!397 = distinct !DILexicalBlock(scope: !389, file: !6, line: 185) | |
!398 = !DILocation(line: 185, scope: !389) | |
!399 = !DILocalVariable(name: "class_infos", scope: !389, file: !6, line: 187, type: !63) | |
!400 = !DILocation(line: 187, scope: !389) | |
!401 = !DILocalVariable(name: "checkbytes", scope: !389, file: !6, line: 189, type: !402) | |
!402 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !403, size: 64) | |
!403 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !58) | |
!404 = !DILocation(line: 189, scope: !389) | |
!405 = !DILocalVariable(name: "offsets", scope: !389, file: !6, line: 190, type: !72) | |
!406 = !DILocation(line: 190, scope: !389) | |
!407 = !DILocalVariable(name: "classOffsets", scope: !389, file: !6, line: 191, type: !74) | |
!408 = !DILocation(line: 191, scope: !389) | |
!409 = !DILocation(line: 193, scope: !410) | |
!410 = distinct !DILexicalBlock(scope: !389, file: !6, line: 193) | |
!411 = !DILocation(line: 193, scope: !389) | |
!412 = !DILocation(line: 194, scope: !413) | |
!413 = distinct !DILexicalBlock(scope: !389, file: !6, line: 194) | |
!414 = !DILocation(line: 194, scope: !389) | |
!415 = !DILocation(line: 195, scope: !416) | |
!416 = distinct !DILexicalBlock(scope: !389, file: !6, line: 195) | |
!417 = !DILocation(line: 195, scope: !389) | |
!418 = !DILocalVariable(name: "i", scope: !419, file: !6, line: 197, type: !12) | |
!419 = distinct !DILexicalBlock(scope: !389, file: !6, line: 197) | |
!420 = !DILocation(line: 197, scope: !419) | |
!421 = !DILocation(line: 197, scope: !422) | |
!422 = distinct !DILexicalBlock(scope: !419, file: !6, line: 197) | |
!423 = !DILocalVariable(name: "objectCacheOffset", scope: !424, file: !6, line: 199, type: !425) | |
!424 = distinct !DILexicalBlock(scope: !422, file: !6, line: 198) | |
!425 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !5) | |
!426 = !DILocation(line: 199, scope: !424) | |
!427 = !DILocation(line: 200, scope: !428) | |
!428 = distinct !DILexicalBlock(scope: !424, file: !6, line: 200) | |
!429 = !DILocation(line: 200, scope: !424) | |
!430 = !DILocation(line: 202, scope: !431) | |
!431 = distinct !DILexicalBlock(scope: !424, file: !6, line: 202) | |
!432 = !DILocation(line: 202, scope: !424) | |
!433 = !DILocation(line: 203, scope: !434) | |
!434 = distinct !DILexicalBlock(scope: !435, file: !6, line: 203) | |
!435 = distinct !DILexicalBlock(scope: !431, file: !6, line: 202) | |
!436 = !DILocation(line: 203, scope: !435) | |
!437 = !DILocation(line: 204, scope: !435) | |
!438 = !DILocation(line: 207, scope: !439) | |
!439 = distinct !DILexicalBlock(scope: !424, file: !6, line: 207) | |
!440 = !DILocation(line: 207, scope: !424) | |
!441 = !DILocation(line: 208, scope: !442) | |
!442 = distinct !DILexicalBlock(scope: !443, file: !6, line: 208) | |
!443 = distinct !DILexicalBlock(scope: !439, file: !6, line: 207) | |
!444 = !DILocation(line: 208, scope: !443) | |
!445 = !DILocation(line: 209, scope: !443) | |
!446 = !DILocation(line: 212, scope: !447) | |
!447 = distinct !DILexicalBlock(scope: !424, file: !6, line: 212) | |
!448 = !DILocation(line: 212, scope: !424) | |
!449 = !DILocation(line: 214, scope: !450) | |
!450 = distinct !DILexicalBlock(scope: !447, file: !6, line: 213) | |
!451 = !DILocalVariable(name: "name", scope: !450, file: !6, line: 217, type: !214) | |
!452 = !DILocation(line: 217, scope: !450) | |
!453 = !DILocation(line: 218, scope: !454) | |
!454 = distinct !DILexicalBlock(scope: !450, file: !6, line: 218) | |
!455 = !DILocation(line: 218, scope: !450) | |
!456 = !DILocalVariable(name: "s", scope: !450, file: !6, line: 221, type: !214) | |
!457 = !DILocation(line: 221, scope: !450) | |
!458 = !DILocalVariable(name: "h", scope: !450, file: !6, line: 222, type: !12) | |
!459 = !DILocation(line: 222, scope: !450) | |
!460 = !DILocalVariable(name: "c", scope: !461, file: !6, line: 223, type: !59) | |
!461 = distinct !DILexicalBlock(scope: !450, file: !6, line: 223) | |
!462 = !DILocation(line: 223, scope: !461) | |
!463 = !DILocation(line: 223, scope: !464) | |
!464 = distinct !DILexicalBlock(scope: !461, file: !6, line: 223) | |
!465 = !DILocation(line: 229, scope: !466) | |
!466 = distinct !DILexicalBlock(scope: !467, file: !6, line: 229) | |
!467 = distinct !DILexicalBlock(scope: !464, file: !6, line: 224) | |
!468 = !DILocation(line: 229, scope: !467) | |
!469 = !DILocation(line: 231, scope: !470) | |
!470 = distinct !DILexicalBlock(scope: !466, file: !6, line: 230) | |
!471 = !DILocation(line: 232, scope: !470) | |
!472 = !DILocation(line: 234, scope: !467) | |
!473 = !DILocation(line: 235, scope: !467) | |
!474 = distinct !{!474, !462, !475, !476} | |
!475 = !DILocation(line: 235, scope: !461) | |
!476 = !{!"llvm.loop.mustprogress"} | |
!477 = !DILocation(line: 236, scope: !450) | |
!478 = !DILocation(line: 237, scope: !450) | |
!479 = !DILocation(line: 240, scope: !480) | |
!480 = distinct !DILexicalBlock(scope: !481, file: !6, line: 240) | |
!481 = distinct !DILexicalBlock(scope: !447, file: !6, line: 239) | |
!482 = !DILocation(line: 240, scope: !481) | |
!483 = !DILocation(line: 242, scope: !424) | |
!484 = !DILocation(line: 243, scope: !424) | |
!485 = distinct !{!485, !420, !486, !476} | |
!486 = !DILocation(line: 243, scope: !419) | |
!487 = !DILocalVariable(name: "duplicate_count_ptr", scope: !389, file: !6, line: 245, type: !488) | |
!488 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !489, size: 64) | |
!489 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !12) | |
!490 = !DILocation(line: 245, scope: !389) | |
!491 = !DILocalVariable(name: "duplicate_count", scope: !389, file: !6, line: 246, type: !489) | |
!492 = !DILocation(line: 246, scope: !389) | |
!493 = !DILocalVariable(name: "duplicateClassOffsets", scope: !389, file: !6, line: 247, type: !74) | |
!494 = !DILocation(line: 247, scope: !389) | |
!495 = !DILocation(line: 249, scope: !496) | |
!496 = distinct !DILexicalBlock(scope: !389, file: !6, line: 249) | |
!497 = !DILocation(line: 249, scope: !389) | |
!498 = !DILocation(line: 250, scope: !499) | |
!499 = distinct !DILexicalBlock(scope: !389, file: !6, line: 250) | |
!500 = !DILocation(line: 250, scope: !389) | |
!501 = !DILocalVariable(name: "i", scope: !502, file: !6, line: 252, type: !12) | |
!502 = distinct !DILexicalBlock(scope: !389, file: !6, line: 252) | |
!503 = !DILocation(line: 252, scope: !502) | |
!504 = !DILocation(line: 252, scope: !505) | |
!505 = distinct !DILexicalBlock(scope: !502, file: !6, line: 252) | |
!506 = !DILocalVariable(name: "objectCacheOffset", scope: !507, file: !6, line: 254, type: !425) | |
!507 = distinct !DILexicalBlock(scope: !505, file: !6, line: 253) | |
!508 = !DILocation(line: 254, scope: !507) | |
!509 = !DILocation(line: 255, scope: !510) | |
!510 = distinct !DILexicalBlock(scope: !507, file: !6, line: 255) | |
!511 = !DILocation(line: 255, scope: !507) | |
!512 = !DILocation(line: 257, scope: !513) | |
!513 = distinct !DILexicalBlock(scope: !507, file: !6, line: 257) | |
!514 = !DILocation(line: 257, scope: !507) | |
!515 = !DILocation(line: 258, scope: !516) | |
!516 = distinct !DILexicalBlock(scope: !517, file: !6, line: 258) | |
!517 = distinct !DILexicalBlock(scope: !513, file: !6, line: 257) | |
!518 = !DILocation(line: 258, scope: !517) | |
!519 = !DILocation(line: 259, scope: !517) | |
!520 = !DILocation(line: 262, scope: !521) | |
!521 = distinct !DILexicalBlock(scope: !507, file: !6, line: 262) | |
!522 = !DILocation(line: 262, scope: !507) | |
!523 = !DILocation(line: 263, scope: !524) | |
!524 = distinct !DILexicalBlock(scope: !525, file: !6, line: 263) | |
!525 = distinct !DILexicalBlock(scope: !521, file: !6, line: 262) | |
!526 = !DILocation(line: 263, scope: !525) | |
!527 = !DILocation(line: 264, scope: !525) | |
!528 = !DILocation(line: 267, scope: !529) | |
!529 = distinct !DILexicalBlock(scope: !507, file: !6, line: 267) | |
!530 = !DILocation(line: 267, scope: !507) | |
!531 = !DILocation(line: 269, scope: !532) | |
!532 = distinct !DILexicalBlock(scope: !529, file: !6, line: 268) | |
!533 = !DILocalVariable(name: "name", scope: !532, file: !6, line: 272, type: !214) | |
!534 = !DILocation(line: 272, scope: !532) | |
!535 = !DILocation(line: 273, scope: !536) | |
!536 = distinct !DILexicalBlock(scope: !532, file: !6, line: 273) | |
!537 = !DILocation(line: 273, scope: !532) | |
!538 = !DILocalVariable(name: "s", scope: !532, file: !6, line: 276, type: !214) | |
!539 = !DILocation(line: 276, scope: !532) | |
!540 = !DILocalVariable(name: "h", scope: !532, file: !6, line: 277, type: !12) | |
!541 = !DILocation(line: 277, scope: !532) | |
!542 = !DILocalVariable(name: "c", scope: !543, file: !6, line: 278, type: !59) | |
!543 = distinct !DILexicalBlock(scope: !532, file: !6, line: 278) | |
!544 = !DILocation(line: 278, scope: !543) | |
!545 = !DILocation(line: 278, scope: !546) | |
!546 = distinct !DILexicalBlock(scope: !543, file: !6, line: 278) | |
!547 = !DILocation(line: 284, scope: !548) | |
!548 = distinct !DILexicalBlock(scope: !549, file: !6, line: 284) | |
!549 = distinct !DILexicalBlock(scope: !546, file: !6, line: 279) | |
!550 = !DILocation(line: 284, scope: !549) | |
!551 = !DILocation(line: 286, scope: !552) | |
!552 = distinct !DILexicalBlock(scope: !548, file: !6, line: 285) | |
!553 = !DILocation(line: 287, scope: !552) | |
!554 = !DILocation(line: 289, scope: !549) | |
!555 = !DILocation(line: 290, scope: !549) | |
!556 = distinct !{!556, !544, !557, !476} | |
!557 = !DILocation(line: 290, scope: !543) | |
!558 = !DILocation(line: 291, scope: !532) | |
!559 = !DILocation(line: 292, scope: !532) | |
!560 = !DILocation(line: 293, scope: !507) | |
!561 = distinct !{!561, !503, !562, !476} | |
!562 = !DILocation(line: 293, scope: !502) | |
!563 = !DILocation(line: 294, scope: !389) | |
!564 = !DILocation(line: 295, scope: !565) | |
!565 = distinct !DILexicalBlock(scope: !386, file: !6, line: 295) | |
!566 = !DILocation(line: 295, scope: !386) | |
!567 = !DILocalVariable(name: "clsopt", scope: !568, file: !6, line: 297, type: !82) | |
!568 = distinct !DILexicalBlock(scope: !565, file: !6, line: 296) | |
!569 = !DILocation(line: 297, scope: !568) | |
!570 = !DILocation(line: 298, scope: !571) | |
!571 = distinct !DILexicalBlock(scope: !568, file: !6, line: 298) | |
!572 = !DILocation(line: 298, scope: !568) | |
!573 = !DILocation(line: 299, scope: !571) | |
!574 = !DILocation(line: 301, scope: !571) | |
!575 = !DILocalVariable(name: "max_class_infos", scope: !568, file: !6, line: 302, type: !392) | |
!576 = !DILocation(line: 302, scope: !568) | |
!577 = !DILocation(line: 303, scope: !578) | |
!578 = distinct !DILexicalBlock(scope: !568, file: !6, line: 303) | |
!579 = !DILocation(line: 303, scope: !568) | |
!580 = !DILocalVariable(name: "class_infos", scope: !568, file: !6, line: 304, type: !63) | |
!581 = !DILocation(line: 304, scope: !568) | |
!582 = !DILocalVariable(name: "invalidEntryOffset", scope: !568, file: !6, line: 305, type: !15) | |
!583 = !DILocation(line: 305, scope: !568) | |
!584 = !DILocation(line: 307, scope: !585) | |
!585 = distinct !DILexicalBlock(scope: !568, file: !6, line: 307) | |
!586 = !DILocation(line: 307, scope: !568) | |
!587 = !DILocation(line: 308, scope: !585) | |
!588 = !DILocalVariable(name: "checkbytes", scope: !568, file: !6, line: 309, type: !402) | |
!589 = !DILocation(line: 309, scope: !568) | |
!590 = !DILocalVariable(name: "offsets", scope: !568, file: !6, line: 310, type: !72) | |
!591 = !DILocation(line: 310, scope: !568) | |
!592 = !DILocalVariable(name: "classOffsets", scope: !568, file: !6, line: 311, type: !95) | |
!593 = !DILocation(line: 311, scope: !568) | |
!594 = !DILocation(line: 312, scope: !595) | |
!595 = distinct !DILexicalBlock(scope: !568, file: !6, line: 312) | |
!596 = !DILocation(line: 312, scope: !568) | |
!597 = !DILocation(line: 313, scope: !598) | |
!598 = distinct !DILexicalBlock(scope: !568, file: !6, line: 313) | |
!599 = !DILocation(line: 313, scope: !568) | |
!600 = !DILocation(line: 314, scope: !601) | |
!601 = distinct !DILexicalBlock(scope: !568, file: !6, line: 314) | |
!602 = !DILocation(line: 314, scope: !568) | |
!603 = !DILocation(line: 315, scope: !604) | |
!604 = distinct !DILexicalBlock(scope: !568, file: !6, line: 315) | |
!605 = !DILocation(line: 315, scope: !568) | |
!606 = !DILocalVariable(name: "i", scope: !607, file: !6, line: 316, type: !12) | |
!607 = distinct !DILexicalBlock(scope: !568, file: !6, line: 316) | |
!608 = !DILocation(line: 316, scope: !607) | |
!609 = !DILocation(line: 316, scope: !610) | |
!610 = distinct !DILexicalBlock(scope: !607, file: !6, line: 316) | |
!611 = !DILocalVariable(name: "clsOffset", scope: !612, file: !6, line: 318, type: !73) | |
!612 = distinct !DILexicalBlock(scope: !610, file: !6, line: 317) | |
!613 = !DILocation(line: 318, scope: !612) | |
!614 = !DILocation(line: 319, scope: !615) | |
!615 = distinct !DILexicalBlock(scope: !612, file: !6, line: 319) | |
!616 = !DILocation(line: 319, scope: !612) | |
!617 = !DILocation(line: 320, scope: !618) | |
!618 = distinct !DILexicalBlock(scope: !612, file: !6, line: 320) | |
!619 = !DILocation(line: 320, scope: !612) | |
!620 = !DILocation(line: 322, scope: !621) | |
!621 = distinct !DILexicalBlock(scope: !622, file: !6, line: 322) | |
!622 = distinct !DILexicalBlock(scope: !618, file: !6, line: 321) | |
!623 = !DILocation(line: 322, scope: !622) | |
!624 = !DILocation(line: 323, scope: !622) | |
!625 = !DILocation(line: 325, scope: !626) | |
!626 = distinct !DILexicalBlock(scope: !618, file: !6, line: 325) | |
!627 = !DILocation(line: 325, scope: !618) | |
!628 = !DILocation(line: 327, scope: !629) | |
!629 = distinct !DILexicalBlock(scope: !630, file: !6, line: 327) | |
!630 = distinct !DILexicalBlock(scope: !626, file: !6, line: 326) | |
!631 = !DILocation(line: 327, scope: !630) | |
!632 = !DILocation(line: 328, scope: !630) | |
!633 = !DILocation(line: 331, scope: !634) | |
!634 = distinct !DILexicalBlock(scope: !612, file: !6, line: 331) | |
!635 = !DILocation(line: 331, scope: !612) | |
!636 = !DILocation(line: 333, scope: !637) | |
!637 = distinct !DILexicalBlock(scope: !634, file: !6, line: 332) | |
!638 = !DILocalVariable(name: "name", scope: !637, file: !6, line: 334, type: !214) | |
!639 = !DILocation(line: 334, scope: !637) | |
!640 = !DILocation(line: 335, scope: !641) | |
!641 = distinct !DILexicalBlock(scope: !637, file: !6, line: 335) | |
!642 = !DILocation(line: 335, scope: !637) | |
!643 = !DILocalVariable(name: "s", scope: !637, file: !6, line: 337, type: !214) | |
!644 = !DILocation(line: 337, scope: !637) | |
!645 = !DILocalVariable(name: "h", scope: !637, file: !6, line: 338, type: !12) | |
!646 = !DILocation(line: 338, scope: !637) | |
!647 = !DILocalVariable(name: "c", scope: !648, file: !6, line: 339, type: !59) | |
!648 = distinct !DILexicalBlock(scope: !637, file: !6, line: 339) | |
!649 = !DILocation(line: 339, scope: !648) | |
!650 = !DILocation(line: 339, scope: !651) | |
!651 = distinct !DILexicalBlock(scope: !648, file: !6, line: 339) | |
!652 = !DILocation(line: 345, scope: !653) | |
!653 = distinct !DILexicalBlock(scope: !654, file: !6, line: 345) | |
!654 = distinct !DILexicalBlock(scope: !651, file: !6, line: 340) | |
!655 = !DILocation(line: 345, scope: !654) | |
!656 = !DILocation(line: 347, scope: !657) | |
!657 = distinct !DILexicalBlock(scope: !653, file: !6, line: 346) | |
!658 = !DILocation(line: 348, scope: !657) | |
!659 = !DILocation(line: 350, scope: !654) | |
!660 = !DILocation(line: 351, scope: !654) | |
!661 = distinct !{!661, !649, !662, !476} | |
!662 = !DILocation(line: 351, scope: !648) | |
!663 = !DILocation(line: 352, scope: !637) | |
!664 = !DILocation(line: 353, scope: !637) | |
!665 = !DILocation(line: 356, scope: !666) | |
!666 = distinct !DILexicalBlock(scope: !667, file: !6, line: 356) | |
!667 = distinct !DILexicalBlock(scope: !634, file: !6, line: 355) | |
!668 = !DILocation(line: 356, scope: !667) | |
!669 = !DILocation(line: 358, scope: !612) | |
!670 = !DILocation(line: 359, scope: !612) | |
!671 = distinct !{!671, !608, !672, !476} | |
!672 = !DILocation(line: 359, scope: !607) | |
!673 = !DILocalVariable(name: "duplicate_count_ptr", scope: !568, file: !6, line: 361, type: !488) | |
!674 = !DILocation(line: 361, scope: !568) | |
!675 = !DILocalVariable(name: "duplicate_count", scope: !568, file: !6, line: 362, type: !489) | |
!676 = !DILocation(line: 362, scope: !568) | |
!677 = !DILocalVariable(name: "duplicateClassOffsets", scope: !568, file: !6, line: 363, type: !95) | |
!678 = !DILocation(line: 363, scope: !568) | |
!679 = !DILocation(line: 364, scope: !680) | |
!680 = distinct !DILexicalBlock(scope: !568, file: !6, line: 364) | |
!681 = !DILocation(line: 364, scope: !568) | |
!682 = !DILocation(line: 365, scope: !683) | |
!683 = distinct !DILexicalBlock(scope: !568, file: !6, line: 365) | |
!684 = !DILocation(line: 365, scope: !568) | |
!685 = !DILocalVariable(name: "i", scope: !686, file: !6, line: 366, type: !12) | |
!686 = distinct !DILexicalBlock(scope: !568, file: !6, line: 366) | |
!687 = !DILocation(line: 366, scope: !686) | |
!688 = !DILocation(line: 366, scope: !689) | |
!689 = distinct !DILexicalBlock(scope: !686, file: !6, line: 366) | |
!690 = !DILocalVariable(name: "clsOffset", scope: !691, file: !6, line: 368, type: !73) | |
!691 = distinct !DILexicalBlock(scope: !689, file: !6, line: 367) | |
!692 = !DILocation(line: 368, scope: !691) | |
!693 = !DILocation(line: 369, scope: !694) | |
!694 = distinct !DILexicalBlock(scope: !691, file: !6, line: 369) | |
!695 = !DILocation(line: 369, scope: !691) | |
!696 = !DILocation(line: 370, scope: !694) | |
!697 = !DILocation(line: 371, scope: !698) | |
!698 = distinct !DILexicalBlock(scope: !694, file: !6, line: 371) | |
!699 = !DILocation(line: 371, scope: !694) | |
!700 = !DILocation(line: 372, scope: !698) | |
!701 = !DILocation(line: 374, scope: !702) | |
!702 = distinct !DILexicalBlock(scope: !691, file: !6, line: 374) | |
!703 = !DILocation(line: 374, scope: !691) | |
!704 = !DILocation(line: 376, scope: !705) | |
!705 = distinct !DILexicalBlock(scope: !702, file: !6, line: 375) | |
!706 = !DILocalVariable(name: "name", scope: !705, file: !6, line: 377, type: !214) | |
!707 = !DILocation(line: 377, scope: !705) | |
!708 = !DILocation(line: 378, scope: !709) | |
!709 = distinct !DILexicalBlock(scope: !705, file: !6, line: 378) | |
!710 = !DILocation(line: 378, scope: !705) | |
!711 = !DILocalVariable(name: "s", scope: !705, file: !6, line: 380, type: !214) | |
!712 = !DILocation(line: 380, scope: !705) | |
!713 = !DILocalVariable(name: "h", scope: !705, file: !6, line: 381, type: !12) | |
!714 = !DILocation(line: 381, scope: !705) | |
!715 = !DILocalVariable(name: "c", scope: !716, file: !6, line: 382, type: !59) | |
!716 = distinct !DILexicalBlock(scope: !705, file: !6, line: 382) | |
!717 = !DILocation(line: 382, scope: !716) | |
!718 = !DILocation(line: 382, scope: !719) | |
!719 = distinct !DILexicalBlock(scope: !716, file: !6, line: 382) | |
!720 = !DILocation(line: 388, scope: !721) | |
!721 = distinct !DILexicalBlock(scope: !722, file: !6, line: 388) | |
!722 = distinct !DILexicalBlock(scope: !719, file: !6, line: 383) | |
!723 = !DILocation(line: 388, scope: !722) | |
!724 = !DILocation(line: 390, scope: !725) | |
!725 = distinct !DILexicalBlock(scope: !721, file: !6, line: 389) | |
!726 = !DILocation(line: 391, scope: !725) | |
!727 = !DILocation(line: 393, scope: !722) | |
!728 = !DILocation(line: 394, scope: !722) | |
!729 = distinct !{!729, !717, !730, !476} | |
!730 = !DILocation(line: 394, scope: !716) | |
!731 = !DILocation(line: 395, scope: !705) | |
!732 = !DILocation(line: 396, scope: !705) | |
!733 = !DILocation(line: 397, scope: !691) | |
!734 = !DILocation(line: 398, scope: !691) | |
!735 = distinct !{!735, !687, !736, !476} | |
!736 = !DILocation(line: 398, scope: !686) | |
!737 = !DILocation(line: 399, scope: !568) | |
!738 = !DILocation(line: 400, scope: !739) | |
!739 = distinct !DILexicalBlock(scope: !319, file: !6, line: 400) | |
!740 = !DILocation(line: 400, scope: !319) | |
!741 = !DILocation(line: 401, scope: !742) | |
!742 = distinct !DILexicalBlock(scope: !319, file: !6, line: 401) | |
!743 = !DILocation(line: 401, scope: !319) | |
!744 = !DILocation(line: 402, scope: !319) | |
!745 = !DILocation(line: 403, scope: !230) | |
IRExecutionUnit::allocateCodeSection(Size=0x15af, Alignment=8, SectionID=0) = 0x1057fc000 | |
IRExecutionUnit::allocateDataSection(Size=0x307, Alignment=8, SectionID=1) = 0x107ffc000 | |
IRExecutionUnit::allocateDataSection(Size=0x17, Alignment=8, SectionID=2) = 0x107ffc308 | |
IRExecutionUnit::allocateDataSection(Size=0xf, Alignment=8, SectionID=3) = 0x107ffc320 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=4) = 0x107ffc330 | |
IRExecutionUnit::allocateDataSection(Size=0x159, Alignment=8, SectionID=5) = 0x107ffc348 | |
IRExecutionUnit::allocateDataSection(Size=0xc90, Alignment=8, SectionID=6) = 0x107ffc4a8 | |
IRExecutionUnit::allocateDataSection(Size=0x4ea, Alignment=8, SectionID=7) = 0x107ffd138 | |
IRExecutionUnit::allocateDataSection(Size=0x10a, Alignment=8, SectionID=8) = 0x107ffd628 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=9) = 0x107ffd738 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=10) = 0x107ffd770 | |
IRExecutionUnit::allocateDataSection(Size=0x295, Alignment=8, SectionID=11) = 0x107ffd7a8 | |
IRExecutionUnit::allocateDataSection(Size=0x2e6, Alignment=8, SectionID=12) = 0x107ffda40 | |
IRMemoryMap::Malloc (5559, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11d0fc000 | |
IRMemoryMap::Malloc (783, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8120 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8430 | |
IRMemoryMap::Malloc (23, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8450 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8470 | |
IRExecutionUnit::getSymbolAddress(Name="_objc_debug_class_getNameRaw") = 18a621204 | |
IRExecutionUnit::getSymbolAddress(Name="_printf") = 18a88001c | |
IRMemoryMap::WriteMemory (0x11d0fc000, 0x1057fc000, 0x5551) went to [0x11d0fc000..0x11d0fd5b7) | |
IRMemoryMap::WriteMemory (0x11d0f8120, 0x107ffc000, 0x775) went to [0x11d0f8120..0x11d0f842f) | |
IRMemoryMap::WriteMemory (0x11d0f8430, 0x107ffc308, 0x23) went to [0x11d0f8430..0x11d0f844f) | |
IRMemoryMap::WriteMemory (0x11d0f8450, 0x107ffc320, 0x15) went to [0x11d0f8450..0x11d0f8467) | |
IRMemoryMap::WriteMemory (0x11d0f8470, 0x107ffc330, 0x22) went to [0x11d0f8470..0x11d0f848f) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x1057fc000 in [0x1057fc000..0x1057fd5af], and returned 0x11d0fc000 from [0x11d0fc000..0x11d0fd5af]. | |
Code can be run in the target. | |
Found function, has local address 0x1057fc000 and remote address 0x11d0fc000 | |
Function's code range is [0x11d0fc000+0x15af] | |
Function data has contents: | |
0x11d0fc000: ff c3 06 d1 f4 4f 19 a9 fd 7b 1a a9 fd 83 06 91 | |
0x11d0fc010: f3 a3 02 91 60 72 00 f9 61 6e 00 f9 62 6a 00 f9 | |
0x11d0fc020: 63 66 00 f9 64 c6 00 b9 65 c2 00 b9 68 66 40 f9 | |
0x11d0fc030: 1f 01 00 f9 7f be 00 b9 68 c2 40 b9 08 01 00 34 | |
0x11d0fc040: 68 72 40 f9 e8 03 00 f9 00 00 00 b0 00 28 40 f9 | |
0x11d0fc050: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc060: 08 01 00 34 68 6e 40 f9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc070: 00 24 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc080: 68 c2 40 b9 08 01 00 34 68 6a 40 f9 e8 03 00 f9 | |
0x11d0fc090: 00 00 00 b0 00 20 40 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc0a0: 00 01 3f d6 68 c2 40 b9 88 01 00 34 68 c6 40 b9 | |
0x11d0fc0b0: 69 c6 40 b9 8a 01 80 d2 29 09 ca 9a e9 07 00 f9 | |
0x11d0fc0c0: e8 03 00 f9 00 00 00 b0 00 1c 40 f9 08 00 00 90 | |
0x11d0fc0d0: 08 b5 47 f9 00 01 3f d6 68 72 40 f9 a8 73 00 b4 | |
0x11d0fc0e0: 68 72 40 f9 68 5a 00 f9 68 72 40 f9 68 56 00 f9 | |
0x11d0fc0f0: 68 72 40 f9 68 52 00 f9 68 5a 40 f9 08 01 40 b9 | |
0x11d0fc100: 1f 41 00 71 03 07 00 54 68 52 40 f9 08 15 40 f9 | |
0x11d0fc110: 69 66 40 f9 28 01 00 f9 68 c2 40 b9 28 01 00 34 | |
0x11d0fc120: 68 52 40 f9 08 01 40 b9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc130: 00 0c 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc140: 68 c2 40 b9 28 01 00 34 68 52 40 f9 08 05 40 b9 | |
0x11d0fc150: e8 03 00 f9 00 00 00 b0 00 10 40 f9 08 00 00 90 | |
0x11d0fc160: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 28 01 00 34 | |
0x11d0fc170: 68 52 40 f9 08 09 40 b9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc180: 00 08 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc190: 68 c2 40 b9 28 01 00 34 68 52 40 f9 08 0d 40 b9 | |
0x11d0fc1a0: e8 03 00 f9 00 00 00 b0 00 18 40 f9 08 00 00 90 | |
0x11d0fc1b0: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 28 01 00 34 | |
0x11d0fc1c0: 68 66 40 f9 08 01 40 f9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc1d0: 00 14 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc1e0: 62 00 00 14 68 5a 40 f9 08 01 40 b9 1f 39 00 71 | |
0x11d0fc1f0: 83 06 00 54 68 c2 40 b9 28 01 00 34 68 56 40 f9 | |
0x11d0fc200: 08 01 40 b9 e8 03 00 f9 00 00 00 b0 00 0c 40 f9 | |
0x11d0fc210: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc220: 28 01 00 34 68 56 40 f9 08 05 40 b9 e8 03 00 f9 | |
0x11d0fc230: 00 00 00 b0 00 10 40 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc240: 00 01 3f d6 68 c2 40 b9 28 01 00 34 68 56 40 f9 | |
0x11d0fc250: 08 09 40 b9 e8 03 00 f9 00 00 00 b0 00 08 40 f9 | |
0x11d0fc260: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc270: 28 01 00 34 68 56 40 f9 08 0d 40 b9 e8 03 00 f9 | |
0x11d0fc280: 00 00 00 b0 00 04 40 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc290: 00 01 3f d6 68 c2 40 b9 28 01 00 34 68 56 40 f9 | |
0x11d0fc2a0: 08 11 40 b9 e8 03 00 f9 00 00 00 b0 00 00 40 f9 | |
0x11d0fc2b0: 08 00 00 90 08 b5 47 f9 00 01 3f d6 2a 00 00 14 | |
0x11d0fc2c0: 68 c2 40 b9 28 01 00 34 68 5a 40 f9 08 01 40 b9 | |
0x11d0fc2d0: e8 03 00 f9 00 00 00 b0 00 0c 40 f9 08 00 00 90 | |
0x11d0fc2e0: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 28 01 00 34 | |
0x11d0fc2f0: 68 5a 40 f9 08 05 40 b9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc300: 00 08 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc310: 68 c2 40 b9 28 01 00 34 68 5a 40 f9 08 09 40 b9 | |
0x11d0fc320: e8 03 00 f9 00 00 00 b0 00 04 40 f9 08 00 00 90 | |
0x11d0fc330: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 28 01 00 34 | |
0x11d0fc340: 68 5a 40 f9 08 0d 40 b9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc350: 00 00 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc360: 01 00 00 14 01 00 00 14 68 5a 40 f9 08 01 40 b9 | |
0x11d0fc370: 1f 41 00 71 01 2e 00 54 68 5a 40 f9 69 52 40 f9 | |
0x11d0fc380: 29 21 80 b9 08 01 09 8b 68 4e 00 f9 68 c6 40 b9 | |
0x11d0fc390: 89 01 80 d2 08 09 c9 9a 68 4a 00 f9 68 c2 40 b9 | |
0x11d0fc3a0: 08 01 00 34 68 4a 40 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fc3b0: 00 f0 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc3c0: 68 6a 40 f9 68 46 00 f9 68 4e 40 f9 08 81 10 91 | |
0x11d0fc3d0: 69 4e 40 f9 29 11 40 b9 29 05 00 11 29 7d 40 d3 | |
0x11d0fc3e0: 08 01 09 8b 68 42 00 f9 68 42 40 f9 69 4e 40 f9 | |
0x11d0fc3f0: 29 05 40 b9 08 01 09 8b 68 3e 00 f9 68 3e 40 f9 | |
0x11d0fc400: 69 4e 40 f9 29 05 40 b9 8a 00 80 d2 28 21 0a 9b | |
0x11d0fc410: 68 3a 00 f9 68 c2 40 b9 28 01 00 34 68 4e 40 f9 | |
0x11d0fc420: 08 05 40 b9 e8 03 00 f9 00 00 00 90 00 ec 47 f9 | |
0x11d0fc430: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc440: 28 01 00 34 68 4e 40 f9 08 11 40 b9 e8 03 00 f9 | |
0x11d0fc450: 00 00 00 90 00 e8 47 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc460: 00 01 3f d6 68 c2 40 b9 08 01 00 34 68 3a 40 f9 | |
0x11d0fc470: e8 03 00 f9 00 00 00 90 00 e4 47 f9 08 00 00 90 | |
0x11d0fc480: 08 b5 47 f9 00 01 3f d6 7f 6e 00 b9 68 6e 40 b9 | |
0x11d0fc490: 69 4e 40 f9 29 05 40 b9 1f 01 09 6b e2 10 00 54 | |
0x11d0fc4a0: 68 3a 40 f9 69 6e 40 b9 0a 01 80 d2 28 21 0a 9b | |
0x11d0fc4b0: 08 01 40 f9 08 fd 41 d3 08 b9 40 92 68 32 00 f9 | |
0x11d0fc4c0: 68 c2 40 b9 48 01 00 34 68 6e 40 b9 69 32 40 f9 | |
0x11d0fc4d0: e9 07 00 f9 e8 03 00 f9 00 00 00 90 00 fc 47 f9 | |
0x11d0fc4e0: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 3a 40 f9 | |
0x11d0fc4f0: 69 6e 40 b9 0a 01 80 d2 28 21 0a 9b 08 01 40 f9 | |
0x11d0fc500: 28 01 00 36 68 c2 40 b9 c8 00 00 34 00 00 00 90 | |
0x11d0fc510: 00 f8 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc520: 62 00 00 14 68 32 40 f9 28 01 00 b5 68 c2 40 b9 | |
0x11d0fc530: c8 00 00 34 00 00 00 90 00 f4 47 f9 08 00 00 90 | |
0x11d0fc540: 08 b5 47 f9 00 01 3f d6 58 00 00 14 68 46 40 f9 | |
0x11d0fc550: 68 09 00 b4 68 be 40 b9 69 4a 40 f9 1f 01 09 eb | |
0x11d0fc560: e2 08 00 54 68 6e 40 f9 69 32 40 f9 08 01 09 8b | |
0x11d0fc570: 69 46 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fc580: 28 01 00 f9 08 00 00 90 08 c5 47 f9 08 01 40 f9 | |
0x11d0fc590: 69 46 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fc5a0: 20 01 40 f9 00 01 3f d6 60 2e 00 f9 68 c2 40 b9 | |
0x11d0fc5b0: 08 02 00 34 68 be 40 b9 69 46 40 f9 6a be 40 b9 | |
0x11d0fc5c0: 8b 01 80 d2 49 25 0b 9b 29 01 40 f9 6a 2e 40 f9 | |
0x11d0fc5d0: ea 0b 00 f9 e9 07 00 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fc5e0: 00 c0 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc5f0: 68 2e 40 f9 68 2a 00 f9 a8 a0 82 52 68 4e 00 b9 | |
0x11d0fc600: 68 2a 40 f9 08 01 40 39 a8 33 15 38 a8 33 55 38 | |
0x11d0fc610: 08 1d 00 53 48 02 00 34 a8 33 55 38 1f b9 00 71 | |
0x11d0fc620: 61 00 00 54 7f 4e 00 b9 0e 00 00 14 68 4e 40 b9 | |
0x11d0fc630: 69 4e 40 b9 28 15 08 0b a9 33 55 38 08 01 09 0b | |
0x11d0fc640: 68 4e 00 b9 68 2a 40 f9 09 05 00 91 69 2a 00 f9 | |
0x11d0fc650: 08 05 40 39 a8 33 15 38 ed ff ff 17 01 00 00 14 | |
0x11d0fc660: 68 4e 40 b9 69 46 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fc670: 49 25 0b 9b 28 09 00 b9 09 00 00 14 68 c2 40 b9 | |
0x11d0fc680: c8 00 00 34 00 00 00 90 00 d0 47 f9 08 00 00 90 | |
0x11d0fc690: 08 b5 47 f9 00 01 3f d6 01 00 00 14 68 be 40 b9 | |
0x11d0fc6a0: 08 05 00 11 68 be 00 b9 68 6e 40 b9 08 05 00 11 | |
0x11d0fc6b0: 68 6e 00 b9 76 ff ff 17 68 3a 40 f9 69 4e 40 f9 | |
0x11d0fc6c0: 29 05 40 b9 0a 01 80 d2 28 21 0a 9b 68 22 00 f9 | |
0x11d0fc6d0: 68 22 40 f9 08 01 40 b9 68 3e 00 b9 68 22 40 f9 | |
0x11d0fc6e0: 08 11 00 91 68 1a 00 f9 68 c2 40 b9 08 01 00 34 | |
0x11d0fc6f0: 68 3e 40 b9 e8 03 00 f9 00 00 00 90 00 cc 47 f9 | |
0x11d0fc700: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc710: 08 01 00 34 68 1a 40 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fc720: 00 c8 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc730: 7f 2e 00 b9 68 2e 40 b9 69 3e 40 b9 1f 01 09 6b | |
0x11d0fc740: 82 0f 00 54 68 3a 40 f9 69 2e 40 b9 0a 01 80 d2 | |
0x11d0fc750: 28 21 0a 9b 08 01 40 f9 08 fd 41 d3 08 b9 40 92 | |
0x11d0fc760: 68 12 00 f9 68 c2 40 b9 48 01 00 34 68 2e 40 b9 | |
0x11d0fc770: 69 12 40 f9 e9 07 00 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fc780: 00 fc 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc790: 68 3a 40 f9 69 2e 40 b9 0a 01 80 d2 28 21 0a 9b | |
0x11d0fc7a0: 08 01 40 f9 28 01 00 36 68 c2 40 b9 c8 00 00 34 | |
0x11d0fc7b0: 00 00 00 90 00 f8 47 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc7c0: 00 01 3f d6 57 00 00 14 68 12 40 f9 28 01 00 b5 | |
0x11d0fc7d0: 68 c2 40 b9 c8 00 00 34 00 00 00 90 00 f4 47 f9 | |
0x11d0fc7e0: 08 00 00 90 08 b5 47 f9 00 01 3f d6 4d 00 00 14 | |
0x11d0fc7f0: 68 46 40 f9 48 09 00 b4 68 be 40 b9 69 4a 40 f9 | |
0x11d0fc800: 1f 01 09 eb c2 08 00 54 68 6e 40 f9 69 12 40 f9 | |
0x11d0fc810: 08 01 09 8b 69 46 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fc820: 49 25 0b 9b 28 01 00 f9 08 00 00 90 08 c5 47 f9 | |
0x11d0fc830: 08 01 40 f9 69 46 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fc840: 49 25 0b 9b 20 01 40 f9 00 01 3f d6 60 0e 00 f9 | |
0x11d0fc850: 68 c2 40 b9 08 02 00 34 68 be 40 b9 69 46 40 f9 | |
0x11d0fc860: 6a be 40 b9 8b 01 80 d2 49 25 0b 9b 29 01 40 f9 | |
0x11d0fc870: 6a 0e 40 f9 ea 0b 00 f9 e9 07 00 f9 e8 03 00 f9 | |
0x11d0fc880: 00 00 00 90 00 c0 47 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc890: 00 01 3f d6 68 0e 40 f9 68 0a 00 f9 a8 a0 82 52 | |
0x11d0fc8a0: 68 0e 00 b9 68 0a 40 f9 08 01 40 39 e8 cf 02 39 | |
0x11d0fc8b0: e8 cf 42 39 08 1d 00 53 48 02 00 34 e8 cf 42 39 | |
0x11d0fc8c0: 1f b9 00 71 61 00 00 54 7f 0e 00 b9 0e 00 00 14 | |
0x11d0fc8d0: 68 0e 40 b9 69 0e 40 b9 28 15 08 0b e9 cf 42 39 | |
0x11d0fc8e0: 08 01 09 0b 68 0e 00 b9 68 0a 40 f9 09 05 00 91 | |
0x11d0fc8f0: 69 0a 00 f9 08 05 40 39 e8 cf 02 39 ed ff ff 17 | |
0x11d0fc900: 01 00 00 14 68 0e 40 b9 69 46 40 f9 6a be 40 b9 | |
0x11d0fc910: 8b 01 80 d2 49 25 0b 9b 28 09 00 b9 01 00 00 14 | |
0x11d0fc920: 68 2e 40 b9 08 05 00 11 68 2e 00 b9 82 ff ff 17 | |
0x11d0fc930: 77 01 00 14 68 5a 40 f9 08 01 40 b9 1f 31 00 71 | |
0x11d0fc940: 43 2e 00 54 68 5a 40 f9 08 01 40 b9 1f 3d 00 71 | |
0x11d0fc950: c8 2d 00 54 7f 02 00 f9 68 5a 40 f9 08 01 40 b9 | |
0x11d0fc960: 1f 39 00 71 e3 00 00 54 68 56 40 f9 69 56 40 f9 | |
0x11d0fc970: 29 11 80 b9 08 01 09 8b 68 02 00 f9 06 00 00 14 | |
0x11d0fc980: 68 5a 40 f9 69 5a 40 f9 29 0d 80 b9 08 01 09 8b | |
0x11d0fc990: 68 02 00 f9 68 c6 40 b9 89 01 80 d2 08 09 c9 9a | |
0x11d0fc9a0: e8 53 00 f9 68 c2 40 b9 08 01 00 34 e8 53 40 f9 | |
0x11d0fc9b0: e8 03 00 f9 00 00 00 90 00 f0 47 f9 08 00 00 90 | |
0x11d0fc9c0: 08 b5 47 f9 00 01 3f d6 68 6a 40 f9 e8 4f 00 f9 | |
0x11d0fc9d0: ff 97 00 b9 68 5a 40 f9 08 01 40 b9 1f 31 00 71 | |
0x11d0fc9e0: 61 00 00 54 08 02 80 52 e8 97 00 b9 68 02 40 f9 | |
0x11d0fc9f0: 08 81 10 91 69 02 40 f9 29 0d 40 b9 29 05 00 11 | |
0x11d0fca00: 29 7d 40 d3 08 01 09 8b e8 47 00 f9 e8 47 40 f9 | |
0x11d0fca10: 69 02 40 f9 29 01 40 b9 08 01 09 8b e8 43 00 f9 | |
0x11d0fca20: e8 43 40 f9 69 02 40 f9 29 01 40 b9 8a 00 80 d2 | |
0x11d0fca30: 28 21 0a 9b e8 3f 00 f9 68 c2 40 b9 28 01 00 34 | |
0x11d0fca40: 68 02 40 f9 08 01 40 b9 e8 03 00 f9 00 00 00 90 | |
0x11d0fca50: 00 ec 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fca60: 68 c2 40 b9 28 01 00 34 68 02 40 f9 08 0d 40 b9 | |
0x11d0fca70: e8 03 00 f9 00 00 00 90 00 e8 47 f9 08 00 00 90 | |
0x11d0fca80: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 08 01 00 34 | |
0x11d0fca90: e8 3f 40 f9 e8 03 00 f9 00 00 00 90 00 e4 47 f9 | |
0x11d0fcaa0: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fcab0: 08 01 00 34 e8 97 40 b9 e8 03 00 f9 00 00 00 90 | |
0x11d0fcac0: 00 e0 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fcad0: ff 77 00 b9 e8 77 40 b9 69 02 40 f9 29 01 40 b9 | |
0x11d0fcae0: 1f 01 09 6b 82 10 00 54 e8 3f 40 f9 e9 77 40 b9 | |
0x11d0fcaf0: 0a 01 80 d2 28 21 0a 9b 08 01 40 b9 e8 73 00 b9 | |
0x11d0fcb00: 68 c2 40 b9 48 01 00 34 e8 77 40 b9 e9 73 40 b9 | |
0x11d0fcb10: e9 07 00 f9 e8 03 00 f9 00 00 00 90 00 dc 47 f9 | |
0x11d0fcb20: 08 00 00 90 08 b5 47 f9 00 01 3f d6 e8 73 40 b9 | |
0x11d0fcb30: 28 01 00 36 68 c2 40 b9 c8 00 00 34 00 00 00 90 | |
0x11d0fcb40: 00 d8 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fcb50: 65 00 00 14 e8 73 40 b9 e9 97 40 b9 1f 01 09 6b | |
0x11d0fcb60: 21 01 00 54 68 c2 40 b9 c8 00 00 34 00 00 00 90 | |
0x11d0fcb70: 00 d4 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fcb80: 59 00 00 14 01 00 00 14 e8 4f 40 f9 68 09 00 b4 | |
0x11d0fcb90: 68 be 40 b9 e9 53 40 f9 1f 01 09 eb e2 08 00 54 | |
0x11d0fcba0: 68 02 40 f9 e9 73 80 b9 08 01 09 8b e9 4f 40 f9 | |
0x11d0fcbb0: 6a be 40 b9 8b 01 80 d2 49 25 0b 9b 28 01 00 f9 | |
0x11d0fcbc0: 08 00 00 90 08 c5 47 f9 08 01 40 f9 e9 4f 40 f9 | |
0x11d0fcbd0: 6a be 40 b9 8b 01 80 d2 49 25 0b 9b 20 01 40 f9 | |
0x11d0fcbe0: 00 01 3f d6 e0 37 00 f9 68 c2 40 b9 08 02 00 34 | |
0x11d0fcbf0: 68 be 40 b9 e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fcc00: 49 25 0b 9b 29 01 40 f9 ea 37 40 f9 ea 0b 00 f9 | |
0x11d0fcc10: e9 07 00 f9 e8 03 00 f9 00 00 00 90 00 c0 47 f9 | |
0x11d0fcc20: 08 00 00 90 08 b5 47 f9 00 01 3f d6 e8 37 40 f9 | |
0x11d0fcc30: e8 33 00 f9 a8 a0 82 52 e8 5f 00 b9 e8 33 40 f9 | |
0x11d0fcc40: 08 01 40 39 e8 6f 01 39 e8 6f 41 39 08 1d 00 53 | |
0x11d0fcc50: 48 02 00 34 e8 6f 41 39 1f b9 00 71 61 00 00 54 | |
0x11d0fcc60: ff 5f 00 b9 0e 00 00 14 e8 5f 40 b9 e9 5f 40 b9 | |
0x11d0fcc70: 28 15 08 0b e9 6f 41 39 08 01 09 0b e8 5f 00 b9 | |
0x11d0fcc80: e8 33 40 f9 09 05 00 91 e9 33 00 f9 08 05 40 39 | |
0x11d0fcc90: e8 6f 01 39 ed ff ff 17 01 00 00 14 e8 5f 40 b9 | |
0x11d0fcca0: e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fccb0: 28 09 00 b9 09 00 00 14 68 c2 40 b9 c8 00 00 34 | |
0x11d0fccc0: 00 00 00 90 00 d0 47 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fccd0: 00 01 3f d6 01 00 00 14 68 be 40 b9 08 05 00 11 | |
0x11d0fcce0: 68 be 00 b9 e8 77 40 b9 08 05 00 11 e8 77 00 b9 | |
0x11d0fccf0: 79 ff ff 17 e8 3f 40 f9 69 02 40 f9 29 01 40 b9 | |
0x11d0fcd00: 0a 01 80 d2 28 21 0a 9b e8 2b 00 f9 e8 2b 40 f9 | |
0x11d0fcd10: 08 01 40 b9 e8 4f 00 b9 e8 2b 40 f9 08 11 00 91 | |
0x11d0fcd20: e8 23 00 f9 68 c2 40 b9 08 01 00 34 e8 4f 40 b9 | |
0x11d0fcd30: e8 03 00 f9 00 00 00 90 00 cc 47 f9 08 00 00 90 | |
0x11d0fcd40: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 08 01 00 34 | |
0x11d0fcd50: e8 23 40 f9 e8 03 00 f9 00 00 00 90 00 c8 47 f9 | |
0x11d0fcd60: 08 00 00 90 08 b5 47 f9 00 01 3f d6 ff 3f 00 b9 | |
0x11d0fcd70: e8 3f 40 b9 e9 4f 40 b9 1f 01 09 6b 42 0c 00 54 | |
0x11d0fcd80: e8 23 40 f9 e9 3f 40 b9 0a 01 80 d2 28 21 0a 9b | |
0x11d0fcd90: 08 01 40 b9 e8 3b 00 b9 e8 3b 40 b9 48 00 00 36 | |
0x11d0fcda0: 55 00 00 14 e8 3b 40 b9 e9 97 40 b9 1f 01 09 6b | |
0x11d0fcdb0: 41 00 00 54 50 00 00 14 01 00 00 14 e8 4f 40 f9 | |
0x11d0fcdc0: 48 09 00 b4 68 be 40 b9 e9 53 40 f9 1f 01 09 eb | |
0x11d0fcdd0: c2 08 00 54 68 02 40 f9 e9 3b 80 b9 08 01 09 8b | |
0x11d0fcde0: e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fcdf0: 28 01 00 f9 08 00 00 90 08 c5 47 f9 08 01 40 f9 | |
0x11d0fce00: e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fce10: 20 01 40 f9 00 01 3f d6 e0 1b 00 f9 68 c2 40 b9 | |
0x11d0fce20: 08 02 00 34 68 be 40 b9 e9 4f 40 f9 6a be 40 b9 | |
0x11d0fce30: 8b 01 80 d2 49 25 0b 9b 29 01 40 f9 ea 1b 40 f9 | |
0x11d0fce40: ea 0b 00 f9 e9 07 00 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fce50: 00 c0 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fce60: e8 1b 40 f9 e8 17 00 f9 a8 a0 82 52 e8 27 00 b9 | |
0x11d0fce70: e8 17 40 f9 08 01 40 39 e8 8f 00 39 e8 8f 40 39 | |
0x11d0fce80: 08 1d 00 53 48 02 00 34 e8 8f 40 39 1f b9 00 71 | |
0x11d0fce90: 61 00 00 54 ff 27 00 b9 0e 00 00 14 e8 27 40 b9 | |
0x11d0fcea0: e9 27 40 b9 28 15 08 0b e9 8f 40 39 08 01 09 0b | |
0x11d0fceb0: e8 27 00 b9 e8 17 40 f9 09 05 00 91 e9 17 00 f9 | |
0x11d0fcec0: 08 05 40 39 e8 8f 00 39 ed ff ff 17 01 00 00 14 | |
0x11d0fced0: e8 27 40 b9 e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fcee0: 49 25 0b 9b 28 09 00 b9 68 be 40 b9 08 05 00 11 | |
0x11d0fcef0: 68 be 00 b9 e8 3f 40 b9 08 05 00 11 e8 3f 00 b9 | |
0x11d0fcf00: 9c ff ff 17 01 00 00 14 01 00 00 14 68 c2 40 b9 | |
0x11d0fcf10: 08 01 00 34 68 be 40 b9 e8 03 00 f9 00 00 00 90 | |
0x11d0fcf20: 00 bc 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fcf30: 68 c2 40 b9 c8 00 00 34 00 00 00 90 00 b8 47 f9 | |
0x11d0fcf40: 08 00 00 90 08 b5 47 f9 00 01 3f d6 01 00 00 14 | |
0x11d0fcf50: 60 be 40 b9 fd 7b 5a a9 f4 4f 59 a9 ff c3 06 91 | |
0x11d0fcf60: c0 03 5f d6 00 00 00 00 1c 00 88 8a 01 00 00 00 | |
0x11d0fcf70: 13 84 0f 1d 01 00 00 00 03 84 0f 1d 01 00 00 00 | |
0x11d0fcf80: 36 83 0f 1d 01 00 00 00 30 84 0f 1d 01 00 00 00 | |
0x11d0fcf90: 8a 83 0f 1d 01 00 00 00 74 83 0f 1d 01 00 00 00 | |
0x11d0fcfa0: 49 83 0f 1d 01 00 00 00 e2 83 0f 1d 01 00 00 00 | |
0x11d0fcfb0: d3 83 0f 1d 01 00 00 00 bf 83 0f 1d 01 00 00 00 | |
0x11d0fcfc0: a6 83 0f 1d 01 00 00 00 ca 82 0f 1d 01 00 00 00 | |
0x11d0fcfd0: b2 82 0f 1d 01 00 00 00 9b 82 0f 1d 01 00 00 00 | |
0x11d0fcfe0: 83 82 0f 1d 01 00 00 00 0d 83 0f 1d 01 00 00 00 | |
0x11d0fcff0: f9 82 0f 1d 01 00 00 00 dd 82 0f 1d 01 00 00 00 | |
0x11d0fd000: 65 82 0f 1d 01 00 00 00 44 82 0f 1d 01 00 00 00 | |
0x11d0fd010: c5 81 0f 1d 01 00 00 00 97 81 0f 1d 01 00 00 00 | |
0x11d0fd020: af 81 0f 1d 01 00 00 00 07 82 0f 1d 01 00 00 00 | |
0x11d0fd030: e3 81 0f 1d 01 00 00 00 68 81 0f 1d 01 00 00 00 | |
0x11d0fd040: 52 81 0f 1d 01 00 00 00 36 81 0f 1d 01 00 00 00 | |
0x11d0fd050: 20 81 0f 1d 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd260: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd270: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd540: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd550: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd5a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
Function disassembly: | |
0x11d0fc000: 0xd106c3ff unknown sub sp, sp, #0x1b0 | |
0x11d0fc004: 0xa9194ff4 unknown stp x20, x19, [sp, #0x190] | |
0x11d0fc008: 0xa91a7bfd unknown stp x29, x30, [sp, #0x1a0] | |
0x11d0fc00c: 0x910683fd unknown add x29, sp, #0x1a0 | |
0x11d0fc010: 0x9102a3f3 unknown add x19, sp, #0xa8 | |
0x11d0fc014: 0xf9007260 unknown str x0, [x19, #0xe0] | |
0x11d0fc018: 0xf9006e61 unknown str x1, [x19, #0xd8] | |
0x11d0fc01c: 0xf9006a62 unknown str x2, [x19, #0xd0] | |
0x11d0fc020: 0xf9006663 unknown str x3, [x19, #0xc8] | |
0x11d0fc024: 0xb900c664 unknown str w4, [x19, #0xc4] | |
0x11d0fc028: 0xb900c265 unknown str w5, [x19, #0xc0] | |
0x11d0fc02c: 0xf9406668 unknown ldr x8, [x19, #0xc8] | |
0x11d0fc030: 0xf900011f unknown str xzr, [x8] | |
0x11d0fc034: 0xb900be7f unknown str wzr, [x19, #0xbc] | |
0x11d0fc038: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc03c: 0x34000108 unknown cbz w8, 0x11d0fc05c | |
0x11d0fc040: 0xf9407268 unknown ldr x8, [x19, #0xe0] | |
0x11d0fc044: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc048: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc04c: 0xf9402800 unknown ldr x0, [x0, #0x50] | |
0x11d0fc050: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc054: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc058: 0xd63f0100 unknown blr x8 | |
0x11d0fc05c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc060: 0x34000108 unknown cbz w8, 0x11d0fc080 | |
0x11d0fc064: 0xf9406e68 unknown ldr x8, [x19, #0xd8] | |
0x11d0fc068: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc06c: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc070: 0xf9402400 unknown ldr x0, [x0, #0x48] | |
0x11d0fc074: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc078: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc07c: 0xd63f0100 unknown blr x8 | |
0x11d0fc080: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc084: 0x34000108 unknown cbz w8, 0x11d0fc0a4 | |
0x11d0fc088: 0xf9406a68 unknown ldr x8, [x19, #0xd0] | |
0x11d0fc08c: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc090: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc094: 0xf9402000 unknown ldr x0, [x0, #0x40] | |
0x11d0fc098: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc09c: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc0a0: 0xd63f0100 unknown blr x8 | |
0x11d0fc0a4: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc0a8: 0x34000188 unknown cbz w8, 0x11d0fc0d8 | |
0x11d0fc0ac: 0xb940c668 unknown ldr w8, [x19, #0xc4] | |
0x11d0fc0b0: 0xb940c669 unknown ldr w9, [x19, #0xc4] | |
0x11d0fc0b4: 0xd280018a unknown mov x10, #0xc | |
0x11d0fc0b8: 0x9aca0929 unknown udiv x9, x9, x10 | |
0x11d0fc0bc: 0xf90007e9 unknown str x9, [sp, #0x8] | |
0x11d0fc0c0: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc0c4: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc0c8: 0xf9401c00 unknown ldr x0, [x0, #0x38] | |
0x11d0fc0cc: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc0d0: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc0d4: 0xd63f0100 unknown blr x8 | |
0x11d0fc0d8: 0xf9407268 unknown ldr x8, [x19, #0xe0] | |
0x11d0fc0dc: 0xb40073a8 unknown cbz x8, 0x11d0fcf50 | |
0x11d0fc0e0: 0xf9407268 unknown ldr x8, [x19, #0xe0] | |
0x11d0fc0e4: 0xf9005a68 unknown str x8, [x19, #0xb0] | |
0x11d0fc0e8: 0xf9407268 unknown ldr x8, [x19, #0xe0] | |
0x11d0fc0ec: 0xf9005668 unknown str x8, [x19, #0xa8] | |
0x11d0fc0f0: 0xf9407268 unknown ldr x8, [x19, #0xe0] | |
0x11d0fc0f4: 0xf9005268 unknown str x8, [x19, #0xa0] | |
0x11d0fc0f8: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc0fc: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc100: 0x7100411f unknown cmp w8, #0x10 | |
0x11d0fc104: 0x54000703 unknown b.lo 0x11d0fc1e4 | |
0x11d0fc108: 0xf9405268 unknown ldr x8, [x19, #0xa0] | |
0x11d0fc10c: 0xf9401508 unknown ldr x8, [x8, #0x28] | |
0x11d0fc110: 0xf9406669 unknown ldr x9, [x19, #0xc8] | |
0x11d0fc114: 0xf9000128 unknown str x8, [x9] | |
0x11d0fc118: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc11c: 0x34000128 unknown cbz w8, 0x11d0fc140 | |
0x11d0fc120: 0xf9405268 unknown ldr x8, [x19, #0xa0] | |
0x11d0fc124: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc128: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc12c: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc130: 0xf9400c00 unknown ldr x0, [x0, #0x18] | |
0x11d0fc134: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc138: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc13c: 0xd63f0100 unknown blr x8 | |
0x11d0fc140: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc144: 0x34000128 unknown cbz w8, 0x11d0fc168 | |
0x11d0fc148: 0xf9405268 unknown ldr x8, [x19, #0xa0] | |
0x11d0fc14c: 0xb9400508 unknown ldr w8, [x8, #0x4] | |
0x11d0fc150: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc154: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc158: 0xf9401000 unknown ldr x0, [x0, #0x20] | |
0x11d0fc15c: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc160: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc164: 0xd63f0100 unknown blr x8 | |
0x11d0fc168: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc16c: 0x34000128 unknown cbz w8, 0x11d0fc190 | |
0x11d0fc170: 0xf9405268 unknown ldr x8, [x19, #0xa0] | |
0x11d0fc174: 0xb9400908 unknown ldr w8, [x8, #0x8] | |
0x11d0fc178: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc17c: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc180: 0xf9400800 unknown ldr x0, [x0, #0x10] | |
0x11d0fc184: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc188: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc18c: 0xd63f0100 unknown blr x8 | |
0x11d0fc190: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc194: 0x34000128 unknown cbz w8, 0x11d0fc1b8 | |
0x11d0fc198: 0xf9405268 unknown ldr x8, [x19, #0xa0] | |
0x11d0fc19c: 0xb9400d08 unknown ldr w8, [x8, #0xc] | |
0x11d0fc1a0: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc1a4: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc1a8: 0xf9401800 unknown ldr x0, [x0, #0x30] | |
0x11d0fc1ac: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc1b0: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc1b4: 0xd63f0100 unknown blr x8 | |
0x11d0fc1b8: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc1bc: 0x34000128 unknown cbz w8, 0x11d0fc1e0 | |
0x11d0fc1c0: 0xf9406668 unknown ldr x8, [x19, #0xc8] | |
0x11d0fc1c4: 0xf9400108 unknown ldr x8, [x8] | |
0x11d0fc1c8: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc1cc: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc1d0: 0xf9401400 unknown ldr x0, [x0, #0x28] | |
0x11d0fc1d4: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc1d8: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc1dc: 0xd63f0100 unknown blr x8 | |
0x11d0fc1e0: 0x14000062 unknown b 0x11d0fc368 | |
0x11d0fc1e4: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc1e8: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc1ec: 0x7100391f unknown cmp w8, #0xe | |
0x11d0fc1f0: 0x54000683 unknown b.lo 0x11d0fc2c0 | |
0x11d0fc1f4: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc1f8: 0x34000128 unknown cbz w8, 0x11d0fc21c | |
0x11d0fc1fc: 0xf9405668 unknown ldr x8, [x19, #0xa8] | |
0x11d0fc200: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc204: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc208: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc20c: 0xf9400c00 unknown ldr x0, [x0, #0x18] | |
0x11d0fc210: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc214: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc218: 0xd63f0100 unknown blr x8 | |
0x11d0fc21c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc220: 0x34000128 unknown cbz w8, 0x11d0fc244 | |
0x11d0fc224: 0xf9405668 unknown ldr x8, [x19, #0xa8] | |
0x11d0fc228: 0xb9400508 unknown ldr w8, [x8, #0x4] | |
0x11d0fc22c: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc230: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc234: 0xf9401000 unknown ldr x0, [x0, #0x20] | |
0x11d0fc238: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc23c: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc240: 0xd63f0100 unknown blr x8 | |
0x11d0fc244: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc248: 0x34000128 unknown cbz w8, 0x11d0fc26c | |
0x11d0fc24c: 0xf9405668 unknown ldr x8, [x19, #0xa8] | |
0x11d0fc250: 0xb9400908 unknown ldr w8, [x8, #0x8] | |
0x11d0fc254: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc258: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc25c: 0xf9400800 unknown ldr x0, [x0, #0x10] | |
0x11d0fc260: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc264: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc268: 0xd63f0100 unknown blr x8 | |
0x11d0fc26c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc270: 0x34000128 unknown cbz w8, 0x11d0fc294 | |
0x11d0fc274: 0xf9405668 unknown ldr x8, [x19, #0xa8] | |
0x11d0fc278: 0xb9400d08 unknown ldr w8, [x8, #0xc] | |
0x11d0fc27c: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc280: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc284: 0xf9400400 unknown ldr x0, [x0, #0x8] | |
0x11d0fc288: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc28c: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc290: 0xd63f0100 unknown blr x8 | |
0x11d0fc294: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc298: 0x34000128 unknown cbz w8, 0x11d0fc2bc | |
0x11d0fc29c: 0xf9405668 unknown ldr x8, [x19, #0xa8] | |
0x11d0fc2a0: 0xb9401108 unknown ldr w8, [x8, #0x10] | |
0x11d0fc2a4: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc2a8: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc2ac: 0xf9400000 unknown ldr x0, [x0] | |
0x11d0fc2b0: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc2b4: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc2b8: 0xd63f0100 unknown blr x8 | |
0x11d0fc2bc: 0x1400002a unknown b 0x11d0fc364 | |
0x11d0fc2c0: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc2c4: 0x34000128 unknown cbz w8, 0x11d0fc2e8 | |
0x11d0fc2c8: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc2cc: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc2d0: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc2d4: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc2d8: 0xf9400c00 unknown ldr x0, [x0, #0x18] | |
0x11d0fc2dc: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc2e0: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc2e4: 0xd63f0100 unknown blr x8 | |
0x11d0fc2e8: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc2ec: 0x34000128 unknown cbz w8, 0x11d0fc310 | |
0x11d0fc2f0: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc2f4: 0xb9400508 unknown ldr w8, [x8, #0x4] | |
0x11d0fc2f8: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc2fc: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc300: 0xf9400800 unknown ldr x0, [x0, #0x10] | |
0x11d0fc304: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc308: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc30c: 0xd63f0100 unknown blr x8 | |
0x11d0fc310: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc314: 0x34000128 unknown cbz w8, 0x11d0fc338 | |
0x11d0fc318: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc31c: 0xb9400908 unknown ldr w8, [x8, #0x8] | |
0x11d0fc320: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc324: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc328: 0xf9400400 unknown ldr x0, [x0, #0x8] | |
0x11d0fc32c: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc330: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc334: 0xd63f0100 unknown blr x8 | |
0x11d0fc338: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc33c: 0x34000128 unknown cbz w8, 0x11d0fc360 | |
0x11d0fc340: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc344: 0xb9400d08 unknown ldr w8, [x8, #0xc] | |
0x11d0fc348: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc34c: 0xb0000000 unknown adrp x0, 1 | |
0x11d0fc350: 0xf9400000 unknown ldr x0, [x0] | |
0x11d0fc354: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc358: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc35c: 0xd63f0100 unknown blr x8 | |
0x11d0fc360: 0x14000001 unknown b 0x11d0fc364 | |
0x11d0fc364: 0x14000001 unknown b 0x11d0fc368 | |
0x11d0fc368: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc36c: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc370: 0x7100411f unknown cmp w8, #0x10 | |
0x11d0fc374: 0x54002e01 unknown b.ne 0x11d0fc934 | |
0x11d0fc378: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc37c: 0xf9405269 unknown ldr x9, [x19, #0xa0] | |
0x11d0fc380: 0xb9802129 unknown ldrsw x9, [x9, #0x20] | |
0x11d0fc384: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fc388: 0xf9004e68 unknown str x8, [x19, #0x98] | |
0x11d0fc38c: 0xb940c668 unknown ldr w8, [x19, #0xc4] | |
0x11d0fc390: 0xd2800189 unknown mov x9, #0xc | |
0x11d0fc394: 0x9ac90908 unknown udiv x8, x8, x9 | |
0x11d0fc398: 0xf9004a68 unknown str x8, [x19, #0x90] | |
0x11d0fc39c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc3a0: 0x34000108 unknown cbz w8, 0x11d0fc3c0 | |
0x11d0fc3a4: 0xf9404a68 unknown ldr x8, [x19, #0x90] | |
0x11d0fc3a8: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc3ac: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc3b0: 0xf947f000 unknown ldr x0, [x0, #0xfe0] | |
0x11d0fc3b4: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc3b8: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc3bc: 0xd63f0100 unknown blr x8 | |
0x11d0fc3c0: 0xf9406a68 unknown ldr x8, [x19, #0xd0] | |
0x11d0fc3c4: 0xf9004668 unknown str x8, [x19, #0x88] | |
0x11d0fc3c8: 0xf9404e68 unknown ldr x8, [x19, #0x98] | |
0x11d0fc3cc: 0x91108108 unknown add x8, x8, #0x420 | |
0x11d0fc3d0: 0xf9404e69 unknown ldr x9, [x19, #0x98] | |
0x11d0fc3d4: 0xb9401129 unknown ldr w9, [x9, #0x10] | |
0x11d0fc3d8: 0x11000529 unknown add w9, w9, #0x1 | |
0x11d0fc3dc: 0xd3407d29 unknown ubfx x9, x9, #0, #32 | |
0x11d0fc3e0: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fc3e4: 0xf9004268 unknown str x8, [x19, #0x80] | |
0x11d0fc3e8: 0xf9404268 unknown ldr x8, [x19, #0x80] | |
0x11d0fc3ec: 0xf9404e69 unknown ldr x9, [x19, #0x98] | |
0x11d0fc3f0: 0xb9400529 unknown ldr w9, [x9, #0x4] | |
0x11d0fc3f4: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fc3f8: 0xf9003e68 unknown str x8, [x19, #0x78] | |
0x11d0fc3fc: 0xf9403e68 unknown ldr x8, [x19, #0x78] | |
0x11d0fc400: 0xf9404e69 unknown ldr x9, [x19, #0x98] | |
0x11d0fc404: 0xb9400529 unknown ldr w9, [x9, #0x4] | |
0x11d0fc408: 0xd280008a unknown mov x10, #0x4 | |
0x11d0fc40c: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fc410: 0xf9003a68 unknown str x8, [x19, #0x70] | |
0x11d0fc414: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc418: 0x34000128 unknown cbz w8, 0x11d0fc43c | |
0x11d0fc41c: 0xf9404e68 unknown ldr x8, [x19, #0x98] | |
0x11d0fc420: 0xb9400508 unknown ldr w8, [x8, #0x4] | |
0x11d0fc424: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc428: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc42c: 0xf947ec00 unknown ldr x0, [x0, #0xfd8] | |
0x11d0fc430: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc434: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc438: 0xd63f0100 unknown blr x8 | |
0x11d0fc43c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc440: 0x34000128 unknown cbz w8, 0x11d0fc464 | |
0x11d0fc444: 0xf9404e68 unknown ldr x8, [x19, #0x98] | |
0x11d0fc448: 0xb9401108 unknown ldr w8, [x8, #0x10] | |
0x11d0fc44c: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc450: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc454: 0xf947e800 unknown ldr x0, [x0, #0xfd0] | |
0x11d0fc458: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc45c: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc460: 0xd63f0100 unknown blr x8 | |
0x11d0fc464: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc468: 0x34000108 unknown cbz w8, 0x11d0fc488 | |
0x11d0fc46c: 0xf9403a68 unknown ldr x8, [x19, #0x70] | |
0x11d0fc470: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc474: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc478: 0xf947e400 unknown ldr x0, [x0, #0xfc8] | |
0x11d0fc47c: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc480: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc484: 0xd63f0100 unknown blr x8 | |
0x11d0fc488: 0xb9006e7f unknown str wzr, [x19, #0x6c] | |
0x11d0fc48c: 0xb9406e68 unknown ldr w8, [x19, #0x6c] | |
0x11d0fc490: 0xf9404e69 unknown ldr x9, [x19, #0x98] | |
0x11d0fc494: 0xb9400529 unknown ldr w9, [x9, #0x4] | |
0x11d0fc498: 0x6b09011f unknown cmp w8, w9 | |
0x11d0fc49c: 0x540010e2 unknown b.hs 0x11d0fc6b8 | |
0x11d0fc4a0: 0xf9403a68 unknown ldr x8, [x19, #0x70] | |
0x11d0fc4a4: 0xb9406e69 unknown ldr w9, [x19, #0x6c] | |
0x11d0fc4a8: 0xd280010a unknown mov x10, #0x8 | |
0x11d0fc4ac: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fc4b0: 0xf9400108 unknown ldr x8, [x8] | |
0x11d0fc4b4: 0xd341fd08 unknown lsr x8, x8, #1 | |
0x11d0fc4b8: 0x9240b908 unknown and x8, x8, #0x7fffffffffff | |
0x11d0fc4bc: 0xf9003268 unknown str x8, [x19, #0x60] | |
0x11d0fc4c0: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc4c4: 0x34000148 unknown cbz w8, 0x11d0fc4ec | |
0x11d0fc4c8: 0xb9406e68 unknown ldr w8, [x19, #0x6c] | |
0x11d0fc4cc: 0xf9403269 unknown ldr x9, [x19, #0x60] | |
0x11d0fc4d0: 0xf90007e9 unknown str x9, [sp, #0x8] | |
0x11d0fc4d4: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc4d8: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc4dc: 0xf947fc00 unknown ldr x0, [x0, #0xff8] | |
0x11d0fc4e0: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc4e4: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc4e8: 0xd63f0100 unknown blr x8 | |
0x11d0fc4ec: 0xf9403a68 unknown ldr x8, [x19, #0x70] | |
0x11d0fc4f0: 0xb9406e69 unknown ldr w9, [x19, #0x6c] | |
0x11d0fc4f4: 0xd280010a unknown mov x10, #0x8 | |
0x11d0fc4f8: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fc4fc: 0xf9400108 unknown ldr x8, [x8] | |
0x11d0fc500: 0x36000128 unknown tbz w8, #0x0, 0x11d0fc524 | |
0x11d0fc504: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc508: 0x340000c8 unknown cbz w8, 0x11d0fc520 | |
0x11d0fc50c: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc510: 0xf947f800 unknown ldr x0, [x0, #0xff0] | |
0x11d0fc514: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc518: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc51c: 0xd63f0100 unknown blr x8 | |
0x11d0fc520: 0x14000062 unknown b 0x11d0fc6a8 | |
0x11d0fc524: 0xf9403268 unknown ldr x8, [x19, #0x60] | |
0x11d0fc528: 0xb5000128 unknown cbnz x8, 0x11d0fc54c | |
0x11d0fc52c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc530: 0x340000c8 unknown cbz w8, 0x11d0fc548 | |
0x11d0fc534: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc538: 0xf947f400 unknown ldr x0, [x0, #0xfe8] | |
0x11d0fc53c: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc540: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc544: 0xd63f0100 unknown blr x8 | |
0x11d0fc548: 0x14000058 unknown b 0x11d0fc6a8 | |
0x11d0fc54c: 0xf9404668 unknown ldr x8, [x19, #0x88] | |
0x11d0fc550: 0xb4000968 unknown cbz x8, 0x11d0fc67c | |
0x11d0fc554: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fc558: 0xf9404a69 unknown ldr x9, [x19, #0x90] | |
0x11d0fc55c: 0xeb09011f unknown cmp x8, x9 | |
0x11d0fc560: 0x540008e2 unknown b.hs 0x11d0fc67c | |
0x11d0fc564: 0xf9406e68 unknown ldr x8, [x19, #0xd8] | |
0x11d0fc568: 0xf9403269 unknown ldr x9, [x19, #0x60] | |
0x11d0fc56c: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fc570: 0xf9404669 unknown ldr x9, [x19, #0x88] | |
0x11d0fc574: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fc578: 0xd280018b unknown mov x11, #0xc | |
0x11d0fc57c: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fc580: 0xf9000128 unknown str x8, [x9] | |
0x11d0fc584: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc588: 0xf947c508 unknown ldr x8, [x8, #0xf88] | |
0x11d0fc58c: 0xf9400108 unknown ldr x8, [x8] | |
0x11d0fc590: 0xf9404669 unknown ldr x9, [x19, #0x88] | |
0x11d0fc594: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fc598: 0xd280018b unknown mov x11, #0xc | |
0x11d0fc59c: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fc5a0: 0xf9400120 unknown ldr x0, [x9] | |
0x11d0fc5a4: 0xd63f0100 unknown blr x8 | |
0x11d0fc5a8: 0xf9002e60 unknown str x0, [x19, #0x58] | |
0x11d0fc5ac: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc5b0: 0x34000208 unknown cbz w8, 0x11d0fc5f0 | |
0x11d0fc5b4: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fc5b8: 0xf9404669 unknown ldr x9, [x19, #0x88] | |
0x11d0fc5bc: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fc5c0: 0xd280018b unknown mov x11, #0xc | |
0x11d0fc5c4: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fc5c8: 0xf9400129 unknown ldr x9, [x9] | |
0x11d0fc5cc: 0xf9402e6a unknown ldr x10, [x19, #0x58] | |
0x11d0fc5d0: 0xf9000bea unknown str x10, [sp, #0x10] | |
0x11d0fc5d4: 0xf90007e9 unknown str x9, [sp, #0x8] | |
0x11d0fc5d8: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc5dc: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc5e0: 0xf947c000 unknown ldr x0, [x0, #0xf80] | |
0x11d0fc5e4: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc5e8: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc5ec: 0xd63f0100 unknown blr x8 | |
0x11d0fc5f0: 0xf9402e68 unknown ldr x8, [x19, #0x58] | |
0x11d0fc5f4: 0xf9002a68 unknown str x8, [x19, #0x50] | |
0x11d0fc5f8: 0x5282a0a8 unknown mov w8, #0x1505 | |
0x11d0fc5fc: 0xb9004e68 unknown str w8, [x19, #0x4c] | |
0x11d0fc600: 0xf9402a68 unknown ldr x8, [x19, #0x50] | |
0x11d0fc604: 0x39400108 unknown ldrb w8, [x8] | |
0x11d0fc608: 0x381533a8 unknown sturb w8, [x29, #-0xad] | |
0x11d0fc60c: 0x385533a8 unknown ldurb w8, [x29, #-0xad] | |
0x11d0fc610: 0x53001d08 unknown uxtb w8, w8 | |
0x11d0fc614: 0x34000248 unknown cbz w8, 0x11d0fc65c | |
0x11d0fc618: 0x385533a8 unknown ldurb w8, [x29, #-0xad] | |
0x11d0fc61c: 0x7100b91f unknown cmp w8, #0x2e | |
0x11d0fc620: 0x54000061 unknown b.ne 0x11d0fc62c | |
0x11d0fc624: 0xb9004e7f unknown str wzr, [x19, #0x4c] | |
0x11d0fc628: 0x1400000e unknown b 0x11d0fc660 | |
0x11d0fc62c: 0xb9404e68 unknown ldr w8, [x19, #0x4c] | |
0x11d0fc630: 0xb9404e69 unknown ldr w9, [x19, #0x4c] | |
0x11d0fc634: 0x0b081528 unknown add w8, w9, w8, lsl #5 | |
0x11d0fc638: 0x385533a9 unknown ldurb w9, [x29, #-0xad] | |
0x11d0fc63c: 0x0b090108 unknown add w8, w8, w9 | |
0x11d0fc640: 0xb9004e68 unknown str w8, [x19, #0x4c] | |
0x11d0fc644: 0xf9402a68 unknown ldr x8, [x19, #0x50] | |
0x11d0fc648: 0x91000509 unknown add x9, x8, #0x1 | |
0x11d0fc64c: 0xf9002a69 unknown str x9, [x19, #0x50] | |
0x11d0fc650: 0x39400508 unknown ldrb w8, [x8, #0x1] | |
0x11d0fc654: 0x381533a8 unknown sturb w8, [x29, #-0xad] | |
0x11d0fc658: 0x17ffffed unknown b 0x11d0fc60c | |
0x11d0fc65c: 0x14000001 unknown b 0x11d0fc660 | |
0x11d0fc660: 0xb9404e68 unknown ldr w8, [x19, #0x4c] | |
0x11d0fc664: 0xf9404669 unknown ldr x9, [x19, #0x88] | |
0x11d0fc668: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fc66c: 0xd280018b unknown mov x11, #0xc | |
0x11d0fc670: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fc674: 0xb9000928 unknown str w8, [x9, #0x8] | |
0x11d0fc678: 0x14000009 unknown b 0x11d0fc69c | |
0x11d0fc67c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc680: 0x340000c8 unknown cbz w8, 0x11d0fc698 | |
0x11d0fc684: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc688: 0xf947d000 unknown ldr x0, [x0, #0xfa0] | |
0x11d0fc68c: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc690: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc694: 0xd63f0100 unknown blr x8 | |
0x11d0fc698: 0x14000001 unknown b 0x11d0fc69c | |
0x11d0fc69c: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fc6a0: 0x11000508 unknown add w8, w8, #0x1 | |
0x11d0fc6a4: 0xb900be68 unknown str w8, [x19, #0xbc] | |
0x11d0fc6a8: 0xb9406e68 unknown ldr w8, [x19, #0x6c] | |
0x11d0fc6ac: 0x11000508 unknown add w8, w8, #0x1 | |
0x11d0fc6b0: 0xb9006e68 unknown str w8, [x19, #0x6c] | |
0x11d0fc6b4: 0x17ffff76 unknown b 0x11d0fc48c | |
0x11d0fc6b8: 0xf9403a68 unknown ldr x8, [x19, #0x70] | |
0x11d0fc6bc: 0xf9404e69 unknown ldr x9, [x19, #0x98] | |
0x11d0fc6c0: 0xb9400529 unknown ldr w9, [x9, #0x4] | |
0x11d0fc6c4: 0xd280010a unknown mov x10, #0x8 | |
0x11d0fc6c8: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fc6cc: 0xf9002268 unknown str x8, [x19, #0x40] | |
0x11d0fc6d0: 0xf9402268 unknown ldr x8, [x19, #0x40] | |
0x11d0fc6d4: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc6d8: 0xb9003e68 unknown str w8, [x19, #0x3c] | |
0x11d0fc6dc: 0xf9402268 unknown ldr x8, [x19, #0x40] | |
0x11d0fc6e0: 0x91001108 unknown add x8, x8, #0x4 | |
0x11d0fc6e4: 0xf9001a68 unknown str x8, [x19, #0x30] | |
0x11d0fc6e8: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc6ec: 0x34000108 unknown cbz w8, 0x11d0fc70c | |
0x11d0fc6f0: 0xb9403e68 unknown ldr w8, [x19, #0x3c] | |
0x11d0fc6f4: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc6f8: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc6fc: 0xf947cc00 unknown ldr x0, [x0, #0xf98] | |
0x11d0fc700: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc704: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc708: 0xd63f0100 unknown blr x8 | |
0x11d0fc70c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc710: 0x34000108 unknown cbz w8, 0x11d0fc730 | |
0x11d0fc714: 0xf9401a68 unknown ldr x8, [x19, #0x30] | |
0x11d0fc718: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc71c: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc720: 0xf947c800 unknown ldr x0, [x0, #0xf90] | |
0x11d0fc724: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc728: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc72c: 0xd63f0100 unknown blr x8 | |
0x11d0fc730: 0xb9002e7f unknown str wzr, [x19, #0x2c] | |
0x11d0fc734: 0xb9402e68 unknown ldr w8, [x19, #0x2c] | |
0x11d0fc738: 0xb9403e69 unknown ldr w9, [x19, #0x3c] | |
0x11d0fc73c: 0x6b09011f unknown cmp w8, w9 | |
0x11d0fc740: 0x54000f82 unknown b.hs 0x11d0fc930 | |
0x11d0fc744: 0xf9403a68 unknown ldr x8, [x19, #0x70] | |
0x11d0fc748: 0xb9402e69 unknown ldr w9, [x19, #0x2c] | |
0x11d0fc74c: 0xd280010a unknown mov x10, #0x8 | |
0x11d0fc750: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fc754: 0xf9400108 unknown ldr x8, [x8] | |
0x11d0fc758: 0xd341fd08 unknown lsr x8, x8, #1 | |
0x11d0fc75c: 0x9240b908 unknown and x8, x8, #0x7fffffffffff | |
0x11d0fc760: 0xf9001268 unknown str x8, [x19, #0x20] | |
0x11d0fc764: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc768: 0x34000148 unknown cbz w8, 0x11d0fc790 | |
0x11d0fc76c: 0xb9402e68 unknown ldr w8, [x19, #0x2c] | |
0x11d0fc770: 0xf9401269 unknown ldr x9, [x19, #0x20] | |
0x11d0fc774: 0xf90007e9 unknown str x9, [sp, #0x8] | |
0x11d0fc778: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc77c: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc780: 0xf947fc00 unknown ldr x0, [x0, #0xff8] | |
0x11d0fc784: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc788: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc78c: 0xd63f0100 unknown blr x8 | |
0x11d0fc790: 0xf9403a68 unknown ldr x8, [x19, #0x70] | |
0x11d0fc794: 0xb9402e69 unknown ldr w9, [x19, #0x2c] | |
0x11d0fc798: 0xd280010a unknown mov x10, #0x8 | |
0x11d0fc79c: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fc7a0: 0xf9400108 unknown ldr x8, [x8] | |
0x11d0fc7a4: 0x36000128 unknown tbz w8, #0x0, 0x11d0fc7c8 | |
0x11d0fc7a8: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc7ac: 0x340000c8 unknown cbz w8, 0x11d0fc7c4 | |
0x11d0fc7b0: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc7b4: 0xf947f800 unknown ldr x0, [x0, #0xff0] | |
0x11d0fc7b8: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc7bc: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc7c0: 0xd63f0100 unknown blr x8 | |
0x11d0fc7c4: 0x14000057 unknown b 0x11d0fc920 | |
0x11d0fc7c8: 0xf9401268 unknown ldr x8, [x19, #0x20] | |
0x11d0fc7cc: 0xb5000128 unknown cbnz x8, 0x11d0fc7f0 | |
0x11d0fc7d0: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc7d4: 0x340000c8 unknown cbz w8, 0x11d0fc7ec | |
0x11d0fc7d8: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc7dc: 0xf947f400 unknown ldr x0, [x0, #0xfe8] | |
0x11d0fc7e0: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc7e4: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc7e8: 0xd63f0100 unknown blr x8 | |
0x11d0fc7ec: 0x1400004d unknown b 0x11d0fc920 | |
0x11d0fc7f0: 0xf9404668 unknown ldr x8, [x19, #0x88] | |
0x11d0fc7f4: 0xb4000948 unknown cbz x8, 0x11d0fc91c | |
0x11d0fc7f8: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fc7fc: 0xf9404a69 unknown ldr x9, [x19, #0x90] | |
0x11d0fc800: 0xeb09011f unknown cmp x8, x9 | |
0x11d0fc804: 0x540008c2 unknown b.hs 0x11d0fc91c | |
0x11d0fc808: 0xf9406e68 unknown ldr x8, [x19, #0xd8] | |
0x11d0fc80c: 0xf9401269 unknown ldr x9, [x19, #0x20] | |
0x11d0fc810: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fc814: 0xf9404669 unknown ldr x9, [x19, #0x88] | |
0x11d0fc818: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fc81c: 0xd280018b unknown mov x11, #0xc | |
0x11d0fc820: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fc824: 0xf9000128 unknown str x8, [x9] | |
0x11d0fc828: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc82c: 0xf947c508 unknown ldr x8, [x8, #0xf88] | |
0x11d0fc830: 0xf9400108 unknown ldr x8, [x8] | |
0x11d0fc834: 0xf9404669 unknown ldr x9, [x19, #0x88] | |
0x11d0fc838: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fc83c: 0xd280018b unknown mov x11, #0xc | |
0x11d0fc840: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fc844: 0xf9400120 unknown ldr x0, [x9] | |
0x11d0fc848: 0xd63f0100 unknown blr x8 | |
0x11d0fc84c: 0xf9000e60 unknown str x0, [x19, #0x18] | |
0x11d0fc850: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc854: 0x34000208 unknown cbz w8, 0x11d0fc894 | |
0x11d0fc858: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fc85c: 0xf9404669 unknown ldr x9, [x19, #0x88] | |
0x11d0fc860: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fc864: 0xd280018b unknown mov x11, #0xc | |
0x11d0fc868: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fc86c: 0xf9400129 unknown ldr x9, [x9] | |
0x11d0fc870: 0xf9400e6a unknown ldr x10, [x19, #0x18] | |
0x11d0fc874: 0xf9000bea unknown str x10, [sp, #0x10] | |
0x11d0fc878: 0xf90007e9 unknown str x9, [sp, #0x8] | |
0x11d0fc87c: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc880: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc884: 0xf947c000 unknown ldr x0, [x0, #0xf80] | |
0x11d0fc888: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc88c: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc890: 0xd63f0100 unknown blr x8 | |
0x11d0fc894: 0xf9400e68 unknown ldr x8, [x19, #0x18] | |
0x11d0fc898: 0xf9000a68 unknown str x8, [x19, #0x10] | |
0x11d0fc89c: 0x5282a0a8 unknown mov w8, #0x1505 | |
0x11d0fc8a0: 0xb9000e68 unknown str w8, [x19, #0xc] | |
0x11d0fc8a4: 0xf9400a68 unknown ldr x8, [x19, #0x10] | |
0x11d0fc8a8: 0x39400108 unknown ldrb w8, [x8] | |
0x11d0fc8ac: 0x3902cfe8 unknown strb w8, [sp, #0xb3] | |
0x11d0fc8b0: 0x3942cfe8 unknown ldrb w8, [sp, #0xb3] | |
0x11d0fc8b4: 0x53001d08 unknown uxtb w8, w8 | |
0x11d0fc8b8: 0x34000248 unknown cbz w8, 0x11d0fc900 | |
0x11d0fc8bc: 0x3942cfe8 unknown ldrb w8, [sp, #0xb3] | |
0x11d0fc8c0: 0x7100b91f unknown cmp w8, #0x2e | |
0x11d0fc8c4: 0x54000061 unknown b.ne 0x11d0fc8d0 | |
0x11d0fc8c8: 0xb9000e7f unknown str wzr, [x19, #0xc] | |
0x11d0fc8cc: 0x1400000e unknown b 0x11d0fc904 | |
0x11d0fc8d0: 0xb9400e68 unknown ldr w8, [x19, #0xc] | |
0x11d0fc8d4: 0xb9400e69 unknown ldr w9, [x19, #0xc] | |
0x11d0fc8d8: 0x0b081528 unknown add w8, w9, w8, lsl #5 | |
0x11d0fc8dc: 0x3942cfe9 unknown ldrb w9, [sp, #0xb3] | |
0x11d0fc8e0: 0x0b090108 unknown add w8, w8, w9 | |
0x11d0fc8e4: 0xb9000e68 unknown str w8, [x19, #0xc] | |
0x11d0fc8e8: 0xf9400a68 unknown ldr x8, [x19, #0x10] | |
0x11d0fc8ec: 0x91000509 unknown add x9, x8, #0x1 | |
0x11d0fc8f0: 0xf9000a69 unknown str x9, [x19, #0x10] | |
0x11d0fc8f4: 0x39400508 unknown ldrb w8, [x8, #0x1] | |
0x11d0fc8f8: 0x3902cfe8 unknown strb w8, [sp, #0xb3] | |
0x11d0fc8fc: 0x17ffffed unknown b 0x11d0fc8b0 | |
0x11d0fc900: 0x14000001 unknown b 0x11d0fc904 | |
0x11d0fc904: 0xb9400e68 unknown ldr w8, [x19, #0xc] | |
0x11d0fc908: 0xf9404669 unknown ldr x9, [x19, #0x88] | |
0x11d0fc90c: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fc910: 0xd280018b unknown mov x11, #0xc | |
0x11d0fc914: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fc918: 0xb9000928 unknown str w8, [x9, #0x8] | |
0x11d0fc91c: 0x14000001 unknown b 0x11d0fc920 | |
0x11d0fc920: 0xb9402e68 unknown ldr w8, [x19, #0x2c] | |
0x11d0fc924: 0x11000508 unknown add w8, w8, #0x1 | |
0x11d0fc928: 0xb9002e68 unknown str w8, [x19, #0x2c] | |
0x11d0fc92c: 0x17ffff82 unknown b 0x11d0fc734 | |
0x11d0fc930: 0x14000177 unknown b 0x11d0fcf0c | |
0x11d0fc934: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc938: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc93c: 0x7100311f unknown cmp w8, #0xc | |
0x11d0fc940: 0x54002e43 unknown b.lo 0x11d0fcf08 | |
0x11d0fc944: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc948: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc94c: 0x71003d1f unknown cmp w8, #0xf | |
0x11d0fc950: 0x54002dc8 unknown b.hi 0x11d0fcf08 | |
0x11d0fc954: 0xf900027f unknown str xzr, [x19] | |
0x11d0fc958: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc95c: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc960: 0x7100391f unknown cmp w8, #0xe | |
0x11d0fc964: 0x540000e3 unknown b.lo 0x11d0fc980 | |
0x11d0fc968: 0xf9405668 unknown ldr x8, [x19, #0xa8] | |
0x11d0fc96c: 0xf9405669 unknown ldr x9, [x19, #0xa8] | |
0x11d0fc970: 0xb9801129 unknown ldrsw x9, [x9, #0x10] | |
0x11d0fc974: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fc978: 0xf9000268 unknown str x8, [x19] | |
0x11d0fc97c: 0x14000006 unknown b 0x11d0fc994 | |
0x11d0fc980: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc984: 0xf9405a69 unknown ldr x9, [x19, #0xb0] | |
0x11d0fc988: 0xb9800d29 unknown ldrsw x9, [x9, #0xc] | |
0x11d0fc98c: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fc990: 0xf9000268 unknown str x8, [x19] | |
0x11d0fc994: 0xb940c668 unknown ldr w8, [x19, #0xc4] | |
0x11d0fc998: 0xd2800189 unknown mov x9, #0xc | |
0x11d0fc99c: 0x9ac90908 unknown udiv x8, x8, x9 | |
0x11d0fc9a0: 0xf90053e8 unknown str x8, [sp, #0xa0] | |
0x11d0fc9a4: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fc9a8: 0x34000108 unknown cbz w8, 0x11d0fc9c8 | |
0x11d0fc9ac: 0xf94053e8 unknown ldr x8, [sp, #0xa0] | |
0x11d0fc9b0: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fc9b4: 0x90000000 unknown adrp x0, 0 | |
0x11d0fc9b8: 0xf947f000 unknown ldr x0, [x0, #0xfe0] | |
0x11d0fc9bc: 0x90000008 unknown adrp x8, 0 | |
0x11d0fc9c0: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fc9c4: 0xd63f0100 unknown blr x8 | |
0x11d0fc9c8: 0xf9406a68 unknown ldr x8, [x19, #0xd0] | |
0x11d0fc9cc: 0xf9004fe8 unknown str x8, [sp, #0x98] | |
0x11d0fc9d0: 0xb90097ff unknown str wzr, [sp, #0x94] | |
0x11d0fc9d4: 0xf9405a68 unknown ldr x8, [x19, #0xb0] | |
0x11d0fc9d8: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fc9dc: 0x7100311f unknown cmp w8, #0xc | |
0x11d0fc9e0: 0x54000061 unknown b.ne 0x11d0fc9ec | |
0x11d0fc9e4: 0x52800208 unknown mov w8, #0x10 | |
0x11d0fc9e8: 0xb90097e8 unknown str w8, [sp, #0x94] | |
0x11d0fc9ec: 0xf9400268 unknown ldr x8, [x19] | |
0x11d0fc9f0: 0x91108108 unknown add x8, x8, #0x420 | |
0x11d0fc9f4: 0xf9400269 unknown ldr x9, [x19] | |
0x11d0fc9f8: 0xb9400d29 unknown ldr w9, [x9, #0xc] | |
0x11d0fc9fc: 0x11000529 unknown add w9, w9, #0x1 | |
0x11d0fca00: 0xd3407d29 unknown ubfx x9, x9, #0, #32 | |
0x11d0fca04: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fca08: 0xf90047e8 unknown str x8, [sp, #0x88] | |
0x11d0fca0c: 0xf94047e8 unknown ldr x8, [sp, #0x88] | |
0x11d0fca10: 0xf9400269 unknown ldr x9, [x19] | |
0x11d0fca14: 0xb9400129 unknown ldr w9, [x9] | |
0x11d0fca18: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fca1c: 0xf90043e8 unknown str x8, [sp, #0x80] | |
0x11d0fca20: 0xf94043e8 unknown ldr x8, [sp, #0x80] | |
0x11d0fca24: 0xf9400269 unknown ldr x9, [x19] | |
0x11d0fca28: 0xb9400129 unknown ldr w9, [x9] | |
0x11d0fca2c: 0xd280008a unknown mov x10, #0x4 | |
0x11d0fca30: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fca34: 0xf9003fe8 unknown str x8, [sp, #0x78] | |
0x11d0fca38: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fca3c: 0x34000128 unknown cbz w8, 0x11d0fca60 | |
0x11d0fca40: 0xf9400268 unknown ldr x8, [x19] | |
0x11d0fca44: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fca48: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fca4c: 0x90000000 unknown adrp x0, 0 | |
0x11d0fca50: 0xf947ec00 unknown ldr x0, [x0, #0xfd8] | |
0x11d0fca54: 0x90000008 unknown adrp x8, 0 | |
0x11d0fca58: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fca5c: 0xd63f0100 unknown blr x8 | |
0x11d0fca60: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fca64: 0x34000128 unknown cbz w8, 0x11d0fca88 | |
0x11d0fca68: 0xf9400268 unknown ldr x8, [x19] | |
0x11d0fca6c: 0xb9400d08 unknown ldr w8, [x8, #0xc] | |
0x11d0fca70: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fca74: 0x90000000 unknown adrp x0, 0 | |
0x11d0fca78: 0xf947e800 unknown ldr x0, [x0, #0xfd0] | |
0x11d0fca7c: 0x90000008 unknown adrp x8, 0 | |
0x11d0fca80: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fca84: 0xd63f0100 unknown blr x8 | |
0x11d0fca88: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fca8c: 0x34000108 unknown cbz w8, 0x11d0fcaac | |
0x11d0fca90: 0xf9403fe8 unknown ldr x8, [sp, #0x78] | |
0x11d0fca94: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fca98: 0x90000000 unknown adrp x0, 0 | |
0x11d0fca9c: 0xf947e400 unknown ldr x0, [x0, #0xfc8] | |
0x11d0fcaa0: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcaa4: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcaa8: 0xd63f0100 unknown blr x8 | |
0x11d0fcaac: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fcab0: 0x34000108 unknown cbz w8, 0x11d0fcad0 | |
0x11d0fcab4: 0xb94097e8 unknown ldr w8, [sp, #0x94] | |
0x11d0fcab8: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fcabc: 0x90000000 unknown adrp x0, 0 | |
0x11d0fcac0: 0xf947e000 unknown ldr x0, [x0, #0xfc0] | |
0x11d0fcac4: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcac8: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcacc: 0xd63f0100 unknown blr x8 | |
0x11d0fcad0: 0xb90077ff unknown str wzr, [sp, #0x74] | |
0x11d0fcad4: 0xb94077e8 unknown ldr w8, [sp, #0x74] | |
0x11d0fcad8: 0xf9400269 unknown ldr x9, [x19] | |
0x11d0fcadc: 0xb9400129 unknown ldr w9, [x9] | |
0x11d0fcae0: 0x6b09011f unknown cmp w8, w9 | |
0x11d0fcae4: 0x54001082 unknown b.hs 0x11d0fccf4 | |
0x11d0fcae8: 0xf9403fe8 unknown ldr x8, [sp, #0x78] | |
0x11d0fcaec: 0xb94077e9 unknown ldr w9, [sp, #0x74] | |
0x11d0fcaf0: 0xd280010a unknown mov x10, #0x8 | |
0x11d0fcaf4: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fcaf8: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fcafc: 0xb90073e8 unknown str w8, [sp, #0x70] | |
0x11d0fcb00: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fcb04: 0x34000148 unknown cbz w8, 0x11d0fcb2c | |
0x11d0fcb08: 0xb94077e8 unknown ldr w8, [sp, #0x74] | |
0x11d0fcb0c: 0xb94073e9 unknown ldr w9, [sp, #0x70] | |
0x11d0fcb10: 0xf90007e9 unknown str x9, [sp, #0x8] | |
0x11d0fcb14: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fcb18: 0x90000000 unknown adrp x0, 0 | |
0x11d0fcb1c: 0xf947dc00 unknown ldr x0, [x0, #0xfb8] | |
0x11d0fcb20: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcb24: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcb28: 0xd63f0100 unknown blr x8 | |
0x11d0fcb2c: 0xb94073e8 unknown ldr w8, [sp, #0x70] | |
0x11d0fcb30: 0x36000128 unknown tbz w8, #0x0, 0x11d0fcb54 | |
0x11d0fcb34: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fcb38: 0x340000c8 unknown cbz w8, 0x11d0fcb50 | |
0x11d0fcb3c: 0x90000000 unknown adrp x0, 0 | |
0x11d0fcb40: 0xf947d800 unknown ldr x0, [x0, #0xfb0] | |
0x11d0fcb44: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcb48: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcb4c: 0xd63f0100 unknown blr x8 | |
0x11d0fcb50: 0x14000065 unknown b 0x11d0fcce4 | |
0x11d0fcb54: 0xb94073e8 unknown ldr w8, [sp, #0x70] | |
0x11d0fcb58: 0xb94097e9 unknown ldr w9, [sp, #0x94] | |
0x11d0fcb5c: 0x6b09011f unknown cmp w8, w9 | |
0x11d0fcb60: 0x54000121 unknown b.ne 0x11d0fcb84 | |
0x11d0fcb64: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fcb68: 0x340000c8 unknown cbz w8, 0x11d0fcb80 | |
0x11d0fcb6c: 0x90000000 unknown adrp x0, 0 | |
0x11d0fcb70: 0xf947d400 unknown ldr x0, [x0, #0xfa8] | |
0x11d0fcb74: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcb78: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcb7c: 0xd63f0100 unknown blr x8 | |
0x11d0fcb80: 0x14000059 unknown b 0x11d0fcce4 | |
0x11d0fcb84: 0x14000001 unknown b 0x11d0fcb88 | |
0x11d0fcb88: 0xf9404fe8 unknown ldr x8, [sp, #0x98] | |
0x11d0fcb8c: 0xb4000968 unknown cbz x8, 0x11d0fccb8 | |
0x11d0fcb90: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fcb94: 0xf94053e9 unknown ldr x9, [sp, #0xa0] | |
0x11d0fcb98: 0xeb09011f unknown cmp x8, x9 | |
0x11d0fcb9c: 0x540008e2 unknown b.hs 0x11d0fccb8 | |
0x11d0fcba0: 0xf9400268 unknown ldr x8, [x19] | |
0x11d0fcba4: 0xb98073e9 unknown ldrsw x9, [sp, #0x70] | |
0x11d0fcba8: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fcbac: 0xf9404fe9 unknown ldr x9, [sp, #0x98] | |
0x11d0fcbb0: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fcbb4: 0xd280018b unknown mov x11, #0xc | |
0x11d0fcbb8: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fcbbc: 0xf9000128 unknown str x8, [x9] | |
0x11d0fcbc0: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcbc4: 0xf947c508 unknown ldr x8, [x8, #0xf88] | |
0x11d0fcbc8: 0xf9400108 unknown ldr x8, [x8] | |
0x11d0fcbcc: 0xf9404fe9 unknown ldr x9, [sp, #0x98] | |
0x11d0fcbd0: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fcbd4: 0xd280018b unknown mov x11, #0xc | |
0x11d0fcbd8: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fcbdc: 0xf9400120 unknown ldr x0, [x9] | |
0x11d0fcbe0: 0xd63f0100 unknown blr x8 | |
0x11d0fcbe4: 0xf90037e0 unknown str x0, [sp, #0x68] | |
0x11d0fcbe8: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fcbec: 0x34000208 unknown cbz w8, 0x11d0fcc2c | |
0x11d0fcbf0: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fcbf4: 0xf9404fe9 unknown ldr x9, [sp, #0x98] | |
0x11d0fcbf8: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fcbfc: 0xd280018b unknown mov x11, #0xc | |
0x11d0fcc00: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fcc04: 0xf9400129 unknown ldr x9, [x9] | |
0x11d0fcc08: 0xf94037ea unknown ldr x10, [sp, #0x68] | |
0x11d0fcc0c: 0xf9000bea unknown str x10, [sp, #0x10] | |
0x11d0fcc10: 0xf90007e9 unknown str x9, [sp, #0x8] | |
0x11d0fcc14: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fcc18: 0x90000000 unknown adrp x0, 0 | |
0x11d0fcc1c: 0xf947c000 unknown ldr x0, [x0, #0xf80] | |
0x11d0fcc20: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcc24: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcc28: 0xd63f0100 unknown blr x8 | |
0x11d0fcc2c: 0xf94037e8 unknown ldr x8, [sp, #0x68] | |
0x11d0fcc30: 0xf90033e8 unknown str x8, [sp, #0x60] | |
0x11d0fcc34: 0x5282a0a8 unknown mov w8, #0x1505 | |
0x11d0fcc38: 0xb9005fe8 unknown str w8, [sp, #0x5c] | |
0x11d0fcc3c: 0xf94033e8 unknown ldr x8, [sp, #0x60] | |
0x11d0fcc40: 0x39400108 unknown ldrb w8, [x8] | |
0x11d0fcc44: 0x39016fe8 unknown strb w8, [sp, #0x5b] | |
0x11d0fcc48: 0x39416fe8 unknown ldrb w8, [sp, #0x5b] | |
0x11d0fcc4c: 0x53001d08 unknown uxtb w8, w8 | |
0x11d0fcc50: 0x34000248 unknown cbz w8, 0x11d0fcc98 | |
0x11d0fcc54: 0x39416fe8 unknown ldrb w8, [sp, #0x5b] | |
0x11d0fcc58: 0x7100b91f unknown cmp w8, #0x2e | |
0x11d0fcc5c: 0x54000061 unknown b.ne 0x11d0fcc68 | |
0x11d0fcc60: 0xb9005fff unknown str wzr, [sp, #0x5c] | |
0x11d0fcc64: 0x1400000e unknown b 0x11d0fcc9c | |
0x11d0fcc68: 0xb9405fe8 unknown ldr w8, [sp, #0x5c] | |
0x11d0fcc6c: 0xb9405fe9 unknown ldr w9, [sp, #0x5c] | |
0x11d0fcc70: 0x0b081528 unknown add w8, w9, w8, lsl #5 | |
0x11d0fcc74: 0x39416fe9 unknown ldrb w9, [sp, #0x5b] | |
0x11d0fcc78: 0x0b090108 unknown add w8, w8, w9 | |
0x11d0fcc7c: 0xb9005fe8 unknown str w8, [sp, #0x5c] | |
0x11d0fcc80: 0xf94033e8 unknown ldr x8, [sp, #0x60] | |
0x11d0fcc84: 0x91000509 unknown add x9, x8, #0x1 | |
0x11d0fcc88: 0xf90033e9 unknown str x9, [sp, #0x60] | |
0x11d0fcc8c: 0x39400508 unknown ldrb w8, [x8, #0x1] | |
0x11d0fcc90: 0x39016fe8 unknown strb w8, [sp, #0x5b] | |
0x11d0fcc94: 0x17ffffed unknown b 0x11d0fcc48 | |
0x11d0fcc98: 0x14000001 unknown b 0x11d0fcc9c | |
0x11d0fcc9c: 0xb9405fe8 unknown ldr w8, [sp, #0x5c] | |
0x11d0fcca0: 0xf9404fe9 unknown ldr x9, [sp, #0x98] | |
0x11d0fcca4: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fcca8: 0xd280018b unknown mov x11, #0xc | |
0x11d0fccac: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fccb0: 0xb9000928 unknown str w8, [x9, #0x8] | |
0x11d0fccb4: 0x14000009 unknown b 0x11d0fccd8 | |
0x11d0fccb8: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fccbc: 0x340000c8 unknown cbz w8, 0x11d0fccd4 | |
0x11d0fccc0: 0x90000000 unknown adrp x0, 0 | |
0x11d0fccc4: 0xf947d000 unknown ldr x0, [x0, #0xfa0] | |
0x11d0fccc8: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcccc: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fccd0: 0xd63f0100 unknown blr x8 | |
0x11d0fccd4: 0x14000001 unknown b 0x11d0fccd8 | |
0x11d0fccd8: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fccdc: 0x11000508 unknown add w8, w8, #0x1 | |
0x11d0fcce0: 0xb900be68 unknown str w8, [x19, #0xbc] | |
0x11d0fcce4: 0xb94077e8 unknown ldr w8, [sp, #0x74] | |
0x11d0fcce8: 0x11000508 unknown add w8, w8, #0x1 | |
0x11d0fccec: 0xb90077e8 unknown str w8, [sp, #0x74] | |
0x11d0fccf0: 0x17ffff79 unknown b 0x11d0fcad4 | |
0x11d0fccf4: 0xf9403fe8 unknown ldr x8, [sp, #0x78] | |
0x11d0fccf8: 0xf9400269 unknown ldr x9, [x19] | |
0x11d0fccfc: 0xb9400129 unknown ldr w9, [x9] | |
0x11d0fcd00: 0xd280010a unknown mov x10, #0x8 | |
0x11d0fcd04: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fcd08: 0xf9002be8 unknown str x8, [sp, #0x50] | |
0x11d0fcd0c: 0xf9402be8 unknown ldr x8, [sp, #0x50] | |
0x11d0fcd10: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fcd14: 0xb9004fe8 unknown str w8, [sp, #0x4c] | |
0x11d0fcd18: 0xf9402be8 unknown ldr x8, [sp, #0x50] | |
0x11d0fcd1c: 0x91001108 unknown add x8, x8, #0x4 | |
0x11d0fcd20: 0xf90023e8 unknown str x8, [sp, #0x40] | |
0x11d0fcd24: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fcd28: 0x34000108 unknown cbz w8, 0x11d0fcd48 | |
0x11d0fcd2c: 0xb9404fe8 unknown ldr w8, [sp, #0x4c] | |
0x11d0fcd30: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fcd34: 0x90000000 unknown adrp x0, 0 | |
0x11d0fcd38: 0xf947cc00 unknown ldr x0, [x0, #0xf98] | |
0x11d0fcd3c: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcd40: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcd44: 0xd63f0100 unknown blr x8 | |
0x11d0fcd48: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fcd4c: 0x34000108 unknown cbz w8, 0x11d0fcd6c | |
0x11d0fcd50: 0xf94023e8 unknown ldr x8, [sp, #0x40] | |
0x11d0fcd54: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fcd58: 0x90000000 unknown adrp x0, 0 | |
0x11d0fcd5c: 0xf947c800 unknown ldr x0, [x0, #0xf90] | |
0x11d0fcd60: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcd64: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcd68: 0xd63f0100 unknown blr x8 | |
0x11d0fcd6c: 0xb9003fff unknown str wzr, [sp, #0x3c] | |
0x11d0fcd70: 0xb9403fe8 unknown ldr w8, [sp, #0x3c] | |
0x11d0fcd74: 0xb9404fe9 unknown ldr w9, [sp, #0x4c] | |
0x11d0fcd78: 0x6b09011f unknown cmp w8, w9 | |
0x11d0fcd7c: 0x54000c42 unknown b.hs 0x11d0fcf04 | |
0x11d0fcd80: 0xf94023e8 unknown ldr x8, [sp, #0x40] | |
0x11d0fcd84: 0xb9403fe9 unknown ldr w9, [sp, #0x3c] | |
0x11d0fcd88: 0xd280010a unknown mov x10, #0x8 | |
0x11d0fcd8c: 0x9b0a2128 unknown madd x8, x9, x10, x8 | |
0x11d0fcd90: 0xb9400108 unknown ldr w8, [x8] | |
0x11d0fcd94: 0xb9003be8 unknown str w8, [sp, #0x38] | |
0x11d0fcd98: 0xb9403be8 unknown ldr w8, [sp, #0x38] | |
0x11d0fcd9c: 0x36000048 unknown tbz w8, #0x0, 0x11d0fcda4 | |
0x11d0fcda0: 0x14000055 unknown b 0x11d0fcef4 | |
0x11d0fcda4: 0xb9403be8 unknown ldr w8, [sp, #0x38] | |
0x11d0fcda8: 0xb94097e9 unknown ldr w9, [sp, #0x94] | |
0x11d0fcdac: 0x6b09011f unknown cmp w8, w9 | |
0x11d0fcdb0: 0x54000041 unknown b.ne 0x11d0fcdb8 | |
0x11d0fcdb4: 0x14000050 unknown b 0x11d0fcef4 | |
0x11d0fcdb8: 0x14000001 unknown b 0x11d0fcdbc | |
0x11d0fcdbc: 0xf9404fe8 unknown ldr x8, [sp, #0x98] | |
0x11d0fcdc0: 0xb4000948 unknown cbz x8, 0x11d0fcee8 | |
0x11d0fcdc4: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fcdc8: 0xf94053e9 unknown ldr x9, [sp, #0xa0] | |
0x11d0fcdcc: 0xeb09011f unknown cmp x8, x9 | |
0x11d0fcdd0: 0x540008c2 unknown b.hs 0x11d0fcee8 | |
0x11d0fcdd4: 0xf9400268 unknown ldr x8, [x19] | |
0x11d0fcdd8: 0xb9803be9 unknown ldrsw x9, [sp, #0x38] | |
0x11d0fcddc: 0x8b090108 unknown add x8, x8, x9 | |
0x11d0fcde0: 0xf9404fe9 unknown ldr x9, [sp, #0x98] | |
0x11d0fcde4: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fcde8: 0xd280018b unknown mov x11, #0xc | |
0x11d0fcdec: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fcdf0: 0xf9000128 unknown str x8, [x9] | |
0x11d0fcdf4: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcdf8: 0xf947c508 unknown ldr x8, [x8, #0xf88] | |
0x11d0fcdfc: 0xf9400108 unknown ldr x8, [x8] | |
0x11d0fce00: 0xf9404fe9 unknown ldr x9, [sp, #0x98] | |
0x11d0fce04: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fce08: 0xd280018b unknown mov x11, #0xc | |
0x11d0fce0c: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fce10: 0xf9400120 unknown ldr x0, [x9] | |
0x11d0fce14: 0xd63f0100 unknown blr x8 | |
0x11d0fce18: 0xf9001be0 unknown str x0, [sp, #0x30] | |
0x11d0fce1c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fce20: 0x34000208 unknown cbz w8, 0x11d0fce60 | |
0x11d0fce24: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fce28: 0xf9404fe9 unknown ldr x9, [sp, #0x98] | |
0x11d0fce2c: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fce30: 0xd280018b unknown mov x11, #0xc | |
0x11d0fce34: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fce38: 0xf9400129 unknown ldr x9, [x9] | |
0x11d0fce3c: 0xf9401bea unknown ldr x10, [sp, #0x30] | |
0x11d0fce40: 0xf9000bea unknown str x10, [sp, #0x10] | |
0x11d0fce44: 0xf90007e9 unknown str x9, [sp, #0x8] | |
0x11d0fce48: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fce4c: 0x90000000 unknown adrp x0, 0 | |
0x11d0fce50: 0xf947c000 unknown ldr x0, [x0, #0xf80] | |
0x11d0fce54: 0x90000008 unknown adrp x8, 0 | |
0x11d0fce58: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fce5c: 0xd63f0100 unknown blr x8 | |
0x11d0fce60: 0xf9401be8 unknown ldr x8, [sp, #0x30] | |
0x11d0fce64: 0xf90017e8 unknown str x8, [sp, #0x28] | |
0x11d0fce68: 0x5282a0a8 unknown mov w8, #0x1505 | |
0x11d0fce6c: 0xb90027e8 unknown str w8, [sp, #0x24] | |
0x11d0fce70: 0xf94017e8 unknown ldr x8, [sp, #0x28] | |
0x11d0fce74: 0x39400108 unknown ldrb w8, [x8] | |
0x11d0fce78: 0x39008fe8 unknown strb w8, [sp, #0x23] | |
0x11d0fce7c: 0x39408fe8 unknown ldrb w8, [sp, #0x23] | |
0x11d0fce80: 0x53001d08 unknown uxtb w8, w8 | |
0x11d0fce84: 0x34000248 unknown cbz w8, 0x11d0fcecc | |
0x11d0fce88: 0x39408fe8 unknown ldrb w8, [sp, #0x23] | |
0x11d0fce8c: 0x7100b91f unknown cmp w8, #0x2e | |
0x11d0fce90: 0x54000061 unknown b.ne 0x11d0fce9c | |
0x11d0fce94: 0xb90027ff unknown str wzr, [sp, #0x24] | |
0x11d0fce98: 0x1400000e unknown b 0x11d0fced0 | |
0x11d0fce9c: 0xb94027e8 unknown ldr w8, [sp, #0x24] | |
0x11d0fcea0: 0xb94027e9 unknown ldr w9, [sp, #0x24] | |
0x11d0fcea4: 0x0b081528 unknown add w8, w9, w8, lsl #5 | |
0x11d0fcea8: 0x39408fe9 unknown ldrb w9, [sp, #0x23] | |
0x11d0fceac: 0x0b090108 unknown add w8, w8, w9 | |
0x11d0fceb0: 0xb90027e8 unknown str w8, [sp, #0x24] | |
0x11d0fceb4: 0xf94017e8 unknown ldr x8, [sp, #0x28] | |
0x11d0fceb8: 0x91000509 unknown add x9, x8, #0x1 | |
0x11d0fcebc: 0xf90017e9 unknown str x9, [sp, #0x28] | |
0x11d0fcec0: 0x39400508 unknown ldrb w8, [x8, #0x1] | |
0x11d0fcec4: 0x39008fe8 unknown strb w8, [sp, #0x23] | |
0x11d0fcec8: 0x17ffffed unknown b 0x11d0fce7c | |
0x11d0fcecc: 0x14000001 unknown b 0x11d0fced0 | |
0x11d0fced0: 0xb94027e8 unknown ldr w8, [sp, #0x24] | |
0x11d0fced4: 0xf9404fe9 unknown ldr x9, [sp, #0x98] | |
0x11d0fced8: 0xb940be6a unknown ldr w10, [x19, #0xbc] | |
0x11d0fcedc: 0xd280018b unknown mov x11, #0xc | |
0x11d0fcee0: 0x9b0b2549 unknown madd x9, x10, x11, x9 | |
0x11d0fcee4: 0xb9000928 unknown str w8, [x9, #0x8] | |
0x11d0fcee8: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fceec: 0x11000508 unknown add w8, w8, #0x1 | |
0x11d0fcef0: 0xb900be68 unknown str w8, [x19, #0xbc] | |
0x11d0fcef4: 0xb9403fe8 unknown ldr w8, [sp, #0x3c] | |
0x11d0fcef8: 0x11000508 unknown add w8, w8, #0x1 | |
0x11d0fcefc: 0xb9003fe8 unknown str w8, [sp, #0x3c] | |
0x11d0fcf00: 0x17ffff9c unknown b 0x11d0fcd70 | |
0x11d0fcf04: 0x14000001 unknown b 0x11d0fcf08 | |
0x11d0fcf08: 0x14000001 unknown b 0x11d0fcf0c | |
0x11d0fcf0c: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fcf10: 0x34000108 unknown cbz w8, 0x11d0fcf30 | |
0x11d0fcf14: 0xb940be68 unknown ldr w8, [x19, #0xbc] | |
0x11d0fcf18: 0xf90003e8 unknown str x8, [sp] | |
0x11d0fcf1c: 0x90000000 unknown adrp x0, 0 | |
0x11d0fcf20: 0xf947bc00 unknown ldr x0, [x0, #0xf78] | |
0x11d0fcf24: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcf28: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcf2c: 0xd63f0100 unknown blr x8 | |
0x11d0fcf30: 0xb940c268 unknown ldr w8, [x19, #0xc0] | |
0x11d0fcf34: 0x340000c8 unknown cbz w8, 0x11d0fcf4c | |
0x11d0fcf38: 0x90000000 unknown adrp x0, 0 | |
0x11d0fcf3c: 0xf947b800 unknown ldr x0, [x0, #0xf70] | |
0x11d0fcf40: 0x90000008 unknown adrp x8, 0 | |
0x11d0fcf44: 0xf947b508 unknown ldr x8, [x8, #0xf68] | |
0x11d0fcf48: 0xd63f0100 unknown blr x8 | |
0x11d0fcf4c: 0x14000001 unknown b 0x11d0fcf50 | |
0x11d0fcf50: 0xb940be60 unknown ldr w0, [x19, #0xbc] | |
0x11d0fcf54: 0xa95a7bfd unknown ldp x29, x30, [sp, #0x1a0] | |
0x11d0fcf58: 0xa9594ff4 unknown ldp x20, x19, [sp, #0x190] | |
0x11d0fcf5c: 0x9106c3ff unknown add sp, sp, #0x1b0 | |
0x11d0fcf60: 0xd65f03c0 unknown ret | |
0x11d0fcf64: 0x00000000 unknown udf #0x0 | |
0x11d0fcf68: 0x8a88001c unknown and x28, x0, x8, asr #0 | |
0x11d0fcf6c: 0x00000001 unknown udf #0x1 | |
0x11d0fcf70: 0x1d0f8413 unknown cpyprn [x19]!, [x15]!, x0! | |
0x11d0fcf74: 0x00000001 unknown udf #0x1 | |
0x11d0fcf78: 0x1d0f8403 unknown cpyprn [x3]!, [x15]!, x0! | |
0x11d0fcf7c: 0x00000001 unknown udf #0x1 | |
0x11d0fcf80: 0x1d0f8336 unknown .long 0x1d0f8336 ; unknown opcode | |
0x11d0fcf84: 0x00000001 unknown udf #0x1 | |
0x11d0fcf88: 0x1d0f8430 unknown cpyprn [x16]!, [x15]!, x1! | |
0x11d0fcf8c: 0x00000001 unknown udf #0x1 | |
0x11d0fcf90: 0x1d0f838a unknown .long 0x1d0f838a ; unknown opcode | |
0x11d0fcf94: 0x00000001 unknown udf #0x1 | |
0x11d0fcf98: 0x1d0f8374 unknown .long 0x1d0f8374 ; unknown opcode | |
0x11d0fcf9c: 0x00000001 unknown udf #0x1 | |
0x11d0fcfa0: 0x1d0f8349 unknown .long 0x1d0f8349 ; unknown opcode | |
0x11d0fcfa4: 0x00000001 unknown udf #0x1 | |
0x11d0fcfa8: 0x1d0f83e2 unknown .long 0x1d0f83e2 ; unknown opcode | |
0x11d0fcfac: 0x00000001 unknown udf #0x1 | |
0x11d0fcfb0: 0x1d0f83d3 unknown .long 0x1d0f83d3 ; unknown opcode | |
0x11d0fcfb4: 0x00000001 unknown udf #0x1 | |
0x11d0fcfb8: 0x1d0f83bf unknown .long 0x1d0f83bf ; unknown opcode | |
0x11d0fcfbc: 0x00000001 unknown udf #0x1 | |
0x11d0fcfc0: 0x1d0f83a6 unknown .long 0x1d0f83a6 ; unknown opcode | |
0x11d0fcfc4: 0x00000001 unknown udf #0x1 | |
0x11d0fcfc8: 0x1d0f82ca unknown .long 0x1d0f82ca ; unknown opcode | |
0x11d0fcfcc: 0x00000001 unknown udf #0x1 | |
0x11d0fcfd0: 0x1d0f82b2 unknown .long 0x1d0f82b2 ; unknown opcode | |
0x11d0fcfd4: 0x00000001 unknown udf #0x1 | |
0x11d0fcfd8: 0x1d0f829b unknown .long 0x1d0f829b ; unknown opcode | |
0x11d0fcfdc: 0x00000001 unknown udf #0x1 | |
0x11d0fcfe0: 0x1d0f8283 unknown .long 0x1d0f8283 ; unknown opcode | |
0x11d0fcfe4: 0x00000001 unknown udf #0x1 | |
0x11d0fcfe8: 0x1d0f830d unknown .long 0x1d0f830d ; unknown opcode | |
0x11d0fcfec: 0x00000001 unknown udf #0x1 | |
0x11d0fcff0: 0x1d0f82f9 unknown .long 0x1d0f82f9 ; unknown opcode | |
0x11d0fcff4: 0x00000001 unknown udf #0x1 | |
0x11d0fcff8: 0x1d0f82dd unknown .long 0x1d0f82dd ; unknown opcode | |
0x11d0fcffc: 0x00000001 unknown udf #0x1 | |
0x11d0fd000: 0x1d0f8265 unknown .long 0x1d0f8265 ; unknown opcode | |
0x11d0fd004: 0x00000001 unknown udf #0x1 | |
0x11d0fd008: 0x1d0f8244 unknown .long 0x1d0f8244 ; unknown opcode | |
0x11d0fd00c: 0x00000001 unknown udf #0x1 | |
0x11d0fd010: 0x1d0f81c5 unknown .long 0x1d0f81c5 ; unknown opcode | |
0x11d0fd014: 0x00000001 unknown udf #0x1 | |
0x11d0fd018: 0x1d0f8197 unknown .long 0x1d0f8197 ; unknown opcode | |
0x11d0fd01c: 0x00000001 unknown udf #0x1 | |
0x11d0fd020: 0x1d0f81af unknown .long 0x1d0f81af ; unknown opcode | |
0x11d0fd024: 0x00000001 unknown udf #0x1 | |
0x11d0fd028: 0x1d0f8207 unknown .long 0x1d0f8207 ; unknown opcode | |
0x11d0fd02c: 0x00000001 unknown udf #0x1 | |
0x11d0fd030: 0x1d0f81e3 unknown .long 0x1d0f81e3 ; unknown opcode | |
0x11d0fd034: 0x00000001 unknown udf #0x1 | |
0x11d0fd038: 0x1d0f8168 unknown .long 0x1d0f8168 ; unknown opcode | |
0x11d0fd03c: 0x00000001 unknown udf #0x1 | |
0x11d0fd040: 0x1d0f8152 unknown .long 0x1d0f8152 ; unknown opcode | |
0x11d0fd044: 0x00000001 unknown udf #0x1 | |
0x11d0fd048: 0x1d0f8136 unknown .long 0x1d0f8136 ; unknown opcode | |
0x11d0fd04c: 0x00000001 unknown udf #0x1 | |
0x11d0fd050: 0x1d0f8120 unknown .long 0x1d0f8120 ; unknown opcode | |
0x11d0fd054: 0x00000001 unknown udf #0x1 | |
0x11d0fd058: 0x00000000 unknown udf #0x0 | |
0x11d0fd05c: 0x00000000 unknown udf #0x0 | |
0x11d0fd060: 0x00000000 unknown udf #0x0 | |
0x11d0fd064: 0x00000000 unknown udf #0x0 | |
0x11d0fd068: 0x00000000 unknown udf #0x0 | |
0x11d0fd06c: 0x00000000 unknown udf #0x0 | |
0x11d0fd070: 0x00000000 unknown udf #0x0 | |
0x11d0fd074: 0x00000000 unknown udf #0x0 | |
0x11d0fd078: 0x00000000 unknown udf #0x0 | |
0x11d0fd07c: 0x00000000 unknown udf #0x0 | |
0x11d0fd080: 0x00000000 unknown udf #0x0 | |
0x11d0fd084: 0x00000000 unknown udf #0x0 | |
0x11d0fd088: 0x00000000 unknown udf #0x0 | |
0x11d0fd08c: 0x00000000 unknown udf #0x0 | |
0x11d0fd090: 0x00000000 unknown udf #0x0 | |
0x11d0fd094: 0x00000000 unknown udf #0x0 | |
0x11d0fd098: 0x00000000 unknown udf #0x0 | |
0x11d0fd09c: 0x00000000 unknown udf #0x0 | |
0x11d0fd0a0: 0x00000000 unknown udf #0x0 | |
0x11d0fd0a4: 0x00000000 unknown udf #0x0 | |
0x11d0fd0a8: 0x00000000 unknown udf #0x0 | |
0x11d0fd0ac: 0x00000000 unknown udf #0x0 | |
0x11d0fd0b0: 0x00000000 unknown udf #0x0 | |
0x11d0fd0b4: 0x00000000 unknown udf #0x0 | |
0x11d0fd0b8: 0x00000000 unknown udf #0x0 | |
0x11d0fd0bc: 0x00000000 unknown udf #0x0 | |
0x11d0fd0c0: 0x00000000 unknown udf #0x0 | |
0x11d0fd0c4: 0x00000000 unknown udf #0x0 | |
0x11d0fd0c8: 0x00000000 unknown udf #0x0 | |
0x11d0fd0cc: 0x00000000 unknown udf #0x0 | |
0x11d0fd0d0: 0x00000000 unknown udf #0x0 | |
0x11d0fd0d4: 0x00000000 unknown udf #0x0 | |
0x11d0fd0d8: 0x00000000 unknown udf #0x0 | |
0x11d0fd0dc: 0x00000000 unknown udf #0x0 | |
0x11d0fd0e0: 0x00000000 unknown udf #0x0 | |
0x11d0fd0e4: 0x00000000 unknown udf #0x0 | |
0x11d0fd0e8: 0x00000000 unknown udf #0x0 | |
0x11d0fd0ec: 0x00000000 unknown udf #0x0 | |
0x11d0fd0f0: 0x00000000 unknown udf #0x0 | |
0x11d0fd0f4: 0x00000000 unknown udf #0x0 | |
0x11d0fd0f8: 0x00000000 unknown udf #0x0 | |
0x11d0fd0fc: 0x00000000 unknown udf #0x0 | |
0x11d0fd100: 0x00000000 unknown udf #0x0 | |
0x11d0fd104: 0x00000000 unknown udf #0x0 | |
0x11d0fd108: 0x00000000 unknown udf #0x0 | |
0x11d0fd10c: 0x00000000 unknown udf #0x0 | |
0x11d0fd110: 0x00000000 unknown udf #0x0 | |
0x11d0fd114: 0x00000000 unknown udf #0x0 | |
0x11d0fd118: 0x00000000 unknown udf #0x0 | |
0x11d0fd11c: 0x00000000 unknown udf #0x0 | |
0x11d0fd120: 0x00000000 unknown udf #0x0 | |
0x11d0fd124: 0x00000000 unknown udf #0x0 | |
0x11d0fd128: 0x00000000 unknown udf #0x0 | |
0x11d0fd12c: 0x00000000 unknown udf #0x0 | |
0x11d0fd130: 0x00000000 unknown udf #0x0 | |
0x11d0fd134: 0x00000000 unknown udf #0x0 | |
0x11d0fd138: 0x00000000 unknown udf #0x0 | |
0x11d0fd13c: 0x00000000 unknown udf #0x0 | |
0x11d0fd140: 0x00000000 unknown udf #0x0 | |
0x11d0fd144: 0x00000000 unknown udf #0x0 | |
0x11d0fd148: 0x00000000 unknown udf #0x0 | |
0x11d0fd14c: 0x00000000 unknown udf #0x0 | |
0x11d0fd150: 0x00000000 unknown udf #0x0 | |
0x11d0fd154: 0x00000000 unknown udf #0x0 | |
0x11d0fd158: 0x00000000 unknown udf #0x0 | |
0x11d0fd15c: 0x00000000 unknown udf #0x0 | |
0x11d0fd160: 0x00000000 unknown udf #0x0 | |
0x11d0fd164: 0x00000000 unknown udf #0x0 | |
0x11d0fd168: 0x00000000 unknown udf #0x0 | |
0x11d0fd16c: 0x00000000 unknown udf #0x0 | |
0x11d0fd170: 0x00000000 unknown udf #0x0 | |
0x11d0fd174: 0x00000000 unknown udf #0x0 | |
0x11d0fd178: 0x00000000 unknown udf #0x0 | |
0x11d0fd17c: 0x00000000 unknown udf #0x0 | |
0x11d0fd180: 0x00000000 unknown udf #0x0 | |
0x11d0fd184: 0x00000000 unknown udf #0x0 | |
0x11d0fd188: 0x00000000 unknown udf #0x0 | |
0x11d0fd18c: 0x00000000 unknown udf #0x0 | |
0x11d0fd190: 0x00000000 unknown udf #0x0 | |
0x11d0fd194: 0x00000000 unknown udf #0x0 | |
0x11d0fd198: 0x00000000 unknown udf #0x0 | |
0x11d0fd19c: 0x00000000 unknown udf #0x0 | |
0x11d0fd1a0: 0x00000000 unknown udf #0x0 | |
0x11d0fd1a4: 0x00000000 unknown udf #0x0 | |
0x11d0fd1a8: 0x00000000 unknown udf #0x0 | |
0x11d0fd1ac: 0x00000000 unknown udf #0x0 | |
0x11d0fd1b0: 0x00000000 unknown udf #0x0 | |
0x11d0fd1b4: 0x00000000 unknown udf #0x0 | |
0x11d0fd1b8: 0x00000000 unknown udf #0x0 | |
0x11d0fd1bc: 0x00000000 unknown udf #0x0 | |
0x11d0fd1c0: 0x00000000 unknown udf #0x0 | |
0x11d0fd1c4: 0x00000000 unknown udf #0x0 | |
0x11d0fd1c8: 0x00000000 unknown udf #0x0 | |
0x11d0fd1cc: 0x00000000 unknown udf #0x0 | |
0x11d0fd1d0: 0x00000000 unknown udf #0x0 | |
0x11d0fd1d4: 0x00000000 unknown udf #0x0 | |
0x11d0fd1d8: 0x00000000 unknown udf #0x0 | |
0x11d0fd1dc: 0x00000000 unknown udf #0x0 | |
0x11d0fd1e0: 0x00000000 unknown udf #0x0 | |
0x11d0fd1e4: 0x00000000 unknown udf #0x0 | |
0x11d0fd1e8: 0x00000000 unknown udf #0x0 | |
0x11d0fd1ec: 0x00000000 unknown udf #0x0 | |
0x11d0fd1f0: 0x00000000 unknown udf #0x0 | |
0x11d0fd1f4: 0x00000000 unknown udf #0x0 | |
0x11d0fd1f8: 0x00000000 unknown udf #0x0 | |
0x11d0fd1fc: 0x00000000 unknown udf #0x0 | |
0x11d0fd200: 0x00000000 unknown udf #0x0 | |
0x11d0fd204: 0x00000000 unknown udf #0x0 | |
0x11d0fd208: 0x00000000 unknown udf #0x0 | |
0x11d0fd20c: 0x00000000 unknown udf #0x0 | |
0x11d0fd210: 0x00000000 unknown udf #0x0 | |
0x11d0fd214: 0x00000000 unknown udf #0x0 | |
0x11d0fd218: 0x00000000 unknown udf #0x0 | |
0x11d0fd21c: 0x00000000 unknown udf #0x0 | |
0x11d0fd220: 0x00000000 unknown udf #0x0 | |
0x11d0fd224: 0x00000000 unknown udf #0x0 | |
0x11d0fd228: 0x00000000 unknown udf #0x0 | |
0x11d0fd22c: 0x00000000 unknown udf #0x0 | |
0x11d0fd230: 0x00000000 unknown udf #0x0 | |
0x11d0fd234: 0x00000000 unknown udf #0x0 | |
0x11d0fd238: 0x00000000 unknown udf #0x0 | |
0x11d0fd23c: 0x00000000 unknown udf #0x0 | |
0x11d0fd240: 0x00000000 unknown udf #0x0 | |
0x11d0fd244: 0x00000000 unknown udf #0x0 | |
0x11d0fd248: 0x00000000 unknown udf #0x0 | |
0x11d0fd24c: 0x00000000 unknown udf #0x0 | |
0x11d0fd250: 0x00000000 unknown udf #0x0 | |
0x11d0fd254: 0x00000000 unknown udf #0x0 | |
0x11d0fd258: 0x00000000 unknown udf #0x0 | |
0x11d0fd25c: 0x00000000 unknown udf #0x0 | |
0x11d0fd260: 0x00000000 unknown udf #0x0 | |
0x11d0fd264: 0x00000000 unknown udf #0x0 | |
0x11d0fd268: 0x00000000 unknown udf #0x0 | |
0x11d0fd26c: 0x00000000 unknown udf #0x0 | |
0x11d0fd270: 0x00000000 unknown udf #0x0 | |
0x11d0fd274: 0x00000000 unknown udf #0x0 | |
0x11d0fd278: 0x00000000 unknown udf #0x0 | |
0x11d0fd27c: 0x00000000 unknown udf #0x0 | |
0x11d0fd280: 0x00000000 unknown udf #0x0 | |
0x11d0fd284: 0x00000000 unknown udf #0x0 | |
0x11d0fd288: 0x00000000 unknown udf #0x0 | |
0x11d0fd28c: 0x00000000 unknown udf #0x0 | |
0x11d0fd290: 0x00000000 unknown udf #0x0 | |
0x11d0fd294: 0x00000000 unknown udf #0x0 | |
0x11d0fd298: 0x00000000 unknown udf #0x0 | |
0x11d0fd29c: 0x00000000 unknown udf #0x0 | |
0x11d0fd2a0: 0x00000000 unknown udf #0x0 | |
0x11d0fd2a4: 0x00000000 unknown udf #0x0 | |
0x11d0fd2a8: 0x00000000 unknown udf #0x0 | |
0x11d0fd2ac: 0x00000000 unknown udf #0x0 | |
0x11d0fd2b0: 0x00000000 unknown udf #0x0 | |
0x11d0fd2b4: 0x00000000 unknown udf #0x0 | |
0x11d0fd2b8: 0x00000000 unknown udf #0x0 | |
0x11d0fd2bc: 0x00000000 unknown udf #0x0 | |
0x11d0fd2c0: 0x00000000 unknown udf #0x0 | |
0x11d0fd2c4: 0x00000000 unknown udf #0x0 | |
0x11d0fd2c8: 0x00000000 unknown udf #0x0 | |
0x11d0fd2cc: 0x00000000 unknown udf #0x0 | |
0x11d0fd2d0: 0x00000000 unknown udf #0x0 | |
0x11d0fd2d4: 0x00000000 unknown udf #0x0 | |
0x11d0fd2d8: 0x00000000 unknown udf #0x0 | |
0x11d0fd2dc: 0x00000000 unknown udf #0x0 | |
0x11d0fd2e0: 0x00000000 unknown udf #0x0 | |
0x11d0fd2e4: 0x00000000 unknown udf #0x0 | |
0x11d0fd2e8: 0x00000000 unknown udf #0x0 | |
0x11d0fd2ec: 0x00000000 unknown udf #0x0 | |
0x11d0fd2f0: 0x00000000 unknown udf #0x0 | |
0x11d0fd2f4: 0x00000000 unknown udf #0x0 | |
0x11d0fd2f8: 0x00000000 unknown udf #0x0 | |
0x11d0fd2fc: 0x00000000 unknown udf #0x0 | |
0x11d0fd300: 0x00000000 unknown udf #0x0 | |
0x11d0fd304: 0x00000000 unknown udf #0x0 | |
0x11d0fd308: 0x00000000 unknown udf #0x0 | |
0x11d0fd30c: 0x00000000 unknown udf #0x0 | |
0x11d0fd310: 0x00000000 unknown udf #0x0 | |
0x11d0fd314: 0x00000000 unknown udf #0x0 | |
0x11d0fd318: 0x00000000 unknown udf #0x0 | |
0x11d0fd31c: 0x00000000 unknown udf #0x0 | |
0x11d0fd320: 0x00000000 unknown udf #0x0 | |
0x11d0fd324: 0x00000000 unknown udf #0x0 | |
0x11d0fd328: 0x00000000 unknown udf #0x0 | |
0x11d0fd32c: 0x00000000 unknown udf #0x0 | |
0x11d0fd330: 0x00000000 unknown udf #0x0 | |
0x11d0fd334: 0x00000000 unknown udf #0x0 | |
0x11d0fd338: 0x00000000 unknown udf #0x0 | |
0x11d0fd33c: 0x00000000 unknown udf #0x0 | |
0x11d0fd340: 0x00000000 unknown udf #0x0 | |
0x11d0fd344: 0x00000000 unknown udf #0x0 | |
0x11d0fd348: 0x00000000 unknown udf #0x0 | |
0x11d0fd34c: 0x00000000 unknown udf #0x0 | |
0x11d0fd350: 0x00000000 unknown udf #0x0 | |
0x11d0fd354: 0x00000000 unknown udf #0x0 | |
0x11d0fd358: 0x00000000 unknown udf #0x0 | |
0x11d0fd35c: 0x00000000 unknown udf #0x0 | |
0x11d0fd360: 0x00000000 unknown udf #0x0 | |
0x11d0fd364: 0x00000000 unknown udf #0x0 | |
0x11d0fd368: 0x00000000 unknown udf #0x0 | |
0x11d0fd36c: 0x00000000 unknown udf #0x0 | |
0x11d0fd370: 0x00000000 unknown udf #0x0 | |
0x11d0fd374: 0x00000000 unknown udf #0x0 | |
0x11d0fd378: 0x00000000 unknown udf #0x0 | |
0x11d0fd37c: 0x00000000 unknown udf #0x0 | |
0x11d0fd380: 0x00000000 unknown udf #0x0 | |
0x11d0fd384: 0x00000000 unknown udf #0x0 | |
0x11d0fd388: 0x00000000 unknown udf #0x0 | |
0x11d0fd38c: 0x00000000 unknown udf #0x0 | |
0x11d0fd390: 0x00000000 unknown udf #0x0 | |
0x11d0fd394: 0x00000000 unknown udf #0x0 | |
0x11d0fd398: 0x00000000 unknown udf #0x0 | |
0x11d0fd39c: 0x00000000 unknown udf #0x0 | |
0x11d0fd3a0: 0x00000000 unknown udf #0x0 | |
0x11d0fd3a4: 0x00000000 unknown udf #0x0 | |
0x11d0fd3a8: 0x00000000 unknown udf #0x0 | |
0x11d0fd3ac: 0x00000000 unknown udf #0x0 | |
0x11d0fd3b0: 0x00000000 unknown udf #0x0 | |
0x11d0fd3b4: 0x00000000 unknown udf #0x0 | |
0x11d0fd3b8: 0x00000000 unknown udf #0x0 | |
0x11d0fd3bc: 0x00000000 unknown udf #0x0 | |
0x11d0fd3c0: 0x00000000 unknown udf #0x0 | |
0x11d0fd3c4: 0x00000000 unknown udf #0x0 | |
0x11d0fd3c8: 0x00000000 unknown udf #0x0 | |
0x11d0fd3cc: 0x00000000 unknown udf #0x0 | |
0x11d0fd3d0: 0x00000000 unknown udf #0x0 | |
0x11d0fd3d4: 0x00000000 unknown udf #0x0 | |
0x11d0fd3d8: 0x00000000 unknown udf #0x0 | |
0x11d0fd3dc: 0x00000000 unknown udf #0x0 | |
0x11d0fd3e0: 0x00000000 unknown udf #0x0 | |
0x11d0fd3e4: 0x00000000 unknown udf #0x0 | |
0x11d0fd3e8: 0x00000000 unknown udf #0x0 | |
0x11d0fd3ec: 0x00000000 unknown udf #0x0 | |
0x11d0fd3f0: 0x00000000 unknown udf #0x0 | |
0x11d0fd3f4: 0x00000000 unknown udf #0x0 | |
0x11d0fd3f8: 0x00000000 unknown udf #0x0 | |
0x11d0fd3fc: 0x00000000 unknown udf #0x0 | |
0x11d0fd400: 0x00000000 unknown udf #0x0 | |
0x11d0fd404: 0x00000000 unknown udf #0x0 | |
0x11d0fd408: 0x00000000 unknown udf #0x0 | |
0x11d0fd40c: 0x00000000 unknown udf #0x0 | |
0x11d0fd410: 0x00000000 unknown udf #0x0 | |
0x11d0fd414: 0x00000000 unknown udf #0x0 | |
0x11d0fd418: 0x00000000 unknown udf #0x0 | |
0x11d0fd41c: 0x00000000 unknown udf #0x0 | |
0x11d0fd420: 0x00000000 unknown udf #0x0 | |
0x11d0fd424: 0x00000000 unknown udf #0x0 | |
0x11d0fd428: 0x00000000 unknown udf #0x0 | |
0x11d0fd42c: 0x00000000 unknown udf #0x0 | |
0x11d0fd430: 0x00000000 unknown udf #0x0 | |
0x11d0fd434: 0x00000000 unknown udf #0x0 | |
0x11d0fd438: 0x00000000 unknown udf #0x0 | |
0x11d0fd43c: 0x00000000 unknown udf #0x0 | |
0x11d0fd440: 0x00000000 unknown udf #0x0 | |
0x11d0fd444: 0x00000000 unknown udf #0x0 | |
0x11d0fd448: 0x00000000 unknown udf #0x0 | |
0x11d0fd44c: 0x00000000 unknown udf #0x0 | |
0x11d0fd450: 0x00000000 unknown udf #0x0 | |
0x11d0fd454: 0x00000000 unknown udf #0x0 | |
0x11d0fd458: 0x00000000 unknown udf #0x0 | |
0x11d0fd45c: 0x00000000 unknown udf #0x0 | |
0x11d0fd460: 0x00000000 unknown udf #0x0 | |
0x11d0fd464: 0x00000000 unknown udf #0x0 | |
0x11d0fd468: 0x00000000 unknown udf #0x0 | |
0x11d0fd46c: 0x00000000 unknown udf #0x0 | |
0x11d0fd470: 0x00000000 unknown udf #0x0 | |
0x11d0fd474: 0x00000000 unknown udf #0x0 | |
0x11d0fd478: 0x00000000 unknown udf #0x0 | |
0x11d0fd47c: 0x00000000 unknown udf #0x0 | |
0x11d0fd480: 0x00000000 unknown udf #0x0 | |
0x11d0fd484: 0x00000000 unknown udf #0x0 | |
0x11d0fd488: 0x00000000 unknown udf #0x0 | |
0x11d0fd48c: 0x00000000 unknown udf #0x0 | |
0x11d0fd490: 0x00000000 unknown udf #0x0 | |
0x11d0fd494: 0x00000000 unknown udf #0x0 | |
0x11d0fd498: 0x00000000 unknown udf #0x0 | |
0x11d0fd49c: 0x00000000 unknown udf #0x0 | |
0x11d0fd4a0: 0x00000000 unknown udf #0x0 | |
0x11d0fd4a4: 0x00000000 unknown udf #0x0 | |
0x11d0fd4a8: 0x00000000 unknown udf #0x0 | |
0x11d0fd4ac: 0x00000000 unknown udf #0x0 | |
0x11d0fd4b0: 0x00000000 unknown udf #0x0 | |
0x11d0fd4b4: 0x00000000 unknown udf #0x0 | |
0x11d0fd4b8: 0x00000000 unknown udf #0x0 | |
0x11d0fd4bc: 0x00000000 unknown udf #0x0 | |
0x11d0fd4c0: 0x00000000 unknown udf #0x0 | |
0x11d0fd4c4: 0x00000000 unknown udf #0x0 | |
0x11d0fd4c8: 0x00000000 unknown udf #0x0 | |
0x11d0fd4cc: 0x00000000 unknown udf #0x0 | |
0x11d0fd4d0: 0x00000000 unknown udf #0x0 | |
0x11d0fd4d4: 0x00000000 unknown udf #0x0 | |
0x11d0fd4d8: 0x00000000 unknown udf #0x0 | |
0x11d0fd4dc: 0x00000000 unknown udf #0x0 | |
0x11d0fd4e0: 0x00000000 unknown udf #0x0 | |
0x11d0fd4e4: 0x00000000 unknown udf #0x0 | |
0x11d0fd4e8: 0x00000000 unknown udf #0x0 | |
0x11d0fd4ec: 0x00000000 unknown udf #0x0 | |
0x11d0fd4f0: 0x00000000 unknown udf #0x0 | |
0x11d0fd4f4: 0x00000000 unknown udf #0x0 | |
0x11d0fd4f8: 0x00000000 unknown udf #0x0 | |
0x11d0fd4fc: 0x00000000 unknown udf #0x0 | |
0x11d0fd500: 0x00000000 unknown udf #0x0 | |
0x11d0fd504: 0x00000000 unknown udf #0x0 | |
0x11d0fd508: 0x00000000 unknown udf #0x0 | |
0x11d0fd50c: 0x00000000 unknown udf #0x0 | |
0x11d0fd510: 0x00000000 unknown udf #0x0 | |
0x11d0fd514: 0x00000000 unknown udf #0x0 | |
0x11d0fd518: 0x00000000 unknown udf #0x0 | |
0x11d0fd51c: 0x00000000 unknown udf #0x0 | |
0x11d0fd520: 0x00000000 unknown udf #0x0 | |
0x11d0fd524: 0x00000000 unknown udf #0x0 | |
0x11d0fd528: 0x00000000 unknown udf #0x0 | |
0x11d0fd52c: 0x00000000 unknown udf #0x0 | |
0x11d0fd530: 0x00000000 unknown udf #0x0 | |
0x11d0fd534: 0x00000000 unknown udf #0x0 | |
0x11d0fd538: 0x00000000 unknown udf #0x0 | |
0x11d0fd53c: 0x00000000 unknown udf #0x0 | |
0x11d0fd540: 0x00000000 unknown udf #0x0 | |
0x11d0fd544: 0x00000000 unknown udf #0x0 | |
0x11d0fd548: 0x00000000 unknown udf #0x0 | |
0x11d0fd54c: 0x00000000 unknown udf #0x0 | |
0x11d0fd550: 0x00000000 unknown udf #0x0 | |
0x11d0fd554: 0x00000000 unknown udf #0x0 | |
0x11d0fd558: 0x00000000 unknown udf #0x0 | |
0x11d0fd55c: 0x00000000 unknown udf #0x0 | |
0x11d0fd560: 0x00000000 unknown udf #0x0 | |
0x11d0fd564: 0x00000000 unknown udf #0x0 | |
0x11d0fd568: 0x00000000 unknown udf #0x0 | |
0x11d0fd56c: 0x00000000 unknown udf #0x0 | |
0x11d0fd570: 0x00000000 unknown udf #0x0 | |
0x11d0fd574: 0x00000000 unknown udf #0x0 | |
0x11d0fd578: 0x00000000 unknown udf #0x0 | |
0x11d0fd57c: 0x00000000 unknown udf #0x0 | |
0x11d0fd580: 0x00000000 unknown udf #0x0 | |
0x11d0fd584: 0x00000000 unknown udf #0x0 | |
0x11d0fd588: 0x00000000 unknown udf #0x0 | |
0x11d0fd58c: 0x00000000 unknown udf #0x0 | |
0x11d0fd590: 0x00000000 unknown udf #0x0 | |
0x11d0fd594: 0x00000000 unknown udf #0x0 | |
0x11d0fd598: 0x00000000 unknown udf #0x0 | |
0x11d0fd59c: 0x00000000 unknown udf #0x0 | |
0x11d0fd5a0: 0x00000000 unknown udf #0x0 | |
0x11d0fd5a4: 0x00000000 unknown udf #0x0 | |
0x11d0fd5a8: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x1057fc000+0x15af]->0x11d0fc000 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11d0fc000, 0x134d5f800, 0x5551) came from [0x11d0fc000..0x11d0fd5b7) | |
0x11d0fc000: ff c3 06 d1 f4 4f 19 a9 fd 7b 1a a9 fd 83 06 91 | |
0x11d0fc010: f3 a3 02 91 60 72 00 f9 61 6e 00 f9 62 6a 00 f9 | |
0x11d0fc020: 63 66 00 f9 64 c6 00 b9 65 c2 00 b9 68 66 40 f9 | |
0x11d0fc030: 1f 01 00 f9 7f be 00 b9 68 c2 40 b9 08 01 00 34 | |
0x11d0fc040: 68 72 40 f9 e8 03 00 f9 00 00 00 b0 00 28 40 f9 | |
0x11d0fc050: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc060: 08 01 00 34 68 6e 40 f9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc070: 00 24 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc080: 68 c2 40 b9 08 01 00 34 68 6a 40 f9 e8 03 00 f9 | |
0x11d0fc090: 00 00 00 b0 00 20 40 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc0a0: 00 01 3f d6 68 c2 40 b9 88 01 00 34 68 c6 40 b9 | |
0x11d0fc0b0: 69 c6 40 b9 8a 01 80 d2 29 09 ca 9a e9 07 00 f9 | |
0x11d0fc0c0: e8 03 00 f9 00 00 00 b0 00 1c 40 f9 08 00 00 90 | |
0x11d0fc0d0: 08 b5 47 f9 00 01 3f d6 68 72 40 f9 a8 73 00 b4 | |
0x11d0fc0e0: 68 72 40 f9 68 5a 00 f9 68 72 40 f9 68 56 00 f9 | |
0x11d0fc0f0: 68 72 40 f9 68 52 00 f9 68 5a 40 f9 08 01 40 b9 | |
0x11d0fc100: 1f 41 00 71 03 07 00 54 68 52 40 f9 08 15 40 f9 | |
0x11d0fc110: 69 66 40 f9 28 01 00 f9 68 c2 40 b9 28 01 00 34 | |
0x11d0fc120: 68 52 40 f9 08 01 40 b9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc130: 00 0c 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc140: 68 c2 40 b9 28 01 00 34 68 52 40 f9 08 05 40 b9 | |
0x11d0fc150: e8 03 00 f9 00 00 00 b0 00 10 40 f9 08 00 00 90 | |
0x11d0fc160: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 28 01 00 34 | |
0x11d0fc170: 68 52 40 f9 08 09 40 b9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc180: 00 08 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc190: 68 c2 40 b9 28 01 00 34 68 52 40 f9 08 0d 40 b9 | |
0x11d0fc1a0: e8 03 00 f9 00 00 00 b0 00 18 40 f9 08 00 00 90 | |
0x11d0fc1b0: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 28 01 00 34 | |
0x11d0fc1c0: 68 66 40 f9 08 01 40 f9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc1d0: 00 14 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc1e0: 62 00 00 14 68 5a 40 f9 08 01 40 b9 1f 39 00 71 | |
0x11d0fc1f0: 83 06 00 54 68 c2 40 b9 28 01 00 34 68 56 40 f9 | |
0x11d0fc200: 08 01 40 b9 e8 03 00 f9 00 00 00 b0 00 0c 40 f9 | |
0x11d0fc210: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc220: 28 01 00 34 68 56 40 f9 08 05 40 b9 e8 03 00 f9 | |
0x11d0fc230: 00 00 00 b0 00 10 40 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc240: 00 01 3f d6 68 c2 40 b9 28 01 00 34 68 56 40 f9 | |
0x11d0fc250: 08 09 40 b9 e8 03 00 f9 00 00 00 b0 00 08 40 f9 | |
0x11d0fc260: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc270: 28 01 00 34 68 56 40 f9 08 0d 40 b9 e8 03 00 f9 | |
0x11d0fc280: 00 00 00 b0 00 04 40 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc290: 00 01 3f d6 68 c2 40 b9 28 01 00 34 68 56 40 f9 | |
0x11d0fc2a0: 08 11 40 b9 e8 03 00 f9 00 00 00 b0 00 00 40 f9 | |
0x11d0fc2b0: 08 00 00 90 08 b5 47 f9 00 01 3f d6 2a 00 00 14 | |
0x11d0fc2c0: 68 c2 40 b9 28 01 00 34 68 5a 40 f9 08 01 40 b9 | |
0x11d0fc2d0: e8 03 00 f9 00 00 00 b0 00 0c 40 f9 08 00 00 90 | |
0x11d0fc2e0: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 28 01 00 34 | |
0x11d0fc2f0: 68 5a 40 f9 08 05 40 b9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc300: 00 08 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc310: 68 c2 40 b9 28 01 00 34 68 5a 40 f9 08 09 40 b9 | |
0x11d0fc320: e8 03 00 f9 00 00 00 b0 00 04 40 f9 08 00 00 90 | |
0x11d0fc330: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 28 01 00 34 | |
0x11d0fc340: 68 5a 40 f9 08 0d 40 b9 e8 03 00 f9 00 00 00 b0 | |
0x11d0fc350: 00 00 40 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc360: 01 00 00 14 01 00 00 14 68 5a 40 f9 08 01 40 b9 | |
0x11d0fc370: 1f 41 00 71 01 2e 00 54 68 5a 40 f9 69 52 40 f9 | |
0x11d0fc380: 29 21 80 b9 08 01 09 8b 68 4e 00 f9 68 c6 40 b9 | |
0x11d0fc390: 89 01 80 d2 08 09 c9 9a 68 4a 00 f9 68 c2 40 b9 | |
0x11d0fc3a0: 08 01 00 34 68 4a 40 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fc3b0: 00 f0 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc3c0: 68 6a 40 f9 68 46 00 f9 68 4e 40 f9 08 81 10 91 | |
0x11d0fc3d0: 69 4e 40 f9 29 11 40 b9 29 05 00 11 29 7d 40 d3 | |
0x11d0fc3e0: 08 01 09 8b 68 42 00 f9 68 42 40 f9 69 4e 40 f9 | |
0x11d0fc3f0: 29 05 40 b9 08 01 09 8b 68 3e 00 f9 68 3e 40 f9 | |
0x11d0fc400: 69 4e 40 f9 29 05 40 b9 8a 00 80 d2 28 21 0a 9b | |
0x11d0fc410: 68 3a 00 f9 68 c2 40 b9 28 01 00 34 68 4e 40 f9 | |
0x11d0fc420: 08 05 40 b9 e8 03 00 f9 00 00 00 90 00 ec 47 f9 | |
0x11d0fc430: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc440: 28 01 00 34 68 4e 40 f9 08 11 40 b9 e8 03 00 f9 | |
0x11d0fc450: 00 00 00 90 00 e8 47 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc460: 00 01 3f d6 68 c2 40 b9 08 01 00 34 68 3a 40 f9 | |
0x11d0fc470: e8 03 00 f9 00 00 00 90 00 e4 47 f9 08 00 00 90 | |
0x11d0fc480: 08 b5 47 f9 00 01 3f d6 7f 6e 00 b9 68 6e 40 b9 | |
0x11d0fc490: 69 4e 40 f9 29 05 40 b9 1f 01 09 6b e2 10 00 54 | |
0x11d0fc4a0: 68 3a 40 f9 69 6e 40 b9 0a 01 80 d2 28 21 0a 9b | |
0x11d0fc4b0: 08 01 40 f9 08 fd 41 d3 08 b9 40 92 68 32 00 f9 | |
0x11d0fc4c0: 68 c2 40 b9 48 01 00 34 68 6e 40 b9 69 32 40 f9 | |
0x11d0fc4d0: e9 07 00 f9 e8 03 00 f9 00 00 00 90 00 fc 47 f9 | |
0x11d0fc4e0: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 3a 40 f9 | |
0x11d0fc4f0: 69 6e 40 b9 0a 01 80 d2 28 21 0a 9b 08 01 40 f9 | |
0x11d0fc500: 28 01 00 36 68 c2 40 b9 c8 00 00 34 00 00 00 90 | |
0x11d0fc510: 00 f8 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc520: 62 00 00 14 68 32 40 f9 28 01 00 b5 68 c2 40 b9 | |
0x11d0fc530: c8 00 00 34 00 00 00 90 00 f4 47 f9 08 00 00 90 | |
0x11d0fc540: 08 b5 47 f9 00 01 3f d6 58 00 00 14 68 46 40 f9 | |
0x11d0fc550: 68 09 00 b4 68 be 40 b9 69 4a 40 f9 1f 01 09 eb | |
0x11d0fc560: e2 08 00 54 68 6e 40 f9 69 32 40 f9 08 01 09 8b | |
0x11d0fc570: 69 46 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fc580: 28 01 00 f9 08 00 00 90 08 c5 47 f9 08 01 40 f9 | |
0x11d0fc590: 69 46 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fc5a0: 20 01 40 f9 00 01 3f d6 60 2e 00 f9 68 c2 40 b9 | |
0x11d0fc5b0: 08 02 00 34 68 be 40 b9 69 46 40 f9 6a be 40 b9 | |
0x11d0fc5c0: 8b 01 80 d2 49 25 0b 9b 29 01 40 f9 6a 2e 40 f9 | |
0x11d0fc5d0: ea 0b 00 f9 e9 07 00 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fc5e0: 00 c0 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc5f0: 68 2e 40 f9 68 2a 00 f9 a8 a0 82 52 68 4e 00 b9 | |
0x11d0fc600: 68 2a 40 f9 08 01 40 39 a8 33 15 38 a8 33 55 38 | |
0x11d0fc610: 08 1d 00 53 48 02 00 34 a8 33 55 38 1f b9 00 71 | |
0x11d0fc620: 61 00 00 54 7f 4e 00 b9 0e 00 00 14 68 4e 40 b9 | |
0x11d0fc630: 69 4e 40 b9 28 15 08 0b a9 33 55 38 08 01 09 0b | |
0x11d0fc640: 68 4e 00 b9 68 2a 40 f9 09 05 00 91 69 2a 00 f9 | |
0x11d0fc650: 08 05 40 39 a8 33 15 38 ed ff ff 17 01 00 00 14 | |
0x11d0fc660: 68 4e 40 b9 69 46 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fc670: 49 25 0b 9b 28 09 00 b9 09 00 00 14 68 c2 40 b9 | |
0x11d0fc680: c8 00 00 34 00 00 00 90 00 d0 47 f9 08 00 00 90 | |
0x11d0fc690: 08 b5 47 f9 00 01 3f d6 01 00 00 14 68 be 40 b9 | |
0x11d0fc6a0: 08 05 00 11 68 be 00 b9 68 6e 40 b9 08 05 00 11 | |
0x11d0fc6b0: 68 6e 00 b9 76 ff ff 17 68 3a 40 f9 69 4e 40 f9 | |
0x11d0fc6c0: 29 05 40 b9 0a 01 80 d2 28 21 0a 9b 68 22 00 f9 | |
0x11d0fc6d0: 68 22 40 f9 08 01 40 b9 68 3e 00 b9 68 22 40 f9 | |
0x11d0fc6e0: 08 11 00 91 68 1a 00 f9 68 c2 40 b9 08 01 00 34 | |
0x11d0fc6f0: 68 3e 40 b9 e8 03 00 f9 00 00 00 90 00 cc 47 f9 | |
0x11d0fc700: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fc710: 08 01 00 34 68 1a 40 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fc720: 00 c8 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc730: 7f 2e 00 b9 68 2e 40 b9 69 3e 40 b9 1f 01 09 6b | |
0x11d0fc740: 82 0f 00 54 68 3a 40 f9 69 2e 40 b9 0a 01 80 d2 | |
0x11d0fc750: 28 21 0a 9b 08 01 40 f9 08 fd 41 d3 08 b9 40 92 | |
0x11d0fc760: 68 12 00 f9 68 c2 40 b9 48 01 00 34 68 2e 40 b9 | |
0x11d0fc770: 69 12 40 f9 e9 07 00 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fc780: 00 fc 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fc790: 68 3a 40 f9 69 2e 40 b9 0a 01 80 d2 28 21 0a 9b | |
0x11d0fc7a0: 08 01 40 f9 28 01 00 36 68 c2 40 b9 c8 00 00 34 | |
0x11d0fc7b0: 00 00 00 90 00 f8 47 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc7c0: 00 01 3f d6 57 00 00 14 68 12 40 f9 28 01 00 b5 | |
0x11d0fc7d0: 68 c2 40 b9 c8 00 00 34 00 00 00 90 00 f4 47 f9 | |
0x11d0fc7e0: 08 00 00 90 08 b5 47 f9 00 01 3f d6 4d 00 00 14 | |
0x11d0fc7f0: 68 46 40 f9 48 09 00 b4 68 be 40 b9 69 4a 40 f9 | |
0x11d0fc800: 1f 01 09 eb c2 08 00 54 68 6e 40 f9 69 12 40 f9 | |
0x11d0fc810: 08 01 09 8b 69 46 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fc820: 49 25 0b 9b 28 01 00 f9 08 00 00 90 08 c5 47 f9 | |
0x11d0fc830: 08 01 40 f9 69 46 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fc840: 49 25 0b 9b 20 01 40 f9 00 01 3f d6 60 0e 00 f9 | |
0x11d0fc850: 68 c2 40 b9 08 02 00 34 68 be 40 b9 69 46 40 f9 | |
0x11d0fc860: 6a be 40 b9 8b 01 80 d2 49 25 0b 9b 29 01 40 f9 | |
0x11d0fc870: 6a 0e 40 f9 ea 0b 00 f9 e9 07 00 f9 e8 03 00 f9 | |
0x11d0fc880: 00 00 00 90 00 c0 47 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fc890: 00 01 3f d6 68 0e 40 f9 68 0a 00 f9 a8 a0 82 52 | |
0x11d0fc8a0: 68 0e 00 b9 68 0a 40 f9 08 01 40 39 e8 cf 02 39 | |
0x11d0fc8b0: e8 cf 42 39 08 1d 00 53 48 02 00 34 e8 cf 42 39 | |
0x11d0fc8c0: 1f b9 00 71 61 00 00 54 7f 0e 00 b9 0e 00 00 14 | |
0x11d0fc8d0: 68 0e 40 b9 69 0e 40 b9 28 15 08 0b e9 cf 42 39 | |
0x11d0fc8e0: 08 01 09 0b 68 0e 00 b9 68 0a 40 f9 09 05 00 91 | |
0x11d0fc8f0: 69 0a 00 f9 08 05 40 39 e8 cf 02 39 ed ff ff 17 | |
0x11d0fc900: 01 00 00 14 68 0e 40 b9 69 46 40 f9 6a be 40 b9 | |
0x11d0fc910: 8b 01 80 d2 49 25 0b 9b 28 09 00 b9 01 00 00 14 | |
0x11d0fc920: 68 2e 40 b9 08 05 00 11 68 2e 00 b9 82 ff ff 17 | |
0x11d0fc930: 77 01 00 14 68 5a 40 f9 08 01 40 b9 1f 31 00 71 | |
0x11d0fc940: 43 2e 00 54 68 5a 40 f9 08 01 40 b9 1f 3d 00 71 | |
0x11d0fc950: c8 2d 00 54 7f 02 00 f9 68 5a 40 f9 08 01 40 b9 | |
0x11d0fc960: 1f 39 00 71 e3 00 00 54 68 56 40 f9 69 56 40 f9 | |
0x11d0fc970: 29 11 80 b9 08 01 09 8b 68 02 00 f9 06 00 00 14 | |
0x11d0fc980: 68 5a 40 f9 69 5a 40 f9 29 0d 80 b9 08 01 09 8b | |
0x11d0fc990: 68 02 00 f9 68 c6 40 b9 89 01 80 d2 08 09 c9 9a | |
0x11d0fc9a0: e8 53 00 f9 68 c2 40 b9 08 01 00 34 e8 53 40 f9 | |
0x11d0fc9b0: e8 03 00 f9 00 00 00 90 00 f0 47 f9 08 00 00 90 | |
0x11d0fc9c0: 08 b5 47 f9 00 01 3f d6 68 6a 40 f9 e8 4f 00 f9 | |
0x11d0fc9d0: ff 97 00 b9 68 5a 40 f9 08 01 40 b9 1f 31 00 71 | |
0x11d0fc9e0: 61 00 00 54 08 02 80 52 e8 97 00 b9 68 02 40 f9 | |
0x11d0fc9f0: 08 81 10 91 69 02 40 f9 29 0d 40 b9 29 05 00 11 | |
0x11d0fca00: 29 7d 40 d3 08 01 09 8b e8 47 00 f9 e8 47 40 f9 | |
0x11d0fca10: 69 02 40 f9 29 01 40 b9 08 01 09 8b e8 43 00 f9 | |
0x11d0fca20: e8 43 40 f9 69 02 40 f9 29 01 40 b9 8a 00 80 d2 | |
0x11d0fca30: 28 21 0a 9b e8 3f 00 f9 68 c2 40 b9 28 01 00 34 | |
0x11d0fca40: 68 02 40 f9 08 01 40 b9 e8 03 00 f9 00 00 00 90 | |
0x11d0fca50: 00 ec 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fca60: 68 c2 40 b9 28 01 00 34 68 02 40 f9 08 0d 40 b9 | |
0x11d0fca70: e8 03 00 f9 00 00 00 90 00 e8 47 f9 08 00 00 90 | |
0x11d0fca80: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 08 01 00 34 | |
0x11d0fca90: e8 3f 40 f9 e8 03 00 f9 00 00 00 90 00 e4 47 f9 | |
0x11d0fcaa0: 08 00 00 90 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 | |
0x11d0fcab0: 08 01 00 34 e8 97 40 b9 e8 03 00 f9 00 00 00 90 | |
0x11d0fcac0: 00 e0 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fcad0: ff 77 00 b9 e8 77 40 b9 69 02 40 f9 29 01 40 b9 | |
0x11d0fcae0: 1f 01 09 6b 82 10 00 54 e8 3f 40 f9 e9 77 40 b9 | |
0x11d0fcaf0: 0a 01 80 d2 28 21 0a 9b 08 01 40 b9 e8 73 00 b9 | |
0x11d0fcb00: 68 c2 40 b9 48 01 00 34 e8 77 40 b9 e9 73 40 b9 | |
0x11d0fcb10: e9 07 00 f9 e8 03 00 f9 00 00 00 90 00 dc 47 f9 | |
0x11d0fcb20: 08 00 00 90 08 b5 47 f9 00 01 3f d6 e8 73 40 b9 | |
0x11d0fcb30: 28 01 00 36 68 c2 40 b9 c8 00 00 34 00 00 00 90 | |
0x11d0fcb40: 00 d8 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fcb50: 65 00 00 14 e8 73 40 b9 e9 97 40 b9 1f 01 09 6b | |
0x11d0fcb60: 21 01 00 54 68 c2 40 b9 c8 00 00 34 00 00 00 90 | |
0x11d0fcb70: 00 d4 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fcb80: 59 00 00 14 01 00 00 14 e8 4f 40 f9 68 09 00 b4 | |
0x11d0fcb90: 68 be 40 b9 e9 53 40 f9 1f 01 09 eb e2 08 00 54 | |
0x11d0fcba0: 68 02 40 f9 e9 73 80 b9 08 01 09 8b e9 4f 40 f9 | |
0x11d0fcbb0: 6a be 40 b9 8b 01 80 d2 49 25 0b 9b 28 01 00 f9 | |
0x11d0fcbc0: 08 00 00 90 08 c5 47 f9 08 01 40 f9 e9 4f 40 f9 | |
0x11d0fcbd0: 6a be 40 b9 8b 01 80 d2 49 25 0b 9b 20 01 40 f9 | |
0x11d0fcbe0: 00 01 3f d6 e0 37 00 f9 68 c2 40 b9 08 02 00 34 | |
0x11d0fcbf0: 68 be 40 b9 e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fcc00: 49 25 0b 9b 29 01 40 f9 ea 37 40 f9 ea 0b 00 f9 | |
0x11d0fcc10: e9 07 00 f9 e8 03 00 f9 00 00 00 90 00 c0 47 f9 | |
0x11d0fcc20: 08 00 00 90 08 b5 47 f9 00 01 3f d6 e8 37 40 f9 | |
0x11d0fcc30: e8 33 00 f9 a8 a0 82 52 e8 5f 00 b9 e8 33 40 f9 | |
0x11d0fcc40: 08 01 40 39 e8 6f 01 39 e8 6f 41 39 08 1d 00 53 | |
0x11d0fcc50: 48 02 00 34 e8 6f 41 39 1f b9 00 71 61 00 00 54 | |
0x11d0fcc60: ff 5f 00 b9 0e 00 00 14 e8 5f 40 b9 e9 5f 40 b9 | |
0x11d0fcc70: 28 15 08 0b e9 6f 41 39 08 01 09 0b e8 5f 00 b9 | |
0x11d0fcc80: e8 33 40 f9 09 05 00 91 e9 33 00 f9 08 05 40 39 | |
0x11d0fcc90: e8 6f 01 39 ed ff ff 17 01 00 00 14 e8 5f 40 b9 | |
0x11d0fcca0: e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fccb0: 28 09 00 b9 09 00 00 14 68 c2 40 b9 c8 00 00 34 | |
0x11d0fccc0: 00 00 00 90 00 d0 47 f9 08 00 00 90 08 b5 47 f9 | |
0x11d0fccd0: 00 01 3f d6 01 00 00 14 68 be 40 b9 08 05 00 11 | |
0x11d0fcce0: 68 be 00 b9 e8 77 40 b9 08 05 00 11 e8 77 00 b9 | |
0x11d0fccf0: 79 ff ff 17 e8 3f 40 f9 69 02 40 f9 29 01 40 b9 | |
0x11d0fcd00: 0a 01 80 d2 28 21 0a 9b e8 2b 00 f9 e8 2b 40 f9 | |
0x11d0fcd10: 08 01 40 b9 e8 4f 00 b9 e8 2b 40 f9 08 11 00 91 | |
0x11d0fcd20: e8 23 00 f9 68 c2 40 b9 08 01 00 34 e8 4f 40 b9 | |
0x11d0fcd30: e8 03 00 f9 00 00 00 90 00 cc 47 f9 08 00 00 90 | |
0x11d0fcd40: 08 b5 47 f9 00 01 3f d6 68 c2 40 b9 08 01 00 34 | |
0x11d0fcd50: e8 23 40 f9 e8 03 00 f9 00 00 00 90 00 c8 47 f9 | |
0x11d0fcd60: 08 00 00 90 08 b5 47 f9 00 01 3f d6 ff 3f 00 b9 | |
0x11d0fcd70: e8 3f 40 b9 e9 4f 40 b9 1f 01 09 6b 42 0c 00 54 | |
0x11d0fcd80: e8 23 40 f9 e9 3f 40 b9 0a 01 80 d2 28 21 0a 9b | |
0x11d0fcd90: 08 01 40 b9 e8 3b 00 b9 e8 3b 40 b9 48 00 00 36 | |
0x11d0fcda0: 55 00 00 14 e8 3b 40 b9 e9 97 40 b9 1f 01 09 6b | |
0x11d0fcdb0: 41 00 00 54 50 00 00 14 01 00 00 14 e8 4f 40 f9 | |
0x11d0fcdc0: 48 09 00 b4 68 be 40 b9 e9 53 40 f9 1f 01 09 eb | |
0x11d0fcdd0: c2 08 00 54 68 02 40 f9 e9 3b 80 b9 08 01 09 8b | |
0x11d0fcde0: e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fcdf0: 28 01 00 f9 08 00 00 90 08 c5 47 f9 08 01 40 f9 | |
0x11d0fce00: e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 49 25 0b 9b | |
0x11d0fce10: 20 01 40 f9 00 01 3f d6 e0 1b 00 f9 68 c2 40 b9 | |
0x11d0fce20: 08 02 00 34 68 be 40 b9 e9 4f 40 f9 6a be 40 b9 | |
0x11d0fce30: 8b 01 80 d2 49 25 0b 9b 29 01 40 f9 ea 1b 40 f9 | |
0x11d0fce40: ea 0b 00 f9 e9 07 00 f9 e8 03 00 f9 00 00 00 90 | |
0x11d0fce50: 00 c0 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fce60: e8 1b 40 f9 e8 17 00 f9 a8 a0 82 52 e8 27 00 b9 | |
0x11d0fce70: e8 17 40 f9 08 01 40 39 e8 8f 00 39 e8 8f 40 39 | |
0x11d0fce80: 08 1d 00 53 48 02 00 34 e8 8f 40 39 1f b9 00 71 | |
0x11d0fce90: 61 00 00 54 ff 27 00 b9 0e 00 00 14 e8 27 40 b9 | |
0x11d0fcea0: e9 27 40 b9 28 15 08 0b e9 8f 40 39 08 01 09 0b | |
0x11d0fceb0: e8 27 00 b9 e8 17 40 f9 09 05 00 91 e9 17 00 f9 | |
0x11d0fcec0: 08 05 40 39 e8 8f 00 39 ed ff ff 17 01 00 00 14 | |
0x11d0fced0: e8 27 40 b9 e9 4f 40 f9 6a be 40 b9 8b 01 80 d2 | |
0x11d0fcee0: 49 25 0b 9b 28 09 00 b9 68 be 40 b9 08 05 00 11 | |
0x11d0fcef0: 68 be 00 b9 e8 3f 40 b9 08 05 00 11 e8 3f 00 b9 | |
0x11d0fcf00: 9c ff ff 17 01 00 00 14 01 00 00 14 68 c2 40 b9 | |
0x11d0fcf10: 08 01 00 34 68 be 40 b9 e8 03 00 f9 00 00 00 90 | |
0x11d0fcf20: 00 bc 47 f9 08 00 00 90 08 b5 47 f9 00 01 3f d6 | |
0x11d0fcf30: 68 c2 40 b9 c8 00 00 34 00 00 00 90 00 b8 47 f9 | |
0x11d0fcf40: 08 00 00 90 08 b5 47 f9 00 01 3f d6 01 00 00 14 | |
0x11d0fcf50: 60 be 40 b9 fd 7b 5a a9 f4 4f 59 a9 ff c3 06 91 | |
0x11d0fcf60: c0 03 5f d6 00 00 00 00 1c 00 88 8a 01 00 00 00 | |
0x11d0fcf70: 13 84 0f 1d 01 00 00 00 03 84 0f 1d 01 00 00 00 | |
0x11d0fcf80: 36 83 0f 1d 01 00 00 00 30 84 0f 1d 01 00 00 00 | |
0x11d0fcf90: 8a 83 0f 1d 01 00 00 00 74 83 0f 1d 01 00 00 00 | |
0x11d0fcfa0: 49 83 0f 1d 01 00 00 00 e2 83 0f 1d 01 00 00 00 | |
0x11d0fcfb0: d3 83 0f 1d 01 00 00 00 bf 83 0f 1d 01 00 00 00 | |
0x11d0fcfc0: a6 83 0f 1d 01 00 00 00 ca 82 0f 1d 01 00 00 00 | |
0x11d0fcfd0: b2 82 0f 1d 01 00 00 00 9b 82 0f 1d 01 00 00 00 | |
0x11d0fcfe0: 83 82 0f 1d 01 00 00 00 0d 83 0f 1d 01 00 00 00 | |
0x11d0fcff0: f9 82 0f 1d 01 00 00 00 dd 82 0f 1d 01 00 00 00 | |
0x11d0fd000: 65 82 0f 1d 01 00 00 00 44 82 0f 1d 01 00 00 00 | |
0x11d0fd010: c5 81 0f 1d 01 00 00 00 97 81 0f 1d 01 00 00 00 | |
0x11d0fd020: af 81 0f 1d 01 00 00 00 07 82 0f 1d 01 00 00 00 | |
0x11d0fd030: e3 81 0f 1d 01 00 00 00 68 81 0f 1d 01 00 00 00 | |
0x11d0fd040: 52 81 0f 1d 01 00 00 00 36 81 0f 1d 01 00 00 00 | |
0x11d0fd050: 20 81 0f 1d 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd0f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd1f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd260: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd270: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd2f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd3f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd4f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd540: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd550: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0fd5a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x107ffc000+0x307]->0x11d0f8120 (alignment 8, section ID 1, name __cstring) | |
IRMemoryMap::ReadMemory (0x11d0f8120, 0x1255bb3a0, 0x775) came from [0x11d0f8120..0x11d0f842f) | |
0x11d0f8120: 6f 62 6a 63 5f 6f 70 74 5f 72 6f 5f 70 74 72 20 | |
0x11d0f8130: 3d 20 25 70 0a 00 73 68 61 72 65 64 5f 63 61 63 | |
0x11d0f8140: 68 65 5f 62 61 73 65 5f 70 74 72 20 3d 20 25 70 | |
0x11d0f8150: 0a 00 63 6c 61 73 73 5f 69 6e 66 6f 73 5f 70 74 | |
0x11d0f8160: 72 20 3d 20 25 70 0a 00 63 6c 61 73 73 5f 69 6e | |
0x11d0f8170: 66 6f 73 5f 62 79 74 65 5f 73 69 7a 65 20 3d 20 | |
0x11d0f8180: 25 75 20 28 25 6c 6c 75 20 63 6c 61 73 73 20 69 | |
0x11d0f8190: 6e 66 6f 73 29 0a 00 6f 62 6a 63 5f 6f 70 74 2d | |
0x11d0f81a0: 3e 76 65 72 73 69 6f 6e 20 3d 20 25 75 0a 00 6f | |
0x11d0f81b0: 62 6a 63 5f 6f 70 74 2d 3e 66 6c 61 67 73 20 3d | |
0x11d0f81c0: 20 25 75 0a 00 6f 62 6a 63 5f 6f 70 74 2d 3e 73 | |
0x11d0f81d0: 65 6c 6f 70 74 5f 6f 66 66 73 65 74 20 3d 20 25 | |
0x11d0f81e0: 64 0a 00 6f 62 6a 63 5f 6f 70 74 2d 3e 68 65 61 | |
0x11d0f81f0: 64 65 72 6f 70 74 5f 72 6f 5f 6f 66 66 73 65 74 | |
0x11d0f8200: 20 3d 20 25 64 0a 00 6f 62 6a 63 5f 6f 70 74 2d | |
0x11d0f8210: 3e 72 65 6c 61 74 69 76 65 4d 65 74 68 6f 64 53 | |
0x11d0f8220: 65 6c 65 63 74 6f 72 42 61 73 65 41 64 64 72 65 | |
0x11d0f8230: 73 73 43 61 63 68 65 4f 66 66 73 65 74 20 3d 20 | |
0x11d0f8240: 25 64 0a 00 6f 62 6a 63 5f 6f 70 74 2d 3e 68 65 | |
0x11d0f8250: 61 64 65 72 6f 70 74 5f 6f 66 66 73 65 74 20 3d | |
0x11d0f8260: 20 25 64 0a 00 6f 62 6a 63 5f 6f 70 74 2d 3e 63 | |
0x11d0f8270: 6c 73 6f 70 74 5f 6f 66 66 73 65 74 20 3d 20 25 | |
0x11d0f8280: 64 0a 00 6d 61 78 5f 63 6c 61 73 73 5f 69 6e 66 | |
0x11d0f8290: 6f 73 20 3d 20 25 6c 6c 75 0a 00 63 6c 73 6f 70 | |
0x11d0f82a0: 74 2d 3e 63 61 70 61 63 69 74 79 20 3d 20 25 75 | |
0x11d0f82b0: 0a 00 63 6c 73 6f 70 74 2d 3e 6d 61 73 6b 20 3d | |
0x11d0f82c0: 20 30 78 25 38 2e 38 78 0a 00 63 6c 61 73 73 4f | |
0x11d0f82d0: 66 66 73 65 74 73 20 3d 20 25 70 0a 00 6f 62 6a | |
0x11d0f82e0: 65 63 74 43 61 63 68 65 4f 66 66 73 65 74 5b 25 | |
0x11d0f82f0: 75 5d 20 3d 20 25 75 0a 00 69 73 44 75 70 6c 69 | |
0x11d0f8300: 63 61 74 65 20 3d 20 74 72 75 65 0a 00 6f 62 6a | |
0x11d0f8310: 65 63 74 43 61 63 68 65 4f 66 66 73 65 74 20 3d | |
0x11d0f8320: 3d 20 69 6e 76 61 6c 69 64 45 6e 74 72 79 4f 66 | |
0x11d0f8330: 66 73 65 74 0a 00 5b 25 75 5d 20 69 73 61 20 3d | |
0x11d0f8340: 20 25 38 70 20 25 73 0a 00 6e 6f 74 28 63 6c 61 | |
0x11d0f8350: 73 73 5f 69 6e 66 6f 73 20 26 26 20 69 64 78 20 | |
0x11d0f8360: 3c 20 6d 61 78 5f 63 6c 61 73 73 5f 69 6e 66 6f | |
0x11d0f8370: 73 29 0a 00 64 75 70 6c 69 63 61 74 65 5f 63 6f | |
0x11d0f8380: 75 6e 74 20 3d 20 25 75 0a 00 64 75 70 6c 69 63 | |
0x11d0f8390: 61 74 65 43 6c 61 73 73 4f 66 66 73 65 74 73 20 | |
0x11d0f83a0: 3d 20 25 70 0a 00 69 6e 76 61 6c 69 64 45 6e 74 | |
0x11d0f83b0: 72 79 4f 66 66 73 65 74 20 3d 20 25 64 0a 00 63 | |
0x11d0f83c0: 6c 73 4f 66 66 73 65 74 5b 25 75 5d 20 3d 20 25 | |
0x11d0f83d0: 75 0a 00 63 6c 73 4f 66 66 73 65 74 20 26 20 31 | |
0x11d0f83e0: 0a 00 63 6c 73 4f 66 66 73 65 74 20 3d 3d 20 69 | |
0x11d0f83f0: 6e 76 61 6c 69 64 45 6e 74 72 79 4f 66 66 73 65 | |
0x11d0f8400: 74 0a 00 25 75 20 63 6c 61 73 73 5f 69 6e 66 6f | |
0x11d0f8410: 73 0a 00 64 6f 6e 65 0a 00 00 00 00 00 00 00 00 | |
0x11d0f8420: 00 00 00 00 00 00 00 | |
[0x107ffc308+0x17]->0x11d0f8430 (alignment 8, section ID 2, name __data) | |
IRMemoryMap::ReadMemory (0x11d0f8430, 0x6000006b0040, 0x23) came from [0x11d0f8430..0x11d0f844f) | |
0x11d0f8430: 04 12 62 8a 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f8440: 00 00 00 00 00 00 00 | |
[0x107ffc320+0xf]->0x11d0f8450 (alignment 8, section ID 3, name __bss) | |
IRMemoryMap::ReadMemory (0x11d0f8450, 0x60000031bc80, 0x15) came from [0x11d0f8450..0x11d0f8467) | |
0x11d0f8450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x107ffc330+0x16]->0x11d0f8470 (alignment 8, section ID 4, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f8470, 0x6000007c6840, 0x22) came from [0x11d0f8470..0x11d0f848f) | |
0x11d0f8470: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f8480: 00 00 00 00 00 00 | |
[0x107ffc348+0x159]->0xffffffffffffffff (alignment 8, section ID 5, name __debug_abbrev) | |
0x107ffc348: 01 11 01 25 0e 13 05 03 0e 10 17 1b 0e e5 7f 0b | |
0x107ffc358: 11 01 12 06 00 00 02 34 00 03 0e 49 13 3f 19 3a | |
0x107ffc368: 0b 3b 0b 02 18 00 00 03 0f 00 49 13 00 00 04 15 | |
0x107ffc378: 01 49 13 00 00 05 05 00 49 13 00 00 06 26 00 49 | |
0x107ffc388: 13 00 00 07 24 00 03 0e 3e 0b 0b 0b 00 00 08 0f | |
0x107ffc398: 00 00 00 09 34 00 49 13 3a 0b 3b 0b 02 18 00 00 | |
0x107ffc3a8: 0a 01 01 49 13 00 00 0b 21 00 49 13 37 0b 00 00 | |
0x107ffc3b8: 0c 24 00 03 0e 0b 0b 3e 0b 00 00 0d 34 00 49 13 | |
0x107ffc3c8: 3a 0b 3b 05 02 18 00 00 0e 16 00 49 13 03 0e 3a | |
0x107ffc3d8: 0b 3b 0b 00 00 0f 13 01 36 0b 03 0e 0b 0b 3a 0b | |
0x107ffc3e8: 3b 0b 00 00 10 0d 00 03 0e 49 13 3a 0b 3b 0b 38 | |
0x107ffc3f8: 0b 00 00 11 13 01 36 0b 03 0e 0b 05 3a 0b 3b 0b | |
0x107ffc408: 00 00 12 0d 00 03 0e 49 13 3a 0b 3b 0b 38 05 00 | |
0x107ffc418: 00 13 21 00 49 13 37 05 00 00 14 16 00 49 13 03 | |
0x107ffc428: 0e 00 00 15 13 00 03 0e 3c 19 00 00 16 0d 00 03 | |
0x107ffc438: 0e 49 13 3a 0b 3b 0b 0d 0b 6b 0b 00 00 17 2e 01 | |
0x107ffc448: 11 01 12 06 40 18 6e 0e 03 0e 3a 0b 3b 0b 49 13 | |
0x107ffc458: 3f 19 00 00 18 05 00 02 18 03 0e 3a 0b 3b 0b 49 | |
0x107ffc468: 13 00 00 19 34 00 02 18 03 0e 3a 0b 3b 0b 49 13 | |
0x107ffc478: 00 00 1a 0b 01 11 01 12 06 00 00 1b 34 00 02 18 | |
0x107ffc488: 03 0e 3a 0b 3b 05 49 13 00 00 00 00 00 00 00 00 | |
0x107ffc498: 00 00 00 00 00 00 00 00 00 | |
[0x107ffc4a8+0xc90]->0xffffffffffffffff (alignment 8, section ID 6, name __debug_info) | |
0x107ffc4a8: ee 0a 00 00 04 00 00 00 00 00 08 01 00 00 00 00 | |
0x107ffc4b8: 11 00 2f 00 00 00 00 00 00 00 73 00 00 00 02 00 | |
0x107ffc4c8: c0 0f 1d 01 00 00 00 64 0f 00 00 02 75 00 00 00 | |
0x107ffc4d8: 40 00 00 00 01 28 09 03 30 84 0f 1d 01 00 00 00 | |
0x107ffc4e8: 03 45 00 00 00 04 50 00 00 00 05 61 00 00 00 00 | |
0x107ffc4f8: 03 55 00 00 00 06 5a 00 00 00 07 8c 00 00 00 06 | |
0x107ffc508: 01 08 09 73 00 00 00 01 92 09 03 20 81 0f 1d 01 | |
0x107ffc518: 00 00 00 0a 55 00 00 00 0b 7f 00 00 00 16 00 0c | |
0x107ffc528: 91 00 00 00 08 07 09 97 00 00 00 01 93 09 03 36 | |
0x107ffc538: 81 0f 1d 01 00 00 00 0a 55 00 00 00 0b 7f 00 00 | |
0x107ffc548: 00 1c 00 09 73 00 00 00 01 94 09 03 52 81 0f 1d | |
0x107ffc558: 01 00 00 00 09 c5 00 00 00 01 95 09 03 68 81 0f | |
0x107ffc568: 1d 01 00 00 00 0a 55 00 00 00 0b 7f 00 00 00 2f | |
0x107ffc578: 00 09 e2 00 00 00 01 9e 09 03 97 81 0f 1d 01 00 | |
0x107ffc588: 00 00 0a 55 00 00 00 0b 7f 00 00 00 18 00 09 73 | |
0x107ffc598: 00 00 00 01 9f 09 03 af 81 0f 1d 01 00 00 00 09 | |
0x107ffc5a8: 10 01 00 00 01 a0 09 03 c5 81 0f 1d 01 00 00 00 | |
0x107ffc5b8: 0a 55 00 00 00 0b 7f 00 00 00 1e 00 09 2d 01 00 | |
0x107ffc5c8: 00 01 a1 09 03 e3 81 0f 1d 01 00 00 00 0a 55 00 | |
0x107ffc5d8: 00 00 0b 7f 00 00 00 24 00 09 4a 01 00 00 01 a2 | |
0x107ffc5e8: 09 03 07 82 0f 1d 01 00 00 00 0a 55 00 00 00 0b | |
0x107ffc5f8: 7f 00 00 00 3d 00 09 67 01 00 00 01 a9 09 03 44 | |
0x107ffc608: 82 0f 1d 01 00 00 00 0a 55 00 00 00 0b 7f 00 00 | |
0x107ffc618: 00 21 00 09 10 01 00 00 01 aa 09 03 65 82 0f 1d | |
0x107ffc628: 01 00 00 00 09 e2 00 00 00 01 b9 09 03 83 82 0f | |
0x107ffc638: 1d 01 00 00 00 09 a6 01 00 00 01 c1 09 03 9b 82 | |
0x107ffc648: 0f 1d 01 00 00 00 0a 55 00 00 00 0b 7f 00 00 00 | |
0x107ffc658: 17 00 09 e2 00 00 00 01 c2 09 03 b2 82 0f 1d 01 | |
0x107ffc668: 00 00 00 09 d4 01 00 00 01 c3 09 03 ca 82 0f 1d | |
0x107ffc678: 01 00 00 00 0a 55 00 00 00 0b 7f 00 00 00 13 00 | |
0x107ffc688: 09 97 00 00 00 01 c8 09 03 dd 82 0f 1d 01 00 00 | |
0x107ffc698: 00 09 02 02 00 00 01 cb 09 03 f9 82 0f 1d 01 00 | |
0x107ffc6a8: 00 00 0a 55 00 00 00 0b 7f 00 00 00 14 00 09 1f | |
0x107ffc6b8: 02 00 00 01 d0 09 03 0d 83 0f 1d 01 00 00 00 0a | |
0x107ffc6c8: 55 00 00 00 0b 7f 00 00 00 29 00 09 d4 01 00 00 | |
0x107ffc6d8: 01 da 09 03 36 83 0f 1d 01 00 00 00 09 4d 02 00 | |
0x107ffc6e8: 00 01 f0 09 03 49 83 0f 1d 01 00 00 00 0a 55 00 | |
0x107ffc6f8: 00 00 0b 7f 00 00 00 2b 00 09 73 00 00 00 01 f9 | |
0x107ffc708: 09 03 74 83 0f 1d 01 00 00 00 09 97 00 00 00 01 | |
0x107ffc718: fa 09 03 8a 83 0f 1d 01 00 00 00 0d 8d 02 00 00 | |
0x107ffc728: 01 3b 01 09 03 a6 83 0f 1d 01 00 00 00 0a 55 00 | |
0x107ffc738: 00 00 0b 7f 00 00 00 19 00 0d 02 02 00 00 01 3f | |
0x107ffc748: 01 09 03 bf 83 0f 1d 01 00 00 00 0d bd 02 00 00 | |
0x107ffc758: 01 42 01 09 03 d3 83 0f 1d 01 00 00 00 0a 55 00 | |
0x107ffc768: 00 00 0b 7f 00 00 00 0f 00 0d 67 01 00 00 01 47 | |
0x107ffc778: 01 09 03 e2 83 0f 1d 01 00 00 00 0d ed 02 00 00 | |
0x107ffc788: 01 90 01 09 03 03 84 0f 1d 01 00 00 00 0a 55 00 | |
0x107ffc798: 00 00 0b 7f 00 00 00 10 00 0d 0b 03 00 00 01 91 | |
0x107ffc7a8: 01 09 03 13 84 0f 1d 01 00 00 00 0a 55 00 00 00 | |
0x107ffc7b8: 0b 7f 00 00 00 06 00 0e 22 03 00 00 a6 00 00 00 | |
0x107ffc7c8: 01 1a 07 af 00 00 00 07 08 03 2e 03 00 00 0f 05 | |
0x107ffc7d8: c2 00 00 00 10 01 65 10 cd 00 00 00 68 03 00 00 | |
0x107ffc7e8: 01 66 00 10 eb 00 00 00 7a 03 00 00 01 67 04 10 | |
0x107ffc7f8: 05 01 00 00 7a 03 00 00 01 68 08 10 16 01 00 00 | |
0x107ffc808: 7a 03 00 00 01 69 0c 00 0e 73 03 00 00 d5 00 00 | |
0x107ffc818: 00 01 18 07 de 00 00 00 07 04 0e 85 03 00 00 f9 | |
0x107ffc828: 00 00 00 01 17 07 01 01 00 00 05 04 03 91 03 00 | |
0x107ffc838: 00 0f 05 24 01 00 00 14 01 6c 10 cd 00 00 00 68 | |
0x107ffc848: 03 00 00 01 6d 00 10 33 01 00 00 68 03 00 00 01 | |
0x107ffc858: 6e 04 10 eb 00 00 00 7a 03 00 00 01 6f 08 10 05 | |
0x107ffc868: 01 00 00 7a 03 00 00 01 70 0c 10 16 01 00 00 7a | |
0x107ffc878: 03 00 00 01 71 10 00 03 dc 03 00 00 0f 05 39 01 | |
0x107ffc888: 00 00 30 01 74 10 cd 00 00 00 68 03 00 00 01 75 | |
0x107ffc898: 00 10 33 01 00 00 68 03 00 00 01 76 04 10 eb 00 | |
0x107ffc8a8: 00 00 7a 03 00 00 01 77 08 10 48 01 00 00 7a 03 | |
0x107ffc8b8: 00 00 01 78 0c 10 5c 01 00 00 7a 03 00 00 01 79 | |
0x107ffc8c8: 10 10 71 01 00 00 7a 03 00 00 01 7a 14 10 8b 01 | |
0x107ffc8d8: 00 00 7a 03 00 00 01 7b 18 10 9f 01 00 00 7a 03 | |
0x107ffc8e8: 00 00 01 7c 1c 10 ba 01 00 00 7a 03 00 00 01 7d | |
0x107ffc8f8: 20 10 d7 01 00 00 7a 03 00 00 01 7e 24 10 f7 01 | |
0x107ffc908: 00 00 17 03 00 00 01 7f 28 00 03 6f 04 00 00 06 | |
0x107ffc918: 74 04 00 00 11 05 24 02 00 00 20 04 01 54 10 cd | |
0x107ffc928: 00 00 00 68 03 00 00 01 55 00 10 36 02 00 00 68 | |
0x107ffc938: 03 00 00 01 56 04 10 3f 02 00 00 68 03 00 00 01 | |
0x107ffc948: 57 08 10 48 02 00 00 68 03 00 00 01 58 0c 10 4e | |
0x107ffc958: 02 00 00 68 03 00 00 01 59 10 10 53 02 00 00 68 | |
0x107ffc968: 03 00 00 01 5a 14 10 58 02 00 00 17 03 00 00 01 | |
0x107ffc978: 5b 18 10 5d 02 00 00 ec 04 00 00 01 5c 20 12 66 | |
0x107ffc988: 02 00 00 f9 04 00 00 01 5d 20 04 00 0a 68 03 00 | |
0x107ffc998: 00 13 7f 00 00 00 00 01 00 0a 05 05 00 00 0b 7f | |
0x107ffc9a8: 00 00 00 00 00 0e 10 05 00 00 6a 02 00 00 01 14 | |
0x107ffc9b8: 07 72 02 00 00 08 01 03 05 05 00 00 03 21 05 00 | |
0x107ffc9c8: 00 0f 05 80 02 00 00 0c 01 82 10 8a 02 00 00 43 | |
0x107ffc9d8: 05 00 00 01 84 00 10 9f 02 00 00 68 03 00 00 01 | |
0x107ffc9e8: 85 08 00 14 4c 05 00 00 8e 02 00 00 03 51 05 00 | |
0x107ffc9f8: 00 15 94 02 00 00 03 5b 05 00 00 06 7a 03 00 00 | |
0x107ffca08: 03 65 05 00 00 06 6a 05 00 00 0f 05 a4 02 00 00 | |
0x107ffca18: 08 01 3d 16 bb 02 00 00 17 03 00 00 01 3e 01 00 | |
0x107ffca28: 16 c7 02 00 00 17 03 00 00 01 3f 2f 01 16 d9 02 | |
0x107ffca38: 00 00 17 03 00 00 01 40 10 30 00 03 68 03 00 00 | |
0x107ffca48: 03 a5 05 00 00 06 aa 05 00 00 11 05 e8 02 00 00 | |
0x107ffca58: 20 04 01 43 10 36 02 00 00 68 03 00 00 01 44 00 | |
0x107ffca68: 10 3f 02 00 00 68 03 00 00 01 45 04 10 48 02 00 | |
0x107ffca78: 00 68 03 00 00 01 46 08 10 4e 02 00 00 68 03 00 | |
0x107ffca88: 00 01 47 0c 10 53 02 00 00 68 03 00 00 01 48 10 | |
0x107ffca98: 10 f6 02 00 00 68 03 00 00 01 49 14 10 58 02 00 | |
0x107ffcaa8: 00 17 03 00 00 01 4a 18 10 5d 02 00 00 ec 04 00 | |
0x107ffcab8: 00 01 4b 20 12 66 02 00 00 f9 04 00 00 01 4c 20 | |
0x107ffcac8: 04 00 03 27 06 00 00 06 2c 06 00 00 0f 05 fd 02 | |
0x107ffcad8: 00 00 08 01 38 10 10 03 00 00 7a 03 00 00 01 39 | |
0x107ffcae8: 00 10 1a 03 00 00 7a 03 00 00 01 3a 04 00 17 00 | |
0x107ffcaf8: c0 0f 1d 01 00 00 00 64 0f 00 00 01 6d 54 03 00 | |
0x107ffcb08: 00 23 03 00 00 01 89 68 03 00 00 18 02 91 68 93 | |
0x107ffcb18: 03 00 00 01 89 61 00 00 00 18 02 91 60 a3 03 00 | |
0x107ffcb28: 00 01 8a 61 00 00 00 18 02 91 58 b9 03 00 00 01 | |
0x107ffcb38: 8b 61 00 00 00 18 02 91 50 c9 03 00 00 01 8c 9e | |
0x107ffcb48: 0a 00 00 18 02 91 4c e2 03 00 00 01 8d 68 03 00 | |
0x107ffcb58: 00 18 02 91 48 f8 03 00 00 01 8e 68 03 00 00 19 | |
0x107ffcb68: 02 91 44 03 04 00 00 01 91 68 03 00 00 1a e0 c0 | |
0x107ffcb78: 0f 1d 01 00 00 00 70 0e 00 00 19 03 91 b8 7f 07 | |
0x107ffcb88: 04 00 00 01 98 a3 0a 00 00 19 03 91 b0 7f 10 04 | |
0x107ffcb98: 00 00 01 99 ad 0a 00 00 19 03 91 a8 7f 1d 04 00 | |
0x107ffcba8: 00 01 9a b7 0a 00 00 1a 78 c3 0f 1d 01 00 00 00 | |
0x107ffcbb8: bc 05 00 00 19 03 91 a0 7f 2a 04 00 00 01 b6 6a | |
0x107ffcbc8: 04 00 00 19 03 91 98 7f 31 04 00 00 01 b7 c1 0a | |
0x107ffcbd8: 00 00 19 03 91 90 7f 56 04 00 00 01 bb 1c 05 00 | |
0x107ffcbe8: 00 19 03 91 88 7f 62 04 00 00 01 bd d8 0a 00 00 | |
0x107ffcbf8: 19 03 91 80 7f 6d 04 00 00 01 be 56 05 00 00 19 | |
0x107ffcc08: 03 91 f8 7e 75 04 00 00 01 bf 60 05 00 00 19 03 | |
0x107ffcc18: 91 c8 7e 8f 04 00 00 01 f5 e7 0a 00 00 19 03 91 | |
0x107ffcc28: c4 7e a3 04 00 00 01 f6 ec 0a 00 00 19 03 91 b8 | |
0x107ffcc38: 7e b3 04 00 00 01 f7 60 05 00 00 1a 88 c4 0f 1d | |
0x107ffcc48: 01 00 00 00 30 02 00 00 19 03 91 f4 7e 82 04 00 | |
0x107ffcc58: 00 01 c5 68 03 00 00 1a a0 c4 0f 1d 01 00 00 00 | |
0x107ffcc68: 08 02 00 00 19 03 91 e8 7e c7 02 00 00 01 c7 e2 | |
0x107ffcc78: 0a 00 00 1a 64 c5 0f 1d 01 00 00 00 18 01 00 00 | |
0x107ffcc88: 19 03 91 e0 7e 84 04 00 00 01 d9 50 00 00 00 19 | |
0x107ffcc98: 03 91 d8 7e 89 04 00 00 01 dd 50 00 00 00 19 03 | |
0x107ffcca8: 91 d4 7e 8b 04 00 00 01 de 68 03 00 00 1a 00 c6 | |
0x107ffccb8: 0f 1d 01 00 00 00 5c 00 00 00 19 03 91 d3 7e 8d | |
0x107ffccc8: 04 00 00 01 df 10 05 00 00 00 00 00 00 1a 30 c7 | |
0x107ffccd8: 0f 1d 01 00 00 00 00 02 00 00 19 03 91 b4 7e 82 | |
0x107ffcce8: 04 00 00 01 fc 68 03 00 00 1a 44 c7 0f 1d 01 00 | |
0x107ffccf8: 00 00 dc 01 00 00 19 03 8f c8 01 c7 02 00 00 01 | |
0x107ffcd08: fe e2 0a 00 00 1a 08 c8 0f 1d 01 00 00 00 14 01 | |
0x107ffcd18: 00 00 1b 03 8f c0 01 84 04 00 00 01 10 01 50 00 | |
0x107ffcd28: 00 00 1b 03 8f b8 01 89 04 00 00 01 14 01 50 00 | |
0x107ffcd38: 00 00 1b 03 8f b4 01 8b 04 00 00 01 15 01 68 03 | |
0x107ffcd48: 00 00 1a a4 c8 0f 1d 01 00 00 00 5c 00 00 00 1b | |
0x107ffcd58: 03 8f b3 01 8d 04 00 00 01 16 01 10 05 00 00 00 | |
0x107ffcd68: 00 00 00 00 1a 54 c9 0f 1d 01 00 00 00 b4 05 00 | |
0x107ffcd78: 00 1b 03 8f a8 01 2a 04 00 00 01 29 01 a0 05 00 | |
0x107ffcd88: 00 1b 03 8f a0 01 31 04 00 00 01 2e 01 c1 0a 00 | |
0x107ffcd98: 00 1b 03 8f 98 01 56 04 00 00 01 30 01 1c 05 00 | |
0x107ffcda8: 00 1b 03 8f 94 01 c9 04 00 00 01 31 01 7a 03 00 | |
0x107ffcdb8: 00 1b 03 8f 88 01 62 04 00 00 01 35 01 d8 0a 00 | |
0x107ffcdc8: 00 1b 03 8f 80 01 6d 04 00 00 01 36 01 56 05 00 | |
0x107ffcdd8: 00 1b 03 8f f8 00 75 04 00 00 01 37 01 22 06 00 | |
0x107ffcde8: 00 1b 03 8f d0 00 8f 04 00 00 01 69 01 e7 0a 00 | |
0x107ffcdf8: 00 1b 03 8f cc 00 a3 04 00 00 01 6a 01 ec 0a 00 | |
0x107ffce08: 00 1b 03 8f c0 00 b3 04 00 00 01 6b 01 22 06 00 | |
0x107ffce18: 00 1a d0 ca 0f 1d 01 00 00 00 24 02 00 00 1b 03 | |
0x107ffce28: 8f f4 00 82 04 00 00 01 3c 01 68 03 00 00 1a e8 | |
0x107ffce38: ca 0f 1d 01 00 00 00 fc 01 00 00 1b 03 8f f0 00 | |
0x107ffce48: 10 03 00 00 01 3e 01 5b 05 00 00 1a a0 cb 0f 1d | |
0x107ffce58: 01 00 00 00 18 01 00 00 1b 03 8f e8 00 84 04 00 | |
0x107ffce68: 00 01 4e 01 50 00 00 00 1b 03 8f e0 00 89 04 00 | |
0x107ffce78: 00 01 51 01 50 00 00 00 1b 03 8f dc 00 8b 04 00 | |
0x107ffce88: 00 01 52 01 68 03 00 00 1a 3c cc 0f 1d 01 00 00 | |
0x107ffce98: 00 5c 00 00 00 1b 03 8f db 00 8d 04 00 00 01 53 | |
0x107ffcea8: 01 10 05 00 00 00 00 00 00 1a 6c cd 0f 1d 01 00 | |
0x107ffceb8: 00 00 98 01 00 00 1b 02 8f 3c 82 04 00 00 01 6e | |
0x107ffcec8: 01 68 03 00 00 1a 80 cd 0f 1d 01 00 00 00 74 01 | |
0x107ffced8: 00 00 1b 02 8f 38 10 03 00 00 01 70 01 5b 05 00 | |
0x107ffcee8: 00 1a d4 cd 0f 1d 01 00 00 00 14 01 00 00 1b 02 | |
0x107ffcef8: 8f 30 84 04 00 00 01 79 01 50 00 00 00 1b 02 8f | |
0x107ffcf08: 28 89 04 00 00 01 7c 01 50 00 00 00 1b 02 8f 24 | |
0x107ffcf18: 8b 04 00 00 01 7d 01 68 03 00 00 1a 70 ce 0f 1d | |
0x107ffcf28: 01 00 00 00 5c 00 00 00 1b 02 8f 23 8d 04 00 00 | |
0x107ffcf38: 01 7e 01 10 05 00 00 00 00 00 00 00 00 00 03 17 | |
0x107ffcf48: 03 00 00 03 a8 0a 00 00 06 2e 03 00 00 03 b2 0a | |
0x107ffcf58: 00 00 06 91 03 00 00 03 bc 0a 00 00 06 dc 03 00 | |
0x107ffcf68: 00 06 c6 0a 00 00 0e d1 0a 00 00 41 04 00 00 01 | |
0x107ffcf78: 1d 07 48 04 00 00 07 08 03 dd 0a 00 00 06 05 05 | |
0x107ffcf88: 00 00 06 17 03 00 00 03 ec 0a 00 00 06 68 03 00 | |
0x107ffcf98: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffcfa8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffcfb8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffcfc8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffcfd8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffcfe8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffcff8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd008: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd018: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd028: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd038: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd048: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd058: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd068: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd078: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd088: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd098: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd0a8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd0b8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd0c8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd0d8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd0e8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd0f8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd108: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd118: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd128: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x107ffd138+0x4ea]->0xffffffffffffffff (alignment 8, section ID 7, name __debug_str) | |
0x107ffd138: 41 70 70 6c 65 20 63 6c 61 6e 67 20 76 65 72 73 | |
0x107ffd148: 69 6f 6e 20 31 35 2e 30 2e 30 20 28 63 6c 61 6e | |
0x107ffd158: 67 2d 31 35 30 30 2e 30 2e 34 30 2e 31 29 00 2f | |
0x107ffd168: 76 61 72 2f 66 6f 6c 64 65 72 73 2f 6a 6b 2f 32 | |
0x107ffd178: 6e 6b 6c 62 68 30 78 35 6b 73 63 31 39 32 6a 73 | |
0x107ffd188: 6d 39 6e 68 6e 68 63 30 30 30 30 67 6e 2f 54 2f | |
0x107ffd198: 6c 6c 64 62 2f 38 39 35 30 31 2f 3c 73 74 64 69 | |
0x107ffd1a8: 6e 3e 00 2f 00 63 6c 61 73 73 5f 6e 61 6d 65 5f | |
0x107ffd1b8: 6c 6f 6f 6b 75 70 5f 66 75 6e 63 00 63 68 61 72 | |
0x107ffd1c8: 00 5f 5f 41 52 52 41 59 5f 53 49 5a 45 5f 54 59 | |
0x107ffd1d8: 50 45 5f 5f 00 00 75 69 6e 74 36 34 5f 74 00 75 | |
0x107ffd1e8: 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e | |
0x107ffd1f8: 67 00 6f 62 6a 63 5f 6f 70 74 5f 74 00 76 65 72 | |
0x107ffd208: 73 69 6f 6e 00 75 69 6e 74 33 32 5f 74 00 75 6e | |
0x107ffd218: 73 69 67 6e 65 64 20 69 6e 74 00 73 65 6c 6f 70 | |
0x107ffd228: 74 5f 6f 66 66 73 65 74 00 69 6e 74 33 32 5f 74 | |
0x107ffd238: 00 69 6e 74 00 68 65 61 64 65 72 6f 70 74 5f 6f | |
0x107ffd248: 66 66 73 65 74 00 63 6c 73 6f 70 74 5f 6f 66 66 | |
0x107ffd258: 73 65 74 00 6f 62 6a 63 5f 6f 70 74 5f 76 31 34 | |
0x107ffd268: 5f 74 00 66 6c 61 67 73 00 6f 62 6a 63 5f 6f 70 | |
0x107ffd278: 74 5f 76 31 36 5f 74 00 68 65 61 64 65 72 6f 70 | |
0x107ffd288: 74 5f 72 6f 5f 6f 66 66 73 65 74 00 75 6e 75 73 | |
0x107ffd298: 65 64 5f 63 6c 73 6f 70 74 5f 6f 66 66 73 65 74 | |
0x107ffd2a8: 00 75 6e 75 73 65 64 5f 70 72 6f 74 6f 63 6f 6c | |
0x107ffd2b8: 6f 70 74 5f 6f 66 66 73 65 74 00 68 65 61 64 65 | |
0x107ffd2c8: 72 6f 70 74 5f 72 77 5f 6f 66 66 73 65 74 00 75 | |
0x107ffd2d8: 6e 75 73 65 64 5f 70 72 6f 74 6f 63 6f 6c 6f 70 | |
0x107ffd2e8: 74 32 5f 6f 66 66 73 65 74 00 6c 61 72 67 65 53 | |
0x107ffd2f8: 68 61 72 65 64 43 61 63 68 65 73 43 6c 61 73 73 | |
0x107ffd308: 4f 66 66 73 65 74 00 6c 61 72 67 65 53 68 61 72 | |
0x107ffd318: 65 64 43 61 63 68 65 73 50 72 6f 74 6f 63 6f 6c | |
0x107ffd328: 4f 66 66 73 65 74 00 72 65 6c 61 74 69 76 65 4d | |
0x107ffd338: 65 74 68 6f 64 53 65 6c 65 63 74 6f 72 42 61 73 | |
0x107ffd348: 65 41 64 64 72 65 73 73 43 61 63 68 65 4f 66 66 | |
0x107ffd358: 73 65 74 00 6f 62 6a 63 5f 63 6c 73 6f 70 74 5f | |
0x107ffd368: 76 31 36 5f 74 00 63 61 70 61 63 69 74 79 00 6f | |
0x107ffd378: 63 63 75 70 69 65 64 00 73 68 69 66 74 00 6d 61 | |
0x107ffd388: 73 6b 00 7a 65 72 6f 00 73 61 6c 74 00 73 63 72 | |
0x107ffd398: 61 6d 62 6c 65 00 74 61 62 00 75 69 6e 74 38 5f | |
0x107ffd3a8: 74 00 75 6e 73 69 67 6e 65 64 20 63 68 61 72 00 | |
0x107ffd3b8: 43 6c 61 73 73 49 6e 66 6f 00 69 73 61 00 43 6c | |
0x107ffd3c8: 61 73 73 00 6f 62 6a 63 5f 63 6c 61 73 73 00 68 | |
0x107ffd3d8: 61 73 68 00 6f 62 6a 63 5f 63 6c 61 73 73 68 65 | |
0x107ffd3e8: 61 64 65 72 5f 76 31 36 5f 74 00 69 73 44 75 70 | |
0x107ffd3f8: 6c 69 63 61 74 65 00 6f 62 6a 65 63 74 43 61 63 | |
0x107ffd408: 68 65 4f 66 66 73 65 74 00 64 79 6c 69 62 4f 62 | |
0x107ffd418: 6a 43 49 6e 64 65 78 00 6f 62 6a 63 5f 63 6c 73 | |
0x107ffd428: 6f 70 74 5f 74 00 75 6e 75 73 65 64 00 6f 62 6a | |
0x107ffd438: 63 5f 63 6c 61 73 73 68 65 61 64 65 72 5f 74 00 | |
0x107ffd448: 63 6c 73 4f 66 66 73 65 74 00 68 69 4f 66 66 73 | |
0x107ffd458: 65 74 00 5f 5f 6c 6c 64 62 5f 61 70 70 6c 65 5f | |
0x107ffd468: 6f 62 6a 63 5f 76 32 5f 67 65 74 5f 73 68 61 72 | |
0x107ffd478: 65 64 5f 63 61 63 68 65 5f 63 6c 61 73 73 5f 69 | |
0x107ffd488: 6e 66 6f 00 5f 5a 34 38 5f 5f 6c 6c 64 62 5f 61 | |
0x107ffd498: 70 70 6c 65 5f 6f 62 6a 63 5f 76 32 5f 67 65 74 | |
0x107ffd4a8: 5f 73 68 61 72 65 64 5f 63 61 63 68 65 5f 63 6c | |
0x107ffd4b8: 61 73 73 5f 69 6e 66 6f 50 76 53 5f 53 5f 50 79 | |
0x107ffd4c8: 6a 6a 00 6f 62 6a 63 5f 6f 70 74 5f 72 6f 5f 70 | |
0x107ffd4d8: 74 72 00 73 68 61 72 65 64 5f 63 61 63 68 65 5f | |
0x107ffd4e8: 62 61 73 65 5f 70 74 72 00 63 6c 61 73 73 5f 69 | |
0x107ffd4f8: 6e 66 6f 73 5f 70 74 72 00 72 65 6c 61 74 69 76 | |
0x107ffd508: 65 5f 73 65 6c 65 63 74 6f 72 5f 6f 66 66 73 65 | |
0x107ffd518: 74 00 63 6c 61 73 73 5f 69 6e 66 6f 73 5f 62 79 | |
0x107ffd528: 74 65 5f 73 69 7a 65 00 73 68 6f 75 6c 64 5f 6c | |
0x107ffd538: 6f 67 00 69 64 78 00 6f 62 6a 63 5f 6f 70 74 00 | |
0x107ffd548: 6f 62 6a 63 5f 6f 70 74 5f 76 31 34 00 6f 62 6a | |
0x107ffd558: 63 5f 6f 70 74 5f 76 31 36 00 63 6c 73 6f 70 74 | |
0x107ffd568: 00 6d 61 78 5f 63 6c 61 73 73 5f 69 6e 66 6f 73 | |
0x107ffd578: 00 73 69 7a 65 5f 74 00 75 6e 73 69 67 6e 65 64 | |
0x107ffd588: 20 6c 6f 6e 67 00 63 6c 61 73 73 5f 69 6e 66 6f | |
0x107ffd598: 73 00 63 68 65 63 6b 62 79 74 65 73 00 6f 66 66 | |
0x107ffd5a8: 73 65 74 73 00 63 6c 61 73 73 4f 66 66 73 65 74 | |
0x107ffd5b8: 73 00 69 00 6e 61 6d 65 00 73 00 68 00 63 00 64 | |
0x107ffd5c8: 75 70 6c 69 63 61 74 65 5f 63 6f 75 6e 74 5f 70 | |
0x107ffd5d8: 74 72 00 64 75 70 6c 69 63 61 74 65 5f 63 6f 75 | |
0x107ffd5e8: 6e 74 00 64 75 70 6c 69 63 61 74 65 43 6c 61 73 | |
0x107ffd5f8: 73 4f 66 66 73 65 74 73 00 69 6e 76 61 6c 69 64 | |
0x107ffd608: 45 6e 74 72 79 4f 66 66 73 65 74 00 00 00 00 00 | |
0x107ffd618: 00 00 00 00 00 00 00 00 00 00 | |
[0x107ffd628+0x10a]->0xffffffffffffffff (alignment 8, section ID 8, name __apple_names) | |
0x107ffd628: 48 53 41 48 01 00 00 00 04 00 00 00 04 00 00 00 | |
0x107ffd638: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x107ffd648: ff ff ff ff 00 00 00 00 01 00 00 00 03 00 00 00 | |
0x107ffd658: 05 15 00 00 de c5 74 bc 6a 18 a0 d1 7f eb b5 6a | |
0x107ffd668: 50 00 00 00 cc 00 00 00 dc 00 00 00 ec 00 00 00 | |
0x107ffd678: a5 00 00 00 1c 00 00 00 62 00 00 00 86 00 00 00 | |
0x107ffd688: a3 00 00 00 b4 00 00 00 d1 00 00 00 ee 00 00 00 | |
0x107ffd698: ff 00 00 00 1c 01 00 00 39 01 00 00 56 01 00 00 | |
0x107ffd6a8: 73 01 00 00 84 01 00 00 95 01 00 00 b2 01 00 00 | |
0x107ffd6b8: c3 01 00 00 e0 01 00 00 f1 01 00 00 0e 02 00 00 | |
0x107ffd6c8: 2b 02 00 00 3c 02 00 00 59 02 00 00 6a 02 00 00 | |
0x107ffd6d8: 7b 02 00 00 99 02 00 00 ab 02 00 00 c9 02 00 00 | |
0x107ffd6e8: db 02 00 00 f9 02 00 00 00 00 00 00 23 03 00 00 | |
0x107ffd6f8: 01 00 00 00 4e 06 00 00 00 00 00 00 54 03 00 00 | |
0x107ffd708: 01 00 00 00 4e 06 00 00 00 00 00 00 75 00 00 00 | |
0x107ffd718: 01 00 00 00 2b 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd728: 00 00 00 00 00 00 00 00 00 00 | |
[0x107ffd738+0x32]->0xffffffffffffffff (alignment 8, section ID 9, name __apple_objc) | |
0x107ffd738: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x107ffd748: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x107ffd758: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd768: 00 00 | |
[0x107ffd770+0x32]->0xffffffffffffffff (alignment 8, section ID 10, name __apple_namespac) | |
0x107ffd770: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x107ffd780: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x107ffd790: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffd7a0: 00 00 | |
[0x107ffd7a8+0x295]->0xffffffffffffffff (alignment 8, section ID 11, name __apple_types) | |
0x107ffd7a8: 48 53 41 48 01 00 00 00 0a 00 00 00 15 00 00 00 | |
0x107ffd7b8: 14 00 00 00 00 00 00 00 03 00 00 00 01 00 06 00 | |
0x107ffd7c8: 03 00 05 00 04 00 0b 00 00 00 00 00 01 00 00 00 | |
0x107ffd7d8: ff ff ff ff ff ff ff ff 02 00 00 00 06 00 00 00 | |
0x107ffd7e8: 0a 00 00 00 ff ff ff ff 0f 00 00 00 13 00 00 00 | |
0x107ffd7f8: 82 bd 1e 33 5b 73 8c dc 02 96 55 11 04 11 5e 1d | |
0x107ffd808: e8 f0 49 9f a0 a7 cb f9 bb 4e f8 0c 5d e8 53 11 | |
0x107ffd818: 67 1d d1 59 cd 93 3c b2 08 cb 9f 0b 82 08 5e 1d | |
0x107ffd828: f0 29 12 2f 10 88 71 56 8a 88 61 82 30 80 88 0b | |
0x107ffd838: 14 9c 59 49 86 bf e6 71 72 b6 d0 f9 93 f2 d0 1b | |
0x107ffd848: 63 20 95 7c f8 00 00 00 0b 01 00 00 1e 01 00 00 | |
0x107ffd858: 31 01 00 00 44 01 00 00 57 01 00 00 6a 01 00 00 | |
0x107ffd868: 7d 01 00 00 90 01 00 00 a3 01 00 00 b6 01 00 00 | |
0x107ffd878: c9 01 00 00 dc 01 00 00 ef 01 00 00 02 02 00 00 | |
0x107ffd888: 15 02 00 00 28 02 00 00 3b 02 00 00 4e 02 00 00 | |
0x107ffd898: 61 02 00 00 74 02 00 00 af 00 00 00 01 00 00 00 | |
0x107ffd8a8: 22 03 00 00 24 00 00 00 00 00 00 91 00 00 00 01 | |
0x107ffd8b8: 00 00 00 7f 00 00 00 24 00 00 00 00 00 00 a6 00 | |
0x107ffd8c8: 00 00 01 00 00 00 17 03 00 00 16 00 00 00 00 00 | |
0x107ffd8d8: 00 39 01 00 00 01 00 00 00 dc 03 00 00 13 00 00 | |
0x107ffd8e8: 00 00 00 00 f9 00 00 00 01 00 00 00 7a 03 00 00 | |
0x107ffd8f8: 16 00 00 00 00 00 00 72 02 00 00 01 00 00 00 10 | |
0x107ffd908: 05 00 00 24 00 00 00 00 00 00 8e 02 00 00 01 00 | |
0x107ffd918: 00 00 43 05 00 00 16 00 00 00 00 00 00 d5 00 00 | |
0x107ffd928: 00 01 00 00 00 68 03 00 00 16 00 00 00 00 00 00 | |
0x107ffd938: 80 02 00 00 01 00 00 00 21 05 00 00 13 00 00 00 | |
0x107ffd948: 00 00 00 de 00 00 00 01 00 00 00 73 03 00 00 24 | |
0x107ffd958: 00 00 00 00 00 00 c2 00 00 00 01 00 00 00 2e 03 | |
0x107ffd968: 00 00 13 00 00 00 00 00 00 24 01 00 00 01 00 00 | |
0x107ffd978: 00 91 03 00 00 13 00 00 00 00 00 00 6a 02 00 00 | |
0x107ffd988: 01 00 00 00 05 05 00 00 16 00 00 00 00 00 00 a4 | |
0x107ffd998: 02 00 00 01 00 00 00 6a 05 00 00 13 00 00 00 00 | |
0x107ffd9a8: 00 00 e8 02 00 00 01 00 00 00 aa 05 00 00 13 00 | |
0x107ffd9b8: 00 00 00 00 00 01 01 00 00 01 00 00 00 85 03 00 | |
0x107ffd9c8: 00 24 00 00 00 00 00 00 fd 02 00 00 01 00 00 00 | |
0x107ffd9d8: 2c 06 00 00 13 00 00 00 00 00 00 24 02 00 00 01 | |
0x107ffd9e8: 00 00 00 74 04 00 00 13 00 00 00 00 00 00 48 04 | |
0x107ffd9f8: 00 00 01 00 00 00 d1 0a 00 00 24 00 00 00 00 00 | |
0x107ffda08: 00 41 04 00 00 01 00 00 00 c6 0a 00 00 16 00 00 | |
0x107ffda18: 00 00 00 00 8c 00 00 00 01 00 00 00 5a 00 00 00 | |
0x107ffda28: 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffda38: 00 00 00 00 00 | |
[0x107ffda40+0x2e6]->0xffffffffffffffff (alignment 8, section ID 12, name __debug_line) | |
0x107ffda40: cc 02 00 00 04 00 2d 00 00 00 01 01 01 fb 0e 0d | |
0x107ffda50: 00 01 01 01 01 00 00 00 01 00 00 01 00 3c 6c 6c | |
0x107ffda60: 64 62 20 77 72 61 70 70 65 72 20 70 72 65 66 69 | |
0x107ffda70: 78 3e 00 00 00 00 00 00 09 02 00 c0 0f 1d 01 00 | |
0x107ffda80: 00 00 03 8e 01 01 0a 02 2c 13 83 4b 06 4a 4a 06 | |
0x107ffda90: 08 ad 06 4a 4a 06 08 ad 06 4a 4a 06 08 ad 06 4a | |
0x107ffdaa0: 4a 06 02 2c 13 06 4a 06 4c 83 83 83 06 82 06 84 | |
0x107ffdab0: f3 06 4a 4a 06 08 e5 06 4a 4a 06 08 e5 06 4a 4a | |
0x107ffdac0: 06 08 e5 06 4a 4a 06 08 e5 06 4a 4a 06 08 e5 4b | |
0x107ffdad0: 06 82 06 84 06 4a 4a 06 08 e5 06 4a 4a 06 08 e5 | |
0x107ffdae0: 06 4a 4a 06 08 e5 06 4a 4a 06 08 e5 06 4a 4a 06 | |
0x107ffdaf0: 08 e5 4d 06 4a 4a 06 08 e5 06 4a 4a 06 08 e5 06 | |
0x107ffdb00: 4a 4a 06 08 e5 06 4a 4a 03 cf 7e 08 e4 06 03 b4 | |
0x107ffdb10: 01 82 06 82 06 84 08 3d f4 06 4a 4a 06 08 ae 84 | |
0x107ffdb20: 08 e5 08 3d 08 76 06 4a 4a 06 08 e5 06 4a 4a 06 | |
0x107ffdb30: 08 e5 06 4a 4a 06 08 ae 06 4a ba 06 84 08 e5 06 | |
0x107ffdb40: 4a 4a 06 02 24 14 06 08 3c 06 4b 06 4a 4a 06 08 | |
0x107ffdb50: 3d 4d 06 4a 06 4b 06 4a 4a 06 08 3d 4d 06 f2 06 | |
0x107ffdb60: 84 08 e7 02 28 13 06 4a 4a 06 02 3c 15 83 83 06 | |
0x107ffdb70: ba 4a 06 88 06 4a 06 84 4b 4c 03 75 08 74 03 0d | |
0x107ffdb80: 08 74 08 ad 4d 06 4a 4a 03 90 7e 08 3c 06 03 f2 | |
0x107ffdb90: 01 4a 03 53 ba 03 30 f2 08 75 bb bc 06 4a 4a 06 | |
0x107ffdba0: 08 ad 06 4a 4a 06 08 ae 06 4a 82 06 84 08 e5 06 | |
0x107ffdbb0: 4a 4a 06 02 24 14 06 08 3c 06 4b 06 4a 4a 06 08 | |
0x107ffdbc0: 3d 4d 06 4a 06 4b 06 4a 4a 06 08 3d 4d 06 f2 06 | |
0x107ffdbd0: 84 08 e7 02 28 13 06 4a 4a 06 02 3c 15 83 83 06 | |
0x107ffdbe0: ba 4a 06 88 06 4a 06 84 4b 4c 03 75 08 74 03 0d | |
0x107ffdbf0: 08 74 08 ae 03 57 4a 03 2a f2 4b 06 08 74 06 84 | |
0x107ffdc00: 4b 06 82 06 83 08 76 08 3d f3 06 4a 4a 06 08 ad | |
0x107ffdc10: 83 4c 06 82 06 83 83 08 e5 08 3d 08 75 06 4a 4a | |
0x107ffdc20: 06 08 e5 06 4a 4a 06 08 e5 06 4a 4a 06 08 ad 06 | |
0x107ffdc30: 4a 4a 06 08 ad 06 4a ba 06 84 08 75 06 4a 4a 06 | |
0x107ffdc40: 02 24 13 06 4a 06 4c 06 4a 4a 06 08 3d 4c 06 82 | |
0x107ffdc50: 06 84 06 4a 4a 06 08 3d 06 03 b8 7d 4a 06 03 cb | |
0x107ffdc60: 02 4a 06 f2 06 84 08 e5 02 28 13 06 4a 4a 06 02 | |
0x107ffdc70: 3c 14 83 83 06 ba 4a 06 88 06 4a 06 84 4b 4c 03 | |
0x107ffdc80: 75 08 74 03 0d 08 74 08 ad 4d 06 4a 4a 03 9c 7d | |
0x107ffdc90: 08 3c 06 03 e6 02 4a 03 56 ba 03 2d f2 08 75 bb | |
0x107ffdca0: bb 06 4a 4a 06 08 ad 06 4a 4a 06 08 ad 06 4a 82 | |
0x107ffdcb0: 06 84 08 75 06 4a 06 4b 4b 06 82 06 83 06 03 8c | |
0x107ffdcc0: 7d 4a 06 03 f6 02 4a 06 f2 06 84 08 e5 02 28 13 | |
0x107ffdcd0: 06 4a 4a 06 02 3c 14 83 83 06 ba 4a 06 88 06 4a | |
0x107ffdce0: 06 84 4b 4c 03 75 08 74 03 0d 08 74 08 ae 03 61 | |
0x107ffdcf0: ba 03 21 f2 06 03 f1 7c 4a 06 03 90 03 4a 06 4a | |
0x107ffdd00: 4a 06 08 ad 06 4a 4a 06 08 3d 4b 02 14 00 01 01 | |
0x107ffdd10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x107ffdd20: 00 00 00 00 00 00 | |
Couldn't find llvm.global_ctors. | |
[ClangASTImporter] Forgetting destination (ASTContext*)0x0000000134D0DC00 | |
[ClangASTImporter] Forgetting source->dest (ASTContext*)0x0000000134D0DC00->(ASTContext*)0x0000000134A71600 | |
Expression: | |
extern "C" void __lldb_caller_function (void *input) | |
{ | |
struct __lldb_caller_struct | |
{ | |
unsigned int (*fn_ptr) (void *, void *, void *, unsigned long *, unsigned int, unsigned int); | |
void * arg_0; | |
void * arg_1; | |
void * arg_2; | |
unsigned long * arg_3; | |
unsigned int arg_4; | |
unsigned int arg_5; | |
unsigned int return_value; | |
}; | |
struct __lldb_caller_struct* __lldb_fn_data = (struct __lldb_caller_struct *) input; | |
__lldb_fn_data->return_value = __lldb_fn_data->fn_ptr (__lldb_fn_data->arg_0, __lldb_fn_data->arg_1, __lldb_fn_data->arg_2, __lldb_fn_data->arg_3, __lldb_fn_data->arg_4, __lldb_fn_data->arg_5); | |
} | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
Found function __lldb_caller_function for __lldb_caller_function | |
DoPrepareForExecution - Current expression language is unknown | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.__lldb_caller_struct = type { ptr, ptr, ptr, ptr, ptr, i32, i32, i32 } | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @__lldb_caller_function(ptr %input) #0 !dbg !6 { | |
entry: | |
%input.addr = alloca ptr, align 8, !clang.decl.ptr !37 | |
%__lldb_fn_data = alloca ptr, align 8, !clang.decl.ptr !38 | |
store ptr %input, ptr %input.addr, align 8 | |
call void @llvm.dbg.declare(metadata ptr %input.addr, metadata !39, metadata !DIExpression()), !dbg !40 | |
call void @llvm.dbg.declare(metadata ptr %__lldb_fn_data, metadata !41, metadata !DIExpression()), !dbg !42 | |
%0 = load ptr, ptr %input.addr, align 8, !dbg !42 | |
store ptr %0, ptr %__lldb_fn_data, align 8, !dbg !42 | |
%1 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !43 | |
%fn_ptr = getelementptr inbounds %struct.__lldb_caller_struct, ptr %1, i32 0, i32 0, !dbg !43 | |
%2 = load ptr, ptr %fn_ptr, align 8, !dbg !43 | |
%3 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !43 | |
%arg_0 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %3, i32 0, i32 1, !dbg !43 | |
%4 = load ptr, ptr %arg_0, align 8, !dbg !43 | |
%5 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !43 | |
%arg_1 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %5, i32 0, i32 2, !dbg !43 | |
%6 = load ptr, ptr %arg_1, align 8, !dbg !43 | |
%7 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !43 | |
%arg_2 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %7, i32 0, i32 3, !dbg !43 | |
%8 = load ptr, ptr %arg_2, align 8, !dbg !43 | |
%9 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !43 | |
%arg_3 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %9, i32 0, i32 4, !dbg !43 | |
%10 = load ptr, ptr %arg_3, align 8, !dbg !43 | |
%11 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !43 | |
%arg_4 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %11, i32 0, i32 5, !dbg !43 | |
%12 = load i32, ptr %arg_4, align 8, !dbg !43 | |
%13 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !43 | |
%arg_5 = getelementptr inbounds %struct.__lldb_caller_struct, ptr %13, i32 0, i32 6, !dbg !43 | |
%14 = load i32, ptr %arg_5, align 4, !dbg !43 | |
%call = call i32 %2(ptr %4, ptr %6, ptr %8, ptr %10, i32 %12, i32 %14) #2, !dbg !43 | |
%15 = load ptr, ptr %__lldb_fn_data, align 8, !dbg !43 | |
%return_value = getelementptr inbounds %struct.__lldb_caller_struct, ptr %15, i32 0, i32 7, !dbg !43 | |
store i32 %call, ptr %return_value, align 8, !dbg !43 | |
ret void, !dbg !44 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
attributes #2 = { convergent "no-builtins" } | |
!llvm.dbg.cu = !{!0} | |
!llvm.module.flags = !{!26, !27, !28, !29, !30, !31, !32, !33, !34} | |
!clang.global.decl.ptrs = !{!35} | |
!llvm.ident = !{!36} | |
!0 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !1, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug, retainedTypes: !2) | |
!1 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!2 = !{!3} | |
!3 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64) | |
!4 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__lldb_caller_struct", scope: !6, file: !5, line: 3, size: 448, flags: DIFlagTypePassByValue, elements: !11) | |
!5 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/lldb-107e68.expr", directory: "") | |
!6 = distinct !DISubprogram(name: "__lldb_caller_function", scope: !5, file: !5, line: 1, type: !7, scopeLine: 2, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !10) | |
!7 = !DISubroutineType(types: !8) | |
!8 = !{null, !9} | |
!9 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64) | |
!10 = !{} | |
!11 = !{!12, !19, !20, !21, !22, !23, !24, !25} | |
!12 = !DIDerivedType(tag: DW_TAG_member, name: "fn_ptr", scope: !4, file: !5, line: 5, baseType: !13, size: 64) | |
!13 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !14, size: 64) | |
!14 = !DISubroutineType(types: !15) | |
!15 = !{!16, !9, !9, !9, !17, !16, !16} | |
!16 = !DIBasicType(name: "unsigned int", size: 32, encoding: DW_ATE_unsigned) | |
!17 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !18, size: 64) | |
!18 = !DIBasicType(name: "unsigned long", size: 64, encoding: DW_ATE_unsigned) | |
!19 = !DIDerivedType(tag: DW_TAG_member, name: "arg_0", scope: !4, file: !5, line: 6, baseType: !9, size: 64, offset: 64) | |
!20 = !DIDerivedType(tag: DW_TAG_member, name: "arg_1", scope: !4, file: !5, line: 7, baseType: !9, size: 64, offset: 128) | |
!21 = !DIDerivedType(tag: DW_TAG_member, name: "arg_2", scope: !4, file: !5, line: 8, baseType: !9, size: 64, offset: 192) | |
!22 = !DIDerivedType(tag: DW_TAG_member, name: "arg_3", scope: !4, file: !5, line: 9, baseType: !17, size: 64, offset: 256) | |
!23 = !DIDerivedType(tag: DW_TAG_member, name: "arg_4", scope: !4, file: !5, line: 10, baseType: !16, size: 32, offset: 320) | |
!24 = !DIDerivedType(tag: DW_TAG_member, name: "arg_5", scope: !4, file: !5, line: 11, baseType: !16, size: 32, offset: 352) | |
!25 = !DIDerivedType(tag: DW_TAG_member, name: "return_value", scope: !4, file: !5, line: 12, baseType: !16, size: 32, offset: 384) | |
!26 = !{i32 1, !"Objective-C Version", i32 2} | |
!27 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!28 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!29 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!30 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!31 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!32 = !{i32 2, !"Debug Info Version", i32 3} | |
!33 = !{i32 1, !"wchar_size", i32 4} | |
!34 = !{i32 7, !"frame-pointer", i32 2} | |
!35 = !{ptr @__lldb_caller_function, i64 4961917608} | |
!36 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!37 = !{i64 4961917408} | |
!38 = !{i64 4961920488} | |
!39 = !DILocalVariable(name: "input", arg: 1, scope: !6, file: !5, line: 1, type: !9) | |
!40 = !DILocation(line: 1, scope: !6) | |
!41 = !DILocalVariable(name: "__lldb_fn_data", scope: !6, file: !5, line: 14, type: !3) | |
!42 = !DILocation(line: 14, scope: !6) | |
!43 = !DILocation(line: 15, scope: !6) | |
!44 = !DILocation(line: 16, scope: !6) | |
IRExecutionUnit::allocateCodeSection(Size=0x73, Alignment=8, SectionID=0) = 0x1129a0000 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=1) = 0x1129a4000 | |
IRExecutionUnit::allocateDataSection(Size=0x99, Alignment=8, SectionID=2) = 0x1129a4018 | |
IRExecutionUnit::allocateDataSection(Size=0x128, Alignment=8, SectionID=3) = 0x1129a40b8 | |
IRExecutionUnit::allocateDataSection(Size=0x117, Alignment=8, SectionID=4) = 0x1129a41e0 | |
IRExecutionUnit::allocateDataSection(Size=0x4a, Alignment=8, SectionID=5) = 0x1129a42f8 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=6) = 0x1129a4348 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=7) = 0x1129a4380 | |
IRExecutionUnit::allocateDataSection(Size=0x93, Alignment=8, SectionID=8) = 0x1129a43b8 | |
IRExecutionUnit::allocateDataSection(Size=0x9d, Alignment=8, SectionID=9) = 0x1129a4450 | |
IRMemoryMap::Malloc (127, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11ceec420 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8490 | |
IRMemoryMap::WriteMemory (0x11ceec420, 0x1129a0000, 0x115) went to [0x11ceec420..0x11ceec49f) | |
IRMemoryMap::WriteMemory (0x11d0f8490, 0x1129a4000, 0x22) went to [0x11d0f8490..0x11d0f84af) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x1129a0000 in [0x1129a0000..0x1129a0073], and returned 0x11ceec420 from [0x11ceec420..0x11ceec493]. | |
Code can be run in the target. | |
Found function, has local address 0x1129a0000 and remote address 0x11ceec420 | |
Function's code range is [0x11ceec420+0x73] | |
Function data has contents: | |
0x11ceec420: ff 83 00 d1 fd 7b 01 a9 fd 43 00 91 e0 07 00 f9 | |
0x11ceec430: e8 07 40 f9 e8 03 00 f9 e8 03 40 f9 08 01 40 f9 | |
0x11ceec440: e9 03 40 f9 20 05 40 f9 e9 03 40 f9 21 09 40 f9 | |
0x11ceec450: e9 03 40 f9 22 0d 40 f9 e9 03 40 f9 23 11 40 f9 | |
0x11ceec460: e9 03 40 f9 24 29 40 b9 e9 03 40 f9 25 2d 40 b9 | |
0x11ceec470: 00 01 3f d6 e8 03 40 f9 00 31 00 b9 fd 7b 41 a9 | |
0x11ceec480: ff 83 00 91 c0 03 5f d6 00 00 00 00 00 00 00 00 | |
0x11ceec490: 00 00 00 | |
Function disassembly: | |
0x11ceec420: 0xd10083ff unknown sub sp, sp, #0x20 | |
0x11ceec424: 0xa9017bfd unknown stp x29, x30, [sp, #0x10] | |
0x11ceec428: 0x910043fd unknown add x29, sp, #0x10 | |
0x11ceec42c: 0xf90007e0 unknown str x0, [sp, #0x8] | |
0x11ceec430: 0xf94007e8 unknown ldr x8, [sp, #0x8] | |
0x11ceec434: 0xf90003e8 unknown str x8, [sp] | |
0x11ceec438: 0xf94003e8 unknown ldr x8, [sp] | |
0x11ceec43c: 0xf9400108 unknown ldr x8, [x8] | |
0x11ceec440: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec444: 0xf9400520 unknown ldr x0, [x9, #0x8] | |
0x11ceec448: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec44c: 0xf9400921 unknown ldr x1, [x9, #0x10] | |
0x11ceec450: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec454: 0xf9400d22 unknown ldr x2, [x9, #0x18] | |
0x11ceec458: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec45c: 0xf9401123 unknown ldr x3, [x9, #0x20] | |
0x11ceec460: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec464: 0xb9402924 unknown ldr w4, [x9, #0x28] | |
0x11ceec468: 0xf94003e9 unknown ldr x9, [sp] | |
0x11ceec46c: 0xb9402d25 unknown ldr w5, [x9, #0x2c] | |
0x11ceec470: 0xd63f0100 unknown blr x8 | |
0x11ceec474: 0xf94003e8 unknown ldr x8, [sp] | |
0x11ceec478: 0xb9003100 unknown str w0, [x8, #0x30] | |
0x11ceec47c: 0xa9417bfd unknown ldp x29, x30, [sp, #0x10] | |
0x11ceec480: 0x910083ff unknown add sp, sp, #0x20 | |
0x11ceec484: 0xd65f03c0 unknown ret | |
0x11ceec488: 0x00000000 unknown udf #0x0 | |
0x11ceec48c: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x1129a0000+0x73]->0x11ceec420 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11ceec420, 0x600002ebd680, 0x115) came from [0x11ceec420..0x11ceec49f) | |
0x11ceec420: ff 83 00 d1 fd 7b 01 a9 fd 43 00 91 e0 07 00 f9 | |
0x11ceec430: e8 07 40 f9 e8 03 00 f9 e8 03 40 f9 08 01 40 f9 | |
0x11ceec440: e9 03 40 f9 20 05 40 f9 e9 03 40 f9 21 09 40 f9 | |
0x11ceec450: e9 03 40 f9 22 0d 40 f9 e9 03 40 f9 23 11 40 f9 | |
0x11ceec460: e9 03 40 f9 24 29 40 b9 e9 03 40 f9 25 2d 40 b9 | |
0x11ceec470: 00 01 3f d6 e8 03 40 f9 00 31 00 b9 fd 7b 41 a9 | |
0x11ceec480: ff 83 00 91 c0 03 5f d6 00 00 00 00 00 00 00 00 | |
0x11ceec490: 00 00 00 | |
[0x1129a4000+0x16]->0x11d0f8490 (alignment 8, section ID 1, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f8490, 0x6000007cda00, 0x22) came from [0x11d0f8490..0x11d0f84af) | |
0x11d0f8490: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f84a0: 00 00 00 00 00 00 | |
[0x1129a4018+0x99]->0xffffffffffffffff (alignment 8, section ID 2, name __debug_abbrev) | |
0x1129a4018: 01 11 01 25 0e 13 05 03 0e 10 17 1b 0e e5 7f 0b | |
0x1129a4028: 11 01 12 06 00 00 02 0f 00 49 13 00 00 03 2e 01 | |
0x1129a4038: 11 01 12 06 40 18 03 0e 3a 0b 3b 0b 3f 19 00 00 | |
0x1129a4048: 04 13 01 36 0b 03 0e 0b 0b 3a 0b 3b 0b 00 00 05 | |
0x1129a4058: 0d 00 03 0e 49 13 3a 0b 3b 0b 38 0b 00 00 06 05 | |
0x1129a4068: 00 02 18 03 0e 3a 0b 3b 0b 49 13 00 00 07 34 00 | |
0x1129a4078: 02 18 03 0e 3a 0b 3b 0b 49 13 00 00 08 15 01 49 | |
0x1129a4088: 13 00 00 09 05 00 49 13 00 00 0a 24 00 03 0e 3e | |
0x1129a4098: 0b 0b 0b 00 00 0b 0f 00 00 00 00 00 00 00 00 00 | |
0x1129a40a8: 00 00 00 00 00 00 00 00 00 | |
[0x1129a40b8+0x128]->0xffffffffffffffff (alignment 8, section ID 3, name __debug_info) | |
0x1129a40b8: 06 01 00 00 04 00 00 00 00 00 08 01 00 00 00 00 | |
0x1129a40c8: 11 00 2f 00 00 00 00 00 00 00 73 00 00 00 02 20 | |
0x1129a40d8: c4 ee 1c 01 00 00 00 68 00 00 00 02 45 00 00 00 | |
0x1129a40e8: 03 20 c4 ee 1c 01 00 00 00 68 00 00 00 01 6d dd | |
0x1129a40f8: 00 00 00 01 01 04 05 75 00 00 00 38 01 03 05 8a | |
0x1129a4108: 00 00 00 cc 00 00 00 01 05 00 05 ac 00 00 00 fc | |
0x1129a4118: 00 00 00 01 06 08 05 b2 00 00 00 fc 00 00 00 01 | |
0x1129a4128: 07 10 05 b8 00 00 00 fc 00 00 00 01 08 18 05 be | |
0x1129a4138: 00 00 00 fd 00 00 00 01 09 20 05 c4 00 00 00 f5 | |
0x1129a4148: 00 00 00 01 0a 28 05 ca 00 00 00 f5 00 00 00 01 | |
0x1129a4158: 0b 2c 05 d0 00 00 00 f5 00 00 00 01 0c 30 00 06 | |
0x1129a4168: 02 8f 08 f4 00 00 00 01 01 fc 00 00 00 07 02 8f | |
0x1129a4178: 00 fa 00 00 00 01 0e 2b 00 00 00 00 02 d1 00 00 | |
0x1129a4188: 00 08 f5 00 00 00 09 fc 00 00 00 09 fc 00 00 00 | |
0x1129a4198: 09 fc 00 00 00 09 fd 00 00 00 09 f5 00 00 00 09 | |
0x1129a41a8: f5 00 00 00 00 0a 91 00 00 00 07 04 0b 02 02 01 | |
0x1129a41b8: 00 00 0a 9e 00 00 00 07 08 00 00 00 00 00 00 00 | |
0x1129a41c8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1129a41d8: 00 00 00 00 00 00 00 00 | |
[0x1129a41e0+0x117]->0xffffffffffffffff (alignment 8, section ID 4, name __debug_str) | |
0x1129a41e0: 41 70 70 6c 65 20 63 6c 61 6e 67 20 76 65 72 73 | |
0x1129a41f0: 69 6f 6e 20 31 35 2e 30 2e 30 20 28 63 6c 61 6e | |
0x1129a4200: 67 2d 31 35 30 30 2e 30 2e 34 30 2e 31 29 00 2f | |
0x1129a4210: 76 61 72 2f 66 6f 6c 64 65 72 73 2f 6a 6b 2f 32 | |
0x1129a4220: 6e 6b 6c 62 68 30 78 35 6b 73 63 31 39 32 6a 73 | |
0x1129a4230: 6d 39 6e 68 6e 68 63 30 30 30 30 67 6e 2f 54 2f | |
0x1129a4240: 6c 6c 64 62 2f 38 39 35 30 31 2f 3c 73 74 64 69 | |
0x1129a4250: 6e 3e 00 2f 00 5f 5f 6c 6c 64 62 5f 63 61 6c 6c | |
0x1129a4260: 65 72 5f 73 74 72 75 63 74 00 66 6e 5f 70 74 72 | |
0x1129a4270: 00 75 6e 73 69 67 6e 65 64 20 69 6e 74 00 75 6e | |
0x1129a4280: 73 69 67 6e 65 64 20 6c 6f 6e 67 00 61 72 67 5f | |
0x1129a4290: 30 00 61 72 67 5f 31 00 61 72 67 5f 32 00 61 72 | |
0x1129a42a0: 67 5f 33 00 61 72 67 5f 34 00 61 72 67 5f 35 00 | |
0x1129a42b0: 72 65 74 75 72 6e 5f 76 61 6c 75 65 00 5f 5f 6c | |
0x1129a42c0: 6c 64 62 5f 63 61 6c 6c 65 72 5f 66 75 6e 63 74 | |
0x1129a42d0: 69 6f 6e 00 69 6e 70 75 74 00 5f 5f 6c 6c 64 62 | |
0x1129a42e0: 5f 66 6e 5f 64 61 74 61 00 00 00 00 00 00 00 00 | |
0x1129a42f0: 00 00 00 00 00 00 00 | |
[0x1129a42f8+0x4a]->0xffffffffffffffff (alignment 8, section ID 5, name __apple_names) | |
0x1129a42f8: 48 53 41 48 01 00 00 00 01 00 00 00 01 00 00 00 | |
0x1129a4308: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x1129a4318: 00 00 00 00 78 e2 e3 24 2c 00 00 00 dd 00 00 00 | |
0x1129a4328: 01 00 00 00 30 00 00 00 00 00 00 00 00 00 00 00 | |
0x1129a4338: 00 00 00 00 00 00 00 00 00 00 | |
[0x1129a4348+0x32]->0xffffffffffffffff (alignment 8, section ID 6, name __apple_objc) | |
0x1129a4348: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x1129a4358: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x1129a4368: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1129a4378: 00 00 | |
[0x1129a4380+0x32]->0xffffffffffffffff (alignment 8, section ID 7, name __apple_namespac) | |
0x1129a4380: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x1129a4390: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x1129a43a0: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1129a43b0: 00 00 | |
[0x1129a43b8+0x93]->0xffffffffffffffff (alignment 8, section ID 8, name __apple_types) | |
0x1129a43b8: 48 53 41 48 01 00 00 00 03 00 00 00 03 00 00 00 | |
0x1129a43c8: 14 00 00 00 00 00 00 00 03 00 00 00 01 00 06 00 | |
0x1129a43d8: 03 00 05 00 04 00 0b 00 00 00 00 00 ff ff ff ff | |
0x1129a43e8: 02 00 00 00 97 1c 19 b7 72 b6 d0 f9 cd 93 3c b2 | |
0x1129a43f8: 4c 00 00 00 5f 00 00 00 72 00 00 00 75 00 00 00 | |
0x1129a4408: 01 00 00 00 45 00 00 00 13 00 00 00 00 00 00 9e | |
0x1129a4418: 00 00 00 01 00 00 00 02 01 00 00 24 00 00 00 00 | |
0x1129a4428: 00 00 91 00 00 00 01 00 00 00 f5 00 00 00 24 00 | |
0x1129a4438: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1129a4448: 00 00 00 | |
[0x1129a4450+0x9d]->0xffffffffffffffff (alignment 8, section ID 9, name __debug_line) | |
0x1129a4450: 83 00 00 00 04 00 64 00 00 00 01 01 01 fb 0e 0d | |
0x1129a4460: 00 01 01 01 01 00 00 00 01 00 00 01 2f 76 61 72 | |
0x1129a4470: 2f 66 6f 6c 64 65 72 73 2f 6a 6b 2f 32 6e 6b 6c | |
0x1129a4480: 62 68 30 78 35 6b 73 63 31 39 32 6a 73 6d 39 6e | |
0x1129a4490: 68 6e 68 63 30 30 30 30 67 6e 2f 54 2f 6c 6c 64 | |
0x1129a44a0: 62 2f 38 39 35 30 31 00 00 6c 6c 64 62 2d 31 30 | |
0x1129a44b0: 37 65 36 38 2e 65 78 70 72 00 01 00 00 00 00 09 | |
0x1129a44c0: 02 20 c4 ee 1c 01 00 00 00 13 0a 03 0c f2 83 02 | |
0x1129a44d0: 44 13 02 0c 00 01 01 00 00 00 00 00 00 00 00 00 | |
0x1129a44e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
== [FunctionCaller::ExecuteFunction] Executing function "__lldb_apple_objc_v2_get_shared_cache_class_info-caller" == | |
-- [FunctionCaller::GetThreadPlanToCallFunction] Creating thread plan to call function "__lldb_apple_objc_v2_get_shared_cache_class_info-caller" -- | |
ABIMacOSX_arm64::PrepareTrivialCall (tid = 0x247096, sp = 0x16fb8eef0, func_addr = 0x11ceec420, return_addr = 0x10026d6ec, arg1 = 0x11d0f84f0) | |
About to write arg1 (0x11d0f84f0) into x0 | |
== [FunctionCaller::ExecuteFunction] Execution of "__lldb_apple_objc_v2_get_shared_cache_class_info-caller" completed normally == | |
-- [FunctionCaller::FetchFunctionResults] Fetching function results for "__lldb_apple_objc_v2_get_shared_cache_class_info-caller"-- | |
Discovered 129639 Objective-C classes in the shared cache | |
attempted to read objc class data - results: [dynamic_update]: ran: yes, retry: no, count: 2380 [shared_cache_update]: ran: yes, retry: no, count: 129639 | |
AOCTV::FT Couldn't find the isa | |
LayoutRecordType on (ASTContext*)0x00000001411CB000 'Expression ASTContext for '<user expression 0>'' for (RecordDecl*)0x00000001412090B8 [name = ''] | |
Last statement is an lvalue with type: struct (unnamed struct at <user expression 0>:2:1) | |
Found function _Z12$__lldb_exprPv for $__lldb_expr | |
DoPrepareForExecution - Current expression language is objective-c++ | |
Module as passed in to IRForTarget: | |
"; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.anon = type { ptr, ptr, ptr, i32, i32, ptr } | |
@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8 | |
@"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global i8 0, align 1 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_Z12$__lldb_exprPv"(ptr %"$__lldb_arg") #0 { | |
entry: | |
%"$__lldb_arg.addr" = alloca ptr, align 8, !clang.decl.ptr !12 | |
%t = alloca %struct.anon, align 8, !clang.decl.ptr !13 | |
store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
%issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0 | |
%message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1 | |
%filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2 | |
%line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3 | |
%col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4 | |
%memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5 | |
call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
%0 = load i8, ptr @"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 1 | |
%guard.uninitialized = icmp eq i8 %0, 0 | |
br i1 %guard.uninitialized, label %init.check, label %init.end, !prof !14 | |
init.check: ; preds = %entry | |
store ptr %t, ptr @"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 8 | |
store i8 1, ptr @"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 1 | |
br label %init.end | |
init.end: ; preds = %init.check, %entry | |
ret void | |
} | |
; Function Attrs: convergent | |
declare void @__ubsan_get_current_report_data(ptr, ptr, ptr, ptr, ptr, ptr) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { convergent "no-builtins" } | |
!clang.global.decl.ptrs = !{!0, !1, !2, !0} | |
!llvm.module.flags = !{!3, !4, !5, !6, !7, !8, !9, !10} | |
!llvm.ident = !{!11} | |
!0 = !{ptr @"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", i64 5388348104} | |
!1 = !{ptr @"_Z12$__lldb_exprPv", i64 5387620328} | |
!2 = !{ptr @__ubsan_get_current_report_data, i64 5387619840} | |
!3 = !{i32 1, !"Objective-C Version", i32 2} | |
!4 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!5 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!6 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!7 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!8 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!9 = !{i32 1, !"wchar_size", i32 4} | |
!10 = !{i32 7, !"frame-pointer", i32 2} | |
!11 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!12 = !{i64 5387620104} | |
!13 = !{i64 5387621576} | |
!14 = !{!"branch_weights", i32 1, i32 1048575} | |
" | |
Result name: "_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" | |
Found result in the IR: "@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8" | |
Found result decl: "static struct (unnamed struct at <user expression 0>:2:1) *$__lldb_expr_result_ptr&t" | |
Result decl type: "struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned int line; | |
unsigned int col; | |
char *memory_addr; | |
}" | |
Creating a new result global: "$RESULT_NAME" with size 40 | |
Replacing "@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8" with "@"$RESULT_NAME" = external global ptr" | |
[ClangASTImporter] DeportType called on ((unnamed struct at <user expression 0>:2:1)Type*)0x0000000141209470 from (ASTContext*)0x00000001411CB000 to (ASTContext*)0x0000000134A71600 | |
[ClangASTImporter] Imported (CXXRecordDecl*)0x0000000134A7AF18, named (unnamed struct at <user expression 0>:2:1) (from (Decl*)0x00000001412090B8), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
[ClangASTImporter] To is a TagDecl - attributes Lexical [complete->complete] | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000141276700, named issue_kind (from (Decl*)0x0000000141209200), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
FindExternalLexicalDecls on (ASTContext*)0x0000000134A71600 'scratch ASTContext' in '' (CXXRecordDecl*)0x0000000134A7AF18 | |
FELD Original decl 0x00000001411CB000 (Decl*)0x00000001412090b8: | |
CXXRecordDecl 0x1412090b8 <<user expression 0>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x141209200 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x141209268 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x1412092d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x141209338 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x1412093a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x141209408 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x141209548 <line:2:1> col:1 implicit used (unnamed struct at <user expression 0>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x141209a38 <col:1> | |
|-CXXConstructorDecl 0x141209688 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 0>:2:1) 'void (const (unnamed struct at <user expression 0>:2:1) &)' inline default trivial noexcept-unevaluated 0x141209688 | |
| `-ParmVarDecl 0x1412097a8 <col:1> col:1 'const (unnamed struct at <user expression 0>:2:1) &' | |
`-CXXConstructorDecl 0x141209858 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 0>:2:1) 'void ((unnamed struct at <user expression 0>:2:1) &&)' inline default trivial noexcept-unevaluated 0x141209858 | |
`-ParmVarDecl 0x141209978 <col:1> col:1 '(unnamed struct at <user expression 0>:2:1) &&' | |
CompleteTagDecl on (ASTContext*)Expression ASTContext for '<user expression 0>' Completing (TagDecl*)0x00000001412090B8 named | |
CTD Before: | |
CXXRecordDecl 0x1412090b8 <<user expression 0>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x141209200 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x141209268 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x1412092d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x141209338 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x1412093a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x141209408 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x141209548 <line:2:1> col:1 implicit used (unnamed struct at <user expression 0>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x141209a38 <col:1> | |
|-CXXConstructorDecl 0x141209688 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 0>:2:1) 'void (const (unnamed struct at <user expression 0>:2:1) &)' inline default trivial noexcept-unevaluated 0x141209688 | |
| `-ParmVarDecl 0x1412097a8 <col:1> col:1 'const (unnamed struct at <user expression 0>:2:1) &' | |
`-CXXConstructorDecl 0x141209858 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 0>:2:1) 'void ((unnamed struct at <user expression 0>:2:1) &&)' inline default trivial noexcept-unevaluated 0x141209858 | |
`-ParmVarDecl 0x141209978 <col:1> col:1 '(unnamed struct at <user expression 0>:2:1) &&' | |
[CTD] After: | |
CXXRecordDecl 0x1412090b8 <<user expression 0>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x141209200 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x141209268 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x1412092d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x141209338 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x1412093a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x141209408 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x141209548 <line:2:1> col:1 implicit used (unnamed struct at <user expression 0>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x141209a38 <col:1> | |
|-CXXConstructorDecl 0x141209688 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 0>:2:1) 'void (const (unnamed struct at <user expression 0>:2:1) &)' inline default trivial noexcept-unevaluated 0x141209688 | |
| `-ParmVarDecl 0x1412097a8 <col:1> col:1 'const (unnamed struct at <user expression 0>:2:1) &' | |
`-CXXConstructorDecl 0x141209858 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 0>:2:1) 'void ((unnamed struct at <user expression 0>:2:1) &&)' inline default trivial noexcept-unevaluated 0x141209858 | |
`-ParmVarDecl 0x141209978 <col:1> col:1 '(unnamed struct at <user expression 0>:2:1) &&' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x141209200 <<user expression 0>:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x141209268 <<user expression 0>:4:3, col:15> col:15 referenced message 'const char *' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x1412092d0 <<user expression 0>:5:3, col:15> col:15 referenced filename 'const char *' | |
[ClangASTImporter] Imported (FieldDecl*)0x00000001412767E0, named filename (from (Decl*)0x00000001412092D0), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x141209338 <<user expression 0>:6:3, col:12> col:12 referenced line 'unsigned int' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000141276850, named line (from (Decl*)0x0000000141209338), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x1412093a0 <<user expression 0>:7:3, col:12> col:12 referenced col 'unsigned int' | |
[ClangASTImporter] Imported (FieldDecl*)0x00000001412768C0, named col (from (Decl*)0x00000001412093A0), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x141209408 <<user expression 0>:8:3, col:9> col:9 referenced memory_addr 'char *' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000141276960, named memory_addr (from (Decl*)0x0000000141209408), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x141209548 <<user expression 0>:2:1> col:1 implicit used (unnamed struct at <user expression 0>:2:1) 'void () noexcept' inline default trivial | |
`-CompoundStmt 0x141209a38 <col:1> | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000141276A58, named (unnamed struct at <user expression 0>:2:1) (from (Decl*)0x0000000141209548), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x141209688 <<user expression 0>:2:1> col:1 implicit constexpr (unnamed struct at <user expression 0>:2:1) 'void (const (unnamed struct at <user expression 0>:2:1) &)' inline default trivial noexcept-unevaluated 0x141209688 | |
`-ParmVarDecl 0x1412097a8 <col:1> col:1 'const (unnamed struct at <user expression 0>:2:1) &' | |
[ClangASTImporter] Imported (ParmVarDecl*)0x0000000141276BB0, named (from (Decl*)0x00000001412097A8), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000141276C20, named (unnamed struct at <user expression 0>:2:1) (from (Decl*)0x0000000141209688), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x141209858 <<user expression 0>:2:1> col:1 implicit constexpr (unnamed struct at <user expression 0>:2:1) 'void ((unnamed struct at <user expression 0>:2:1) &&)' inline default trivial noexcept-unevaluated 0x141209858 | |
`-ParmVarDecl 0x141209978 <col:1> col:1 '(unnamed struct at <user expression 0>:2:1) &&' | |
[ClangASTImporter] Imported (ParmVarDecl*)0x0000000141276DC0, named (from (Decl*)0x0000000141209978), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000141276E30, named (unnamed struct at <user expression 0>:2:1) (from (Decl*)0x0000000141209858), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000141276770, named message (from (Decl*)0x0000000141209268), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411CB000 | |
MaybeHandleCallArguments( call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2) | |
MaybeHandleVariable ( %issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0) | |
MaybeHandleVariable ( %message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1) | |
MaybeHandleVariable ( %filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2) | |
MaybeHandleVariable ( %line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3) | |
MaybeHandleVariable ( %col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4) | |
MaybeHandleVariable ( %memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5) | |
Examining _ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr, DeclForGlobalValue returns 0x0000000000000000 | |
Examining reloc_placeholder, DeclForGlobalValue returns 0x0000000000000000 | |
Examining $RESULT_NAME, DeclForGlobalValue returns 0x00000001412BAAC8 | |
MaybeHandleVariable (@"$RESULT_NAME" = external global ptr) | |
Type of "$__lldb_expr_result_ptr" is [clang "struct (unnamed struct at <user expression 0>:2:1) **", llvm "ptr"] [size 8, align 8] | |
Adding value for (NamedDecl*)0x00000001412BAAC8 [$__lldb_expr_result_ptr - $RESULT_NAME] to the structure | |
Already placed at 0x0 | |
Placed at 0x0 | |
Element arrangement: | |
Arg: "ptr %"$__lldb_arg"" | |
"$RESULT_NAME" ("$__lldb_expr_result_ptr") placed at 0 | |
Replacing [@"$RESULT_NAME" = external global ptr] | |
Total structure [align 8, size 8] | |
Saw function with body: _Z12$__lldb_exprPv | |
Unsupported instruction: call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_arg_ptr' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x000000014132E000 'Expression ASTContext for '<clang expression>'' for '$__lldb_arg_ptr' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '_$__lldb_valid_pointer_check' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x000000014132E000 'Expression ASTContext for '<clang expression>'' for '_$__lldb_valid_pointer_check' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_local_val' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x000000014132E000 'Expression ASTContext for '<clang expression>'' for '$__lldb_local_val' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
Found function _$__lldb_valid_pointer_check for _$__lldb_valid_pointer_check | |
DoPrepareForExecution - Current expression language is unknown | |
Module as passed in to IRForTarget: | |
"; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_$__lldb_valid_pointer_check"(ptr %"$__lldb_arg_ptr") #0 !dbg !13 { | |
entry: | |
%"$__lldb_arg_ptr.addr" = alloca ptr, align 8, !clang.decl.ptr !20 | |
%"$__lldb_local_val" = alloca i8, align 1, !clang.decl.ptr !21 | |
store ptr %"$__lldb_arg_ptr", ptr %"$__lldb_arg_ptr.addr", align 8 | |
call void @llvm.dbg.declare(metadata ptr %"$__lldb_arg_ptr.addr", metadata !22, metadata !DIExpression()), !dbg !23 | |
call void @llvm.dbg.declare(metadata ptr %"$__lldb_local_val", metadata !24, metadata !DIExpression()), !dbg !25 | |
%0 = load ptr, ptr %"$__lldb_arg_ptr.addr", align 8, !dbg !25 | |
%1 = load i8, ptr %0, align 1, !dbg !25 | |
store i8 %1, ptr %"$__lldb_local_val", align 1, !dbg !25 | |
ret void, !dbg !26 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
!llvm.dbg.cu = !{!0} | |
!llvm.module.flags = !{!2, !3, !4, !5, !6, !7, !8, !9, !10} | |
!clang.global.decl.ptrs = !{!11} | |
!llvm.ident = !{!12} | |
!0 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !1, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug) | |
!1 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!2 = !{i32 1, !"Objective-C Version", i32 2} | |
!3 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!4 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!5 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!6 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!7 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!8 = !{i32 2, !"Debug Info Version", i32 3} | |
!9 = !{i32 1, !"wchar_size", i32 4} | |
!10 = !{i32 7, !"frame-pointer", i32 2} | |
!11 = !{ptr @"_$__lldb_valid_pointer_check", i64 5388998760} | |
!12 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!13 = distinct !DISubprogram(name: "_$__lldb_valid_pointer_check", scope: !14, file: !14, line: 37, type: !15, scopeLine: 38, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !19) | |
!14 = !DIFile(filename: "<lldb wrapper prefix>", directory: "/") | |
!15 = !DISubroutineType(types: !16) | |
!16 = !{null, !17} | |
!17 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !18, size: 64) | |
!18 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char) | |
!19 = !{} | |
!20 = !{i64 5388998536} | |
!21 = !{i64 5388998984} | |
!22 = !DILocalVariable(name: "$__lldb_arg_ptr", arg: 1, scope: !13, file: !14, line: 37, type: !17) | |
!23 = !DILocation(line: 37, scope: !13) | |
!24 = !DILocalVariable(name: "$__lldb_local_val", scope: !13, file: !14, line: 39, type: !18) | |
!25 = !DILocation(line: 39, scope: !13) | |
!26 = !DILocation(line: 40, scope: !13) | |
" | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %"$__lldb_arg_ptr.addr", metadata !22, metadata !DIExpression()), !dbg !23) | |
MaybeHandleVariable (ptr %"$__lldb_arg_ptr.addr") | |
MaybeHandleVariable (!22 = !DILocalVariable(name: "$__lldb_arg_ptr", arg: 1, scope: !13, file: !14, line: 37, type: !17)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %"$__lldb_local_val", metadata !24, metadata !DIExpression()), !dbg !25) | |
MaybeHandleVariable (ptr %"$__lldb_local_val") | |
MaybeHandleVariable (!24 = !DILocalVariable(name: "$__lldb_local_val", scope: !13, file: !14, line: 39, type: !18)) | |
MaybeHandleVariable (!DIExpression()) | |
Examining reloc_placeholder, DeclForGlobalValue returns 0x0000000000000000 | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
@reloc_placeholder = internal global i8 0 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_$__lldb_valid_pointer_check"(ptr %"$__lldb_arg_ptr") #0 !dbg !13 { | |
entry: | |
%"$__lldb_arg_ptr.addr" = alloca ptr, align 8, !clang.decl.ptr !20 | |
%"$__lldb_local_val" = alloca i8, align 1, !clang.decl.ptr !21 | |
store ptr %"$__lldb_arg_ptr", ptr %"$__lldb_arg_ptr.addr", align 8 | |
call void @llvm.dbg.declare(metadata ptr %"$__lldb_arg_ptr.addr", metadata !22, metadata !DIExpression()), !dbg !23 | |
call void @llvm.dbg.declare(metadata ptr %"$__lldb_local_val", metadata !24, metadata !DIExpression()), !dbg !25 | |
%0 = load ptr, ptr %"$__lldb_arg_ptr.addr", align 8, !dbg !25 | |
%1 = load i8, ptr %0, align 1, !dbg !25 | |
store i8 %1, ptr %"$__lldb_local_val", align 1, !dbg !25 | |
ret void, !dbg !26 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
!llvm.dbg.cu = !{!0} | |
!llvm.module.flags = !{!2, !3, !4, !5, !6, !7, !8, !9, !10} | |
!clang.global.decl.ptrs = !{!11} | |
!llvm.ident = !{!12} | |
!0 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !1, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug) | |
!1 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!2 = !{i32 1, !"Objective-C Version", i32 2} | |
!3 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!4 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!5 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!6 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!7 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!8 = !{i32 2, !"Debug Info Version", i32 3} | |
!9 = !{i32 1, !"wchar_size", i32 4} | |
!10 = !{i32 7, !"frame-pointer", i32 2} | |
!11 = !{ptr @"_$__lldb_valid_pointer_check", i64 5388998760} | |
!12 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!13 = distinct !DISubprogram(name: "_$__lldb_valid_pointer_check", scope: !14, file: !14, line: 37, type: !15, scopeLine: 38, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !19) | |
!14 = !DIFile(filename: "<lldb wrapper prefix>", directory: "/") | |
!15 = !DISubroutineType(types: !16) | |
!16 = !{null, !17} | |
!17 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !18, size: 64) | |
!18 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char) | |
!19 = !{} | |
!20 = !{i64 5388998536} | |
!21 = !{i64 5388998984} | |
!22 = !DILocalVariable(name: "$__lldb_arg_ptr", arg: 1, scope: !13, file: !14, line: 37, type: !17) | |
!23 = !DILocation(line: 37, scope: !13) | |
!24 = !DILocalVariable(name: "$__lldb_local_val", scope: !13, file: !14, line: 39, type: !18) | |
!25 = !DILocation(line: 39, scope: !13) | |
!26 = !DILocation(line: 40, scope: !13) | |
IRExecutionUnit::allocateCodeSection(Size=0x33, Alignment=8, SectionID=0) = 0x1252fc000 | |
IRExecutionUnit::allocateDataSection(Size=0xf, Alignment=8, SectionID=1) = 0x1256fc000 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=2) = 0x1256fc010 | |
IRExecutionUnit::allocateDataSection(Size=0x68, Alignment=8, SectionID=3) = 0x1256fc028 | |
IRExecutionUnit::allocateDataSection(Size=0x88, Alignment=8, SectionID=4) = 0x1256fc090 | |
IRExecutionUnit::allocateDataSection(Size=0xd0, Alignment=8, SectionID=5) = 0x1256fc118 | |
IRExecutionUnit::allocateDataSection(Size=0x4a, Alignment=8, SectionID=6) = 0x1256fc1e8 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=7) = 0x1256fc238 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=8) = 0x1256fc270 | |
IRExecutionUnit::allocateDataSection(Size=0x55, Alignment=8, SectionID=9) = 0x1256fc2a8 | |
IRExecutionUnit::allocateDataSection(Size=0x63, Alignment=8, SectionID=10) = 0x1256fc300 | |
IRMemoryMap::Malloc (63, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11ceec4a0 | |
IRMemoryMap::Malloc (23, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8530 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8550 | |
IRMemoryMap::WriteMemory (0x11ceec4a0, 0x1252fc000, 0x51) went to [0x11ceec4a0..0x11ceec4df) | |
IRMemoryMap::WriteMemory (0x11d0f8530, 0x1256fc000, 0x15) went to [0x11d0f8530..0x11d0f8547) | |
IRMemoryMap::WriteMemory (0x11d0f8550, 0x1256fc010, 0x22) went to [0x11d0f8550..0x11d0f856f) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x1252fc000 in [0x1252fc000..0x1252fc033], and returned 0x11ceec4a0 from [0x11ceec4a0..0x11ceec4d3]. | |
Code can be run in the target. | |
Found function, has local address 0x1252fc000 and remote address 0x11ceec4a0 | |
Function's code range is [0x11ceec4a0+0x33] | |
Function data has contents: | |
0x11ceec4a0: ff 83 00 d1 fd 7b 01 a9 fd 43 00 91 e0 07 00 f9 | |
0x11ceec4b0: e8 07 40 f9 08 01 40 39 e8 1f 00 39 fd 7b 41 a9 | |
0x11ceec4c0: ff 83 00 91 c0 03 5f d6 00 00 00 00 00 00 00 00 | |
0x11ceec4d0: 00 00 00 | |
Function disassembly: | |
0x11ceec4a0: 0xd10083ff unknown sub sp, sp, #0x20 | |
0x11ceec4a4: 0xa9017bfd unknown stp x29, x30, [sp, #0x10] | |
0x11ceec4a8: 0x910043fd unknown add x29, sp, #0x10 | |
0x11ceec4ac: 0xf90007e0 unknown str x0, [sp, #0x8] | |
0x11ceec4b0: 0xf94007e8 unknown ldr x8, [sp, #0x8] | |
0x11ceec4b4: 0x39400108 unknown ldrb w8, [x8] | |
0x11ceec4b8: 0x39001fe8 unknown strb w8, [sp, #0x7] | |
0x11ceec4bc: 0xa9417bfd unknown ldp x29, x30, [sp, #0x10] | |
0x11ceec4c0: 0x910083ff unknown add sp, sp, #0x20 | |
0x11ceec4c4: 0xd65f03c0 unknown ret | |
0x11ceec4c8: 0x00000000 unknown udf #0x0 | |
0x11ceec4cc: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x1252fc000+0x33]->0x11ceec4a0 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11ceec4a0, 0x600005415c40, 0x51) came from [0x11ceec4a0..0x11ceec4df) | |
0x11ceec4a0: ff 83 00 d1 fd 7b 01 a9 fd 43 00 91 e0 07 00 f9 | |
0x11ceec4b0: e8 07 40 f9 08 01 40 39 e8 1f 00 39 fd 7b 41 a9 | |
0x11ceec4c0: ff 83 00 91 c0 03 5f d6 00 00 00 00 00 00 00 00 | |
0x11ceec4d0: 00 00 00 | |
[0x1256fc000+0xf]->0x11d0f8530 (alignment 8, section ID 1, name __bss) | |
IRMemoryMap::ReadMemory (0x11d0f8530, 0x6000003677c0, 0x15) came from [0x11d0f8530..0x11d0f8547) | |
0x11d0f8530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1256fc010+0x16]->0x11d0f8550 (alignment 8, section ID 2, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f8550, 0x600000494a80, 0x22) came from [0x11d0f8550..0x11d0f856f) | |
0x11d0f8550: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f8560: 00 00 00 00 00 00 | |
[0x1256fc028+0x68]->0xffffffffffffffff (alignment 8, section ID 3, name __debug_abbrev) | |
0x1256fc028: 01 11 01 25 0e 13 05 03 0e 10 17 1b 0e e5 7f 0b | |
0x1256fc038: 11 01 12 06 00 00 02 2e 01 11 01 12 06 40 18 03 | |
0x1256fc048: 0e 3a 0b 3b 0b 3f 19 00 00 03 05 00 02 18 03 0e | |
0x1256fc058: 3a 0b 3b 0b 49 13 00 00 04 34 00 02 18 03 0e 3a | |
0x1256fc068: 0b 3b 0b 49 13 00 00 05 0f 00 49 13 00 00 06 24 | |
0x1256fc078: 00 03 0e 3e 0b 0b 0b 00 00 00 00 00 00 00 00 00 | |
0x1256fc088: 00 00 00 00 00 00 00 00 | |
[0x1256fc090+0x88]->0xffffffffffffffff (alignment 8, section ID 4, name __debug_info) | |
0x1256fc090: 66 00 00 00 04 00 00 00 00 00 08 01 00 00 00 00 | |
0x1256fc0a0: 11 00 2f 00 00 00 00 00 00 00 73 00 00 00 02 a0 | |
0x1256fc0b0: c4 ee 1c 01 00 00 00 28 00 00 00 02 a0 c4 ee 1c | |
0x1256fc0c0: 01 00 00 00 28 00 00 00 01 6d 75 00 00 00 01 25 | |
0x1256fc0d0: 03 02 8f 08 92 00 00 00 01 25 5d 00 00 00 04 02 | |
0x1256fc0e0: 8f 07 b0 00 00 00 01 27 62 00 00 00 00 05 62 00 | |
0x1256fc0f0: 00 00 06 a2 00 00 00 08 01 00 00 00 00 00 00 00 | |
0x1256fc100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1256fc110: 00 00 00 00 00 00 00 00 | |
[0x1256fc118+0xd0]->0xffffffffffffffff (alignment 8, section ID 5, name __debug_str) | |
0x1256fc118: 41 70 70 6c 65 20 63 6c 61 6e 67 20 76 65 72 73 | |
0x1256fc128: 69 6f 6e 20 31 35 2e 30 2e 30 20 28 63 6c 61 6e | |
0x1256fc138: 67 2d 31 35 30 30 2e 30 2e 34 30 2e 31 29 00 2f | |
0x1256fc148: 76 61 72 2f 66 6f 6c 64 65 72 73 2f 6a 6b 2f 32 | |
0x1256fc158: 6e 6b 6c 62 68 30 78 35 6b 73 63 31 39 32 6a 73 | |
0x1256fc168: 6d 39 6e 68 6e 68 63 30 30 30 30 67 6e 2f 54 2f | |
0x1256fc178: 6c 6c 64 62 2f 38 39 35 30 31 2f 3c 73 74 64 69 | |
0x1256fc188: 6e 3e 00 2f 00 5f 24 5f 5f 6c 6c 64 62 5f 76 61 | |
0x1256fc198: 6c 69 64 5f 70 6f 69 6e 74 65 72 5f 63 68 65 63 | |
0x1256fc1a8: 6b 00 24 5f 5f 6c 6c 64 62 5f 61 72 67 5f 70 74 | |
0x1256fc1b8: 72 00 75 6e 73 69 67 6e 65 64 20 63 68 61 72 00 | |
0x1256fc1c8: 24 5f 5f 6c 6c 64 62 5f 6c 6f 63 61 6c 5f 76 61 | |
0x1256fc1d8: 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1256fc1e8+0x4a]->0xffffffffffffffff (alignment 8, section ID 6, name __apple_names) | |
0x1256fc1e8: 48 53 41 48 01 00 00 00 01 00 00 00 01 00 00 00 | |
0x1256fc1f8: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x1256fc208: 00 00 00 00 90 fe 67 61 2c 00 00 00 75 00 00 00 | |
0x1256fc218: 01 00 00 00 2b 00 00 00 00 00 00 00 00 00 00 00 | |
0x1256fc228: 00 00 00 00 00 00 00 00 00 00 | |
[0x1256fc238+0x32]->0xffffffffffffffff (alignment 8, section ID 7, name __apple_objc) | |
0x1256fc238: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x1256fc248: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x1256fc258: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1256fc268: 00 00 | |
[0x1256fc270+0x32]->0xffffffffffffffff (alignment 8, section ID 8, name __apple_namespac) | |
0x1256fc270: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x1256fc280: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x1256fc290: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1256fc2a0: 00 00 | |
[0x1256fc2a8+0x55]->0xffffffffffffffff (alignment 8, section ID 9, name __apple_types) | |
0x1256fc2a8: 48 53 41 48 01 00 00 00 01 00 00 00 01 00 00 00 | |
0x1256fc2b8: 14 00 00 00 00 00 00 00 03 00 00 00 01 00 06 00 | |
0x1256fc2c8: 03 00 05 00 04 00 0b 00 00 00 00 00 a0 a7 cb f9 | |
0x1256fc2d8: 34 00 00 00 a2 00 00 00 01 00 00 00 62 00 00 00 | |
0x1256fc2e8: 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1256fc2f8: 00 00 00 00 00 | |
[0x1256fc300+0x63]->0xffffffffffffffff (alignment 8, section ID 10, name __debug_line) | |
0x1256fc300: 49 00 00 00 04 00 2d 00 00 00 01 01 01 fb 0e 0d | |
0x1256fc310: 00 01 01 01 01 00 00 00 01 00 00 01 00 3c 6c 6c | |
0x1256fc320: 64 62 20 77 72 61 70 70 65 72 20 70 72 65 66 69 | |
0x1256fc330: 78 3e 00 00 00 00 00 00 09 02 a0 c4 ee 1c 01 00 | |
0x1256fc340: 00 00 03 25 01 0a f3 bb 02 0c 00 01 01 00 00 00 | |
0x1256fc350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x1256fc360: 00 00 00 | |
Couldn't find llvm.global_ctors. | |
[ClangASTImporter] Forgetting destination (ASTContext*)0x000000014132E000 | |
[ClangASTImporter] Forgetting source->dest (ASTContext*)0x000000014132E000->(ASTContext*)0x0000000134A71600 | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_arg_obj' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000131246C00 'Expression ASTContext for '<clang expression>'' for '$__lldb_arg_obj' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_arg_selector' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000131246C00 'Expression ASTContext for '<clang expression>'' for '$__lldb_arg_selector' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_objc_object_check' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000131246C00 'Expression ASTContext for '<clang expression>'' for '$__lldb_objc_object_check' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$responds' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000131246C00 'Expression ASTContext for '<clang expression>'' for '$responds' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
Found function $__lldb_objc_object_check for $__lldb_objc_object_check | |
DoPrepareForExecution - Current expression language is unknown | |
Module as passed in to IRForTarget: | |
"; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
@OBJC_METH_VAR_NAME_ = private unnamed_addr constant [20 x i8] c"respondsToSelector:\00", section "__TEXT,__objc_methname,cstring_literals", align 1 | |
@OBJC_SELECTOR_REFERENCES_ = internal externally_initialized global ptr @OBJC_METH_VAR_NAME_, section "__DATA,__objc_selrefs,literal_pointers,no_dead_strip", align 8 | |
@llvm.compiler.used = appending global [2 x ptr] [ptr @OBJC_METH_VAR_NAME_, ptr @OBJC_SELECTOR_REFERENCES_], section "llvm.metadata" | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"$__lldb_objc_object_check"(ptr %"$__lldb_arg_obj", ptr %"$__lldb_arg_selector") #0 !dbg !28 { | |
entry: | |
%"$__lldb_arg_obj.addr" = alloca ptr, align 8, !clang.decl.ptr !33 | |
%"$__lldb_arg_selector.addr" = alloca ptr, align 8, !clang.decl.ptr !34 | |
%"$responds" = alloca i8, align 1, !clang.decl.ptr !35 | |
store ptr %"$__lldb_arg_obj", ptr %"$__lldb_arg_obj.addr", align 8 | |
call void @llvm.dbg.declare(metadata ptr %"$__lldb_arg_obj.addr", metadata !36, metadata !DIExpression()), !dbg !37 | |
store ptr %"$__lldb_arg_selector", ptr %"$__lldb_arg_selector.addr", align 8 | |
call void @llvm.dbg.declare(metadata ptr %"$__lldb_arg_selector.addr", metadata !38, metadata !DIExpression()), !dbg !37 | |
%0 = load ptr, ptr %"$__lldb_arg_obj.addr", align 8, !dbg !39 | |
%cmp = icmp eq ptr %0, null, !dbg !39 | |
br i1 %cmp, label %if.then, label %if.end, !dbg !41 | |
if.then: ; preds = %entry | |
br label %if.end9, !dbg !42 | |
if.end: ; preds = %entry | |
%1 = load ptr, ptr %"$__lldb_arg_obj.addr", align 8, !dbg !43 | |
%call = call ptr @gdb_object_getClass(ptr %1) #4, !dbg !43 | |
%tobool = icmp ne ptr %call, null, !dbg !43 | |
br i1 %tobool, label %if.else, label %if.then1, !dbg !45 | |
if.then1: ; preds = %if.end | |
store volatile i32 1868785507, ptr null, align 4, !dbg !46 | |
br label %if.end9, !dbg !48 | |
if.else: ; preds = %if.end | |
%2 = load ptr, ptr %"$__lldb_arg_selector.addr", align 8, !dbg !49 | |
%cmp2 = icmp ne ptr %2, null, !dbg !49 | |
br i1 %cmp2, label %if.then3, label %if.end8, !dbg !51 | |
if.then3: ; preds = %if.else | |
call void @llvm.dbg.declare(metadata ptr %"$responds", metadata !52, metadata !DIExpression()), !dbg !54 | |
%3 = load ptr, ptr %"$__lldb_arg_obj.addr", align 8, !dbg !55 | |
%4 = load ptr, ptr %"$__lldb_arg_selector.addr", align 8, !dbg !56 | |
%5 = load ptr, ptr @OBJC_SELECTOR_REFERENCES_, align 8, !dbg !55, !invariant.load !32 | |
%call4 = call i8 @objc_msgSend(ptr %3, ptr %5, ptr %4) #4, !dbg !55 | |
store i8 %call4, ptr %"$responds", align 1, !dbg !54 | |
%6 = load i8, ptr %"$responds", align 1, !dbg !57 | |
%conv = sext i8 %6 to i32, !dbg !57 | |
%cmp5 = icmp eq i32 %conv, 0, !dbg !57 | |
br i1 %cmp5, label %if.then6, label %if.end7, !dbg !59 | |
if.then6: ; preds = %if.then3 | |
store volatile i32 1868785507, ptr null, align 4, !dbg !60 | |
br label %if.end7, !dbg !60 | |
if.end7: ; preds = %if.then6, %if.then3 | |
br label %if.end8, !dbg !61 | |
if.end8: ; preds = %if.end7, %if.else | |
br label %if.end9 | |
if.end9: ; preds = %if.then, %if.end8, %if.then1 | |
ret void, !dbg !62 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 | |
; Function Attrs: convergent | |
declare ptr @gdb_object_getClass(ptr) #2 | |
; Function Attrs: nonlazybind | |
declare ptr @objc_msgSend(ptr, ptr, ...) #3 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
attributes #2 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #3 = { nonlazybind } | |
attributes #4 = { convergent "no-builtins" } | |
!llvm.dbg.cu = !{!0} | |
!llvm.module.flags = !{!16, !17, !18, !19, !20, !21, !22, !23, !24} | |
!clang.global.decl.ptrs = !{!25, !26} | |
!llvm.ident = !{!27} | |
!0 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !1, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug, retainedTypes: !2) | |
!1 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!2 = !{!3, !4, !7, !8} | |
!3 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64) | |
!4 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !5, size: 64) | |
!5 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !6) | |
!6 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) | |
!7 = !DIBasicType(name: "signed char", size: 8, encoding: DW_ATE_signed_char) | |
!8 = !DIDerivedType(tag: DW_TAG_typedef, name: "id", file: !9, baseType: !10) | |
!9 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "") | |
!10 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !11, size: 64) | |
!11 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_object", file: !1, elements: !12) | |
!12 = !{!13} | |
!13 = !DIDerivedType(tag: DW_TAG_member, name: "isa", scope: !11, file: !1, baseType: !14, size: 64) | |
!14 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !15, size: 64) | |
!15 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_class", file: !1, flags: DIFlagFwdDecl) | |
!16 = !{i32 1, !"Objective-C Version", i32 2} | |
!17 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!18 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!19 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!20 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!21 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!22 = !{i32 2, !"Debug Info Version", i32 3} | |
!23 = !{i32 1, !"wchar_size", i32 4} | |
!24 = !{i32 7, !"frame-pointer", i32 2} | |
!25 = !{ptr @"$__lldb_objc_object_check", i64 5118864616} | |
!26 = !{ptr @gdb_object_getClass, i64 5119605808} | |
!27 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!28 = distinct !DISubprogram(name: "$__lldb_objc_object_check", scope: !29, file: !29, line: 40, type: !30, scopeLine: 40, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !32) | |
!29 = !DIFile(filename: "<lldb wrapper prefix>", directory: "/") | |
!30 = !DISubroutineType(types: !31) | |
!31 = !{null, !3, !3} | |
!32 = !{} | |
!33 = !{i64 5118864232} | |
!34 = !{i64 5118864360} | |
!35 = !{i64 5118865944} | |
!36 = !DILocalVariable(name: "$__lldb_arg_obj", arg: 1, scope: !28, file: !29, line: 40, type: !3) | |
!37 = !DILocation(line: 40, scope: !28) | |
!38 = !DILocalVariable(name: "$__lldb_arg_selector", arg: 2, scope: !28, file: !29, line: 40, type: !3) | |
!39 = !DILocation(line: 41, scope: !40) | |
!40 = distinct !DILexicalBlock(scope: !28, file: !29, line: 41) | |
!41 = !DILocation(line: 41, scope: !28) | |
!42 = !DILocation(line: 42, scope: !40) | |
!43 = !DILocation(line: 43, scope: !44) | |
!44 = distinct !DILexicalBlock(scope: !28, file: !29, line: 43) | |
!45 = !DILocation(line: 43, scope: !28) | |
!46 = !DILocation(line: 44, scope: !47) | |
!47 = distinct !DILexicalBlock(scope: !44, file: !29, line: 43) | |
!48 = !DILocation(line: 45, scope: !47) | |
!49 = !DILocation(line: 45, scope: !50) | |
!50 = distinct !DILexicalBlock(scope: !44, file: !29, line: 45) | |
!51 = !DILocation(line: 45, scope: !44) | |
!52 = !DILocalVariable(name: "$responds", scope: !53, file: !29, line: 46, type: !7) | |
!53 = distinct !DILexicalBlock(scope: !50, file: !29, line: 45) | |
!54 = !DILocation(line: 46, scope: !53) | |
!55 = !DILocation(line: 47, scope: !53) | |
!56 = !DILocation(line: 48, scope: !53) | |
!57 = !DILocation(line: 49, scope: !58) | |
!58 = distinct !DILexicalBlock(scope: !53, file: !29, line: 49) | |
!59 = !DILocation(line: 49, scope: !53) | |
!60 = !DILocation(line: 50, scope: !58) | |
!61 = !DILocation(line: 51, scope: !53) | |
!62 = !DILocation(line: 52, scope: !28) | |
" | |
Found Objective-C selector reference "respondsToSelector: " | |
Found sel_registerName at 6616498012 | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %"$__lldb_arg_obj.addr", metadata !36, metadata !DIExpression()), !dbg !37) | |
MaybeHandleVariable (ptr %"$__lldb_arg_obj.addr") | |
MaybeHandleVariable (!36 = !DILocalVariable(name: "$__lldb_arg_obj", arg: 1, scope: !28, file: !29, line: 40, type: !3)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %"$__lldb_arg_selector.addr", metadata !38, metadata !DIExpression()), !dbg !37) | |
MaybeHandleVariable (ptr %"$__lldb_arg_selector.addr") | |
MaybeHandleVariable (!38 = !DILocalVariable(name: "$__lldb_arg_selector", arg: 2, scope: !28, file: !29, line: 40, type: !3)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %call = call ptr @gdb_object_getClass(ptr %1) #4, !dbg !43) | |
MaybeHandleVariable ( %1 = load ptr, ptr %"$__lldb_arg_obj.addr", align 8, !dbg !43) | |
MaybeHandleCallArguments( call void @llvm.dbg.declare(metadata ptr %"$responds", metadata !52, metadata !DIExpression()), !dbg !54) | |
MaybeHandleVariable (ptr %"$responds") | |
MaybeHandleVariable (!52 = !DILocalVariable(name: "$responds", scope: !53, file: !29, line: 46, type: !7)) | |
MaybeHandleVariable (!DIExpression()) | |
MaybeHandleCallArguments( %sel_registerName = call ptr inttoptr (i64 6616498012 to ptr)(ptr @OBJC_METH_VAR_NAME_)) | |
MaybeHandleVariable (@OBJC_METH_VAR_NAME_ = private unnamed_addr constant [20 x i8] c"respondsToSelector:\00", section "__TEXT,__objc_methname,cstring_literals", align 1) | |
MaybeHandleCallArguments( %call4 = call i8 @objc_msgSend(ptr %3, ptr %sel_registerName, ptr %4) #4, !dbg !55) | |
MaybeHandleVariable ( %3 = load ptr, ptr %"$__lldb_arg_obj.addr", align 8, !dbg !55) | |
MaybeHandleVariable ( %sel_registerName = call ptr inttoptr (i64 6616498012 to ptr)(ptr @OBJC_METH_VAR_NAME_)) | |
MaybeHandleVariable ( %4 = load ptr, ptr %"$__lldb_arg_selector.addr", align 8, !dbg !56) | |
Examining OBJC_METH_VAR_NAME_, DeclForGlobalValue returns 0x0000000000000000 | |
Examining OBJC_SELECTOR_REFERENCES_, DeclForGlobalValue returns 0x0000000000000000 | |
Examining llvm.compiler.used, DeclForGlobalValue returns 0x0000000000000000 | |
Examining reloc_placeholder, DeclForGlobalValue returns 0x0000000000000000 | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
@OBJC_METH_VAR_NAME_ = private unnamed_addr constant [20 x i8] c"respondsToSelector:\00", section "__TEXT,__objc_methname,cstring_literals", align 1 | |
@OBJC_SELECTOR_REFERENCES_ = internal externally_initialized global ptr @OBJC_METH_VAR_NAME_, section "__DATA,__objc_selrefs,literal_pointers,no_dead_strip", align 8 | |
@llvm.compiler.used = appending global [2 x ptr] [ptr @OBJC_METH_VAR_NAME_, ptr @OBJC_SELECTOR_REFERENCES_], section "llvm.metadata" | |
@reloc_placeholder = internal global i8 0 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"$__lldb_objc_object_check"(ptr %"$__lldb_arg_obj", ptr %"$__lldb_arg_selector") #0 !dbg !28 { | |
entry: | |
%"$__lldb_arg_obj.addr" = alloca ptr, align 8, !clang.decl.ptr !33 | |
%"$__lldb_arg_selector.addr" = alloca ptr, align 8, !clang.decl.ptr !34 | |
%"$responds" = alloca i8, align 1, !clang.decl.ptr !35 | |
store ptr %"$__lldb_arg_obj", ptr %"$__lldb_arg_obj.addr", align 8 | |
call void @llvm.dbg.declare(metadata ptr %"$__lldb_arg_obj.addr", metadata !36, metadata !DIExpression()), !dbg !37 | |
store ptr %"$__lldb_arg_selector", ptr %"$__lldb_arg_selector.addr", align 8 | |
call void @llvm.dbg.declare(metadata ptr %"$__lldb_arg_selector.addr", metadata !38, metadata !DIExpression()), !dbg !37 | |
%0 = load ptr, ptr %"$__lldb_arg_obj.addr", align 8, !dbg !39 | |
%cmp = icmp eq ptr %0, null, !dbg !39 | |
br i1 %cmp, label %if.then, label %if.end, !dbg !41 | |
if.then: ; preds = %entry | |
br label %if.end9, !dbg !42 | |
if.end: ; preds = %entry | |
%1 = load ptr, ptr %"$__lldb_arg_obj.addr", align 8, !dbg !43 | |
%call = call ptr @gdb_object_getClass(ptr %1) #4, !dbg !43 | |
%tobool = icmp ne ptr %call, null, !dbg !43 | |
br i1 %tobool, label %if.else, label %if.then1, !dbg !45 | |
if.then1: ; preds = %if.end | |
store volatile i32 1868785507, ptr null, align 4, !dbg !46 | |
br label %if.end9, !dbg !48 | |
if.else: ; preds = %if.end | |
%2 = load ptr, ptr %"$__lldb_arg_selector.addr", align 8, !dbg !49 | |
%cmp2 = icmp ne ptr %2, null, !dbg !49 | |
br i1 %cmp2, label %if.then3, label %if.end8, !dbg !51 | |
if.then3: ; preds = %if.else | |
call void @llvm.dbg.declare(metadata ptr %"$responds", metadata !52, metadata !DIExpression()), !dbg !54 | |
%3 = load ptr, ptr %"$__lldb_arg_obj.addr", align 8, !dbg !55 | |
%4 = load ptr, ptr %"$__lldb_arg_selector.addr", align 8, !dbg !56 | |
%sel_registerName = call ptr inttoptr (i64 6616498012 to ptr)(ptr @OBJC_METH_VAR_NAME_) | |
%call4 = call i8 @objc_msgSend(ptr %3, ptr %sel_registerName, ptr %4) #4, !dbg !55 | |
store i8 %call4, ptr %"$responds", align 1, !dbg !54 | |
%5 = load i8, ptr %"$responds", align 1, !dbg !57 | |
%conv = sext i8 %5 to i32, !dbg !57 | |
%cmp5 = icmp eq i32 %conv, 0, !dbg !57 | |
br i1 %cmp5, label %if.then6, label %if.end7, !dbg !59 | |
if.then6: ; preds = %if.then3 | |
store volatile i32 1868785507, ptr null, align 4, !dbg !60 | |
br label %if.end7, !dbg !60 | |
if.end7: ; preds = %if.then6, %if.then3 | |
br label %if.end8, !dbg !61 | |
if.end8: ; preds = %if.end7, %if.else | |
br label %if.end9 | |
if.end9: ; preds = %if.then, %if.end8, %if.then1 | |
ret void, !dbg !62 | |
} | |
; Function Attrs: nocallback nofree nosync nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #1 | |
; Function Attrs: convergent | |
declare ptr @gdb_object_getClass(ptr) #2 | |
; Function Attrs: nonlazybind | |
declare ptr @objc_msgSend(ptr, ptr, ...) #3 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { nocallback nofree nosync nounwind readnone speculatable willreturn } | |
attributes #2 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #3 = { nonlazybind } | |
attributes #4 = { convergent "no-builtins" } | |
!llvm.dbg.cu = !{!0} | |
!llvm.module.flags = !{!16, !17, !18, !19, !20, !21, !22, !23, !24} | |
!clang.global.decl.ptrs = !{!25, !26} | |
!llvm.ident = !{!27} | |
!0 = distinct !DICompileUnit(language: DW_LANG_ObjC_plus_plus, file: !1, producer: "Apple clang version 15.0.0 (clang-1500.0.40.1)", isOptimized: false, runtimeVersion: 2, emissionKind: FullDebug, retainedTypes: !2) | |
!1 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "/") | |
!2 = !{!3, !4, !7, !8} | |
!3 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64) | |
!4 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !5, size: 64) | |
!5 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !6) | |
!6 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) | |
!7 = !DIBasicType(name: "signed char", size: 8, encoding: DW_ATE_signed_char) | |
!8 = !DIDerivedType(tag: DW_TAG_typedef, name: "id", file: !9, baseType: !10) | |
!9 = !DIFile(filename: "/var/folders/jk/2nklbh0x5ksc192jsm9nhnhc0000gn/T/lldb/89501/<stdin>", directory: "") | |
!10 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !11, size: 64) | |
!11 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_object", file: !1, elements: !12) | |
!12 = !{!13} | |
!13 = !DIDerivedType(tag: DW_TAG_member, name: "isa", scope: !11, file: !1, baseType: !14, size: 64) | |
!14 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !15, size: 64) | |
!15 = !DICompositeType(tag: DW_TAG_structure_type, name: "objc_class", file: !1, flags: DIFlagFwdDecl) | |
!16 = !{i32 1, !"Objective-C Version", i32 2} | |
!17 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!18 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!19 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!20 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!21 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!22 = !{i32 2, !"Debug Info Version", i32 3} | |
!23 = !{i32 1, !"wchar_size", i32 4} | |
!24 = !{i32 7, !"frame-pointer", i32 2} | |
!25 = !{ptr @"$__lldb_objc_object_check", i64 5118864616} | |
!26 = !{ptr @gdb_object_getClass, i64 5119605808} | |
!27 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!28 = distinct !DISubprogram(name: "$__lldb_objc_object_check", scope: !29, file: !29, line: 40, type: !30, scopeLine: 40, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !32) | |
!29 = !DIFile(filename: "<lldb wrapper prefix>", directory: "/") | |
!30 = !DISubroutineType(types: !31) | |
!31 = !{null, !3, !3} | |
!32 = !{} | |
!33 = !{i64 5118864232} | |
!34 = !{i64 5118864360} | |
!35 = !{i64 5118865944} | |
!36 = !DILocalVariable(name: "$__lldb_arg_obj", arg: 1, scope: !28, file: !29, line: 40, type: !3) | |
!37 = !DILocation(line: 40, scope: !28) | |
!38 = !DILocalVariable(name: "$__lldb_arg_selector", arg: 2, scope: !28, file: !29, line: 40, type: !3) | |
!39 = !DILocation(line: 41, scope: !40) | |
!40 = distinct !DILexicalBlock(scope: !28, file: !29, line: 41) | |
!41 = !DILocation(line: 41, scope: !28) | |
!42 = !DILocation(line: 42, scope: !40) | |
!43 = !DILocation(line: 43, scope: !44) | |
!44 = distinct !DILexicalBlock(scope: !28, file: !29, line: 43) | |
!45 = !DILocation(line: 43, scope: !28) | |
!46 = !DILocation(line: 44, scope: !47) | |
!47 = distinct !DILexicalBlock(scope: !44, file: !29, line: 43) | |
!48 = !DILocation(line: 45, scope: !47) | |
!49 = !DILocation(line: 45, scope: !50) | |
!50 = distinct !DILexicalBlock(scope: !44, file: !29, line: 45) | |
!51 = !DILocation(line: 45, scope: !44) | |
!52 = !DILocalVariable(name: "$responds", scope: !53, file: !29, line: 46, type: !7) | |
!53 = distinct !DILexicalBlock(scope: !50, file: !29, line: 45) | |
!54 = !DILocation(line: 46, scope: !53) | |
!55 = !DILocation(line: 47, scope: !53) | |
!56 = !DILocation(line: 48, scope: !53) | |
!57 = !DILocation(line: 49, scope: !58) | |
!58 = distinct !DILexicalBlock(scope: !53, file: !29, line: 49) | |
!59 = !DILocation(line: 49, scope: !53) | |
!60 = !DILocation(line: 50, scope: !58) | |
!61 = !DILocation(line: 51, scope: !53) | |
!62 = !DILocation(line: 52, scope: !28) | |
IRExecutionUnit::allocateCodeSection(Size=0xfb, Alignment=8, SectionID=0) = 0x131ffc000 | |
IRExecutionUnit::allocateDataSection(Size=0x22, Alignment=8, SectionID=1) = 0x137ff8000 | |
IRExecutionUnit::allocateDataSection(Size=0x17, Alignment=8, SectionID=2) = 0x137ff8028 | |
IRExecutionUnit::allocateDataSection(Size=0xf, Alignment=8, SectionID=3) = 0x137ff8040 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=4) = 0x137ff8050 | |
IRExecutionUnit::allocateDataSection(Size=0xa3, Alignment=8, SectionID=5) = 0x137ff8068 | |
IRExecutionUnit::allocateDataSection(Size=0xe2, Alignment=8, SectionID=6) = 0x137ff8110 | |
IRExecutionUnit::allocateDataSection(Size=0xfa, Alignment=8, SectionID=7) = 0x137ff81f8 | |
IRExecutionUnit::allocateDataSection(Size=0x4a, Alignment=8, SectionID=8) = 0x137ff82f8 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=9) = 0x137ff8348 | |
IRExecutionUnit::allocateDataSection(Size=0x32, Alignment=8, SectionID=10) = 0x137ff8380 | |
IRExecutionUnit::allocateDataSection(Size=0xb2, Alignment=8, SectionID=11) = 0x137ff83b8 | |
IRExecutionUnit::allocateDataSection(Size=0x85, Alignment=8, SectionID=12) = 0x137ff8470 | |
IRMemoryMap::Malloc (263, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11ceec4e0 | |
IRMemoryMap::Malloc (47, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8570 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f85a0 | |
IRMemoryMap::Malloc (23, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f85c0 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f85e0 | |
IRExecutionUnit::getSymbolAddress(Name="_gdb_object_getClass") = 18a62149c | |
IRExecutionUnit::getSymbolAddress(Name="_objc_msgSend") = 18a5f5400 | |
IRMemoryMap::WriteMemory (0x11ceec4e0, 0x131ffc000, 0x251) went to [0x11ceec4e0..0x11ceec5e7) | |
IRMemoryMap::WriteMemory (0x11d0f8570, 0x137ff8000, 0x34) went to [0x11d0f8570..0x11d0f859f) | |
IRMemoryMap::WriteMemory (0x11d0f85a0, 0x137ff8028, 0x23) went to [0x11d0f85a0..0x11d0f85bf) | |
IRMemoryMap::WriteMemory (0x11d0f85c0, 0x137ff8040, 0x15) went to [0x11d0f85c0..0x11d0f85d7) | |
IRMemoryMap::WriteMemory (0x11d0f85e0, 0x137ff8050, 0x22) went to [0x11d0f85e0..0x11d0f85ff) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x131ffc000 in [0x131ffc000..0x131ffc0fb], and returned 0x11ceec4e0 from [0x11ceec4e0..0x11ceec5db]. | |
Code can be run in the target. | |
Found function, has local address 0x131ffc000 and remote address 0x11ceec4e0 | |
Function's code range is [0x11ceec4e0+0xfb] | |
Function data has contents: | |
0x11ceec4e0: ff 03 01 d1 f4 4f 02 a9 fd 7b 03 a9 fd c3 00 91 | |
0x11ceec4f0: e0 0f 00 f9 e1 0b 00 f9 e8 0f 40 f9 48 00 00 b5 | |
0x11ceec500: 24 00 00 14 e0 0f 40 f9 08 00 00 90 08 d9 42 f9 | |
0x11ceec510: 00 01 3f d6 c0 00 00 b5 68 ec 8c 52 68 ec ad 72 | |
0x11ceec520: e9 03 1f aa 28 01 00 b9 1a 00 00 14 e8 0b 40 f9 | |
0x11ceec530: e8 02 00 b4 f3 0f 40 f9 f4 0b 40 f9 88 eb 97 d2 | |
0x11ceec540: e8 4b b1 f2 28 00 c0 f2 09 00 00 90 20 d5 42 f9 | |
0x11ceec550: 00 01 3f d6 e1 03 00 aa 08 00 00 90 08 d1 42 f9 | |
0x11ceec560: e0 03 13 aa e2 03 14 aa 00 01 3f d6 e0 3f 00 39 | |
0x11ceec570: e8 3f c0 39 a8 00 00 35 68 ec 8c 52 68 ec ad 72 | |
0x11ceec580: e9 03 1f aa 28 01 00 b9 01 00 00 14 01 00 00 14 | |
0x11ceec590: fd 7b 43 a9 f4 4f 42 a9 ff 03 01 91 c0 03 5f d6 | |
0x11ceec5a0: 00 54 5f 8a 01 00 00 00 70 85 0f 1d 01 00 00 00 | |
0x11ceec5b0: 9c 14 62 8a 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec5c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec5d0: 00 00 00 00 00 00 00 00 00 00 00 | |
Function disassembly: | |
0x11ceec4e0: 0xd10103ff unknown sub sp, sp, #0x40 | |
0x11ceec4e4: 0xa9024ff4 unknown stp x20, x19, [sp, #0x20] | |
0x11ceec4e8: 0xa9037bfd unknown stp x29, x30, [sp, #0x30] | |
0x11ceec4ec: 0x9100c3fd unknown add x29, sp, #0x30 | |
0x11ceec4f0: 0xf9000fe0 unknown str x0, [sp, #0x18] | |
0x11ceec4f4: 0xf9000be1 unknown str x1, [sp, #0x10] | |
0x11ceec4f8: 0xf9400fe8 unknown ldr x8, [sp, #0x18] | |
0x11ceec4fc: 0xb5000048 unknown cbnz x8, 0x11ceec504 | |
0x11ceec500: 0x14000024 unknown b 0x11ceec590 | |
0x11ceec504: 0xf9400fe0 unknown ldr x0, [sp, #0x18] | |
0x11ceec508: 0x90000008 unknown adrp x8, 0 | |
0x11ceec50c: 0xf942d908 unknown ldr x8, [x8, #0x5b0] | |
0x11ceec510: 0xd63f0100 unknown blr x8 | |
0x11ceec514: 0xb50000c0 unknown cbnz x0, 0x11ceec52c | |
0x11ceec518: 0x528cec68 unknown mov w8, #0x6763 | |
0x11ceec51c: 0x72adec68 unknown movk w8, #0x6f63, lsl #16 | |
0x11ceec520: 0xaa1f03e9 unknown mov x9, xzr | |
0x11ceec524: 0xb9000128 unknown str w8, [x9] | |
0x11ceec528: 0x1400001a unknown b 0x11ceec590 | |
0x11ceec52c: 0xf9400be8 unknown ldr x8, [sp, #0x10] | |
0x11ceec530: 0xb40002e8 unknown cbz x8, 0x11ceec58c | |
0x11ceec534: 0xf9400ff3 unknown ldr x19, [sp, #0x18] | |
0x11ceec538: 0xf9400bf4 unknown ldr x20, [sp, #0x10] | |
0x11ceec53c: 0xd297eb88 unknown mov x8, #0xbf5c | |
0x11ceec540: 0xf2b14be8 unknown movk x8, #0x8a5f, lsl #16 | |
0x11ceec544: 0xf2c00028 unknown movk x8, #0x1, lsl #32 | |
0x11ceec548: 0x90000009 unknown adrp x9, 0 | |
0x11ceec54c: 0xf942d520 unknown ldr x0, [x9, #0x5a8] | |
0x11ceec550: 0xd63f0100 unknown blr x8 | |
0x11ceec554: 0xaa0003e1 unknown mov x1, x0 | |
0x11ceec558: 0x90000008 unknown adrp x8, 0 | |
0x11ceec55c: 0xf942d108 unknown ldr x8, [x8, #0x5a0] | |
0x11ceec560: 0xaa1303e0 unknown mov x0, x19 | |
0x11ceec564: 0xaa1403e2 unknown mov x2, x20 | |
0x11ceec568: 0xd63f0100 unknown blr x8 | |
0x11ceec56c: 0x39003fe0 unknown strb w0, [sp, #0xf] | |
0x11ceec570: 0x39c03fe8 unknown ldrsb w8, [sp, #0xf] | |
0x11ceec574: 0x350000a8 unknown cbnz w8, 0x11ceec588 | |
0x11ceec578: 0x528cec68 unknown mov w8, #0x6763 | |
0x11ceec57c: 0x72adec68 unknown movk w8, #0x6f63, lsl #16 | |
0x11ceec580: 0xaa1f03e9 unknown mov x9, xzr | |
0x11ceec584: 0xb9000128 unknown str w8, [x9] | |
0x11ceec588: 0x14000001 unknown b 0x11ceec58c | |
0x11ceec58c: 0x14000001 unknown b 0x11ceec590 | |
0x11ceec590: 0xa9437bfd unknown ldp x29, x30, [sp, #0x30] | |
0x11ceec594: 0xa9424ff4 unknown ldp x20, x19, [sp, #0x20] | |
0x11ceec598: 0x910103ff unknown add sp, sp, #0x40 | |
0x11ceec59c: 0xd65f03c0 unknown ret | |
0x11ceec5a0: 0x8a5f5400 unknown and x0, x0, xzr, lsr #21 | |
0x11ceec5a4: 0x00000001 unknown udf #0x1 | |
0x11ceec5a8: 0x1d0f8570 unknown cpyprn [x16]!, [x15]!, x11! | |
0x11ceec5ac: 0x00000001 unknown udf #0x1 | |
0x11ceec5b0: 0x8a62149c unknown bic x28, x4, x2, lsr #5 | |
0x11ceec5b4: 0x00000001 unknown udf #0x1 | |
0x11ceec5b8: 0x00000000 unknown udf #0x0 | |
0x11ceec5bc: 0x00000000 unknown udf #0x0 | |
0x11ceec5c0: 0x00000000 unknown udf #0x0 | |
0x11ceec5c4: 0x00000000 unknown udf #0x0 | |
0x11ceec5c8: 0x00000000 unknown udf #0x0 | |
0x11ceec5cc: 0x00000000 unknown udf #0x0 | |
0x11ceec5d0: 0x00000000 unknown udf #0x0 | |
0x11ceec5d4: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x131ffc000+0xfb]->0x11ceec4e0 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11ceec4e0, 0x600007d48000, 0x251) came from [0x11ceec4e0..0x11ceec5e7) | |
0x11ceec4e0: ff 03 01 d1 f4 4f 02 a9 fd 7b 03 a9 fd c3 00 91 | |
0x11ceec4f0: e0 0f 00 f9 e1 0b 00 f9 e8 0f 40 f9 48 00 00 b5 | |
0x11ceec500: 24 00 00 14 e0 0f 40 f9 08 00 00 90 08 d9 42 f9 | |
0x11ceec510: 00 01 3f d6 c0 00 00 b5 68 ec 8c 52 68 ec ad 72 | |
0x11ceec520: e9 03 1f aa 28 01 00 b9 1a 00 00 14 e8 0b 40 f9 | |
0x11ceec530: e8 02 00 b4 f3 0f 40 f9 f4 0b 40 f9 88 eb 97 d2 | |
0x11ceec540: e8 4b b1 f2 28 00 c0 f2 09 00 00 90 20 d5 42 f9 | |
0x11ceec550: 00 01 3f d6 e1 03 00 aa 08 00 00 90 08 d1 42 f9 | |
0x11ceec560: e0 03 13 aa e2 03 14 aa 00 01 3f d6 e0 3f 00 39 | |
0x11ceec570: e8 3f c0 39 a8 00 00 35 68 ec 8c 52 68 ec ad 72 | |
0x11ceec580: e9 03 1f aa 28 01 00 b9 01 00 00 14 01 00 00 14 | |
0x11ceec590: fd 7b 43 a9 f4 4f 42 a9 ff 03 01 91 c0 03 5f d6 | |
0x11ceec5a0: 00 54 5f 8a 01 00 00 00 70 85 0f 1d 01 00 00 00 | |
0x11ceec5b0: 9c 14 62 8a 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec5c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec5d0: 00 00 00 00 00 00 00 00 00 00 00 | |
[0x137ff8000+0x22]->0x11d0f8570 (alignment 8, section ID 1, name __objc_methname) | |
IRMemoryMap::ReadMemory (0x11d0f8570, 0x600004d5ec10, 0x34) came from [0x11d0f8570..0x11d0f859f) | |
0x11d0f8570: 72 65 73 70 6f 6e 64 73 54 6f 53 65 6c 65 63 74 | |
0x11d0f8580: 6f 72 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f8590: 00 00 | |
[0x137ff8028+0x17]->0x11d0f85a0 (alignment 8, section ID 2, name __objc_selrefs) | |
IRMemoryMap::ReadMemory (0x11d0f85a0, 0x6000005b02c0, 0x23) came from [0x11d0f85a0..0x11d0f85bf) | |
0x11d0f85a0: 70 85 0f 1d 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f85b0: 00 00 00 00 00 00 00 | |
[0x137ff8040+0xf]->0x11d0f85c0 (alignment 8, section ID 3, name __bss) | |
IRMemoryMap::ReadMemory (0x11d0f85c0, 0x60000031c460, 0x15) came from [0x11d0f85c0..0x11d0f85d7) | |
0x11d0f85c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x137ff8050+0x16]->0x11d0f85e0 (alignment 8, section ID 4, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f85e0, 0x6000005b02c0, 0x22) came from [0x11d0f85e0..0x11d0f85ff) | |
0x11d0f85e0: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f85f0: 00 00 00 00 00 00 | |
[0x137ff8068+0xa3]->0xffffffffffffffff (alignment 8, section ID 5, name __debug_abbrev) | |
0x137ff8068: 01 11 01 25 0e 13 05 03 0e 10 17 1b 0e e5 7f 0b | |
0x137ff8078: 11 01 12 06 00 00 02 0f 00 00 00 03 0f 00 49 13 | |
0x137ff8088: 00 00 04 35 00 49 13 00 00 05 24 00 03 0e 3e 0b | |
0x137ff8098: 0b 0b 00 00 06 16 00 49 13 03 0e 00 00 07 13 01 | |
0x137ff80a8: 03 0e 0b 0b 00 00 08 0d 00 03 0e 49 13 38 0b 00 | |
0x137ff80b8: 00 09 13 00 03 0e 3c 19 00 00 0a 2e 01 11 01 12 | |
0x137ff80c8: 06 40 18 03 0e 3a 0b 3b 0b 3f 19 00 00 0b 05 00 | |
0x137ff80d8: 02 18 03 0e 3a 0b 3b 0b 49 13 00 00 0c 0b 01 11 | |
0x137ff80e8: 01 12 06 00 00 0d 34 00 02 18 03 0e 3a 0b 3b 0b | |
0x137ff80f8: 49 13 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x137ff8108: 00 00 00 | |
[0x137ff8110+0xe2]->0xffffffffffffffff (alignment 8, section ID 6, name __debug_info) | |
0x137ff8110: b8 00 00 00 04 00 00 00 00 00 08 01 00 00 00 00 | |
0x137ff8120: 11 00 2f 00 00 00 00 00 00 00 73 00 00 00 02 e0 | |
0x137ff8130: c4 ee 1c 01 00 00 00 c0 00 00 00 02 03 31 00 00 | |
0x137ff8140: 00 04 36 00 00 00 05 75 00 00 00 05 04 05 79 00 | |
0x137ff8150: 00 00 06 01 06 4d 00 00 00 85 00 00 00 03 52 00 | |
0x137ff8160: 00 00 07 88 00 00 00 00 08 94 00 00 00 63 00 00 | |
0x137ff8170: 00 00 00 03 68 00 00 00 09 98 00 00 00 0a e0 c4 | |
0x137ff8180: ee 1c 01 00 00 00 c0 00 00 00 01 6d a3 00 00 00 | |
0x137ff8190: 01 28 0b 02 8f 18 bd 00 00 00 01 28 2b 00 00 00 | |
0x137ff81a0: 0b 02 8f 10 cd 00 00 00 01 28 2b 00 00 00 0c 34 | |
0x137ff81b0: c5 ee 1c 01 00 00 00 58 00 00 00 0d 02 8f 0f e2 | |
0x137ff81c0: 00 00 00 01 2e 3d 00 00 00 00 00 00 00 00 00 00 | |
0x137ff81d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x137ff81e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x137ff81f0: 00 00 | |
[0x137ff81f8+0xfa]->0xffffffffffffffff (alignment 8, section ID 7, name __debug_str) | |
0x137ff81f8: 41 70 70 6c 65 20 63 6c 61 6e 67 20 76 65 72 73 | |
0x137ff8208: 69 6f 6e 20 31 35 2e 30 2e 30 20 28 63 6c 61 6e | |
0x137ff8218: 67 2d 31 35 30 30 2e 30 2e 34 30 2e 31 29 00 2f | |
0x137ff8228: 76 61 72 2f 66 6f 6c 64 65 72 73 2f 6a 6b 2f 32 | |
0x137ff8238: 6e 6b 6c 62 68 30 78 35 6b 73 63 31 39 32 6a 73 | |
0x137ff8248: 6d 39 6e 68 6e 68 63 30 30 30 30 67 6e 2f 54 2f | |
0x137ff8258: 6c 6c 64 62 2f 38 39 35 30 31 2f 3c 73 74 64 69 | |
0x137ff8268: 6e 3e 00 2f 00 69 6e 74 00 73 69 67 6e 65 64 20 | |
0x137ff8278: 63 68 61 72 00 69 64 00 6f 62 6a 63 5f 6f 62 6a | |
0x137ff8288: 65 63 74 00 69 73 61 00 6f 62 6a 63 5f 63 6c 61 | |
0x137ff8298: 73 73 00 24 5f 5f 6c 6c 64 62 5f 6f 62 6a 63 5f | |
0x137ff82a8: 6f 62 6a 65 63 74 5f 63 68 65 63 6b 00 24 5f 5f | |
0x137ff82b8: 6c 6c 64 62 5f 61 72 67 5f 6f 62 6a 00 24 5f 5f | |
0x137ff82c8: 6c 6c 64 62 5f 61 72 67 5f 73 65 6c 65 63 74 6f | |
0x137ff82d8: 72 00 24 72 65 73 70 6f 6e 64 73 00 00 00 00 00 | |
0x137ff82e8: 00 00 00 00 00 00 00 00 00 00 | |
[0x137ff82f8+0x4a]->0xffffffffffffffff (alignment 8, section ID 8, name __apple_names) | |
0x137ff82f8: 48 53 41 48 01 00 00 00 01 00 00 00 01 00 00 00 | |
0x137ff8308: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x137ff8318: 00 00 00 00 35 77 45 ca 2c 00 00 00 a3 00 00 00 | |
0x137ff8328: 01 00 00 00 6d 00 00 00 00 00 00 00 00 00 00 00 | |
0x137ff8338: 00 00 00 00 00 00 00 00 00 00 | |
[0x137ff8348+0x32]->0xffffffffffffffff (alignment 8, section ID 9, name __apple_objc) | |
0x137ff8348: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x137ff8358: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x137ff8368: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x137ff8378: 00 00 | |
[0x137ff8380+0x32]->0xffffffffffffffff (alignment 8, section ID 10, name __apple_namespac) | |
0x137ff8380: 48 53 41 48 01 00 00 00 01 00 00 00 00 00 00 00 | |
0x137ff8390: 0c 00 00 00 00 00 00 00 01 00 00 00 01 00 06 00 | |
0x137ff83a0: ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x137ff83b0: 00 00 | |
[0x137ff83b8+0xb2]->0xffffffffffffffff (alignment 8, section ID 11, name __apple_types) | |
0x137ff83b8: 48 53 41 48 01 00 00 00 04 00 00 00 04 00 00 00 | |
0x137ff83c8: 14 00 00 00 00 00 00 00 03 00 00 00 01 00 06 00 | |
0x137ff83d8: 03 00 05 00 04 00 0b 00 00 00 00 00 01 00 00 00 | |
0x137ff83e8: 03 00 00 00 ff ff ff ff 30 80 88 0b bd a2 38 29 | |
0x137ff83f8: f9 70 96 7e 32 78 59 00 58 00 00 00 6b 00 00 00 | |
0x137ff8408: 7e 00 00 00 91 00 00 00 75 00 00 00 01 00 00 00 | |
0x137ff8418: 36 00 00 00 24 00 00 00 00 00 00 79 00 00 00 01 | |
0x137ff8428: 00 00 00 3d 00 00 00 24 00 00 00 00 00 00 88 00 | |
0x137ff8438: 00 00 01 00 00 00 52 00 00 00 13 00 00 00 00 00 | |
0x137ff8448: 00 85 00 00 00 01 00 00 00 44 00 00 00 16 00 00 | |
0x137ff8458: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x137ff8468: 00 00 | |
[0x137ff8470+0x85]->0xffffffffffffffff (alignment 8, section ID 12, name __debug_line) | |
0x137ff8470: 6b 00 00 00 04 00 2d 00 00 00 01 01 01 fb 0e 0d | |
0x137ff8480: 00 01 01 01 01 00 00 00 01 00 00 01 00 3c 6c 6c | |
0x137ff8490: 64 62 20 77 72 61 70 70 65 72 20 70 72 65 66 69 | |
0x137ff84a0: 78 3e 00 00 00 00 00 00 09 02 e0 c4 ee 1c 01 00 | |
0x137ff84b0: 00 00 03 27 01 0a 08 75 06 4a 06 4b 4b 06 f2 06 | |
0x137ff84c0: 4b f3 06 4a 4a 06 4c 4b 08 e3 08 3b 4d 06 4a 06 | |
0x137ff84d0: 4b f3 06 03 4d 4a 06 03 34 4a 02 10 00 01 01 00 | |
0x137ff84e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
0x137ff84f0: 00 00 00 00 00 | |
Couldn't find llvm.global_ctors. | |
[ClangASTImporter] Forgetting destination (ASTContext*)0x0000000131246C00 | |
[ClangASTImporter] Forgetting source->dest (ASTContext*)0x0000000131246C00->(ASTContext*)0x0000000134A71600 | |
== [ClangExpressionParser::PrepareForExecution] Finished installing dynamic checkers == | |
Instrumenting load/store instruction: store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
Instrumenting load/store instruction: store ptr %t, ptr %1, align 8 | |
Found call to __ubsan_get_current_report_data: call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.anon = type { ptr, ptr, ptr, i32, i32, ptr } | |
@"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global i8 0, align 1 | |
@reloc_placeholder = internal global i8 0 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_Z12$__lldb_exprPv"(ptr %"$__lldb_arg") #0 { | |
entry: | |
%0 = getelementptr i8, ptr %"$__lldb_arg", i32 0 | |
%1 = bitcast ptr %0 to ptr | |
%"$__lldb_arg.addr" = alloca ptr, align 8, !clang.decl.ptr !13 | |
%t = alloca %struct.anon, align 8, !clang.decl.ptr !14 | |
%2 = bitcast ptr %"$__lldb_arg.addr" to ptr | |
call void (ptr, ...) inttoptr (i64 4780377248 to ptr)(ptr %2) | |
store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
%issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0 | |
%message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1 | |
%filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2 | |
%line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3 | |
%col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4 | |
%memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5 | |
call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
%guard.uninitialized = icmp eq i8 0, 0 | |
br i1 %guard.uninitialized, label %init.check, label %init.end, !prof !15 | |
init.check: ; preds = %entry | |
%3 = bitcast ptr %1 to ptr | |
call void (ptr, ...) inttoptr (i64 4780377248 to ptr)(ptr %3) | |
store ptr %t, ptr %1, align 8 | |
br label %init.end | |
init.end: ; preds = %init.check, %entry | |
ret void | |
} | |
; Function Attrs: convergent | |
declare void @__ubsan_get_current_report_data(ptr, ptr, ptr, ptr, ptr, ptr) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { convergent "no-builtins" } | |
!clang.global.decl.ptrs = !{!0, !1, !2, !0, !3} | |
!llvm.module.flags = !{!4, !5, !6, !7, !8, !9, !10, !11} | |
!llvm.ident = !{!12} | |
!0 = distinct !{null, i64 5388348104} | |
!1 = !{ptr @"_Z12$__lldb_exprPv", i64 5387620328} | |
!2 = !{ptr @__ubsan_get_current_report_data, i64 5387619840} | |
!3 = distinct !{null, i64 5388348104} | |
!4 = !{i32 1, !"Objective-C Version", i32 2} | |
!5 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!6 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!7 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!8 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!9 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!10 = !{i32 1, !"wchar_size", i32 4} | |
!11 = !{i32 7, !"frame-pointer", i32 2} | |
!12 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!13 = !{i64 5387620104} | |
!14 = !{i64 5387621576} | |
!15 = !{!"branch_weights", i32 1, i32 1048575} | |
IRExecutionUnit::allocateCodeSection(Size=0xab, Alignment=8, SectionID=0) = 0x137ffc000 | |
IRExecutionUnit::allocateDataSection(Size=0x10, Alignment=8, SectionID=1) = 0x1455f8000 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=2) = 0x1455f8010 | |
IRMemoryMap::Malloc (183, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11ceec5f0 | |
IRMemoryMap::Malloc (23, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8600 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8620 | |
IRExecutionUnit::getSymbolAddress(Name="___ubsan_get_current_report_data") = 1068992f8 | |
IRMemoryMap::WriteMemory (0x11ceec5f0, 0x137ffc000, 0x171) went to [0x11ceec5f0..0x11ceec6a7) | |
IRMemoryMap::WriteMemory (0x11d0f8600, 0x1455f8000, 0x16) went to [0x11d0f8600..0x11d0f8617) | |
IRMemoryMap::WriteMemory (0x11d0f8620, 0x1455f8010, 0x22) went to [0x11d0f8620..0x11d0f863f) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x137ffc000 in [0x137ffc000..0x137ffc0ab], and returned 0x11ceec5f0 from [0x11ceec5f0..0x11ceec69b]. | |
Code can be run in the target. | |
Found function, has local address 0x137ffc000 and remote address 0x11ceec5f0 | |
Function's code range is [0x11ceec5f0+0xab] | |
Function data has contents: | |
0x11ceec5f0: ff 43 01 d1 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 | |
0x11ceec600: f3 03 00 aa 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec610: a0 63 00 d1 00 01 3f d6 b3 83 1e f8 e8 03 00 91 | |
0x11ceec620: 01 21 00 91 e8 03 00 91 02 41 00 91 e8 03 00 91 | |
0x11ceec630: 03 61 00 91 e8 03 00 91 04 71 00 91 e8 03 00 91 | |
0x11ceec640: 05 81 00 91 e0 03 00 91 08 00 00 90 08 41 43 f9 | |
0x11ceec650: 00 01 3f d6 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec660: e0 03 13 aa 00 01 3f d6 e8 03 00 91 68 02 00 f9 | |
0x11ceec670: fd 7b 44 a9 f4 4f 43 a9 ff 43 01 91 c0 03 5f d6 | |
0x11ceec680: f8 92 89 06 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec690: 00 00 00 00 00 00 00 00 00 00 00 | |
Function disassembly: | |
0x11ceec5f0: 0xd10143ff unknown sub sp, sp, #0x50 | |
0x11ceec5f4: 0xa9034ff4 unknown stp x20, x19, [sp, #0x30] | |
0x11ceec5f8: 0xa9047bfd unknown stp x29, x30, [sp, #0x40] | |
0x11ceec5fc: 0x910103fd unknown add x29, sp, #0x40 | |
0x11ceec600: 0xaa0003f3 unknown mov x19, x0 | |
0x11ceec604: 0xd2989408 unknown mov x8, #0xc4a0 | |
0x11ceec608: 0xf2a39dc8 unknown movk x8, #0x1cee, lsl #16 | |
0x11ceec60c: 0xf2c00028 unknown movk x8, #0x1, lsl #32 | |
0x11ceec610: 0xd10063a0 unknown sub x0, x29, #0x18 | |
0x11ceec614: 0xd63f0100 unknown blr x8 | |
0x11ceec618: 0xf81e83b3 unknown stur x19, [x29, #-0x18] | |
0x11ceec61c: 0x910003e8 unknown mov x8, sp | |
0x11ceec620: 0x91002101 unknown add x1, x8, #0x8 | |
0x11ceec624: 0x910003e8 unknown mov x8, sp | |
0x11ceec628: 0x91004102 unknown add x2, x8, #0x10 | |
0x11ceec62c: 0x910003e8 unknown mov x8, sp | |
0x11ceec630: 0x91006103 unknown add x3, x8, #0x18 | |
0x11ceec634: 0x910003e8 unknown mov x8, sp | |
0x11ceec638: 0x91007104 unknown add x4, x8, #0x1c | |
0x11ceec63c: 0x910003e8 unknown mov x8, sp | |
0x11ceec640: 0x91008105 unknown add x5, x8, #0x20 | |
0x11ceec644: 0x910003e0 unknown mov x0, sp | |
0x11ceec648: 0x90000008 unknown adrp x8, 0 | |
0x11ceec64c: 0xf9434108 unknown ldr x8, [x8, #0x680] | |
0x11ceec650: 0xd63f0100 unknown blr x8 | |
0x11ceec654: 0xd2989408 unknown mov x8, #0xc4a0 | |
0x11ceec658: 0xf2a39dc8 unknown movk x8, #0x1cee, lsl #16 | |
0x11ceec65c: 0xf2c00028 unknown movk x8, #0x1, lsl #32 | |
0x11ceec660: 0xaa1303e0 unknown mov x0, x19 | |
0x11ceec664: 0xd63f0100 unknown blr x8 | |
0x11ceec668: 0x910003e8 unknown mov x8, sp | |
0x11ceec66c: 0xf9000268 unknown str x8, [x19] | |
0x11ceec670: 0xa9447bfd unknown ldp x29, x30, [sp, #0x40] | |
0x11ceec674: 0xa9434ff4 unknown ldp x20, x19, [sp, #0x30] | |
0x11ceec678: 0x910143ff unknown add sp, sp, #0x50 | |
0x11ceec67c: 0xd65f03c0 unknown ret | |
0x11ceec680: 0x068992f8 unknown .long 0x068992f8 ; unknown opcode | |
0x11ceec684: 0x00000001 unknown udf #0x1 | |
0x11ceec688: 0x00000000 unknown udf #0x0 | |
0x11ceec68c: 0x00000000 unknown udf #0x0 | |
0x11ceec690: 0x00000000 unknown udf #0x0 | |
0x11ceec694: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x137ffc000+0xab]->0x11ceec5f0 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11ceec5f0, 0x60001351c9a0, 0x171) came from [0x11ceec5f0..0x11ceec6a7) | |
0x11ceec5f0: ff 43 01 d1 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 | |
0x11ceec600: f3 03 00 aa 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec610: a0 63 00 d1 00 01 3f d6 b3 83 1e f8 e8 03 00 91 | |
0x11ceec620: 01 21 00 91 e8 03 00 91 02 41 00 91 e8 03 00 91 | |
0x11ceec630: 03 61 00 91 e8 03 00 91 04 71 00 91 e8 03 00 91 | |
0x11ceec640: 05 81 00 91 e0 03 00 91 08 00 00 90 08 41 43 f9 | |
0x11ceec650: 00 01 3f d6 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec660: e0 03 13 aa 00 01 3f d6 e8 03 00 91 68 02 00 f9 | |
0x11ceec670: fd 7b 44 a9 f4 4f 43 a9 ff 43 01 91 c0 03 5f d6 | |
0x11ceec680: f8 92 89 06 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec690: 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1455f8000+0x10]->0x11d0f8600 (alignment 8, section ID 1, name __bss) | |
IRMemoryMap::ReadMemory (0x11d0f8600, 0x60000031bd20, 0x16) came from [0x11d0f8600..0x11d0f8617) | |
0x11d0f8600: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1455f8010+0x16]->0x11d0f8620 (alignment 8, section ID 2, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f8620, 0x600000bfc8c0, 0x22) came from [0x11d0f8620..0x11d0f863f) | |
0x11d0f8620: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f8630: 00 00 00 00 00 00 | |
Couldn't find llvm.global_ctors. | |
[ClangASTImporter] Forgetting destination (ASTContext*)0x00000001411CB000 | |
[ClangASTImporter] Forgetting source->dest (ASTContext*)0x00000001411CB000->(ASTContext*)0x0000000134A71600 | |
== [UserExpression::Evaluate] Executing expression == | |
IRMemoryMap::Malloc process_sp=0x1464ca600, process_sp->CanJIT()=true, process_sp->IsAlive()=true | |
IRMemoryMap::Malloc (15, 0x8, 0x3, eAllocationPolicyMirror) -> 0x11d0f8640 | |
Materializer::Materialize (frame_sp = 0x1457f0198, process_address = 0x11d0f8640) materialized: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x6000003678c0, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
0x11d0f8640: EntityResultVariable | |
Pointer: | |
0x11d0f8640: 00 00 00 00 00 00 00 00 | |
Points to process memory: | |
ABIMacOSX_arm64::PrepareTrivialCall (tid = 0x247096, sp = 0x16fb8eef0, func_addr = 0x11ceec5f0, return_addr = 0x10026d6ec, arg1 = 0x11d0f8640) | |
About to write arg1 (0x11d0f8640) into x0 | |
-- [UserExpression::Execute] Execution of expression begins -- | |
-- [UserExpression::Execute] Execution of expression completed -- | |
-- [UserExpression::FinalizeJITExecution] Dematerializing after execution -- | |
Materializer::Dematerialize (frame_sp = 0x1255b8358, process_address = 0x11d0f8640) about to dematerialize: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x60000031c450, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
0x11d0f8640: EntityResultVariable | |
Pointer: | |
0x11d0f8640: a0 ee b8 6f 01 00 00 00 | |
Points to process memory: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x6000003678c0, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
LayoutRecordType on (ASTContext*)0x0000000134A71600 'scratch ASTContext' for (RecordDecl*)0x0000000134A7AF18 [name = ''] | |
TypeSystemSwiftTypeRefForExpressions::TypeSystemSwiftTypeRefForExpressions() | |
returned project-wide scratch context | |
== [UserExpression::Evaluate] Execution completed normally with result == | |
IRMemoryMap::Free (0x11ceec5f0) freed [0x11ceec5f0..0x11ceec6a7) | |
IRMemoryMap::Free (0x11d0f8600) freed [0x11d0f8600..0x11d0f8617) | |
IRMemoryMap::Free (0x11d0f8620) freed [0x11d0f8620..0x11d0f863f) | |
IRMemoryMap::Free (0x11d0f8640) freed [0x11d0f8640..0x11d0f864f) | |
returned project-wide scratch context | |
LayoutRecordType on (ASTContext*)0x0000000134A71600 'scratch ASTContext' for (RecordDecl*)0x0000000141277030 [name = '__lldb_dispatch_tsd_indexes_s'] | |
== [UserExpression::Evaluate] Parsing expression | |
struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned line; | |
unsigned col; | |
char *memory_addr; | |
} t; | |
__ubsan_get_current_report_data(&t.issue_kind, &t.message, &t.filename, &t.line, | |
&t.col, &t.memory_addr); | |
t; | |
== | |
ClangUserExpression::ScanContext() | |
[CUE::SC] Null function | |
Parsing the following code: | |
#line 1 "<lldb wrapper prefix>" | |
#ifndef offsetof | |
#define offsetof(t, d) __builtin_offsetof(t, d) | |
#endif | |
#ifndef NULL | |
#define NULL (__null) | |
#endif | |
#ifndef Nil | |
#define Nil (__null) | |
#endif | |
#ifndef nil | |
#define nil (__null) | |
#endif | |
#ifndef YES | |
#define YES ((BOOL)1) | |
#endif | |
#ifndef NO | |
#define NO ((BOOL)0) | |
#endif | |
typedef __INT8_TYPE__ int8_t; | |
typedef __UINT8_TYPE__ uint8_t; | |
typedef __INT16_TYPE__ int16_t; | |
typedef __UINT16_TYPE__ uint16_t; | |
typedef __INT32_TYPE__ int32_t; | |
typedef __UINT32_TYPE__ uint32_t; | |
typedef __INT64_TYPE__ int64_t; | |
typedef __UINT64_TYPE__ uint64_t; | |
typedef __INTPTR_TYPE__ intptr_t; | |
typedef __UINTPTR_TYPE__ uintptr_t; | |
typedef __SIZE_TYPE__ size_t; | |
typedef __PTRDIFF_TYPE__ ptrdiff_t; | |
typedef unsigned short unichar; | |
extern "C" | |
{ | |
int printf(const char * __restrict, ...); | |
} | |
typedef bool BOOL; | |
extern "C" { | |
void | |
__ubsan_get_current_report_data(const char **OutIssueKind, | |
const char **OutMessage, const char **OutFilename, unsigned *OutLine, | |
unsigned *OutCol, char **OutMemoryAddr); | |
} | |
void | |
$__lldb_expr(void *$__lldb_arg) | |
{ | |
; | |
#line 1 "<user expression 1>" | |
struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned line; | |
unsigned col; | |
char *memory_addr; | |
} t; | |
__ubsan_get_current_report_data(&t.issue_kind, &t.message, &t.filename, &t.line, | |
&t.col, &t.memory_addr); | |
t; | |
; | |
#line 1 "<lldb wrapper suffix>" | |
} | |
Frame has language of type objective-c++ | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_arg' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000127CF2800 'Expression ASTContext for '<user expression 1>'' for '$__lldb_arg' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_expr' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000127CF2800 'Expression ASTContext for '<user expression 1>'' for '$__lldb_expr' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for 't' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000127CF2800 'Expression ASTContext for '<user expression 1>'' for 't' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
AppleObjCDeclVendor::FindDecls ('t', false, 1, ) | |
AOCTV::FT Couldn't find t in the ASTContext | |
== [FunctionCaller::ExecuteFunction] Executing function "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" == | |
-- [FunctionCaller::GetThreadPlanToCallFunction] Creating thread plan to call function "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" -- | |
ABIMacOSX_arm64::PrepareTrivialCall (tid = 0x247096, sp = 0x16fb8eef0, func_addr = 0x11ceec3a0, return_addr = 0x10026d6ec, arg1 = 0x11d0f80e0) | |
About to write arg1 (0x11d0f80e0) into x0 | |
== [FunctionCaller::ExecuteFunction] Execution of "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" completed normally == | |
-- [FunctionCaller::FetchFunctionResults] Fetching function results for "__lldb_apple_objc_v2_get_dynamic_class_info3-caller"-- | |
Discovered 2380 Objective-C classes | |
AOCTV::FT Couldn't find the isa | |
LayoutRecordType on (ASTContext*)0x0000000127CF2800 'Expression ASTContext for '<user expression 1>'' for (RecordDecl*)0x0000000127D300B8 [name = ''] | |
Last statement is an lvalue with type: struct (unnamed struct at <user expression 1>:2:1) | |
Found function _Z12$__lldb_exprPv for $__lldb_expr | |
DoPrepareForExecution - Current expression language is objective-c++ | |
Module as passed in to IRForTarget: | |
"; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.anon = type { ptr, ptr, ptr, i32, i32, ptr } | |
@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8 | |
@"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global i8 0, align 1 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_Z12$__lldb_exprPv"(ptr %"$__lldb_arg") #0 { | |
entry: | |
%"$__lldb_arg.addr" = alloca ptr, align 8, !clang.decl.ptr !12 | |
%t = alloca %struct.anon, align 8, !clang.decl.ptr !13 | |
store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
%issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0 | |
%message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1 | |
%filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2 | |
%line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3 | |
%col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4 | |
%memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5 | |
call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
%0 = load i8, ptr @"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 1 | |
%guard.uninitialized = icmp eq i8 %0, 0 | |
br i1 %guard.uninitialized, label %init.check, label %init.end, !prof !14 | |
init.check: ; preds = %entry | |
store ptr %t, ptr @"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 8 | |
store i8 1, ptr @"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 1 | |
br label %init.end | |
init.end: ; preds = %init.check, %entry | |
ret void | |
} | |
; Function Attrs: convergent | |
declare void @__ubsan_get_current_report_data(ptr, ptr, ptr, ptr, ptr, ptr) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { convergent "no-builtins" } | |
!clang.global.decl.ptrs = !{!0, !1, !2, !0} | |
!llvm.module.flags = !{!3, !4, !5, !6, !7, !8, !9, !10} | |
!llvm.ident = !{!11} | |
!0 = !{ptr @"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", i64 5181190856} | |
!1 = !{ptr @"_Z12$__lldb_exprPv", i64 4963106792} | |
!2 = !{ptr @__ubsan_get_current_report_data, i64 4963106304} | |
!3 = !{i32 1, !"Objective-C Version", i32 2} | |
!4 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!5 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!6 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!7 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!8 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!9 = !{i32 1, !"wchar_size", i32 4} | |
!10 = !{i32 7, !"frame-pointer", i32 2} | |
!11 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!12 = !{i64 4963106568} | |
!13 = !{i64 4963108040} | |
!14 = !{!"branch_weights", i32 1, i32 1048575} | |
" | |
Result name: "_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" | |
Found result in the IR: "@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8" | |
Found result decl: "static struct (unnamed struct at <user expression 1>:2:1) *$__lldb_expr_result_ptr&t" | |
Result decl type: "struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned int line; | |
unsigned int col; | |
char *memory_addr; | |
}" | |
Creating a new result global: "$RESULT_NAME" with size 40 | |
Replacing "@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8" with "@"$RESULT_NAME" = external global ptr" | |
[ClangASTImporter] DeportType called on ((unnamed struct at <user expression 1>:2:1)Type*)0x0000000127D30470 from (ASTContext*)0x0000000127CF2800 to (ASTContext*)0x0000000134A71600 | |
[ClangASTImporter] Imported (CXXRecordDecl*)0x00000001412773B0, named (unnamed struct at <user expression 1>:2:1) (from (Decl*)0x0000000127D300B8), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
[ClangASTImporter] To is a TagDecl - attributes Lexical [complete->complete] | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000141277548, named issue_kind (from (Decl*)0x0000000127D30200), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
FindExternalLexicalDecls on (ASTContext*)0x0000000134A71600 'scratch ASTContext' in '' (CXXRecordDecl*)0x00000001412773B0 | |
FELD Original decl 0x0000000127CF2800 (Decl*)0x0000000127d300b8: | |
CXXRecordDecl 0x127d300b8 <<user expression 1>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x127d30200 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x127d30268 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x127d302d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x127d30338 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x127d303a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x127d30408 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x127d30548 <line:2:1> col:1 implicit used (unnamed struct at <user expression 1>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x127d30a38 <col:1> | |
|-CXXConstructorDecl 0x127d30688 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 1>:2:1) 'void (const (unnamed struct at <user expression 1>:2:1) &)' inline default trivial noexcept-unevaluated 0x127d30688 | |
| `-ParmVarDecl 0x127d307a8 <col:1> col:1 'const (unnamed struct at <user expression 1>:2:1) &' | |
`-CXXConstructorDecl 0x127d30858 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 1>:2:1) 'void ((unnamed struct at <user expression 1>:2:1) &&)' inline default trivial noexcept-unevaluated 0x127d30858 | |
`-ParmVarDecl 0x127d30978 <col:1> col:1 '(unnamed struct at <user expression 1>:2:1) &&' | |
CompleteTagDecl on (ASTContext*)Expression ASTContext for '<user expression 1>' Completing (TagDecl*)0x0000000127D300B8 named | |
CTD Before: | |
CXXRecordDecl 0x127d300b8 <<user expression 1>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x127d30200 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x127d30268 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x127d302d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x127d30338 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x127d303a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x127d30408 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x127d30548 <line:2:1> col:1 implicit used (unnamed struct at <user expression 1>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x127d30a38 <col:1> | |
|-CXXConstructorDecl 0x127d30688 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 1>:2:1) 'void (const (unnamed struct at <user expression 1>:2:1) &)' inline default trivial noexcept-unevaluated 0x127d30688 | |
| `-ParmVarDecl 0x127d307a8 <col:1> col:1 'const (unnamed struct at <user expression 1>:2:1) &' | |
`-CXXConstructorDecl 0x127d30858 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 1>:2:1) 'void ((unnamed struct at <user expression 1>:2:1) &&)' inline default trivial noexcept-unevaluated 0x127d30858 | |
`-ParmVarDecl 0x127d30978 <col:1> col:1 '(unnamed struct at <user expression 1>:2:1) &&' | |
[CTD] After: | |
CXXRecordDecl 0x127d300b8 <<user expression 1>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x127d30200 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x127d30268 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x127d302d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x127d30338 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x127d303a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x127d30408 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x127d30548 <line:2:1> col:1 implicit used (unnamed struct at <user expression 1>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x127d30a38 <col:1> | |
|-CXXConstructorDecl 0x127d30688 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 1>:2:1) 'void (const (unnamed struct at <user expression 1>:2:1) &)' inline default trivial noexcept-unevaluated 0x127d30688 | |
| `-ParmVarDecl 0x127d307a8 <col:1> col:1 'const (unnamed struct at <user expression 1>:2:1) &' | |
`-CXXConstructorDecl 0x127d30858 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 1>:2:1) 'void ((unnamed struct at <user expression 1>:2:1) &&)' inline default trivial noexcept-unevaluated 0x127d30858 | |
`-ParmVarDecl 0x127d30978 <col:1> col:1 '(unnamed struct at <user expression 1>:2:1) &&' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x127d30200 <<user expression 1>:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x127d30268 <<user expression 1>:4:3, col:15> col:15 referenced message 'const char *' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x127d302d0 <<user expression 1>:5:3, col:15> col:15 referenced filename 'const char *' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D38078, named filename (from (Decl*)0x0000000127D302D0), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x127d30338 <<user expression 1>:6:3, col:12> col:12 referenced line 'unsigned int' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D380E8, named line (from (Decl*)0x0000000127D30338), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x127d303a0 <<user expression 1>:7:3, col:12> col:12 referenced col 'unsigned int' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D38158, named col (from (Decl*)0x0000000127D303A0), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x127d30408 <<user expression 1>:8:3, col:9> col:9 referenced memory_addr 'char *' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D381C8, named memory_addr (from (Decl*)0x0000000127D30408), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x127d30548 <<user expression 1>:2:1> col:1 implicit used (unnamed struct at <user expression 1>:2:1) 'void () noexcept' inline default trivial | |
`-CompoundStmt 0x127d30a38 <col:1> | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000134D38260, named (unnamed struct at <user expression 1>:2:1) (from (Decl*)0x0000000127D30548), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x127d30688 <<user expression 1>:2:1> col:1 implicit constexpr (unnamed struct at <user expression 1>:2:1) 'void (const (unnamed struct at <user expression 1>:2:1) &)' inline default trivial noexcept-unevaluated 0x127d30688 | |
`-ParmVarDecl 0x127d307a8 <col:1> col:1 'const (unnamed struct at <user expression 1>:2:1) &' | |
[ClangASTImporter] Imported (ParmVarDecl*)0x0000000134D383B0, named (from (Decl*)0x0000000127D307A8), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000134D38420, named (unnamed struct at <user expression 1>:2:1) (from (Decl*)0x0000000127D30688), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x127d30858 <<user expression 1>:2:1> col:1 implicit constexpr (unnamed struct at <user expression 1>:2:1) 'void ((unnamed struct at <user expression 1>:2:1) &&)' inline default trivial noexcept-unevaluated 0x127d30858 | |
`-ParmVarDecl 0x127d30978 <col:1> col:1 '(unnamed struct at <user expression 1>:2:1) &&' | |
[ClangASTImporter] Imported (ParmVarDecl*)0x0000000134D385C0, named (from (Decl*)0x0000000127D30978), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000134D38630, named (unnamed struct at <user expression 1>:2:1) (from (Decl*)0x0000000127D30858), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D38008, named message (from (Decl*)0x0000000127D30268), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000127CF2800 | |
MaybeHandleCallArguments( call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2) | |
MaybeHandleVariable ( %issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0) | |
MaybeHandleVariable ( %message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1) | |
MaybeHandleVariable ( %filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2) | |
MaybeHandleVariable ( %line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3) | |
MaybeHandleVariable ( %col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4) | |
MaybeHandleVariable ( %memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5) | |
Examining _ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr, DeclForGlobalValue returns 0x0000000000000000 | |
Examining reloc_placeholder, DeclForGlobalValue returns 0x0000000000000000 | |
Examining $RESULT_NAME, DeclForGlobalValue returns 0x0000000134D2B2C8 | |
MaybeHandleVariable (@"$RESULT_NAME" = external global ptr) | |
Type of "$__lldb_expr_result_ptr" is [clang "struct (unnamed struct at <user expression 1>:2:1) **", llvm "ptr"] [size 8, align 8] | |
Adding value for (NamedDecl*)0x0000000134D2B2C8 [$__lldb_expr_result_ptr - $RESULT_NAME] to the structure | |
Already placed at 0x0 | |
Placed at 0x0 | |
Element arrangement: | |
Arg: "ptr %"$__lldb_arg"" | |
"$RESULT_NAME" ("$__lldb_expr_result_ptr") placed at 0 | |
Replacing [@"$RESULT_NAME" = external global ptr] | |
Total structure [align 8, size 8] | |
Saw function with body: _Z12$__lldb_exprPv | |
Unsupported instruction: call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
Instrumenting load/store instruction: store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
Instrumenting load/store instruction: store ptr %t, ptr %1, align 8 | |
Found call to __ubsan_get_current_report_data: call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.anon = type { ptr, ptr, ptr, i32, i32, ptr } | |
@"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global i8 0, align 1 | |
@reloc_placeholder = internal global i8 0 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_Z12$__lldb_exprPv"(ptr %"$__lldb_arg") #0 { | |
entry: | |
%0 = getelementptr i8, ptr %"$__lldb_arg", i32 0 | |
%1 = bitcast ptr %0 to ptr | |
%"$__lldb_arg.addr" = alloca ptr, align 8, !clang.decl.ptr !13 | |
%t = alloca %struct.anon, align 8, !clang.decl.ptr !14 | |
%2 = bitcast ptr %"$__lldb_arg.addr" to ptr | |
call void (ptr, ...) inttoptr (i64 4780377248 to ptr)(ptr %2) | |
store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
%issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0 | |
%message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1 | |
%filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2 | |
%line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3 | |
%col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4 | |
%memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5 | |
call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
%guard.uninitialized = icmp eq i8 0, 0 | |
br i1 %guard.uninitialized, label %init.check, label %init.end, !prof !15 | |
init.check: ; preds = %entry | |
%3 = bitcast ptr %1 to ptr | |
call void (ptr, ...) inttoptr (i64 4780377248 to ptr)(ptr %3) | |
store ptr %t, ptr %1, align 8 | |
br label %init.end | |
init.end: ; preds = %init.check, %entry | |
ret void | |
} | |
; Function Attrs: convergent | |
declare void @__ubsan_get_current_report_data(ptr, ptr, ptr, ptr, ptr, ptr) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { convergent "no-builtins" } | |
!clang.global.decl.ptrs = !{!0, !1, !2, !0, !3} | |
!llvm.module.flags = !{!4, !5, !6, !7, !8, !9, !10, !11} | |
!llvm.ident = !{!12} | |
!0 = distinct !{null, i64 5181190856} | |
!1 = !{ptr @"_Z12$__lldb_exprPv", i64 4963106792} | |
!2 = !{ptr @__ubsan_get_current_report_data, i64 4963106304} | |
!3 = distinct !{null, i64 5181190856} | |
!4 = !{i32 1, !"Objective-C Version", i32 2} | |
!5 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!6 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!7 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!8 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!9 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!10 = !{i32 1, !"wchar_size", i32 4} | |
!11 = !{i32 7, !"frame-pointer", i32 2} | |
!12 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!13 = !{i64 4963106568} | |
!14 = !{i64 4963108040} | |
!15 = !{!"branch_weights", i32 1, i32 1048575} | |
IRExecutionUnit::allocateCodeSection(Size=0xab, Alignment=8, SectionID=0) = 0x137ffc000 | |
IRExecutionUnit::allocateDataSection(Size=0x10, Alignment=8, SectionID=1) = 0x1455f8000 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=2) = 0x1455f8010 | |
IRMemoryMap::Malloc (183, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11ceec5f0 | |
IRMemoryMap::Malloc (23, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8600 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8620 | |
IRExecutionUnit::getSymbolAddress(Name="___ubsan_get_current_report_data") = 1068992f8 | |
IRMemoryMap::WriteMemory (0x11ceec5f0, 0x137ffc000, 0x171) went to [0x11ceec5f0..0x11ceec6a7) | |
IRMemoryMap::WriteMemory (0x11d0f8600, 0x1455f8000, 0x16) went to [0x11d0f8600..0x11d0f8617) | |
IRMemoryMap::WriteMemory (0x11d0f8620, 0x1455f8010, 0x22) went to [0x11d0f8620..0x11d0f863f) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x137ffc000 in [0x137ffc000..0x137ffc0ab], and returned 0x11ceec5f0 from [0x11ceec5f0..0x11ceec69b]. | |
Code can be run in the target. | |
Found function, has local address 0x137ffc000 and remote address 0x11ceec5f0 | |
Function's code range is [0x11ceec5f0+0xab] | |
Function data has contents: | |
0x11ceec5f0: ff 43 01 d1 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 | |
0x11ceec600: f3 03 00 aa 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec610: a0 63 00 d1 00 01 3f d6 b3 83 1e f8 e8 03 00 91 | |
0x11ceec620: 01 21 00 91 e8 03 00 91 02 41 00 91 e8 03 00 91 | |
0x11ceec630: 03 61 00 91 e8 03 00 91 04 71 00 91 e8 03 00 91 | |
0x11ceec640: 05 81 00 91 e0 03 00 91 08 00 00 90 08 41 43 f9 | |
0x11ceec650: 00 01 3f d6 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec660: e0 03 13 aa 00 01 3f d6 e8 03 00 91 68 02 00 f9 | |
0x11ceec670: fd 7b 44 a9 f4 4f 43 a9 ff 43 01 91 c0 03 5f d6 | |
0x11ceec680: f8 92 89 06 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec690: 00 00 00 00 00 00 00 00 00 00 00 | |
Function disassembly: | |
0x11ceec5f0: 0xd10143ff unknown sub sp, sp, #0x50 | |
0x11ceec5f4: 0xa9034ff4 unknown stp x20, x19, [sp, #0x30] | |
0x11ceec5f8: 0xa9047bfd unknown stp x29, x30, [sp, #0x40] | |
0x11ceec5fc: 0x910103fd unknown add x29, sp, #0x40 | |
0x11ceec600: 0xaa0003f3 unknown mov x19, x0 | |
0x11ceec604: 0xd2989408 unknown mov x8, #0xc4a0 | |
0x11ceec608: 0xf2a39dc8 unknown movk x8, #0x1cee, lsl #16 | |
0x11ceec60c: 0xf2c00028 unknown movk x8, #0x1, lsl #32 | |
0x11ceec610: 0xd10063a0 unknown sub x0, x29, #0x18 | |
0x11ceec614: 0xd63f0100 unknown blr x8 | |
0x11ceec618: 0xf81e83b3 unknown stur x19, [x29, #-0x18] | |
0x11ceec61c: 0x910003e8 unknown mov x8, sp | |
0x11ceec620: 0x91002101 unknown add x1, x8, #0x8 | |
0x11ceec624: 0x910003e8 unknown mov x8, sp | |
0x11ceec628: 0x91004102 unknown add x2, x8, #0x10 | |
0x11ceec62c: 0x910003e8 unknown mov x8, sp | |
0x11ceec630: 0x91006103 unknown add x3, x8, #0x18 | |
0x11ceec634: 0x910003e8 unknown mov x8, sp | |
0x11ceec638: 0x91007104 unknown add x4, x8, #0x1c | |
0x11ceec63c: 0x910003e8 unknown mov x8, sp | |
0x11ceec640: 0x91008105 unknown add x5, x8, #0x20 | |
0x11ceec644: 0x910003e0 unknown mov x0, sp | |
0x11ceec648: 0x90000008 unknown adrp x8, 0 | |
0x11ceec64c: 0xf9434108 unknown ldr x8, [x8, #0x680] | |
0x11ceec650: 0xd63f0100 unknown blr x8 | |
0x11ceec654: 0xd2989408 unknown mov x8, #0xc4a0 | |
0x11ceec658: 0xf2a39dc8 unknown movk x8, #0x1cee, lsl #16 | |
0x11ceec65c: 0xf2c00028 unknown movk x8, #0x1, lsl #32 | |
0x11ceec660: 0xaa1303e0 unknown mov x0, x19 | |
0x11ceec664: 0xd63f0100 unknown blr x8 | |
0x11ceec668: 0x910003e8 unknown mov x8, sp | |
0x11ceec66c: 0xf9000268 unknown str x8, [x19] | |
0x11ceec670: 0xa9447bfd unknown ldp x29, x30, [sp, #0x40] | |
0x11ceec674: 0xa9434ff4 unknown ldp x20, x19, [sp, #0x30] | |
0x11ceec678: 0x910143ff unknown add sp, sp, #0x50 | |
0x11ceec67c: 0xd65f03c0 unknown ret | |
0x11ceec680: 0x068992f8 unknown .long 0x068992f8 ; unknown opcode | |
0x11ceec684: 0x00000001 unknown udf #0x1 | |
0x11ceec688: 0x00000000 unknown udf #0x0 | |
0x11ceec68c: 0x00000000 unknown udf #0x0 | |
0x11ceec690: 0x00000000 unknown udf #0x0 | |
0x11ceec694: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x137ffc000+0xab]->0x11ceec5f0 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11ceec5f0, 0x60001351cb00, 0x171) came from [0x11ceec5f0..0x11ceec6a7) | |
0x11ceec5f0: ff 43 01 d1 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 | |
0x11ceec600: f3 03 00 aa 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec610: a0 63 00 d1 00 01 3f d6 b3 83 1e f8 e8 03 00 91 | |
0x11ceec620: 01 21 00 91 e8 03 00 91 02 41 00 91 e8 03 00 91 | |
0x11ceec630: 03 61 00 91 e8 03 00 91 04 71 00 91 e8 03 00 91 | |
0x11ceec640: 05 81 00 91 e0 03 00 91 08 00 00 90 08 41 43 f9 | |
0x11ceec650: 00 01 3f d6 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec660: e0 03 13 aa 00 01 3f d6 e8 03 00 91 68 02 00 f9 | |
0x11ceec670: fd 7b 44 a9 f4 4f 43 a9 ff 43 01 91 c0 03 5f d6 | |
0x11ceec680: f8 92 89 06 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec690: 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1455f8000+0x10]->0x11d0f8600 (alignment 8, section ID 1, name __bss) | |
IRMemoryMap::ReadMemory (0x11d0f8600, 0x60000031ba90, 0x16) came from [0x11d0f8600..0x11d0f8617) | |
0x11d0f8600: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1455f8010+0x16]->0x11d0f8620 (alignment 8, section ID 2, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f8620, 0x6000005b1f80, 0x22) came from [0x11d0f8620..0x11d0f863f) | |
0x11d0f8620: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f8630: 00 00 00 00 00 00 | |
Couldn't find llvm.global_ctors. | |
[ClangASTImporter] Forgetting destination (ASTContext*)0x0000000127CF2800 | |
[ClangASTImporter] Forgetting source->dest (ASTContext*)0x0000000127CF2800->(ASTContext*)0x0000000134A71600 | |
== [UserExpression::Evaluate] Executing expression == | |
IRMemoryMap::Malloc process_sp=0x1464ca600, process_sp->CanJIT()=true, process_sp->IsAlive()=true | |
IRMemoryMap::Malloc (15, 0x8, 0x3, eAllocationPolicyMirror) -> 0x11d0f8640 | |
Materializer::Materialize (frame_sp = 0x1468e92f8, process_address = 0x11d0f8640) materialized: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x60000031c6d0, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
0x11d0f8640: EntityResultVariable | |
Pointer: | |
0x11d0f8640: a0 ee b8 6f 01 00 00 00 | |
Points to process memory: | |
ABIMacOSX_arm64::PrepareTrivialCall (tid = 0x247096, sp = 0x16fb8eef0, func_addr = 0x11ceec5f0, return_addr = 0x10026d6ec, arg1 = 0x11d0f8640) | |
About to write arg1 (0x11d0f8640) into x0 | |
-- [UserExpression::Execute] Execution of expression begins -- | |
-- [UserExpression::Execute] Execution of expression completed -- | |
-- [UserExpression::FinalizeJITExecution] Dematerializing after execution -- | |
Materializer::Dematerialize (frame_sp = 0x1255e85f8, process_address = 0x11d0f8640) about to dematerialize: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x600000367370, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
0x11d0f8640: EntityResultVariable | |
Pointer: | |
0x11d0f8640: a0 ee b8 6f 01 00 00 00 | |
Points to process memory: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x600000367370, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
LayoutRecordType on (ASTContext*)0x0000000134A71600 'scratch ASTContext' for (RecordDecl*)0x00000001412773B0 [name = ''] | |
returned project-wide scratch context | |
== [UserExpression::Evaluate] Execution completed normally with result == | |
IRMemoryMap::Free (0x11ceec5f0) freed [0x11ceec5f0..0x11ceec6a7) | |
IRMemoryMap::Free (0x11d0f8600) freed [0x11d0f8600..0x11d0f8617) | |
IRMemoryMap::Free (0x11d0f8620) freed [0x11d0f8620..0x11d0f863f) | |
IRMemoryMap::Free (0x11d0f8640) freed [0x11d0f8640..0x11d0f864f) | |
== [UserExpression::Evaluate] Parsing expression | |
struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned line; | |
unsigned col; | |
char *memory_addr; | |
} t; | |
__ubsan_get_current_report_data(&t.issue_kind, &t.message, &t.filename, &t.line, | |
&t.col, &t.memory_addr); | |
t; | |
== | |
ClangUserExpression::ScanContext() | |
[CUE::SC] Null function | |
Parsing the following code: | |
#line 1 "<lldb wrapper prefix>" | |
#ifndef offsetof | |
#define offsetof(t, d) __builtin_offsetof(t, d) | |
#endif | |
#ifndef NULL | |
#define NULL (__null) | |
#endif | |
#ifndef Nil | |
#define Nil (__null) | |
#endif | |
#ifndef nil | |
#define nil (__null) | |
#endif | |
#ifndef YES | |
#define YES ((BOOL)1) | |
#endif | |
#ifndef NO | |
#define NO ((BOOL)0) | |
#endif | |
typedef __INT8_TYPE__ int8_t; | |
typedef __UINT8_TYPE__ uint8_t; | |
typedef __INT16_TYPE__ int16_t; | |
typedef __UINT16_TYPE__ uint16_t; | |
typedef __INT32_TYPE__ int32_t; | |
typedef __UINT32_TYPE__ uint32_t; | |
typedef __INT64_TYPE__ int64_t; | |
typedef __UINT64_TYPE__ uint64_t; | |
typedef __INTPTR_TYPE__ intptr_t; | |
typedef __UINTPTR_TYPE__ uintptr_t; | |
typedef __SIZE_TYPE__ size_t; | |
typedef __PTRDIFF_TYPE__ ptrdiff_t; | |
typedef unsigned short unichar; | |
extern "C" | |
{ | |
int printf(const char * __restrict, ...); | |
} | |
typedef bool BOOL; | |
extern "C" { | |
void | |
__ubsan_get_current_report_data(const char **OutIssueKind, | |
const char **OutMessage, const char **OutFilename, unsigned *OutLine, | |
unsigned *OutCol, char **OutMemoryAddr); | |
} | |
void | |
$__lldb_expr(void *$__lldb_arg) | |
{ | |
; | |
#line 1 "<user expression 2>" | |
struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned line; | |
unsigned col; | |
char *memory_addr; | |
} t; | |
__ubsan_get_current_report_data(&t.issue_kind, &t.message, &t.filename, &t.line, | |
&t.col, &t.memory_addr); | |
t; | |
; | |
#line 1 "<lldb wrapper suffix>" | |
} | |
Frame has language of type objective-c++ | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_arg' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000134D13000 'Expression ASTContext for '<user expression 2>'' for '$__lldb_arg' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_expr' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000134D13000 'Expression ASTContext for '<user expression 2>'' for '$__lldb_expr' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for 't' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x0000000134D13000 'Expression ASTContext for '<user expression 2>'' for 't' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
AppleObjCDeclVendor::FindDecls ('t', false, 1, ) | |
AOCTV::FT Couldn't find t in the ASTContext | |
objc_debug_realized_class_generation_count changed from 4430 to 4956 | |
== [FunctionCaller::ExecuteFunction] Executing function "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" == | |
-- [FunctionCaller::GetThreadPlanToCallFunction] Creating thread plan to call function "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" -- | |
ABIMacOSX_arm64::PrepareTrivialCall (tid = 0x247096, sp = 0x16fb8f230, func_addr = 0x11ceec3a0, return_addr = 0x10026d6ec, arg1 = 0x11d0f80e0) | |
About to write arg1 (0x11d0f80e0) into x0 | |
== [FunctionCaller::ExecuteFunction] Execution of "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" completed normally == | |
-- [FunctionCaller::FetchFunctionResults] Fetching function results for "__lldb_apple_objc_v2_get_dynamic_class_info3-caller"-- | |
Discovered 2665 Objective-C classes | |
AOCTV::FT Couldn't find the isa | |
LayoutRecordType on (ASTContext*)0x0000000134D13000 'Expression ASTContext for '<user expression 2>'' for (RecordDecl*)0x0000000134D364B8 [name = ''] | |
Last statement is an lvalue with type: struct (unnamed struct at <user expression 2>:2:1) | |
Found function _Z12$__lldb_exprPv for $__lldb_expr | |
DoPrepareForExecution - Current expression language is objective-c++ | |
Module as passed in to IRForTarget: | |
"; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.anon = type { ptr, ptr, ptr, i32, i32, ptr } | |
@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8 | |
@"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global i8 0, align 1 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_Z12$__lldb_exprPv"(ptr %"$__lldb_arg") #0 { | |
entry: | |
%"$__lldb_arg.addr" = alloca ptr, align 8, !clang.decl.ptr !12 | |
%t = alloca %struct.anon, align 8, !clang.decl.ptr !13 | |
store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
%issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0 | |
%message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1 | |
%filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2 | |
%line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3 | |
%col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4 | |
%memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5 | |
call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
%0 = load i8, ptr @"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 1 | |
%guard.uninitialized = icmp eq i8 %0, 0 | |
br i1 %guard.uninitialized, label %init.check, label %init.end, !prof !14 | |
init.check: ; preds = %entry | |
store ptr %t, ptr @"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 8 | |
store i8 1, ptr @"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 1 | |
br label %init.end | |
init.end: ; preds = %init.check, %entry | |
ret void | |
} | |
; Function Attrs: convergent | |
declare void @__ubsan_get_current_report_data(ptr, ptr, ptr, ptr, ptr, ptr) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { convergent "no-builtins" } | |
!clang.global.decl.ptrs = !{!0, !1, !2, !0} | |
!llvm.module.flags = !{!3, !4, !5, !6, !7, !8, !9, !10} | |
!llvm.ident = !{!11} | |
!0 = !{ptr @"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", i64 4962004168} | |
!1 = !{ptr @"_Z12$__lldb_exprPv", i64 5181236200} | |
!2 = !{ptr @__ubsan_get_current_report_data, i64 5181235712} | |
!3 = !{i32 1, !"Objective-C Version", i32 2} | |
!4 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!5 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!6 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!7 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!8 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!9 = !{i32 1, !"wchar_size", i32 4} | |
!10 = !{i32 7, !"frame-pointer", i32 2} | |
!11 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!12 = !{i64 5181235976} | |
!13 = !{i64 5181237448} | |
!14 = !{!"branch_weights", i32 1, i32 1048575} | |
" | |
Result name: "_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" | |
Found result in the IR: "@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8" | |
Found result decl: "static struct (unnamed struct at <user expression 2>:2:1) *$__lldb_expr_result_ptr&t" | |
Result decl type: "struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned int line; | |
unsigned int col; | |
char *memory_addr; | |
}" | |
Creating a new result global: "$RESULT_NAME" with size 40 | |
Replacing "@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8" with "@"$RESULT_NAME" = external global ptr" | |
[ClangASTImporter] DeportType called on ((unnamed struct at <user expression 2>:2:1)Type*)0x0000000134D36870 from (ASTContext*)0x0000000134D13000 to (ASTContext*)0x0000000134A71600 | |
[ClangASTImporter] Imported (CXXRecordDecl*)0x0000000134D38830, named (unnamed struct at <user expression 2>:2:1) (from (Decl*)0x0000000134D364B8), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
[ClangASTImporter] To is a TagDecl - attributes Lexical [complete->complete] | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D389C8, named issue_kind (from (Decl*)0x0000000134D36600), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
FindExternalLexicalDecls on (ASTContext*)0x0000000134A71600 'scratch ASTContext' in '' (CXXRecordDecl*)0x0000000134D38830 | |
FELD Original decl 0x0000000134D13000 (Decl*)0x0000000134d364b8: | |
CXXRecordDecl 0x134d364b8 <<user expression 2>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x134d36600 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x134d36668 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x134d366d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x134d36738 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x134d367a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x134d36808 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x134d36948 <line:2:1> col:1 implicit used (unnamed struct at <user expression 2>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x134d36e38 <col:1> | |
|-CXXConstructorDecl 0x134d36a88 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 2>:2:1) 'void (const (unnamed struct at <user expression 2>:2:1) &)' inline default trivial noexcept-unevaluated 0x134d36a88 | |
| `-ParmVarDecl 0x134d36ba8 <col:1> col:1 'const (unnamed struct at <user expression 2>:2:1) &' | |
`-CXXConstructorDecl 0x134d36c58 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 2>:2:1) 'void ((unnamed struct at <user expression 2>:2:1) &&)' inline default trivial noexcept-unevaluated 0x134d36c58 | |
`-ParmVarDecl 0x134d36d78 <col:1> col:1 '(unnamed struct at <user expression 2>:2:1) &&' | |
CompleteTagDecl on (ASTContext*)Expression ASTContext for '<user expression 2>' Completing (TagDecl*)0x0000000134D364B8 named | |
CTD Before: | |
CXXRecordDecl 0x134d364b8 <<user expression 2>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x134d36600 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x134d36668 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x134d366d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x134d36738 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x134d367a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x134d36808 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x134d36948 <line:2:1> col:1 implicit used (unnamed struct at <user expression 2>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x134d36e38 <col:1> | |
|-CXXConstructorDecl 0x134d36a88 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 2>:2:1) 'void (const (unnamed struct at <user expression 2>:2:1) &)' inline default trivial noexcept-unevaluated 0x134d36a88 | |
| `-ParmVarDecl 0x134d36ba8 <col:1> col:1 'const (unnamed struct at <user expression 2>:2:1) &' | |
`-CXXConstructorDecl 0x134d36c58 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 2>:2:1) 'void ((unnamed struct at <user expression 2>:2:1) &&)' inline default trivial noexcept-unevaluated 0x134d36c58 | |
`-ParmVarDecl 0x134d36d78 <col:1> col:1 '(unnamed struct at <user expression 2>:2:1) &&' | |
[CTD] After: | |
CXXRecordDecl 0x134d364b8 <<user expression 2>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x134d36600 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x134d36668 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x134d366d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x134d36738 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x134d367a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x134d36808 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x134d36948 <line:2:1> col:1 implicit used (unnamed struct at <user expression 2>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x134d36e38 <col:1> | |
|-CXXConstructorDecl 0x134d36a88 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 2>:2:1) 'void (const (unnamed struct at <user expression 2>:2:1) &)' inline default trivial noexcept-unevaluated 0x134d36a88 | |
| `-ParmVarDecl 0x134d36ba8 <col:1> col:1 'const (unnamed struct at <user expression 2>:2:1) &' | |
`-CXXConstructorDecl 0x134d36c58 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 2>:2:1) 'void ((unnamed struct at <user expression 2>:2:1) &&)' inline default trivial noexcept-unevaluated 0x134d36c58 | |
`-ParmVarDecl 0x134d36d78 <col:1> col:1 '(unnamed struct at <user expression 2>:2:1) &&' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x134d36600 <<user expression 2>:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x134d36668 <<user expression 2>:4:3, col:15> col:15 referenced message 'const char *' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x134d366d0 <<user expression 2>:5:3, col:15> col:15 referenced filename 'const char *' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D38AA8, named filename (from (Decl*)0x0000000134D366D0), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x134d36738 <<user expression 2>:6:3, col:12> col:12 referenced line 'unsigned int' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D38B18, named line (from (Decl*)0x0000000134D36738), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x134d367a0 <<user expression 2>:7:3, col:12> col:12 referenced col 'unsigned int' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D38B88, named col (from (Decl*)0x0000000134D367A0), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x134d36808 <<user expression 2>:8:3, col:9> col:9 referenced memory_addr 'char *' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D38BF8, named memory_addr (from (Decl*)0x0000000134D36808), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x134d36948 <<user expression 2>:2:1> col:1 implicit used (unnamed struct at <user expression 2>:2:1) 'void () noexcept' inline default trivial | |
`-CompoundStmt 0x134d36e38 <col:1> | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000134D38C90, named (unnamed struct at <user expression 2>:2:1) (from (Decl*)0x0000000134D36948), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x134d36a88 <<user expression 2>:2:1> col:1 implicit constexpr (unnamed struct at <user expression 2>:2:1) 'void (const (unnamed struct at <user expression 2>:2:1) &)' inline default trivial noexcept-unevaluated 0x134d36a88 | |
`-ParmVarDecl 0x134d36ba8 <col:1> col:1 'const (unnamed struct at <user expression 2>:2:1) &' | |
[ClangASTImporter] Imported (ParmVarDecl*)0x0000000134D38DE0, named (from (Decl*)0x0000000134D36BA8), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000134D38E50, named (unnamed struct at <user expression 2>:2:1) (from (Decl*)0x0000000134D36A88), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x134d36c58 <<user expression 2>:2:1> col:1 implicit constexpr (unnamed struct at <user expression 2>:2:1) 'void ((unnamed struct at <user expression 2>:2:1) &&)' inline default trivial noexcept-unevaluated 0x134d36c58 | |
`-ParmVarDecl 0x134d36d78 <col:1> col:1 '(unnamed struct at <user expression 2>:2:1) &&' | |
[ClangASTImporter] Imported (ParmVarDecl*)0x0000000127B56C08, named (from (Decl*)0x0000000134D36D78), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000127B56C78, named (unnamed struct at <user expression 2>:2:1) (from (Decl*)0x0000000134D36C58), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000134D38A38, named message (from (Decl*)0x0000000134D36668), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x0000000134D13000 | |
MaybeHandleCallArguments( call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2) | |
MaybeHandleVariable ( %issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0) | |
MaybeHandleVariable ( %message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1) | |
MaybeHandleVariable ( %filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2) | |
MaybeHandleVariable ( %line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3) | |
MaybeHandleVariable ( %col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4) | |
MaybeHandleVariable ( %memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5) | |
Examining _ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr, DeclForGlobalValue returns 0x0000000000000000 | |
Examining reloc_placeholder, DeclForGlobalValue returns 0x0000000000000000 | |
Examining $RESULT_NAME, DeclForGlobalValue returns 0x0000000127C22CC8 | |
MaybeHandleVariable (@"$RESULT_NAME" = external global ptr) | |
Type of "$__lldb_expr_result_ptr" is [clang "struct (unnamed struct at <user expression 2>:2:1) **", llvm "ptr"] [size 8, align 8] | |
Adding value for (NamedDecl*)0x0000000127C22CC8 [$__lldb_expr_result_ptr - $RESULT_NAME] to the structure | |
Already placed at 0x0 | |
Placed at 0x0 | |
Element arrangement: | |
Arg: "ptr %"$__lldb_arg"" | |
"$RESULT_NAME" ("$__lldb_expr_result_ptr") placed at 0 | |
Replacing [@"$RESULT_NAME" = external global ptr] | |
Total structure [align 8, size 8] | |
Saw function with body: _Z12$__lldb_exprPv | |
Unsupported instruction: call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
Instrumenting load/store instruction: store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
Instrumenting load/store instruction: store ptr %t, ptr %1, align 8 | |
Found call to __ubsan_get_current_report_data: call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.anon = type { ptr, ptr, ptr, i32, i32, ptr } | |
@"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global i8 0, align 1 | |
@reloc_placeholder = internal global i8 0 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_Z12$__lldb_exprPv"(ptr %"$__lldb_arg") #0 { | |
entry: | |
%0 = getelementptr i8, ptr %"$__lldb_arg", i32 0 | |
%1 = bitcast ptr %0 to ptr | |
%"$__lldb_arg.addr" = alloca ptr, align 8, !clang.decl.ptr !13 | |
%t = alloca %struct.anon, align 8, !clang.decl.ptr !14 | |
%2 = bitcast ptr %"$__lldb_arg.addr" to ptr | |
call void (ptr, ...) inttoptr (i64 4780377248 to ptr)(ptr %2) | |
store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
%issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0 | |
%message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1 | |
%filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2 | |
%line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3 | |
%col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4 | |
%memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5 | |
call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
%guard.uninitialized = icmp eq i8 0, 0 | |
br i1 %guard.uninitialized, label %init.check, label %init.end, !prof !15 | |
init.check: ; preds = %entry | |
%3 = bitcast ptr %1 to ptr | |
call void (ptr, ...) inttoptr (i64 4780377248 to ptr)(ptr %3) | |
store ptr %t, ptr %1, align 8 | |
br label %init.end | |
init.end: ; preds = %init.check, %entry | |
ret void | |
} | |
; Function Attrs: convergent | |
declare void @__ubsan_get_current_report_data(ptr, ptr, ptr, ptr, ptr, ptr) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { convergent "no-builtins" } | |
!clang.global.decl.ptrs = !{!0, !1, !2, !0, !3} | |
!llvm.module.flags = !{!4, !5, !6, !7, !8, !9, !10, !11} | |
!llvm.ident = !{!12} | |
!0 = distinct !{null, i64 4962004168} | |
!1 = !{ptr @"_Z12$__lldb_exprPv", i64 5181236200} | |
!2 = !{ptr @__ubsan_get_current_report_data, i64 5181235712} | |
!3 = distinct !{null, i64 4962004168} | |
!4 = !{i32 1, !"Objective-C Version", i32 2} | |
!5 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!6 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!7 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!8 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!9 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!10 = !{i32 1, !"wchar_size", i32 4} | |
!11 = !{i32 7, !"frame-pointer", i32 2} | |
!12 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!13 = !{i64 5181235976} | |
!14 = !{i64 5181237448} | |
!15 = !{!"branch_weights", i32 1, i32 1048575} | |
IRExecutionUnit::allocateCodeSection(Size=0xab, Alignment=8, SectionID=0) = 0x137ffc000 | |
IRExecutionUnit::allocateDataSection(Size=0x10, Alignment=8, SectionID=1) = 0x1455f8000 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=2) = 0x1455f8010 | |
IRMemoryMap::Malloc (183, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11ceec5f0 | |
IRMemoryMap::Malloc (23, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8600 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8620 | |
IRExecutionUnit::getSymbolAddress(Name="___ubsan_get_current_report_data") = 1068992f8 | |
IRMemoryMap::WriteMemory (0x11ceec5f0, 0x137ffc000, 0x171) went to [0x11ceec5f0..0x11ceec6a7) | |
IRMemoryMap::WriteMemory (0x11d0f8600, 0x1455f8000, 0x16) went to [0x11d0f8600..0x11d0f8617) | |
IRMemoryMap::WriteMemory (0x11d0f8620, 0x1455f8010, 0x22) went to [0x11d0f8620..0x11d0f863f) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x137ffc000 in [0x137ffc000..0x137ffc0ab], and returned 0x11ceec5f0 from [0x11ceec5f0..0x11ceec69b]. | |
Code can be run in the target. | |
Found function, has local address 0x137ffc000 and remote address 0x11ceec5f0 | |
Function's code range is [0x11ceec5f0+0xab] | |
Function data has contents: | |
0x11ceec5f0: ff 43 01 d1 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 | |
0x11ceec600: f3 03 00 aa 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec610: a0 63 00 d1 00 01 3f d6 b3 83 1e f8 e8 03 00 91 | |
0x11ceec620: 01 21 00 91 e8 03 00 91 02 41 00 91 e8 03 00 91 | |
0x11ceec630: 03 61 00 91 e8 03 00 91 04 71 00 91 e8 03 00 91 | |
0x11ceec640: 05 81 00 91 e0 03 00 91 08 00 00 90 08 41 43 f9 | |
0x11ceec650: 00 01 3f d6 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec660: e0 03 13 aa 00 01 3f d6 e8 03 00 91 68 02 00 f9 | |
0x11ceec670: fd 7b 44 a9 f4 4f 43 a9 ff 43 01 91 c0 03 5f d6 | |
0x11ceec680: f8 92 89 06 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec690: 00 00 00 00 00 00 00 00 00 00 00 | |
Function disassembly: | |
0x11ceec5f0: 0xd10143ff unknown sub sp, sp, #0x50 | |
0x11ceec5f4: 0xa9034ff4 unknown stp x20, x19, [sp, #0x30] | |
0x11ceec5f8: 0xa9047bfd unknown stp x29, x30, [sp, #0x40] | |
0x11ceec5fc: 0x910103fd unknown add x29, sp, #0x40 | |
0x11ceec600: 0xaa0003f3 unknown mov x19, x0 | |
0x11ceec604: 0xd2989408 unknown mov x8, #0xc4a0 | |
0x11ceec608: 0xf2a39dc8 unknown movk x8, #0x1cee, lsl #16 | |
0x11ceec60c: 0xf2c00028 unknown movk x8, #0x1, lsl #32 | |
0x11ceec610: 0xd10063a0 unknown sub x0, x29, #0x18 | |
0x11ceec614: 0xd63f0100 unknown blr x8 | |
0x11ceec618: 0xf81e83b3 unknown stur x19, [x29, #-0x18] | |
0x11ceec61c: 0x910003e8 unknown mov x8, sp | |
0x11ceec620: 0x91002101 unknown add x1, x8, #0x8 | |
0x11ceec624: 0x910003e8 unknown mov x8, sp | |
0x11ceec628: 0x91004102 unknown add x2, x8, #0x10 | |
0x11ceec62c: 0x910003e8 unknown mov x8, sp | |
0x11ceec630: 0x91006103 unknown add x3, x8, #0x18 | |
0x11ceec634: 0x910003e8 unknown mov x8, sp | |
0x11ceec638: 0x91007104 unknown add x4, x8, #0x1c | |
0x11ceec63c: 0x910003e8 unknown mov x8, sp | |
0x11ceec640: 0x91008105 unknown add x5, x8, #0x20 | |
0x11ceec644: 0x910003e0 unknown mov x0, sp | |
0x11ceec648: 0x90000008 unknown adrp x8, 0 | |
0x11ceec64c: 0xf9434108 unknown ldr x8, [x8, #0x680] | |
0x11ceec650: 0xd63f0100 unknown blr x8 | |
0x11ceec654: 0xd2989408 unknown mov x8, #0xc4a0 | |
0x11ceec658: 0xf2a39dc8 unknown movk x8, #0x1cee, lsl #16 | |
0x11ceec65c: 0xf2c00028 unknown movk x8, #0x1, lsl #32 | |
0x11ceec660: 0xaa1303e0 unknown mov x0, x19 | |
0x11ceec664: 0xd63f0100 unknown blr x8 | |
0x11ceec668: 0x910003e8 unknown mov x8, sp | |
0x11ceec66c: 0xf9000268 unknown str x8, [x19] | |
0x11ceec670: 0xa9447bfd unknown ldp x29, x30, [sp, #0x40] | |
0x11ceec674: 0xa9434ff4 unknown ldp x20, x19, [sp, #0x30] | |
0x11ceec678: 0x910143ff unknown add sp, sp, #0x50 | |
0x11ceec67c: 0xd65f03c0 unknown ret | |
0x11ceec680: 0x068992f8 unknown .long 0x068992f8 ; unknown opcode | |
0x11ceec684: 0x00000001 unknown udf #0x1 | |
0x11ceec688: 0x00000000 unknown udf #0x0 | |
0x11ceec68c: 0x00000000 unknown udf #0x0 | |
0x11ceec690: 0x00000000 unknown udf #0x0 | |
0x11ceec694: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x137ffc000+0xab]->0x11ceec5f0 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11ceec5f0, 0x6000135ec420, 0x171) came from [0x11ceec5f0..0x11ceec6a7) | |
0x11ceec5f0: ff 43 01 d1 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 | |
0x11ceec600: f3 03 00 aa 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec610: a0 63 00 d1 00 01 3f d6 b3 83 1e f8 e8 03 00 91 | |
0x11ceec620: 01 21 00 91 e8 03 00 91 02 41 00 91 e8 03 00 91 | |
0x11ceec630: 03 61 00 91 e8 03 00 91 04 71 00 91 e8 03 00 91 | |
0x11ceec640: 05 81 00 91 e0 03 00 91 08 00 00 90 08 41 43 f9 | |
0x11ceec650: 00 01 3f d6 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec660: e0 03 13 aa 00 01 3f d6 e8 03 00 91 68 02 00 f9 | |
0x11ceec670: fd 7b 44 a9 f4 4f 43 a9 ff 43 01 91 c0 03 5f d6 | |
0x11ceec680: f8 92 89 06 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec690: 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1455f8000+0x10]->0x11d0f8600 (alignment 8, section ID 1, name __bss) | |
IRMemoryMap::ReadMemory (0x11d0f8600, 0x60000031c590, 0x16) came from [0x11d0f8600..0x11d0f8617) | |
0x11d0f8600: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1455f8010+0x16]->0x11d0f8620 (alignment 8, section ID 2, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f8620, 0x6000005b0580, 0x22) came from [0x11d0f8620..0x11d0f863f) | |
0x11d0f8620: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f8630: 00 00 00 00 00 00 | |
Couldn't find llvm.global_ctors. | |
[ClangASTImporter] Forgetting destination (ASTContext*)0x0000000134D13000 | |
[ClangASTImporter] Forgetting source->dest (ASTContext*)0x0000000134D13000->(ASTContext*)0x0000000134A71600 | |
== [UserExpression::Evaluate] Executing expression == | |
IRMemoryMap::Malloc process_sp=0x1464ca600, process_sp->CanJIT()=true, process_sp->IsAlive()=true | |
IRMemoryMap::Malloc (15, 0x8, 0x3, eAllocationPolicyMirror) -> 0x11d0f8640 | |
Materializer::Materialize (frame_sp = 0x12549a4b8, process_address = 0x11d0f8640) materialized: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x60000031bbb0, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
0x11d0f8640: EntityResultVariable | |
Pointer: | |
0x11d0f8640: a0 ee b8 6f 01 00 00 00 | |
Points to process memory: | |
ABIMacOSX_arm64::PrepareTrivialCall (tid = 0x247096, sp = 0x16fb8f230, func_addr = 0x11ceec5f0, return_addr = 0x10026d6ec, arg1 = 0x11d0f8640) | |
About to write arg1 (0x11d0f8640) into x0 | |
-- [UserExpression::Execute] Execution of expression begins -- | |
-- [UserExpression::Execute] Execution of expression completed -- | |
-- [UserExpression::FinalizeJITExecution] Dematerializing after execution -- | |
Materializer::Dematerialize (frame_sp = 0x12549b908, process_address = 0x11d0f8640) about to dematerialize: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x6000003657f0, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
0x11d0f8640: EntityResultVariable | |
Pointer: | |
0x11d0f8640: e0 f1 b8 6f 01 00 00 00 | |
Points to process memory: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x60000031bbb0, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
LayoutRecordType on (ASTContext*)0x0000000134A71600 'scratch ASTContext' for (RecordDecl*)0x0000000134D38830 [name = ''] | |
returned project-wide scratch context | |
== [UserExpression::Evaluate] Execution completed normally with result == | |
IRMemoryMap::Free (0x11ceec5f0) freed [0x11ceec5f0..0x11ceec6a7) | |
IRMemoryMap::Free (0x11d0f8600) freed [0x11d0f8600..0x11d0f8617) | |
IRMemoryMap::Free (0x11d0f8620) freed [0x11d0f8620..0x11d0f863f) | |
IRMemoryMap::Free (0x11d0f8640) freed [0x11d0f8640..0x11d0f864f) | |
== [UserExpression::Evaluate] Parsing expression | |
struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned line; | |
unsigned col; | |
char *memory_addr; | |
} t; | |
__ubsan_get_current_report_data(&t.issue_kind, &t.message, &t.filename, &t.line, | |
&t.col, &t.memory_addr); | |
t; | |
== | |
ClangUserExpression::ScanContext() | |
[CUE::SC] Null function | |
Parsing the following code: | |
#line 1 "<lldb wrapper prefix>" | |
#ifndef offsetof | |
#define offsetof(t, d) __builtin_offsetof(t, d) | |
#endif | |
#ifndef NULL | |
#define NULL (__null) | |
#endif | |
#ifndef Nil | |
#define Nil (__null) | |
#endif | |
#ifndef nil | |
#define nil (__null) | |
#endif | |
#ifndef YES | |
#define YES ((BOOL)1) | |
#endif | |
#ifndef NO | |
#define NO ((BOOL)0) | |
#endif | |
typedef __INT8_TYPE__ int8_t; | |
typedef __UINT8_TYPE__ uint8_t; | |
typedef __INT16_TYPE__ int16_t; | |
typedef __UINT16_TYPE__ uint16_t; | |
typedef __INT32_TYPE__ int32_t; | |
typedef __UINT32_TYPE__ uint32_t; | |
typedef __INT64_TYPE__ int64_t; | |
typedef __UINT64_TYPE__ uint64_t; | |
typedef __INTPTR_TYPE__ intptr_t; | |
typedef __UINTPTR_TYPE__ uintptr_t; | |
typedef __SIZE_TYPE__ size_t; | |
typedef __PTRDIFF_TYPE__ ptrdiff_t; | |
typedef unsigned short unichar; | |
extern "C" | |
{ | |
int printf(const char * __restrict, ...); | |
} | |
typedef bool BOOL; | |
extern "C" { | |
void | |
__ubsan_get_current_report_data(const char **OutIssueKind, | |
const char **OutMessage, const char **OutFilename, unsigned *OutLine, | |
unsigned *OutCol, char **OutMemoryAddr); | |
} | |
void | |
$__lldb_expr(void *$__lldb_arg) | |
{ | |
; | |
#line 1 "<user expression 3>" | |
struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned line; | |
unsigned col; | |
char *memory_addr; | |
} t; | |
__ubsan_get_current_report_data(&t.issue_kind, &t.message, &t.filename, &t.line, | |
&t.col, &t.memory_addr); | |
t; | |
; | |
#line 1 "<lldb wrapper suffix>" | |
} | |
Frame has language of type objective-c++ | |
Using arm64-apple-macosx11.0.0 as the target triple | |
Using SIMD alignment: 0 | |
Target datalayout string: 'e-m:o-i64:64-i128:128-n32:64-S128' | |
Target ABI: 'aapcs' | |
Target vector alignment: 128 | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_arg' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x00000001411BAC00 'Expression ASTContext for '<user expression 3>'' for '$__lldb_arg' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for '$__lldb_expr' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x00000001411BAC00 'Expression ASTContext for '<user expression 3>'' for '$__lldb_expr' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
ClangExpressionDeclMap::FindExternalVisibleDecls for 't' in a 'TranslationUnit' | |
CEDM::FEVD Searching the root namespace | |
ClangASTSource::FindExternalVisibleDecls on (ASTContext*)0x00000001411BAC00 'Expression ASTContext for '<user expression 3>'' for 't' in a 'TranslationUnit' | |
CAS::FEVD Searching the root namespace | |
AppleObjCDeclVendor::FindDecls ('t', false, 1, ) | |
AOCTV::FT Couldn't find t in the ASTContext | |
== [FunctionCaller::ExecuteFunction] Executing function "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" == | |
-- [FunctionCaller::GetThreadPlanToCallFunction] Creating thread plan to call function "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" -- | |
ABIMacOSX_arm64::PrepareTrivialCall (tid = 0x247096, sp = 0x16fb8f230, func_addr = 0x11ceec3a0, return_addr = 0x10026d6ec, arg1 = 0x11d0f80e0) | |
About to write arg1 (0x11d0f80e0) into x0 | |
== [FunctionCaller::ExecuteFunction] Execution of "__lldb_apple_objc_v2_get_dynamic_class_info3-caller" completed normally == | |
-- [FunctionCaller::FetchFunctionResults] Fetching function results for "__lldb_apple_objc_v2_get_dynamic_class_info3-caller"-- | |
Discovered 2665 Objective-C classes | |
AOCTV::FT Couldn't find the isa | |
LayoutRecordType on (ASTContext*)0x00000001411BAC00 'Expression ASTContext for '<user expression 3>'' for (RecordDecl*)0x00000001412D62B8 [name = ''] | |
Last statement is an lvalue with type: struct (unnamed struct at <user expression 3>:2:1) | |
Found function _Z12$__lldb_exprPv for $__lldb_expr | |
DoPrepareForExecution - Current expression language is objective-c++ | |
Module as passed in to IRForTarget: | |
"; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.anon = type { ptr, ptr, ptr, i32, i32, ptr } | |
@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8 | |
@"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global i8 0, align 1 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_Z12$__lldb_exprPv"(ptr %"$__lldb_arg") #0 { | |
entry: | |
%"$__lldb_arg.addr" = alloca ptr, align 8, !clang.decl.ptr !12 | |
%t = alloca %struct.anon, align 8, !clang.decl.ptr !13 | |
store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
%issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0 | |
%message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1 | |
%filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2 | |
%line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3 | |
%col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4 | |
%memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5 | |
call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
%0 = load i8, ptr @"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 1 | |
%guard.uninitialized = icmp eq i8 %0, 0 | |
br i1 %guard.uninitialized, label %init.check, label %init.end, !prof !14 | |
init.check: ; preds = %entry | |
store ptr %t, ptr @"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 8 | |
store i8 1, ptr @"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", align 1 | |
br label %init.end | |
init.end: ; preds = %init.check, %entry | |
ret void | |
} | |
; Function Attrs: convergent | |
declare void @__ubsan_get_current_report_data(ptr, ptr, ptr, ptr, ptr, ptr) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { convergent "no-builtins" } | |
!clang.global.decl.ptrs = !{!0, !1, !2, !0} | |
!llvm.module.flags = !{!3, !4, !5, !6, !7, !8, !9, !10} | |
!llvm.ident = !{!11} | |
!0 = !{ptr @"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr", i64 4961775816} | |
!1 = !{ptr @"_Z12$__lldb_exprPv", i64 5388460520} | |
!2 = !{ptr @__ubsan_get_current_report_data, i64 5388460032} | |
!3 = !{i32 1, !"Objective-C Version", i32 2} | |
!4 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!5 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!6 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!7 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!8 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!9 = !{i32 1, !"wchar_size", i32 4} | |
!10 = !{i32 7, !"frame-pointer", i32 2} | |
!11 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!12 = !{i64 5388460296} | |
!13 = !{i64 5388461768} | |
!14 = !{!"branch_weights", i32 1, i32 1048575} | |
" | |
Result name: "_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" | |
Found result in the IR: "@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8" | |
Found result decl: "static struct (unnamed struct at <user expression 3>:2:1) *$__lldb_expr_result_ptr&t" | |
Result decl type: "struct { | |
const char *issue_kind; | |
const char *message; | |
const char *filename; | |
unsigned int line; | |
unsigned int col; | |
char *memory_addr; | |
}" | |
Creating a new result global: "$RESULT_NAME" with size 40 | |
Replacing "@"_ZZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global ptr null, align 8" with "@"$RESULT_NAME" = external global ptr" | |
[ClangASTImporter] DeportType called on ((unnamed struct at <user expression 3>:2:1)Type*)0x00000001412D6670 from (ASTContext*)0x00000001411BAC00 to (ASTContext*)0x0000000134A71600 | |
[ClangASTImporter] Imported (CXXRecordDecl*)0x0000000127B56E70, named (unnamed struct at <user expression 3>:2:1) (from (Decl*)0x00000001412D62B8), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
[ClangASTImporter] To is a TagDecl - attributes Lexical [complete->complete] | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000127B57008, named issue_kind (from (Decl*)0x00000001412D6400), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
FindExternalLexicalDecls on (ASTContext*)0x0000000134A71600 'scratch ASTContext' in '' (CXXRecordDecl*)0x0000000127B56E70 | |
FELD Original decl 0x00000001411BAC00 (Decl*)0x00000001412d62b8: | |
CXXRecordDecl 0x1412d62b8 <<user expression 3>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x1412d6400 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x1412d6468 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x1412d64d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x1412d6538 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x1412d65a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x1412d6608 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x1412d6748 <line:2:1> col:1 implicit used (unnamed struct at <user expression 3>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x1412d6c38 <col:1> | |
|-CXXConstructorDecl 0x1412d6888 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 3>:2:1) 'void (const (unnamed struct at <user expression 3>:2:1) &)' inline default trivial noexcept-unevaluated 0x1412d6888 | |
| `-ParmVarDecl 0x1412d69a8 <col:1> col:1 'const (unnamed struct at <user expression 3>:2:1) &' | |
`-CXXConstructorDecl 0x1412d6a58 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 3>:2:1) 'void ((unnamed struct at <user expression 3>:2:1) &&)' inline default trivial noexcept-unevaluated 0x1412d6a58 | |
`-ParmVarDecl 0x1412d6b78 <col:1> col:1 '(unnamed struct at <user expression 3>:2:1) &&' | |
CompleteTagDecl on (ASTContext*)Expression ASTContext for '<user expression 3>' Completing (TagDecl*)0x00000001412D62B8 named | |
CTD Before: | |
CXXRecordDecl 0x1412d62b8 <<user expression 3>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x1412d6400 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x1412d6468 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x1412d64d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x1412d6538 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x1412d65a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x1412d6608 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x1412d6748 <line:2:1> col:1 implicit used (unnamed struct at <user expression 3>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x1412d6c38 <col:1> | |
|-CXXConstructorDecl 0x1412d6888 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 3>:2:1) 'void (const (unnamed struct at <user expression 3>:2:1) &)' inline default trivial noexcept-unevaluated 0x1412d6888 | |
| `-ParmVarDecl 0x1412d69a8 <col:1> col:1 'const (unnamed struct at <user expression 3>:2:1) &' | |
`-CXXConstructorDecl 0x1412d6a58 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 3>:2:1) 'void ((unnamed struct at <user expression 3>:2:1) &&)' inline default trivial noexcept-unevaluated 0x1412d6a58 | |
`-ParmVarDecl 0x1412d6b78 <col:1> col:1 '(unnamed struct at <user expression 3>:2:1) &&' | |
[CTD] After: | |
CXXRecordDecl 0x1412d62b8 <<user expression 3>:2:1, line:9:1> line:2:1 struct definition | |
|-DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal | |
| |-DefaultConstructor exists trivial | |
| |-CopyConstructor simple trivial has_const_param implicit_has_const_param | |
| |-MoveConstructor exists simple trivial | |
| |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param | |
| |-MoveAssignment exists simple trivial needs_implicit | |
| `-Destructor simple irrelevant trivial needs_implicit | |
|-FieldDecl 0x1412d6400 <line:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
|-FieldDecl 0x1412d6468 <line:4:3, col:15> col:15 referenced message 'const char *' | |
|-FieldDecl 0x1412d64d0 <line:5:3, col:15> col:15 referenced filename 'const char *' | |
|-FieldDecl 0x1412d6538 <line:6:3, col:12> col:12 referenced line 'unsigned int' | |
|-FieldDecl 0x1412d65a0 <line:7:3, col:12> col:12 referenced col 'unsigned int' | |
|-FieldDecl 0x1412d6608 <line:8:3, col:9> col:9 referenced memory_addr 'char *' | |
|-CXXConstructorDecl 0x1412d6748 <line:2:1> col:1 implicit used (unnamed struct at <user expression 3>:2:1) 'void () noexcept' inline default trivial | |
| `-CompoundStmt 0x1412d6c38 <col:1> | |
|-CXXConstructorDecl 0x1412d6888 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 3>:2:1) 'void (const (unnamed struct at <user expression 3>:2:1) &)' inline default trivial noexcept-unevaluated 0x1412d6888 | |
| `-ParmVarDecl 0x1412d69a8 <col:1> col:1 'const (unnamed struct at <user expression 3>:2:1) &' | |
`-CXXConstructorDecl 0x1412d6a58 <col:1> col:1 implicit constexpr (unnamed struct at <user expression 3>:2:1) 'void ((unnamed struct at <user expression 3>:2:1) &&)' inline default trivial noexcept-unevaluated 0x1412d6a58 | |
`-ParmVarDecl 0x1412d6b78 <col:1> col:1 '(unnamed struct at <user expression 3>:2:1) &&' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x1412d6400 <<user expression 3>:3:3, col:15> col:15 referenced issue_kind 'const char *' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x1412d6468 <<user expression 3>:4:3, col:15> col:15 referenced message 'const char *' | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x1412d64d0 <<user expression 3>:5:3, col:15> col:15 referenced filename 'const char *' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000127B570E8, named filename (from (Decl*)0x00000001412D64D0), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x1412d6538 <<user expression 3>:6:3, col:12> col:12 referenced line 'unsigned int' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000127B57158, named line (from (Decl*)0x00000001412D6538), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x1412d65a0 <<user expression 3>:7:3, col:12> col:12 referenced col 'unsigned int' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000127B571C8, named col (from (Decl*)0x00000001412D65A0), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
FELD Adding [to CXXRecordDecl ] lexical FieldDecl FieldDecl 0x1412d6608 <<user expression 3>:8:3, col:9> col:9 referenced memory_addr 'char *' | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000127B57238, named memory_addr (from (Decl*)0x00000001412D6608), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x1412d6748 <<user expression 3>:2:1> col:1 implicit used (unnamed struct at <user expression 3>:2:1) 'void () noexcept' inline default trivial | |
`-CompoundStmt 0x1412d6c38 <col:1> | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000127B572D0, named (unnamed struct at <user expression 3>:2:1) (from (Decl*)0x00000001412D6748), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x1412d6888 <<user expression 3>:2:1> col:1 implicit constexpr (unnamed struct at <user expression 3>:2:1) 'void (const (unnamed struct at <user expression 3>:2:1) &)' inline default trivial noexcept-unevaluated 0x1412d6888 | |
`-ParmVarDecl 0x1412d69a8 <col:1> col:1 'const (unnamed struct at <user expression 3>:2:1) &' | |
[ClangASTImporter] Imported (ParmVarDecl*)0x0000000127B57420, named (from (Decl*)0x00000001412D69A8), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000127B57490, named (unnamed struct at <user expression 3>:2:1) (from (Decl*)0x00000001412D6888), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
FELD Adding [to CXXRecordDecl ] lexical CXXConstructorDecl CXXConstructorDecl 0x1412d6a58 <<user expression 3>:2:1> col:1 implicit constexpr (unnamed struct at <user expression 3>:2:1) 'void ((unnamed struct at <user expression 3>:2:1) &&)' inline default trivial noexcept-unevaluated 0x1412d6a58 | |
`-ParmVarDecl 0x1412d6b78 <col:1> col:1 '(unnamed struct at <user expression 3>:2:1) &&' | |
[ClangASTImporter] Imported (ParmVarDecl*)0x0000000127B57630, named (from (Decl*)0x00000001412D6B78), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
[ClangASTImporter] Imported (CXXConstructorDecl*)0x0000000127B576A0, named (unnamed struct at <user expression 3>:2:1) (from (Decl*)0x00000001412D6A58), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
[ClangASTImporter] Imported (FieldDecl*)0x0000000127B57078, named message (from (Decl*)0x00000001412D6468), metadata 18446744073709551615 | |
[ClangASTImporter] Decl has no origin information in (ASTContext*)0x00000001411BAC00 | |
MaybeHandleCallArguments( call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2) | |
MaybeHandleVariable ( %issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0) | |
MaybeHandleVariable ( %message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1) | |
MaybeHandleVariable ( %filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2) | |
MaybeHandleVariable ( %line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3) | |
MaybeHandleVariable ( %col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4) | |
MaybeHandleVariable ( %memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5) | |
Examining _ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr, DeclForGlobalValue returns 0x0000000000000000 | |
Examining reloc_placeholder, DeclForGlobalValue returns 0x0000000000000000 | |
Examining $RESULT_NAME, DeclForGlobalValue returns 0x0000000127BEB0C8 | |
MaybeHandleVariable (@"$RESULT_NAME" = external global ptr) | |
Type of "$__lldb_expr_result_ptr" is [clang "struct (unnamed struct at <user expression 3>:2:1) **", llvm "ptr"] [size 8, align 8] | |
Adding value for (NamedDecl*)0x0000000127BEB0C8 [$__lldb_expr_result_ptr - $RESULT_NAME] to the structure | |
Already placed at 0x0 | |
Placed at 0x0 | |
Element arrangement: | |
Arg: "ptr %"$__lldb_arg"" | |
"$RESULT_NAME" ("$__lldb_expr_result_ptr") placed at 0 | |
Replacing [@"$RESULT_NAME" = external global ptr] | |
Total structure [align 8, size 8] | |
Saw function with body: _Z12$__lldb_exprPv | |
Unsupported instruction: call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
Instrumenting load/store instruction: store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
Instrumenting load/store instruction: store ptr %t, ptr %1, align 8 | |
Found call to __ubsan_get_current_report_data: call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
Module being sent to JIT: | |
; ModuleID = '$__lldb_module' | |
source_filename = "$__lldb_module" | |
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" | |
target triple = "arm64-apple-macosx11.0.0" | |
%struct.anon = type { ptr, ptr, ptr, i32, i32, ptr } | |
@"_ZGVZ12$__lldb_exprPvE23$__lldb_expr_result_ptr" = internal global i8 0, align 1 | |
@reloc_placeholder = internal global i8 0 | |
; Function Attrs: convergent mustprogress noinline nounwind optnone | |
define void @"_Z12$__lldb_exprPv"(ptr %"$__lldb_arg") #0 { | |
entry: | |
%0 = getelementptr i8, ptr %"$__lldb_arg", i32 0 | |
%1 = bitcast ptr %0 to ptr | |
%"$__lldb_arg.addr" = alloca ptr, align 8, !clang.decl.ptr !13 | |
%t = alloca %struct.anon, align 8, !clang.decl.ptr !14 | |
%2 = bitcast ptr %"$__lldb_arg.addr" to ptr | |
call void (ptr, ...) inttoptr (i64 4780377248 to ptr)(ptr %2) | |
store ptr %"$__lldb_arg", ptr %"$__lldb_arg.addr", align 8 | |
%issue_kind = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 0 | |
%message = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 1 | |
%filename = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 2 | |
%line = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 3 | |
%col = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 4 | |
%memory_addr = getelementptr inbounds %struct.anon, ptr %t, i32 0, i32 5 | |
call void @__ubsan_get_current_report_data(ptr %issue_kind, ptr %message, ptr %filename, ptr %line, ptr %col, ptr %memory_addr) #2 | |
%guard.uninitialized = icmp eq i8 0, 0 | |
br i1 %guard.uninitialized, label %init.check, label %init.end, !prof !15 | |
init.check: ; preds = %entry | |
%3 = bitcast ptr %1 to ptr | |
call void (ptr, ...) inttoptr (i64 4780377248 to ptr)(ptr %3) | |
store ptr %t, ptr %1, align 8 | |
br label %init.end | |
init.end: ; preds = %init.check, %entry | |
ret void | |
} | |
; Function Attrs: convergent | |
declare void @__ubsan_get_current_report_data(ptr, ptr, ptr, ptr, ptr, ptr) #1 | |
attributes #0 = { convergent mustprogress noinline nounwind optnone "frame-pointer"="all" "min-legal-vector-width"="0" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #1 = { convergent "frame-pointer"="all" "no-builtins" "no-trapping-math"="true" "stack-protector-buffer-size"="0" } | |
attributes #2 = { convergent "no-builtins" } | |
!clang.global.decl.ptrs = !{!0, !1, !2, !0, !3} | |
!llvm.module.flags = !{!4, !5, !6, !7, !8, !9, !10, !11} | |
!llvm.ident = !{!12} | |
!0 = distinct !{null, i64 4961775816} | |
!1 = !{ptr @"_Z12$__lldb_exprPv", i64 5388460520} | |
!2 = !{ptr @__ubsan_get_current_report_data, i64 5388460032} | |
!3 = distinct !{null, i64 4961775816} | |
!4 = !{i32 1, !"Objective-C Version", i32 2} | |
!5 = !{i32 1, !"Objective-C Image Info Version", i32 0} | |
!6 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,__objc_imageinfo,regular,no_dead_strip"} | |
!7 = !{i32 1, !"Objective-C Garbage Collection", i8 0} | |
!8 = !{i32 1, !"Objective-C Class Properties", i32 64} | |
!9 = !{i32 1, !"Objective-C Enforce ClassRO Pointer Signing", i8 0} | |
!10 = !{i32 1, !"wchar_size", i32 4} | |
!11 = !{i32 7, !"frame-pointer", i32 2} | |
!12 = !{!"Apple clang version 15.0.0 (clang-1500.0.40.1)"} | |
!13 = !{i64 5388460296} | |
!14 = !{i64 5388461768} | |
!15 = !{!"branch_weights", i32 1, i32 1048575} | |
IRExecutionUnit::allocateCodeSection(Size=0xab, Alignment=8, SectionID=0) = 0x137ffc000 | |
IRExecutionUnit::allocateDataSection(Size=0x10, Alignment=8, SectionID=1) = 0x1455f8000 | |
IRExecutionUnit::allocateDataSection(Size=0x16, Alignment=8, SectionID=2) = 0x1455f8010 | |
IRMemoryMap::Malloc (183, 0x8, 0x6, eAllocationPolicyProcessOnly) -> 0x11ceec5f0 | |
IRMemoryMap::Malloc (23, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8600 | |
IRMemoryMap::Malloc (31, 0x8, 0x3, eAllocationPolicyProcessOnly) -> 0x11d0f8620 | |
IRExecutionUnit::getSymbolAddress(Name="___ubsan_get_current_report_data") = 1068992f8 | |
IRMemoryMap::WriteMemory (0x11ceec5f0, 0x137ffc000, 0x171) went to [0x11ceec5f0..0x11ceec6a7) | |
IRMemoryMap::WriteMemory (0x11d0f8600, 0x1455f8000, 0x16) went to [0x11d0f8600..0x11d0f8617) | |
IRMemoryMap::WriteMemory (0x11d0f8620, 0x1455f8010, 0x22) went to [0x11d0f8620..0x11d0f863f) | |
IRExecutionUnit::GetRemoteAddressForLocal() found 0x137ffc000 in [0x137ffc000..0x137ffc0ab], and returned 0x11ceec5f0 from [0x11ceec5f0..0x11ceec69b]. | |
Code can be run in the target. | |
Found function, has local address 0x137ffc000 and remote address 0x11ceec5f0 | |
Function's code range is [0x11ceec5f0+0xab] | |
Function data has contents: | |
0x11ceec5f0: ff 43 01 d1 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 | |
0x11ceec600: f3 03 00 aa 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec610: a0 63 00 d1 00 01 3f d6 b3 83 1e f8 e8 03 00 91 | |
0x11ceec620: 01 21 00 91 e8 03 00 91 02 41 00 91 e8 03 00 91 | |
0x11ceec630: 03 61 00 91 e8 03 00 91 04 71 00 91 e8 03 00 91 | |
0x11ceec640: 05 81 00 91 e0 03 00 91 08 00 00 90 08 41 43 f9 | |
0x11ceec650: 00 01 3f d6 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec660: e0 03 13 aa 00 01 3f d6 e8 03 00 91 68 02 00 f9 | |
0x11ceec670: fd 7b 44 a9 f4 4f 43 a9 ff 43 01 91 c0 03 5f d6 | |
0x11ceec680: f8 92 89 06 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec690: 00 00 00 00 00 00 00 00 00 00 00 | |
Function disassembly: | |
0x11ceec5f0: 0xd10143ff unknown sub sp, sp, #0x50 | |
0x11ceec5f4: 0xa9034ff4 unknown stp x20, x19, [sp, #0x30] | |
0x11ceec5f8: 0xa9047bfd unknown stp x29, x30, [sp, #0x40] | |
0x11ceec5fc: 0x910103fd unknown add x29, sp, #0x40 | |
0x11ceec600: 0xaa0003f3 unknown mov x19, x0 | |
0x11ceec604: 0xd2989408 unknown mov x8, #0xc4a0 | |
0x11ceec608: 0xf2a39dc8 unknown movk x8, #0x1cee, lsl #16 | |
0x11ceec60c: 0xf2c00028 unknown movk x8, #0x1, lsl #32 | |
0x11ceec610: 0xd10063a0 unknown sub x0, x29, #0x18 | |
0x11ceec614: 0xd63f0100 unknown blr x8 | |
0x11ceec618: 0xf81e83b3 unknown stur x19, [x29, #-0x18] | |
0x11ceec61c: 0x910003e8 unknown mov x8, sp | |
0x11ceec620: 0x91002101 unknown add x1, x8, #0x8 | |
0x11ceec624: 0x910003e8 unknown mov x8, sp | |
0x11ceec628: 0x91004102 unknown add x2, x8, #0x10 | |
0x11ceec62c: 0x910003e8 unknown mov x8, sp | |
0x11ceec630: 0x91006103 unknown add x3, x8, #0x18 | |
0x11ceec634: 0x910003e8 unknown mov x8, sp | |
0x11ceec638: 0x91007104 unknown add x4, x8, #0x1c | |
0x11ceec63c: 0x910003e8 unknown mov x8, sp | |
0x11ceec640: 0x91008105 unknown add x5, x8, #0x20 | |
0x11ceec644: 0x910003e0 unknown mov x0, sp | |
0x11ceec648: 0x90000008 unknown adrp x8, 0 | |
0x11ceec64c: 0xf9434108 unknown ldr x8, [x8, #0x680] | |
0x11ceec650: 0xd63f0100 unknown blr x8 | |
0x11ceec654: 0xd2989408 unknown mov x8, #0xc4a0 | |
0x11ceec658: 0xf2a39dc8 unknown movk x8, #0x1cee, lsl #16 | |
0x11ceec65c: 0xf2c00028 unknown movk x8, #0x1, lsl #32 | |
0x11ceec660: 0xaa1303e0 unknown mov x0, x19 | |
0x11ceec664: 0xd63f0100 unknown blr x8 | |
0x11ceec668: 0x910003e8 unknown mov x8, sp | |
0x11ceec66c: 0xf9000268 unknown str x8, [x19] | |
0x11ceec670: 0xa9447bfd unknown ldp x29, x30, [sp, #0x40] | |
0x11ceec674: 0xa9434ff4 unknown ldp x20, x19, [sp, #0x30] | |
0x11ceec678: 0x910143ff unknown add sp, sp, #0x50 | |
0x11ceec67c: 0xd65f03c0 unknown ret | |
0x11ceec680: 0x068992f8 unknown .long 0x068992f8 ; unknown opcode | |
0x11ceec684: 0x00000001 unknown udf #0x1 | |
0x11ceec688: 0x00000000 unknown udf #0x0 | |
0x11ceec68c: 0x00000000 unknown udf #0x0 | |
0x11ceec690: 0x00000000 unknown udf #0x0 | |
0x11ceec694: 0x00000000 unknown udf #0x0 | |
Sections: | |
[0x137ffc000+0xab]->0x11ceec5f0 (alignment 8, section ID 0, name __text) | |
IRMemoryMap::ReadMemory (0x11ceec5f0, 0x60001351c2c0, 0x171) came from [0x11ceec5f0..0x11ceec6a7) | |
0x11ceec5f0: ff 43 01 d1 f4 4f 03 a9 fd 7b 04 a9 fd 03 01 91 | |
0x11ceec600: f3 03 00 aa 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec610: a0 63 00 d1 00 01 3f d6 b3 83 1e f8 e8 03 00 91 | |
0x11ceec620: 01 21 00 91 e8 03 00 91 02 41 00 91 e8 03 00 91 | |
0x11ceec630: 03 61 00 91 e8 03 00 91 04 71 00 91 e8 03 00 91 | |
0x11ceec640: 05 81 00 91 e0 03 00 91 08 00 00 90 08 41 43 f9 | |
0x11ceec650: 00 01 3f d6 08 94 98 d2 c8 9d a3 f2 28 00 c0 f2 | |
0x11ceec660: e0 03 13 aa 00 01 3f d6 e8 03 00 91 68 02 00 f9 | |
0x11ceec670: fd 7b 44 a9 f4 4f 43 a9 ff 43 01 91 c0 03 5f d6 | |
0x11ceec680: f8 92 89 06 01 00 00 00 00 00 00 00 00 00 00 00 | |
0x11ceec690: 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1455f8000+0x10]->0x11d0f8600 (alignment 8, section ID 1, name __bss) | |
IRMemoryMap::ReadMemory (0x11d0f8600, 0x60000031be10, 0x16) came from [0x11d0f8600..0x11d0f8617) | |
0x11d0f8600: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
[0x1455f8010+0x16]->0x11d0f8620 (alignment 8, section ID 2, name __objc_imageinfo) | |
IRMemoryMap::ReadMemory (0x11d0f8620, 0x600000bfa4c0, 0x22) came from [0x11d0f8620..0x11d0f863f) | |
0x11d0f8620: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 | |
0x11d0f8630: 00 00 00 00 00 00 | |
Couldn't find llvm.global_ctors. | |
[ClangASTImporter] Forgetting destination (ASTContext*)0x00000001411BAC00 | |
[ClangASTImporter] Forgetting source->dest (ASTContext*)0x00000001411BAC00->(ASTContext*)0x0000000134A71600 | |
== [UserExpression::Evaluate] Executing expression == | |
IRMemoryMap::Malloc process_sp=0x1464ca600, process_sp->CanJIT()=true, process_sp->IsAlive()=true | |
IRMemoryMap::Malloc (15, 0x8, 0x3, eAllocationPolicyMirror) -> 0x11d0f8640 | |
Materializer::Materialize (frame_sp = 0x125596338, process_address = 0x11d0f8640) materialized: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x600000314cb0, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
0x11d0f8640: EntityResultVariable | |
Pointer: | |
0x11d0f8640: e0 f1 b8 6f 01 00 00 00 | |
Points to process memory: | |
ABIMacOSX_arm64::PrepareTrivialCall (tid = 0x247096, sp = 0x16fb8f230, func_addr = 0x11ceec5f0, return_addr = 0x10026d6ec, arg1 = 0x11d0f8640) | |
About to write arg1 (0x11d0f8640) into x0 | |
-- [UserExpression::Execute] Execution of expression begins -- | |
-- [UserExpression::Execute] Execution of expression completed -- | |
-- [UserExpression::FinalizeJITExecution] Dematerializing after execution -- | |
Materializer::Dematerialize (frame_sp = 0x136821ca8, process_address = 0x11d0f8640) about to dematerialize: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x60000034c7d0, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
0x11d0f8640: EntityResultVariable | |
Pointer: | |
0x11d0f8640: e0 f1 b8 6f 01 00 00 00 | |
Points to process memory: | |
IRMemoryMap::ReadMemory (0x11d0f8640, 0x60000034c7d0, 0x8) came from [0x11d0f8640..0x11d0f864f) | |
LayoutRecordType on (ASTContext*)0x0000000134A71600 'scratch ASTContext' for (RecordDecl*)0x0000000127B56E70 [name = ''] | |
returned project-wide scratch context | |
== [UserExpression::Evaluate] Execution completed normally with result == | |
IRMemoryMap::Free (0x11ceec5f0) freed [0x11ceec5f0..0x11ceec6a7) | |
IRMemoryMap::Free (0x11d0f8600) freed [0x11d0f8600..0x11d0f8617) | |
IRMemoryMap::Free (0x11d0f8620) freed [0x11d0f8620..0x11d0f863f) | |
IRMemoryMap::Free (0x11d0f8640) freed [0x11d0f8640..0x11d0f864f) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment