summaryrefslogtreecommitdiff
path: root/README.s390
blob: 2dff9dedd6ac8cc49c747fd049cf83e471b9980d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Requirements
------------
- You need GCC 3.4 or later to compile the s390 port.
- A working combination of autotools is required.
- To run valgrind a z900 machine or any later model is needed.


Limitations
-----------
- 31-bit client programs are not supported.
- Hexadecimal floating point is not supported.
- Decimal floating point is not supported yet.
- Currently, only memcheck, massif, lackey, and none are supported
- helgrind and drd seem to work on SLES10,11 and RHEL5,6 on z9,z10 and z196
  but might fail on other hardware/software combinations.
- Some gcc versions use mvc to copy 4/8 byte values. This will affect some
  debug messages. Valgrind will complain about 4 or 8 one-byte reads/writes
  instead of just 1 read/write.
- exp-ptrcheck and callgrind are not supported.


Recommendations
---------------
Applications should be compiled with -fno-builtin to avoid
false positives due to builtin string operations when running memcheck.


Reading Material
----------------
(1) Linux for zSeries ELF ABI Supplement
    http://refspecs.linuxfoundation.org/ELF/zSeries/index.html
(2) z/Architecture Principles of Operation
    http://publibfi.boulder.ibm.com/epubs/pdf/dz9zr008.pdf
(3) z/Architecture Reference Summary
    http://publibfi.boulder.ibm.com/epubs/pdf/dz9zs006.pdf