Most of the changes are specific to MIPS32 architecture to support Memory Sanitizer.
Diff Detail
Event Timeline
lib/msan/CMakeLists.txt | ||
---|---|---|
37 | Cool. You don't need this if() now. | |
lib/msan/msan.cc | ||
510–511 | This is only used in MSanDR (DynamoRio helper tool) which does not support MIPS. Better not change it, or disable it with #ifdef. | |
lib/msan/msan.h | ||
29 | This gives you only 512Mb usable application memory in [0x60000000, 0x80000000), | |
lib/msan/msan_allocator.cc | ||
44 | No point in 3Tb allocation limit, you have only 512Mb application memory. |
What's the overall status of this work? Proper support of a new platform (and a new bitness) would require a lot more changes than this. If you have a larger patch, please upload it here for a general discussion.
I have tried to change every architecture specific code as per my understanding, please suggest on anything we missed out.
Below are the test results on mips32 board:
19 test cases are failing out of 88:
- 3 are x86_64 specific
- 2 are working after changing addresses in program(64--->32)
- 9 are failing because of minor differences with expected o/p
- I am working on remaining 5 failing tests.
I am going to submit a separate patch for testing related changes.
This patch (when synced with ToT) functions properly with mips32, but it is kept on waiting for i386 support.
I have tried to provide i386 support for MSan in D6433, but it is stuck with
some issue in lit framework, please see if we can have green flag for this patch.
I am changing the status of patch to "Plan Changes" i.e. to be synced with current ToT.
Cool. You don't need this if() now.