[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-13 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. In D68655#4048009 , @jasonmolenda wrote: > In D68655#4047126 , @labath wrote: > >> In D68655#4045895 , @jasonmolenda >> wrote: >> >>> Both have to

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-13 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. In D68655#4045873 , @jasonmolenda wrote: > I know this is all moot because the dSYM-specific patch landed, but I am > curious about this part, > > In D68655#4045561 , @clayborg wrote: > >

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-12 Thread Pavel Labath via Phabricator via lldb-commits
labath added a comment. In D68655#4048009 , @jasonmolenda wrote: > In D68655#4047126 , @labath wrote: > >> In D68655#4045895 , @jasonmolenda >> wrote: >> >>> Both have to b

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-12 Thread Jason Molenda via Phabricator via lldb-commits
jasonmolenda added a comment. In D68655#4047126 , @labath wrote: > In D68655#4045895 , @jasonmolenda > wrote: > >> Both have to be written by the dwarf linker to be correct, but only the >> former is written ONLY

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-12 Thread Pavel Labath via Phabricator via lldb-commits
labath added a comment. In D68655#4045895 , @jasonmolenda wrote: > Both have to be written by the dwarf linker to be correct, but only the > former is written ONLY by the dwarf linker. I don't think that's right: $ clang -c -x c - -o - -gdwarf-arange

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-11 Thread Jason Molenda via Phabricator via lldb-commits
jasonmolenda added a comment. I guess to say it shorter. If I have a dwarf_aranges, that means the dwarf linker created it. And if it created it, surely its at least based off of the subprogram address ranges or the line table -- that is, the text address ranges. If I have a DW_TAG_compile_u

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-11 Thread Jason Molenda via Phabricator via lldb-commits
jasonmolenda added a comment. I know this is all moot because the dSYM-specific patch landed, but I am curious about this part, In D68655#4045561 , @clayborg wrote: > > Different things are included in DW_AT_ranges, like address ranges for global >

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-11 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. In D68655#4045604 , @JDevlieghere wrote: > In D68655#4045561 , @clayborg wrote: > >> But we still need know if we have a dSYM file or not, because if not, we >> can't use .debug_aranges a

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-11 Thread Jonas Devlieghere via Phabricator via lldb-commits
JDevlieghere added a comment. In D68655#4045561 , @clayborg wrote: > But we still need know if we have a dSYM file or not, because if not, we > can't use .debug_aranges as .o files don't have them, but they also don't > claim to be of type ObjectFile::eT

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-11 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. In D68655#4045461 , @jasonmolenda wrote: > In D68655#4045423 , @clayborg wrote: > >> There have also been some bugs in .debug_aranges and some folks want to get >> rid of .debug_aranges a

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-11 Thread Jason Molenda via Phabricator via lldb-commits
jasonmolenda added a comment. In D68655#4045423 , @clayborg wrote: > There have also been some bugs in .debug_aranges and some folks want to get > rid of .debug_aranges all together and rely only upon the > DW_TAG_compile_unit's DW_AT_ranges. Tons of det

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-11 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. In D68655#4045420 , @clayborg wrote: > SymbolVendorELF.cpp is using this as well: > > dsym_objfile_sp->SetType(ObjectFile::eTypeDebugInfo); > > They must have copied and pasted some code. So not sure this is safe enough > as is

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-11 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. There have also been some bugs in .debug_aranges and some folks want to get rid of .debug_aranges all together and rely only upon the DW_TAG_compile_unit's DW_AT_ranges. Tons of details in this patch: https://reviews.llvm.org/D136395 So long story short, some people b

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-11 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. SymbolVendorELF.cpp is using this as well: dsym_objfile_sp->SetType(ObjectFile::eTypeDebugInfo); They must have copied and pasted some code. So not sure this is safe enough as is to implement. There are also a few places that try to check for a dSYM file using this

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-09 Thread Jonas Devlieghere via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG8b259fe573e1: [lldb] Trust the arange accelerator tables in dSYMs (authored by JDevlieghere). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D68655/new/ https

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-09 Thread Jason Molenda via Phabricator via lldb-commits
jasonmolenda added a comment. I agree with landing this change. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D68655/new/ https://reviews.llvm.org/D68655 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2023-01-09 Thread Jonas Devlieghere via Phabricator via lldb-commits
JDevlieghere updated this revision to Diff 487509. JDevlieghere added a comment. > Apparently for very small / gapless programs, clang emits single-value > DW_AT_low_pc/high_pc in the compile unit, and dsymutil does not rewrite that > into DW_AT_ranges. Although this statement is correct, it sh

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2019-10-10 Thread Adrian Prantl via Phabricator via lldb-commits
aprantl added a comment. I wouldn't call it a bug, but if we changed dsymutil to always rewrite DW_AT_low_pc into DW_AT_ranges, we could trust the .debug_ranges section to be complete. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D68655/new/ http

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2019-10-10 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment. In D68655#1700626 , @aprantl wrote: > I had to revert this. Apparently for very small / gapless programs, clang > emits single-value DW_AT_low_pc/high_pc in the compile unit, and dsymutil > does not rewrite that into DW_AT_range

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2019-10-08 Thread Adrian Prantl via Phabricator via lldb-commits
aprantl added a comment. I had to revert this. Apparently for very small / gapless programs, clang emits single-value DW_AT_low_pc/high_pc in the compile unit, and dsymutil does not rewrite that into DW_AT_ranges. Would be a nice speedup though. Repository: rG LLVM Github Monorepo CHANGES S

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2019-10-08 Thread Adrian Prantl via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG6399db2f6fd6: Trust the arange accelerator tables in dSYMs (authored by aprantl). Herald added a project: LLDB. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2019-10-08 Thread Adrian Prantl via Phabricator via lldb-commits
aprantl added a comment. In D68655#1700314 , @jasonmolenda wrote: > Nice fix. The real cost of computing the aranges manually is expanding all > the line tables and calling GetContiguousFileAddressRanges on them. I wonder > if avoiding the full lineta

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2019-10-08 Thread Jason Molenda via Phabricator via lldb-commits
jasonmolenda accepted this revision. jasonmolenda added a comment. This revision is now accepted and ready to land. Nice fix. The real cost of computing the aranges manually is expanding all the line tables and calling GetContiguousFileAddressRanges on them. I wonder if avoiding the full linet

[Lldb-commits] [PATCH] D68655: Trust the arange accelerator tables in dSYMs

2019-10-08 Thread Adrian Prantl via Phabricator via lldb-commits
aprantl created this revision. aprantl added reviewers: jasonmolenda, jingham, friss. Herald added a subscriber: JDevlieghere. Herald added a reviewer: JDevlieghere. When ingesting aranges from a dSYM it makes sense to always trust the contents of the accelerator table since it always comes from