Struct

GumStalkerIterator

Description

struct GumStalkerIterator {
  /* No available fields */
}

No description available.

Instance methods

gum_stalker_iterator_get_memory_access

Reports whether it is safe to insert instrumentation at the current position. Within an exclusive load/store sequence the access is reported as restricted, letting a transformer avoid inserting callouts that would clobber the exclusive monitor and break the sequence.

gum_stalker_iterator_keep

Emits the current instruction — the one most recently returned by gum_stalker_iterator_next() — unchanged into the recompiled block. A transformer that wants to preserve an instruction must call this; skipping it drops the instruction from the output.

gum_stalker_iterator_next

Advances the iterator to the next instruction.

gum_stalker_iterator_put_callout

Inserts a call to callout at the current position in the recompiled block. At run time callout is invoked with the live Gum.CpuContext, which it may also modify, making this the most convenient way to run your own C code inline with the traced thread.

gum_stalker_iterator_put_chaining_return

Puts a chaining return at the current location in the output instruction stream.