Commit Graph

7 Commits

Author SHA1 Message Date
Juneyoung Lee 998c0efee0 [JumpThreading] Update test freeze.ll; NFC 2020-08-04 20:27:54 +09:00
Juneyoung Lee 6f97103b56 [JumpThreading] Don't limit the type of an operand
Compared to the optimized code with branch conditions never frozen,
limiting the type of freeze's operand causes generation of suboptimal code in
some cases.
I would like to suggest removing the constraint, as this patch does.
If the number of freeze instructions becomes significant, this can be revisited.

Differential Revision: https://reviews.llvm.org/D84949
2020-08-04 16:21:58 +09:00
Juneyoung Lee 111a02decd [JumpThreading] Fold br(freeze(undef))
This patch makes JumpThreading fold br(freeze(undef)) if the freeze instruction
is only used by the branch.

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D84818
2020-07-30 09:38:50 +09:00
Juneyoung Lee 4c9af6d0e0 [JumpThreading] Add a basic support for freeze instruction
This patch adds a basic support for freeze instruction to JumpThreading
by making ComputeValueKnownInPredecessorsImpl look into its operand.

Reviewed By: efriedma, nikic

Differential Revision: https://reviews.llvm.org/D84598
2020-07-29 03:12:14 +09:00
Juneyoung Lee 4887495a3e [JumpThreading] Add tests that have a cast of freeze and vice versa 2020-07-29 02:16:44 +09:00
Juneyoung Lee 6701c0bf73 [JumpThreading] Add a test case that has a phi with undef; NFC 2020-07-27 19:08:45 +09:00
Juneyoung Lee 920e267974 [JumpThreading] Add a test for D84598; NFC 2020-07-26 22:00:01 +09:00