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: [ast-optimizer-branch] PATCH to simplify array base


On Sat, Jun 08, 2002 at 07:04:04AM +0100, Jason Merrill wrote:
> We haven't been simplifying array bases, but we should.  Given an
> expression like k.d[2][3] where k.d is of type int[3][4], this will now
> simplify to
> 
>   int (*t1)[3][4];
>   int t2;
>   t1 = &k.d;
>   t2 = (*t1)[2][3];

I think this is wrong.  The only reason not to decompose all array
arithmetic to pointer arithmetic immediately is to make it easier
for dependence analysis to do its job.  Given this is the case, your
change hamstrings dependence analysis, requiring that it search
backward for whatever t1 references.

I'm of the opinion that

	t1 = k.d.e.f[2][3].g[t0].h

ought to be valid in the variant of SIMPLE used in GCC.



r~


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