Package jnr.a64asm

Class Assembler_A64


public final class Assembler_A64 extends Serializer
Low level code generation.
  • Field Details

    • _buffer

      private final CodeBuffer _buffer
    • _relocData

      private final List<RelocData> _relocData
    • cpuInfo

      private final CpuInfo cpuInfo
    • _properties

      private int _properties
    • _logger

      private final Logger _logger
    • cpu

      private final CPU_A64 cpu
    • Aarch_64

      public static final CPU_A64 Aarch_64
  • Constructor Details

    • Assembler_A64

      public Assembler_A64(CPU_A64 cpu)
  • Method Details

    • is64

      boolean is64()
      Specified by:
      is64 in class SerializerCore
    • intValue

      private static final int intValue(boolean b)
    • offset

      public final int offset()
    • codeSize

      public final int codeSize()
      Gets the required size of memory required to store all the generated code
    • getByteAt

      public final byte getByteAt(int pos)
    • getWordAt

      public final short getWordAt(int pos)
    • getDWordAt

      public final int getDWordAt(int pos)
    • getQWordAt

      public final long getQWordAt(int pos)
    • setByteAt

      public final void setByteAt(int pos, byte x)
    • setWordAt

      public final void setWordAt(int pos, short x)
    • setDWordAt

      public final void setDWordAt(int pos, int x)
    • setQWordAt

      public final void setQWordAt(int pos, long x)
    • getInt32At

      public final int getInt32At(int pos)
    • setInt32At

      public final void setInt32At(int pos, long x)
    • setVarAt

      public final void setVarAt(int pos, long i, boolean isUnsigned, int size)
    • _emitByte

      final void _emitByte(int x)
      Emit Byte to internal buffer.
    • _emitWord

      final void _emitWord(int x)
      Emit Word (2 bytes) to internal buffer.
    • _emitDWord

      final void _emitDWord(int x)
      Emit DWord (4 bytes) to internal buffer.
    • _emitQWord

      final void _emitQWord(long x)
      Emit QWord (8 bytes) to internal buffer.
    • _emitInt32

      final void _emitInt32(int x)
      Emit Int32 (4 bytes) to internal buffer.
    • _emitSysInt

      final void _emitSysInt(long x)
      Emit system signed integer (4 or 8 bytes) to internal buffer.
    • _emitOpCode

      final void _emitOpCode(int opCode)
    • _emitImmediate

      void _emitImmediate(Immediate imm, int size)
    • _emita64

      void _emita64(INST_CODE code, Operand o1, Operand o2, Operand o3, Operand o4, Operand o5)
      Specified by:
      _emita64 in class SerializerCore
    • _emitJmpOrCallReloc

      void _emitJmpOrCallReloc(InstructionGroup instruction, long target)
    • relocCode

      public void relocCode(ByteBuffer buffer, long address)