On Thu, May 3, 2012 at 10:31 AM, Richard Sandiford <rdsandif...@googlemail.com> wrote: > David Miller <da...@davemloft.net> writes: >> From: Richard Sandiford <rdsandif...@googlemail.com> >> Date: Wed, 02 May 2012 20:37:58 +0100 >> >>> I think the DSE assuption is fair though. If you reuse MEMs like >>> this, then they're no longer just serving the purpose described by >>> MEM_EXPR. >> >> The following seems to work, and matches what calls.c does when it >> passes a value by reference. Is this what you had in mind? > > Yeah, looks good to me.
I don't think that will work reliably (well, maybe now by luck, so better than nothing). You'd at least need to adjust the ESCAPED points-to set of the function, too (yes, DSE does very very conservative use analysis right now). Why not simply clear MEM_EXPR for the MEM? Richard. > Richard