[all-commits] [llvm/llvm-project] cc9ced: [LLDB][Breakpad] Make lldb understand INLINE and I...

ZequanWu via All-commits all-commits at lists.llvm.org
Wed Nov 10 11:20:53 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: cc9ced0ed4202a4f8a550551bbb14584f93f3055
      https://github.com/llvm/llvm-project/commit/cc9ced0ed4202a4f8a550551bbb14584f93f3055
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2021-11-10 (Wed, 10 Nov 2021)

  Changed paths:
    M lldb/include/lldb/Symbol/Block.h
    M lldb/source/Plugins/ObjectFile/Breakpad/BreakpadRecords.cpp
    M lldb/source/Plugins/ObjectFile/Breakpad/BreakpadRecords.h
    M lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
    M lldb/source/Symbol/Block.cpp
    A lldb/test/Shell/SymbolFile/Breakpad/Inputs/inline-record.syms
    A lldb/test/Shell/SymbolFile/Breakpad/inline-record.test
    M lldb/unittests/ObjectFile/Breakpad/BreakpadRecordsTest.cpp

  Log Message:
  -----------
  [LLDB][Breakpad] Make lldb understand INLINE and INLINE_ORIGIN records in breakpad.

Teach LLDB to understand INLINE and INLINE_ORIGIN records in breakpad.
They have the following formats:
```
INLINE inline_nest_level call_site_line call_site_file_num origin_num [address size]+
INLINE_ORIGIN origin_num name
```
`INLNIE_ORIGIN` is simply a string pool for INLINE so that we won't have
duplicated names for inlined functions and can show up anywhere in the symbol
file.
`INLINE` follows immediately after `FUNC` represents the ranges of momery
address that has functions inlined inside the function.

Differential Revision: https://reviews.llvm.org/D113330




More information about the All-commits mailing list