Slide 43
Slide 43 text
ฤᩄޙత LLVM IR
; ModuleID = ''
source_filename = ""
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
module asm ".section .swift1_autolink_entries,\220x80000000\22"
%TScT = type <{ %swift.refcounted* }>
%swift.refcounted = type { %swift.type*, i64 }
%swift.type = type { i64 }
%swift.async_func_pointer = type <{ i32, i32 }>
%swift.full_boxmetadata = type { void (%swift.refcounted*)*, i8**, %swift.type, i32, i8* }
%swift.full_type = type { i8**, %swift.type }
%swift.protocol = type { i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i32, i32, i32, i32, i32, i32 }
%swift.method_descriptor = type { i32, i32 }
%T7counter7CounterC = type <{ %swift.refcounted, %swift.defaultactor, %TSi }>
%swift.defaultactor = type { [12 x i8*] }
%TSi = type <{ i64 }>
%swift.type_metadata_record = type { i32 }
%swift.vwtable = type { i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i64, i64, i32, i32 }
%TScPSg = type <{}>
%swift.opaque = type opaque
%swift.metadata_response = type { %swift.type*, i64 }
%swift.function = type { i8*, %swift.refcounted* }
%swift.type_descriptor = type opaque
%"$s7counter7CounterC5countSivM.Frame" = type { [24 x i8] }
%swift.context = type { %swift.context*, void (%swift.context*)*, i64 }
%"$s7counter7CounterC3incyyYaF.Frame" = type { %swift.context*, %T7counter7CounterC*, %T7counter7CounterC* }
%"$s7counteryyYaYbcfU_.Frame" = type { %swift.context*, %T7counter7CounterC*, i64, %T7counter7CounterC*, i8*, i64, i64, i64 }
%swift.executor = type { i64, i64 }
%Ts28__ContiguousArrayStorageBaseC = type opaque
%Any = type { [24 x i8], %swift.type* }
%swift.bridge = type opaque
%TSa = type <{ %Ts22_ContiguousArrayBufferV }>
%Ts22_ContiguousArrayBufferV = type <{ %Ts28__ContiguousArrayStorageBaseC* }>
%"$sIeghH_ytIeghHr_TR.Frame" = type { %swift.context*, i8* }
%"$sIeghH_ytIeghHr_TRTA.Frame" = type { %swift.context*, i8* }
%swift.async_task_and_context = type { %swift.task*, %swift.context* }
%swift.task = type { %swift.refcounted, i8*, i8*, i32, i32, i8*, i8*, i8*, %swift.context*, i64 }
%"$sxIeghHr_xs5Error_pIegHrzo_s5NeverORs_r0_lTR.Frame" = type { %swift.context*, i8* }
%swift.error = type opaque
%"$sxIeghHr_xs5Error_pIegHrzo_s5NeverORs_r0_lTRTA.Frame" = type { %swift.context*, i8* }
@"$s7counter4taskScTyyts5NeverOGvp" = hidden global %TScT zeroinitializer, align 8
@"symbolic ScPSg" = linkonce_odr hidden constant <{ [5 x i8], i8 }> <{ [5 x i8] c"ScPSg", i8 0 }>, section "swift5_typeref", align 2
@"$sScPSgMD" = linkonce_odr hidden global { i32, i32 } { i32 trunc (i64 sub (i64 ptrtoint (<{ [5 x i8], i8 }>* @"symbolic ScPSg" to i64), i64 ptrtoint ({ i32, i32 }* @"$sScPSgMD" to i64)) to i32), i32 -5 }, align 8
@"$s7counteryyYaYbcfU_Tu" = internal global %swift.async_func_pointer <{ i32 trunc (i64 sub (i64 ptrtoint (void (%swift.context*)* @"$s7counteryyYaYbcfU_" to i64), i64 ptrtoint (%swift.async_func_pointer* @"$s7counteryyYaYbcfU_Tu" to i64)) to i32), i32 96 }>, section ".rodata", align 8
@"$sIeghH_ytIeghHr_TRTu" = linkonce_odr hidden global %swift.async_func_pointer <{ i32 trunc (i64 sub (i64 ptrtoint (void (%swift.opaque*, %swift.context*, i8*, %swift.refcounted*)* @"$sIeghH_ytIeghHr_TR" to i64), i64 ptrtoint (%swift.async_func_pointer* @"$sIeghH_ytIeghHr_TRTu" to i64)) to i32), i32 48 }>, section ".rodata", align 8
@"symbolic IeghH_" = linkonce_odr hidden constant <{ [6 x i8], i8 }> <{ [6 x i8] c"IeghH_", i8 0 }>, section "swift5_typeref", align 2
@"\01l__swift5_reflection_descriptor" = private constant { i32, i32, i32, i32 } { i32 1, i32 0, i32 0, i32 trunc (i64 sub (i64 ptrtoint (<{ [6 x i8], i8 }>* @"symbolic IeghH_" to i64), i64 ptrtoint (i32* getelementptr inbounds ({ i32, i32, i32, i32 }, { i32, i32, i32, i32 }* @"\01l__swift5_reflection_descriptor", i32 0, i32 3) to i64)) to i32) }, section "swift5_capture",
align 4
@metadata = private constant %swift.full_boxmetadata { void (%swift.refcounted*)* @objectdestroy, i8** null, %swift.type { i64 1024 }, i32 16, i8* bitcast ({ i32, i32, i32, i32 }* @"\01l__swift5_reflection_descriptor" to i8*) }, align 8
@"$sIeghH_ytIeghHr_TRTATu" = internal global %swift.async_func_pointer <{ i32 trunc (i64 sub (i64 ptrtoint (void (%swift.opaque*, %swift.context*, %swift.refcounted*)* @"$sIeghH_ytIeghHr_TRTA" to i64), i64 ptrtoint (%swift.async_func_pointer* @"$sIeghH_ytIeghHr_TRTATu" to i64)) to i32), i32 48 }>, section ".rodata", align 8
@"$sytN" = external global %swift.full_type
@"$s7counter7CounterC3incyyYaFTu" = hidden global %swift.async_func_pointer <{ i32 trunc (i64 sub (i64 ptrtoint (void (%swift.context*, %T7counter7CounterC*)* @"$s7counter7CounterC3incyyYaF" to i64), i64 ptrtoint (%swift.async_func_pointer* @"$s7counter7CounterC3incyyYaFTu" to i64)) to i32), i32 48 }>, section ".rodata", align 8
@"$sScAMp" = external global %swift.protocol, align 4
@"got.$sScAMp" = private unnamed_addr constant %swift.protocol* @"$sScAMp"
@"$sScA15unownedExecutorScevgTq" = external global %swift.method_descriptor, align 4
@"got.$sScA15unownedExecutorScevgTq" = private unnamed_addr constant %swift.method_descriptor* @"$sScA15unownedExecutorScevgTq"
@"$s7counter7CounterCScAAAMcMK" = internal global [16 x i8*] zeroinitializer
@"$s7counter7CounterCScAAAMc" = hidden constant { i32, i32, i32, i32, i32, i32, i32, i16, i16, i32, i32 } { i32 add (i32 trunc (i64 sub (i64 ptrtoint (%swift.protocol** @"got.$sScAMp" to i64), i64 ptrtoint ({ i32, i32, i32, i32, i32, i32, i32, i16, i16, i32, i32 }* @"$s7counter7CounterCScAAAMc" to i64)) to i32), i32 1), i32 trunc (i64 sub (i64 ptrtoint (<{ i32, i32, i32,
i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, %swift.method_descriptor, %swift.method_descriptor, %swift.method_descriptor, %swift.method_descriptor, %swift.method_descriptor }>* @"$s7counter7CounterCMn" to i64), i64 ptrtoint (i32* getelementptr inbounds ({ i32, i32, i32, i32, i32, i32, i32, i16, i16, i32, i32 }, { i32, i32, i32, i32, i32, i32, i32, i16, i16, i32, i32
}* @"$s7counter7CounterCScAAAMc", i32 0, i32 1) to i64)) to i32), i32 0, i32 196608, i32 1, i32 add (i32 trunc (i64 sub (i64 ptrtoint (%swift.method_descriptor** @"got.$sScA15unownedExecutorScevgTq" to i64), i64 ptrtoint (i32* getelementptr inbounds ({ i32, i32, i32, i32, i32, i32, i32, i16, i16, i32, i32 }, { i32, i32, i32, i32, i32, i32, i32, i16, i16, i32, i32 }*
@"$s7counter7CounterCScAAAMc", i32 0, i32 5) to i64)) to i32), i32 1), i32 trunc (i64 sub (i64 ptrtoint ({ i64, i64 } (%T7counter7CounterC*, %swift.type*, i8**)* @"$s7counter7CounterCScAAAScA15unownedExecutorScevgTW" to i64), i64 ptrtoint (i32* getelementptr inbounds ({ i32, i32, i32, i32, i32, i32, i32, i16, i16, i32, i32 }, { i32, i32, i32, i32, i32, i32, i32, i16, i16,
i32, i32 }* @"$s7counter7CounterCScAAAMc", i32 0, i32 6) to i64)) to i32), i16 0, i16 1, i32 0, i32 trunc (i64 sub (i64 ptrtoint ([16 x i8*]* @"$s7counter7CounterCScAAAMcMK" to i64), i64 ptrtoint (i32* getelementptr inbounds ({ i32, i32, i32, i32, i32, i32, i32, i16, i16, i32, i32 }, { i32, i32, i32, i32, i32, i32, i32, i16, i16, i32, i32 }* @"$s7counter7CounterCScAAAMc",
i32 0, i32 10) to i64)) to i32) }, section ".rodata", align 4
@"\01l_entry_point" = private constant { i32 } { i32 trunc (i64 sub (i64 ptrtoint (i32 (i32, i8**)* @main to i64), i64 ptrtoint ({ i32 }* @"\01l_entry_point" to i64)) to i32) }, section "swift5_entry", align 4
@"$s7counter7CounterC5countSivpWvd" = hidden constant i64 112, align 8
@"$sBoWV" = external global i8*, align 8
@0 = private constant [8 x i8] c"counter\00"
@"$s7counterMXM" = linkonce_odr hidden constant <{ i32, i32, i32 }> <{ i32 0, i32 0, i32 trunc (i64 sub (i64 ptrtoint ([8 x i8]* @0 to i64), i64 ptrtoint (i32* getelementptr inbounds (<{ i32, i32, i32 }>, <{ i32, i32, i32 }>* @"$s7counterMXM", i32 0, i32 2) to i64)) to i32) }>, section ".rodata", align 4
@1 = private constant [8 x i8] c"Counter\00"
1357 ߦ