Darwin: Make stack growth tracking consistent with other architectures
[valgrind.git] / README.s390
blob28e7f1f0581abe1ee1ad76f5f61c5bebd011f236
2 Requirements
3 ------------
4 - You need GCC 3.4 or later to compile the s390 port.
5 - A working combination of autotools is required.
6 - To run valgrind a z900 machine or any later model is needed.
9 Limitations
10 -----------
11 - 31-bit client programs are not supported.
12 - Hexadecimal floating point is not supported.
13 - Decimal floating point is not supported yet.
14 - memcheck, massif, lackey, and none are supported.
15 - cachegrind is supported on z10 and newer models. On older models,
16   a z10 cache architecture will be assumed.
17 - callgrind and all experimental tools are currently not supported.
18 - helgrind and drd seem to work on SLES10,11 and RHEL5,6 on z9,z10 and z196
19   but might fail on other hardware/software combinations.
20 - Some gcc versions use mvc to copy 4/8 byte values. This will affect some
21   debug messages. Valgrind will complain about 4 or 8 one-byte reads/writes
22   instead of just 1 read/write.
25 Hardware facilities
26 -------------------
27 Valgrind does not require that the host machine has the same hardware
28 facilities as the machine for which the client program was compiled.
29 This is convenient. The JIT compiler will translate the client instructions
30 according to the facilities available on the host.
31 This means, though, that probing for hardware facilities by issuing
32 instructions from that facility and observing whether SIGILL is thrown
33 may not work. As a consequence, programs that attempt to do so may
34 behave differently. It is believed that this is a rare use case.
37 Recommendations
38 ---------------
39 Applications should be compiled with -fno-builtin to avoid
40 false positives due to builtin string operations when running memcheck.
43 Reading Material
44 ----------------
45 (1) Linux for zSeries ELF ABI Supplement
46     http://refspecs.linuxfoundation.org/ELF/zSeries/index.html
47 (2) z/Architecture Principles of Operation
48     http://publibfi.boulder.ibm.com/epubs/pdf/dz9zr009.pdf
49 (3) z/Architecture Reference Summary
50     http://publibfi.boulder.ibm.com/epubs/pdf/dz9zs007.pdf