I just got crazy idea, since we really don't like CONSTRUCTOR that much
and we already know the lengths of Vectors, we can have a VECTOR_EXPR
which we could then use instead of CONSTRUCTORs.

This would also save some memory as then we don't need a real
VEC(constructor_elt) but more like what TREE_VEC is.

So we have:
struct tree_vector GTY(())
{
  struct tree_common common;
  tree ((length ("TYPE_VECTOR_SUBPARTS (TREE_TYPE ((tree)&%h))")))
elements[1];
};

This will be the structure for both VECTOR_CST and VECTOR_EXPR.

What do people think about this idea?

Thanks,
Andrew Pinski

Reply via email to