FreeBSD: initial support for version 13.4
[valgrind.git] / README.mips
blobdf8b25971f40aa8cd5bcc416457577fc89b5d8d7
2 Supported platforms
3 -------------------
4 - MIPS32 and MIPS64 platforms are currently supported.
5 - Both little-endian and big-endian cores are supported.
6 - MIPS DSP ASE on MIPS32 platforms is supported.
9 Building V for MIPS
10 -------------------
11 - Native build is available for all supported platforms. The build system
12 expects that native GCC is configured correctly and optimized for the platform.
13 Yet, this may not be the case with some Debian distributions which configure
14 GCC to compile to "mips1" by default. Depending on a target platform, using
15 CFLAGS="-mips32r2", CFLAGS="-mips32" or CFLAGS="-mips64" or
16 CFLAGS="-mips64 -mabi=64" will do the trick and compile Valgrind correctly.
18 - Use of cross-toolchain is supported as well.
19 - Example of configure line and additional configure options:
21    $ ./configure --host=mipsel-linux-gnu --prefix=<path_to_install_directory>
23  * --host=mips-linux-gnu is necessary only if Valgrind is built on platform
24    other then MIPS, tools for building MIPS application have to be in PATH.
26  * --host=mips-linux-gnu is necessary if you compile it with cross toolchain
27    compiler for big endian platform.
29  * --host=mipsel-linux-musl is necessary if you compile it with cross toolchain
30    compiler for little endian platform.
32  * --host=nanomipseb-linux-gnu is necessary if you compile it with cross toolchain
33    compiler for nanoMIPS big endian platform.
35  * --host=nanomips-linux-gnu is necessary if you compile it with cross toolchain
36    compiler for nanoMIPS little endian platform.
38  * --build=mips-linux is needed if you want to build it for MIPS32 on 64-bit
39    MIPS system.
41  * If you are compiling Valgrind for mips32 with gcc version older then
42    gcc (GCC) 4.5.1, you must specify CFLAGS="-mips32r2 -mplt", e.g.
44    ./configure --prefix=<path_to_install_directory>
45    CFLAGS="-mips32r2 -mplt"
48 Limitations
49 -----------
50 - Some gdb tests will fail when gdb (GDB) older than 7.5 is used and gdb is
51   not compiled with '--with-expat=yes'.
52 - You can not compile tests for DSP ASE if you are using gcc (GCC) older
53   then 4.6.1 due to a bug in the toolchain.
54 - Older GCC may have issues with some inline assembly blocks. Get a toolchain
55   based on newer GCC versions, if possible.
56 - Systems with a mips64 cpu having only o32 libraries will misconfigure in case
57   no appropriate architecture flag is specified during configure time.
58   Be sure to set either mips32 or mips32r2 as the target architecture in that
59   case.
60 - Some tests can not be compiled for nanoMIPS due to limitations in
61   preliminary GCC for nanoMIPS. You can use '-i' switch for building tests.