Trait yaxpeax_core::analyses::memory_layout::MemoryAccessBaseInference [−][src]
pub trait MemoryAccessBaseInference {
type Base;
type Addend;
fn infer_base_and_addend(&self) -> Option<(Self::Base, Self::Addend)>;
}
Expand description
in most cases, Base
and Addend
should both be Self
.
Associated Types
type of the base address for some. as a common example, the value of a machine’s stack pointer will often be of this type.
type of the offsets for some access. this is defined with respect to Self::Base
;
it’s possible to simply say Self::Addend
is always zero, but memory layout inference will
be better behaved if Self::Addend
can be selected so that a common Self::Base
is
reported. as a common example, offsets for stack-local storage probably should be
represented by Addend
. additionally, value sets in registers would make for good
Self::Addend
candidates.