]>
Commit | Line | Data |
---|---|---|
af3ca30a | 1 | |
6107fd66 JS |
2 | Requirements |
3 | ------------ | |
4 | - You need GCC 3.4 or later to compile the s390 port. | |
d2039281 FK |
5 | - 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 | |
e6e402ce | 7 | not been tested extensively. |
6107fd66 JS |
8 | |
9 | ||
10 | Limitations | |
11 | ----------- | |
12 | - 31-bit client programs are not supported. | |
13 | - Hexadecimal floating point is not supported. | |
e83c28e1 AA |
14 | - Transactional memory is not supported. The transactional-execution |
15 | facility is masked off from HWCAP. | |
afa21cd6 AA |
16 | - A full list of unimplemented instructions can be retrieved from |
17 | `docs/internals/s390-opcodes.csv', by grepping for "not implemented". | |
e83c28e1 AA |
18 | - FP signalling is not accurate. E.g., the "compare and signal" |
19 | instructions behave like their non-signalling counterparts. | |
e6e402ce FK |
20 | - On machine models predating z10, cachegrind will assume a z10 cache |
21 | architecture. Otherwise, cachegrind will query the hosts cache system | |
22 | and use those parameters. | |
4035c74f FK |
23 | - Some gcc versions use mvc to copy 4/8 byte values. This will affect |
24 | certain debug messages. For example, memcheck will complain about | |
25 | 4 one-byte reads/writes instead of just a single read/write. | |
6107fd66 JS |
26 | |
27 | ||
978fa74f FK |
28 | Hardware facilities |
29 | ------------------- | |
30 | Valgrind does not require that the host machine has the same hardware | |
31 | facilities as the machine for which the client program was compiled. | |
d2039281 FK |
32 | This is convenient. If possible, the JIT compiler will translate the |
33 | client instructions according to the facilities available on the host. | |
978fa74f FK |
34 | This means, though, that probing for hardware facilities by issuing |
35 | instructions from that facility and observing whether SIGILL is thrown | |
36 | may not work. As a consequence, programs that attempt to do so may | |
37 | behave differently. It is believed that this is a rare use case. | |
38 | ||
39 | ||
6107fd66 JS |
40 | Reading Material |
41 | ---------------- | |
ce4b0e06 AA |
42 | (1) ELF ABI s390x Supplement |
43 | https://github.com/IBM/s390x-abi/releases | |
6107fd66 | 44 | (2) z/Architecture Principles of Operation |
afa21cd6 | 45 | https://www.ibm.com/support/pages/zarchitecture-principles-operation |
6107fd66 | 46 | (3) z/Architecture Reference Summary |
afa21cd6 | 47 | https://www.ibm.com/support/pages/zarchitecture-reference-summary |