ssa: fix abiTupleOf

This commit is contained in:
visualfc
2025-09-25 19:42:08 +08:00
parent 8959c83397
commit 5592a8fc26
13 changed files with 2850 additions and 2750 deletions

View File

@@ -174,29 +174,29 @@ _llgo_3: ; preds = %_llgo_2
br label %_llgo_4
_llgo_4: ; preds = %_llgo_3, %_llgo_2
%6 = load ptr, ptr @_llgo_string, align 8
%7 = load ptr, ptr @_llgo_int, align 8
%8 = load ptr, ptr @_llgo_string, align 8
%9 = load ptr, ptr @"_llgo_func$CFociaKlCvq9sERkLkn9LoCwUbRN_-idPZ-9Ui7-BZI", align 8
%10 = icmp eq ptr %9, null
br i1 %10, label %_llgo_5, label %_llgo_6
%6 = load ptr, ptr @"_llgo_func$CFociaKlCvq9sERkLkn9LoCwUbRN_-idPZ-9Ui7-BZI", align 8
%7 = icmp eq ptr %6, null
br i1 %7, label %_llgo_5, label %_llgo_6
_llgo_5: ; preds = %_llgo_4
%11 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.AllocU"(i64 16)
%12 = getelementptr ptr, ptr %11, i64 0
store ptr %6, ptr %12, align 8
%13 = getelementptr ptr, ptr %11, i64 1
store ptr %7, ptr %13, align 8
%14 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" undef, ptr %11, 0
%15 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %14, i64 2, 1
%16 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %15, i64 2, 2
%8 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Basic"(i64 24)
%9 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Basic"(i64 34)
%10 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.AllocU"(i64 16)
%11 = getelementptr ptr, ptr %10, i64 0
store ptr %8, ptr %11, align 8
%12 = getelementptr ptr, ptr %10, i64 1
store ptr %9, ptr %12, align 8
%13 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" undef, ptr %10, 0
%14 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %13, i64 2, 1
%15 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %14, i64 2, 2
%16 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Basic"(i64 24)
%17 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.AllocU"(i64 8)
%18 = getelementptr ptr, ptr %17, i64 0
store ptr %8, ptr %18, align 8
store ptr %16, ptr %18, align 8
%19 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" undef, ptr %17, 0
%20 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %19, i64 1, 1
%21 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %20, i64 1, 2
%22 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Func"(%"github.com/goplus/llgo/runtime/internal/runtime.Slice" %16, %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %21, i1 false)
%22 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Func"(%"github.com/goplus/llgo/runtime/internal/runtime.Slice" %15, %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %21, i1 false)
call void @"github.com/goplus/llgo/runtime/internal/runtime.SetDirectIface"(ptr %22)
store ptr %22, ptr @"_llgo_func$CFociaKlCvq9sERkLkn9LoCwUbRN_-idPZ-9Ui7-BZI", align 8
br label %_llgo_6
@@ -213,24 +213,24 @@ _llgo_7: ; preds = %_llgo_6
br label %_llgo_8
_llgo_8: ; preds = %_llgo_7, %_llgo_6
%26 = load ptr, ptr @_llgo_string, align 8
%27 = load ptr, ptr @_llgo_int, align 8
%28 = load ptr, ptr @_llgo_string, align 8
%29 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.AllocU"(i64 16)
%30 = getelementptr ptr, ptr %29, i64 0
store ptr %26, ptr %30, align 8
%31 = getelementptr ptr, ptr %29, i64 1
store ptr %27, ptr %31, align 8
%32 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" undef, ptr %29, 0
%33 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %32, i64 2, 1
%34 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %33, i64 2, 2
%26 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Basic"(i64 24)
%27 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Basic"(i64 34)
%28 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.AllocU"(i64 16)
%29 = getelementptr ptr, ptr %28, i64 0
store ptr %26, ptr %29, align 8
%30 = getelementptr ptr, ptr %28, i64 1
store ptr %27, ptr %30, align 8
%31 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" undef, ptr %28, 0
%32 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %31, i64 2, 1
%33 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %32, i64 2, 2
%34 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Basic"(i64 24)
%35 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.AllocU"(i64 8)
%36 = getelementptr ptr, ptr %35, i64 0
store ptr %28, ptr %36, align 8
store ptr %34, ptr %36, align 8
%37 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" undef, ptr %35, 0
%38 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %37, i64 1, 1
%39 = insertvalue %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %38, i64 1, 2
%40 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Func"(%"github.com/goplus/llgo/runtime/internal/runtime.Slice" %34, %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %39, i1 false)
%40 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Func"(%"github.com/goplus/llgo/runtime/internal/runtime.Slice" %33, %"github.com/goplus/llgo/runtime/internal/runtime.Slice" %39, i1 false)
%41 = call %"github.com/goplus/llgo/runtime/abi.StructField" @"github.com/goplus/llgo/runtime/internal/runtime.StructField"(%"github.com/goplus/llgo/runtime/internal/runtime.String" { ptr @0, i64 2 }, ptr %40, i64 0, %"github.com/goplus/llgo/runtime/internal/runtime.String" zeroinitializer, i1 false)
%42 = call ptr @"github.com/goplus/llgo/runtime/internal/runtime.Basic"(i64 58)
%43 = call %"github.com/goplus/llgo/runtime/abi.StructField" @"github.com/goplus/llgo/runtime/internal/runtime.StructField"(%"github.com/goplus/llgo/runtime/internal/runtime.String" { ptr @1, i64 5 }, ptr %42, i64 8, %"github.com/goplus/llgo/runtime/internal/runtime.String" zeroinitializer, i1 false)