1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00
llvm-mirror/lib/Transforms
Juneyoung Lee 1112f9ad6f [JumpThreading] Allow duplicating a basic block into preds when its branch condition is freeze(phi)
This is the last JumpThreading patch for getting the performance numbers shown at
https://reviews.llvm.org/D84940#2184653 .

This patch makes ProcessBlock call ProcessBranchOnPHI when the branch condition
is freeze(phi) as well (originally it calls the function when the condition is
phi only).

Since what ProcessBranchOnPHI does is to duplicate the basic block into
predecessors if profitable, it is still valid when the condition is freeze(phi)
too.

```
    p = phi [a, pred1] [b, pred2]
    p.fr = freeze p
    br p.fr, ...
=>
  pred1:
    p.fr = freeze a
    br p.fr, ...
  pred2:
    p.fr2 = freeze b
    br p.fr2, ...
```

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D85029
2020-08-06 09:51:17 +09:00
..
AggressiveInstCombine AggressiveInstCombine.h - remove unused includes. NFC. 2020-07-23 16:20:13 +01:00
CFGuard [NFCI][IR] Introduce CallBase::Create() wrapper 2020-07-07 01:16:36 +03:00
Coroutines [Coroutines] Refactor sinkLifetimeStartMarkers 2020-07-09 18:23:28 +08:00
Hello
InstCombine [InstCombine] fold icmp with 'mul nsw/nuw' and constant operands 2020-08-05 17:29:32 -04:00
Instrumentation [msan] Remove readnone and friends from call sites. 2020-08-05 10:34:45 -07:00
IPO [Attributor][NFC] Clang format 2020-08-04 09:04:12 +09:00
ObjCARC [NFC] Remove unused GetUnderlyingObject paramenter 2020-07-31 02:10:03 -07:00
Scalar [JumpThreading] Allow duplicating a basic block into preds when its branch condition is freeze(phi) 2020-08-06 09:51:17 +09:00
Utils Fix layering violation Transforms/Utils -> Scalar 2020-08-03 11:53:23 -07:00
Vectorize Revert "[LoopVectorizer] Inloop vector reductions" 2020-08-05 10:24:15 -07:00
CMakeLists.txt Add Windows Control Flow Guard checks (/guard:cf). 2019-10-28 15:19:39 +00:00
LLVMBuild.txt Add Windows Control Flow Guard checks (/guard:cf). 2019-10-28 15:19:39 +00:00