Attribute Macro panda_macros::asid_changed

source ·
#[asid_changed]
Expand description

(Callback) Called when asid changes.

Callback ID: PANDA_CB_ASID_CHANGED

   Arguments:
    CPUState *env:       pointer to CPUState
    target_ptr_t oldval: old asid value
    target_ptr_t newval: new asid value

   Helper call location: target/i386/helper.c, target/arm/helper.c

   Return value:
    true if the asid should be prevented from being changed
    false otherwise

   Notes:
    The callback is only invoked implemented for x86 and ARM.
    This should break plugins which rely on it to detect context
    switches in any other architecture.

Callback arguments: (&mut CPUState, target_ptr_t, target_ptr_t, )

Example

use panda::prelude::*;

#[panda::asid_changed]
fn callback(_: &mut CPUState, _: target_ptr_t, _: target_ptr_t, ) -> bool {
    // do stuff
}