cl

package
v0.9.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 13, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DbgFlagInstruction dbgFlags = 1 << iota
	DbgFlagGoSSA

	DbgFlagAll = DbgFlagInstruction | DbgFlagGoSSA
)
View Source
const (
	PkgNormal = iota
	PkgLLGo
	PkgPyModule   // py.<module>
	PkgNoInit     // noinit: a package that don't need to be initialized
	PkgDeclOnly   // decl: a package that only have declarations
	PkgLinkIR     // link llvm ir (.ll)
	PkgLinkExtern // link external object (.a/.so/.dll/.dylib/etc.)

)
View Source
const (
	RuntimeInit = llssa.PkgRuntime + ".init"
)

Variables

This section is empty.

Functions

func NewPackage

func NewPackage(prog llssa.Program, pkg *ssa.Package, files []*ast.File) (ret llssa.Package, err error)

NewPackage compiles a Go package to LLVM IR package.

func NewPackageEx added in v0.8.8

func NewPackageEx(prog llssa.Program, patches Patches, pkg *ssa.Package, files []*ast.File) (ret llssa.Package, err error)

NewPackageEx compiles a Go package to LLVM IR package.

func ParsePkgSyntax added in v0.9.1

func ParsePkgSyntax(prog llssa.Program, pkg *types.Package, files []*ast.File)

ParsePkgSyntax parses AST of a package to check llgo:type in type declaration.

func PkgKindOf added in v0.4.0

func PkgKindOf(pkg *types.Package) (int, string)

PkgKindOf returns the kind of a package.

func SetDebug

func SetDebug(dbgFlags dbgFlags)

SetDebug sets debug flags.

Types

type Patch added in v0.8.10

type Patch struct {
	Alt   *ssa.Package
	Types *types.Package
}

Patch is a patch of some package.

type Patches added in v0.8.9

type Patches = map[string]Patch

Patches is patches of some packages.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL