This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Perhaps fundamental SSA problem with variable-size types
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: dnovillo at redhat dot com
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 7 Jun 04 07:55:48 EDT
- Subject: Re: Perhaps fundamental SSA problem with variable-size types
Are those computations used to reserve heap or stack space?
They might have been, but not necessarily.
If so, they will not be dead.
They're not dead anyway.
We already handle something similar with C VLAs.
I'm trying those cases. When I try an array with a variable-size
element, it doesn't blow up, but does lose the fact that it's a nested
array reference, the loop optimizers won't work on it.
However, even the most trivial case of a VLA in a struct ICE's. For example:
int
sub1 (int i, char *pi)
{
typedef int foo[i];
struct bar {foo f1; int f2;} *p = (struct bar *) pi;
return p->f2;
}
So I'd say we *don't* handle it in C.