Revision tags: llvmorg-21-init, llvmorg-19.1.7 |
|
#
630b7f36 |
| 23-Dec-2024 |
Cabbaken <cabbaken@outlook.com> |
[llvm-objdump] Remove some unneeded headers. (#120541)
Co-authored-by: qiuruoyu <qiuruoyu@xiaomi.com>
|
Revision tags: llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3 |
|
#
92412c10 |
| 28-Oct-2024 |
Fangrui Song <i@maskray.me> |
[llvm-objdump] Handle -M for --macho
--macho -d uses the `parseInputMachO` code path, which does not handle -M. Add -M handling for --macho as well.
Close #61019
Pull Request: https://github.com/l
[llvm-objdump] Handle -M for --macho
--macho -d uses the `parseInputMachO` code path, which does not handle -M. Add -M handling for --macho as well.
Close #61019
Pull Request: https://github.com/llvm/llvm-project/pull/113795
show more ...
|
Revision tags: llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3 |
|
#
4192c419 |
| 14-Aug-2023 |
Fangrui Song <i@maskray.me> |
[llvm-objdump] Add WarningHandler as a member variable. NFC
This can be used to avoid `auto WarningHandler = ...`. Similar to llvm-readobj.
|
Revision tags: llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1 |
|
#
9ea44c68 |
| 28-Jul-2023 |
Fangrui Song <i@maskray.me> |
[llvm-objdump] -d: don't display mapping symbols as labels
Similar to D96617 for llvm-symbolizer.
This patch matches the GNU objdump -d behavior to suppress printing labels for mapping symbols. Map
[llvm-objdump] -d: don't display mapping symbols as labels
Similar to D96617 for llvm-symbolizer.
This patch matches the GNU objdump -d behavior to suppress printing labels for mapping symbols. Mapping symbol names don't convey much information.
When --show-all-symbols (not in GNU) is specified, we still print mapping symbols.
Note: the `for (size_t SI = 0, SE = Symbols.size(); SI != SE;)` loops needs to iterate all mapping symbols, even if they are not displayed. We use the new field `IsMappingSymbol` to recognize mapping symbols. This field also enables simplification after D139131.
ELF/ARM/disassemble-all-mapping-symbols.s is enhanced to add `.space 2`. If `End = std::min(End, Symbols[SI].Addr);` is not correctly set, we would print a `.word`.
Reviewed By: jhenderson, jobnoorman, peter.smith
Differential Revision: https://reviews.llvm.org/D156190
show more ...
|
#
2d40bd1e |
| 26-Jul-2023 |
Fangrui Song <i@maskray.me> |
[llvm-objdump] Remove bool MachOOnlyFirst from printPrivateHeaders after D155045. NFC
Mach-O can just use the global variable `FirstPrivateHeader`. If we ever manage to remove global variables, we c
[llvm-objdump] Remove bool MachOOnlyFirst from printPrivateHeaders after D155045. NFC
Mach-O can just use the global variable `FirstPrivateHeader`. If we ever manage to remove global variables, we can add a Config variable to Dumper. Either case, the parameter is not needed.
Reviewed By: jhenderson
Differential Revision: https://reviews.llvm.org/D156291
show more ...
|
Revision tags: llvmorg-18-init |
|
#
7d1143b7 |
| 14-Jul-2023 |
Fangrui Song <i@maskray.me> |
[llvm-objdump] Move printDynamicRelocations into ELFDump.cpp. NFC
|
#
0af663f8 |
| 14-Jul-2023 |
Fangrui Song <i@maskray.me> |
[llvm-objdump] Create ObjectFile specific dumpers
We pay the one-off boilerplate overhead to create `*Dumper` classes that derive from objdump::Dumper a la llvm-readobj. This has two primary advanta
[llvm-objdump] Create ObjectFile specific dumpers
We pay the one-off boilerplate overhead to create `*Dumper` classes that derive from objdump::Dumper a la llvm-readobj. This has two primary advantages.
First, a lot object file format specific code can be moved from llvm-objdump.cpp to *Dump.cpp files. Refactor `printPrivateHeaders` as an example.
Second, with the introduction of ELFDumper<ELFT>, we can simplify a few dispatch functions in ELFDump.cpp.
In addition, the ObjectFile specific dumpers contains a ObjectFile specific reference so that we can remove a lot of `cast<*ObjectFile>(Obj)`.
Reviewed By: mtrofin
Differential Revision: https://reviews.llvm.org/D155045
show more ...
|
#
3edef604 |
| 11-Jul-2023 |
Fangrui Song <i@maskray.me> |
[llvm-objdump] Change errors to warnings for symbol section name dumping
Port D69671 (llvm-readobj) to llvm-objdump. Add a class llvm::objdump::Dumper and move some free functions into Dumper so tha
[llvm-objdump] Change errors to warnings for symbol section name dumping
Port D69671 (llvm-readobj) to llvm-objdump. Add a class llvm::objdump::Dumper and move some free functions into Dumper so that they can call reportUniqueWarning.
Warnings seems preferable in these cases as the issue is localized and we can continue dumping other information.
Differential Revision: https://reviews.llvm.org/D154754
show more ...
|
#
345a03b2 |
| 10-Jul-2023 |
Dayann D'almeida <dayannd@google.com> |
[nfc] Factoring out utility that can be used for other object-level tools
Related rfc can be found at https://discourse.llvm.org/t/rfc-llvm-cm-cost-model-evaluation-for-object-files-machine-code/715
[nfc] Factoring out utility that can be used for other object-level tools
Related rfc can be found at https://discourse.llvm.org/t/rfc-llvm-cm-cost-model-evaluation-for-object-files-machine-code/71502. We want to reuse the instruction iterator for this tool.
Reviewed By: mtrofin, kazu, jhenderson, MaskRay
Differential Revision: https://reviews.llvm.org/D152869
show more ...
|
#
d6d7f7b1 |
| 06-Jul-2023 |
zhijian <zhijian@ca.ibm.com> |
[AIX][XCOFF] print out the traceback info
Summary:
Adding a new option -traceback-table to print out the traceback info of xcoff ojbect file.
Reviewers: James Henderson, Fangrui Song, Stephen Pe
[AIX][XCOFF] print out the traceback info
Summary:
Adding a new option -traceback-table to print out the traceback info of xcoff ojbect file.
Reviewers: James Henderson, Fangrui Song, Stephen Peckham, Xing Xue
Differential Revision: https://reviews.llvm.org/D89049
show more ...
|
Revision tags: llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1 |
|
#
bc99fd95 |
| 05-Feb-2022 |
Keith Smiley <keithbsmiley@gmail.com> |
[llvm-objdump/mac] Add new function starts print mode
This updates the `--function-starts` argument to now accept 3 different modes, `addrs` for just printing the addresses of the function starts (p
[llvm-objdump/mac] Add new function starts print mode
This updates the `--function-starts` argument to now accept 3 different modes, `addrs` for just printing the addresses of the function starts (previous behavior), `names` for just printing the names of the function starts, and `both` to print them both side by side.
In general if you're debugging function starts issues it's useful to see the symbol name alongside the address. This also mirrors Apple's `dyldinfo -function_starts` command which prints both.
Differential Revision: https://reviews.llvm.org/D119050
show more ...
|
#
69b312cd |
| 14-Jul-2022 |
Namhyung Kim <namhyung@google.com> |
[llvm-objdump] Create fake sections for a ELF core file
The linux perf tools use /proc/kcore for disassembly kernel functions. Actually it copies the relevant parts to a temp file and then pass it t
[llvm-objdump] Create fake sections for a ELF core file
The linux perf tools use /proc/kcore for disassembly kernel functions. Actually it copies the relevant parts to a temp file and then pass it to objdump. But it doesn't have section headers so llvm-objdump cannot handle it.
Let's create fake section headers for the program headers. It'd have a single section for each segment to cover the entire range. And for this purpose we can consider only executable code segments.
With this change, I can see the following command shows proper outputs.
perf annotate --stdio --objdump=/path/to/llvm-objdump
Differential Revision: https://reviews.llvm.org/D128705
show more ...
|
#
d3712b08 |
| 07-Jul-2022 |
Fangrui Song <i@maskray.me> |
[llvm-objdump] Change some nonnull pointers to references. NFC
|
Revision tags: llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2 |
|
#
4e2ec7e3 |
| 08-Jan-2022 |
Kazu Hirata <kazu@google.com> |
[llvm] Remove unused forward declarations (NFC)
|
Revision tags: llvmorg-13.0.1-rc1 |
|
#
ced9287c |
| 04-Nov-2021 |
gbreynoo <Owen.Reynolds@sony.com> |
[llvm-objdump] Fix the Assertion failure when providing invalid --debug-vars or --dwarf values
As seen in https://bugs.llvm.org/show_bug.cgi?id=52213 llvm-objdump asserts if either the --debug-vars
[llvm-objdump] Fix the Assertion failure when providing invalid --debug-vars or --dwarf values
As seen in https://bugs.llvm.org/show_bug.cgi?id=52213 llvm-objdump asserts if either the --debug-vars or the --dwarf options are provided with invalid values. As suggested, this fix adds use of a default value to these options and errors when given bad input.
Differential Revision: https://reviews.llvm.org/D112183
show more ...
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2 |
|
#
c56b4cfd |
| 17-Aug-2021 |
Fangrui Song <i@maskray.me> |
[llvm-objdump] -T: print symbol versions
Similar to D94907 (llvm-nm -D).
The output will match GNU objdump 2.37. Older versions don't use ` (version)` for undefined symbols.
Reviewed By: jhenderso
[llvm-objdump] -T: print symbol versions
Similar to D94907 (llvm-nm -D).
The output will match GNU objdump 2.37. Older versions don't use ` (version)` for undefined symbols.
Reviewed By: jhenderson
Differential Revision: https://reviews.llvm.org/D108097
show more ...
|
Revision tags: llvmorg-13.0.0-rc1 |
|
#
6da3d8b1 |
| 28-Jul-2021 |
Fangrui Song <i@maskray.me> |
[llvm] Replace LLVM_ATTRIBUTE_NORETURN with C++11 [[noreturn]]
[[noreturn]] can be used since Oct 2016 when the minimum compiler requirement was bumped to GCC 4.8/MSVC 2015.
Note: the definition of
[llvm] Replace LLVM_ATTRIBUTE_NORETURN with C++11 [[noreturn]]
[[noreturn]] can be used since Oct 2016 when the minimum compiler requirement was bumped to GCC 4.8/MSVC 2015.
Note: the definition of LLVM_ATTRIBUTE_NORETURN is kept for now.
show more ...
|
Revision tags: llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2 |
|
#
c623945d |
| 15-Feb-2021 |
Tim Northover <t.p.northover@gmail.com> |
llvm-objdump: refactor SourcePrinter into separate file. NFC.
Preparatory patch for MachO feature.
|
#
85a5360b |
| 20-Apr-2021 |
Nico Weber <thakis@chromium.org> |
[llvm-objdump] Remove "No" prefixes on variables
...to remove double negation in the code. Requested in D100583.
No behavior change.
Differential Revision: https://reviews.llvm.org/D100849
|
#
1035123a |
| 13-Apr-2021 |
Nico Weber <thakis@chromium.org> |
[llvm-objdump] Switch command-line parsing from llvm::cl to OptTable
This is similar to D83530, but for llvm-objdump.
The motivation is the desire to add an `llvm-otool` symlink to llvm-objdump tha
[llvm-objdump] Switch command-line parsing from llvm::cl to OptTable
This is similar to D83530, but for llvm-objdump.
The motivation is the desire to add an `llvm-otool` symlink to llvm-objdump that behaves like macOS's `otool`, using the same technique the at llvm-objcopy uses to behave like `strip` (etc).
This change for the most part preserves behavior. In some cases, it increases compatibility with GNU objdump a bit. For example, the long options now require two dashes, and the long options taking arguments for the most part now require a `=` in front of the value. Exceptions are flags where tests passed the value separately, for these the separate form is kept as an alias to the = form.
The one-letter short form args are now joined or separate and long longer accept a =, which also matches GNU objdump.
cl::opt<>s in libraries now have to be explicitly plumbed through. This patch does that for --x86-asm-syntax=, but there's hope that we can remove that again.
Differential Revision: https://reviews.llvm.org/D100433
show more ...
|
Revision tags: llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1, llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3, llvmorg-11.0.0-rc2 |
|
#
804ff7f2 |
| 01-Aug-2020 |
Vinicius Tinti <viniciustinti@gmail.com> |
[llvm-objdump] Implement --prefix-strip option
The option `--prefix-strip` is only used when `--prefix` is not empty. It removes N initial directories from absolute paths before adding the prefix.
[llvm-objdump] Implement --prefix-strip option
The option `--prefix-strip` is only used when `--prefix` is not empty. It removes N initial directories from absolute paths before adding the prefix.
This matches GNU's objdump behavior.
Reviewed By: jhenderson
Differential Revision: https://reviews.llvm.org/D96679
show more ...
|
#
b0f4ffbf |
| 05-Feb-2021 |
James Henderson <james.henderson@sony.com> |
[llvm-objdump] Fix missing first line of license in header file
|
#
a9a8caf2 |
| 07-Jan-2021 |
Simon Pilgrim <llvm-dev@redking.me.uk> |
[llvm-objdump] Pass Twine by const reference instead of by value. NFCI.
|
#
e95f9a23 |
| 16-Oct-2020 |
Vinicius Tinti <viniciustinti@gmail.com> |
[llvm-objdump] Implement --prefix option
The prefix given to --prefix will be added to GNU absolute paths when used with --source option (source interleaved with the disassembly).
This matches GNU'
[llvm-objdump] Implement --prefix option
The prefix given to --prefix will be added to GNU absolute paths when used with --source option (source interleaved with the disassembly).
This matches GNU's objdump behavior.
GNU and C++17 rules for absolute paths are different.
Differential Revision: https://reviews.llvm.org/D85024
Fixes PR46368.
Differential Revision: https://reviews.llvm.org/D85024
show more ...
|
Revision tags: llvmorg-11.0.0-rc1, llvmorg-12-init, llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3, llvmorg-10.0.1-rc2 |
|
#
439d27d7 |
| 31-May-2020 |
Fangrui Song <maskray@google.com> |
[llvm-objdump] Move llvm:: to llvm::objdump:: and qualifying definitions with objdump::
Or adding `static`.
Qualifying definitions with `objdump::` comforms to the coding standards https://llvm.org
[llvm-objdump] Move llvm:: to llvm::objdump:: and qualifying definitions with objdump::
Or adding `static`.
Qualifying definitions with `objdump::` comforms to the coding standards https://llvm.org/docs/CodingStandards.html#use-namespace-qualifiers-to-implement-previously-declared-functions
show more ...
|