global var init

This commit is contained in:
xushiwei
2024-04-21 00:22:39 +08:00
parent 358e18b9de
commit 8f31e4a6d3
7 changed files with 22 additions and 11 deletions

View File

@@ -1,7 +1,7 @@
; ModuleID = 'main'
source_filename = "main"
@"init$guard" = external global ptr
@"init$guard" = global ptr null
define void @init() {
_llgo_0:

View File

@@ -1,8 +1,8 @@
; ModuleID = 'main'
source_filename = "main"
@"init$guard" = external global ptr
@a = external global ptr
@"init$guard" = global ptr null
@a = global ptr null
define void @init() {
_llgo_0:

View File

@@ -53,6 +53,7 @@ func (p *context) compileGlobal(pkg llssa.Package, gbl *ssa.Global) llssa.Global
return g
}
g := pkg.NewVar(gbl.Name(), gbl.Type())
g.Init(p.prog.Null(g.Type))
p.glbs[gbl] = g
return g
}

View File

@@ -115,8 +115,8 @@ var a int
`, `; ModuleID = 'foo'
source_filename = "foo"
@"init$guard" = external global ptr
@a = external global ptr
@"init$guard" = global ptr null
@a = global ptr null
define void @init() {
_llgo_0:
@@ -142,7 +142,7 @@ func fn(a int, b float64) int {
`, `; ModuleID = 'foo'
source_filename = "foo"
@"init$guard" = external global ptr
@"init$guard" = global ptr null
define void @init() {
_llgo_0: