aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/CodeGen/AsmPrinter/DwarfWriter.cpp40
-rw-r--r--test/DebugInfo/2009-05-13-VariableScope.ll3256
2 files changed, 3276 insertions, 20 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfWriter.cpp b/lib/CodeGen/AsmPrinter/DwarfWriter.cpp
index e9cd280906..35539011aa 100644
--- a/lib/CodeGen/AsmPrinter/DwarfWriter.cpp
+++ b/lib/CodeGen/AsmPrinter/DwarfWriter.cpp
@@ -1286,9 +1286,9 @@ class DwarfDebug : public Dwarf {
/// DbgScopeMap - Tracks the scopes in the current function.
DenseMap<GlobalVariable *, DbgScope *> DbgScopeMap;
- /// DbgConcreteScopeMap - Tracks inlined scopes in the current function.
+ /// DbgInlinedScopeMap - Tracks inlined scopes in the current function.
DenseMap<GlobalVariable *,
- SmallVector<DbgConcreteScope *, 8> > DbgConcreteScopeMap;
+ SmallVector<DbgScope *, 8> > DbgInlinedScopeMap;
/// InlineInfo - Keep track of inlined functions and their location. This
/// information is used to populate debug_inlined section.
@@ -3434,7 +3434,7 @@ public:
if (FunctionDbgScope) {
delete FunctionDbgScope;
DbgScopeMap.clear();
- DbgConcreteScopeMap.clear();
+ DbgInlinedScopeMap.clear();
InlinedVariableScopes.clear();
FunctionDbgScope = NULL;
LexicalScopeStack.clear();
@@ -3619,6 +3619,15 @@ public:
// could be more elegant.
AddUInt(SPDie, DW_AT_inline, 0, DW_INL_declared_not_inlined);
+ // Keep track of the scope that's inlined into this function.
+ DenseMap<GlobalVariable *, SmallVector<DbgScope *, 8> >::iterator
+ SI = DbgInlinedScopeMap.find(GV);
+
+ if (SI == DbgInlinedScopeMap.end())
+ DbgInlinedScopeMap[GV].push_back(Scope);
+ else
+ SI->second.push_back(Scope);
+
AbstractInstanceRootMap[GV] = Scope;
AbstractInstanceRootList.push_back(Scope);
}
@@ -3641,15 +3650,6 @@ public:
LexicalScopeStack.back()->AddConcreteInst(ConcreteScope);
- // Keep track of the scope that's inlined into this function.
- DenseMap<GlobalVariable *, SmallVector<DbgConcreteScope *, 8> >::iterator
- SI = DbgConcreteScopeMap.find(GV);
-
- if (SI == DbgConcreteScopeMap.end())
- DbgConcreteScopeMap[GV].push_back(ConcreteScope);
- else
- SI->second.push_back(ConcreteScope);
-
// Track the start label for this inlined function.
DenseMap<GlobalVariable *, SmallVector<unsigned, 4> >::iterator
I = InlineInfo.find(GV);
@@ -3674,19 +3674,19 @@ public:
DebugTimer->startTimer();
GlobalVariable *GV = SP.getGV();
- DenseMap<GlobalVariable *, SmallVector<DbgConcreteScope *, 8> >::iterator
- I = DbgConcreteScopeMap.find(GV);
+ DenseMap<GlobalVariable *, SmallVector<DbgScope *, 8> >::iterator
+ I = DbgInlinedScopeMap.find(GV);
- if (I == DbgConcreteScopeMap.end()) {
+ if (I == DbgInlinedScopeMap.end()) {
if (TimePassesIsEnabled)
DebugTimer->stopTimer();
return 0;
}
- SmallVector<DbgConcreteScope *, 8> &Scopes = I->second;
+ SmallVector<DbgScope *, 8> &Scopes = I->second;
assert(!Scopes.empty() && "We should have at least one debug scope!");
- DbgConcreteScope *Scope = Scopes.back(); Scopes.pop_back();
+ DbgScope *Scope = Scopes.back(); Scopes.pop_back();
unsigned ID = MMI->NextLabelID();
MMI->RecordUsedDbgLabel(ID);
Scope->setEndLabelID(ID);
@@ -3714,9 +3714,9 @@ public:
return;
}
- DenseMap<GlobalVariable *, SmallVector<DbgConcreteScope *, 8> >::iterator
- I = DbgConcreteScopeMap.find(SP.getGV());
- if (I != DbgConcreteScopeMap.end())
+ DenseMap<GlobalVariable *, SmallVector<DbgScope *, 8> >::iterator
+ I = DbgInlinedScopeMap.find(SP.getGV());
+ if (I != DbgInlinedScopeMap.end())
InlinedVariableScopes[DeclareMI] = I->second.back();
if (TimePassesIsEnabled)
diff --git a/test/DebugInfo/2009-05-13-VariableScope.ll b/test/DebugInfo/2009-05-13-VariableScope.ll
new file mode 100644
index 0000000000..a85fee685a
--- /dev/null
+++ b/test/DebugInfo/2009-05-13-VariableScope.ll
@@ -0,0 +1,3256 @@
+; RUN: llvm-as < %s | llc -O0
+
+module asm "\09.lazy_reference .objc_class_name_NSTextFieldCell"
+module asm "\09.objc_class_name_DVIconAndTextCell=0"
+module asm "\09.globl .objc_class_name_DVIconAndTextCell"
+module asm ""
+module asm ""
+ type { i32, [2 x %struct._objc_ivar] } ; type %0
+ type { i8*, i32, [23 x %struct._objc_method] } ; type %1
+ type { i32, %struct.objc_selector*, i16, i16, [1 x i8*] } ; type %2
+ type opaque ; type %3
+ type opaque ; type %4
+ type opaque ; type %5
+ type opaque ; type %6
+ type opaque ; type %7
+ type opaque ; type %8
+ type opaque ; type %9
+ %llvm.dbg.anchor.type = type { i32, i32 }
+ %llvm.dbg.basictype.type = type { i32, { }*, i8*, { }*, i32, i64, i64, i64, i32, i32 }
+ %llvm.dbg.compile_unit.type = type { i32, { }*, i32, i8*, i8*, i8*, i1, i1, i8*, i32 }
+ %llvm.dbg.composite.type = type { i32, { }*, i8*, { }*, i32, i64, i64, i64, i32, { }*, { }*, i32 }
+ %llvm.dbg.derivedtype.type = type { i32, { }*, i8*, { }*, i32, i64, i64, i64, i32, { }* }
+ %llvm.dbg.subprogram.type = type { i32, { }*, { }*, i8*, i8*, i8*, { }*, i32, { }*, i1, i1 }
+ %llvm.dbg.variable.type = type { i32, { }*, i8*, { }*, i32, { }* }
+ %struct.CGPoint = type <{ double, double }>
+ %struct.CGRect = type <{ %struct.CGPoint, %struct.CGPoint }>
+ %struct.CGSize = type <{ double, double }>
+ %struct.NSConstantString = type <{ i32*, i32, i8*, i32 }>
+ %struct._NSZone = type opaque
+ %struct._objc_cache = type opaque
+ %struct._objc_category = type { i8*, i8*, %struct._objc_method_list*, %struct._objc_method_list*, %struct._objc_protocol_list*, i32, %struct._prop_list_t* }
+ %struct._objc_class = type { %struct._objc_class*, %struct._objc_class*, i8*, i32, i32, i32, %struct._objc_ivar_list*, %struct._objc_method_list*, %struct._objc_cache*, %struct._objc_protocol_list*, i8*, %struct._objc_class_extension* }
+ %struct._objc_class_extension = type { i32, i8*, %struct._prop_list_t* }
+ %struct._objc_exception_data = type { [18 x i32], [4 x i8*] }
+ %struct._objc_ivar = type { i8*, i8*, i32 }
+ %struct._objc_ivar_list = type opaque
+ %struct._objc_method = type { %struct.objc_selector*, i8*, i8* }
+ %struct._objc_method_description = type { %struct.objc_selector*, i8* }
+ %struct._objc_method_description_list = type { i32, [0 x %struct._objc_method_description] }
+ %struct._objc_method_list = type opaque
+ %struct._objc_module = type { i32, i32, i8*, %struct._objc_symtab* }
+ %struct._objc_protocol = type { %struct._objc_protocol_extension*, i8*, %struct._objc_protocol_list*, %struct._objc_method_description_list*, %struct._objc_method_description_list* }
+ %struct._objc_protocol_extension = type { i32, %struct._objc_method_description_list*, %struct._objc_method_description_list*, %struct._prop_list_t* }
+ %struct._objc_protocol_list = type { %struct._objc_protocol_list*, i32, [0 x %struct._objc_protocol] }
+ %struct._objc_super = type <{ %struct.objc_object*, %struct.objc_class* }>
+ %struct._objc_symtab = type { i32, %struct.objc_selector*, i16, i16, [0 x i8*] }
+ %struct._prop_list_t = type { i32, i32, [0 x %struct._prop_t] }
+ %struct._prop_t = type { i8*, i8* }
+ %struct.objc_class = type opaque
+ %struct.objc_object = type <{ %struct.objc_class* }>
+ %struct.objc_selector = type opaque
+@"\01L_OBJC_IMAGE_INFO" = internal constant [2 x i32] [i32 0, i32 16], section "__OBJC, __image_info,regular" ; <[2 x i32]*> [#uses=1]
+@llvm.dbg.compile_units = linkonce constant %llvm.dbg.anchor.type { i32 458752, i32 17 }, section "llvm.metadata" ; <%llvm.dbg.anchor.type*> [#uses=1]
+@.str = internal constant [20 x i8] c"DVIconAndTextCell.m\00", section "llvm.metadata" ; <[20 x i8]*> [#uses=1]
+@.str1 = internal constant [103 x i8] c"/Volumes/Data/ddunbar/private/GarnetXcodeIDE/XcodeIDE/Frameworks/DocSetManagementViewing/DocSetViewing\00", section "llvm.metadata" ; <[103 x i8]*> [#uses=1]
+@.str2 = internal constant [10 x i8] c"clang 1.0\00", section "llvm.metadata" ; <[10 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([20 x i8]* @.str, i32 0, i32 0), i8* getelementptr ([103 x i8]* @.str1, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str3 = internal constant [7 x i8] c"objc.h\00", section "llvm.metadata" ; <[7 x i8]*> [#uses=1]
+@.str4 = internal constant [18 x i8] c"/usr/include/objc\00", section "llvm.metadata" ; <[18 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit5 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([7 x i8]* @.str3, i32 0, i32 0), i8* getelementptr ([18 x i8]* @.str4, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str6 = internal constant [12 x i8] c"objc_object\00", section "llvm.metadata" ; <[12 x i8]*> [#uses=1]
+@.str7 = internal constant [11 x i8] c"objc_class\00", section "llvm.metadata" ; <[11 x i8]*> [#uses=1]
+@llvm.dbg.composite8 = internal constant %llvm.dbg.composite.type { i32 458771, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*), i8* getelementptr ([11 x i8]* @.str7, i32 0, i32 0), { }* null, i32 0, i64 0, i64 0, i64 0, i32 0, { }* null, { }* null, i32 0 }, section "llvm.metadata" ; <%llvm.dbg.composite.type*> [#uses=1]
+@llvm.dbg.derivedtype = internal constant %llvm.dbg.derivedtype.type { i32 458767, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*), i8* null, { }* null, i32 0, i64 32, i64 32, i64 0, i32 0, { }* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite8 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str9 = internal constant [6 x i8] c"Class\00", section "llvm.metadata" ; <[6 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype10 = internal constant %llvm.dbg.derivedtype.type { i32 458774, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*), i8* getelementptr ([6 x i8]* @.str9, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit5 to { }*), i32 35, i64 0, i64 0, i64 0, i32 0, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str11 = internal constant [4 x i8] c"isa\00", section "llvm.metadata" ; <[4 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype12 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*), i8* getelementptr ([4 x i8]* @.str11, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit5 to { }*), i32 37, i64 32, i64 32, i64 0, i32 0, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype10 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@llvm.dbg.array = internal constant [1 x { }*] [{ }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype12 to { }*)], section "llvm.metadata" ; <[1 x { }*]*> [#uses=1]
+@llvm.dbg.composite13 = internal constant %llvm.dbg.composite.type { i32 458771, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*), i8* getelementptr ([12 x i8]* @.str6, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit5 to { }*), i32 36, i64 32, i64 32, i64 0, i32 0, { }* null, { }* bitcast ([1 x { }*]* @llvm.dbg.array to { }*), i32 0 }, section "llvm.metadata" ; <%llvm.dbg.composite.type*> [#uses=1]
+@llvm.dbg.derivedtype14 = internal constant %llvm.dbg.derivedtype.type { i32 458767, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*), i8* null, { }* null, i32 0, i64 32, i64 32, i64 0, i32 0, { }* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite13 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str15 = internal constant [3 x i8] c"id\00", section "llvm.metadata" ; <[3 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype16 = internal constant %llvm.dbg.derivedtype.type { i32 458774, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*), i8* getelementptr ([3 x i8]* @.str15, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit5 to { }*), i32 38, i64 0, i64 0, i64 0, i32 0, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype14 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@llvm.dbg.subprograms = linkonce constant %llvm.dbg.anchor.type { i32 458752, i32 46 }, section "llvm.metadata" ; <%llvm.dbg.anchor.type*> [#uses=1]
+@.str17 = internal constant [36 x i8] c"\01-[DVIconAndTextCell initTextCell:]\00", section "llvm.metadata" ; <[36 x i8]*> [#uses=1]
+@llvm.dbg.subprogram = internal constant %llvm.dbg.subprogram.type { i32 458798, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.subprograms to { }*), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*), i8* getelementptr ([36 x i8]* @.str17, i32 0, i32 0), i8* getelementptr ([36 x i8]* @.str17, i32 0, i32 0), i8* null, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*), i32 15, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype16 to { }*), i1 true, i1 true }, section "llvm.metadata" ; <%llvm.dbg.subprogram.type*> [#uses=1]
+@.str18 = internal constant [10 x i8] c"<unknown>\00", section "llvm.metadata" ; <[10 x i8]*> [#uses=1]
+@.str19 = internal constant [22 x i8] c"/Volumes/Sandbox/llvm\00", section "llvm.metadata" ; <[22 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit20 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([10 x i8]* @.str18, i32 0, i32 0), i8* getelementptr ([22 x i8]* @.str19, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str21 = internal constant [20 x i8] c"DVIconAndTextCell.h\00", section "llvm.metadata" ; <[20 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit22 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([20 x i8]* @.str21, i32 0, i32 0), i8* getelementptr ([103 x i8]* @.str1, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str23 = internal constant [18 x i8] c"DVIconAndTextCell\00", section "llvm.metadata" ; <[18 x i8]*> [#uses=1]
+@.str24 = internal constant [18 x i8] c"NSTextFieldCell.h\00", section "llvm.metadata" ; <[18 x i8]*> [#uses=1]
+@.str25 = internal constant [52 x i8] c"/System/Library/Frameworks/AppKit.framework/Headers\00", section "llvm.metadata" ; <[52 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit26 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([18 x i8]* @.str24, i32 0, i32 0), i8* getelementptr ([52 x i8]* @.str25, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str27 = internal constant [16 x i8] c"NSTextFieldCell\00", section "llvm.metadata" ; <[16 x i8]*> [#uses=1]
+@.str29 = internal constant [15 x i8] c"NSActionCell.h\00", section "llvm.metadata" ; <[15 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit30 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([15 x i8]* @.str29, i32 0, i32 0), i8* getelementptr ([52 x i8]* @.str25, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str31 = internal constant [13 x i8] c"NSActionCell\00", section "llvm.metadata" ; <[13 x i8]*> [#uses=1]
+@.str33 = internal constant [9 x i8] c"NSCell.h\00", section "llvm.metadata" ; <[9 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit34 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([9 x i8]* @.str33, i32 0, i32 0), i8* getelementptr ([52 x i8]* @.str25, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str35 = internal constant [7 x i8] c"NSCell\00", section "llvm.metadata" ; <[7 x i8]*> [#uses=1]
+@.str37 = internal constant [11 x i8] c"NSObject.h\00", section "llvm.metadata" ; <[11 x i8]*> [#uses=1]
+@.str38 = internal constant [56 x i8] c"/System/Library/Frameworks/Foundation.framework/Headers\00", section "llvm.metadata" ; <[56 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit39 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([11 x i8]* @.str37, i32 0, i32 0), i8* getelementptr ([56 x i8]* @.str38, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str40 = internal constant [9 x i8] c"NSObject\00", section "llvm.metadata" ; <[9 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype42 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([4 x i8]* @.str11, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit39 to { }*), i32 66, i64 32, i64 32, i64 0, i32 2, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype10 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@llvm.dbg.array43 = internal constant [1 x { }*] [{ }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype42 to { }*)], section "llvm.metadata" ; <[1 x { }*]*> [#uses=1]
+@llvm.dbg.composite44 = internal constant %llvm.dbg.composite.type { i32 458771, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([9 x i8]* @.str40, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit39 to { }*), i32 65, i64 32, i64 32, i64 0, i32 0, { }* null, { }* bitcast ([1 x { }*]* @llvm.dbg.array43 to { }*), i32 1 }, section "llvm.metadata" ; <%llvm.dbg.composite.type*> [#uses=1]
+@llvm.dbg.derivedtype45 = internal constant %llvm.dbg.derivedtype.type { i32 458780, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* null, { }* null, i32 0, i64 0, i64 0, i64 0, i32 0, { }* bitcast (%llvm.dbg.composite.type* @llvm.dbg.composite44 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str46 = internal constant [10 x i8] c"_contents\00", section "llvm.metadata" ; <[10 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype47 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([10 x i8]* @.str46, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 168, i64 32, i64 32, i64 32, i32 2, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype16 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str48 = internal constant [9 x i8] c"__CFlags\00", section "llvm.metadata" ; <[9 x i8]*> [#uses=1]
+@.str50 = internal constant [13 x i8] c"unsigned int\00", section "llvm.metadata" ; <[13 x i8]*> [#uses=1]
+@llvm.dbg.basictype = internal constant %llvm.dbg.basictype.type { i32 458788, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([13 x i8]* @.str50, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i32 0, i64 32, i64 32, i64 0, i32 0, i32 7 }, section "llvm.metadata" ; <%llvm.dbg.basictype.type*> [#uses=1]
+@.str51 = internal constant [6 x i8] c"state\00", section "llvm.metadata" ; <[6 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype52 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([6 x i8]* @.str51, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 112, i64 1, i64 32, i64 0, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str53 = internal constant [12 x i8] c"highlighted\00", section "llvm.metadata" ; <[12 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype54 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([12 x i8]* @.str53, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 113, i64 1, i64 32, i64 1, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str55 = internal constant [9 x i8] c"disabled\00", section "llvm.metadata" ; <[9 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype56 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([9 x i8]* @.str55, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 114, i64 1, i64 32, i64 2, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str57 = internal constant [9 x i8] c"editable\00", section "llvm.metadata" ; <[9 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype58 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([9 x i8]* @.str57, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 115, i64 1, i64 32, i64 3, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str59 = internal constant [14 x i8] c"unsigned long\00", section "llvm.metadata" ; <[14 x i8]*> [#uses=1]
+@llvm.dbg.basictype60 = internal constant %llvm.dbg.basictype.type { i32 458788, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([14 x i8]* @.str59, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i32 0, i64 32, i64 32, i64 0, i32 0, i32 7 }, section "llvm.metadata" ; <%llvm.dbg.basictype.type*> [#uses=1]
+@.str61 = internal constant [16 x i8] c"NSObjCRuntime.h\00", section "llvm.metadata" ; <[16 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit62 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([16 x i8]* @.str61, i32 0, i32 0), i8* getelementptr ([56 x i8]* @.str38, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str63 = internal constant [11 x i8] c"NSUInteger\00", section "llvm.metadata" ; <[11 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype64 = internal constant %llvm.dbg.derivedtype.type { i32 458774, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([11 x i8]* @.str63, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit62 to { }*), i32 161, i64 0, i64 0, i64 0, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype60 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str65 = internal constant [11 x i8] c"NSCellType\00", section "llvm.metadata" ; <[11 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype66 = internal constant %llvm.dbg.derivedtype.type { i32 458774, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([11 x i8]* @.str65, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 31, i64 0, i64 0, i64 0, i32 0, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype64 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str67 = internal constant [5 x i8] c"type\00", section "llvm.metadata" ; <[5 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype68 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([5 x i8]* @.str67, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 116, i64 2, i64 32, i64 4, i32 0, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype66 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str69 = internal constant [10 x i8] c"vCentered\00", section "llvm.metadata" ; <[10 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype70 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([10 x i8]* @.str69, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 117, i64 1, i64 32, i64 6, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str71 = internal constant [10 x i8] c"hCentered\00", section "llvm.metadata" ; <[10 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype72 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([10 x i8]* @.str71, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 118, i64 1, i64 32, i64 7, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str73 = internal constant [9 x i8] c"bordered\00", section "llvm.metadata" ; <[9 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype74 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([9 x i8]* @.str73, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 119, i64 1, i64 32, i64 8, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str75 = internal constant [8 x i8] c"bezeled\00", section "llvm.metadata" ; <[8 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype76 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([8 x i8]* @.str75, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 120, i64 1, i64 32, i64 9, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str77 = internal constant [11 x i8] c"selectable\00", section "llvm.metadata" ; <[11 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype78 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([11 x i8]* @.str77, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 121, i64 1, i64 32, i64 10, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str79 = internal constant [11 x i8] c"scrollable\00", section "llvm.metadata" ; <[11 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype80 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([11 x i8]* @.str79, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 122, i64 1, i64 32, i64 11, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str81 = internal constant [11 x i8] c"continuous\00", section "llvm.metadata" ; <[11 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype82 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([11 x i8]* @.str81, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 123, i64 1, i64 32, i64 12, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str83 = internal constant [15 x i8] c"actOnMouseDown\00", section "llvm.metadata" ; <[15 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype84 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([15 x i8]* @.str83, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 124, i64 1, i64 32, i64 13, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str85 = internal constant [7 x i8] c"isLeaf\00", section "llvm.metadata" ; <[7 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype86 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([7 x i8]* @.str85, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 125, i64 1, i64 32, i64 14, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str87 = internal constant [19 x i8] c"invalidObjectValue\00", section "llvm.metadata" ; <[19 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype88 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([19 x i8]* @.str87, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 126, i64 1, i64 32, i64 15, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str89 = internal constant [12 x i8] c"invalidFont\00", section "llvm.metadata" ; <[12 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype90 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([12 x i8]* @.str89, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 127, i64 1, i64 32, i64 16, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str91 = internal constant [19 x i8] c"NSParagraphStyle.h\00", section "llvm.metadata" ; <[19 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit92 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([19 x i8]* @.str91, i32 0, i32 0), i8* getelementptr ([52 x i8]* @.str25, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str93 = internal constant [16 x i8] c"NSLineBreakMode\00", section "llvm.metadata" ; <[16 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype94 = internal constant %llvm.dbg.derivedtype.type { i32 458774, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([16 x i8]* @.str93, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit92 to { }*), i32 28, i64 0, i64 0, i64 0, i32 0, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype64 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str95 = internal constant [14 x i8] c"lineBreakMode\00", section "llvm.metadata" ; <[14 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype96 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([14 x i8]* @.str95, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 128, i64 3, i64 32, i64 17, i32 0, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype94 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str97 = internal constant [14 x i8] c"cellReserved1\00", section "llvm.metadata" ; <[14 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype98 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([14 x i8]* @.str97, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 129, i64 2, i64 32, i64 20, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str99 = internal constant [15 x i8] c"singleLineMode\00", section "llvm.metadata" ; <[15 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype100 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([15 x i8]* @.str99, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 130, i64 1, i64 32, i64 22, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str101 = internal constant [18 x i8] c"actOnMouseDragged\00", section "llvm.metadata" ; <[18 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype102 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([18 x i8]* @.str101, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 131, i64 1, i64 32, i64 23, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str103 = internal constant [9 x i8] c"isLoaded\00", section "llvm.metadata" ; <[9 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype104 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([9 x i8]* @.str103, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 132, i64 1, i64 32, i64 24, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str105 = internal constant [17 x i8] c"truncateLastLine\00", section "llvm.metadata" ; <[17 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype106 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([17 x i8]* @.str105, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 133, i64 1, i64 32, i64 25, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str107 = internal constant [17 x i8] c"dontActOnMouseUp\00", section "llvm.metadata" ; <[17 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype108 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([17 x i8]* @.str107, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 134, i64 1, i64 32, i64 26, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str109 = internal constant [8 x i8] c"isWhite\00", section "llvm.metadata" ; <[8 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype110 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([8 x i8]* @.str109, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 135, i64 1, i64 32, i64 27, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str111 = internal constant [21 x i8] c"useUserKeyEquivalent\00", section "llvm.metadata" ; <[21 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype112 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([21 x i8]* @.str111, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 136, i64 1, i64 32, i64 28, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str113 = internal constant [20 x i8] c"showsFirstResponder\00", section "llvm.metadata" ; <[20 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype114 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([20 x i8]* @.str113, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 137, i64 1, i64 32, i64 29, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str115 = internal constant [14 x i8] c"focusRingType\00", section "llvm.metadata" ; <[14 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype116 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([14 x i8]* @.str115, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 138, i64 2, i64 32, i64 30, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str117 = internal constant [14 x i8] c"wasSelectable\00", section "llvm.metadata" ; <[14 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype118 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([14 x i8]* @.str117, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 139, i64 1, i64 32, i64 32, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str119 = internal constant [17 x i8] c"hasInvalidObject\00", section "llvm.metadata" ; <[17 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype120 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([17 x i8]* @.str119, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 140, i64 1, i64 32, i64 33, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str121 = internal constant [28 x i8] c"allowsEditingTextAttributes\00", section "llvm.metadata" ; <[28 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype122 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([28 x i8]* @.str121, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 141, i64 1, i64 32, i64 34, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str123 = internal constant [16 x i8] c"importsGraphics\00", section "llvm.metadata" ; <[16 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype124 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([16 x i8]* @.str123, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 142, i64 1, i64 32, i64 35, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str125 = internal constant [9 x i8] c"NSText.h\00", section "llvm.metadata" ; <[9 x i8]*> [#uses=1]
+@llvm.dbg.compile_unit126 = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 16, i8* getelementptr ([9 x i8]* @.str125, i32 0, i32 0), i8* getelementptr ([52 x i8]* @.str25, i32 0, i32 0), i8* getelementptr ([10 x i8]* @.str2, i32 0, i32 0), i1 false, i1 false, i8* null, i32 1 }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
+@.str127 = internal constant [16 x i8] c"NSTextAlignment\00", section "llvm.metadata" ; <[16 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype128 = internal constant %llvm.dbg.derivedtype.type { i32 458774, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([16 x i8]* @.str127, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit126 to { }*), i32 36, i64 0, i64 0, i64 0, i32 0, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype64 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str129 = internal constant [10 x i8] c"alignment\00", section "llvm.metadata" ; <[10 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype130 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([10 x i8]* @.str129, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 143, i64 3, i64 32, i64 36, i32 0, { }* bitcast (%llvm.dbg.derivedtype.type* @llvm.dbg.derivedtype128 to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str131 = internal constant [19 x i8] c"layoutDirectionRTL\00", section "llvm.metadata" ; <[19 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype132 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([19 x i8]* @.str131, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 144, i64 1, i64 32, i64 39, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str133 = internal constant [16 x i8] c"backgroundStyle\00", section "llvm.metadata" ; <[16 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype134 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([16 x i8]* @.str133, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 145, i64 3, i64 32, i64 40, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str135 = internal constant [14 x i8] c"cellReserved2\00", section "llvm.metadata" ; <[14 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype136 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([14 x i8]* @.str135, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 146, i64 4, i64 32, i64 43, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str137 = internal constant [22 x i8] c"refusesFirstResponder\00", section "llvm.metadata" ; <[22 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype138 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([22 x i8]* @.str137, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 147, i64 1, i64 32, i64 47, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str139 = internal constant [21 x i8] c"needsHighlightedText\00", section "llvm.metadata" ; <[21 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype140 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([21 x i8]* @.str139, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 148, i64 1, i64 32, i64 48, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str141 = internal constant [15 x i8] c"dontAllowsUndo\00", section "llvm.metadata" ; <[15 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype142 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([15 x i8]* @.str141, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 149, i64 1, i64 32, i64 49, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str143 = internal constant [17 x i8] c"currentlyEditing\00", section "llvm.metadata" ; <[17 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype144 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([17 x i8]* @.str143, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 150, i64 1, i64 32, i64 50, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str145 = internal constant [17 x i8] c"allowsMixedState\00", section "llvm.metadata" ; <[17 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype146 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([17 x i8]* @.str145, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 151, i64 1, i64 32, i64 51, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str147 = internal constant [13 x i8] c"inMixedState\00", section "llvm.metadata" ; <[13 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype148 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([13 x i8]* @.str147, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 152, i64 1, i64 32, i64 52, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str149 = internal constant [24 x i8] c"sendsActionOnEndEditing\00", section "llvm.metadata" ; <[24 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype150 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([24 x i8]* @.str149, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 153, i64 1, i64 32, i64 53, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str151 = internal constant [13 x i8] c"inSendAction\00", section "llvm.metadata" ; <[13 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype152 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([13 x i8]* @.str151, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 154, i64 1, i64 32, i64 54, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str153 = internal constant [11 x i8] c"menuWasSet\00", section "llvm.metadata" ; <[11 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype154 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit20 to { }*), i8* getelementptr ([11 x i8]* @.str153, i32 0, i32 0), { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit34 to { }*), i32 155, i64 1, i64 32, i64 55, i32 0, { }* bitcast (%llvm.dbg.basictype.type* @llvm.dbg.basictype to { }*) }, section "llvm.metadata" ; <%llvm.dbg.derivedtype.type*> [#uses=1]
+@.str155 = internal constant [12 x i8] c"controlTint\00", section "llvm.metadata" ; <[12 x i8]*> [#uses=1]
+@llvm.dbg.derivedtype156 = internal constant %llvm.dbg.derivedtype.type { i32 458765, { }* bitcast (%llvm.dbg.comp