summaryrefslogtreecommitdiff
path: root/gnu/packages/gcc.scm
diff options
context:
space:
mode:
authorMarius Bakke <[email protected]>2022-02-13 14:24:53 +0100
committerMarius Bakke <[email protected]>2022-02-13 14:24:53 +0100
commit76b6bbdf232b4b82cdd23cfe0d81331a4fd2edec (patch)
tree0e6a57ba08b9c6f9f5cbcdc5b5d9daeea91e428d /gnu/packages/gcc.scm
parent1a5302435ff0d2822b823f5a6fe01faa7a85c629 (diff)
parente8af2ea63a7f497b8f8e19e206645109c0646e72 (diff)
Merge branch 'master' into staging
Diffstat (limited to 'gnu/packages/gcc.scm')
-rw-r--r--gnu/packages/gcc.scm33
1 files changed, 31 insertions, 2 deletions
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index efa0baeaa1..e0a431a0ff 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <[email protected]>
;;; Copyright © 2014, 2015, 2016, 2017, 2019, 2021 Ricardo Wurmus <[email protected]>
;;; Copyright © 2015 Andreas Enge <[email protected]>
-;;; Copyright © 2015, 2016, 2017, 2018, 2020, 2021 Efraim Flashner <[email protected]>
+;;; Copyright © 2015, 2016, 2017, 2018, 2020, 2021, 2022 Efraim Flashner <[email protected]>
;;; Copyright © 2016 Carlos Sánchez de La Lama <[email protected]>
;;; Copyright © 2018 Tobias Geerinckx-Rice <[email protected]>
;;; Copyright © 2018, 2020 Marius Bakke <[email protected]>
@@ -525,6 +525,19 @@ Go. It also includes runtime support libraries for these languages.")
,@(package-inputs gcc-4.7)))))
+(define %gcc-7.5-aarch64-micro-architectures
+ ;; Suitable '-march' values for GCC 7.5.
+ ;; TODO: Allow dynamically adding feature flags.
+ '("armv8-a" "armv8.1-a" "armv8.2-a" "armv8.3-a"))
+
+(define %gcc-7.5-armhf-micro-architectures
+ ;; Suitable '-march' values for GCC 7.5.
+ ;; TODO: Allow dynamically adding feature flags.
+ '("armv7" "armv7-a" "armv7-m" "armv7-r" "armv7e-m" "armv7ve"
+ "armv8-a" "armv8-a+crc" "armv8.1-a" "armv8.1-a+crc"
+ "armv8-m.base" "armv8-m.main" "armv8-m.main+dsp"
+ "iwmmxt" "iwmmxt2"))
+
(define %gcc-7.5-x86_64-micro-architectures
;; Suitable '-march' values for GCC 7.5 (info "(gcc) x86 Options").
'("core2" "nehalem" "westmere" "sandybridge" "ivybridge"
@@ -536,6 +549,19 @@ Go. It also includes runtime support libraries for these languages.")
"znver1"
"btver1" "btver2" "geode"))
+(define %gcc-10-aarch64-micro-architectures
+ ;; Suitable '-march' values for GCC 10.
+ ;; TODO: Allow dynamically adding feature flags.
+ (append %gcc-7.5-aarch64-micro-architectures
+ '("armv8.4-a" "armv8.5-a" "armv8.6-a")))
+
+(define %gcc-10-armhf-micro-architectures
+ ;; Suitable '-march' values for GCC 10.
+ ;; TODO: Allow dynamically adding feature flags.
+ (append %gcc-7.5-armhf-micro-architectures
+ '("armv8.2-a" "armv8.3-a" "armv8.4-a" "armv8.5-a" "armv8.6-a"
+ "armv8-r" "armv8.1-m.main")))
+
(define %gcc-10-x86_64-micro-architectures
;; Suitable '-march' values for GCC 10.
(append %gcc-7.5-x86_64-micro-architectures
@@ -545,7 +571,6 @@ Go. It also includes runtime support libraries for these languages.")
"znver2" "znver3")))
-
(define-public gcc-7
(package
(inherit gcc-6)
@@ -566,6 +591,8 @@ for several languages, including C, C++, Objective-C, Fortran, Ada, and Go.
It also includes runtime support libraries for these languages.")
(properties
`((compiler-cpu-architectures
+ ("aarch64" ,@%gcc-7.5-aarch64-micro-architectures)
+ ("armhf" ,@%gcc-7.5-armhf-micro-architectures)
("x86_64" ,@%gcc-7.5-x86_64-micro-architectures))))))
(define-public gcc-8
@@ -619,6 +646,8 @@ It also includes runtime support libraries for these languages.")
(snippet gcc-canadian-cross-objdump-snippet)))
(properties
`((compiler-cpu-architectures
+ ("aarch64" ,@%gcc-10-aarch64-micro-architectures)
+ ("armhf" ,@%gcc-10-armhf-micro-architectures)
("x86_64" ,@%gcc-10-x86_64-micro-architectures))))))
(define-public gcc-11