This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
RE: Unable to bootstrap gcc snapshot of 20001211 on Dynix/ptx
- To: jbuck at racerx dot synopsys dot com, janis at us dot ibm dot com
- Subject: RE: Unable to bootstrap gcc snapshot of 20001211 on Dynix/ptx
- From: biswapesh dot chattopadhyay at bt dot com
- Date: Tue, 19 Dec 2000 09:32:25 -0000
- Cc: jsm28 at cam dot ac dot uk, robertlipe at usa dot net, gcc at gcc dot gnu dot org
> Ouch. I was going to suggest just getting rid of the bcopy calls
> and rely on libiberty to provide memcpy and memmove for systems that
> lack it. But libiberty appears to assume that it can
> implement memmove, on
> systems that don't have it, as a wrapper around bcopy.
Probably the other way round as well - there is a macro in gcc code which
uses bcopy as a macro wrapper around memmove. This is activated when
HAVE_BCOPY is not defined. We'll just have to undef HAVE_BCOPY globally.
See:
----------------------------------------------------------------------------
----------------------
/var/opt/spool/out/em/biswa/gcc/src/gcc-20001211>find . -type f -print |
xargs grep "define bcopy"
./gcc/expr.h:#define bcopy_libfunc (libfunc_table[LTI_bcopy])
./gcc/system.h:# define bcopy(src,dst,len) memmove((dst),(src),(len))
./gcc/config/i386/xm-beos.h:#define bcopy(s,d,n) memmove((d),(s),(n))
./gcc/config/romp/xm-romp.h:#define bcopy(s,d,l) memcpy(d,s,l)
./gcc/config/rs6000/xm-beos.h:#define bcopy(s,d,n) memmove((d),(s),(n))
----------------------------------------------------------------------------
------
bcopy is also implemented in C (this is not buggy) in libiberty and memove
is a wrapper around this one. See libiberty/bcopy.c libiberty/memmove.c
So we won't have a problem.
Rgds.
Biswa.