* Annotations in tree
@ 2005-07-26 20:21 drizzle drizzle
2005-07-26 20:31 ` Diego Novillo
0 siblings, 1 reply; 8+ messages in thread
From: drizzle drizzle @ 2005-07-26 20:21 UTC (permalink / raw)
To: gcc
Hi,
I am trying to find out how to insert annotations for certain array
references identified in tree-loop-linear.c so that when converting to
RTL they can be handled differently. I find that simply inserting a
flag in the tree node is not enough as optimizations later on can lead
to the node being removed. Can any tell me what else can I do ?
I will appreciate all help....
dz
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Annotations in tree
2005-07-26 20:21 Annotations in tree drizzle drizzle
@ 2005-07-26 20:31 ` Diego Novillo
2005-07-26 22:39 ` drizzle drizzle
0 siblings, 1 reply; 8+ messages in thread
From: Diego Novillo @ 2005-07-26 20:31 UTC (permalink / raw)
To: drizzle drizzle; +Cc: gcc
On Tue, Jul 26, 2005 at 04:21:51PM -0400, drizzle drizzle wrote:
> I am trying to find out how to insert annotations for certain array
> references identified in tree-loop-linear.c so that when converting to
>
In the ARRAY_REFs themselves? I would build a hash table on the
side. If it's on the DECLs, you could use var_ann() to add
annotations.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Annotations in tree
2005-07-26 20:31 ` Diego Novillo
@ 2005-07-26 22:39 ` drizzle drizzle
2005-07-26 23:10 ` Daniel Berlin
0 siblings, 1 reply; 8+ messages in thread
From: drizzle drizzle @ 2005-07-26 22:39 UTC (permalink / raw)
To: Diego Novillo; +Cc: gcc
I am not sure if I unerstand ...can you elaborate please ? So what I
need is if I identify say a reference a[i] inside a loop, I want to
identify the corresponding RTL. What I find now is that
these get transformed for example
D.1065_17 = a_matrix[i_24][k_30]; // I have identified this
sum_12 = D.1065_17 + sum_31;
gets coalesced back into
sum = a_matrix[i][k] + sum; before it is expaned into rtl..
How do I keep track that it is indeed the same array reference though
it has gone through some transformation. ( One another tranformation
is generating a pointer to it instead of using the array).
Sumesh
On 7/26/05, Diego Novillo <dnovillo@redhat.com> wrote:
> On Tue, Jul 26, 2005 at 04:21:51PM -0400, drizzle drizzle wrote:
>
> > I am trying to find out how to insert annotations for certain array
> > references identified in tree-loop-linear.c so that when converting to
> >
> In the ARRAY_REFs themselves? I would build a hash table on the
> side. If it's on the DECLs, you could use var_ann() to add
> annotations.
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Annotations in tree
2005-07-26 22:39 ` drizzle drizzle
@ 2005-07-26 23:10 ` Daniel Berlin
2005-07-26 23:43 ` drizzle drizzle
0 siblings, 1 reply; 8+ messages in thread
From: Daniel Berlin @ 2005-07-26 23:10 UTC (permalink / raw)
To: drizzle drizzle; +Cc: Diego Novillo, gcc
On Tue, 2005-07-26 at 18:39 -0400, drizzle drizzle wrote:
> I am not sure if I unerstand ...can you elaborate please ? So what I
> need is if I identify say a reference a[i] inside a loop, I want to
> identify the corresponding RTL.
What are you trying to do at the RTL level with array references?
They don't last that long.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Annotations in tree
2005-07-26 23:10 ` Daniel Berlin
@ 2005-07-26 23:43 ` drizzle drizzle
2005-07-26 23:54 ` Daniel Berlin
0 siblings, 1 reply; 8+ messages in thread
From: drizzle drizzle @ 2005-07-26 23:43 UTC (permalink / raw)
To: Daniel Berlin; +Cc: gcc
What doesnt exist very long - the references ?
At RTL level, I just want to insert a counter for each one of
these. One alternative I saw is inserting a dummy functiion call.
Would that work ? If so, for a given name, how do I create a
corresponding function expression for it ?
thanks for the answers
On 7/26/05, Daniel Berlin <dberlin@dberlin.org> wrote:
> On Tue, 2005-07-26 at 18:39 -0400, drizzle drizzle wrote:
> > I am not sure if I unerstand ...can you elaborate please ? So what I
> > need is if I identify say a reference a[i] inside a loop, I want to
> > identify the corresponding RTL.
>
> What are you trying to do at the RTL level with array references?
> They don't last that long.
>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Annotations in tree
2005-07-26 23:43 ` drizzle drizzle
@ 2005-07-26 23:54 ` Daniel Berlin
2005-07-27 0:08 ` drizzle drizzle
0 siblings, 1 reply; 8+ messages in thread
From: Daniel Berlin @ 2005-07-26 23:54 UTC (permalink / raw)
To: drizzle drizzle; +Cc: gcc
On Tue, 2005-07-26 at 19:42 -0400, drizzle drizzle wrote:
> What doesnt exist very long - the references ?
By RTL, they've been expanded to pointer accesses.
> At RTL level, I just want to insert a counter for each one of
> these.
Why do it at the rtl level.
Why not do it at the tree level?
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Annotations in tree
2005-07-26 23:54 ` Daniel Berlin
@ 2005-07-27 0:08 ` drizzle drizzle
2005-07-27 0:21 ` Daniel Berlin
0 siblings, 1 reply; 8+ messages in thread
From: drizzle drizzle @ 2005-07-27 0:08 UTC (permalink / raw)
To: Daniel Berlin; +Cc: gcc
tree level is fine too, it was just that the RTL level already had a
host of counters being inserted. One implementation question if I may
ask, so at the tree level how do I create a call to my function. I
know how to insert it into the tree but some how all my creations
attempts with build_function_call fail.
thanks once again ...
On 7/26/05, Daniel Berlin <dberlin@dberlin.org> wrote:
> On Tue, 2005-07-26 at 19:42 -0400, drizzle drizzle wrote:
> > What doesnt exist very long - the references ?
>
> By RTL, they've been expanded to pointer accesses.
>
> > At RTL level, I just want to insert a counter for each one of
> > these.
> Why do it at the rtl level.
> Why not do it at the tree level?
>
>
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Annotations in tree
2005-07-27 0:08 ` drizzle drizzle
@ 2005-07-27 0:21 ` Daniel Berlin
0 siblings, 0 replies; 8+ messages in thread
From: Daniel Berlin @ 2005-07-27 0:21 UTC (permalink / raw)
To: drizzle drizzle; +Cc: gcc
On Tue, 2005-07-26 at 20:08 -0400, drizzle drizzle wrote:
> tree level is fine too, it was just that the RTL level already had a
> host of counters being inserted. One implementation question if I may
> ask, so at the tree level how do I create a call to my function.
build_function_call_expr.
Look at what tree-profile.c does.
> I
> know how to insert it into the tree but some how all my creations
> attempts with build_function_call fail.
>
> thanks once again ...
>
> On 7/26/05, Daniel Berlin <dberlin@dberlin.org> wrote:
> > On Tue, 2005-07-26 at 19:42 -0400, drizzle drizzle wrote:
> > > What doesnt exist very long - the references ?
> >
> > By RTL, they've been expanded to pointer accesses.
> >
> > > At RTL level, I just want to insert a counter for each one of
> > > these.
> > Why do it at the rtl level.
> > Why not do it at the tree level?
> >
> >
> >
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2005-07-27 0:21 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-07-26 20:21 Annotations in tree drizzle drizzle
2005-07-26 20:31 ` Diego Novillo
2005-07-26 22:39 ` drizzle drizzle
2005-07-26 23:10 ` Daniel Berlin
2005-07-26 23:43 ` drizzle drizzle
2005-07-26 23:54 ` Daniel Berlin
2005-07-27 0:08 ` drizzle drizzle
2005-07-27 0:21 ` Daniel Berlin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).