internal/runtime: funcStr, interfaceStr, array str
This commit is contained in:
@@ -497,7 +497,7 @@ _llgo_9: ; preds = %_llgo_8
|
|||||||
%19 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %18, 0
|
%19 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %18, 0
|
||||||
%20 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %19, i64 0, 1
|
%20 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %19, i64 0, 1
|
||||||
%21 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %20, i64 0, 2
|
%21 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %20, i64 0, 2
|
||||||
%22 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %21)
|
%22 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %21)
|
||||||
store ptr %22, ptr @_llgo_any, align 8
|
store ptr %22, ptr @_llgo_any, align 8
|
||||||
br label %_llgo_10
|
br label %_llgo_10
|
||||||
|
|
||||||
@@ -518,7 +518,7 @@ _llgo_11: ; preds = %_llgo_10
|
|||||||
%33 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %32, 0
|
%33 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %32, 0
|
||||||
%34 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %33, i64 0, 1
|
%34 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %33, i64 0, 1
|
||||||
%35 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %34, i64 0, 2
|
%35 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %34, i64 0, 2
|
||||||
%36 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %35)
|
%36 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %35)
|
||||||
%37 = 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 %36, i64 32, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false)
|
%37 = 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 %36, i64 32, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false)
|
||||||
%38 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 224)
|
%38 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 224)
|
||||||
%39 = getelementptr %"github.com/goplus/llgo/internal/abi.StructField", ptr %38, i64 0
|
%39 = getelementptr %"github.com/goplus/llgo/internal/abi.StructField", ptr %38, i64 0
|
||||||
@@ -630,7 +630,7 @@ declare %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/l
|
|||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewNamed"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", i64, i64, i64, i64)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewNamed"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", i64, i64, i64, i64)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare void @"github.com/goplus/llgo/internal/runtime.InitNamed"(ptr, ptr, %"github.com/goplus/llgo/internal/runtime.Slice", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare void @"github.com/goplus/llgo/internal/runtime.InitNamed"(ptr, ptr, %"github.com/goplus/llgo/internal/runtime.Slice", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
|
|||||||
@@ -161,7 +161,7 @@ _llgo_5: ; preds = %_llgo_4
|
|||||||
%44 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %42, 0
|
%44 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %42, 0
|
||||||
%45 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %44, i64 1, 1
|
%45 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %44, i64 1, 1
|
||||||
%46 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %45, i64 1, 2
|
%46 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %45, i64 1, 2
|
||||||
%47 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %46)
|
%47 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %46)
|
||||||
store ptr %47, ptr @"_llgo_iface$Fh8eUJ-Gw4e6TYuajcFIOSCuqSPKAt5nS4ow7xeGXEU", align 8
|
store ptr %47, ptr @"_llgo_iface$Fh8eUJ-Gw4e6TYuajcFIOSCuqSPKAt5nS4ow7xeGXEU", align 8
|
||||||
br label %_llgo_6
|
br label %_llgo_6
|
||||||
|
|
||||||
@@ -187,7 +187,7 @@ declare void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr)
|
|||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -556,7 +556,7 @@ _llgo_12: ; preds = %_llgo_11, %_llgo_10
|
|||||||
%35 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %33, 0
|
%35 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %33, 0
|
||||||
%36 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %35, i64 1, 1
|
%36 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %35, i64 1, 1
|
||||||
%37 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %36, i64 1, 2
|
%37 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %36, i64 1, 2
|
||||||
%38 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %37)
|
%38 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %37)
|
||||||
store ptr %38, ptr @"main.iface$brpgdLtIeRlPi8QUoTgPCXzlehUkncg7v9aITo-GsF4", align 8
|
store ptr %38, ptr @"main.iface$brpgdLtIeRlPi8QUoTgPCXzlehUkncg7v9aITo-GsF4", align 8
|
||||||
%39 = call ptr @"github.com/goplus/llgo/internal/runtime.NewNamedInterface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" { ptr @6, i64 2 })
|
%39 = call ptr @"github.com/goplus/llgo/internal/runtime.NewNamedInterface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" { ptr @6, i64 2 })
|
||||||
%40 = load ptr, ptr @_llgo_main.I2, align 8
|
%40 = load ptr, ptr @_llgo_main.I2, align 8
|
||||||
@@ -599,7 +599,7 @@ _llgo_16: ; preds = %_llgo_15, %_llgo_14
|
|||||||
%59 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %56, 0
|
%59 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %56, 0
|
||||||
%60 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %59, i64 2, 1
|
%60 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %59, i64 2, 1
|
||||||
%61 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %60, i64 2, 2
|
%61 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %60, i64 2, 2
|
||||||
%62 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %61)
|
%62 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %61)
|
||||||
store ptr %62, ptr @"main.iface$gZBF8fFlqIMZ9M6lT2VWPyc3eu5Co6j0WoKGIEgDPAw", align 8
|
store ptr %62, ptr @"main.iface$gZBF8fFlqIMZ9M6lT2VWPyc3eu5Co6j0WoKGIEgDPAw", align 8
|
||||||
%63 = call ptr @"github.com/goplus/llgo/internal/runtime.NewNamed"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" { ptr @9, i64 2 }, i64 25, i64 0, i64 1, i64 1)
|
%63 = call ptr @"github.com/goplus/llgo/internal/runtime.NewNamed"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" { ptr @9, i64 2 }, i64 25, i64 0, i64 1, i64 1)
|
||||||
%64 = load ptr, ptr @_llgo_main.C1, align 8
|
%64 = load ptr, ptr @_llgo_main.C1, align 8
|
||||||
@@ -721,7 +721,7 @@ declare ptr @"github.com/goplus/llgo/internal/runtime.Func"(%"github.com/goplus/
|
|||||||
|
|
||||||
declare void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr)
|
declare void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -563,7 +563,7 @@ _llgo_10: ; preds = %_llgo_9, %_llgo_8
|
|||||||
%76 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %73, 0
|
%76 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %73, 0
|
||||||
%77 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %76, i64 2, 1
|
%77 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %76, i64 2, 1
|
||||||
%78 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %77, i64 2, 2
|
%78 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %77, i64 2, 2
|
||||||
%79 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %78)
|
%79 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %78)
|
||||||
store ptr %79, ptr @"main.iface$zZ89tENb5h_KNjvpxf1TXPfaWFYn0IZrZwyVf42lRtA", align 8
|
store ptr %79, ptr @"main.iface$zZ89tENb5h_KNjvpxf1TXPfaWFYn0IZrZwyVf42lRtA", align 8
|
||||||
%80 = call ptr @"github.com/goplus/llgo/internal/runtime.NewNamedInterface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" { ptr @6, i64 1 })
|
%80 = call ptr @"github.com/goplus/llgo/internal/runtime.NewNamedInterface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" { ptr @6, i64 1 })
|
||||||
%81 = load ptr, ptr @_llgo_main.I, align 8
|
%81 = load ptr, ptr @_llgo_main.I, align 8
|
||||||
@@ -613,7 +613,7 @@ declare ptr @"github.com/goplus/llgo/internal/runtime.Func"(%"github.com/goplus/
|
|||||||
|
|
||||||
declare void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr)
|
declare void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -441,7 +441,7 @@ _llgo_28: ; preds = %_llgo_27, %_llgo_26
|
|||||||
%120 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %117, 0
|
%120 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %117, 0
|
||||||
%121 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %120, i64 2, 1
|
%121 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %120, i64 2, 1
|
||||||
%122 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %121, i64 2, 2
|
%122 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %121, i64 2, 2
|
||||||
%123 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %122)
|
%123 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %122)
|
||||||
store ptr %123, ptr @"main.iface$sO8a1LvuUsjXwiwaC6sR9-L4DiYgiOnZi7iosyShJXg", align 8
|
store ptr %123, ptr @"main.iface$sO8a1LvuUsjXwiwaC6sR9-L4DiYgiOnZi7iosyShJXg", align 8
|
||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
@@ -468,7 +468,7 @@ declare void @"github.com/goplus/llgo/internal/runtime.InitNamedInterface"(ptr,
|
|||||||
|
|
||||||
declare i1 @"github.com/goplus/llgo/internal/runtime.Implements"(ptr, ptr)
|
declare i1 @"github.com/goplus/llgo/internal/runtime.Implements"(ptr, ptr)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -606,7 +606,7 @@ _llgo_13: ; preds = %_llgo_6
|
|||||||
%72 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %70, 0
|
%72 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %70, 0
|
||||||
%73 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %72, i64 1, 1
|
%73 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %72, i64 1, 1
|
||||||
%74 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %73, i64 1, 2
|
%74 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %73, i64 1, 2
|
||||||
%75 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @8, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %74)
|
%75 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @8, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %74)
|
||||||
store ptr %75, ptr @"_llgo_iface$uRUteI7wmSy7y7ODhGzk0FdDaxGKMhVSSu6HZEv9aa0", align 8
|
store ptr %75, ptr @"_llgo_iface$uRUteI7wmSy7y7ODhGzk0FdDaxGKMhVSSu6HZEv9aa0", align 8
|
||||||
br label %_llgo_14
|
br label %_llgo_14
|
||||||
|
|
||||||
@@ -1004,7 +1004,7 @@ _llgo_61: ; preds = %_llgo_60
|
|||||||
%275 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %272, 0
|
%275 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %272, 0
|
||||||
%276 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %275, i64 2, 1
|
%276 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %275, i64 2, 1
|
||||||
%277 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %276, i64 2, 2
|
%277 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %276, i64 2, 2
|
||||||
%278 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @8, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %277)
|
%278 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @8, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %277)
|
||||||
store ptr %278, ptr @"_llgo_iface$jwmSdgh1zvY_TDIgLzCkvkbiyrdwl9N806DH0JGcyMI", align 8
|
store ptr %278, ptr @"_llgo_iface$jwmSdgh1zvY_TDIgLzCkvkbiyrdwl9N806DH0JGcyMI", align 8
|
||||||
br label %_llgo_62
|
br label %_llgo_62
|
||||||
|
|
||||||
@@ -1043,7 +1043,7 @@ _llgo_67: ; preds = %_llgo_66
|
|||||||
%292 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %291, 0
|
%292 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %291, 0
|
||||||
%293 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %292, i64 0, 1
|
%293 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %292, i64 0, 1
|
||||||
%294 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %293, i64 0, 2
|
%294 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %293, i64 0, 2
|
||||||
%295 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @8, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %294)
|
%295 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @8, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %294)
|
||||||
store ptr %295, ptr @_llgo_any, align 8
|
store ptr %295, ptr @_llgo_any, align 8
|
||||||
br label %_llgo_68
|
br label %_llgo_68
|
||||||
|
|
||||||
@@ -1067,7 +1067,7 @@ declare ptr @"github.com/goplus/llgo/internal/runtime.Func"(%"github.com/goplus/
|
|||||||
|
|
||||||
declare void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr)
|
declare void @"github.com/goplus/llgo/internal/runtime.SetDirectIface"(ptr)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -1154,7 +1154,7 @@ _llgo_29: ; preds = %_llgo_28
|
|||||||
%106 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %104, 0
|
%106 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %104, 0
|
||||||
%107 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %106, i64 1, 1
|
%107 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %106, i64 1, 1
|
||||||
%108 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %107, i64 1, 2
|
%108 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %107, i64 1, 2
|
||||||
%109 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %108)
|
%109 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %108)
|
||||||
store ptr %109, ptr @"_llgo_iface$eN81k1zqixGTyagHw_4nqH4mGfwwehTOCTXUlbT9kzk", align 8
|
store ptr %109, ptr @"_llgo_iface$eN81k1zqixGTyagHw_4nqH4mGfwwehTOCTXUlbT9kzk", align 8
|
||||||
br label %_llgo_30
|
br label %_llgo_30
|
||||||
|
|
||||||
@@ -1288,7 +1288,7 @@ _llgo_39: ; preds = %_llgo_38
|
|||||||
%191 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %188, 0
|
%191 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %188, 0
|
||||||
%192 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %191, i64 2, 1
|
%192 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %191, i64 2, 1
|
||||||
%193 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %192, i64 2, 2
|
%193 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %192, i64 2, 2
|
||||||
%194 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %193)
|
%194 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %193)
|
||||||
store ptr %194, ptr @"_llgo_iface$L2Ik-AJcd0jsoBw5fQ07pQpfUM-kh78Wn2bOeak6M3I", align 8
|
store ptr %194, ptr @"_llgo_iface$L2Ik-AJcd0jsoBw5fQ07pQpfUM-kh78Wn2bOeak6M3I", align 8
|
||||||
br label %_llgo_40
|
br label %_llgo_40
|
||||||
|
|
||||||
@@ -1393,7 +1393,7 @@ _llgo_47: ; preds = %_llgo_46
|
|||||||
%256 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %254, 0
|
%256 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %254, 0
|
||||||
%257 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %256, i64 1, 1
|
%257 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %256, i64 1, 1
|
||||||
%258 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %257, i64 1, 2
|
%258 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %257, i64 1, 2
|
||||||
%259 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %258)
|
%259 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %258)
|
||||||
store ptr %259, ptr @"_llgo_iface$Ly4zXiUMEac-hYAMw6b6miJ1JEhGfLyBWyBOhpsRZcU", align 8
|
store ptr %259, ptr @"_llgo_iface$Ly4zXiUMEac-hYAMw6b6miJ1JEhGfLyBWyBOhpsRZcU", align 8
|
||||||
br label %_llgo_48
|
br label %_llgo_48
|
||||||
|
|
||||||
@@ -1673,7 +1673,7 @@ _llgo_63: ; preds = %_llgo_62
|
|||||||
%440 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %438, 0
|
%440 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %438, 0
|
||||||
%441 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %440, i64 1, 1
|
%441 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %440, i64 1, 1
|
||||||
%442 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %441, i64 1, 2
|
%442 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %441, i64 1, 2
|
||||||
%443 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %442)
|
%443 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %442)
|
||||||
store ptr %443, ptr @"_llgo_iface$OFO8Us9n8ajWCabGedeuoJ-Za2zAMk4Jh0FunAcUCFE", align 8
|
store ptr %443, ptr @"_llgo_iface$OFO8Us9n8ajWCabGedeuoJ-Za2zAMk4Jh0FunAcUCFE", align 8
|
||||||
br label %_llgo_64
|
br label %_llgo_64
|
||||||
|
|
||||||
@@ -1719,7 +1719,7 @@ _llgo_65: ; preds = %_llgo_64
|
|||||||
%471 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %469, 0
|
%471 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %469, 0
|
||||||
%472 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %471, i64 1, 1
|
%472 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %471, i64 1, 1
|
||||||
%473 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %472, i64 1, 2
|
%473 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %472, i64 1, 2
|
||||||
%474 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %473)
|
%474 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %473)
|
||||||
store ptr %474, ptr @"_llgo_iface$Fh8eUJ-Gw4e6TYuajcFIOSCuqSPKAt5nS4ow7xeGXEU", align 8
|
store ptr %474, ptr @"_llgo_iface$Fh8eUJ-Gw4e6TYuajcFIOSCuqSPKAt5nS4ow7xeGXEU", align 8
|
||||||
br label %_llgo_66
|
br label %_llgo_66
|
||||||
|
|
||||||
@@ -1743,7 +1743,7 @@ declare void @"github.com/goplus/llgo/internal/runtime.InitNamedInterface"(ptr,
|
|||||||
|
|
||||||
declare i1 @"github.com/goplus/llgo/internal/runtime.Implements"(ptr, ptr)
|
declare i1 @"github.com/goplus/llgo/internal/runtime.Implements"(ptr, ptr)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -1159,7 +1159,7 @@ _llgo_15: ; preds = %_llgo_14
|
|||||||
%78 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %76, 0
|
%78 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %76, 0
|
||||||
%79 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %78, i64 1, 1
|
%79 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %78, i64 1, 1
|
||||||
%80 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %79, i64 1, 2
|
%80 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %79, i64 1, 2
|
||||||
%81 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %80)
|
%81 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %80)
|
||||||
store ptr %81, ptr @"_llgo_iface$VdBKYV8-gcMjZtZfcf-u2oKoj9Lu3VXwuG8TGCW2S4A", align 8
|
store ptr %81, ptr @"_llgo_iface$VdBKYV8-gcMjZtZfcf-u2oKoj9Lu3VXwuG8TGCW2S4A", align 8
|
||||||
br label %_llgo_16
|
br label %_llgo_16
|
||||||
|
|
||||||
@@ -1173,7 +1173,7 @@ _llgo_17: ; preds = %_llgo_16
|
|||||||
%85 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %84, 0
|
%85 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %84, 0
|
||||||
%86 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %85, i64 0, 1
|
%86 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %85, i64 0, 1
|
||||||
%87 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %86, i64 0, 2
|
%87 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %86, i64 0, 2
|
||||||
%88 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %87)
|
%88 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %87)
|
||||||
store ptr %88, ptr @_llgo_any, align 8
|
store ptr %88, ptr @_llgo_any, align 8
|
||||||
br label %_llgo_18
|
br label %_llgo_18
|
||||||
|
|
||||||
@@ -1187,7 +1187,7 @@ _llgo_19: ; preds = %_llgo_18
|
|||||||
%92 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %91, 0
|
%92 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %91, 0
|
||||||
%93 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %92, i64 0, 1
|
%93 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %92, i64 0, 1
|
||||||
%94 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %93, i64 0, 2
|
%94 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %93, i64 0, 2
|
||||||
%95 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %94)
|
%95 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @3, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %94)
|
||||||
%96 = call ptr @"github.com/goplus/llgo/internal/runtime.SliceOf"(ptr %95)
|
%96 = call ptr @"github.com/goplus/llgo/internal/runtime.SliceOf"(ptr %95)
|
||||||
store ptr %96, ptr @"[]_llgo_any", align 8
|
store ptr %96, ptr @"[]_llgo_any", align 8
|
||||||
br label %_llgo_20
|
br label %_llgo_20
|
||||||
@@ -1390,7 +1390,7 @@ declare void @"github.com/goplus/llgo/internal/runtime.InitNamed"(ptr, ptr, %"gi
|
|||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -964,7 +964,7 @@ _llgo_9: ; preds = %_llgo_8
|
|||||||
%59 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %58, 0
|
%59 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %58, 0
|
||||||
%60 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %59, i64 0, 1
|
%60 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %59, i64 0, 1
|
||||||
%61 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %60, i64 0, 2
|
%61 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %60, i64 0, 2
|
||||||
%62 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @4, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %61)
|
%62 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @4, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %61)
|
||||||
store ptr %62, ptr @_llgo_any, align 8
|
store ptr %62, ptr @_llgo_any, align 8
|
||||||
br label %_llgo_10
|
br label %_llgo_10
|
||||||
|
|
||||||
@@ -978,7 +978,7 @@ _llgo_11: ; preds = %_llgo_10
|
|||||||
%66 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %65, 0
|
%66 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %65, 0
|
||||||
%67 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %66, i64 0, 1
|
%67 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %66, i64 0, 1
|
||||||
%68 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %67, i64 0, 2
|
%68 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %67, i64 0, 2
|
||||||
%69 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @4, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %68)
|
%69 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @4, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %68)
|
||||||
%70 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34)
|
%70 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34)
|
||||||
%71 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 40)
|
%71 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 40)
|
||||||
%72 = call ptr @"github.com/goplus/llgo/internal/runtime.ArrayOf"(i64 8, ptr %71)
|
%72 = call ptr @"github.com/goplus/llgo/internal/runtime.ArrayOf"(i64 8, ptr %71)
|
||||||
@@ -987,7 +987,7 @@ _llgo_11: ; preds = %_llgo_10
|
|||||||
%75 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %74, 0
|
%75 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %74, 0
|
||||||
%76 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %75, i64 0, 1
|
%76 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %75, i64 0, 1
|
||||||
%77 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %76, i64 0, 2
|
%77 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %76, i64 0, 2
|
||||||
%78 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @4, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %77)
|
%78 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @4, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %77)
|
||||||
%79 = call ptr @"github.com/goplus/llgo/internal/runtime.ArrayOf"(i64 8, ptr %78)
|
%79 = call ptr @"github.com/goplus/llgo/internal/runtime.ArrayOf"(i64 8, ptr %78)
|
||||||
%80 = call %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/llgo/internal/runtime.StructField"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, ptr %79, i64 8, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false)
|
%80 = call %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/llgo/internal/runtime.StructField"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, ptr %79, i64 8, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false)
|
||||||
%81 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34)
|
%81 = call ptr @"github.com/goplus/llgo/internal/runtime.Basic"(i64 34)
|
||||||
@@ -1313,7 +1313,7 @@ declare void @"github.com/goplus/llgo/internal/runtime.MapDelete"(ptr, ptr, ptr)
|
|||||||
|
|
||||||
declare void @"github.com/goplus/llgo/internal/runtime.Panic"(%"github.com/goplus/llgo/internal/runtime.eface")
|
declare void @"github.com/goplus/llgo/internal/runtime.Panic"(%"github.com/goplus/llgo/internal/runtime.eface")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
; Function Attrs: nocallback nofree nounwind willreturn memory(argmem: write)
|
; Function Attrs: nocallback nofree nounwind willreturn memory(argmem: write)
|
||||||
declare void @llvm.memset(ptr nocapture writeonly, i8, i64, i1 immarg) #0
|
declare void @llvm.memset(ptr nocapture writeonly, i8, i64, i1 immarg) #0
|
||||||
|
|||||||
@@ -286,7 +286,7 @@ _llgo_13: ; preds = %_llgo_12
|
|||||||
%66 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %64, 0
|
%66 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %64, 0
|
||||||
%67 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %66, i64 1, 1
|
%67 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %66, i64 1, 1
|
||||||
%68 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %67, i64 1, 2
|
%68 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %67, i64 1, 2
|
||||||
%69 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %68)
|
%69 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %68)
|
||||||
store ptr %69, ptr @"_llgo_iface$BP0p_lUsEd-IbbtJVukGmgrdQkqzcoYzSiwgUvgFvUs", align 8
|
store ptr %69, ptr @"_llgo_iface$BP0p_lUsEd-IbbtJVukGmgrdQkqzcoYzSiwgUvgFvUs", align 8
|
||||||
br label %_llgo_14
|
br label %_llgo_14
|
||||||
|
|
||||||
@@ -320,7 +320,7 @@ declare ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64)
|
|||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -208,7 +208,7 @@ _llgo_13: ; preds = %_llgo_12
|
|||||||
%28 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %27, 0
|
%28 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %27, 0
|
||||||
%29 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %28, i64 0, 1
|
%29 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %28, i64 0, 1
|
||||||
%30 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %29, i64 0, 2
|
%30 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %29, i64 0, 2
|
||||||
%31 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %30)
|
%31 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %30)
|
||||||
store ptr %31, ptr @_llgo_any, align 8
|
store ptr %31, ptr @_llgo_any, align 8
|
||||||
br label %_llgo_14
|
br label %_llgo_14
|
||||||
|
|
||||||
@@ -218,7 +218,7 @@ _llgo_14: ; preds = %_llgo_13, %_llgo_12
|
|||||||
%34 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %33, 0
|
%34 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %33, 0
|
||||||
%35 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %34, i64 0, 1
|
%35 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %34, i64 0, 1
|
||||||
%36 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %35, i64 0, 2
|
%36 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %35, i64 0, 2
|
||||||
%37 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %36)
|
%37 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @0, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %36)
|
||||||
%38 = 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 1 }, ptr %37, i64 0, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false)
|
%38 = 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 1 }, ptr %37, i64 0, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, i1 false)
|
||||||
%39 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 56)
|
%39 = call ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64 56)
|
||||||
%40 = getelementptr %"github.com/goplus/llgo/internal/abi.StructField", ptr %39, i64 0
|
%40 = getelementptr %"github.com/goplus/llgo/internal/abi.StructField", ptr %39, i64 0
|
||||||
@@ -344,7 +344,7 @@ declare %"github.com/goplus/llgo/internal/abi.StructField" @"github.com/goplus/l
|
|||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.AllocU"(i64)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -477,7 +477,7 @@ _llgo_21: ; preds = %_llgo_20
|
|||||||
%196 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %194, 0
|
%196 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" undef, ptr %194, 0
|
||||||
%197 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %196, i64 1, 1
|
%197 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %196, i64 1, 1
|
||||||
%198 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %197, i64 1, 2
|
%198 = insertvalue %"github.com/goplus/llgo/internal/runtime.Slice" %197, i64 1, 2
|
||||||
%199 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, %"github.com/goplus/llgo/internal/runtime.String" zeroinitializer, %"github.com/goplus/llgo/internal/runtime.Slice" %198)
|
%199 = call ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String" { ptr @1, i64 4 }, %"github.com/goplus/llgo/internal/runtime.Slice" %198)
|
||||||
store ptr %199, ptr @"_llgo_iface$siNiE0pGpvdoyzPUhSP4dREmGht9v7Axb0C9hezIyDM", align 8
|
store ptr %199, ptr @"_llgo_iface$siNiE0pGpvdoyzPUhSP4dREmGht9v7Axb0C9hezIyDM", align 8
|
||||||
br label %_llgo_22
|
br label %_llgo_22
|
||||||
|
|
||||||
@@ -507,7 +507,7 @@ declare void @"github.com/goplus/llgo/internal/runtime.InitNamed"(ptr, ptr, %"gi
|
|||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.PointerTo"(ptr)
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
declare ptr @"github.com/goplus/llgo/internal/runtime.Interface"(%"github.com/goplus/llgo/internal/runtime.String", %"github.com/goplus/llgo/internal/runtime.Slice")
|
||||||
|
|
||||||
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
declare ptr @"github.com/goplus/llgo/internal/runtime.NewItab"(ptr, ptr)
|
||||||
|
|
||||||
|
|||||||
@@ -211,7 +211,6 @@ func Func(in, out []*Type, variadic bool) *FuncType {
|
|||||||
Align_: uint8(pointerAlign),
|
Align_: uint8(pointerAlign),
|
||||||
FieldAlign_: uint8(pointerAlign),
|
FieldAlign_: uint8(pointerAlign),
|
||||||
Kind_: uint8(abi.Func),
|
Kind_: uint8(abi.Func),
|
||||||
Str_: "func(...)",
|
|
||||||
},
|
},
|
||||||
In: in,
|
In: in,
|
||||||
Out: out,
|
Out: out,
|
||||||
@@ -219,9 +218,12 @@ func Func(in, out []*Type, variadic bool) *FuncType {
|
|||||||
if variadic {
|
if variadic {
|
||||||
ret.TFlag |= abi.TFlagVariadic
|
ret.TFlag |= abi.TFlagVariadic
|
||||||
}
|
}
|
||||||
|
ret.Str_ = funcStr(ret)
|
||||||
return ret
|
return ret
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewNamedInterface returns an interface type.
|
||||||
|
// Don't call NewNamed for named interface type.
|
||||||
func NewNamedInterface(pkgPath, name string) *InterfaceType {
|
func NewNamedInterface(pkgPath, name string) *InterfaceType {
|
||||||
if pkgPath != "" {
|
if pkgPath != "" {
|
||||||
name = pkgName(pkgPath) + "." + name
|
name = pkgName(pkgPath) + "." + name
|
||||||
@@ -263,9 +265,7 @@ func InitNamedInterface(ret *InterfaceType, methods []Imethod) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Interface returns an interface type.
|
func Interface(pkgPath string, methods []Imethod) *InterfaceType {
|
||||||
// Don't call NewNamed for named interface type.
|
|
||||||
func Interface(pkgPath, name string, methods []Imethod) *InterfaceType {
|
|
||||||
ret := &abi.InterfaceType{
|
ret := &abi.InterfaceType{
|
||||||
Type: Type{
|
Type: Type{
|
||||||
Size_: unsafe.Sizeof(eface{}),
|
Size_: unsafe.Sizeof(eface{}),
|
||||||
@@ -274,7 +274,6 @@ func Interface(pkgPath, name string, methods []Imethod) *InterfaceType {
|
|||||||
Align_: uint8(pointerAlign),
|
Align_: uint8(pointerAlign),
|
||||||
FieldAlign_: uint8(pointerAlign),
|
FieldAlign_: uint8(pointerAlign),
|
||||||
Kind_: uint8(abi.Interface),
|
Kind_: uint8(abi.Interface),
|
||||||
Str_: name,
|
|
||||||
},
|
},
|
||||||
PkgPath_: pkgPath,
|
PkgPath_: pkgPath,
|
||||||
Methods: methods,
|
Methods: methods,
|
||||||
@@ -284,6 +283,7 @@ func Interface(pkgPath, name string, methods []Imethod) *InterfaceType {
|
|||||||
} else {
|
} else {
|
||||||
ret.Equal = interequal
|
ret.Equal = interequal
|
||||||
}
|
}
|
||||||
|
ret.Str_ = interfaceStr(ret)
|
||||||
return ret
|
return ret
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -482,4 +482,55 @@ func SetClosure(t *abi.Type) {
|
|||||||
t.TFlag |= abi.TFlagClosure
|
t.TFlag |= abi.TFlagClosure
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func interfaceStr(ft *abi.InterfaceType) string {
|
||||||
|
repr := make([]byte, 0, 64)
|
||||||
|
repr = append(repr, "interface {"...)
|
||||||
|
for i, t := range ft.Methods {
|
||||||
|
if i > 0 {
|
||||||
|
repr = append(repr, "; "...)
|
||||||
|
}
|
||||||
|
repr = append(repr, ' ')
|
||||||
|
repr = append(repr, t.Name_...)
|
||||||
|
repr = append(repr, t.Typ_.String()[4:]...)
|
||||||
|
}
|
||||||
|
if len(ft.Methods) > 0 {
|
||||||
|
repr = append(repr, ' ')
|
||||||
|
}
|
||||||
|
repr = append(repr, '}')
|
||||||
|
return string(repr)
|
||||||
|
}
|
||||||
|
|
||||||
|
func funcStr(ft *abi.FuncType) string {
|
||||||
|
repr := make([]byte, 0, 64)
|
||||||
|
repr = append(repr, "func("...)
|
||||||
|
for i, t := range ft.In {
|
||||||
|
if i > 0 {
|
||||||
|
repr = append(repr, ", "...)
|
||||||
|
}
|
||||||
|
if ft.Variadic() && i == len(ft.In)-1 {
|
||||||
|
repr = append(repr, "..."...)
|
||||||
|
repr = append(repr, (*abi.SliceType)(unsafe.Pointer(t)).Elem.String()...)
|
||||||
|
} else {
|
||||||
|
repr = append(repr, t.String()...)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
repr = append(repr, ')')
|
||||||
|
out := ft.Out
|
||||||
|
if len(out) == 1 {
|
||||||
|
repr = append(repr, ' ')
|
||||||
|
} else if len(out) > 1 {
|
||||||
|
repr = append(repr, " ("...)
|
||||||
|
}
|
||||||
|
for i, t := range out {
|
||||||
|
if i > 0 {
|
||||||
|
repr = append(repr, ", "...)
|
||||||
|
}
|
||||||
|
repr = append(repr, t.String()...)
|
||||||
|
}
|
||||||
|
if len(out) > 1 {
|
||||||
|
repr = append(repr, ')')
|
||||||
|
}
|
||||||
|
return string(repr)
|
||||||
|
}
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -272,7 +272,7 @@ func ArrayOf(length uintptr, elem *Type) *Type {
|
|||||||
Align_: elem.Align_,
|
Align_: elem.Align_,
|
||||||
FieldAlign_: elem.FieldAlign_,
|
FieldAlign_: elem.FieldAlign_,
|
||||||
Kind_: uint8(abi.Array),
|
Kind_: uint8(abi.Array),
|
||||||
Str_: "[...]" + elem.String(), // TODO(xsw): itoa
|
Str_: "[" + string(itoa(make([]byte, 20), uint64(length))) + "]" + elem.String(),
|
||||||
},
|
},
|
||||||
Elem: elem,
|
Elem: elem,
|
||||||
Slice: SliceOf(elem),
|
Slice: SliceOf(elem),
|
||||||
|
|||||||
@@ -187,7 +187,7 @@ func (b Builder) abiInterfaceOf(t *types.Interface) func() Expr {
|
|||||||
fn := pkg.rtFunc("Interface")
|
fn := pkg.rtFunc("Interface")
|
||||||
tSlice := lastParamType(prog, fn)
|
tSlice := lastParamType(prog, fn)
|
||||||
methodSlice := b.SliceLit(tSlice, methods...)
|
methodSlice := b.SliceLit(tSlice, methods...)
|
||||||
return b.Call(fn, b.Str(pkg.Path()), b.Str(""), methodSlice)
|
return b.Call(fn, b.Str(pkg.Path()), methodSlice)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user