SetBlockEx: BeforeLast

This commit is contained in:
xushiwei
2024-05-26 16:18:24 +08:00
parent 5cf6a30027
commit ddabfdca3d
9 changed files with 181 additions and 137 deletions

View File

@@ -32,14 +32,14 @@ _llgo_0:
_llgo_1: ; preds = %_llgo_2, %_llgo_0
%8 = phi ptr [ %6, %_llgo_0 ], [ %22, %_llgo_2 ]
%9 = phi i64 [ %7, %_llgo_0 ], [ %23, %_llgo_2 ]
%10 = phi i64 [ -1, %_llgo_0 ], [ %15, %_llgo_2 ]
%11 = alloca %"github.com/goplus/llgo/internal/runtime.String", align 8
%12 = getelementptr inbounds %"github.com/goplus/llgo/internal/runtime.String", ptr %11, i32 0, i32 0
store ptr %8, ptr %12, align 8
%13 = getelementptr inbounds %"github.com/goplus/llgo/internal/runtime.String", ptr %11, i32 0, i32 1
store i64 %9, ptr %13, align 4
%14 = load %"github.com/goplus/llgo/internal/runtime.String", ptr %11, align 8
%15 = add i64 %10, 1
%10 = alloca %"github.com/goplus/llgo/internal/runtime.String", align 8
%11 = getelementptr inbounds %"github.com/goplus/llgo/internal/runtime.String", ptr %10, i32 0, i32 0
store ptr %8, ptr %11, align 8
%12 = getelementptr inbounds %"github.com/goplus/llgo/internal/runtime.String", ptr %10, i32 0, i32 1
store i64 %9, ptr %12, align 4
%13 = load %"github.com/goplus/llgo/internal/runtime.String", ptr %10, align 8
%14 = phi i64 [ -1, %_llgo_0 ], [ %15, %_llgo_2 ]
%15 = add i64 %14, 1
%16 = icmp slt i64 %15, %1
br i1 %16, label %_llgo_2, label %_llgo_3
@@ -49,13 +49,13 @@ _llgo_2: ; preds = %_llgo_1
%18 = extractvalue %"github.com/goplus/llgo/internal/runtime.Slice" %0, 0
%19 = getelementptr inbounds %"github.com/goplus/llgo/internal/runtime.String", ptr %18, i64 %15
%20 = load %"github.com/goplus/llgo/internal/runtime.String", ptr %19, align 8
%21 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.StringCat"(%"github.com/goplus/llgo/internal/runtime.String" %14, %"github.com/goplus/llgo/internal/runtime.String" %20)
%21 = call %"github.com/goplus/llgo/internal/runtime.String" @"github.com/goplus/llgo/internal/runtime.StringCat"(%"github.com/goplus/llgo/internal/runtime.String" %13, %"github.com/goplus/llgo/internal/runtime.String" %20)
%22 = extractvalue %"github.com/goplus/llgo/internal/runtime.String" %21, 0
%23 = extractvalue %"github.com/goplus/llgo/internal/runtime.String" %21, 1
br label %_llgo_1
_llgo_3: ; preds = %_llgo_1
ret %"github.com/goplus/llgo/internal/runtime.String" %14
ret %"github.com/goplus/llgo/internal/runtime.String" %13
}
define %"github.com/goplus/llgo/internal/runtime.String" @main.info(%"github.com/goplus/llgo/internal/runtime.String" %0) {