<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/test/Feature/load_plugin_error.ll, branch users/nico/python-2</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>[ThinLTO] Skip opt pipeline and summary wrapper pass on empty modules (#120143)</title>
<updated>2025-01-11T03:33:20+00:00</updated>
<author>
<name>Teresa Johnson</name>
<email>tejohnson@google.com</email>
</author>
<published>2025-01-11T03:33:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=799955eb176042999b4d12a901b1c33b42035014'/>
<id>799955eb176042999b4d12a901b1c33b42035014</id>
<content type='text'>
Follow up to PR118508, to avoid unnecessary compile time for an empty
combind regular LTO module if all modules end up being ThinLTO only.

This required minor changes to a few tests to ensure they weren't empty.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Follow up to PR118508, to avoid unnecessary compile time for an empty
combind regular LTO module if all modules end up being ThinLTO only.

This required minor changes to a few tests to ensure they weren't empty.</pre>
</div>
</content>
</entry>
<entry>
<title>Fix test introduced by d29fdfbc4e3b</title>
<updated>2024-06-26T19:36:00+00:00</updated>
<author>
<name>Joel E. Denny</name>
<email>jdenny.ornl@gmail.com</email>
</author>
<published>2024-06-26T19:36:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a89a54190ced6f7ded24eb3b6e5115dbe69eada8'/>
<id>a89a54190ced6f7ded24eb3b6e5115dbe69eada8</id>
<content type='text'>
It breaks builds like:

https://lab.llvm.org/buildbot/#/builders/190/builds/744
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It breaks builds like:

https://lab.llvm.org/buildbot/#/builders/190/builds/744
</pre>
</div>
</content>
</entry>
<entry>
<title>[LTO] Avoid assert fail on failed pass plugin load (#96691)</title>
<updated>2024-06-26T18:51:24+00:00</updated>
<author>
<name>Joel E. Denny</name>
<email>jdenny.ornl@gmail.com</email>
</author>
<published>2024-06-26T18:51:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d29fdfbc4e3b42e9ee0295049493ba7b1471772f'/>
<id>d29fdfbc4e3b42e9ee0295049493ba7b1471772f</id>
<content type='text'>
Without this patch, passing -load-pass-plugin=nonexistent.so to
llvm-lto2 produces a backtrace because LTOBackend.cpp does not handle
the error correctly:

```
Failed to load passes from 'nonexistant.so'. Request ignored.
Expected&lt;T&gt; must be checked before access or destruction.
Unchecked Expected&lt;T&gt; contained error:
Could not load library 'nonexistant.so': nonexistant.so: cannot open shared object file: No such file or directoryPLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
```

Any tool using `lto::Config::PassPlugins` should suffer similarly.

Based on the message "Request ignored" and the continue statement, the
intention was apparently to continue on failure to load a plugin.
However, no one appears to rely on that behavior now given that it
crashes instead, and terminating is consistent with opt.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Without this patch, passing -load-pass-plugin=nonexistent.so to
llvm-lto2 produces a backtrace because LTOBackend.cpp does not handle
the error correctly:

```
Failed to load passes from 'nonexistant.so'. Request ignored.
Expected&lt;T&gt; must be checked before access or destruction.
Unchecked Expected&lt;T&gt; contained error:
Could not load library 'nonexistant.so': nonexistant.so: cannot open shared object file: No such file or directoryPLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
```

Any tool using `lto::Config::PassPlugins` should suffer similarly.

Based on the message "Request ignored" and the continue statement, the
intention was apparently to continue on failure to load a plugin.
However, no one appears to rely on that behavior now given that it
crashes instead, and terminating is consistent with opt.</pre>
</div>
</content>
</entry>
<entry>
<title>[opt] Properly report errors when loading pass plugins (#69745)</title>
<updated>2023-10-23T16:55:29+00:00</updated>
<author>
<name>Arthur Eubanks</name>
<email>aeubanks@google.com</email>
</author>
<published>2023-10-23T16:55:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8fe7e8838649fb285c2313f66d0d52909536e338'/>
<id>8fe7e8838649fb285c2313f66d0d52909536e338</id>
<content type='text'>
All error messages here already contain the path to the plugin, so no
need to repeat it in opt.cpp.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
All error messages here already contain the path to the plugin, so no
need to repeat it in opt.cpp.</pre>
</div>
</content>
</entry>
</feed>
