------- 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