blob: cc1d2b3fd1f7ba4f875366db7d813351efe55a3b [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.
florian6fc11f22013-09-30 16:41:56 +00005- To run valgrind a z10 machine or any later model is needed.
6 Older machine models down to and including z900 may work but have
7 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.
29This is convenient. The JIT compiler will translate the client instructions
30according to the facilities available on the host.
31This 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