aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorMarat Dukhan <maratek@gmail.com>2017-05-08 06:16:45 +0000
committerMarat Dukhan <maratek@gmail.com>2017-05-08 06:16:45 +0000
commit3c98276d6008439d8faae3350e8bfa0f144c5bef (patch)
tree4bb002f558b52849e232d3190415970a56c106f1 /tools
parentd226627d39599f37aadaccee1755aa2a8bb8694c (diff)
downloadplatform_external_cpuinfo-3c98276d6008439d8faae3350e8bfa0f144c5bef.tar.gz
platform_external_cpuinfo-3c98276d6008439d8faae3350e8bfa0f144c5bef.tar.bz2
platform_external_cpuinfo-3c98276d6008439d8faae3350e8bfa0f144c5bef.zip
Working ARM + Linux version
Diffstat (limited to 'tools')
-rw-r--r--tools/cpu-info.c6
-rw-r--r--tools/isa-info.c33
2 files changed, 39 insertions, 0 deletions
diff --git a/tools/cpu-info.c b/tools/cpu-info.c
index 5d54f6c..a464b1d 100644
--- a/tools/cpu-info.c
+++ b/tools/cpu-info.c
@@ -162,6 +162,9 @@ int main(int argc, char** argv) {
case cpuinfo_uarch_jaguar:
printf("uArch: Jaguar/Puma\n");
break;
+ case cpuinfo_uarch_xscale:
+ printf("uArch: XScale\n");
+ break;
case cpuinfo_uarch_arm7:
printf("uArch: ARM7\n");
break;
@@ -219,6 +222,9 @@ int main(int argc, char** argv) {
case cpuinfo_uarch_kryo:
printf("uArch: Kryo\n");
break;
+ case cpuinfo_uarch_denver:
+ printf("uArch: Denver\n");
+ break;
case cpuinfo_uarch_mongoose:
printf("uArch: Mongoose\n");
break;
diff --git a/tools/isa-info.c b/tools/isa-info.c
index 60adb5a..76236db 100644
--- a/tools/isa-info.c
+++ b/tools/isa-info.c
@@ -121,4 +121,37 @@ int main(int argc, char** argv) {
#endif /* CPUINFO_ARCH_X86 || CPUINFO_ARCH_X86_64 */
+#if CPUINFO_ARCH_ARM
+ printf("Instruction sets:\n");
+ printf("\tThumb: %s\n", cpuinfo_isa.thumb ? "yes" : "no");
+ printf("\tThumb 2: %s\n", cpuinfo_isa.thumb2 ? "yes" : "no");
+ printf("\tThumb EE: %s\n", cpuinfo_isa.thumbee ? "yes" : "no");
+ printf("\tJazelle: %s\n", cpuinfo_isa.jazelle ? "yes" : "no");
+ printf("\tARMv5E: %s\n", cpuinfo_isa.armv5e ? "yes" : "no");
+ printf("\tARMv6: %s\n", cpuinfo_isa.armv6 ? "yes" : "no");
+ printf("\tARMv6-K: %s\n", cpuinfo_isa.armv6k ? "yes" : "no");
+ printf("\tARMv7: %s\n", cpuinfo_isa.armv7 ? "yes" : "no");
+ printf("\tARMv7 MP: %s\n", cpuinfo_isa.armv7mp ? "yes" : "no");
+ printf("\tIDIV: %s\n", cpuinfo_isa.idiv ? "yes" : "no");
+
+ printf("Floating-Point support:\n");
+ printf("\tVFPv2: %s\n", cpuinfo_isa.vfpv2 ? "yes" : "no");
+ printf("\tVFPv3: %s\n", cpuinfo_isa.vfpv3 ? "yes" : "no");
+ printf("\tD32: %s\n", cpuinfo_isa.d32 ? "yes" : "no");
+ printf("\tFP16: %s\n", cpuinfo_isa.fp16 ? "yes" : "no");
+ printf("\tFMA: %s\n", cpuinfo_isa.fma ? "yes" : "no");
+
+ printf("SIMD extensions:\n");
+ printf("\tWMMX: %s\n", cpuinfo_isa.wmmx ? "yes" : "no");
+ printf("\tWMMX 2: %s\n", cpuinfo_isa.wmmx2 ? "yes" : "no");
+ printf("\tNEON: %s\n", cpuinfo_isa.neon ? "yes" : "no");
+
+ printf("Cryptography extensions:\n");
+ printf("\tAES: %s\n", cpuinfo_isa.aes ? "yes" : "no");
+ printf("\tSHA1: %s\n", cpuinfo_isa.sha1 ? "yes" : "no");
+ printf("\tSHA2: %s\n", cpuinfo_isa.sha2 ? "yes" : "no");
+ printf("\tPMULL: %s\n", cpuinfo_isa.pmull ? "yes" : "no");
+ printf("\tCRC32: %s\n", cpuinfo_isa.crc32 ? "yes" : "no");
+#endif /* CPUINFO_ARCH_ARM */
+
}