[all-commits] [llvm/llvm-project] 0ff0f5: Fix __apple_XXX iterator that iterates over all en...
Greg Clayton via All-commits
all-commits at lists.llvm.org
Mon Dec 1 10:57:50 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 0ff0f52460531c0bfa213d0dcfa0cfb4ba61e934
https://github.com/llvm/llvm-project/commit/0ff0f52460531c0bfa213d0dcfa0cfb4ba61e934
Author: Greg Clayton <gclayton at fb.com>
Date: 2025-12-01 (Mon, 01 Dec 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
M llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
Log Message:
-----------
Fix __apple_XXX iterator that iterates over all entries. (#157538)
The previous iterator for __apple_XXX sections was assuming that all
entries in the table would be contiguous and it wasn't using the offsets
table to access each chain of entries for a given name. This patch fixes
it so the iterator does the right thing.
This issue became apparent after a modification to strip template names
from DW_AT_name entries to allow adding both the template class base
name as an entry and also include the name with template names. The
commit hash is 2e7ee4dc21430b0fe4c9ee306dc1d8c7986a6646. The problem is
if the name starts with a "<" it will try and split the name. So if the
name is `"<get-size>"` it will return an empty string as the function
name, and this empty string gets added to the __apple_names table and
causes large delays when using the iterators.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list