Summary: This patch allows ObjectFileBreakpad to parse the contents of Breakpad files into sections. This sounds slightly odd at first, but in essence its not too different from how other object files handle things. For example in elf files, the symtab section consists of a number of "records", where each record represents a single symbol. The same is true for breakpad's PUBLIC section, except in this case, the records will be textual instead of binary. To keep sections contiguous, I create a new section every time record type changes. Normally, the breakpad processor will group all records of the same type in one block, but the format allows them to be intermixed, so in general, the "object file" may contain multiple sections with the same record type. Reviewers: clayborg, zturner, lemo, markmentovai, amccarth Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D55434 llvm-svn: 350511
16 lines
690 B
Plaintext
16 lines
690 B
Plaintext
# Test handling of a (valid) breakpad file, which ends with a line without a
|
|
# recognised keyword.
|
|
|
|
RUN: lldb-test object-file %p/Inputs/sections-trailing-func.syms -contents | FileCheck %s
|
|
|
|
CHECK: Showing 4 sections
|
|
|
|
CHECK: ID: 0x4
|
|
CHECK-NEXT: Name: FUNC
|
|
CHECK: File size: 66
|
|
CHECK-NEXT: Data: (
|
|
CHECK-NEXT: 0000: 46554E43 20313031 30203130 2030205F 73746172 740A3130 31302034 20342030 |FUNC 1010 10 0 _start.1010 4 4 0|
|
|
CHECK-NEXT: 0020: 0A313031 34203520 3520300A 31303139 20352036 20300A31 30316520 32203720 |.1014 5 5 0.1019 5 6 0.101e 2 7 |
|
|
CHECK-NEXT: 0040: 300A |0.|
|
|
CHECK-NEXT: )
|