Created
June 5, 2012 05:06
-
-
Save fjolnir/2872758 to your computer and use it in GitHub Desktop.
This file contains hidden or 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
@className_NSNumber = private unnamed_addr constant [9 x i8] c"NSNumber\00" | |
@sel_numberWithDouble = private unnamed_addr constant [18 x i8] c"numberWithDouble:\00" | |
@className_NSString = private unnamed_addr constant [9 x i8] c"NSString\00" | |
@sel_stringWithUTF8String = private unnamed_addr constant [22 x i8] c"stringWithUTF8String:\00" | |
@0 = private unnamed_addr constant [7 x i8] c"foobar\00" | |
@1 = private unnamed_addr constant [7 x i8] c"barfoo\00" | |
@_NSConcreteGlobalBlock = external global i8** | |
@2 = private unnamed_addr constant [6 x i8] c"%@:%@\00" | |
@__block_descriptor_tmp = internal constant { i64, i64, i8*, i8* } { i64 0, i64 0, i8* getelementptr inbounds ([6 x i8]* @2, i32 0, i32 0), i8* null } | |
@__block_literal_global = internal constant { i8***, i32, i32, i8* ()*, i8* } { i8*** @_NSConcreteGlobalBlock, i32 1342177280, i32 0, i8* ()* @__tq_block_invoke_1, i8* bitcast ({ i64, i64, i8*, i8* }* @__block_descriptor_tmp to i8*) } | |
@3 = private unnamed_addr constant [10 x i8] c"hey world\00" | |
@4 = private unnamed_addr constant [6 x i8] c"%@:%@\00" | |
@__block_descriptor_tmp1 = internal constant { i64, i64, i8*, i8* } { i64 0, i64 0, i8* getelementptr inbounds ([6 x i8]* @4, i32 0, i32 0), i8* null } | |
@__block_literal_global2 = internal constant { i8**, i32, i32, i8* ()*, i8* } { i8** bitcast (i8*** @_NSConcreteGlobalBlock to i8**), i32 1342177280, i32 0, i8* ()* @__tq_block_invoke_0, i8* bitcast ({ i64, i64, i8*, i8* }* @__block_descriptor_tmp1 to i8*) } | |
declare void @objc_allocateClassPair(i8*, i8*, i64) | |
declare void @objc_registerClassPair(i8*) | |
declare i8 @class_addIvar(i8*, i8*, i64, i8, i8*) | |
declare i8 @class_addMethod(i8*, i8*, i8*, i8*) | |
declare i8* @objc_msgSend(i8*, i8*, ...) | |
declare void @objc_storeStrong(i8**, i8*) | |
declare i8* @objc_storeWeak(i8**, i8*) | |
declare i8* @objc_loadWeak(i8**) | |
declare void @objc_destroyWeak(i8**) | |
declare i8* @objc_retain(i8*) | |
declare void @objc_release(i8*) | |
declare i8* @sel_registerName(i8*) | |
declare i8* @sel_getName(i8*) | |
declare i8* @objc_getClass(i8*) | |
define i8* @__tq_block_invoke_0() { | |
entry: | |
%0 = alloca i8* | |
store i8* null, i8** %0 | |
%1 = call i8* @objc_getClass(i8* getelementptr inbounds ([9 x i8]* @className_NSNumber, i32 0, i32 0)) | |
%2 = call i8* @sel_registerName(i8* getelementptr inbounds ([18 x i8]* @sel_numberWithDouble, i32 0, i32 0)) | |
%3 = call i8* (i8*, i8*, ...)* @objc_msgSend(i8* %1, i8* %2, double 3.210000e+02) | |
call void @objc_storeStrong(i8** %0, i8* %3) | |
%4 = alloca i8* | |
store i8* null, i8** %4 | |
call void @objc_storeStrong(i8** %4, i8* bitcast ({ i8***, i32, i32, i8* ()*, i8* }* @__block_literal_global to i8*)) | |
%5 = call i8* @objc_getClass(i8* getelementptr inbounds ([9 x i8]* @className_NSString, i32 0, i32 0)) | |
%6 = call i8* @sel_registerName(i8* getelementptr inbounds ([22 x i8]* @sel_stringWithUTF8String, i32 0, i32 0)) | |
%7 = call i8* (i8*, i8*, ...)* @objc_msgSend(i8* %5, i8* %6, i8* getelementptr inbounds ([10 x i8]* @3, i32 0, i32 0)) | |
ret i8* %7 | |
} | |
define i8* @__tq_block_invoke_1() { | |
entry: | |
%0 = alloca i8* | |
store i8* null, i8** %0 | |
%1 = call i8* @objc_getClass(i8* getelementptr inbounds ([9 x i8]* @className_NSString, i32 0, i32 0)) | |
%2 = call i8* @sel_registerName(i8* getelementptr inbounds ([22 x i8]* @sel_stringWithUTF8String, i32 0, i32 0)) | |
%3 = call i8* (i8*, i8*, ...)* @objc_msgSend(i8* %1, i8* %2, i8* getelementptr inbounds ([7 x i8]* @0, i32 0, i32 0)) | |
call void @objc_storeStrong(i8** %0, i8* %3) | |
%4 = call i8* @objc_getClass(i8* getelementptr inbounds ([9 x i8]* @className_NSString, i32 0, i32 0)) | |
%5 = call i8* @sel_registerName(i8* getelementptr inbounds ([22 x i8]* @sel_stringWithUTF8String, i32 0, i32 0)) | |
%6 = call i8* (i8*, i8*, ...)* @objc_msgSend(i8* %4, i8* %5, i8* getelementptr inbounds ([7 x i8]* @1, i32 0, i32 0)) | |
ret i8* %6 | |
} | |
2012-06-05 14:05:38.277 tranquil[82855:60b] 'root' retval: 0x7f87199033e0: hey world |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment