microprobe.target.isa.GenericISA¶
-
class
GenericISA
(name, descr, ins, regs, comparators, generators)[source]¶ Bases:
microprobe.target.isa.ISA
Class to represent a generic Instruction Set Architecture (ISA).
-
__init__
(name, descr, ins, regs, comparators, generators)[source]¶ Parameters: - name –
- descr –
- ins –
- regs –
- comparators –
- generators –
Methods
__init__
(name, descr, ins, regs, …)param name: add_to_register
(register, value)param register: branch_to_itself
()branch_unconditional_relative
(source, target)param source: compare_and_branch
(val1, val2, cond, target, …)param val1: full_report
()get_context
([variable, tmpl_path])get_dat
(**kwargs)get_register_for_address_arithmetic
(context)param context: get_register_for_float_arithmetic
(context)param context: load
(reg, address, context)param reg: load_float
(reg, address, context)param reg: negate_register
(reg, context)param reg: new_instruction
(name)param name: nop
()normalize_asm
(mnemonic, operands)register_value_comparator
(comp)set_context
([variable, tmpl_path])set_register
(reg, value, context)param reg: set_register_bits
(register, value, mask, …)param register: set_register_to_address
(reg, address, context)param reg: set_target
(target)param target: store_decimal
(address, length, value, context)param address: store_float
(reg, address, context)param reg: store_integer
(reg, address, length, context)param reg: Attributes
address_registers
context_var
control_registers
description
flag_registers
float_registers
instructions
name
registers
scratch_registers
scratch_var
target
-
name
¶
-
description
¶
-
address_registers
¶
-
float_registers
¶
-
flag_registers
¶
-
instructions
¶
-
scratch_var
¶
-
registers
¶
-
target
¶
-
scratch_registers
¶
-
control_registers
¶
-
compare_and_branch
(val1, val2, cond, target, context)¶ Parameters: - val1 –
- val2 –
- cond –
- target –
- context –
-
context_var
¶
-
load
(reg, address, context)¶ Parameters: - reg –
- address –
- context –
-
load_float
(reg, address, context)¶ Parameters: - reg –
- address –
- context –
-
negate_register
(reg, context)¶ Parameters: - reg –
- context –
-
nop
()¶
-
set_register_bits
(register, value, mask, shift, context)¶ Parameters: - register –
- value –
- mask –
- shift –
- context –
-
set_register_to_address
(reg, address, context, force_absolute=False, force_relative=False)¶ Parameters: - reg –
- address –
- context –
- force_absolute – (Default value = False)
-
store_decimal
(address, length, value, context)¶ Parameters: - address –
- length –
- value –
- context –
-
store_float
(reg, address, context)¶ Parameters: - reg –
- address –
- context –
-
store_integer
(reg, address, length, context)¶ Parameters: - reg –
- address –
- length –
- context –
-