summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorNicolas Goaziou <mail@nicolasgoaziou.fr>2021-10-06 16:22:28 +0200
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2021-11-03 23:00:42 +0100
commitea7246bb9fda697995a69ddac6061063e4a77b2a (patch)
treea33a4f6bcc5a70cb5744a04b2824dfadf537f777 /gnu
parent91301b5a511b19213b7c4a84474f6e2b8309cc4e (diff)
gnu: Add rust-strength-reduce-0.2.
* gnu/packages/crates-io.scm (rust-strength-reduce-0.2): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/crates-io.scm24
1 files changed, 24 insertions, 0 deletions
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bd7b1e894c..b60516f968 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -48095,6 +48095,30 @@ UTF-8.")
"This package provides a streebog (GOST R 34.11-2012) hash function.")
(license (list license:expat license:asl2.0))))
+(define-public rust-strength-reduce-0.2
+ (package
+ (name "rust-strength-reduce")
+ (version "0.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "strength_reduce" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0m12phq654mfxpmh2h5akqkag5ha6nlhjc2bp9jwarr5r1qjzzx3"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page "http://github.com/ejmahler/strength_reduce")
+ (synopsis "Faster integer division and modulus operations")
+ (description "Strength_reduce implements integer division and modulo via
+@dfn{arithmetic strength reduction}. Modern processors can do multiplication
+and shifts much faster than division, and arithmetic strength reduction is an
+algorithm to transform divisions into multiplications and shifts. Compilers
+already perform this optimization for divisors that are known at compile time;
+this library enables this optimization for divisors that are only known at
+runtime.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-string-0.2
(package
(name "rust-string")