This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Question on aggregates and GIMPLE
On Thu, Jun 10, 2004 at 12:09:26AM -0400, Jason Merrill wrote:
> > Hmm. I don't suppose
> >
> > || (flag_non_call_exceptions && tree_could_trap_p (*from_p))
> >
> > is true in gimplify_modify_expr? If so, I'm not sure how to approach
> > this. Other languages require that MODIFY_EXPRs be atomic.
>
> I was looking at this earlier today, and thinking that we should probably
> disable this for aggregates, or at least for aggregate_value_p types.
> Do you remember the case which inspired this check?
Any Java test, iirc. The thing we wanted to be able to do is
process an entire block (and its data flow) naturally. Doing
so in this situation leads us to believe that the assignment
has occurred, and so the previous lhs value is dead.
This problem would be easier moderate with aggregates; we just
need to avoid using one of Brian's new V_MUST_DEF nodes.
r~