Displaying 3 results from an estimated 3 matches for "foldtwoentryphinode".
2020 Jul 22
2
Unlikely branches can have expensive contents hoisted
...cost for something unlikely to be used.
I also injected a pass locally that adds, for branches whose condition is
llvm.expect, the branch weight metadata - but LLVM will still always fold
the branch away ensuring that the expensive call is always called.
The part of SimplifyCFG that does this is FoldTwoEntryPHINode from what I
can tell.
So is there anything I can do here without modifying LLVM? Have I missed
something?
Otherwise I guess I'd have to change FoldTwoEntryPHINode to not do this in
the presence of branch weights / expect?
Thanks for any help,
Cheers,
-Neil.
--
Neil Henning
Senior Software...
2020 Feb 05
2
Eliminate some two entry PHI nodes - SimplifyCFG
...e target supporting cmov? Though that's probably not
optimal.
On Wed, Feb 5, 2020, 7:47 AM Nicolai Hähnle <nhaehnle at gmail.com> wrote:
> Hi Ryan,
>
> On Mon, Feb 3, 2020 at 7:08 PM Ryan Taylor via llvm-dev
> <llvm-dev at lists.llvm.org> wrote:
> > SimplifyCFG FoldTwoEntryPhiNode looks to simplify all 2 entry phi nodes
> in a block, if it can't do them all then it won't do any and returns. There
> is a lot of code that is directly in this function geared toward this
> requirement. Is it possible currently to get this function (or pass) to
> simply fold &...
2020 Feb 03
2
Eliminate some two entry PHI nodes - SimplifyCFG
SimplifyCFG FoldTwoEntryPhiNode looks to simplify all 2 entry phi nodes in
a block, if it can't do them all then it won't do any and returns. There is
a lot of code that is directly in this function geared toward this
requirement. Is it possible currently to get this function (or pass) to
simply fold "some" of t...