This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] Removal of gotos from cfg based ir


On Fri, Nov 14, 2003 at 11:16:45AM -0500, Andrew MacLeod wrote:
> Normally, it would only be a CALL_EXPR inside the abnorm wouldn't it? 

No.  Functions often return values.

> If thats the case, and we'd have to wrap every MODIFY like this, couldnt
> we come up with a way of treating an entire block as a list of possible
> trapping stmts, and do something different to handle that kind of beast?
> They are all going to the same location aren't they? 

If they really all do trap, then they will all be in different 
basic blocks, one to a block.  Of necessity.  If you try to do
differently, you'll screw up the data flow.

> why not just create one in RTL land when we need it using the
> same datastructures?  I dont think at -O0 I want a CFG in either IL,

We *always* need a CFG in rtl.  We need it for register allocation.

> and it seems like a restriction to force entry into RTL to have a CFG
> already created.  I dont think the front end and the back end ought to
> be that tightly coupled...

Ah hah, that's a point of disconnect.  The front end should only
call tree_rest_of_compilation, and then *everything* happens there
behind the scenes.  This is, shockingly, a vast improvement over
the situation on mainline.



r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]