; ModuleID = 'main' source_filename = "main" %"github.com/goplus/llgo/internal/runtime.String" = type { ptr, i64 } %"github.com/goplus/llgo/internal/runtime.eface" = type { ptr, ptr } %main.eface = type { ptr, ptr } %"github.com/goplus/llgo/internal/abi.Type" = type { i64, i64, i32, i8, i8, i8, i8, { ptr, ptr }, ptr, %"github.com/goplus/llgo/internal/runtime.String", ptr } %"github.com/goplus/llgo/internal/abi.UncommonType" = type { %"github.com/goplus/llgo/internal/runtime.String", i16, i16, i32 } %"github.com/goplus/llgo/internal/runtime.Slice" = type { ptr, i64, i64 } %"github.com/goplus/llgo/internal/abi.StructField" = type { %"github.com/goplus/llgo/internal/runtime.String", ptr, i64, %"github.com/goplus/llgo/internal/runtime.String", i1 } @"main.init$guard" = global i1 false, align 1 @0 = private unnamed_addr constant [6 x i8] c"invoke", align 1 @1 = private unnamed_addr constant [7 x i8] c"\09elem: ", align 1 @2 = private unnamed_addr constant [9 x i8] c"\09uncomm: ", align 1 @__llgo_argc = global i32 0, align 4 @__llgo_argv = global ptr null, align 8 @_llgo_bool = linkonce global ptr null, align 8 @_llgo_int = linkonce global ptr null, align 8 @_llgo_int8 = linkonce global ptr null, align 8 @_llgo_int16 = linkonce global ptr null, align 8 @_llgo_int32 = linkonce global ptr null, align 8 @_llgo_int64 = linkonce global ptr null, align 8 @_llgo_uint = linkonce global ptr null, align 8 @_llgo_uint8 = linkonce global ptr null, align 8 @_llgo_uint16 = linkonce global ptr null, align 8 @_llgo_uint32 = linkonce global ptr null, align 8 @_llgo_uint64 = linkonce global ptr null, align 8 @_llgo_uintptr = linkonce global ptr null, align 8 @_llgo_float32 = linkonce global ptr null, align 8 @_llgo_float64 = linkonce global ptr null, align 8 @"[10]_llgo_int" = linkonce global ptr null, align 8 @_llgo_Pointer = linkonce global ptr null, align 8 @"_llgo_func$CqBkokmWG3Ia8PBDErMKLrnXwWQ3khfTBm7VXk_2y30" = linkonce global ptr null, align 8 @"main.struct$hWvPvnlB9uIZSm1cMlcssbAfCpkLhNdpCzAk4conL0o" = linkonce global ptr null, align 8 @3 = private unnamed_addr constant [1 x i8] c"f", align 1 @4 = private unnamed_addr constant [4 x i8] c"data", align 1 @5 = private unnamed_addr constant [4 x i8] c"main", align 1 @"*_llgo_int" = linkonce global ptr null, align 8 @"[]_llgo_int" = linkonce global ptr null, align 8 @6 = private unnamed_addr constant [5 x i8] c"hello", align 1 @_llgo_string = linkonce global ptr null, align 8 @"main.struct$RKbUG45GE4henGMAdmt0Rju0JptyR8NsX7IZLsOI0OM" = linkonce global ptr null, align 8 @7 = private unnamed_addr constant [1 x i8] c"x", align 1 @8 = private unnamed_addr constant [1 x i8] c"y", align 1 @9 = private unnamed_addr constant [1 x i8] c"z", align 1 define void @"main.(*T).Invoke"(ptr %0) { _llgo_0: call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 6 }) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 10) ret void } define void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %0) { _llgo_0: %1 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64 16) store %"github.com/goplus/llgo/internal/runtime.eface" %0, ptr %1, align 8 %2 = getelementptr inbounds %main.eface, ptr %1, i32 0, i32 0 %3 = load ptr, ptr %2, align 8 call void @main.dumpTyp(ptr %3, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer) ret void } define void @main.dumpTyp(ptr %0, %"github.com/goplus/llgo/internal/runtime.String" %1) { _llgo_0: call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %1) %2 = call i64 @"github.com/goplus/llgo/internal/abi.(*Type).Kind"(ptr %0) %3 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.Type", ptr %0, i32 0, i32 0 %4 = load i64, ptr %3, align 4 %5 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.Type", ptr %0, i32 0, i32 1 %6 = load i64, ptr %5, align 4 %7 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.Type", ptr %0, i32 0, i32 2 %8 = load i32, ptr %7, align 4 %9 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.Type", ptr %0, i32 0, i32 3 %10 = load i8, ptr %9, align 1 %11 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.Type", ptr %0, i32 0, i32 4 %12 = load i8, ptr %11, align 1 %13 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.Type", ptr %0, i32 0, i32 10 %14 = load ptr, ptr %13, align 8 %15 = call ptr @"github.com/goplus/llgo/internal/abi.(*Type).Uncommon"(ptr %0) call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 %2) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 32) call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 %4) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 32) call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 %6) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 32) %16 = zext i32 %8 to i64 call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 %16) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 32) %17 = zext i8 %10 to i64 call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 %17) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 32) %18 = zext i8 %12 to i64 call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 %18) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 32) call void @"github.com/goplus/llgo/internal/runtime.PrintPointer"(ptr %14) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 32) call void @"github.com/goplus/llgo/internal/runtime.PrintPointer"(ptr %15) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 10) %19 = call ptr @"github.com/goplus/llgo/internal/abi.(*Type).Elem"(ptr %0) %20 = icmp ne ptr %19, null br i1 %20, label %_llgo_1, label %_llgo_2 _llgo_1: ; preds = %_llgo_0 %21 = call ptr @"github.com/goplus/llgo/internal/abi.(*Type).Elem"(ptr %0) %22 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.StringCat"(%"github.com/goplus/llgo/internal/runtime.String" %1, %"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 7 }) call void @main.dumpTyp(ptr %21, %"github.com/goplus/llgo/internal/runtime.String" %22) br label %_llgo_2 _llgo_2: ; preds = %_llgo_1, %_llgo_0 %23 = call ptr @"github.com/goplus/llgo/internal/abi.(*Type).Uncommon"(ptr %0) %24 = icmp ne ptr %23, null br i1 %24, label %_llgo_3, label %_llgo_4 _llgo_3: ; preds = %_llgo_2 %25 = call ptr @"github.com/goplus/llgo/internal/abi.(*Type).Uncommon"(ptr %0) %26 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.StringCat"(%"github.com/goplus/llgo/internal/runtime.String" %1, %"github.com/goplus/llgo/internal/runtime.String" { ptr @2, i64 9 }) call void @main.dumpUncommon(ptr %25, %"github.com/goplus/llgo/internal/runtime.String" %26) %27 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.Type", ptr %0, i32 0, i32 10 %28 = load ptr, ptr %27, align 8 %29 = icmp ne ptr %28, null br i1 %29, label %_llgo_5, label %_llgo_4 _llgo_4: ; preds = %_llgo_5, %_llgo_3, %_llgo_2 ret void _llgo_5: ; preds = %_llgo_3 %30 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.Type", ptr %0, i32 0, i32 10 %31 = load ptr, ptr %30, align 8 %32 = call ptr @"github.com/goplus/llgo/internal/abi.(*Type).Uncommon"(ptr %31) %33 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.StringCat"(%"github.com/goplus/llgo/internal/runtime.String" %1, %"github.com/goplus/llgo/internal/runtime.String" { ptr @2, i64 9 }) call void @main.dumpUncommon(ptr %32, %"github.com/goplus/llgo/internal/runtime.String" %33) br label %_llgo_4 } define void @main.dumpUncommon(ptr %0, %"github.com/goplus/llgo/internal/runtime.String" %1) { _llgo_0: call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %1) %2 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.UncommonType", ptr %0, i32 0, i32 0 %3 = load %"github.com/goplus/llgo/internal/runtime.String", ptr %2, align 8 %4 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.UncommonType", ptr %0, i32 0, i32 1 %5 = load i16, ptr %4, align 2 %6 = getelementptr inbounds %"github.com/goplus/llgo/internal/abi.UncommonType", ptr %0, i32 0, i32 2 %7 = load i16, ptr %6, align 2 call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %3) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 32) %8 = zext i16 %5 to i64 call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 %8) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 32) %9 = zext i16 %7 to i64 call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 %9) call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 10) ret void } define void @main.init() { _llgo_0: %0 = load i1, ptr @"main.init$guard", align 1 br i1 %0, label %_llgo_2, label %_llgo_1 _llgo_1: ; preds = %_llgo_0 store i1 true, ptr @"main.init$guard", align 1 call void @"github.com/goplus/llgo/internal/abi.init"() call void @"main.init$after"() br label %_llgo_2 _llgo_2: ; preds = %_llgo_1, %_llgo_0 ret void } define i32 @main(i32 %0, ptr %1) { _llgo_0: store i32 %0, ptr @__llgo_argc, align 4 store ptr %1, ptr @__llgo_argv, align 8 call void @"github.com/goplus/llgo/internal/runtime.init"() call void @main.init() %2 = load ptr, ptr @_llgo_bool, align 8 %3 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %2, 0 %4 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %3, ptr inttoptr (i64 -1 to ptr), 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %4) %5 = load ptr, ptr @_llgo_int, align 8 %6 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %5, 0 %7 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %6, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %7) %8 = load ptr, ptr @_llgo_int8, align 8 %9 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %8, 0 %10 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %9, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %10) %11 = load ptr, ptr @_llgo_int16, align 8 %12 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %11, 0 %13 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %12, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %13) %14 = load ptr, ptr @_llgo_int32, align 8 %15 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %14, 0 %16 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %15, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %16) %17 = load ptr, ptr @_llgo_int64, align 8 %18 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %17, 0 %19 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %18, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %19) %20 = load ptr, ptr @_llgo_uint, align 8 %21 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %20, 0 %22 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %21, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %22) %23 = load ptr, ptr @_llgo_uint8, align 8 %24 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %23, 0 %25 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %24, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %25) %26 = load ptr, ptr @_llgo_uint16, align 8 %27 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %26, 0 %28 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %27, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %28) %29 = load ptr, ptr @_llgo_uint32, align 8 %30 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %29, 0 %31 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %30, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %31) %32 = load ptr, ptr @_llgo_uint64, align 8 %33 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %32, 0 %34 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %33, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %34) %35 = load ptr, ptr @_llgo_uintptr, align 8 %36 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %35, 0 %37 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %36, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %37) %38 = load ptr, ptr @_llgo_float32, align 8 %39 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %38, 0 %40 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %39, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %40) %41 = load ptr, ptr @_llgo_float64, align 8 %42 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %41, 0 %43 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %42, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %43) %44 = load ptr, ptr @"[10]_llgo_int", align 8 %45 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 80) store [10 x i64] zeroinitializer, ptr %45, align 4 %46 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %44, 0 %47 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %46, ptr %45, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %47) %48 = load ptr, ptr @_llgo_Pointer, align 8 %49 = load ptr, ptr @"_llgo_func$CqBkokmWG3Ia8PBDErMKLrnXwWQ3khfTBm7VXk_2y30", align 8 %50 = load ptr, ptr @"main.struct$hWvPvnlB9uIZSm1cMlcssbAfCpkLhNdpCzAk4conL0o", align 8 call void @"github.com/goplus/llgo/internal/runtime.SetClosure"(ptr %50) %51 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 16) store { ptr, ptr } { ptr @"__llgo_stub.main.main$1", ptr null }, ptr %51, align 8 %52 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %50, 0 %53 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %52, ptr %51, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %53) %54 = load ptr, ptr @"*_llgo_int", align 8 %55 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %54, 0 %56 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %55, ptr null, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %56) %57 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64 0) %58 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %57, 0 %59 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %58, i64 0, 1 %60 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %59, i64 0, 2 %61 = load ptr, ptr @"[]_llgo_int", align 8 %62 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 24) store %"github.com/goplus/llgo/internal/runtime.Slice" %60, ptr %62, align 8 %63 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %61, 0 %64 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %63, ptr %62, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %64) %65 = load ptr, ptr @_llgo_string, align 8 %66 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 16) store %"github.com/goplus/llgo/internal/runtime.String" { ptr @6, i64 5 }, ptr %66, align 8 %67 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %65, 0 %68 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %67, ptr %66, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %68) %69 = load ptr, ptr @"main.struct$RKbUG45GE4henGMAdmt0Rju0JptyR8NsX7IZLsOI0OM", align 8 %70 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 24) store { i8, i64, i64 } zeroinitializer, ptr %70, align 4 %71 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %69, 0 %72 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %71, ptr %70, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %72) %73 = load ptr, ptr @_llgo_string, align 8 %74 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 16) store %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, ptr %74, align 8 %75 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" undef, ptr %73, 0 %76 = insertvalue %"github.com/goplus/llgo/internal/runtime.eface" %75, ptr %74, 1 call void @main.dump(%"github.com/goplus/llgo/internal/runtime.eface" %76) ret i32 0 } define void @"main.main$1"() { _llgo_0: ret void } declare void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String") declare void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8) declare ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64) declare i64 @"github.com/goplus/llgo/internal/abi.(*Type).Kind"(ptr) declare ptr @"github.com/goplus/llgo/internal/abi.(*Type).Uncommon"(ptr) declare void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64) declare void @"github.com/goplus/llgo/internal/runtime.PrintPointer"(ptr) declare ptr @"github.com/goplus/llgo/internal/abi.(*Type).Elem"(ptr) declare %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.StringCat"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String") declare void @"github.com/goplus/llgo/internal/abi.init"() declare void @"github.com/goplus/llgo/internal/runtime.init"() define void @"main.init$after"() { _llgo_0: %0 = load ptr, ptr @_llgo_bool, align 8 %1 = icmp eq ptr %0, null br i1 %1, label %_llgo_1, label %_llgo_2 _llgo_1: ; preds = %_llgo_0 %2 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 33) store ptr %2, ptr @_llgo_bool, align 8 br label %_llgo_2 _llgo_2: ; preds = %_llgo_1, %_llgo_0 %3 = load ptr, ptr @_llgo_int, align 8 %4 = icmp eq ptr %3, null br i1 %4, label %_llgo_3, label %_llgo_4 _llgo_3: ; preds = %_llgo_2 %5 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34) store ptr %5, ptr @_llgo_int, align 8 br label %_llgo_4 _llgo_4: ; preds = %_llgo_3, %_llgo_2 %6 = load ptr, ptr @_llgo_int8, align 8 %7 = icmp eq ptr %6, null br i1 %7, label %_llgo_5, label %_llgo_6 _llgo_5: ; preds = %_llgo_4 %8 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 35) store ptr %8, ptr @_llgo_int8, align 8 br label %_llgo_6 _llgo_6: ; preds = %_llgo_5, %_llgo_4 %9 = load ptr, ptr @_llgo_int16, align 8 %10 = icmp eq ptr %9, null br i1 %10, label %_llgo_7, label %_llgo_8 _llgo_7: ; preds = %_llgo_6 %11 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 36) store ptr %11, ptr @_llgo_int16, align 8 br label %_llgo_8 _llgo_8: ; preds = %_llgo_7, %_llgo_6 %12 = load ptr, ptr @_llgo_int32, align 8 %13 = icmp eq ptr %12, null br i1 %13, label %_llgo_9, label %_llgo_10 _llgo_9: ; preds = %_llgo_8 %14 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 37) store ptr %14, ptr @_llgo_int32, align 8 br label %_llgo_10 _llgo_10: ; preds = %_llgo_9, %_llgo_8 %15 = load ptr, ptr @_llgo_int64, align 8 %16 = icmp eq ptr %15, null br i1 %16, label %_llgo_11, label %_llgo_12 _llgo_11: ; preds = %_llgo_10 %17 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 38) store ptr %17, ptr @_llgo_int64, align 8 br label %_llgo_12 _llgo_12: ; preds = %_llgo_11, %_llgo_10 %18 = load ptr, ptr @_llgo_uint, align 8 %19 = icmp eq ptr %18, null br i1 %19, label %_llgo_13, label %_llgo_14 _llgo_13: ; preds = %_llgo_12 %20 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 39) store ptr %20, ptr @_llgo_uint, align 8 br label %_llgo_14 _llgo_14: ; preds = %_llgo_13, %_llgo_12 %21 = load ptr, ptr @_llgo_uint8, align 8 %22 = icmp eq ptr %21, null br i1 %22, label %_llgo_15, label %_llgo_16 _llgo_15: ; preds = %_llgo_14 %23 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 40) store ptr %23, ptr @_llgo_uint8, align 8 br label %_llgo_16 _llgo_16: ; preds = %_llgo_15, %_llgo_14 %24 = load ptr, ptr @_llgo_uint16, align 8 %25 = icmp eq ptr %24, null br i1 %25, label %_llgo_17, label %_llgo_18 _llgo_17: ; preds = %_llgo_16 %26 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 41) store ptr %26, ptr @_llgo_uint16, align 8 br label %_llgo_18 _llgo_18: ; preds = %_llgo_17, %_llgo_16 %27 = load ptr, ptr @_llgo_uint32, align 8 %28 = icmp eq ptr %27, null br i1 %28, label %_llgo_19, label %_llgo_20 _llgo_19: ; preds = %_llgo_18 %29 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 42) store ptr %29, ptr @_llgo_uint32, align 8 br label %_llgo_20 _llgo_20: ; preds = %_llgo_19, %_llgo_18 %30 = load ptr, ptr @_llgo_uint64, align 8 %31 = icmp eq ptr %30, null br i1 %31, label %_llgo_21, label %_llgo_22 _llgo_21: ; preds = %_llgo_20 %32 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 43) store ptr %32, ptr @_llgo_uint64, align 8 br label %_llgo_22 _llgo_22: ; preds = %_llgo_21, %_llgo_20 %33 = load ptr, ptr @_llgo_uintptr, align 8 %34 = icmp eq ptr %33, null br i1 %34, label %_llgo_23, label %_llgo_24 _llgo_23: ; preds = %_llgo_22 %35 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 44) store ptr %35, ptr @_llgo_uintptr, align 8 br label %_llgo_24 _llgo_24: ; preds = %_llgo_23, %_llgo_22 %36 = load ptr, ptr @_llgo_float32, align 8 %37 = icmp eq ptr %36, null br i1 %37, label %_llgo_25, label %_llgo_26 _llgo_25: ; preds = %_llgo_24 %38 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 45) store ptr %38, ptr @_llgo_float32, align 8 br label %_llgo_26 _llgo_26: ; preds = %_llgo_25, %_llgo_24 %39 = load ptr, ptr @_llgo_float64, align 8 %40 = icmp eq ptr %39, null br i1 %40, label %_llgo_27, label %_llgo_28 _llgo_27: ; preds = %_llgo_26 %41 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 46) store ptr %41, ptr @_llgo_float64, align 8 br label %_llgo_28 _llgo_28: ; preds = %_llgo_27, %_llgo_26 %42 = load ptr, ptr @"[10]_llgo_int", align 8 %43 = icmp eq ptr %42, null br i1 %43, label %_llgo_29, label %_llgo_30 _llgo_29: ; preds = %_llgo_28 %44 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34) %45 = call ptr @"github.com/goplus/llgo/internal/runtime.ArrayOf"(i64 10, ptr %44) store ptr %45, ptr @"[10]_llgo_int", align 8 br label %_llgo_30 _llgo_30: ; preds = %_llgo_29, %_llgo_28 %46 = load ptr, ptr @_llgo_Pointer, align 8 %47 = icmp eq ptr %46, null br i1 %47, label %_llgo_31, label %_llgo_32 _llgo_31: ; preds = %_llgo_30 %48 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 58) call void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr %48) store ptr %48, ptr @_llgo_Pointer, align 8 br label %_llgo_32 _llgo_32: ; preds = %_llgo_31, %_llgo_30 %49 = load ptr, ptr @_llgo_Pointer, align 8 %50 = load ptr, ptr @"_llgo_func$CqBkokmWG3Ia8PBDErMKLrnXwWQ3khfTBm7VXk_2y30", align 8 %51 = icmp eq ptr %50, null br i1 %51, label %_llgo_33, label %_llgo_34 _llgo_33: ; preds = %_llgo_32 %52 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 8) %53 = getelementptr ptr, ptr %52, i64 0 store ptr %49, ptr %53, align 8 %54 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %52, 0 %55 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %54, i64 1, 1 %56 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %55, i64 1, 2 %57 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 0) %58 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %57, 0 %59 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %58, i64 0, 1 %60 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %59, i64 0, 2 %61 = call ptr @"github.com/goplus/llgo/internal/runtime.Func"(%"github.com/goplus/llgo/internal/runtime.Slice" %56, %"github.com/goplus/llgo/internal/runtime.Slice" %60, i1 false) call void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr %61) store ptr %61, ptr @"_llgo_func$CqBkokmWG3Ia8PBDErMKLrnXwWQ3khfTBm7VXk_2y30", align 8 br label %_llgo_34 _llgo_34: ; preds = %_llgo_33, %_llgo_32 %62 = load ptr, ptr @_llgo_Pointer, align 8 %63 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 8) %64 = getelementptr ptr, ptr %63, i64 0 store ptr %62, ptr %64, align 8 %65 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %63, 0 %66 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %65, i64 1, 1 %67 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %66, i64 1, 2 %68 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 0) %69 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %68, 0 %70 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %69, i64 0, 1 %71 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %70, i64 0, 2 %72 = call ptr @"github.com/goplus/llgo/internal/runtime.Func"(%"github.com/goplus/llgo/internal/runtime.Slice" %67, %"github.com/goplus/llgo/internal/runtime.Slice" %71, i1 false) %73 = call %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/llgo/internal/runtime.StructField"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 1 }, ptr %72, i64 0, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false) %74 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 58) %75 = call %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/llgo/internal/runtime.StructField"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @4, i64 4 }, ptr %74, i64 8, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false) %76 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 112) %77 = getelementptr %"github.com/goplus/llgo/internal/abi.StructField", ptr %76, i64 0 store %"github.com/goplus/llgo/internal/abi.StructField" %73, ptr %77, align 8 %78 = getelementptr %"github.com/goplus/llgo/internal/abi.StructField", ptr %76, i64 1 store %"github.com/goplus/llgo/internal/abi.StructField" %75, ptr %78, align 8 %79 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %76, 0 %80 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %79, i64 2, 1 %81 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %80, i64 2, 2 %82 = call ptr @"github.com/goplus/llgo/internal/runtime.Struct"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @5, i64 4 }, i64 16, %"github.com/goplus/llgo/internal/runtime.Slice" %81) store ptr %82, ptr @"main.struct$hWvPvnlB9uIZSm1cMlcssbAfCpkLhNdpCzAk4conL0o", align 8 %83 = load ptr, ptr @"*_llgo_int", align 8 %84 = icmp eq ptr %83, null br i1 %84, label %_llgo_35, label %_llgo_36 _llgo_35: ; preds = %_llgo_34 %85 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34) %86 = call ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr %85) call void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr %86) store ptr %86, ptr @"*_llgo_int", align 8 br label %_llgo_36 _llgo_36: ; preds = %_llgo_35, %_llgo_34 %87 = load ptr, ptr @"[]_llgo_int", align 8 %88 = icmp eq ptr %87, null br i1 %88, label %_llgo_37, label %_llgo_38 _llgo_37: ; preds = %_llgo_36 %89 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34) %90 = call ptr @"github.com/goplus/llgo/internal/runtime.SliceOf"(ptr %89) store ptr %90, ptr @"[]_llgo_int", align 8 br label %_llgo_38 _llgo_38: ; preds = %_llgo_37, %_llgo_36 %91 = load ptr, ptr @_llgo_string, align 8 %92 = icmp eq ptr %91, null br i1 %92, label %_llgo_39, label %_llgo_40 _llgo_39: ; preds = %_llgo_38 %93 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 24) store ptr %93, ptr @_llgo_string, align 8 br label %_llgo_40 _llgo_40: ; preds = %_llgo_39, %_llgo_38 %94 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 35) %95 = call %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/llgo/internal/runtime.StructField"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @7, i64 1 }, ptr %94, i64 0, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false) %96 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34) %97 = call %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/llgo/internal/runtime.StructField"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @8, i64 1 }, ptr %96, i64 8, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false) %98 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34) %99 = call %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/llgo/internal/runtime.StructField"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @9, i64 1 }, ptr %98, i64 16, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false) %100 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 168) %101 = getelementptr %"github.com/goplus/llgo/internal/abi.StructField", ptr %100, i64 0 store %"github.com/goplus/llgo/internal/abi.StructField" %95, ptr %101, align 8 %102 = getelementptr %"github.com/goplus/llgo/internal/abi.StructField", ptr %100, i64 1 store %"github.com/goplus/llgo/internal/abi.StructField" %97, ptr %102, align 8 %103 = getelementptr %"github.com/goplus/llgo/internal/abi.StructField", ptr %100, i64 2 store %"github.com/goplus/llgo/internal/abi.StructField" %99, ptr %103, align 8 %104 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %100, 0 %105 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %104, i64 3, 1 %106 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %105, i64 3, 2 %107 = call ptr @"github.com/goplus/llgo/internal/runtime.Struct"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @5, i64 4 }, i64 24, %"github.com/goplus/llgo/internal/runtime.Slice" %106) store ptr %107, ptr @"main.struct$RKbUG45GE4henGMAdmt0Rju0JptyR8NsX7IZLsOI0OM", align 8 ret void } declare ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64) declare ptr @"github.com/goplus/llgo/internal/runtime.ArrayOf"(i64, ptr) declare ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64) define linkonce void @"__llgo_stub.main.main$1"(ptr %0) { _llgo_0: tail call void @"main.main$1"() ret void } declare void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr) declare ptr @"github.com/goplus/llgo/internal/runtime.Func"(%"github.com/goplus/llgo/internal/runtime.Slice", %"github.com/goplus/llgo/internal/runtime.Slice", i1) declare ptr @"github.com/goplus/llgo/internal/runtime.Struct"(%"github.com/goplus/llgo/internal/runtime.String", i64, %"github.com/goplus/llgo/internal/runtime.Slice") declare %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/llgo/internal/runtime.StructField"(%"github.com/goplus/llgo/internal/runtime.String", ptr, i64, %"github.com/goplus/llgo/internal/runtime.String", i1) declare void @"github.com/goplus/llgo/internal/runtime.SetClosure"(ptr) declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr) declare ptr @"github.com/goplus/llgo/internal/runtime.SliceOf"(ptr)