Hey all,
I am currently attempting to compile valgrind with
mips-linux-muslsf-gcc, but it errors out because guest_mips_helpers.c
uses floating point registers, which are not available in the softfloat
target. Any help would be appreciated.
The steps below can be used to reproduce this:
1. wget https://musl.cc/mips-linux-muslsf-cross.tgz
2. tar -xzf mips-linux-muslsf-cross.tgz
3. export PATH=$PATH:$(pwd)/mips-linux-muslsf-cross/bin
4. git clone https://sourceware.org/git/valgrind.git
5. cd valgrind
6. ./autogen.sh
7. ./configure --host=mips-linux-muslsf
8. make
Below are the first few errors that I am seeing:
priv/guest_mips_helpers.c: In function
‘mips_dirtyhelper_calculate_FCSR_fp32’:
priv/guest_mips_helpers.c:501:4: error: the register ‘$f21’ cannot be
clobbered in ‘asm’ for the current target
501 | __asm__ volatile(".set push" "\n\t"
\
| ^~~~~~~
priv/guest_mips_helpers.c:644:10: note: in expansion of macro
‘ASM_VOLATILE_UNARY32_DOUBLE’
644 | ASM_VOLATILE_UNARY32_DOUBLE(round.w.d)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
priv/guest_mips_helpers.c:486:4: error: the register ‘$f20’ cannot be
clobbered in ‘asm’ for the current target
486 | __asm__ volatile(".set push" "\n\t"
\
| ^~~~~~~
priv/guest_mips_helpers.c:647:10: note: in expansion of macro
‘ASM_VOLATILE_UNARY32’
647 | ASM_VOLATILE_UNARY32(floor.w.s)
|
Best regards,
Yannik Marchand
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users