Struct binaryninja::architecture::CoreArchitecture
[−]pub struct CoreArchitecture(_);
Implementations
impl CoreArchitecture
impl CoreArchitecture
Trait Implementations
impl Architecture for CoreArchitecture
impl Architecture for CoreArchitecture
type Handle = CoreArchitecture
type RegisterInfo = CoreRegisterInfo
type Register = CoreRegister
type Flag = CoreFlag
type FlagWrite = CoreFlagWrite
type FlagClass = CoreFlagClass
type FlagGroup = CoreFlagGroup
fn endianness(&self) -> Endianness
fn address_size(&self) -> usize
fn default_integer_size(&self) -> usize
fn instruction_alignment(&self) -> usize
fn max_instr_len(&self) -> usize
fn opcode_display_len(&self) -> usize
fn associated_arch_by_addr(&self, addr: &mut u64) -> CoreArchitecture
fn instruction_info(&self, data: &[u8], addr: u64) -> Option<InstructionInfo>
fn instruction_text(
&self,
data: &[u8],
addr: u64
) -> Option<(usize, Vec<InstructionTextToken>)>
fn instruction_llil(
&self,
_data: &[u8],
_addr: u64,
_il: &mut Lifter<Self>
) -> Option<(usize, bool)>
fn flag_write_llil<'a>(
&self,
_flag: Self::Flag,
_flag_write: Self::FlagWrite,
_op: FlagWriteOp<Self::Register>,
_il: &'a mut Lifter<Self>
) -> Option<LiftedExpr<'a, Self>>
fn flag_write_llil<'a>(
&self,
_flag: Self::Flag,
_flag_write: Self::FlagWrite,
_op: FlagWriteOp<Self::Register>,
_il: &'a mut Lifter<Self>
) -> Option<LiftedExpr<'a, Self>>
Fallback flag value calculation path. This method is invoked when the core is unable to
recover flag use semantics, and resorts to emitting instructions that explicitly set each
observed flag to the value of an expression returned by this function. Read more
fn flag_cond_llil<'a>(
&self,
_cond: FlagCondition,
_class: Option<Self::FlagClass>,
_il: &'a mut Lifter<Self>
) -> Option<LiftedExpr<'a, Self>>
fn flag_cond_llil<'a>(
&self,
_cond: FlagCondition,
_class: Option<Self::FlagClass>,
_il: &'a mut Lifter<Self>
) -> Option<LiftedExpr<'a, Self>>
This function MUST NOT append instructions that have side effects. Read more
fn flag_group_llil<'a>(
&self,
_group: Self::FlagGroup,
_il: &'a mut Lifter<Self>
) -> Option<LiftedExpr<'a, Self>>
fn flag_group_llil<'a>(
&self,
_group: Self::FlagGroup,
_il: &'a mut Lifter<Self>
) -> Option<LiftedExpr<'a, Self>>
Performs fallback resolution when the core was unable to recover the semantics of a
LLIL_FLAG_GROUP
expression. This occurs when multiple instructions may have set the flags
at the flag group query, or when the FlagGroup::flag_conditions()
map doesn’t have an entry
for the FlagClass
associated with the FlagWrite
type of the expression that last set
the flags required by the FlagGroup
group
. Read morefn registers_all(&self) -> Vec<CoreRegister>
fn registers_full_width(&self) -> Vec<CoreRegister>
fn registers_global(&self) -> Vec<CoreRegister>
fn registers_system(&self) -> Vec<CoreRegister>
fn flags(&self) -> Vec<CoreFlag>
fn flag_write_types(&self) -> Vec<CoreFlagWrite>
fn flag_classes(&self) -> Vec<CoreFlagClass>
fn flag_groups(&self) -> Vec<CoreFlagGroup>
fn flags_required_for_flag_condition(
&self,
condition: FlagCondition,
class: Option<Self::FlagClass>
) -> Vec<Self::Flag>
fn flags_required_for_flag_condition(
&self,
condition: FlagCondition,
class: Option<Self::FlagClass>
) -> Vec<Self::Flag>
Determines what flags need to be examined in order to attempt automatic recovery of the
semantics of this flag use. Read more
fn stack_pointer_reg(&self) -> Option<CoreRegister>
fn link_reg(&self) -> Option<CoreRegister>
fn register_from_id(&self, id: u32) -> Option<CoreRegister>
fn flag_from_id(&self, id: u32) -> Option<CoreFlag>
fn flag_write_from_id(&self, id: u32) -> Option<CoreFlagWrite>
fn flag_class_from_id(&self, id: u32) -> Option<CoreFlagClass>
fn flag_group_from_id(&self, id: u32) -> Option<CoreFlagGroup>
fn handle(&self) -> CoreArchitecture
impl AsRef<CoreArchitecture> for CoreArchitecture
impl AsRef<CoreArchitecture> for CoreArchitecture
impl Clone for CoreArchitecture
impl Clone for CoreArchitecture
fn clone(&self) -> CoreArchitecture
fn clone(&self) -> CoreArchitecture
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreimpl Debug for CoreArchitecture
impl Debug for CoreArchitecture
impl Hash for CoreArchitecture
impl Hash for CoreArchitecture
impl PartialEq<CoreArchitecture> for CoreArchitecture
impl PartialEq<CoreArchitecture> for CoreArchitecture
fn eq(&self, other: &CoreArchitecture) -> bool
fn eq(&self, other: &CoreArchitecture) -> bool
impl Copy for CoreArchitecture
impl Eq for CoreArchitecture
impl Send for CoreArchitecture
impl StructuralEq for CoreArchitecture
impl StructuralPartialEq for CoreArchitecture
impl Sync for CoreArchitecture
Auto Trait Implementations
impl RefUnwindSafe for CoreArchitecture
impl Unpin for CoreArchitecture
impl UnwindSafe for CoreArchitecture
Blanket Implementations
impl<T> ArchitectureExt for Twhere
T: Architecture,
impl<T> ArchitectureExt for Twhere
T: Architecture,
fn register_by_name<S: BnStrCompatible>(&self, name: S) -> Option<Self::Register>
fn get_default_calling_convention(&self) -> Option<Ref<CallingConvention<Self>>>
fn set_default_calling_convention(&self, cc: &CallingConvention<Self>)
fn get_cdecl_calling_convention(&self) -> Option<Ref<CallingConvention<Self>>>
fn set_cdecl_calling_convention(&self, cc: &CallingConvention<Self>)
fn get_stdcall_calling_convention(&self) -> Option<Ref<CallingConvention<Self>>>
fn set_stdcall_calling_convention(&self, cc: &CallingConvention<Self>)
fn get_fastcall_calling_convention(
&self
) -> Option<Ref<CallingConvention<Self>>>
fn set_fastcall_calling_convention(&self, cc: &CallingConvention<Self>)
fn standalone_platform(&self) -> Option<Ref<Platform>>
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more