[llvm-commits] [llvm] r111224 - /llvm/trunk/lib/Transforms/Scalar/CodeGenPrepare.cpp

Dan Gohman gohman at apple.com
Tue Aug 17 09:00:02 PDT 2010


On Aug 16, 2010, at 6:34 PM, Evan Cheng wrote:

> Author: evancheng
> Date: Mon Aug 16 20:34:49 2010
> New Revision: 111224
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=111224&view=rev
> Log:
> Add an option to disable codegen prepare critical edge splitting. In theory, PHI elimination is already doing all (most?) of the splitting needed. But machine-licm and machine-sink seem to miss some important optimizations when splitting is disabled.

MachineLICM, at least, has code to split critical edges on demand. Is
it missing cases?

Also, CGP's SplitEdgeNicely has some logic for "nicely" reusing existing
blocks to avoid creating new blocks, which PHI elimination's splitting
doesn't have.

Dan





More information about the llvm-commits mailing list