Memory location of the first byte of output.
Memory location of the next byte of output.
Current offset in bytes.
Program counter at the next byte of output.
Determines whether a direct branch is possible between the two given memory locations.
Puts an ADD instruction.
Puts an ADD instruction.
Puts an ADRP instruction.
Puts an AND instruction.
Puts a B COND instruction referencing labelId
, defined by a past
or future putLabel()
.
Puts a B instruction.
Puts a BL instruction.
Puts a BLR instruction.
Puts a BLR instruction expecting a raw pointer without any authentication bits.
Puts a BR instruction.
Puts a BR instruction expecting a raw pointer without any authentication bits.
Puts code needed for branching/jumping to the given address.
Puts raw data.
Puts code needed for calling a C function with the specified args
.
Puts code needed for calling a C function with the specified args
.
Optional
data: NativePointerValuePuts a CBNZ instruction referencing labelId
, defined by a past
or future putLabel()
.
Puts a CBZ instruction referencing labelId
, defined by a past
or future putLabel()
.
Puts a CMP instruction.
Puts an LDP instruction.
Puts an LDR instruction.
Puts an LDR instruction with a dangling data reference,
returning an opaque ref value that should be passed to putLdrRegValue()
at the desired location.
Puts an LDR instruction.
Puts an LDR instruction.
Puts the value and updates the LDR instruction
from a previous putLdrRegRef()
.
Puts an LDRSW instruction.
Puts a MOV instruction.
Puts a POP instruction.
Puts a PUSH instruction.
Puts a STP instruction.
Puts a STR instruction.
Puts a SUB instruction.
Puts a SUB instruction.
Puts a TBNZ instruction referencing labelId
, defined by a past
or future putLabel()
.
Puts a TBZ instruction referencing labelId
, defined by a past
or future putLabel()
.
Puts a TST instruction.
Puts an UXTW instruction.
Puts an XPACI instruction.
Recycles instance.
Optional
options: Arm64WriterOptionsSigns the given pointer value.
Generated using TypeDoc
Generates machine code for arm64.