toolkit/crashreporter/google-breakpad/src/third_party/libdisasm/TODO

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 x86_format.c
     2 ------------
     3 intel: jmpf -> jmp, callf -> call
     4 att: jmpf -> ljmp, callf -> lcall
     6 opcode table
     7 ------------
     8 finish typing instructions
     9 fix flag clear/set/toggle types
    11 ix64 stuff
    12 ----------
    13 document output file formats in web page
    14 features doc: register aliases, implicit operands, stack mods,
    15 ring0 flags, eflags, cpu model/isa
    17 ia32_handle_* implementation
    19 fix operand 0F C2
    20 CMPPS
    22 * sysenter, sysexit as CALL types -- preceded by MSR writes
    23 * SYSENTER/SYSEXIT stack : overwrites SS, ESP
    24 * stos, cmps, scas, movs, ins, outs, lods -> OP_PTR
    25 * OP_SIZE in implicit operands
    26 * use OP_SIZE to choose reg sizes!
    28 DONE?? :
    29 implicit operands: provide action ?
    30 e.g. add/inc for stach, write, etc 
    31 replace table numbers in opcodes.dat with
    32 #defines for table names
    34 replace 0  with INSN_INVALID   [or maybe FF for imnvalid and 00 for Not Applicable */
    35 no wait that is only for prefix tables -- n/p
    37 if ( prefx) only use if insn != invalid
    39 these should cover all the wacky disasm exceptions 
    41 for the rep one we can chet, match only a 0x90
    43 todo: privilege | ring

mercurial