diff options
author | Fred Grim <fgrim@apple.com> | 2024-07-03 09:19:18 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-03 09:19:18 -0700 |
commit | ab930ee7cad8b8bf7968bb8d0c0d72524e2313c4 (patch) | |
tree | 41e9afeae88301344343366dc05ece71aee9b03a /lldb/source/Commands/CommandObjectCommands.cpp | |
parent | 584e431a4b257098d1ff13a0e9926842222ba601 (diff) | |
download | llvm-ab930ee7cad8b8bf7968bb8d0c0d72524e2313c4.zip llvm-ab930ee7cad8b8bf7968bb8d0c0d72524e2313c4.tar.gz llvm-ab930ee7cad8b8bf7968bb8d0c0d72524e2313c4.tar.bz2 |
[llvm-readobj][ELF] Alter JSON/LLVM output on note sections to allow for multiple notes per section in JSON (#96813)
It turns out that the notes section for corefiles (or really any elf
file with multiple notes) is set up in such a way for LLVM formatted
output that the JSON equivalent only has the last note since the notes
are held in a dictionary with every key being Note. This pr alters the
layout for the notes to a list of dictionaries to sidestep this issue
for JSON output. Prior to this pr a note section in the output looked
like (for LLVM output):
```
Notes [
NoteSection {
Name: <?>
Offset: 0x2148
Size: 0x1F864
Note {
Owner: CORE
Data size: 0x150
Type: NT_PRSTATUS (prstatus structure)
Description data (
0000: 06000000 00000000 00000000 06000000 |................|
...
)
}
Note {
Owner: CORE
Data size: 0x88
Type: NT_PRPSINFO (prpsinfo structure)
Description data (
0000: 02440000 00000000 04054040 00000000 |.D........@@....|
....
```
But is now:
```
NoteSections [
NoteSection {
Name: <?>
Offset: 0x2148
Size: 0x1F864
Notes [
{
Owner: CORE
Data size: 0x150
Type: NT_PRSTATUS (prstatus structure)
Description data (
0000: 06000000 00000000 00000000 06000000 |................|
...
)
}
{
Owner: CORE
Data size: 0x88
Type: NT_PRPSINFO (prpsinfo structure)
Description data (
0000: 02440000 00000000 04054040 00000000 |.D........@@....|
...
```
Diffstat (limited to 'lldb/source/Commands/CommandObjectCommands.cpp')
0 files changed, 0 insertions, 0 deletions