<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/FuzzMutate/FuzzerCLI.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>[llvm] Use StringRef::operator== instead of StringRef::equals (NFC) (#91441)</title>
<updated>2024-05-08T17:33:53+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2024-05-08T17:33:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=bb6df0804ba0a0b0581aec4156138f5144dbcee2'/>
<id>bb6df0804ba0a0b0581aec4156138f5144dbcee2</id>
<content type='text'>
I'm planning to remove StringRef::equals in favor of
StringRef::operator==.

- StringRef::operator==/!= outnumber StringRef::equals by a factor of
  70 under llvm/ in terms of their usage.

- The elimination of StringRef::equals brings StringRef closer to
  std::string_view, which has operator== but not equals.

- S == "foo" is more readable than S.equals("foo"), especially for
  !Long.Expression.equals("str") vs Long.Expression != "str".</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I'm planning to remove StringRef::equals in favor of
StringRef::operator==.

- StringRef::operator==/!= outnumber StringRef::equals by a factor of
  70 under llvm/ in terms of their usage.

- The elimination of StringRef::equals brings StringRef closer to
  std::string_view, which has operator== but not equals.

- S == "foo" is more readable than S.equals("foo"), especially for
  !Long.Expression.equals("str") vs Long.Expression != "str".</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm-opt-fuzzer] Add more passes options (#76474)</title>
<updated>2023-12-28T15:28:10+00:00</updated>
<author>
<name>DavidKorczynski</name>
<email>david@adalogics.com</email>
</author>
<published>2023-12-28T15:28:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3d7880b64ca7746f7f5de5acc73afa23cedf94d2'/>
<id>3d7880b64ca7746f7f5de5acc73afa23cedf94d2</id>
<content type='text'>
The goal is to enable analysis of these passes by way of OSS-Fuzz, where
they currently lack code coverage

(https://storage.googleapis.com/oss-fuzz-coverage/llvm/reports/20231225/linux/src/llvm-project/llvm/lib/Transforms/Scalar/report.html)

---------

Signed-off-by: David Korczynski &lt;david@adalogics.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The goal is to enable analysis of these passes by way of OSS-Fuzz, where
they currently lack code coverage

(https://storage.googleapis.com/oss-fuzz-coverage/llvm/reports/20231225/linux/src/llvm-project/llvm/lib/Transforms/Scalar/report.html)

---------

Signed-off-by: David Korczynski &lt;david@adalogics.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Use StringRef::{starts,ends}_with (NFC) (#74956)</title>
<updated>2023-12-12T05:01:36+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2023-12-12T05:01:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=586ecdf205aa8b3d162da6f955170a6736656615'/>
<id>586ecdf205aa8b3d162da6f955170a6736656615</id>
<content type='text'>
This patch replaces uses of StringRef::{starts,ends}with with
StringRef::{starts,ends}_with for consistency with
std::{string,string_view}::{starts,ends}_with in C++20.

I'm planning to deprecate and eventually remove
StringRef::{starts,ends}with.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch replaces uses of StringRef::{starts,ends}with with
StringRef::{starts,ends}_with for consistency with
std::{string,string_view}::{starts,ends}_with in C++20.

I'm planning to deprecate and eventually remove
StringRef::{starts,ends}with.</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC][TargetParser] Remove llvm/ADT/Triple.h</title>
<updated>2023-02-07T12:39:46+00:00</updated>
<author>
<name>Archibald Elliott</name>
<email>archibald.elliott@arm.com</email>
</author>
<published>2023-02-07T12:21:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=62c7f035b4392c1933550eead6ddab35122720bc'/>
<id>62c7f035b4392c1933550eead6ddab35122720bc</id>
<content type='text'>
I also ran `git clang-format` to get the headers in the right order for
the new location, which has changed the order of other headers in two
files.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I also ran `git clang-format` to get the headers in the right order for
the new location, which has changed the order of other headers in two
files.
</pre>
</div>
</content>
</entry>
<entry>
<title>[FuzzMutate] Move LLVM module (de)serialization from FuzzerCLI -&gt; IRMutator. NFC</title>
<updated>2022-05-07T10:09:49+00:00</updated>
<author>
<name>Sam McCall</name>
<email>sam.mccall@gmail.com</email>
</author>
<published>2022-05-06T08:15:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0a83ff83af3d8db5512d61e043c246d854502e9e'/>
<id>0a83ff83af3d8db5512d61e043c246d854502e9e</id>
<content type='text'>
These are not directly related to the CLI, and are mostly (always?) used when
mutating the modules as part of fuzzing.

Motivation: split FuzzerCLI into its own library that does not depend on IR.
Subprojects that don't use IR should be be fuzzed without the dependency.

Differential Revision: https://reviews.llvm.org/D125080
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These are not directly related to the CLI, and are mostly (always?) used when
mutating the modules as part of fuzzing.

Motivation: split FuzzerCLI into its own library that does not depend on IR.
Subprojects that don't use IR should be be fuzzed without the dependency.

Differential Revision: https://reviews.llvm.org/D125080
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup includes: DebugInfo &amp; CodeGen</title>
<updated>2022-03-12T16:26:40+00:00</updated>
<author>
<name>serge-sans-paille</name>
<email>sguelton@redhat.com</email>
</author>
<published>2022-03-09T21:29:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ed98c1b37661b0795a5e34517941485f0f0688d1'/>
<id>ed98c1b37661b0795a5e34517941485f0f0688d1</id>
<content type='text'>
Discourse thread: https://discourse.llvm.org/t/include-what-you-use-include-cleanup
Differential Revision: https://reviews.llvm.org/D121332
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Discourse thread: https://discourse.llvm.org/t/include-what-you-use-include-cleanup
Differential Revision: https://reviews.llvm.org/D121332
</pre>
</div>
</content>
</entry>
<entry>
<title>[NewPM][FuzzMutate] Fix renaming 'unswitch' to 'simple-loop-unswitch'</title>
<updated>2021-07-09T10:24:12+00:00</updated>
<author>
<name>Bjorn Pettersson</name>
<email>bjorn.a.pettersson@ericsson.com</email>
</author>
<published>2021-07-09T10:23:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3485e9bfbd95a4ef16a0a3713f038b13b9e1bc59'/>
<id>3485e9bfbd95a4ef16a0a3713f038b13b9e1bc59</id>
<content type='text'>
This is a follow up to D105628 (commit 1db2551cc1a356a67c096). I had
missed to replace 'unswitch' by 'simple-loop-unswitch' in one place.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a follow up to D105628 (commit 1db2551cc1a356a67c096). I had
missed to replace 'unswitch' by 'simple-loop-unswitch' in one place.
</pre>
</div>
</content>
</entry>
<entry>
<title>[NewPM] Consistently use 'simplifycfg' rather than 'simplify-cfg'</title>
<updated>2021-07-09T07:47:03+00:00</updated>
<author>
<name>Bjorn Pettersson</name>
<email>bjorn.a.pettersson@ericsson.com</email>
</author>
<published>2021-07-08T12:24:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=472462c4723978db5a09c0058ddec025e6a6a94b'/>
<id>472462c4723978db5a09c0058ddec025e6a6a94b</id>
<content type='text'>
There was an alias between 'simplifycfg' and 'simplify-cfg' in the
PassRegistry. That was the original reason for this patch, which
effectively removes the alias.

This patch also replaces all occurrances of 'simplify-cfg'
by 'simplifycfg'. Reason for choosing that form for the name is
that it matches the DEBUG_TYPE for the pass, and the legacy PM name
and also how it is spelled out in other passes such as
'loop-simplifycfg', and in other options such as
'simplifycfg-merge-cond-stores'.

I for some reason the name should be changed to 'simplify-cfg' in
the future, then I think such a renaming should be more widely done
and not only impacting the PassRegistry.

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D105627
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There was an alias between 'simplifycfg' and 'simplify-cfg' in the
PassRegistry. That was the original reason for this patch, which
effectively removes the alias.

This patch also replaces all occurrances of 'simplify-cfg'
by 'simplifycfg'. Reason for choosing that form for the name is
that it matches the DEBUG_TYPE for the pass, and the legacy PM name
and also how it is spelled out in other passes such as
'loop-simplifycfg', and in other options such as
'simplifycfg-merge-cond-stores'.

I for some reason the name should be changed to 'simplify-cfg' in
the future, then I think such a renaming should be more widely done
and not only impacting the PassRegistry.

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D105627
</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC] Reordering parameters in getFile and getFileOrSTDIN</title>
<updated>2021-03-25T13:47:49+00:00</updated>
<author>
<name>Abhina Sreeskantharajan</name>
<email>Abhina.Sreeskantharajan@ibm.com</email>
</author>
<published>2021-03-25T13:47:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c83cd8feef7eb8319131d968bb8c94fdc8dbb6a6'/>
<id>c83cd8feef7eb8319131d968bb8c94fdc8dbb6a6</id>
<content type='text'>
In future patches I will be setting the IsText parameter frequently so I will refactor the args to be in the following order. I have removed the FileSize parameter because it is never used.

```
  static ErrorOr&lt;std::unique_ptr&lt;MemoryBuffer&gt;&gt;
  getFile(const Twine &amp;Filename, bool IsText = false,
          bool RequiresNullTerminator = true, bool IsVolatile = false);

  static ErrorOr&lt;std::unique_ptr&lt;MemoryBuffer&gt;&gt;
  getFileOrSTDIN(const Twine &amp;Filename, bool IsText = false,
                 bool RequiresNullTerminator = true);

 static ErrorOr&lt;std::unique_ptr&lt;MB&gt;&gt;
 getFileAux(const Twine &amp;Filename, uint64_t MapSize, uint64_t Offset,
            bool IsText, bool RequiresNullTerminator, bool IsVolatile);

  static ErrorOr&lt;std::unique_ptr&lt;WritableMemoryBuffer&gt;&gt;
  getFile(const Twine &amp;Filename, bool IsVolatile = false);
```

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D99182
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In future patches I will be setting the IsText parameter frequently so I will refactor the args to be in the following order. I have removed the FileSize parameter because it is never used.

```
  static ErrorOr&lt;std::unique_ptr&lt;MemoryBuffer&gt;&gt;
  getFile(const Twine &amp;Filename, bool IsText = false,
          bool RequiresNullTerminator = true, bool IsVolatile = false);

  static ErrorOr&lt;std::unique_ptr&lt;MemoryBuffer&gt;&gt;
  getFileOrSTDIN(const Twine &amp;Filename, bool IsText = false,
                 bool RequiresNullTerminator = true);

 static ErrorOr&lt;std::unique_ptr&lt;MB&gt;&gt;
 getFileAux(const Twine &amp;Filename, uint64_t MapSize, uint64_t Offset,
            bool IsText, bool RequiresNullTerminator, bool IsVolatile);

  static ErrorOr&lt;std::unique_ptr&lt;WritableMemoryBuffer&gt;&gt;
  getFile(const Twine &amp;Filename, bool IsVolatile = false);
```

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D99182
</pre>
</div>
</content>
</entry>
<entry>
<title>[NewPM][LSR] Rename strength-reduce -&gt; loop-reduce</title>
<updated>2020-07-02T18:15:29+00:00</updated>
<author>
<name>Arthur Eubanks</name>
<email>aeubanks@google.com</email>
</author>
<published>2020-07-02T18:15:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3d12e79094d2d3cb3d7e16dc16a456e1ec25ac1b'/>
<id>3d12e79094d2d3cb3d7e16dc16a456e1ec25ac1b</id>
<content type='text'>
The legacy pass was called "loop-reduce".

This lowers the number of check-llvm failures under NPM by 83.

Reviewed By: ychen

Differential Revision: https://reviews.llvm.org/D82925
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The legacy pass was called "loop-reduce".

This lowers the number of check-llvm failures under NPM by 83.

Reviewed By: ychen

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