| [lldb] Fix source line annotations for libsanitizers traces (#154247) When providing allocation and deallocation traces, the ASan compiler-rt runtime already provides call addresses (TracePCType::Calls). On Darwin, system sanitizers (libsanitizers) provides return address. It also discards a few non-user frames at the top of the stack, because these internal libmalloc/libsanitizers stack frames do not provide any value when diagnosing memory errors. Introduce and add handling for TracePCType::ReturnsNoZerothFrame to cover this case and enable libsanitizers traces line-level testing. rdar://157596927 --- Commit 1 is a mechanical refactoring to introduce and adopt TracePCType enum to replace pcs_are_call_addresses bool. It preserve the current behavior: pcs_are_call_addresses: false -> TracePCType::Returns (default) true -> TracePCType::Calls Best reviewed commit by commit. | 11 个月前 |