build fix: llssa.Initialize before NewProgram

This commit is contained in:
xushiwei
2024-05-28 17:41:50 +08:00
parent 8091c9e737
commit 585bdb549f
2 changed files with 11 additions and 9 deletions

View File

@@ -88,15 +88,21 @@ const (
)
func Do(args []string, conf *Config) {
prog := llssa.NewProgram(nil)
sizes := prog.TypeSizes
flags, patterns, verbose := ParseArgs(args, buildFlags)
cfg := &packages.Config{
Mode: loadSyntax | packages.NeedDeps | packages.NeedModule | packages.NeedExportFile,
BuildFlags: flags,
}
llssa.Initialize(llssa.InitAll)
if verbose {
llssa.SetDebug(llssa.DbgFlagAll)
cl.SetDebug(cl.DbgFlagAll)
}
prog := llssa.NewProgram(nil)
sizes := prog.TypeSizes
if patterns == nil {
patterns = []string{"."}
}
@@ -117,12 +123,6 @@ func Do(args []string, conf *Config) {
return
}
llssa.Initialize(llssa.InitAll)
if verbose {
llssa.SetDebug(llssa.DbgFlagAll)
cl.SetDebug(cl.DbgFlagAll)
}
var needRt bool
var rt []*packages.Package
load := func() []*packages.Package {

View File

@@ -170,10 +170,12 @@ func SizeOf(prog Program, t Type, n ...int64) Expr {
return prog.IntVal(size, prog.Uintptr())
}
/*
func OffsetOf(prog Program, t Type, i int) Expr {
offset := prog.OffsetOf(t, i)
return prog.IntVal(offset, prog.Uintptr())
}
*/
func (p Program) PointerSize() int {
return p.td.PointerSize()