[Lldb-commits] [PATCH] D12079: [MIPS] microMIPS breakpoints, disassembly and compressed addresses

Jaydeep Patil via lldb-commits lldb-commits at lists.llvm.org
Tue Sep 8 21:08:56 PDT 2015


jaydeep updated this revision to Diff 34292.
jaydeep added a comment.

In this patch:

- Removed MIPS comment from generic code
- Used Target::GetOpcodeLoadAddress to fixup the PC

Regarding change in FormatEntity.cpp:

We still need to do this. The bit #0 of ‘addr’ has already been striped and thus it does not represent its true address space (microMIPS or MIPS). We need to call GetCallableLoadAddress here because we want to set the bit #0 of this address if it belongs to eAddressClassCodeAlternateISA.

This change displays the microMIPS disassembly (and other addresses) in compact address space:

  0x8020067d <+0>:  addiusp -16
  0x8020067f <+2>:  sw     $fp, 12($sp)
  0x80200681 <+4>:  move   $fp, $sp

- thread #1: tid = 0x0001, 0x802006c5 micro.elf`foo(a=0, b=0) + 16 at micro.c:19, stop reason = breakpoint 2.1 frame #0: 0x802006c5 micro.elf`foo(a=0, b=0) + 16 at micro.c:19

Without this change the microMIPS disassembly would be displayed in uncompact (MIPS) address space:

  0x8020067c <+0>:  addiusp -16
  0x8020067e <+2>:  sw     $fp, 12($sp)
  0x80200680 <+4>:  move   $fp, $sp

- thread #1: tid = 0x0001, 0x802006c4 micro.elf`foo(a=0, b=0) + 16 at micro.c:19, stop reason = breakpoint 2.1 frame #0: 0x802006c4 micro.elf`foo(a=0, b=0) + 16 at micro.c:19


Repository:
  rL LLVM

http://reviews.llvm.org/D12079

Files:
  source/Core/FormatEntity.cpp
  source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp
  source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
  source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
  source/Target/RegisterContext.cpp
  source/Target/Target.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D12079.34292.patch
Type: text/x-patch
Size: 9348 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20150909/eaec24b5/attachment-0001.bin>


More information about the lldb-commits mailing list