compiler

package
v0.0.0-...-f6f6578 Latest Latest
Warning

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

Go to latest
Published: Oct 28, 2021 License: MIT, Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package compiler generates sys descriptions of syscalls, types and resources from textual descriptions.

Package compiler generates sys descriptions of syscalls, types and resources from textual descriptions.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CollectUnused

func CollectUnused(desc *ast.Description, target *targets.Target, eh ast.ErrorHandler) ([]ast.Node, error)

func DeserializeConsts

func DeserializeConsts(data []byte, file string, eh ast.ErrorHandler) map[string]uint64

func DeserializeConstsGlob

func DeserializeConstsGlob(glob string, eh ast.ErrorHandler) map[string]uint64

func ExtractConsts

func ExtractConsts(desc *ast.Description, target *targets.Target, eh ast.ErrorHandler) map[string]*ConstInfo

func FabricateSyscallConsts

func FabricateSyscallConsts(target *targets.Target, constInfo map[string]*ConstInfo, consts map[string]uint64)

FabricateSyscallConsts adds syscall number constants to consts map. Used for test OS to not bother specifying consts for all syscalls.

func Fuzz

func Fuzz(data []byte) int

func SerializeConsts

func SerializeConsts(consts map[string]uint64, undeclared map[string]bool) []byte

Types

type ConstInfo

type ConstInfo struct {
	File     string
	Consts   []string
	Includes []string
	Incdirs  []string
	Defines  map[string]string
}

type Prog

type Prog struct {
	Resources []*prog.ResourceDesc
	Syscalls  []*prog.Syscall
	Types     []prog.Type
	// Set of unsupported syscalls/flags.
	Unsupported map[string]bool
	// contains filtered or unexported fields
}

Prog is description compilation result.

func Compile

func Compile(desc *ast.Description, consts map[string]uint64, target *targets.Target, eh ast.ErrorHandler) *Prog

Compile compiles sys description.

Jump to

Keyboard shortcuts

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