Subject: [PATCH 09/17] gnu: Add julia-simd.

From: zimoun <[email-masked]>
Date: Tue, 4 Jan 2022 23:47:47 +0100

* gnu/packages/julia-xyz.scm (julia-simd): New variable.
---
 gnu/packages/julia-xyz.scm | 27 ++++++++++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm
index e407b1aec5..4a3ca18666 100644
--- a/gnu/packages/julia-xyz.scm
+++ b/gnu/packages/julia-xyz.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2020, 2021 Nicolò Balzarotti <[email-masked]>
-;;; Copyright © 2021 Simon Tournier <[email-masked]>
+;;; Copyright © 2021, 2022 Simon Tournier <[email-masked]>
 ;;; Copyright © 2021 Efraim Flashner <[email-masked]>
 ;;; Copyright © 2021 Vinicius Monego <[email-masked]>
 ;;; Copyright © 2021 jgart <[email-masked]>
@@ -4406,6 +4406,31 @@ (define-public julia-showoff
 in @code{Gadfly}, @code{Plots} and @code{Makie} to label axes and keys.")
     (license license:expat)))
 
+(define-public julia-simd
+  (package
+    (name "julia-simd")
+    (version "3.3.1")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/eschnett/SIMD.jl")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32 "1jiic2hcl9l6zh6jgqzbd3ik2girmgvni4bq65kdci5l12k9la68"))))
+    (build-system julia-build-system)
+    (home-page "https://github.com/eschnett/SIMD.jl")
+    (synopsis "Explicit SIMD vectorization")
+    (description "This package allows programmers to explicitly SIMD-vectorize
+their Julia code.  By exposing SIMD vector types and corresponding operations,
+the programmer can explicitly vectorize their code.  While this does not
+guarantee that the generated machine code is efficient, it relieves the
+compiler from determining whether it is legal to vectorize the code, deciding
+whether it is beneficial to do so, and rearranging the code to synthesize
+vector instructions.")
+    (license license:expat)))
+
 (define-public julia-simpletraits
   (package
     (name "julia-simpletraits")
-- 
2.33.1