compile: Build gnu/{packages,tests}/* with '-O1'.

* guix/build/compile.scm (optimization-options): Use '-O1' for the
simple case.
This commit is contained in:
Ludovic Courtès 2020-06-22 09:39:06 +02:00
parent a0dccc71a6
commit a0d419e639
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -100,10 +100,9 @@ (define (override-option option value lst)
(cond ((or (string-contains file "gnu/packages/") (cond ((or (string-contains file "gnu/packages/")
(string-contains file "gnu/tests/")) (string-contains file "gnu/tests/"))
;; Level 0 is good enough but partial evaluation helps preserve the ;; Use '-O1' to have partial evaluation and primitive inlining so we
;; "macro writer's bill of rights". ;; can honor the "macro writer's bill of rights".
(override-option #:partial-eval? #t (optimizations-for-level 1))
(optimizations-for-level 0)))
((string-contains file "gnu/services/") ((string-contains file "gnu/services/")
;; '-O2 -Ono-letrectify' compiles about ~20% faster than '-O2' for ;; '-O2 -Ono-letrectify' compiles about ~20% faster than '-O2' for
;; large files like gnu/services/mail.scm. ;; large files like gnu/services/mail.scm.