<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp, 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>[Utils] Remove unused includes (NFC) (#114748)</title>
<updated>2024-11-05T03:51:25+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2024-11-05T03:51:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=013f4a46d1978e370f940df3cbd04fb0399a04fe'/>
<id>013f4a46d1978e370f940df3cbd04fb0399a04fe</id>
<content type='text'>
Identified with misc-include-cleaner.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Identified with misc-include-cleaner.</pre>
</div>
</content>
</entry>
<entry>
<title>[NewPM] Remove UnifyFunctionExitNodesLegacyPass (#72816)</title>
<updated>2023-11-20T09:02:33+00:00</updated>
<author>
<name>Aiden Grossman</name>
<email>agrossman154@yahoo.com</email>
</author>
<published>2023-11-20T09:02:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3cc523d935427baf62766e9e2cc7b65eca5925bb'/>
<id>3cc523d935427baf62766e9e2cc7b65eca5925bb</id>
<content type='text'>
UnifyFunctionExitNodesLegacyPass isn't used anywhere in upstream and
thus isn't tested at all. For these reasons, remove it.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
UnifyFunctionExitNodesLegacyPass isn't used anywhere in upstream and
thus isn't tested at all. For these reasons, remove it.</pre>
</div>
</content>
</entry>
<entry>
<title>[LowerSwitch] Don't let pass manager handle the dependency (#68662)</title>
<updated>2023-10-25T01:24:36+00:00</updated>
<author>
<name>Ruiling, Song</name>
<email>ruiling.song@amd.com</email>
</author>
<published>2023-10-25T01:24:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ac24238002076e36b2d33d18d1bf47a9de59fab4'/>
<id>ac24238002076e36b2d33d18d1bf47a9de59fab4</id>
<content type='text'>
Some passes has limitation that only support simple terminators:
branch/unreachable/return. Right now, they ask the pass manager to add
LowerSwitch pass to eliminate `switch`. Let's manage such kind of pass
dependency by ourselves. Also add the assertion in the related passes.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some passes has limitation that only support simple terminators:
branch/unreachable/return. Right now, they ask the pass manager to add
LowerSwitch pass to eliminate `switch`. Let's manage such kind of pass
dependency by ourselves. Also add the assertion in the related passes.</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC] Rename Instruction::insertAt() to Instruction::insertInto(), to be consistent with BasicBlock::insertInto()</title>
<updated>2022-12-15T20:27:45+00:00</updated>
<author>
<name>Vasileios Porpodas</name>
<email>vporpodas@google.com</email>
</author>
<published>2022-12-15T01:42:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=32b38d248fd3c75abc5c86ab6677b6cb08a703cc'/>
<id>32b38d248fd3c75abc5c86ab6677b6cb08a703cc</id>
<content type='text'>
Differential Revision: https://reviews.llvm.org/D140085
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Differential Revision: https://reviews.llvm.org/D140085
</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC] Cleanup: Replaces BB-&gt;getInstList().insert() with I-&gt;insertAt().</title>
<updated>2022-12-12T21:33:05+00:00</updated>
<author>
<name>Vasileios Porpodas</name>
<email>vporpodas@google.com</email>
</author>
<published>2022-11-28T22:43:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=06911ba6ea1e552d3bcaed2728c92a9aa6cbf4d2'/>
<id>06911ba6ea1e552d3bcaed2728c92a9aa6cbf4d2</id>
<content type='text'>
This is part of a series of cleanup patches towards making BasicBlock::getInstList() private.

Differential Revision: https://reviews.llvm.org/D138877
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is part of a series of cleanup patches towards making BasicBlock::getInstList() private.

Differential Revision: https://reviews.llvm.org/D138877
</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC] Replaced BB-&gt;getInstList().{erase(),pop_front(),pop_back()} with eraseFromParent().</title>
<updated>2022-11-24T06:47:46+00:00</updated>
<author>
<name>Vasileios Porpodas</name>
<email>vporpodas@google.com</email>
</author>
<published>2022-11-23T22:53:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=af4e856fa71c6b5086aeda79bfcd954e98cef591'/>
<id>af4e856fa71c6b5086aeda79bfcd954e98cef591</id>
<content type='text'>
Differential Revision: https://reviews.llvm.org/D138617
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Differential Revision: https://reviews.llvm.org/D138617
</pre>
</div>
</content>
</entry>
<entry>
<title>[NPM] Port -mergereturn to NPM</title>
<updated>2020-10-20T17:33:58+00:00</updated>
<author>
<name>Ta-Wei Tu</name>
<email>tu.da.wei@gmail.com</email>
</author>
<published>2020-10-20T17:32:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=59286b36dfb5da3a73401f66d1fa8d65c7817f94'/>
<id>59286b36dfb5da3a73401f66d1fa8d65c7817f94</id>
<content type='text'>
Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D89781
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D89781
</pre>
</div>
</content>
</entry>
<entry>
<title>[UnifyFunctionExitNodes] Fix Modified status for unreachable blocks</title>
<updated>2020-09-09T11:36:03+00:00</updated>
<author>
<name>David Stenberg</name>
<email>david.stenberg@ericsson.com</email>
</author>
<published>2020-09-09T08:59:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=48fc781438767bd8337facf2e232c695b0426fb4'/>
<id>48fc781438767bd8337facf2e232c695b0426fb4</id>
<content type='text'>
If a function had at most one return block, the pass would return false
regardless if an unified unreachable block was created.

This patch fixes that by refactoring runOnFunction into two separate
helper functions for handling the unreachable blocks respectively the
return blocks, as suggested by @bjope in a review comment.

This was caught using the check introduced by D80916.

Reviewed By: serge-sans-paille

Differential Revision: https://reviews.llvm.org/D85818
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If a function had at most one return block, the pass would return false
regardless if an unified unreachable block was created.

This patch fixes that by refactoring runOnFunction into two separate
helper functions for handling the unreachable blocks respectively the
return blocks, as suggested by @bjope in a review comment.

This was caught using the check introduced by D80916.

Reviewed By: serge-sans-paille

Differential Revision: https://reviews.llvm.org/D85818
</pre>
</div>
</content>
</entry>
<entry>
<title>[UnifyFunctionExitNodes] Remove unused getters, NFC</title>
<updated>2020-09-08T18:42:28+00:00</updated>
<author>
<name>David Stenberg</name>
<email>david.stenberg@ericsson.com</email>
</author>
<published>2020-09-08T16:54:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=17dce2fe43c9d3335d64936ece576b0e36d8fe31'/>
<id>17dce2fe43c9d3335d64936ece576b0e36d8fe31</id>
<content type='text'>
The get{Return,Unwind,Unreachable}Block functions in
UnifyFunctionExitNodes have not been used for many years,
so just remove them.

Reviewed By: bjope

Differential Revision: https://reviews.llvm.org/D87078
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The get{Return,Unwind,Unreachable}Block functions in
UnifyFunctionExitNodes have not been used for many years,
so just remove them.

Reviewed By: bjope

Differential Revision: https://reviews.llvm.org/D87078
</pre>
</div>
</content>
</entry>
<entry>
<title>Sink all InitializePasses.h includes</title>
<updated>2019-11-14T00:34:37+00:00</updated>
<author>
<name>Reid Kleckner</name>
<email>rnk@google.com</email>
</author>
<published>2019-11-13T21:15:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=05da2fe52162c80dfa18aedf70cf73cb11201811'/>
<id>05da2fe52162c80dfa18aedf70cf73cb11201811</id>
<content type='text'>
This file lists every pass in LLVM, and is included by Pass.h, which is
very popular. Every time we add, remove, or rename a pass in LLVM, it
caused lots of recompilation.

I found this fact by looking at this table, which is sorted by the
number of times a file was changed over the last 100,000 git commits
multiplied by the number of object files that depend on it in the
current checkout:
  recompiles    touches affected_files  header
  342380        95      3604    llvm/include/llvm/ADT/STLExtras.h
  314730        234     1345    llvm/include/llvm/InitializePasses.h
  307036        118     2602    llvm/include/llvm/ADT/APInt.h
  213049        59      3611    llvm/include/llvm/Support/MathExtras.h
  170422        47      3626    llvm/include/llvm/Support/Compiler.h
  162225        45      3605    llvm/include/llvm/ADT/Optional.h
  158319        63      2513    llvm/include/llvm/ADT/Triple.h
  140322        39      3598    llvm/include/llvm/ADT/StringRef.h
  137647        59      2333    llvm/include/llvm/Support/Error.h
  131619        73      1803    llvm/include/llvm/Support/FileSystem.h

Before this change, touching InitializePasses.h would cause 1345 files
to recompile. After this change, touching it only causes 550 compiles in
an incremental rebuild.

Reviewers: bkramer, asbirlea, bollu, jdoerfert

Differential Revision: https://reviews.llvm.org/D70211
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This file lists every pass in LLVM, and is included by Pass.h, which is
very popular. Every time we add, remove, or rename a pass in LLVM, it
caused lots of recompilation.

I found this fact by looking at this table, which is sorted by the
number of times a file was changed over the last 100,000 git commits
multiplied by the number of object files that depend on it in the
current checkout:
  recompiles    touches affected_files  header
  342380        95      3604    llvm/include/llvm/ADT/STLExtras.h
  314730        234     1345    llvm/include/llvm/InitializePasses.h
  307036        118     2602    llvm/include/llvm/ADT/APInt.h
  213049        59      3611    llvm/include/llvm/Support/MathExtras.h
  170422        47      3626    llvm/include/llvm/Support/Compiler.h
  162225        45      3605    llvm/include/llvm/ADT/Optional.h
  158319        63      2513    llvm/include/llvm/ADT/Triple.h
  140322        39      3598    llvm/include/llvm/ADT/StringRef.h
  137647        59      2333    llvm/include/llvm/Support/Error.h
  131619        73      1803    llvm/include/llvm/Support/FileSystem.h

Before this change, touching InitializePasses.h would cause 1345 files
to recompile. After this change, touching it only causes 550 compiles in
an incremental rebuild.

Reviewers: bkramer, asbirlea, bollu, jdoerfert

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