ssa: export target and module

This commit is contained in:
visualfc
2025-08-12 09:29:43 +08:00
parent b2c6534c92
commit 2a88d5777a

View File

@@ -265,6 +265,14 @@ func NewProgram(target *Target) Program {
} }
} }
func (p Program) Target() *Target {
return p.target
}
func (p Program) TargetData() llvm.TargetData {
return p.td
}
func (p Program) SetPatch(patchType func(types.Type) types.Type) { func (p Program) SetPatch(patchType func(types.Type) types.Type) {
p.patchType = patchType p.patchType = patchType
} }
@@ -689,6 +697,10 @@ type aPackage struct {
type Package = *aPackage type Package = *aPackage
func (p Package) Module() llvm.Module {
return p.mod
}
func (p Package) rtFunc(fnName string) Expr { func (p Package) rtFunc(fnName string) Expr {
p.NeedRuntime = true p.NeedRuntime = true
fn := p.Prog.runtime().Scope().Lookup(fnName).(*types.Func) fn := p.Prog.runtime().Scope().Lookup(fnName).(*types.Func)