[CodeGen] Do the Simple Early Return in block-placement pass to optimize the blocks
authorKang Zhang <shkzhang@cn.ibm.com>
Thu, 15 Aug 2019 13:05:16 +0000 (13:05 +0000)
committerKang Zhang <shkzhang@cn.ibm.com>
Thu, 15 Aug 2019 13:05:16 +0000 (13:05 +0000)
commit2a903c0b679bae1919f9fc01f78e4bc6cff2add0
tree48d7b250e77b103e5a943c9a607640245054b572
parent3a99101812de51ac452bd078eab2474eac5d43ce
[CodeGen] Do the Simple Early Return in block-placement pass to optimize the blocks

Summary:

This patch has trigger a bug of r368339, and the r368339 has been reverted, So upstream this patch again.

In `block-placement` pass, it will create some patterns for unconditional we can do the simple early retrun.
But the `early-ret` pass is before `block-placement`, we don't want to run it again.
This patch is to do the simple early return to optimize the blocks at the last of `block-placement`.

Reviewed By: efriedma

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

llvm-svn: 368997
llvm/lib/CodeGen/MachineBlockPlacement.cpp
llvm/test/CodeGen/PowerPC/block-placement.mir