------- Comment #7 from rguenth at gcc dot gnu dot org 2006-12-09 10:23 ------- I guess it may work to only change
void allocate (void **, size_t, int *) to void *allocate (void *, size_t, int *) and use it like descriptor.data = allocate (descriptor.data, size, pstat) the point is that aliasing needs a SSA_NAME def for the newly allocated memory to assign it a unique alias set. With the current interface we get only a clobber of the descriptor.data (a VDEF) from which we cannot do any alias set modification. I believe this interface change could work without violating any parts of the standard (as it really doesn't change semantics)? (confirming this, the middle-end is really pessimized by the current interface) -- rguenth at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2006-12-09 10:23:27 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30115