summaryrefslogtreecommitdiff
path: root/gnu/packages/gcc.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2022-02-08 18:15:08 +0200
committerEfraim Flashner <efraim@flashner.co.il>2022-02-13 14:47:01 +0200
commitc31eed71076d5c0d22041bb0377ebbf871b1ec8d (patch)
tree1ae94c3e87d487ed9ff91dd9c8dc96ccfccdaf8d /gnu/packages/gcc.scm
parent7b1185b6af85a050bb3c8c14117813028f7107a2 (diff)
downloadguix-patches-c31eed71076d5c0d22041bb0377ebbf871b1ec8d.tar
guix-patches-c31eed71076d5c0d22041bb0377ebbf871b1ec8d.tar.gz
gnu: gcc: Add compiler-cpu-architectures for aarch64.
* gnu/packages/gcc.scm (%gcc-7.5-aarch64-micro-architectures, %gcc-10-aarch64-micro-architectures): New variables. (gcc-7, gcc-10)[properties]: Add aarch64 compiler-cpu-architectures.
Diffstat (limited to 'gnu/packages/gcc.scm')
-rw-r--r--gnu/packages/gcc.scm16
1 files changed, 14 insertions, 2 deletions
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index efa0baeaa1..726c0eed89 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2015, 2016, 2017, 2018, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015, 2016, 2017, 2018, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020 Marius Bakke <mbakke@fastmail.com>
@@ -525,6 +525,11 @@ 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-x86_64-micro-architectures
;; Suitable '-march' values for GCC 7.5 (info "(gcc) x86 Options").
'("core2" "nehalem" "westmere" "sandybridge" "ivybridge"
@@ -536,6 +541,12 @@ 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-x86_64-micro-architectures
;; Suitable '-march' values for GCC 10.
(append %gcc-7.5-x86_64-micro-architectures
@@ -545,7 +556,6 @@ Go. It also includes runtime support libraries for these languages.")
"znver2" "znver3")))
-
(define-public gcc-7
(package
(inherit gcc-6)
@@ -566,6 +576,7 @@ 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)
("x86_64" ,@%gcc-7.5-x86_64-micro-architectures))))))
(define-public gcc-8
@@ -619,6 +630,7 @@ 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)
("x86_64" ,@%gcc-10-x86_64-micro-architectures))))))
(define-public gcc-11