Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/tools/perf/arch/x86/tests/arch-tests.c
26288 views
1
// SPDX-License-Identifier: GPL-2.0
2
#include <string.h>
3
#include "tests/tests.h"
4
#include "arch-tests.h"
5
6
#ifdef HAVE_AUXTRACE_SUPPORT
7
#ifdef HAVE_EXTRA_TESTS
8
DEFINE_SUITE("x86 instruction decoder - new instructions", insn_x86);
9
#endif
10
11
static struct test_case intel_pt_tests[] = {
12
TEST_CASE("Intel PT packet decoder", intel_pt_pkt_decoder),
13
TEST_CASE("Intel PT hybrid CPU compatibility", intel_pt_hybrid_compat),
14
{ .name = NULL, }
15
};
16
17
struct test_suite suite__intel_pt = {
18
.desc = "Intel PT",
19
.test_cases = intel_pt_tests,
20
};
21
22
#endif
23
#if defined(__x86_64__)
24
DEFINE_SUITE("x86 bp modify", bp_modify);
25
#endif
26
DEFINE_SUITE("AMD IBS via core pmu", amd_ibs_via_core_pmu);
27
DEFINE_SUITE_EXCLUSIVE("AMD IBS sample period", amd_ibs_period);
28
static struct test_case hybrid_tests[] = {
29
TEST_CASE_REASON("x86 hybrid event parsing", hybrid, "not hybrid"),
30
{ .name = NULL, }
31
};
32
33
struct test_suite suite__hybrid = {
34
.desc = "x86 hybrid",
35
.test_cases = hybrid_tests,
36
};
37
38
struct test_suite *arch_tests[] = {
39
#ifdef HAVE_DWARF_UNWIND_SUPPORT
40
&suite__dwarf_unwind,
41
#endif
42
#ifdef HAVE_AUXTRACE_SUPPORT
43
#ifdef HAVE_EXTRA_TESTS
44
&suite__insn_x86,
45
#endif
46
&suite__intel_pt,
47
#endif
48
#if defined(__x86_64__)
49
&suite__bp_modify,
50
#endif
51
&suite__amd_ibs_via_core_pmu,
52
&suite__amd_ibs_period,
53
&suite__hybrid,
54
&suite__x86_topdown,
55
NULL,
56
};
57
58