1# RUN: llvm-exegesis -mode=analysis -benchmarks-file=%s -analysis-clusters-output-file=- -analysis-clustering-epsilon=9 -analysis-inconsistency-epsilon=0.1 -analysis-numpoints=1 | FileCheck -check-prefixes=CHECK-CLUSTERS-ALL,CHECK-CLUSTERS-TWO %s
2# RUN: llvm-exegesis -mode=analysis -benchmarks-file=%s -analysis-clusters-output-file=- -analysis-clustering-epsilon=9 -analysis-inconsistency-epsilon=100 -analysis-numpoints=1 | FileCheck -check-prefixes=CHECK-CLUSTERS-ALL,CHECK-CLUSTERS-TWO %s
3# RUN: llvm-exegesis -mode=analysis -benchmarks-file=%s -analysis-clusters-output-file=- -analysis-clustering-epsilon=10 -analysis-inconsistency-epsilon=0.1 -analysis-numpoints=1 | FileCheck -check-prefixes=CHECK-CLUSTERS-ALL,CHECK-CLUSTERS-ONE %s
4# RUN: llvm-exegesis -mode=analysis -benchmarks-file=%s -analysis-clusters-output-file=- -analysis-clustering-epsilon=10 -analysis-inconsistency-epsilon=100 -analysis-numpoints=1 | FileCheck -check-prefixes=CHECK-CLUSTERS-ALL,CHECK-CLUSTERS-ONE %s
5
6# RUN: llvm-exegesis -mode=analysis -benchmarks-file=%s -analysis-inconsistencies-output-file=- -analysis-clustering-epsilon=9 -analysis-inconsistency-epsilon=0.1 -analysis-numpoints=1 | FileCheck -check-prefixes=CHECK-INCONSISTENCIES-FAIL %s
7# RUN: llvm-exegesis -mode=analysis -benchmarks-file=%s -analysis-inconsistencies-output-file=- -analysis-clustering-epsilon=10 -analysis-inconsistency-epsilon=0.1 -analysis-numpoints=1 | FileCheck -check-prefixes=CHECK-INCONSISTENCIES-FAIL %s
8# RUN: llvm-exegesis -mode=analysis -benchmarks-file=%s -analysis-inconsistencies-output-file=- -analysis-clustering-epsilon=9 -analysis-inconsistency-epsilon=100 -analysis-numpoints=1 | FileCheck -check-prefixes=CHECK-INCONSISTENCIES-PASS %s
9# RUN: llvm-exegesis -mode=analysis -benchmarks-file=%s -analysis-inconsistencies-output-file=- -analysis-clustering-epsilon=10 -analysis-inconsistency-epsilon=100 -analysis-numpoints=1 | FileCheck -check-prefixes=CHECK-INCONSISTENCIES-PASS %s
10
11# CHECK-CLUSTERS-ALL: {{^}}cluster_id,opcode_name,config,sched_class,latency{{$}}
12
13# CHECK-CLUSTERS-TWO: {{^}}0,
14# CHECK-CLUSTERS-TWO-SAME: ,90.00{{$}}
15# CHECK-CLUSTERS-TWO: {{^}}1,
16# CHECK-CLUSTERS-TWO-SAME: ,100.00{{$}}
17
18# CHECK-CLUSTERS-ONE: {{^}}0,
19# CHECK-CLUSTERS-ONE-SAME: ,90.00{{$}}
20# CHECK-CLUSTERS-ONE-NEXT: {{^}}0,
21# CHECK-CLUSTERS-ONE-SAME: ,100.00{{$}}
22
23# CHECK-INCONSISTENCIES-FAIL: contains instructions whose performance characteristics do not match that of LLVM
24# CHECK-INCONSISTENCIES-FAIL: contains instructions whose performance characteristics do not match that of LLVM
25# CHECK-INCONSISTENCIES-FAIL-NOT: contains instructions whose performance characteristics do not match that of LLVM
26
27# CHECK-INCONSISTENCIES-PASS-NOT: contains instructions whose performance characteristics do not match that of LLVM
28
29---
30mode:            latency
31key:
32  instructions:
33    - 'ADD32rr EDX EDX EAX'
34  config:          ''
35  register_initial_values:
36    - 'EDX=0x0'
37    - 'EAX=0x0'
38cpu_name:        bdver2
39llvm_triple:     x86_64-unknown-linux-gnu
40num_repetitions: 10000
41measurements:
42  - { key: latency, value: 90, per_snippet_value: 90 }
43error:           ''
44info:            Repeating a single implicitly serial instruction
45assembled_snippet: BA00000000B80000000001C201C201C201C201C201C201C201C201C201C201C201C201C201C201C201C2C3
46...
47---
48mode:            latency
49key:
50  instructions:
51    - 'SQRTSSr XMM11 XMM11'
52  config:          ''
53  register_initial_values:
54    - 'XMM11=0x0'
55cpu_name:        bdver2
56llvm_triple:     x86_64-unknown-linux-gnu
57num_repetitions: 10000
58measurements:
59  - { key: latency, value: 100, per_snippet_value: 100 }
60error:           ''
61info:            Repeating a single explicitly serial instruction
62assembled_snippet: 4883EC10C7042400000000C744240400000000C744240800000000C744240C00000000C57A6F1C244883C410F3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBF3450F51DBC3
63...
64