Question on gimplify.c:create_tmp_var
Richard Kenner
kenner@vlsi1.ultra.nyu.edu
Mon Jun 7 00:51:00 GMT 2004
I didn't check what they did with looking inside the chain, only that
they did look inside the chains.
But of course that's the question.
I looked again at the case where I ran into the VIEW_CONVERT_EXPR and it
wasn't even one of those cases, but instead an array case where one side was
constrained and the other wasn't.
Note that even though the route has "lhs" in its name, the case in question
is on the RHS (it's compiling line 358 of the Ada file a-chahan.adb).
I just don't see how it's possible to *not* keep VIEW_CONVERT_EXPR in the
reference chain. If you don't, they have no choice but to make copies and
these are variable-sized arrays. Even if we can somehow eliminate all the
cases where the compiler puts it there, it's also there from an explicit
Unchecked_Conversion instantiated by the user and we can't have a copy of
data their either (for one thing, the types may be "limited" and the
languages doesn't allow copying them).
More information about the Gcc
mailing list