Contents
Part I Running tests with
litmus
1 A tour of
litmus
1.1 A simple run
1.2 Cross compilation
1.3 Running several tests at once
2 Controlling test parameters
2.1 Architecture of tests
2.2 Affinity
2.2.1 Introduction to affinity
2.2.2 Study of affinity
2.2.3 Advanced control
2.3 Controlling executable files
3 Usage of
litmus
Part II Generating tests
4 Preamble
4.1 Relaxation of Sequential Consistency
4.2 Introduction to relaxations
4.3 More relaxations
4.4 Summary of simple relaxations
4.4.1 Communication relaxations
4.4.2 Program order relaxations
4.4.3 Barrier relaxations
5 Testing relaxations with
diy
5.1 Principle
5.2 Testing x86
6 Additional relaxations
6.1 Intra-processor dependencies
6.2 Composite relaxations and cumulativity
7 Identifying coherence orders with observers
7.1 Simple observers
7.2 More observers
7.3 Three stores or more
8 Command usage
8.1 Usage of
diyone
8.2 Usage of
diy
8.3 Usage of
readRelax