[cfe-dev] WIP VLA implementation

Eli Friedman eli.friedman at gmail.com
Fri Feb 15 12:34:17 PST 2008


This isn't really a complete implementation of VLA codegen, but it's a
start.  This patch implements all of the basics for VLAs, including
sizeof and multidimensional VLAs.

There are a still some things that aren't really correct. One is that
I've taken a few shortcuts assuming that everything is an i32.
Another is that this doesn't handle typedefs and casts correctly,
because it isn't forcing the size to be emitted in the right place.
The patch could some of refactoring, and I've only tested it very
lightly.

On the bright side, it can handle declaring and indexing into a
44-dimensional vla while only emitting 86 multiplies, as opposed to
gcc's 946 :-)

Does the approach in this patch look reasonable?

-Eli
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: vlawip1.txt
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20080215/e9f268c7/attachment.txt>


More information about the cfe-dev mailing list