Lines Matching refs:disassembler
20 import gdb.disassembler
21 from gdb.disassembler import Disassembler, DisassemblerResult
29 result = gdb.disassembler.builtin_disassemble(info)
43 result = gdb.disassembler.DisassemblerResult()
55 gdb.disassembler.register_disassembler(None, a)
56 gdb.disassembler.register_disassembler(None, None)
59 class TestDisassembler(Disassembler):
89 to a string, and incude it in a comment in the disassembler output."""
102 to a string, and incude it in a comment in the disassembler
106 class MyInfo(gdb.disassembler.DisassembleInfo):
125 result to a string, and incude it in a comment in the disassembler
138 resulting string in a comment within the disassembler output."""
188 disassembler, then reads all of the bytes of this instruction, and
189 adds them as a comment to the disassembler output."""
234 """Raise a GdbError after calling the builtin disassembler."""
238 raise gdb.GdbError("GdbError after builtin disassembler")
242 """Raise a RuntimeError after calling the builtin disassembler."""
246 raise RuntimeError("RuntimeError after builtin disassembler")
264 """Throw a memory error after calling the builtin disassembler, but
298 """A simple disassembler that just tags the output."""
311 """A disassembler that caches the DisassembleInfo that is passed in,
314 Once the call into the disassembler is complete then the
321 class MyInfo(gdb.disassembler.DisassembleInfo):
339 assert isinstance(info, gdb.disassembler.DisassembleInfo)
375 """A disassembler that does not change the output at all."""
385 class MyInfo(gdb.disassembler.DisassembleInfo):
403 class MyInfo(gdb.disassembler.DisassembleInfo):
419 class MyInfo(gdb.disassembler.DisassembleInfo):
433 method, catch this in the outer disassembler."""
435 class MyInfo(gdb.disassembler.DisassembleInfo):
452 method, catch this in the outer disassembler."""
454 class MyInfo(gdb.disassembler.DisassembleInfo):
473 method, catch this in the outer disassembler."""
475 class MyInfo(gdb.disassembler.DisassembleInfo):
493 class MyInfo(gdb.disassembler.DisassembleInfo):
508 class MyInfo(gdb.disassembler.DisassembleInfo):
547 part = info.text_part(gdb.disassembler.STYLE_TEXT)
564 parts.append(info.text_part(gdb.disassembler.STYLE_TEXT, "p1"))
565 parts.append(info.text_part(gdb.disassembler.STYLE_TEXT, "p2"))
575 parts.append(info.text_part(gdb.disassembler.STYLE_TEXT, "p1"))
576 parts.append(info.text_part(gdb.disassembler.STYLE_MNEMONIC, "p2"))
577 parts.append(info.text_part(gdb.disassembler.STYLE_SUB_MNEMONIC, "p3"))
578 parts.append(info.text_part(gdb.disassembler.STYLE_ASSEMBLER_DIRECTIVE, "p4"))
579 parts.append(info.text_part(gdb.disassembler.STYLE_REGISTER, "p5"))
580 parts.append(info.text_part(gdb.disassembler.STYLE_IMMEDIATE, "p6"))
581 parts.append(info.text_part(gdb.disassembler.STYLE_ADDRESS, "p7"))
582 parts.append(info.text_part(gdb.disassembler.STYLE_ADDRESS_OFFSET, "p8"))
583 parts.append(info.text_part(gdb.disassembler.STYLE_SYMBOL, "p9"))
584 parts.append(info.text_part(gdb.disassembler.STYLE_COMMENT_START, "p10"))
606 parts.append(info.text_part(gdb.disassembler.STYLE_MNEMONIC, "fake"))
607 parts.append(info.text_part(gdb.disassembler.STYLE_TEXT, "\t"))
608 parts.append(info.text_part(gdb.disassembler.STYLE_REGISTER, "reg"))
609 parts.append(info.text_part(gdb.disassembler.STYLE_TEXT, ", "))
613 parts.append(info.text_part(gdb.disassembler.STYLE_TEXT, ", "))
614 parts.append(info.text_part(gdb.disassembler.STYLE_IMMEDIATE, "123"))
621 class BuiltinDisassembler(Disassembler):
622 """Just calls the builtin disassembler."""
631 class AnalyzingDisassembler(Disassembler):
632 class MyInfo(gdb.disassembler.DisassembleInfo):
669 """Callback used by the builtin disassembler to read the contents of
688 # Details about the instructions found during the first disassembler
705 # this disassembler test.
713 # is then checked against _pass_2_insn after the second disassembler
804 """Call this after the second disassembler pass to validate the output."""
811 """Create an instance of DIS_CLASS and register it as a global disassembler."""
813 gdb.disassembler.register_disassembler(dis, None)
817 class InvalidDisassembleInfo(gdb.disassembler.DisassembleInfo):