[llvm] [llvm-dwp] Fix infinite loop on DWARFv5 DW_FORM_implicit_const (PR #205567)
David Blaikie via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 29 10:49:53 PDT 2026
================
@@ -113,12 +132,9 @@ getCUIdentifiers(InfoSectionUnitHeader &Header, StringRef Abbrev,
return make_error<DWPError>("top level DIE is not a compile unit");
// DW_CHILDREN
AbbrevData.getU8(&AbbrevOffset);
- uint32_t Name;
+ uint64_t Name;
dwarf::Form Form;
- while ((Name = AbbrevData.getULEB128(&AbbrevOffset)) |
- (Form = static_cast<dwarf::Form>(
- AbbrevData.getULEB128(&AbbrevOffset))) &&
- (Name != 0 || Form != 0)) {
+ while (readAbbrevAttribute(AbbrevData, &AbbrevOffset, Name, Form)) {
----------------
dwblaikie wrote:
No strong feels - here or in another patch, either's fine.
https://github.com/llvm/llvm-project/pull/205567
More information about the llvm-commits
mailing list