From fe10ddc7203ba836f3b316d7914aa9ed4520dc2c Mon Sep 17 00:00:00 2001 From: visualfc Date: Fri, 7 Jun 2024 15:21:27 +0800 Subject: [PATCH] build: build runtime local --- cl/_testrt/concat/in.go | 6 +---- cl/_testrt/concat/out.ll | 14 +++------- cl/compile_test.go | 4 --- internal/abi/llgo_autogen.lla | Bin 4157 -> 0 bytes internal/build/build.go | 42 ++++++------------------------ internal/runtime/c/c.go | 13 +++------ internal/runtime/c/c_default.go | 13 ++++++--- internal/runtime/c/c_default.ll | 9 ------- internal/runtime/c/c_linux.go | 13 ++++++--- internal/runtime/c/c_linux.ll | 2 -- internal/runtime/llgo_autogen.lla | Bin 14100 -> 0 bytes ssa/cl_test.go | 8 ------ 12 files changed, 37 insertions(+), 87 deletions(-) delete mode 100644 internal/abi/llgo_autogen.lla delete mode 100644 internal/runtime/c/c_default.ll delete mode 100644 internal/runtime/c/c_linux.ll delete mode 100644 internal/runtime/llgo_autogen.lla diff --git a/cl/_testrt/concat/in.go b/cl/_testrt/concat/in.go index cb9b44b1..2f0f4a24 100644 --- a/cl/_testrt/concat/in.go +++ b/cl/_testrt/concat/in.go @@ -1,9 +1,5 @@ package main -import ( - "github.com/goplus/llgo/internal/runtime/c" -) - func concat(args ...string) (ret string) { for _, v := range args { ret += v @@ -17,5 +13,5 @@ func info(s string) string { func main() { result := concat("Hello", " ", "World") - c.Fprintf(c.Stderr, c.Str("Hi, %s\n"), c.AllocaCStr(result)) + println(result) } diff --git a/cl/_testrt/concat/out.ll b/cl/_testrt/concat/out.ll index bbd1c3f6..ba32c6e5 100644 --- a/cl/_testrt/concat/out.ll +++ b/cl/_testrt/concat/out.ll @@ -13,8 +13,6 @@ source_filename = "main" @3 = private unnamed_addr constant [6 x i8] c"Hello\00", align 1 @4 = private unnamed_addr constant [2 x i8] c" \00", align 1 @5 = private unnamed_addr constant [6 x i8] c"World\00", align 1 -@stderr = external global ptr -@6 = private unnamed_addr constant [8 x i8] c"Hi, %s\0A\00", align 1 define %"github.com/goplus/llgo/internal/runtime.String" @main.concat(%"github.com/goplus/llgo/internal/runtime.Slice" %0) { _llgo_0: @@ -119,12 +117,8 @@ _llgo_0: store i64 3, ptr %21, align 4 %22 = load %"github.com/goplus/llgo/internal/runtime.Slice", ptr %18, align 8 %23 = call %"github.com/goplus/llgo/internal/runtime.String" @main.concat(%"github.com/goplus/llgo/internal/runtime.Slice" %22) - %24 = load ptr, ptr @stderr, align 8 - %25 = extractvalue %"github.com/goplus/llgo/internal/runtime.String" %23, 1 - %26 = add i64 %25, 1 - %27 = alloca i8, i64 %26, align 1 - %28 = call ptr @"github.com/goplus/llgo/internal/runtime.CStrCopy"(ptr %27, %"github.com/goplus/llgo/internal/runtime.String" %23) - %29 = call i32 (ptr, ptr, ...) @fprintf(ptr %24, ptr @6, ptr %28) + call void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String" %23) + call void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8 10) ret i32 0 } @@ -136,6 +130,6 @@ declare void @"github.com/goplus/llgo/internal/runtime.init"() declare ptr @"github.com/goplus/llgo/internal/runtime.AllocZ"(i64) -declare ptr @"github.com/goplus/llgo/internal/runtime.CStrCopy"(ptr, %"github.com/goplus/llgo/internal/runtime.String") +declare void @"github.com/goplus/llgo/internal/runtime.PrintString"(%"github.com/goplus/llgo/internal/runtime.String") -declare i32 @fprintf(ptr, ptr, ...) +declare void @"github.com/goplus/llgo/internal/runtime.PrintByte"(i8) diff --git a/cl/compile_test.go b/cl/compile_test.go index 48639cf5..130d6d6b 100644 --- a/cl/compile_test.go +++ b/cl/compile_test.go @@ -60,10 +60,6 @@ func TestPython(t *testing.T) { cltest.Pkg(t, ssa.PkgPython, "../py/llgo_autogen.ll") } -func TestRuntime(t *testing.T) { - cltest.Pkg(t, ssa.PkgRuntime, "../internal/runtime/llgo_autogen.ll") -} - func TestVar(t *testing.T) { testCompile(t, `package foo diff --git a/internal/abi/llgo_autogen.lla b/internal/abi/llgo_autogen.lla deleted file mode 100644 index 17d02dd30d22212f4f65297c12ed42a56a1d182f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4157 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 diff --git a/ssa/cl_test.go b/ssa/cl_test.go index 209c3bb4..947d2eab 100644 --- a/ssa/cl_test.go +++ b/ssa/cl_test.go @@ -41,14 +41,6 @@ func TestFromTestdata(t *testing.T) { cltest.FromDir(t, "", "../cl/_testdata", false) } -func TestRuntime(t *testing.T) { - cltest.Pkg(t, "github.com/goplus/llgo/internal/runtime", "../internal/runtime/llgo_autogen.ll") -} - -func TestAbi(t *testing.T) { - cltest.Pkg(t, "github.com/goplus/llgo/internal/abi", "../internal/abi/llgo_autogen.ll") -} - func TestMakeInterface(t *testing.T) { prog := ssatest.NewProgram(t, &ssa.Target{GOARCH: "x86"}) pkg := prog.NewPackage("foo", "foo")