diff options
| author | Hongtao Yu <hoy@fb.com> | 2023-09-18 12:40:06 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-09-18 12:40:06 -0700 |
| commit | 47669af47fafd5d0b0dc117938ae7a1cffc8d344 (patch) | |
| tree | 4eda4b40afb2ce59c03b3b18b38a667a9fe9b0b0 /lldb/source/Plugins/ScriptInterpreter/Python/PythonReadline.h | |
| parent | 61d361d69bb3af183b63be3e8a7056030e92de8a (diff) | |
| download | llvm-47669af47fafd5d0b0dc117938ae7a1cffc8d344.zip llvm-47669af47fafd5d0b0dc117938ae7a1cffc8d344.tar.gz llvm-47669af47fafd5d0b0dc117938ae7a1cffc8d344.tar.bz2 | |
[llvm-profgen] Ignore inline frames with an emtpy function name (#66678)
Broken debug information can give empty names for an inlined frame, e.g,
```
0x1d605c68: ryKeyINS7_17SmartCounterTypesEEESt10shared_ptrINS7_15AsyncCacheValueIS9_EEESaIhESt6atomicEEE9fetch_subElSt12memory_order at Filename: edata.h
Function start filename: edata.h
Function start line: 266
Function start address: 0x1d605c68
Line: 267
Column: 0
(inlined by) at Filename: edata.h
Function start filename: edata.h
Function start line: 274
Function start address: 0x1d605c68
Line: 275
Column: 0
(inlined by) _EEEmmEv at Filename: arena.c
Function start filename: arena.c
Function start line: 1303
Line: 1308
Column: 0
```
This patch avoids creating a sample context with an empty function name
by stopping tracking at that frame. This prevents a hash failure that
leads to an ICE, where empty context serves at an empty key for the
underlying MapVector
https://github.com/llvm/llvm-project/blob/7624de5beae2f142abfdb3e32a63c263a586d768/llvm/lib/ProfileData/SampleProfWriter.cpp#L261
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/PythonReadline.h')
0 files changed, 0 insertions, 0 deletions
