guix: cpu: Add detection for aarch64 CPUs.
* guix/cpu.scm (cpu->gcc-architecture): Add detection logic for aarch64 CPUs.
parent
41ed6db81e
commit
fd00ac7e27
53
guix/cpu.scm
53
guix/cpu.scm
|
@ -211,6 +211,57 @@ corresponds to CPU, a record as returned by 'current-cpu'."
|
||||||
;; TODO: Recognize CENTAUR/CYRIX/NSC?
|
;; TODO: Recognize CENTAUR/CYRIX/NSC?
|
||||||
|
|
||||||
"x86_64"))
|
"x86_64"))
|
||||||
|
("aarch64"
|
||||||
|
;; Transcribed from GCC's list of aarch64 processors in aarch64-cores.def
|
||||||
|
;; What to do with big.LITTLE cores?
|
||||||
|
(match (cpu-vendor cpu)
|
||||||
|
("0x41"
|
||||||
|
(match (cpu-model cpu)
|
||||||
|
((or #xd02 #xd04 #xd03 #xd07 #xd08 #xd09)
|
||||||
|
"armv8-a")
|
||||||
|
((or #xd05 #xd0a #xd0b #xd0e #xd0d #xd41 #xd42 #xd4b #xd46 #xd43 #xd44 #xd41 #xd0c #xd4a)
|
||||||
|
"armv8.2-a")
|
||||||
|
(#xd40
|
||||||
|
"armv8.4-a")
|
||||||
|
(#xd15
|
||||||
|
"armv8-r")
|
||||||
|
((or #xd46 #xd47 #xd48 #xd49 #xd4f)
|
||||||
|
"armv9-a")))
|
||||||
|
("0x42"
|
||||||
|
"armv8.1-a")
|
||||||
|
("0x43"
|
||||||
|
(match (cpu-model cpu)
|
||||||
|
((or #x0a0 #x0a1 #x0a2 #x0a3)
|
||||||
|
"armv8-a")
|
||||||
|
(#x0af
|
||||||
|
"armv8.1-a")
|
||||||
|
((or #x0b0 #x0b1 #x0b2 #x0b3 #x0b4 #x0b5)
|
||||||
|
"armv8.2-a")
|
||||||
|
(#x0b8
|
||||||
|
"armv8.3-a")))
|
||||||
|
("0x46"
|
||||||
|
"armv8.2-a")
|
||||||
|
("0x48"
|
||||||
|
"armv8.2-a")
|
||||||
|
("0x50"
|
||||||
|
"armv8-a")
|
||||||
|
("0x51"
|
||||||
|
(match (cpu-model cpu)
|
||||||
|
(#xC00
|
||||||
|
"armv8-a")
|
||||||
|
(#x516
|
||||||
|
"armv8.1-a")
|
||||||
|
(#xC01
|
||||||
|
"armv8.4-a")))
|
||||||
|
("0x53"
|
||||||
|
"armv8-a")
|
||||||
|
("0x68"
|
||||||
|
"armv8-a")
|
||||||
|
("0xC0"
|
||||||
|
"armv8.6-a")
|
||||||
|
(_
|
||||||
|
"armv8-a"))
|
||||||
|
"armv8-a")
|
||||||
(architecture
|
(architecture
|
||||||
;; TODO: AArch64.
|
;; TODO: More architectures
|
||||||
architecture)))
|
architecture)))
|
||||||
|
|
Reference in New Issue