blob: 0af33e4a65c635b89b13bf28deb709f856fd2860 [file] [log] [blame]
floriandec4a562011-11-26 04:12:01 +00001
sewardjb5b87402011-03-07 16:05:35 +00002Requirements
3------------
4- You need GCC 3.4 or later to compile the s390 port.
florian92b33b52014-12-08 14:03:00 +00005- To run valgrind a z10 machine or any later model is recommended.
6 Older machine models down to and including z990 may work but have
florian6fc11f22013-09-30 16:41:56 +00007 not been tested extensively.
sewardjb5b87402011-03-07 16:05:35 +00008
9
10Limitations
11-----------
12- 31-bit client programs are not supported.
13- Hexadecimal floating point is not supported.
florianbe853a82013-10-01 07:01:08 +000014- memcheck, cachegrind, drd, helgrind, massif, lackey, and none are
florian6fc11f22013-09-30 16:41:56 +000015 supported.
16- On machine models predating z10, cachegrind will assume a z10 cache
17 architecture. Otherwise, cachegrind will query the hosts cache system
18 and use those parameters.
florianfb11d972012-11-02 22:00:59 +000019- callgrind and all experimental tools are currently not supported.
florianf19daa02013-10-19 08:21:19 +000020- Some gcc versions use mvc to copy 4/8 byte values. This will affect
21 certain debug messages. For example, memcheck will complain about
22 4 one-byte reads/writes instead of just a single read/write.
sewardjb5b87402011-03-07 16:05:35 +000023
24
florian8f36de02012-08-23 00:44:22 +000025Hardware facilities
26-------------------
27Valgrind does not require that the host machine has the same hardware
28facilities as the machine for which the client program was compiled.
florian92b33b52014-12-08 14:03:00 +000029This is convenient. If possible, the JIT compiler will translate the
30client instructions according to the facilities available on the host.
florian8f36de02012-08-23 00:44:22 +000031This means, though, that probing for hardware facilities by issuing
32instructions from that facility and observing whether SIGILL is thrown
33may not work. As a consequence, programs that attempt to do so may
34behave differently. It is believed that this is a rare use case.
35
36
sewardjb5b87402011-03-07 16:05:35 +000037Recommendations
38---------------
39Applications should be compiled with -fno-builtin to avoid
40false positives due to builtin string operations when running memcheck.
41
42
43Reading 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
florian46ac11b2012-09-19 16:43:30 +000048 http://publibfi.boulder.ibm.com/epubs/pdf/dz9zr009.pdf
sewardjb5b87402011-03-07 16:05:35 +000049(3) z/Architecture Reference Summary
florian46ac11b2012-09-19 16:43:30 +000050 http://publibfi.boulder.ibm.com/epubs/pdf/dz9zs007.pdf