github.com/goplus/llgo@v0.8.3/cl/_testrt/builtin/out.ll (about)

     1  ; ModuleID = 'main'
     2  source_filename = "main"
     3  
     4  %"github.com/goplus/llgo/internal/runtime.Slice" = type { ptr, i64, i64 }
     5  %"github.com/goplus/llgo/internal/runtime.String" = type { ptr, i64 }
     6  %"github.com/goplus/llgo/internal/runtime.iface" = type { ptr, ptr }
     7  
     8  @main.a = global ptr null
     9  @main.b = global ptr null
    10  @"main.init$guard" = global ptr null
    11  @main.n = global ptr null
    12  @__llgo_argc = global ptr null
    13  @__llgo_argv = global ptr null
    14  @0 = private unnamed_addr constant [2 x i8] c" \00", align 1
    15  @1 = private unnamed_addr constant [2 x i8] c" \00", align 1
    16  @2 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    17  @3 = private unnamed_addr constant [2 x i8] c" \00", align 1
    18  @4 = private unnamed_addr constant [2 x i8] c" \00", align 1
    19  @5 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    20  @6 = private unnamed_addr constant [2 x i8] c" \00", align 1
    21  @7 = private unnamed_addr constant [2 x i8] c" \00", align 1
    22  @8 = private unnamed_addr constant [2 x i8] c" \00", align 1
    23  @9 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    24  @10 = private unnamed_addr constant [2 x i8] c" \00", align 1
    25  @11 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    26  @12 = private unnamed_addr constant [2 x i8] c" \00", align 1
    27  @13 = private unnamed_addr constant [2 x i8] c" \00", align 1
    28  @14 = private unnamed_addr constant [2 x i8] c" \00", align 1
    29  @15 = private unnamed_addr constant [2 x i8] c" \00", align 1
    30  @16 = private unnamed_addr constant [2 x i8] c" \00", align 1
    31  @17 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    32  @18 = private unnamed_addr constant [2 x i8] c" \00", align 1
    33  @19 = private unnamed_addr constant [2 x i8] c" \00", align 1
    34  @20 = private unnamed_addr constant [2 x i8] c" \00", align 1
    35  @21 = private unnamed_addr constant [2 x i8] c" \00", align 1
    36  @22 = private unnamed_addr constant [2 x i8] c" \00", align 1
    37  @23 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    38  @24 = private unnamed_addr constant [6 x i8] c"hello\00", align 1
    39  @25 = private unnamed_addr constant [6 x i8] c"hello\00", align 1
    40  @26 = private unnamed_addr constant [6 x i8] c"hello\00", align 1
    41  @27 = private unnamed_addr constant [6 x i8] c"hello\00", align 1
    42  @28 = private unnamed_addr constant [2 x i8] c" \00", align 1
    43  @29 = private unnamed_addr constant [2 x i8] c" \00", align 1
    44  @30 = private unnamed_addr constant [2 x i8] c" \00", align 1
    45  @31 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    46  @32 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    47  @33 = private unnamed_addr constant [4 x i8] c"def\00", align 1
    48  @34 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    49  @35 = private unnamed_addr constant [2 x i8] c" \00", align 1
    50  @36 = private unnamed_addr constant [2 x i8] c" \00", align 1
    51  @37 = private unnamed_addr constant [2 x i8] c" \00", align 1
    52  @38 = private unnamed_addr constant [2 x i8] c" \00", align 1
    53  @39 = private unnamed_addr constant [2 x i8] c" \00", align 1
    54  @40 = private unnamed_addr constant [2 x i8] c" \00", align 1
    55  @41 = private unnamed_addr constant [2 x i8] c" \00", align 1
    56  @42 = private unnamed_addr constant [2 x i8] c" \00", align 1
    57  @43 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
    58  
    59  define void @main.init() {
    60  _llgo_0:
    61    %0 = load i1, ptr @"main.init$guard", align 1
    62    br i1 %0, label %_llgo_2, label %_llgo_1
    63  
    64  _llgo_1:                                          ; preds = %_llgo_0
    65    store i1 true, ptr @"main.init$guard", align 1
    66    store i64 9223372036854775807, ptr @main.a, align 4
    67    store i64 -9223372036854775808, ptr @main.b, align 4
    68    store i64 -1, ptr @main.n, align 4
    69    br label %_llgo_2
    70  
    71  _llgo_2:                                          ; preds = %_llgo_1, %_llgo_0
    72    ret void
    73  }
    74  
    75  define i32 @main(i32 %0, ptr %1) {
    76  _llgo_0:
    77    store i32 %0, ptr @__llgo_argc, align 4
    78    store ptr %1, ptr @__llgo_argv, align 8
    79    call void @"github.com/goplus/llgo/internal/runtime.init"()
    80    call void @main.init()
    81    %2 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64 32)
    82    %3 = getelementptr inbounds i64, ptr %2, i64 0
    83    store i64 1, ptr %3, align 4
    84    %4 = getelementptr inbounds i64, ptr %2, i64 1
    85    store i64 2, ptr %4, align 4
    86    %5 = getelementptr inbounds i64, ptr %2, i64 2
    87    store i64 3, ptr %5, align 4
    88    %6 = getelementptr inbounds i64, ptr %2, i64 3
    89    store i64 4, ptr %6, align 4
    90    %7 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %2, i64 8, i64 4, i64 0, i64 4, i64 4)
    91    %8 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64 32)
    92    %9 = getelementptr inbounds i64, ptr %8, i64 0
    93    %10 = getelementptr inbounds i64, ptr %8, i64 1
    94    %11 = getelementptr inbounds i64, ptr %8, i64 2
    95    %12 = getelementptr inbounds i64, ptr %8, i64 3
    96    store i64 1, ptr %9, align 4
    97    store i64 2, ptr %10, align 4
    98    store i64 3, ptr %11, align 4
    99    store i64 4, ptr %12, align 4
   100    %13 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64 10)
   101    %14 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %13, i64 1, i64 10, i64 0, i64 4, i64 10)
   102    %15 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 1
   103    %16 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 2
   104    call void @"github.com/goplus/llgo/internal/runtime.PrintSlice"(%"github.com/goplus/llgo/internal/runtime.Slice" %7)
   105    %17 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @0, i64 1)
   106    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %17)
   107    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %15)
   108    %18 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @1, i64 1)
   109    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %18)
   110    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %16)
   111    %19 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @2, i64 1)
   112    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %19)
   113    %20 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %14, 1
   114    %21 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %14, 2
   115    call void @"github.com/goplus/llgo/internal/runtime.PrintSlice"(%"github.com/goplus/llgo/internal/runtime.Slice" %14)
   116    %22 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @3, i64 1)
   117    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %22)
   118    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %20)
   119    %23 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @4, i64 1)
   120    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %23)
   121    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %21)
   122    %24 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @5, i64 1)
   123    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %24)
   124    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 4)
   125    %25 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @6, i64 1)
   126    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %25)
   127    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 4)
   128    %26 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @7, i64 1)
   129    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %26)
   130    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 4)
   131    %27 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @8, i64 1)
   132    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %27)
   133    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 4)
   134    %28 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @9, i64 1)
   135    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %28)
   136    %29 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64 32)
   137    %30 = getelementptr inbounds i64, ptr %29, i64 0
   138    store i64 1, ptr %30, align 4
   139    %31 = getelementptr inbounds i64, ptr %29, i64 1
   140    store i64 2, ptr %31, align 4
   141    %32 = getelementptr inbounds i64, ptr %29, i64 2
   142    store i64 3, ptr %32, align 4
   143    %33 = getelementptr inbounds i64, ptr %29, i64 3
   144    store i64 4, ptr %33, align 4
   145    %34 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %29, i64 8, i64 4, i64 0, i64 4, i64 4)
   146    %35 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %34, 1
   147    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %35)
   148    %36 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @10, i64 1)
   149    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %36)
   150    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 4)
   151    %37 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @11, i64 1)
   152    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %37)
   153    %38 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 2
   154    %39 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 2
   155    %40 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 0
   156    %41 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %40, i64 8, i64 %38, i64 1, i64 %39, i64 %38)
   157    %42 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %41, 1
   158    %43 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 2
   159    %44 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 2
   160    %45 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 0
   161    %46 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %45, i64 8, i64 %43, i64 1, i64 %44, i64 %43)
   162    %47 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %46, 2
   163    %48 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 2
   164    %49 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 0
   165    %50 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %49, i64 8, i64 %48, i64 1, i64 2, i64 %48)
   166    %51 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %50, 1
   167    %52 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 2
   168    %53 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 0
   169    %54 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %53, i64 8, i64 %52, i64 1, i64 2, i64 %52)
   170    %55 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %54, 2
   171    %56 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 2
   172    %57 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 0
   173    %58 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %57, i64 8, i64 %56, i64 1, i64 2, i64 2)
   174    %59 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %58, 1
   175    %60 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 2
   176    %61 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %7, 0
   177    %62 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %61, i64 8, i64 %60, i64 1, i64 2, i64 2)
   178    %63 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %62, 2
   179    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %42)
   180    %64 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @12, i64 1)
   181    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %64)
   182    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %47)
   183    %65 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @13, i64 1)
   184    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %65)
   185    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %51)
   186    %66 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @14, i64 1)
   187    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %66)
   188    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %55)
   189    %67 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @15, i64 1)
   190    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %67)
   191    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %59)
   192    %68 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @16, i64 1)
   193    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %68)
   194    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %63)
   195    %69 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @17, i64 1)
   196    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %69)
   197    %70 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %8, i64 8, i64 4, i64 1, i64 4, i64 4)
   198    %71 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %70, 1
   199    %72 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %8, i64 8, i64 4, i64 1, i64 4, i64 4)
   200    %73 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %72, 2
   201    %74 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %8, i64 8, i64 4, i64 1, i64 2, i64 4)
   202    %75 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %74, 1
   203    %76 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %8, i64 8, i64 4, i64 1, i64 2, i64 4)
   204    %77 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %76, 2
   205    %78 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %8, i64 8, i64 4, i64 1, i64 2, i64 2)
   206    %79 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %78, 1
   207    %80 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %8, i64 8, i64 4, i64 1, i64 2, i64 2)
   208    %81 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %80, 2
   209    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %71)
   210    %82 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @18, i64 1)
   211    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %82)
   212    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %73)
   213    %83 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @19, i64 1)
   214    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %83)
   215    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %75)
   216    %84 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @20, i64 1)
   217    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %84)
   218    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %77)
   219    %85 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @21, i64 1)
   220    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %85)
   221    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %79)
   222    %86 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @22, i64 1)
   223    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %86)
   224    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %81)
   225    %87 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @23, i64 1)
   226    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %87)
   227    %88 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @24, i64 5)
   228    %89 = extractvalue %"github.com/goplus/llgo/internal/runtime.String" %88, 1
   229    %90 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewStringSlice"(%"github.com/goplus/llgo/internal/runtime.String" %88, i64 1, i64 %89)
   230    %91 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @25, i64 5)
   231    %92 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewStringSlice"(%"github.com/goplus/llgo/internal/runtime.String" %91, i64 1, i64 2)
   232    %93 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @26, i64 5)
   233    %94 = extractvalue %"github.com/goplus/llgo/internal/runtime.String" %93, 1
   234    %95 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewStringSlice"(%"github.com/goplus/llgo/internal/runtime.String" %93, i64 5, i64 %94)
   235    %96 = extractvalue %"github.com/goplus/llgo/internal/runtime.String" %95, 1
   236    %97 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @27, i64 5)
   237    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %97)
   238    %98 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @28, i64 1)
   239    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %98)
   240    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %90)
   241    %99 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @29, i64 1)
   242    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %99)
   243    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %92)
   244    %100 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @30, i64 1)
   245    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %100)
   246    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 %96)
   247    %101 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @31, i64 1)
   248    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %101)
   249    %102 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64 32)
   250    %103 = getelementptr inbounds i64, ptr %102, i64 0
   251    store i64 5, ptr %103, align 4
   252    %104 = getelementptr inbounds i64, ptr %102, i64 1
   253    store i64 6, ptr %104, align 4
   254    %105 = getelementptr inbounds i64, ptr %102, i64 2
   255    store i64 7, ptr %105, align 4
   256    %106 = getelementptr inbounds i64, ptr %102, i64 3
   257    store i64 8, ptr %106, align 4
   258    %107 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %102, i64 8, i64 4, i64 0, i64 4, i64 4)
   259    %108 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %107, 0
   260    %109 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %107, 1
   261    %110 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.SliceAppend"(%"github.com/goplus/llgo/internal/runtime.Slice" %7, ptr %108, i64 %109, i64 8)
   262    call void @"github.com/goplus/llgo/internal/runtime.PrintSlice"(%"github.com/goplus/llgo/internal/runtime.Slice" %110)
   263    %111 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @32, i64 1)
   264    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %111)
   265    %112 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64 3)
   266    %113 = getelementptr inbounds i8, ptr %112, i64 0
   267    store i8 97, ptr %113, align 1
   268    %114 = getelementptr inbounds i8, ptr %112, i64 1
   269    store i8 98, ptr %114, align 1
   270    %115 = getelementptr inbounds i8, ptr %112, i64 2
   271    store i8 99, ptr %115, align 1
   272    %116 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr %112, i64 1, i64 3, i64 0, i64 3, i64 3)
   273    %117 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @33, i64 3)
   274    %118 = extractvalue %"github.com/goplus/llgo/internal/runtime.String" %117, 0
   275    %119 = extractvalue %"github.com/goplus/llgo/internal/runtime.String" %117, 1
   276    %120 = call %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.SliceAppend"(%"github.com/goplus/llgo/internal/runtime.Slice" %116, ptr %118, i64 %119, i64 1)
   277    call void @"github.com/goplus/llgo/internal/runtime.PrintSlice"(%"github.com/goplus/llgo/internal/runtime.Slice" %120)
   278    %121 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @34, i64 1)
   279    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %121)
   280    %122 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64 16)
   281    %123 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 2)
   282    %124 = call %"github.com/goplus/llgo/internal/runtime.iface" @"github.com/goplus/llgo/internal/runtime.MakeAnyInt"(ptr %123, i64 100)
   283    store %"github.com/goplus/llgo/internal/runtime.iface" %124, ptr %122, align 8
   284    %125 = load %"github.com/goplus/llgo/internal/runtime.iface", ptr %122, align 8
   285    %126 = ptrtoint ptr %122 to i64
   286    call void @"github.com/goplus/llgo/internal/runtime.PrintBool"(i1 true)
   287    %127 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @35, i64 1)
   288    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %127)
   289    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 100)
   290    %128 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @36, i64 1)
   291    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %128)
   292    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 -100)
   293    %129 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @37, i64 1)
   294    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %129)
   295    call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 255)
   296    %130 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @38, i64 1)
   297    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %130)
   298    call void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64 -100)
   299    %131 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @39, i64 1)
   300    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %131)
   301    call void @"github.com/goplus/llgo/internal/runtime.PrintFloat"(double 1.005000e+02)
   302    %132 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @40, i64 1)
   303    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %132)
   304    call void @"github.com/goplus/llgo/internal/runtime.PrintIface"(%"github.com/goplus/llgo/internal/runtime.iface" %125)
   305    %133 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @41, i64 1)
   306    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %133)
   307    call void @"github.com/goplus/llgo/internal/runtime.PrintPointer"(ptr %122)
   308    %134 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @42, i64 1)
   309    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %134)
   310    call void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64 %126)
   311    %135 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr @43, i64 1)
   312    call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %135)
   313    ret i32 0
   314  }
   315  
   316  declare void @"github.com/goplus/llgo/internal/runtime.init"()
   317  
   318  declare ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64)
   319  
   320  declare %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.NewSlice3"(ptr, i64, i64, i64, i64, i64)
   321  
   322  declare void @"github.com/goplus/llgo/internal/runtime.PrintSlice"(%"github.com/goplus/llgo/internal/runtime.Slice")
   323  
   324  declare void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String")
   325  
   326  declare %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewString"(ptr, i64)
   327  
   328  declare void @"github.com/goplus/llgo/internal/runtime.PrintInt"(i64)
   329  
   330  declare %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.NewStringSlice"(%"github.com/goplus/llgo/internal/runtime.String", i64, i64)
   331  
   332  declare %"github.com/goplus/llgo/internal/runtime.Slice" @"github.com/goplus/llgo/internal/runtime.SliceAppend"(%"github.com/goplus/llgo/internal/runtime.Slice", ptr, i64, i64)
   333  
   334  declare ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64)
   335  
   336  declare %"github.com/goplus/llgo/internal/runtime.iface" @"github.com/goplus/llgo/internal/runtime.MakeAnyInt"(ptr, i64)
   337  
   338  declare void @"github.com/goplus/llgo/internal/runtime.PrintBool"(i1)
   339  
   340  declare void @"github.com/goplus/llgo/internal/runtime.PrintUint"(i64)
   341  
   342  declare void @"github.com/goplus/llgo/internal/runtime.PrintFloat"(double)
   343  
   344  declare void @"github.com/goplus/llgo/internal/runtime.PrintIface"(%"github.com/goplus/llgo/internal/runtime.iface")
   345  
   346  declare void @"github.com/goplus/llgo/internal/runtime.PrintPointer"(ptr)