Struct idalib_sys::processor::processor_t

#[repr(C, align(8))]
pub struct processor_t { /* private fields */ }
Expand description

Describes a processor module (IDP). An IDP file may have only one such structure called LPH. The kernel will copy it to dbctx_t::ph.

Implementations§

§

impl processor_t

pub unsafe fn auto_queue_empty(type_: c_int)

pub unsafe fn set_idp_options( keyword: *const c_char, vtype: c_int, value: *const c_void, idb_loaded: bool, ) -> *const c_char

pub unsafe fn realcvt( m: *mut c_void, e: *mut fpvalue_t, swt: c_ushort, ) -> fpvalue_error_t

pub unsafe fn get_code16_mode(ea: c_ulonglong) -> bool

pub unsafe fn get_reg_info( regname: *const c_char, bitrange: *mut bitrange_t, ) -> *const c_char

Get register information - useful for registers like al, ah, dil, etc. Example: this function for “al” returns “eax” in 32bit mode \return main register name (nullptr no such register)

pub unsafe fn get_regfinder() -> *mut reg_finder_t

pub unsafe fn is_canon_insn(self: &processor_t, itype: c_ushort) -> bool

Does the given value specify a valid instruction for this instruction set?. See #instruc_start and #instruc_end

pub unsafe fn get_canon_mnem( self: &processor_t, itype: c_ushort, ) -> *const c_char

Get the instruction name

pub unsafe fn get_canon_feature(self: &processor_t, itype: c_ushort) -> c_uint

Get the instruction features (combination of \ref CF_)

§

impl processor_t

pub unsafe fn has_idp_opts(&self) -> bool

§

impl processor_t

pub unsafe fn has_segregs(&self) -> bool

§

impl processor_t

pub unsafe fn use32(&self) -> bool

§

impl processor_t

pub unsafe fn use64(&self) -> bool

§

impl processor_t

pub unsafe fn ti(&self) -> bool

§

impl processor_t

pub unsafe fn stkup(&self) -> bool

§

impl processor_t

pub unsafe fn use_tbyte(&self) -> bool

§

impl processor_t

pub unsafe fn use_mappings(&self) -> bool

§

impl processor_t

pub unsafe fn has_code16_bit(&self) -> bool

§

impl processor_t

pub unsafe fn supports_macros(&self) -> bool

§

impl processor_t

pub unsafe fn supports_calcrel(&self) -> bool

§

impl processor_t

pub unsafe fn calcrel_in_bits(&self) -> bool

§

impl processor_t

pub unsafe fn get_default_segm_bitness(&self, is_64bit_app: bool) -> c_int

Get default segment bitness \retval 2 #PR_DEFSEG64 \retval 1 #PR_DEFSEG32 \retval 0 none specified

§

impl processor_t

pub unsafe fn cbsize(self: Pin<&mut Self>) -> c_int

\name Byte size Number of 8bit bytes required to hold one byte of the target processor. @{

§

impl processor_t

pub unsafe fn dbsize(self: Pin<&mut Self>) -> c_int

§

impl processor_t

pub unsafe fn get_proc_index(self: Pin<&mut Self>) -> c_int

@}

§

impl processor_t

pub unsafe fn delay_slot_insn( self: Pin<&mut Self>, ea: *mut c_ulonglong, bexec: *mut bool, fexec: *mut bool, ) -> bool

Helper function to get the delay slot instruction

§

impl processor_t

pub unsafe fn get_stkvar_scale(self: Pin<&mut Self>) -> c_int

Get the stack variable scaling factor. Useful for processors who refer to the stack with implicit scaling factor. TMS320C55 for example: SP(#1) really refers to (SP+2)

§

impl processor_t

pub unsafe fn sizeof_ldbl(&self) -> usize

Get size of long double

Trait Implementations§

§

impl Drop for processor_t

§

fn drop(self: &mut processor_t)

Synthesized destructor.

§

impl ExternType for processor_t

§

type Id = (p, r, o, c, e, s, s, o, r, __, t)

A type-level representation of the type’s C++ namespace and type name. Read more
§

type Kind = Opaque

§

impl MakeCppStorage for processor_t

§

unsafe fn allocate_uninitialized_cpp_storage() -> *mut processor_t

Allocates heap space for this type in C++ and return a pointer to that space, but do not initialize that space (i.e. do not yet call a constructor). Read more
§

unsafe fn free_uninitialized_cpp_storage(arg0: *mut processor_t)

Frees a C++ allocation which has not yet had a constructor called. Read more
§

impl SharedPtrTarget for processor_t

§

impl UniquePtrTarget for processor_t

§

impl WeakPtrTarget for processor_t

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.