From: Petar Jovanovic Date: Tue, 26 Jun 2012 11:30:18 +0000 (+0000) Subject: Adding README.mips to Valgrind root directory. X-Git-Tag: svn/VALGRIND_3_8_0~192 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=922fe5573c2e678a541fb18deb61e3761850f3e2;p=thirdparty%2Fvalgrind.git Adding README.mips to Valgrind root directory. The file lists supported platforms and tools, and it gives suggestions how to use configure options depending on platform and toolchain. Previously, these instructions were available at: https://bugs.kde.org/show_bug.cgi?id=270777. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12676 --- diff --git a/README.mips b/README.mips new file mode 100644 index 0000000000..bc5ae9c8b9 --- /dev/null +++ b/README.mips @@ -0,0 +1,51 @@ + +Supported platforms +------------------- +- MIPS32 and MIPS32r2 platforms are currently supported. +- Both little-endian and big-endian cores are supported. + + +Building V for MIPS +------------------- +- Native build is available for all supported platforms. The build system +expects that native GCC is configured correctly and optimized for the platform. +Yet, this may not be the case with some Debian distributions which configure +GCC to compile to "mips1" by default. Depending on a target platform, using +CFLAGS="-mips32r2" or CFLAGS="-mips32" will do the trick and compile Valgrind +correctly. +- Use of cross-toolchain is supported as well. +- Example of configure line and additional configure options: + + $ ./configure --host=mipsel-linux-gnu --prefix= + [--with-pagesize=<4|16|64>] + + * --host=mips-linux-gnu is necessary only if Valgrind is built on platform + other then MIPS, tools for building MIPS application have to be in PATH. + + * --with-pagesize option is used to set default PAGE SIZE. If option is not + used, PAGE SIZE is set to value default for platform on which Valgrind is + built on. Possible values are 4, 16 of 64 and represent size in kilobytes. + + * --host=mips-linux-gnu is necessary if you compile it with cross toolchain + compiler for big endian platform. + + * --host=mipsel-linux-gnu is necessary if you compile it with cross toolchain + compiler for little endian platform. + + * --build=mips-linux is needed if you want to build it for MIPS32 on 64-bit + MIPS system. + + * If you are compiling Valgrind with gcc version older then gcc (GCC) 4.5.1 + you must specify CFLAGS="-mips32r2 -mplt", e.g. + ./configure --prefix= + CFLAGS="-mips32r2 -mplt" + + +Limitations +----------- +- Currently, memcheck, massif, lackey, callgrind and none are supported. +- Support for helgrind, drd and exp-ptrcheck is still incomplete. +- Some Valgrind tests for MIPS expect mips32r2 architecture and will not +compile when target is one of the older instruction sets. +- Older GCC may have issues with some inline assembly blocks. Get a toolchain +based on newer GCC versions, if possible.