[uClibc] mipsel, memcpy wont compile when MIPS_SIM!=MIPS_SIM_ABI32
john.smith at arrows.demon.co.uk
john.smith at arrows.demon.co.uk
Wed Dec 22 23:33:39 UTC 2004
(Working from the snapshot ~/gnu/uClibc-20041218.tar.bz2)
libc/string/mips/memcpy.S includes code
lw t4, 16(a1)
lw t5, 20(a1)
lw t6, 24(a1)
lw t7, 28(a1)
The registers t4,t5,t6,t7 are defined in
libc/sysdeps/linux/mips/sys/regdef.h
in the form
#if _MIPS_SIM != _MIPS_SIM_ABI32
..
#define ta0 a4
#define ta1 a5
#define ta2 a6
#define ta3 a7
#else /* if _MIPS_SIM == _MIPS_SIM_ABI32 */
..
#define t4 $12
#define t5 $13
#define t6 $14
#define t7 $15
#define ta0 t4
#define ta1 t5
#define ta2 t6
#define ta3 t7
#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
That is, when _MIPS_SIM != _MIPS_SIM_ABI32, there are no macro definitions
for t4,t5,t6,t7, so memcpy.S will not compile.
It might be a sign that I am not going in a sensible direction, but
it broke my build.
John Smith
More information about the uClibc
mailing list