gomp-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gomp-discuss] Plan ... coments wanted !


From: Diego Novillo
Subject: Re: [Gomp-discuss] Plan ... coments wanted !
Date: Thu, 30 Jan 2003 09:34:08 -0500
User-agent: Mutt/1.4i

On Thu, 30 Jan 2003, Lars Segerlund wrote:

>  They handle the OpenMP stuff to libcalls after some optimizations ( 
> how do you spell this ? ), thus in the GIMPLE->RTL phase. However some 
> work has to be done before this !
> 
>  Also they don't generate subroutines which are executed in parallell, 
> they generate a 'reentrant code section' with shared locals available to 
> all threads, and a copy in/out scheme for private ( real local variables 
> , for thae thread ).
> 
Yes, that's correct.  Those are all code generation tricks that
are to be expected.  All these should be done *after* we are done
analysing and transforming the input program.  That's done in the
GIMPLE->RTL phase, and there might even be some work to do in the
backend of the compiler (RTL->asm phase).

>  I have a suspicion that we might be able to target GENERIC and 
> generate  annotated GIMPLE, how does this sound ? ( This is one part 
> which I need to read up on, sorry my understanding of some issues are 
> lacking ).
> 
You don't annotate the trees if at all possible.  Create new tree
codes that have the exact semantics you want.  What I mean by
this:  Suppose you want to mark a parallel loop.  You don't just
annotate a LOOP_EXPR.  You create a new tree node called
FORALL_EXPR (or whatever suitable name).

That is a lot cleaner and easier to handle than arbitrary
annotations.  Annotations should be reserved for attributes and
secondary data that you want to associate to a tree.


Diego.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]