<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Bitstream/Reader, 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>[BitstreamReader] Fix 32-bit overflow  (#117363)</title>
<updated>2024-11-27T22:53:34+00:00</updated>
<author>
<name>Pranav Kant</name>
<email>prka@google.com</email>
</author>
<published>2024-11-27T22:53:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8df63211a65693c7cc760e361adf20edd450fafa'/>
<id>8df63211a65693c7cc760e361adf20edd450fafa</id>
<content type='text'>
This got exposed when processing large LTO-generated files leading to
crashes.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This got exposed when processing large LTO-generated files leading to
crashes.</pre>
</div>
</content>
</entry>
<entry>
<title>[nfc] Allow forwarding `Error` returns from `Expected` callers (#92208)</title>
<updated>2024-05-15T17:34:47+00:00</updated>
<author>
<name>Mircea Trofin</name>
<email>mtrofin@google.com</email>
</author>
<published>2024-05-15T17:34:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=217668f641e82f901645f428ae0d07a3c01e9a8a'/>
<id>217668f641e82f901645f428ae0d07a3c01e9a8a</id>
<content type='text'>
On a few compilers (clang 11/12 for example [1]), the following does not
result in a copy elision, and since `Error`'s copy dtor is elided,
results in a compile error:

```
  Expect&lt;Something&gt; foobar() {
    ...
    if (Error E = aCallReturningError())
      return E;
    ...
  }
```

Moving `E` would, conversely, result in the pessimizing-move warning on
more recent clangs ("moving a local object in a return statement
prevents copy elision")

We just need to make the `Expected` ctor taking an `Error` take it as a
r-value reference.

[1] https://lab.llvm.org/buildbot/#/builders/54/builds/10505</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
On a few compilers (clang 11/12 for example [1]), the following does not
result in a copy elision, and since `Error`'s copy dtor is elided,
results in a compile error:

```
  Expect&lt;Something&gt; foobar() {
    ...
    if (Error E = aCallReturningError())
      return E;
    ...
  }
```

Moving `E` would, conversely, result in the pessimizing-move warning on
more recent clangs ("moving a local object in a return statement
prevents copy elision")

We just need to make the `Expected` ctor taking an `Error` take it as a
r-value reference.

[1] https://lab.llvm.org/buildbot/#/builders/54/builds/10505</pre>
</div>
</content>
</entry>
<entry>
<title>[Bitcode(Reader|Writer)] Convert Optional to std::optional</title>
<updated>2022-12-07T23:27:38+00:00</updated>
<author>
<name>Krzysztof Parzyszek</name>
<email>kparzysz@quicinc.com</email>
</author>
<published>2022-12-07T18:04:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=49e75ebd854dee1fcf5729c264f4cfadf76e952d'/>
<id>49e75ebd854dee1fcf5729c264f4cfadf76e952d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Use std::nullopt instead of None (NFC)</title>
<updated>2022-12-03T05:11:44+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2022-12-03T05:11:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=aadaaface2ec96ee30d92bf46faa41dd9e68b64d'/>
<id>aadaaface2ec96ee30d92bf46faa41dd9e68b64d</id>
<content type='text'>
This patch mechanically replaces None with std::nullopt where the
compiler would warn if None were deprecated.  The intent is to reduce
the amount of manual work required in migrating from Optional to
std::optional.

This is part of an effort to migrate from llvm::Optional to
std::optional:

https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch mechanically replaces None with std::nullopt where the
compiler would warn if None were deprecated.  The intent is to reduce
the amount of manual work required in migrating from Optional to
std::optional.

This is part of an effort to migrate from llvm::Optional to
std::optional:

https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
</pre>
</div>
</content>
</entry>
<entry>
<title>[Bitstream] Remove pessimizing move</title>
<updated>2022-02-16T07:23:02+00:00</updated>
<author>
<name>Jan Svoboda</name>
<email>jan_svoboda@apple.com</email>
</author>
<published>2022-02-16T07:19:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b223e5f8468cbed5cffe0d872de8feac2a73b030'/>
<id>b223e5f8468cbed5cffe0d872de8feac2a73b030</id>
<content type='text'>
Commit 4a794d848ce81f41c6e23a4d3d3f70c2d7d1baa4 caused build failure with -Werror -Wpessimizing-move on the clang-ppc64-aix buildbot. This patch applies Clang's suggestion to remove `std::move`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Commit 4a794d848ce81f41c6e23a4d3d3f70c2d7d1baa4 caused build failure with -Werror -Wpessimizing-move on the clang-ppc64-aix buildbot. This patch applies Clang's suggestion to remove `std::move`.
</pre>
</div>
</content>
</entry>
<entry>
<title>[Bitstream] Improve error propagation from ReadVBR</title>
<updated>2022-02-16T01:12:38+00:00</updated>
<author>
<name>Jan Korous</name>
<email>jkorous@apple.com</email>
</author>
<published>2022-02-15T02:22:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4a794d848ce81f41c6e23a4d3d3f70c2d7d1baa4'/>
<id>4a794d848ce81f41c6e23a4d3d3f70c2d7d1baa4</id>
<content type='text'>
Differential Revision: https://reviews.llvm.org/D119307
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Differential Revision: https://reviews.llvm.org/D119307
</pre>
</div>
</content>
</entry>
<entry>
<title>[Bitstream] Check that there is enough space for blob</title>
<updated>2022-02-07T11:16:13+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>npopov@redhat.com</email>
</author>
<published>2022-02-07T10:43:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ec18030f5fc1f4a08326e65fe06c6f265a829f4c'/>
<id>ec18030f5fc1f4a08326e65fe06c6f265a829f4c</id>
<content type='text'>
Instead of simply assuming that it will be zero. I double checked
that the bitstream reader doesn't have any special handling for
all-zero blobs, it will always write out the full contents.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Instead of simply assuming that it will be zero. I double checked
that the bitstream reader doesn't have any special handling for
all-zero blobs, it will always write out the full contents.
</pre>
</div>
</content>
</entry>
<entry>
<title>[Bitstream] Reject implausibly large reservations</title>
<updated>2022-02-07T11:16:12+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>npopov@redhat.com</email>
</author>
<published>2022-02-07T09:56:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3c86642edd28f1ce970882edaba8dce468ec7401'/>
<id>3c86642edd28f1ce970882edaba8dce468ec7401</id>
<content type='text'>
If we're trying to reserve more memory than bits in the stream,
reject this early to avoid OOM.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If we're trying to reserve more memory than bits in the stream,
reject this early to avoid OOM.
</pre>
</div>
</content>
</entry>
<entry>
<title>[Bitcode] Handle invalid abbrev number error more gracefully</title>
<updated>2022-02-07T09:34:34+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>npopov@redhat.com</email>
</author>
<published>2022-02-07T09:34:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8a718541838a0ab1e87f4b8923bb16e640f73de3'/>
<id>8a718541838a0ab1e87f4b8923bb16e640f73de3</id>
<content type='text'>
Avoid report_fatal_error(), propagate the error upwards instead.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Avoid report_fatal_error(), propagate the error upwards instead.
</pre>
</div>
</content>
</entry>
<entry>
<title>[BitstreamReader] Fix incorrect error forwarding</title>
<updated>2022-02-04T16:31:12+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>npopov@redhat.com</email>
</author>
<published>2022-02-04T16:30:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b8fbffc8b11f152cd2dec44aaeb42d89afdf7892'/>
<id>b8fbffc8b11f152cd2dec44aaeb42d89afdf7892</id>
<content type='text'>
This code clearly intended to forward the error, but instead
returned the non-error result.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This code clearly intended to forward the error, but instead
returned the non-error result.
</pre>
</div>
</content>
</entry>
</feed>
