package
0.15.1
Repository: https://github.com/twitchyliquid64/golang-asm.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
Package arm64 implements an ARM64 assembler.
No description provided by the author
Package ppc64 implements a PPC64 assembler that assembles Go asm into the corresponding PPC64 instructions as defined by the Power ISA 3.0B.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Functions

No description provided by the author
No description provided by the author
No description provided by the author
CConv formats opcode suffix bits (Prog.Scond).
CConvARM formats ARM opcode suffix bits (mostly condition codes).
No description provided by the author
No description provided by the author
No description provided by the author
MarkUnsafePoints inserts PCDATAs to mark nonpreemptible and restartable instruction sequences, based on isUnsafePoint and isRestartable predicate.
No description provided by the author
newPCIter creates a PCIter with a scale factor for the PC step size.
No description provided by the author
No description provided by the author
RegisterOpcode binds a list of instruction names to a given instruction number range.
RegisterOpSuffix assigns cconv function for formatting opcode suffixes when compiling for GOARCH=arch.
RegisterRegister binds a pretty-printer (Rconv) for register numbers to a given register number range.
RegisterRegisterList binds a pretty-printer (RLconv) for register list numbers to a given register list number range.
No description provided by the author
No description provided by the author
Entry point of writing new object file.

# Constants

These are the portable opcodes.
Each architecture is allotted a distinct subspace of opcode values for declaring its arch-specific opcodes.
Each architecture is allotted a distinct subspace of opcode values for declaring its arch-specific opcodes.
Each architecture is allotted a distinct subspace of opcode values for declaring its arch-specific opcodes.
Each architecture is allotted a distinct subspace of opcode values for declaring its arch-specific opcodes.
Each architecture is allotted a distinct subspace of opcode values for declaring its arch-specific opcodes.
Each architecture is allotted a distinct subspace of opcode values for declaring its arch-specific opcodes.
Each architecture is allotted a distinct subspace of opcode values for declaring its arch-specific opcodes.
Each architecture is allotted a distinct subspace of opcode values for declaring its arch-specific opcodes.
Each architecture is allotted a distinct subspace of opcode values for declaring its arch-specific opcodes.
ABI0 is the stable stack-based ABI.
No description provided by the author
ABIInternal is the internal ABI that may change between Go versions.
These are the portable opcodes.
These are the portable opcodes.
These are the portable opcodes.
These are the portable opcodes.
These are the portable opcodes.
These are the portable opcodes.
These are the portable opcodes.
The number of opcodes available for any given architecture.
AND with this to use the opcode as an array index.
These are the portable opcodes.
These are the portable opcodes.
These are the portable opcodes.
These are the portable opcodes.
These are the portable opcodes.
No description provided by the author
ContentAddressable indicates this is a content-addressable symbol.
No description provided by the author
Indexed indicates this symbol has been assigned with an index (when using the new object file format).
No description provided by the author
Local means make the symbol local even when compiling Go code to reference Go symbols in other shared libraries, as in this mode symbols are global by default.
MakeTypelink means that the type should have an entry in the typelink table.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ReflectMethod means the function may call reflect.Type.Method or reflect.Type.MethodByName.
No description provided by the author
TopFrame means that this function is an entry point and unwinders should not keep unwinding beyond this frame.
Only applied on type descriptor symbols, UsedInIface indicates this type is converted to an interface.
For function symbols; indicates that the specified function was the target of an inline during compilation.
No description provided by the author
These are the portable opcodes.
These are the portable opcodes.
ARM scond byte */.
ARM scond byte */.
ARM scond byte */.
ARM scond byte */.
ARM scond byte */.
ARM scond byte */.
ARM scond byte */.
It is ok for the linker to get multiple of these symbols.
Generate a sequence of opcodes that is as short as possible.
Generate a sequence of opcodes that is as short as possible.
When passed to ggloblsym, causes Local to be set to true on the LSym it creates.
No description provided by the author
No description provided by the author
No description provided by the author
A reference to name@GOT(SB) is a reference to the entry in the global offset table for 'name'.
No description provided by the author
No description provided by the author
No description provided by the author
Indicates that this is a reference to a TOC anchor.
This function uses its incoming context register.
Do not insert instructions to allocate a stack frame for this function.
Don't profile the marked routine.
This data contains no pointers.
Don't insert stack check preamble.
Generate a sequence of opcodes that is as short as possible.
Generate a sequence of opcodes that is as short as possible.
Because of masking operations in the encodings, each register space should start at 0 modulo some power of 2.
No description provided by the author
No description provided by the author
range [8k, 13k).
range [13k, 14k).
range [4k, 8k).
range [15k, 16k).
range [14k, 15k).
No description provided by the author
Function can call reflect.Type.Method or reflect.Type.MethodByName.
No description provided by the author
Each architecture is allotted a distinct subspace: [Lo, Hi) for declaring its arch-specific register list numbers.
arm64 uses the 60th bit to differentiate from other archs.
Each architecture is allotted a distinct subspace: [Lo, Hi) for declaring its arch-specific register list numbers.
Each architecture is allotted a distinct subspace: [Lo, Hi) for declaring its arch-specific register list numbers.
Each architecture is allotted a distinct subspace: [Lo, Hi) for declaring its arch-specific register list numbers.
x86 uses the 61th bit to differentiate from other archs.
Put this data in a read-only section.
StaticNamePref is the prefix the front end applies to static temporary variables.
Allocate a word of thread local storage and store the offset from the thread local base to the thread local storage in this variable.
Function is the top of the call stack.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
This is a wrapper function and should not count as disabling 'recover'.

# Variables

No description provided by the author

# Structs

No description provided by the author
No description provided by the author
This table is designed to aid in the creation of references between DWARF subprogram DIEs.
A FuncInfo contains extra fields for STEXT symbols.
InlinedCall is a node in an InlTree.
No description provided by the author
InlTree is a collection of inlined calls.
Link holds the context for writing object code from a compiler to be linker input or for reading that input into the linker.
LinkArch is the definition of a single architecture.
An LSym is the sort of symbol that is written to an object file.
No description provided by the author
PCIter iterates over encoded pcdata tables.
No description provided by the author
No description provided by the author
Prog describes a single machine instruction.
No description provided by the author

# Type aliases

ABI is the calling convention of a text symbol.
No description provided by the author
No description provided by the author
An As denotes an assembler opcode.
Attribute is a set of symbol attributes.
No description provided by the author
ProgAlloc is a function that allocates Progs.