DU-chains Vs UD-chains

2008-04-15 Thread Fran Baena
Hi all, i'm currently studing alias analysis, and i have some questions, for instance, when are the du/ud-chains calculated? Before translating to SSA form? If i'm not wrong the def-use chain connects a definition of a variable to all the uses it may flow to, and the use-def chain connects a use

Mapping back to original variables after SSA optimizations

2008-04-10 Thread Fran Baena
Hi all, i have a doubt about unSSA: is it allways possible to map back the versioned variables to the original variable? If it could be possible, is there an algorithm that describe this translation back? I have read the paper "Efficiently computing static single assignment form and the control de

Re: SSA Vs unSSA

2008-04-09 Thread Fran Baena
> Depends on what SSA form you want. A rewriting form is problematic because > backends are allowed to modify the IL behind the back of the optimizers and > can emit instructions that are difficult/impossible to represent in SSA form > (parallel). I don't exactly know what rewriting SSA form mea

Re: SSA Vs unSSA

2008-04-09 Thread Fran Baena
> You'd want to avoid translating from tuples back to nested trees. Instead > when > expanding from SSA form (ok, let's make that "semi"-SSA form that just keeps > the UD chains but gets rid of PHI nodes (and maybe overlapping life ranges)) > the expander can do expression combining by follow

SSA Vs unSSA

2008-03-26 Thread Fran Baena
Hi, what are the advantages and inconvenients of get RTL from SSA rather than GIMPLE (previously translated from SSA)? It has no implication in the next optimizations, isn't it? Thanks Fran

Re: RTL definition

2008-03-11 Thread Fran Baena
Hi, > By the way, RTL is not really machine-independent. The data > structures are machine independent. But the contents are not. You > can not, even in principle, take the RTL generated for one processor > and compile it on another processor. I thought that RTL represented something close

Re: RTL definition

2008-03-10 Thread Fran Baena
2008/3/10, Jim Wilson <[EMAIL PROTECTED]>: > Fran Baena wrote: > > RTL represents a low-level language, machine-independent. But I didn't > > find any especification of such language represented. This is, I found > > no document where the language represented wer

Re: RTL definition

2008-03-10 Thread Fran Baena
Hi Ramana, > > I have read the documentation and i didn't found where it is > > described, maybe I searched in wrong place. > > > RTL language definition is in rtl.def and gives the different > operators and operands. info gccint on a standard linux distribution > should help you figure out de

RTL definition

2008-03-10 Thread Fran Baena
Hi all, RTL represents a low-level language, machine-independent. But I didn't find any especification of such language represented. This is, I found no document where the language represented were described or defined in a grammar way. So, I 'd thank you to show me where the RTL-language is defi

SSA alias representation

2008-02-27 Thread Fran Baena
> Symbols with their address taken are only renamed when they appear as > virtual operands. So, if you have: > > p_3 = (i_5 > 10) ? &a : &b > a = 4 > > notice that 'a' is never renamed in the LHS of the assignment. It's > renamed as a virtual operand: > > p_3 = (i_5 > 10) ? &a : &

Re: SSA alias representation

2008-02-26 Thread Fran Baena
> > When there are no symbols in the pointer's points-to set. > I am beginning to realize. But there is something it remains: 1) Once the ssa rename has been done, the alias analysis begins (points-to sets). Each version of a base pointer has associated its own points-to set? Like if () t_1 =

Re: SSA alias representation

2008-02-25 Thread Fran Baena
If a name tag is associated to a ssa name, ¿when does it make sense to version a name tag? (If it does) 2008/2/21, Diego Novillo <[EMAIL PROTECTED]>: > On 2/21/08 1:13 PM, Fran Baena wrote: > > 2008/2/21, Diego Novillo <[EMAIL PROTECTED]>: > >> On 2/19/08 2:27 PM,

Re: SSA alias representation

2008-02-21 Thread Fran Baena
2008/2/21, Diego Novillo <[EMAIL PROTECTED]>: > On 2/19/08 2:27 PM, Fran Baena wrote: > > Hi everybody, > > > > i am studing how gcc carries out Alias Representation and some questions > appear. > > > > For instance, given this code portion: > &

SSA alias representation

2008-02-19 Thread Fran Baena
Hi everybody, i am studing how gcc carries out Alias Representation and some questions appear. For instance, given this code portion: if ( ... ) p = &a; else if ( ... ) p = &b; else p = &c; a = 5; b = 3; d = *p4; My questions are: - both p like *p need a Name Memory T

Re: alias and pointers analysis

2007-11-14 Thread Fran Baena
2007/11/13, Diego Novillo <[EMAIL PROTECTED]>: > On Nov 13, 2007 1:38 PM, Fran Baena <[EMAIL PROTECTED]> wrote: > > >1. Convert the function into GIMPLE form. Implemented in gimplify.c > > and c-simplify.c. > >2. Find variable references in the code.

Re: alias and pointers analysis

2007-11-13 Thread Fran Baena
Hi again, i have been studing gcc docs to undestand SSA and steps to take to get SSA form. In one GCC online document: http://gcc.gnu.org/projects/tree-ssa/#ssa, the steps to translate to SSA form are listed. Here, i copy and paste the mentioned text: [] Conversion to SSA form is a three step

alias and pointers analysis

2007-10-25 Thread Fran Baena
Hi, once i have been reading lots of documents about SSA computing. I have a few questions, conceptual ones, that stop me understanding the whole goal of the method. Here i go: * Why alias analysis? I mean, the pointers could be versioned like the others vars. (I'm not saying it's not usefull, i

indirect memory op in SSA

2007-10-18 Thread Fran Baena
Hi! i am trying to implement the SSA form, inspirated in GCC way. I have found problems in processing indirect memory operations like arrays, structures and pointers. My questions are: are nodes STRUCT_FIELD_TAG, NAME_MEMORY_TAG, SYMBOL_MEMORY_TAG used for that purpose? and, where i can find docum