<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/test/Transforms/HotColdSplit/minsize.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>[llvm] Remove `br i1 undef` from some regression tests [NFC] (#116161)</title>
<updated>2024-11-15T14:19:50+00:00</updated>
<author>
<name>Lee Wei</name>
<email>lee10202013@gmail.com</email>
</author>
<published>2024-11-15T14:19:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8ee638fd175245eff88d77e1607e478db237dd41'/>
<id>8ee638fd175245eff88d77e1607e478db237dd41</id>
<content type='text'>
This PR removes tests with `br i1 undef` under
`llvm/tests/Transforms/HotColdSplit` and `llvm/tests/Transforms/I*`.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR removes tests with `br i1 undef` under
`llvm/tests/Transforms/HotColdSplit` and `llvm/tests/Transforms/I*`.</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC] Port all (but one) HotColdSplit tests to `-passes=` syntax</title>
<updated>2022-12-07T20:15:16+00:00</updated>
<author>
<name>Roman Lebedev</name>
<email>lebedev.ri@gmail.com</email>
</author>
<published>2022-12-07T19:42:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4d211ac84212cbf1ea8b98584df585df781c6557'/>
<id>4d211ac84212cbf1ea8b98584df585df781c6557</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "[PM/CC1] Add -f[no-]split-cold-code CC1 option to toggle splitting"</title>
<updated>2020-10-19T10:31:14+00:00</updated>
<author>
<name>Hans Wennborg</name>
<email>hans@chromium.org</email>
</author>
<published>2020-10-19T10:23:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0628bea5137047232f37c94b74bf26aa9b55f605'/>
<id>0628bea5137047232f37c94b74bf26aa9b55f605</id>
<content type='text'>
This broke Chromium's PGO build, it seems because hot-cold-splitting got turned
on unintentionally. See comment on the code review for repro etc.

&gt; This patch adds -f[no-]split-cold-code CC1 options to clang. This allows
&gt; the splitting pass to be toggled on/off. The current method of passing
&gt; `-mllvm -hot-cold-split=true` to clang isn't ideal as it may not compose
&gt; correctly (say, with `-O0` or `-Oz`).
&gt;
&gt; To implement the -fsplit-cold-code option, an attribute is applied to
&gt; functions to indicate that they may be considered for splitting. This
&gt; removes some complexity from the old/new PM pipeline builders, and
&gt; behaves as expected when LTO is enabled.
&gt;
&gt; Co-authored by: Saleem Abdulrasool &lt;compnerd@compnerd.org&gt;
&gt; Differential Revision: https://reviews.llvm.org/D57265
&gt; Reviewed By: Aditya Kumar, Vedant Kumar
&gt; Reviewers: Teresa Johnson, Aditya Kumar, Fedor Sergeev, Philip Pfaffe, Vedant Kumar

This reverts commit 273c299d5d649a0222fbde03c9a41e41913751b4.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This broke Chromium's PGO build, it seems because hot-cold-splitting got turned
on unintentionally. See comment on the code review for repro etc.

&gt; This patch adds -f[no-]split-cold-code CC1 options to clang. This allows
&gt; the splitting pass to be toggled on/off. The current method of passing
&gt; `-mllvm -hot-cold-split=true` to clang isn't ideal as it may not compose
&gt; correctly (say, with `-O0` or `-Oz`).
&gt;
&gt; To implement the -fsplit-cold-code option, an attribute is applied to
&gt; functions to indicate that they may be considered for splitting. This
&gt; removes some complexity from the old/new PM pipeline builders, and
&gt; behaves as expected when LTO is enabled.
&gt;
&gt; Co-authored by: Saleem Abdulrasool &lt;compnerd@compnerd.org&gt;
&gt; Differential Revision: https://reviews.llvm.org/D57265
&gt; Reviewed By: Aditya Kumar, Vedant Kumar
&gt; Reviewers: Teresa Johnson, Aditya Kumar, Fedor Sergeev, Philip Pfaffe, Vedant Kumar

This reverts commit 273c299d5d649a0222fbde03c9a41e41913751b4.
</pre>
</div>
</content>
</entry>
<entry>
<title>[PM/CC1] Add -f[no-]split-cold-code CC1 option to toggle splitting</title>
<updated>2020-10-15T23:13:33+00:00</updated>
<author>
<name>Vedant Kumar</name>
<email>vsk@apple.com</email>
</author>
<published>2020-10-13T21:35:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=273c299d5d649a0222fbde03c9a41e41913751b4'/>
<id>273c299d5d649a0222fbde03c9a41e41913751b4</id>
<content type='text'>
This patch adds -f[no-]split-cold-code CC1 options to clang. This allows
the splitting pass to be toggled on/off. The current method of passing
`-mllvm -hot-cold-split=true` to clang isn't ideal as it may not compose
correctly (say, with `-O0` or `-Oz`).

To implement the -fsplit-cold-code option, an attribute is applied to
functions to indicate that they may be considered for splitting. This
removes some complexity from the old/new PM pipeline builders, and
behaves as expected when LTO is enabled.

Co-authored by: Saleem Abdulrasool &lt;compnerd@compnerd.org&gt;
Differential Revision: https://reviews.llvm.org/D57265
Reviewed By: Aditya Kumar, Vedant Kumar
Reviewers: Teresa Johnson, Aditya Kumar, Fedor Sergeev, Philip Pfaffe, Vedant Kumar
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds -f[no-]split-cold-code CC1 options to clang. This allows
the splitting pass to be toggled on/off. The current method of passing
`-mllvm -hot-cold-split=true` to clang isn't ideal as it may not compose
correctly (say, with `-O0` or `-Oz`).

To implement the -fsplit-cold-code option, an attribute is applied to
functions to indicate that they may be considered for splitting. This
removes some complexity from the old/new PM pipeline builders, and
behaves as expected when LTO is enabled.

Co-authored by: Saleem Abdulrasool &lt;compnerd@compnerd.org&gt;
Differential Revision: https://reviews.llvm.org/D57265
Reviewed By: Aditya Kumar, Vedant Kumar
Reviewers: Teresa Johnson, Aditya Kumar, Fedor Sergeev, Philip Pfaffe, Vedant Kumar
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "Temporarily Revert "Add basic loop fusion pass.""</title>
<updated>2019-04-17T04:52:47+00:00</updated>
<author>
<name>Eric Christopher</name>
<email>echristo@gmail.com</email>
</author>
<published>2019-04-17T04:52:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=cee313d288a4faf0355d76fb6e0e927e211d08a5'/>
<id>cee313d288a4faf0355d76fb6e0e927e211d08a5</id>
<content type='text'>
The reversion apparently deleted the test/Transforms directory.

Will be re-reverting again.

llvm-svn: 358552
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The reversion apparently deleted the test/Transforms directory.

Will be re-reverting again.

llvm-svn: 358552
</pre>
</div>
</content>
</entry>
<entry>
<title>Temporarily Revert "Add basic loop fusion pass."</title>
<updated>2019-04-17T02:12:23+00:00</updated>
<author>
<name>Eric Christopher</name>
<email>echristo@gmail.com</email>
</author>
<published>2019-04-17T02:12:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a86343512845c9c1fdbac865fea88aa5fce7142a'/>
<id>a86343512845c9c1fdbac865fea88aa5fce7142a</id>
<content type='text'>
As it's causing some bot failures (and per request from kbarton).

This reverts commit r358543/ab70da07286e618016e78247e4a24fcb84077fda.

llvm-svn: 358546
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As it's causing some bot failures (and per request from kbarton).

This reverts commit r358543/ab70da07286e618016e78247e4a24fcb84077fda.

llvm-svn: 358546
</pre>
</div>
</content>
</entry>
<entry>
<title>[HotColdSplit] Mark inherently cold functions as such</title>
<updated>2019-01-19T02:38:47+00:00</updated>
<author>
<name>Vedant Kumar</name>
<email>vsk@apple.com</email>
</author>
<published>2019-01-19T02:38:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b755a2df5123a2b970733c43c9e65326b73d99c7'/>
<id>b755a2df5123a2b970733c43c9e65326b73d99c7</id>
<content type='text'>
If an inherently cold function is found, mark it as cold. For now this
means applying the `cold` and `minsize` attributes.

As a drive-by, revisit and clean up the criteria for considering a
function for splitting. Add tests.

llvm-svn: 351623
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If an inherently cold function is found, mark it as cold. For now this
means applying the `cold` and `minsize` attributes.

As a drive-by, revisit and clean up the criteria for considering a
function for splitting. Add tests.

llvm-svn: 351623
</pre>
</div>
</content>
</entry>
<entry>
<title>[HotColdSplit] Simplify tests by lowering their splitting thresholds</title>
<updated>2019-01-17T21:29:34+00:00</updated>
<author>
<name>Vedant Kumar</name>
<email>vsk@apple.com</email>
</author>
<published>2019-01-17T21:29:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=32a014d0483e821566e42d68e270f53456b9b1df'/>
<id>32a014d0483e821566e42d68e270f53456b9b1df</id>
<content type='text'>
This gets rid of the brittle/mysterious calls to @sink()/@sideeffect()
peppered throughout the test cases. They are no longer needed to force
splitting to occur.

llvm-svn: 351480
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This gets rid of the brittle/mysterious calls to @sink()/@sideeffect()
peppered throughout the test cases. They are no longer needed to force
splitting to occur.

llvm-svn: 351480
</pre>
</div>
</content>
</entry>
<entry>
<title>[HotColdSplitting] Use TTI to inform outlining threshold</title>
<updated>2018-11-04T23:11:57+00:00</updated>
<author>
<name>Vedant Kumar</name>
<email>vsk@apple.com</email>
</author>
<published>2018-11-04T23:11:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d2a895a9720e32e2f52e1ce10d2ba4769a034aa2'/>
<id>d2a895a9720e32e2f52e1ce10d2ba4769a034aa2</id>
<content type='text'>
Using TargetTransformInfo allows the splitting pass to factor in the
code size cost of instructions as it decides whether or not outlining is
profitable.

This did not regress the overall amount of outlining seen on the handful
of internal frameworks I tested.

Thanks to Jun Bum Lim for suggesting this!

Differential Revision: https://reviews.llvm.org/D53835

llvm-svn: 346108
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Using TargetTransformInfo allows the splitting pass to factor in the
code size cost of instructions as it decides whether or not outlining is
profitable.

This did not regress the overall amount of outlining seen on the handful
of internal frameworks I tested.

Thanks to Jun Bum Lim for suggesting this!

Differential Revision: https://reviews.llvm.org/D53835

llvm-svn: 346108
</pre>
</div>
</content>
</entry>
<entry>
<title>[HotColdSplitting] Allow outlining single-block cold regions</title>
<updated>2018-10-29T19:15:39+00:00</updated>
<author>
<name>Vedant Kumar</name>
<email>vsk@apple.com</email>
</author>
<published>2018-10-29T19:15:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=dd4be53b20a8e3ad43ed5b4e14f6c93d1a23ae34'/>
<id>dd4be53b20a8e3ad43ed5b4e14f6c93d1a23ae34</id>
<content type='text'>
It can be profitable to outline single-block cold regions because they
may be large.

Allow outlining single-block regions if they have over some threshold of
non-debug, non-terminator instructions. I chose 3 as the threshold after
experimenting with several internal frameworks.

In practice, reducing the threshold further did not give much
improvement, whereas increasing it resulted in substantial regressions.

Differential Revision: https://reviews.llvm.org/D53824

llvm-svn: 345524
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It can be profitable to outline single-block cold regions because they
may be large.

Allow outlining single-block regions if they have over some threshold of
non-debug, non-terminator instructions. I chose 3 as the threshold after
experimenting with several internal frameworks.

In practice, reducing the threshold further did not give much
improvement, whereas increasing it resulted in substantial regressions.

Differential Revision: https://reviews.llvm.org/D53824

llvm-svn: 345524
</pre>
</div>
</content>
</entry>
</feed>
