GDB (xrefs)
Functions | Variables
aarch64-insn.c File Reference
#include "common-defs.h"
#include "aarch64-insn.h"

Go to the source code of this file.

Functions

static int32_t extract_signed_bitfield (uint32_t insn, unsigned width, unsigned offset)
 
static int decode_masked_match (uint32_t insn, uint32_t mask, uint32_t pattern)
 
int aarch64_decode_adr (CORE_ADDR addr, uint32_t insn, int *is_adrp, unsigned *rd, int32_t *offset)
 
int aarch64_decode_b (CORE_ADDR addr, uint32_t insn, int *is_bl, int32_t *offset)
 
int aarch64_decode_bcond (CORE_ADDR addr, uint32_t insn, unsigned *cond, int32_t *offset)
 
int aarch64_decode_cb (CORE_ADDR addr, uint32_t insn, int *is64, int *is_cbnz, unsigned *rn, int32_t *offset)
 
int aarch64_decode_tb (CORE_ADDR addr, uint32_t insn, int *is_tbnz, unsigned *bit, unsigned *rt, int32_t *imm)
 
int aarch64_decode_ldr_literal (CORE_ADDR addr, uint32_t insn, int *is_w, int *is64, unsigned *rt, int32_t *offset)
 
void aarch64_relocate_instruction (uint32_t insn, const struct aarch64_insn_visitor *visitor, struct aarch64_insn_data *data)
 
int aarch64_emit_insn (uint32_t *buf, uint32_t insn)
 
int aarch64_emit_load_store (uint32_t *buf, uint32_t size, enum aarch64_opcodes opcode, struct aarch64_register rt, struct aarch64_register rn, struct aarch64_memory_operand operand)
 

Variables

int aarch64_debug = 0
 

Function Documentation

◆ aarch64_decode_adr()

int aarch64_decode_adr ( CORE_ADDR  addr,
uint32_t  insn,
int *  is_adrp,
unsigned *  rd,
int32_t *  offset 
)

◆ aarch64_decode_b()

int aarch64_decode_b ( CORE_ADDR  addr,
uint32_t  insn,
int *  is_bl,
int32_t *  offset 
)

◆ aarch64_decode_bcond()

int aarch64_decode_bcond ( CORE_ADDR  addr,
uint32_t  insn,
unsigned *  cond,
int32_t *  offset 
)

◆ aarch64_decode_cb()

int aarch64_decode_cb ( CORE_ADDR  addr,
uint32_t  insn,
int *  is64,
int *  is_cbnz,
unsigned *  rn,
int32_t *  offset 
)

◆ aarch64_decode_ldr_literal()

int aarch64_decode_ldr_literal ( CORE_ADDR  addr,
uint32_t  insn,
int *  is_w,
int *  is64,
unsigned *  rt,
int32_t *  offset 
)

◆ aarch64_decode_tb()

int aarch64_decode_tb ( CORE_ADDR  addr,
uint32_t  insn,
int *  is_tbnz,
unsigned *  bit,
unsigned *  rt,
int32_t *  imm 
)

◆ aarch64_emit_insn()

int aarch64_emit_insn ( uint32_t *  buf,
uint32_t  insn 
)

Definition at line 336 of file aarch64-insn.c.

Referenced by aarch64_displaced_step_others(), and aarch64_emit_load_store().

◆ aarch64_emit_load_store()

int aarch64_emit_load_store ( uint32_t *  buf,
uint32_t  size,
enum aarch64_opcodes  opcode,
struct aarch64_register  rt,
struct aarch64_register  rn,
struct aarch64_memory_operand  operand 
)

◆ aarch64_relocate_instruction()

void aarch64_relocate_instruction ( uint32_t  insn,
const struct aarch64_insn_visitor visitor,
struct aarch64_insn_data data 
)

◆ decode_masked_match()

static int decode_masked_match ( uint32_t  insn,
uint32_t  mask,
uint32_t  pattern 
)
static

◆ extract_signed_bitfield()

static int32_t extract_signed_bitfield ( uint32_t  insn,
unsigned  width,
unsigned  offset 
)
static

Variable Documentation

◆ aarch64_debug

int aarch64_debug = 0