This is the mail archive of the gcc@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]

Re: representing noreturns and traps in the CFG


> On Fri, Jul 13, 2001 at 02:16:21PM +0200, Jan Hubicka wrote:
> > But overall, does the idea of adding these extra blocks sound sane?
> 
> Um, no.  I can't imagine how they would help.
I believe that it would help in similar way, as EXIT_BLOCK does.
As I mentioned, I am shooting for to represent optimizations over traps
and returns as redirection to the "trap block".

The jump.c now does following optimizations:
1) jumps to traps are replaced by traps
2) condjumps around traps are replaced by condtraps
3) condjumps to traps with dominated condition are replaced by condtraps

first two are edge forwarding, third one jump threading in cleanup_cfg.
I would be extremly happy if I succeed to not duplicate that logic.
Also after all, the trap is just kind of jump instruction.

What exactly are the trap codes used for?

Honza
> 
> 
> r~


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