<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/lldb/test/Shell/SymbolFile/DWARF/x86/find-basic-function.cpp, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[NFCI][lldb][test] Fix mismatched C/C++ substitutions (#165773)</title>
<updated>2025-10-30T21:18:32+00:00</updated>
<author>
<name>Raul Tambre</name>
<email>raul@tambre.ee</email>
</author>
<published>2025-10-30T21:18:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=21041c92925faf529717d96279b6d8f20b17c70c'/>
<id>21041c92925faf529717d96279b6d8f20b17c70c</id>
<content type='text'>
Most of the cases were where a C++ file was being compiled with the C substitution.
There were a few cases of the opposite though.

LLDB seems to be the only real culprit in the LLVM codebase for these mismatches.
Rest of the LLVM presumably sticks at least language-specific options in the common substitutions
making the mistakes immediately apparent.

I found these by using Clang frontend configuration files containing language-specific options for
both C and C++ (e.g. `-std=c2y` and `-std=c++26`).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most of the cases were where a C++ file was being compiled with the C substitution.
There were a few cases of the opposite though.

LLDB seems to be the only real culprit in the LLVM codebase for these mismatches.
Rest of the LLVM presumably sticks at least language-specific options in the common substitutions
making the mistakes immediately apparent.

I found these by using Clang frontend configuration files containing language-specific options for
both C and C++ (e.g. `-std=c2y` and `-std=c++26`).</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] Merge CompilerContextKind::{Class,Struct} (#96145)</title>
<updated>2024-06-24T06:56:21+00:00</updated>
<author>
<name>Pavel Labath</name>
<email>pavel@labath.sk</email>
</author>
<published>2024-06-24T06:56:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=599ca7165edcf7d226bd658c450801044b46ce7c'/>
<id>599ca7165edcf7d226bd658c450801044b46ce7c</id>
<content type='text'>
Our dwarf parsing code treats structures and classes as interchangable.
CompilerContextKind is used when looking DIEs for types. This makes sure
we always they're treated the same way.

See also
[#95905#discussion_r1645686628](https://github.com/llvm/llvm-project/pull/95905#discussion_r1645686628).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Our dwarf parsing code treats structures and classes as interchangable.
CompilerContextKind is used when looking DIEs for types. This makes sure
we always they're treated the same way.

See also
[#95905#discussion_r1645686628](https://github.com/llvm/llvm-project/pull/95905#discussion_r1645686628).</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb/test] Add basic ld.lld --debug-names tests (#88335)</title>
<updated>2024-04-23T18:18:05+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2024-04-23T18:18:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a7e27260a92b7a40ede0c3ea4035733ea61e6571'/>
<id>a7e27260a92b7a40ede0c3ea4035733ea61e6571</id>
<content type='text'>
Test that ld.lld --debug-names (#86508) built per-module index can be
consumed by lldb. This has uncovered a bug during the development of the
lld feature.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Test that ld.lld --debug-names (#86508) built per-module index can be
consumed by lldb. This has uncovered a bug during the development of the
lld feature.</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] DWARFDIE: Follow DW_AT_specification when computing CompilerCo… (#77157)</title>
<updated>2024-01-09T18:45:30+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>adrian-prantl@users.noreply.github.com</email>
</author>
<published>2024-01-09T18:45:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=fa9284589f111cfd3614a75bfbe0709db39a8f15'/>
<id>fa9284589f111cfd3614a75bfbe0709db39a8f15</id>
<content type='text'>
…ntext

Following the specification chain seems to be clearly the expected
behavior of GetDeclContext(). Otherwise C++ methods have an empty
CompilerContext instead of being nested in their struct/class.

Theprimary motivation for this functionality is the Swift plugin. In
order to test the change I added a proof-of-concept implementation of a
Module::FindFunction() variant that takes a CompilerContext, expesed via
lldb-test.

rdar://120553412</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
…ntext

Following the specification chain seems to be clearly the expected
behavior of GetDeclContext(). Otherwise C++ methods have an empty
CompilerContext instead of being nested in their struct/class.

Theprimary motivation for this functionality is the Swift plugin. In
order to test the change I added a proof-of-concept implementation of a
Module::FindFunction() variant that takes a CompilerContext, expesed via
lldb-test.

rdar://120553412</pre>
</div>
</content>
</entry>
<entry>
<title>Expose DWARFDIE::GetDeclContext() in lldb_private::Function. (#69981)</title>
<updated>2023-10-24T17:55:23+00:00</updated>
<author>
<name>Adrian Prantl</name>
<email>adrian-prantl@users.noreply.github.com</email>
</author>
<published>2023-10-24T17:55:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=49504674dbca6f753771f790ea4062bcbc9cc829'/>
<id>49504674dbca6f753771f790ea4062bcbc9cc829</id>
<content type='text'>
I need this API in the Swift plugin, but it seems generally useful
enough to expose it in the main branch.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I need this API in the Swift plugin, but it seems generally useful
enough to expose it in the main branch.</pre>
</div>
</content>
</entry>
<entry>
<title>Reland "[lldb/DWARF] Only match mangled name in full-name function lookup (with accelerators)"</title>
<updated>2021-08-04T10:50:13+00:00</updated>
<author>
<name>Jaroslav Sevcik</name>
<email>jarin@google.com</email>
</author>
<published>2021-08-04T09:51:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f968bd77bbcf142afdb74750e53485b044de3e5f'/>
<id>f968bd77bbcf142afdb74750e53485b044de3e5f</id>
<content type='text'>
Summary:

In the spirit of https://reviews.llvm.org/D70846, we only return functions with
matching mangled name from Apple/DebugNamesDWARFIndex::GetFunction if
eFunctionNameTypeFull is requested.

This speeds up lookup in the presence of large amount of class methods of the
same name (a typical examples would be constructors of templates with many
instantiations or overloaded operators).

Reviewers: labath, teemperor

Reviewed By: labath, teemperor

Subscribers: aprantl, arphaman, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D73191
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:

In the spirit of https://reviews.llvm.org/D70846, we only return functions with
matching mangled name from Apple/DebugNamesDWARFIndex::GetFunction if
eFunctionNameTypeFull is requested.

This speeds up lookup in the presence of large amount of class methods of the
same name (a typical examples would be constructors of templates with many
instantiations or overloaded operators).

Reviewers: labath, teemperor

Reviewed By: labath, teemperor

Subscribers: aprantl, arphaman, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D73191
</pre>
</div>
</content>
</entry>
<entry>
<title>[lldb] Require x86 backend for a bunch of DWARF tests</title>
<updated>2021-04-13T08:47:41+00:00</updated>
<author>
<name>David Spickett</name>
<email>david.spickett@linaro.org</email>
</author>
<published>2021-04-09T13:14:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8a64d80a959bf2844df33f9112e456f33de7b468'/>
<id>8a64d80a959bf2844df33f9112e456f33de7b468</id>
<content type='text'>
By moving them into a folder with a local lit config
requiring x86. All these tests use x86 target triples.

There are two tests that require target-x86_64 because
they run program files (instead of just needing the backend).
Those are moved to the x86 folder also but their REQUIRES are
unchanged.

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D100193
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
By moving them into a folder with a local lit config
requiring x86. All these tests use x86 target triples.

There are two tests that require target-x86_64 because
they run program files (instead of just needing the backend).
Those are moved to the x86 folder also but their REQUIRES are
unchanged.

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D100193
</pre>
</div>
</content>
</entry>
</feed>
