<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Support/DynamicLibrary.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>[Support] Use "using" instead of "typedef" (NFC) (#166130)</title>
<updated>2025-11-03T16:41:32+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-11-03T16:41:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=5ed8f4847673f69dfe984a9ad653035a06e265bb'/>
<id>5ed8f4847673f69dfe984a9ad653035a06e265bb</id>
<content type='text'>
Identified with modernize-use-using.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Identified with modernize-use-using.</pre>
</div>
</content>
</entry>
<entry>
<title>[Support][Cygwin] Fix handling of Process symbol lookup. (#143072)</title>
<updated>2025-06-09T19:19:37+00:00</updated>
<author>
<name>jeremyd2019</name>
<email>github@jdrake.com</email>
</author>
<published>2025-06-09T19:19:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d659364295f6f0c41535a0c98c958cb4c896cc62'/>
<id>d659364295f6f0c41535a0c98c958cb4c896cc62</id>
<content type='text'>
In Unix/DynamicLibrary.inc, it was already known that Cygwin required
use of `RTLD_DEFAULT` as the `Handle` parameter to `DLSym` to search all
modules for a symbol. Unfortunately, RTLD_DEFAULT is defined as NULL, so
the existing checks of the `Process` handle meant `DLSym` would never be
called on Cygwin. Use the existing `&amp;Invalid` sentinel instead of
`nullptr` for the `Process` handle.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In Unix/DynamicLibrary.inc, it was already known that Cygwin required
use of `RTLD_DEFAULT` as the `Handle` parameter to `DLSym` to search all
modules for a symbol. Unfortunately, RTLD_DEFAULT is defined as NULL, so
the existing checks of the `Process` handle meant `DLSym` would never be
called on Cygwin. Use the existing `&amp;Invalid` sentinel instead of
`nullptr` for the `Process` handle.</pre>
</div>
</content>
</entry>
<entry>
<title>Add functionality to load dynamic libraries temporarily</title>
<updated>2022-10-03T23:20:22+00:00</updated>
<author>
<name>Michael Holman</name>
<email>michael.holman@microsoft.com</email>
</author>
<published>2022-10-03T23:19:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=513f89dc8d894df7d72460943012c3488f2aeec7'/>
<id>513f89dc8d894df7d72460943012c3488f2aeec7</id>
<content type='text'>
Previously, it was possible to load dynamic libraries which would be unloaded on llvm_shutdown(), but recently ManagedStatic removal changed this so that loaded libraries really can't ever be unloaded. This functionality was very useful, and so to add it back in a more explicit way, I've added new getLibrary() and closeLibrary() methods to allow callers to use the very convenient platform independent abstraction that LLVM has for dynamic libraries.

As a specific use case, the onnx-mlir project was using this functionality with an API that allows instancing LLVM so you can compile a shared library, and then load that library, and eventually close the instance (and library) and compile something else. This change to llvm_shutdown causes libraries to leak and also locks the libraries for the entire duration of the program which prevents reusing library names.

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D134763
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, it was possible to load dynamic libraries which would be unloaded on llvm_shutdown(), but recently ManagedStatic removal changed this so that loaded libraries really can't ever be unloaded. This functionality was very useful, and so to add it back in a more explicit way, I've added new getLibrary() and closeLibrary() methods to allow callers to use the very convenient platform independent abstraction that LLVM has for dynamic libraries.

As a specific use case, the onnx-mlir project was using this functionality with an API that allows instancing LLVM so you can compile a shared library, and then load that library, and eventually close the instance (and library) and compile something else. This change to llvm_shutdown causes libraries to leak and also locks the libraries for the entire duration of the program which prevents reusing library names.

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D134763
</pre>
</div>
</content>
</entry>
<entry>
<title>ManagedStatic: remove from DynamicLibrary</title>
<updated>2022-08-25T15:06:43+00:00</updated>
<author>
<name>Nicolai Hähnle</name>
<email>nicolai.haehnle@amd.com</email>
</author>
<published>2022-06-29T14:47:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ebbbd93e3cd8c91b5ac01540c05c619236a90289'/>
<id>ebbbd93e3cd8c91b5ac01540c05c619236a90289</id>
<content type='text'>
v2:
- fix Windows build issues

Differential Revision: https://reviews.llvm.org/D129127
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
v2:
- fix Windows build issues

Differential Revision: https://reviews.llvm.org/D129127
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "ManagedStatic: remove from DynamicLibrary"</title>
<updated>2022-08-03T15:56:46+00:00</updated>
<author>
<name>Nicolai Hähnle</name>
<email>nicolai.haehnle@amd.com</email>
</author>
<published>2022-08-03T15:55:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=5c7c83885fbb0909e972158240e167849ae1c6c0'/>
<id>5c7c83885fbb0909e972158240e167849ae1c6c0</id>
<content type='text'>
This reverts commit 38817af6a7271aee0581c56eaea44b8c4cf5ecc7.

Buildbots report a Windows build error. Revert until I can look at it
more carefully.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 38817af6a7271aee0581c56eaea44b8c4cf5ecc7.

Buildbots report a Windows build error. Revert until I can look at it
more carefully.
</pre>
</div>
</content>
</entry>
<entry>
<title>ManagedStatic: remove from DynamicLibrary</title>
<updated>2022-08-03T15:43:52+00:00</updated>
<author>
<name>Nicolai Hähnle</name>
<email>nicolai.haehnle@amd.com</email>
</author>
<published>2022-06-29T14:47:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=38817af6a7271aee0581c56eaea44b8c4cf5ecc7'/>
<id>38817af6a7271aee0581c56eaea44b8c4cf5ecc7</id>
<content type='text'>
Differential Revision: https://reviews.llvm.org/D129127
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Differential Revision: https://reviews.llvm.org/D129127
</pre>
</div>
</content>
</entry>
<entry>
<title>[Support] Use default member initialization (NFC)</title>
<updated>2022-06-13T01:46:25+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2022-06-13T01:46:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6c39687567faee49b7bccdcaaaa35db0d397c19d'/>
<id>6c39687567faee49b7bccdcaaaa35db0d397c19d</id>
<content type='text'>
Identified with modernize-use-default-member-init.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Identified with modernize-use-default-member-init.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup include: TableGen</title>
<updated>2022-03-11T10:41:32+00:00</updated>
<author>
<name>serge-sans-paille</name>
<email>sguelton@redhat.com</email>
</author>
<published>2022-03-09T21:28:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=fbbc41f8dd233f1f0655852ca3e9634b1bb90cf0'/>
<id>fbbc41f8dd233f1f0655852ca3e9634b1bb90cf0</id>
<content type='text'>
This also includes a few cleanup from Support.

Discourse thread: https://discourse.llvm.org/t/include-what-you-use-include-cleanup
Differential Revision: https://reviews.llvm.org/D121331
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This also includes a few cleanup from Support.

Discourse thread: https://discourse.llvm.org/t/include-what-you-use-include-cleanup
Differential Revision: https://reviews.llvm.org/D121331
</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Revert "PoC for Flang Driver Plugins"</title>
<updated>2021-07-01T08:27:31+00:00</updated>
<author>
<name>Andrzej Warzynski</name>
<email>andrzej.warzynski@arm.com</email>
</author>
<published>2021-07-01T08:27:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c1f068b8f1d5f6ca75acc07fdedf2e7416e834ec'/>
<id>c1f068b8f1d5f6ca75acc07fdedf2e7416e834ec</id>
<content type='text'>
This patch has not been reviewed and was commited by accident.

This reverts commit 788a5d4afe6407e647454a9832a7b4a27fba06bf.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch has not been reviewed and was commited by accident.

This reverts commit 788a5d4afe6407e647454a9832a7b4a27fba06bf.
</pre>
</div>
</content>
</entry>
<entry>
<title>PoC for Flang Driver Plugins</title>
<updated>2021-07-01T08:10:40+00:00</updated>
<author>
<name>Stuart Ellis</name>
<email>stuart.ellis@arm.com</email>
</author>
<published>2021-06-23T17:05:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=788a5d4afe6407e647454a9832a7b4a27fba06bf'/>
<id>788a5d4afe6407e647454a9832a7b4a27fba06bf</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
