Skip to content

Commit 1b33884

Browse files
authored
Clean up ARM (#48)
* Clean up ARM stuff.
1 parent 7a07d3a commit 1b33884

12 files changed

Lines changed: 718 additions & 246 deletions

README.md

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,12 @@ Package home: https://github.com/klauspost/cpuid
1212

1313
[1]: https://godoc.org/github.com/klauspost/cpuid?status.svg
1414
[2]: https://godoc.org/github.com/klauspost/cpuid
15-
[3]: https://travis-ci.org/klauspost/cpuid.svg
15+
[3]: https://travis-ci.org/klauspost/cpuid.svg?branch=master
1616
[4]: https://travis-ci.org/klauspost/cpuid
1717

1818
# features
19-
## CPU Instructions
19+
20+
## x86 CPU Instructions
2021
* **CMOV** (i686 CMOV)
2122
* **NX** (NX (No-Execute) bit)
2223
* **AMD3DNOW** (AMD 3DNOW)
@@ -83,6 +84,35 @@ Package home: https://github.com/klauspost/cpuid
8384
* **Cache line** (Probable size of a cache line).
8485
* **L1, L2, L3 Cache size** on newer Intel/AMD CPUs.
8586

87+
## ARM CPU features
88+
89+
Currently only `arm64` platforms are implemented.
90+
91+
* **FP** Single-precision and double-precision floating point
92+
* **ASIMD** Advanced SIMD
93+
* **EVTSTRM** Generic timer
94+
* **AES** AES instructions
95+
* **PMULL** Polynomial Multiply instructions (PMULL/PMULL2)
96+
* **SHA1** SHA-1 instructions (SHA1C, etc)
97+
* **SHA2** SHA-2 instructions (SHA256H, etc)
98+
* **CRC32** CRC32/CRC32C instructions
99+
* **ATOMICS** Large System Extensions (LSE)
100+
* **FPHP** Half-precision floating point
101+
* **ASIMDHP** Advanced SIMD half-precision floating point
102+
* **ARMCPUID** Some CPU ID registers readable at user-level
103+
* **ASIMDRDM** Rounding Double Multiply Accumulate/Subtract (SQRDMLAH/SQRDMLSH)
104+
* **JSCVT** Javascript-style double->int convert (FJCVTZS)
105+
* **FCMA** Floating point complex number addition and multiplication
106+
* **LRCPC** Weaker release consistency (LDAPR, etc)
107+
* **DCPOP** Data cache clean to Point of Persistence (DC CVAP)
108+
* **SHA3** SHA-3 instructions (EOR3, RAXI, XAR, BCAX)
109+
* **SM3** SM3 instructions
110+
* **SM4** SM4 instructions
111+
* **ASIMDDP** SIMD Dot Product
112+
* **SHA512** SHA512 instructions
113+
* **SVE** Scalable Vector Extension
114+
* **GPA** Generic Pointer Authentication
115+
86116
## Cpu Vendor/VM
87117
* **Intel**
88118
* **AMD**

0 commit comments

Comments
 (0)