lunixbochs / usercorn

dynamic binary analysis via platform emulation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

trace format changes

lunixbochs opened this issue · comments

  • trace ops should be grouped by instruction or block, unless no code tracing is enabled - (so it's always emitting (block, side effects) or (ins, side effects), or each side effect as its own op if no instruction data is available) (maybe. this is how I'm reconstructing it anyway)
  • have separate op encapsulation (frame type?) for "user action" (useful for (de)serialization) #256
  • keyframes should be instruction counted - so you can seek to a specific instruction range. perhaps also have executed address range (useful for (de)serialization)
  • frames and keyframes should contain their byte length, so they can be skipped
  • rewind object which creates inverse ops for every emitted op (runtime, not a serialization format thing)
  • don't put memory read data into stream
  • embed short lengths into upper half of opcode (infeasible)

see also #244