...

Package staticdata

import "cmd/compile/internal/staticdata"
Overview
Index

Overview ▾

func FuncLinksym

func FuncLinksym(n *ir.Name) *obj.LSym

FuncLinksym returns n·f, the function value symbol for n.

func GlobalLinksym

func GlobalLinksym(n *ir.Name) *obj.LSym

func InitAddr

func InitAddr(n *ir.Name, noff int64, lsym *obj.LSym)

InitAddr is InitAddrOffset, with offset fixed to 0.

func InitAddrOffset

func InitAddrOffset(n *ir.Name, noff int64, lsym *obj.LSym, off int64)

InitAddrOffset writes the static name symbol lsym to n, it does not modify n. It's the caller responsibility to make sure lsym is from ONAME/PEXTERN node.

func InitConst

func InitConst(n *ir.Name, noff int64, c ir.Node, wid int)

InitConst writes the static literal c to n. Neither n nor c is modified.

func InitSlice

func InitSlice(n *ir.Name, noff int64, lsym *obj.LSym, lencap int64)

InitSlice writes a static slice symbol {lsym, lencap, lencap} to n+noff, it does not modify n. It's the caller responsibility to make sure lsym is from ONAME node.

func InitSliceBytes

func InitSliceBytes(nam *ir.Name, off int64, s string)

func StringSym

func StringSym(pos src.XPos, s string) (data *obj.LSym)

StringSym returns a symbol containing the string s. The symbol contains the string data, not a string header.

func StringSymNoCommon

func StringSymNoCommon(s string) (data *obj.LSym)

StringSymNoCommon is like StringSym, but produces a symbol that is not content- addressable. This symbol is not supposed to appear in the final binary, it is only used to pass string arguments to the linker like R_USENAMEDMETHOD does.

func WriteEmbed

func WriteEmbed(v *ir.Name)

WriteEmbed emits the init data for a //go:embed variable, which is either a string, a []byte, or an embed.FS.

func WriteFuncSyms

func WriteFuncSyms()