Home | History | Annotate | Download | only in main
      1 
      2 Requirements
      3 ------------
      4 - You need GCC 3.4 or later to compile the s390 port.
      5 - 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.
      8 
      9 
     10 Limitations
     11 -----------
     12 - 31-bit client programs are not supported.
     13 - Hexadecimal floating point is not supported.
     14 - memcheck, cachegrind, drd, helgrind, massif, lackey, and none are
     15   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.
     19 - callgrind and all experimental tools are currently not supported.
     20 - 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.
     23 
     24 
     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.
     35 
     36 
     37 Recommendations
     38 ---------------
     39 Applications should be compiled with -fno-builtin to avoid
     40 false positives due to builtin string operations when running memcheck.
     41 
     42 
     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
     51