aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMarat Dukhan <marat@fb.com>2017-09-25 01:32:37 -0700
committerMarat Dukhan <marat@fb.com>2017-09-25 01:32:37 -0700
commit2d37dc4072ef950b1d2232111f73e6a6a70fb4b4 (patch)
tree4dfad55d4538bca77ce5c29b30be5474ea3dde77 /test
parentd9f76e088d67bd2e706187185a6704b04a471311 (diff)
downloadcpuinfo-2d37dc4072ef950b1d2232111f73e6a6a70fb4b4.tar.gz
Major interface refactoring
Diffstat (limited to 'test')
-rw-r--r--test/blu-r1-hd.cc82
-rw-r--r--test/galaxy-c9-pro.cc112
-rw-r--r--test/galaxy-grand-prime-value-edition.cc78
-rw-r--r--test/galaxy-j7-tmobile.cc91
-rw-r--r--test/galaxy-j7-uae.cc91
-rw-r--r--test/galaxy-s3-us.cc78
-rw-r--r--test/galaxy-s4-us.cc78
-rw-r--r--test/galaxy-s5-global.cc112
-rw-r--r--test/galaxy-s5-us.cc78
-rw-r--r--test/galaxy-s6.cc112
-rw-r--r--test/galaxy-s7-global.cc130
-rw-r--r--test/galaxy-s7-us.cc96
-rw-r--r--test/galaxy-s8-global.cc130
-rw-r--r--test/galaxy-s8-us.cc112
-rw-r--r--test/galaxy-tab-3-7.0.cc78
-rw-r--r--test/galaxy-win-duos.cc78
-rw-r--r--test/huawei-mate-8.cc112
-rw-r--r--test/huawei-p9-lite.cc91
-rw-r--r--test/init.cc20
-rw-r--r--test/lenovo-a6600-plus.cc78
-rw-r--r--test/lenovo-vibe-x2.cc112
-rw-r--r--test/lg-k10-eu.cc78
-rw-r--r--test/meizu-pro-6s.cc120
-rw-r--r--test/moto-e-gen1.cc78
-rw-r--r--test/moto-g-gen2.cc78
-rw-r--r--test/moto-g-gen3.cc78
-rw-r--r--test/nexus-s.cc78
-rw-r--r--test/nexus4.cc78
-rw-r--r--test/nexus5x.cc108
-rw-r--r--test/nexus6.cc78
-rw-r--r--test/nexus6p.cc112
-rw-r--r--test/nexus9.cc78
-rw-r--r--test/oppo-r9.cc91
-rw-r--r--test/pixel-c.cc78
-rw-r--r--test/pixel-xl.cc96
-rw-r--r--test/pixel.cc96
-rw-r--r--test/xiaomi-redmi-2a.cc88
-rw-r--r--test/xperia-c4-dual.cc91
38 files changed, 3236 insertions, 217 deletions
diff --git a/test/blu-r1-hd.cc b/test/blu-r1-hd.cc
index 6ed6284..6ccc3cf 100644
--- a/test/blu-r1-hd.cc
+++ b/test/blu-r1-hd.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,10 +86,44 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FD033), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
+TEST(PACKAGES, non_null) {
+ ASSERT_TRUE(cpuinfo_packages);
+}
+
TEST(PACKAGES, name) {
for (uint32_t i = 0; i < cpuinfo_packages_count; i++) {
ASSERT_EQ("MediaTek MT6735",
diff --git a/test/galaxy-c9-pro.cc b/test/galaxy-c9-pro.cc
index 96d040f..bb4cfab 100644
--- a/test/galaxy-c9-pro.cc
+++ b/test/galaxy-c9-pro.cc
@@ -12,54 +12,94 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_uarch_cortex_a72, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -72,6 +112,62 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a72, cpuinfo_cores[i].uarch);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ break;
+ }
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x410FD080), cpuinfo_cores[i].midr);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(UINT32_C(0x410FD034), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-grand-prime-value-edition.cc b/test/galaxy-grand-prime-value-edition.cc
index 546f19a..965a336 100644
--- a/test/galaxy-grand-prime-value-edition.cc
+++ b/test/galaxy-grand-prime-value-edition.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FC075), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-j7-tmobile.cc b/test/galaxy-j7-tmobile.cc
index 82f07ce..e4ce0b6 100644
--- a/test/galaxy-j7-tmobile.cc
+++ b/test/galaxy-j7-tmobile.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -43,10 +49,57 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
+ break;
+ }
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -59,6 +112,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FD033), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-j7-uae.cc b/test/galaxy-j7-uae.cc
index c6e6d74..d372676 100644
--- a/test/galaxy-j7-uae.cc
+++ b/test/galaxy-j7-uae.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -43,10 +49,57 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
+ break;
+ }
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -59,6 +112,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FD033), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-s3-us.cc b/test/galaxy-s3-us.cc
index 12ea0fb..17c80c3 100644
--- a/test/galaxy-s3-us.cc
+++ b/test/galaxy-s3-us.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(2, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x511F04D4), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-s4-us.cc b/test/galaxy-s4-us.cc
index 82e5c41..645af87 100644
--- a/test/galaxy-s4-us.cc
+++ b/test/galaxy-s4-us.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x511F06F0), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-s5-global.cc b/test/galaxy-s5-global.cc
index 54b402c..75e1140 100644
--- a/test/galaxy-s5-global.cc
+++ b/test/galaxy-s5-global.cc
@@ -12,54 +12,94 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_uarch_cortex_a15, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -72,6 +112,62 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a15, cpuinfo_cores[i].uarch);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_cores[i].uarch);
+ break;
+ }
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x412FC0F3), cpuinfo_cores[i].midr);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(UINT32_C(0x410FC073), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-s5-us.cc b/test/galaxy-s5-us.cc
index 2b508c3..8f9dae3 100644
--- a/test/galaxy-s5-us.cc
+++ b/test/galaxy-s5-us.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x512F06F1), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-s6.cc b/test/galaxy-s6.cc
index 926b21c..20346b4 100644
--- a/test/galaxy-s6.cc
+++ b/test/galaxy-s6.cc
@@ -12,54 +12,94 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_uarch_cortex_a57, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -72,6 +112,62 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a57, cpuinfo_cores[i].uarch);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ break;
+ }
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x411FD070), cpuinfo_cores[i].midr);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(UINT32_C(0x410FD032), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-s7-global.cc b/test/galaxy-s7-global.cc
index 70139a6..d52a83f 100644
--- a/test/galaxy-s7-global.cc
+++ b/test/galaxy-s7-global.cc
@@ -12,76 +12,172 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
+ }
+}
+
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_vendor_samsung, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_uarch_mongoose, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
+TEST(CORES, count) {
+ ASSERT_EQ(8, cpuinfo_cores_count);
+}
+
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
+TEST(CORES, processor_start) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
+ }
+}
+
+TEST(CORES, processor_count) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(1, cpuinfo_cores[i].processor_count);
+ }
+}
+
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(cpuinfo_vendor_samsung, cpuinfo_cores[i].vendor);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
break;
}
}
}
-TEST(CORES, count) {
- ASSERT_EQ(8, cpuinfo_cores_count);
-}
-
-TEST(CORES, processor_start) {
+TEST(CORES, uarch) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
- ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(cpuinfo_uarch_mongoose, cpuinfo_cores[i].uarch);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ break;
+ }
}
}
-TEST(CORES, processor_count) {
+TEST(CORES, midr) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
- ASSERT_EQ(1, cpuinfo_cores[i].processor_count);
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x531F0011), cpuinfo_cores[i].midr);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(UINT32_C(0x410FD034), cpuinfo_cores[i].midr);
+ break;
+ }
}
}
diff --git a/test/galaxy-s7-us.cc b/test/galaxy-s7-us.cc
index 17ecaa5..e61e34d 100644
--- a/test/galaxy-s7-us.cc
+++ b/test/galaxy-s7-us.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_kryo, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -39,10 +45,53 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ break;
+ case 2:
+ case 3:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
+ break;
+ }
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -55,6 +104,45 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_kryo, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(UINT32_C(0x511F2052), cpuinfo_cores[i].midr);
+ break;
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x511F2112), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-s8-global.cc b/test/galaxy-s8-global.cc
index 4508c44..c9795d0 100644
--- a/test/galaxy-s8-global.cc
+++ b/test/galaxy-s8-global.cc
@@ -12,76 +12,172 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
+ }
+}
+
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_vendor_samsung, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_uarch_mongoose, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
+TEST(CORES, count) {
+ ASSERT_EQ(8, cpuinfo_cores_count);
+}
+
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
+TEST(CORES, processor_start) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
+ }
+}
+
+TEST(CORES, processor_count) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(1, cpuinfo_cores[i].processor_count);
+ }
+}
+
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(cpuinfo_vendor_samsung, cpuinfo_cores[i].vendor);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
break;
}
}
}
-TEST(CORES, count) {
- ASSERT_EQ(8, cpuinfo_cores_count);
-}
-
-TEST(CORES, processor_start) {
+TEST(CORES, uarch) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
- ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(cpuinfo_uarch_mongoose, cpuinfo_cores[i].uarch);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ break;
+ }
}
}
-TEST(CORES, processor_count) {
+TEST(CORES, midr) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
- ASSERT_EQ(1, cpuinfo_cores[i].processor_count);
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x534F0010), cpuinfo_cores[i].midr);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(UINT32_C(0x410FD034), cpuinfo_cores[i].midr);
+ break;
+ }
}
}
diff --git a/test/galaxy-s8-us.cc b/test/galaxy-s8-us.cc
index 8aec48b..4e83981 100644
--- a/test/galaxy-s8-us.cc
+++ b/test/galaxy-s8-us.cc
@@ -12,54 +12,94 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_uarch_cortex_a73, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -72,6 +112,62 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a73, cpuinfo_cores[i].uarch);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ break;
+ }
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x51AF8001), cpuinfo_cores[i].midr);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(UINT32_C(0x51AF8014), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-tab-3-7.0.cc b/test/galaxy-tab-3-7.0.cc
index dcc5a79..d2ce1b0 100644
--- a/test/galaxy-tab-3-7.0.cc
+++ b/test/galaxy-tab-3-7.0.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a9, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(2, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a9, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x413FC090), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/galaxy-win-duos.cc b/test/galaxy-win-duos.cc
index 90ad913..4d59798 100644
--- a/test/galaxy-win-duos.cc
+++ b/test/galaxy-win-duos.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a5, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a5, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FC051), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/huawei-mate-8.cc b/test/huawei-mate-8.cc
index 2c29b2f..9b9d9bb 100644
--- a/test/huawei-mate-8.cc
+++ b/test/huawei-mate-8.cc
@@ -12,54 +12,94 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_uarch_cortex_a72, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -72,6 +112,62 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a72, cpuinfo_cores[i].uarch);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ break;
+ }
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x410FD080), cpuinfo_cores[i].midr);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(UINT32_C(0x410FD034), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/huawei-p9-lite.cc b/test/huawei-p9-lite.cc
index 4612174..ee8d77a 100644
--- a/test/huawei-p9-lite.cc
+++ b/test/huawei-p9-lite.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -43,10 +49,57 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
+ break;
+ }
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -59,6 +112,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FD034), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/init.cc b/test/init.cc
index c848572..67ed926 100644
--- a/test/init.cc
+++ b/test/init.cc
@@ -11,15 +11,23 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, known_vendor) {
- for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_NE(cpuinfo_vendor_unknown, cpuinfo_processors[i].vendor);
+TEST(CORES_COUNT, non_zero) {
+ ASSERT_NE(0, cpuinfo_cores_count);
+}
+
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
+TEST(CORES, known_vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_NE(cpuinfo_vendor_unknown, cpuinfo_cores[i].vendor);
}
}
-TEST(PROCESSORS, known_uarch) {
- for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_NE(cpuinfo_uarch_unknown, cpuinfo_processors[i].uarch);
+TEST(CORES, known_uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_NE(cpuinfo_uarch_unknown, cpuinfo_cores[i].uarch);
}
}
diff --git a/test/lenovo-a6600-plus.cc b/test/lenovo-a6600-plus.cc
index c1a61b9..b9100d8 100644
--- a/test/lenovo-a6600-plus.cc
+++ b/test/lenovo-a6600-plus.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FD034), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/lenovo-vibe-x2.cc b/test/lenovo-vibe-x2.cc
index c97ba12..c0cf0aa 100644
--- a/test/lenovo-vibe-x2.cc
+++ b/test/lenovo-vibe-x2.cc
@@ -12,54 +12,94 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_uarch_cortex_a17, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -72,6 +112,62 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a17, cpuinfo_cores[i].uarch);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_cores[i].uarch);
+ break;
+ }
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x410FC0E0), cpuinfo_cores[i].midr);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(UINT32_C(0x410FC075), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/lg-k10-eu.cc b/test/lg-k10-eu.cc
index 5efdc5c..05715ee 100644
--- a/test/lg-k10-eu.cc
+++ b/test/lg-k10-eu.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FD030), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/meizu-pro-6s.cc b/test/meizu-pro-6s.cc
index a289fe9..76b6a4a 100644
--- a/test/meizu-pro-6s.cc
+++ b/test/meizu-pro-6s.cc
@@ -12,60 +12,102 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
- ASSERT_EQ(cpuinfo_uarch_cortex_a72, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i + 8, cpuinfo_processors[i].linux_id);
break;
case 2:
case 3:
case 4:
case 5:
+ ASSERT_EQ(i + 2, cpuinfo_processors[i].linux_id);
+ break;
case 6:
case 7:
case 8:
case 9:
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i - 6, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
- ASSERT_EQ(i + 8, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 2:
case 3:
case 4:
case 5:
- ASSERT_EQ(i + 2, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
case 6:
case 7:
case 8:
case 9:
- ASSERT_EQ(i - 6, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[2], cpuinfo_processors[i].cache.l2);
break;
}
}
}
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(10, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -78,6 +120,66 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a72, cpuinfo_cores[i].uarch);
+ break;
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ break;
+ }
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(UINT32_C(0x410FD081), cpuinfo_cores[i].midr);
+ break;
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ ASSERT_EQ(UINT32_C(0x410FD034), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/moto-e-gen1.cc b/test/moto-e-gen1.cc
index 4420e1d..1b82262 100644
--- a/test/moto-e-gen1.cc
+++ b/test/moto-e-gen1.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(2, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FC073), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/moto-g-gen2.cc b/test/moto-g-gen2.cc
index 76efa76..f916752 100644
--- a/test/moto-g-gen2.cc
+++ b/test/moto-g-gen2.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FC073), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/moto-g-gen3.cc b/test/moto-g-gen3.cc
index 1129333..9153a66 100644
--- a/test/moto-g-gen3.cc
+++ b/test/moto-g-gen3.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FD030), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/nexus-s.cc b/test/nexus-s.cc
index 96bf064..deb5f35 100644
--- a/test/nexus-s.cc
+++ b/test/nexus-s.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a8, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(1, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a8, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x412FC082), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/nexus4.cc b/test/nexus4.cc
index 72ad15d..47c42c1 100644
--- a/test/nexus4.cc
+++ b/test/nexus4.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x510F06F2), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/nexus5x.cc b/test/nexus5x.cc
index facd25a..6d6d953 100644
--- a/test/nexus5x.cc
+++ b/test/nexus5x.cc
@@ -12,50 +12,90 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
- ASSERT_EQ(cpuinfo_uarch_cortex_a57, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 2:
case 3:
case 4:
case 5:
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i - 2, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 2:
case 3:
case 4:
case 5:
- ASSERT_EQ(i - 2, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(6, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -68,6 +108,58 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a57, cpuinfo_cores[i].uarch);
+ break;
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ break;
+ }
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(UINT32_C(0x411FD072), cpuinfo_cores[i].midr);
+ break;
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ ASSERT_EQ(UINT32_C(0x410FD033), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/nexus6.cc b/test/nexus6.cc
index 2b2dfc9..0570730 100644
--- a/test/nexus6.cc
+++ b/test/nexus6.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_krait, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x513F06F1), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/nexus6p.cc b/test/nexus6p.cc
index 1ae3f5d..94f2141 100644
--- a/test/nexus6p.cc
+++ b/test/nexus6p.cc
@@ -12,54 +12,94 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
+ }
+}
+
+TEST(PROCESSORS, linux_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(cpuinfo_uarch_cortex_a57, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
break;
}
}
}
-TEST(PROCESSORS, linux_id) {
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
switch (i) {
case 0:
case 1:
case 2:
case 3:
- ASSERT_EQ(i + 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
break;
case 4:
case 5:
case 6:
case 7:
- ASSERT_EQ(i - 4, cpuinfo_processors[i].linux_id);
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
break;
}
}
}
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -72,6 +112,62 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a57, cpuinfo_cores[i].uarch);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ break;
+ }
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x411FD071), cpuinfo_cores[i].midr);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(UINT32_C(0x410FD032), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/nexus9.cc b/test/nexus9.cc
index db7b417..0e518fa 100644
--- a/test/nexus9.cc
+++ b/test/nexus9.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_nvidia, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_denver, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(2, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_nvidia, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_denver, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x4E0F0000), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/oppo-r9.cc b/test/oppo-r9.cc
index b96152e..e5a7d50 100644
--- a/test/oppo-r9.cc
+++ b/test/oppo-r9.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -43,10 +49,57 @@ TEST(PROCESSORS, DISABLED_linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
+ break;
+ }
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -59,6 +112,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FD032), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/pixel-c.cc b/test/pixel-c.cc
index a67573f..3fbcad8 100644
--- a/test/pixel-c.cc
+++ b/test/pixel-c.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a57, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,44 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +86,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a57, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x411FD071), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/pixel-xl.cc b/test/pixel-xl.cc
index 1065bb3..a9bf05b 100644
--- a/test/pixel-xl.cc
+++ b/test/pixel-xl.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_kryo, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -39,10 +45,53 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ break;
+ case 2:
+ case 3:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
+ break;
+ }
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -55,6 +104,45 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_kryo, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(UINT32_C(0x512F2051), cpuinfo_cores[i].midr);
+ break;
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x512F2011), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/pixel.cc b/test/pixel.cc
index e16b0f9..7780196 100644
--- a/test/pixel.cc
+++ b/test/pixel.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_kryo, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -39,10 +45,53 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ break;
+ case 2:
+ case 3:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
+ break;
+ }
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(4, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -55,6 +104,45 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_qualcomm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_kryo, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ ASSERT_EQ(UINT32_C(0x512F2051), cpuinfo_cores[i].midr);
+ break;
+ case 2:
+ case 3:
+ ASSERT_EQ(UINT32_C(0x512F2011), cpuinfo_cores[i].midr);
+ break;
+ }
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/xiaomi-redmi-2a.cc b/test/xiaomi-redmi-2a.cc
index 7109fd2..0176a95 100644
--- a/test/xiaomi-redmi-2a.cc
+++ b/test/xiaomi-redmi-2a.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -30,10 +36,54 @@ TEST(PROCESSORS, linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ break;
+ case 4:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
+ break;
+ }
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(5, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -46,6 +96,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a7, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FC075), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}
diff --git a/test/xperia-c4-dual.cc b/test/xperia-c4-dual.cc
index 912f015..edc76f8 100644
--- a/test/xperia-c4-dual.cc
+++ b/test/xperia-c4-dual.cc
@@ -12,15 +12,21 @@ TEST(PROCESSORS, non_null) {
ASSERT_TRUE(cpuinfo_processors);
}
-TEST(PROCESSORS, vendor) {
+TEST(PROCESSORS, smt_id) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_processors[i].vendor);
+ ASSERT_EQ(0, cpuinfo_processors[i].smt_id);
}
}
-TEST(PROCESSORS, uarch) {
+TEST(PROCESSORS, core) {
for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
- ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_processors[i].uarch);
+ ASSERT_EQ(&cpuinfo_cores[i], cpuinfo_processors[i].core);
+ }
+}
+
+TEST(PROCESSORS, package) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_processors[i].package);
}
}
@@ -43,10 +49,57 @@ TEST(PROCESSORS, DISABLED_linux_id) {
}
}
+TEST(PROCESSORS, l1i) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1i_cache().instances[i], cpuinfo_processors[i].cache.l1i);
+ }
+}
+
+TEST(PROCESSORS, l1d) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_EQ(&cpuinfo_get_l1d_cache().instances[i], cpuinfo_processors[i].cache.l1d);
+ }
+}
+
+TEST(PROCESSORS, l2) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[0], cpuinfo_processors[i].cache.l2);
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ ASSERT_EQ(&cpuinfo_get_l2_cache().instances[1], cpuinfo_processors[i].cache.l2);
+ break;
+ }
+ }
+}
+
+TEST(PROCESSORS, l3) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l3);
+ }
+}
+
+TEST(PROCESSORS, l4) {
+ for (uint32_t i = 0; i < cpuinfo_processors_count; i++) {
+ ASSERT_FALSE(cpuinfo_processors[i].cache.l4);
+ }
+}
+
TEST(CORES, count) {
ASSERT_EQ(8, cpuinfo_cores_count);
}
+TEST(CORES, non_null) {
+ ASSERT_TRUE(cpuinfo_cores);
+}
+
TEST(CORES, processor_start) {
for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
ASSERT_EQ(i, cpuinfo_cores[i].processor_start);
@@ -59,6 +112,36 @@ TEST(CORES, processor_count) {
}
}
+TEST(CORES, core_id) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(i, cpuinfo_cores[i].core_id);
+ }
+}
+
+TEST(CORES, package) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(&cpuinfo_packages[0], cpuinfo_cores[i].package);
+ }
+}
+
+TEST(CORES, vendor) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_vendor_arm, cpuinfo_cores[i].vendor);
+ }
+}
+
+TEST(CORES, uarch) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(cpuinfo_uarch_cortex_a53, cpuinfo_cores[i].uarch);
+ }
+}
+
+TEST(CORES, midr) {
+ for (uint32_t i = 0; i < cpuinfo_cores_count; i++) {
+ ASSERT_EQ(UINT32_C(0x410FD032), cpuinfo_cores[i].midr);
+ }
+}
+
TEST(PACKAGES, count) {
ASSERT_EQ(1, cpuinfo_packages_count);
}