master: Move assembly step first in make-host-2

snuglas via Sbcl-commits <[email protected]> Tue, 14 Jul 2026 18:06:29 +0000
Newsgroups gmane.lisp.steel-bank.cvs
Message-ID <[email protected]>
The branch "master" has been updated in SBCL:
       via  2d6b8ff746c131630320fa8679fa046ea0153fb3 (commit)
      from  83c7aafa1944032dc49ae46c95b2c69242361988 (commit)

- Log -----------------------------------------------------------------
commit 2d6b8ff746c131630320fa8679fa046ea0153fb3
Author: Douglas Katzman <[email protected]>
Date:   Tue Jul 14 17:25:03 2026 +0000

    Move assembly step first in make-host-2
    
    In my attempt to infer a somewhat graph-based compilation order rather than
    simply a linear order, my build was telling me that the assembly routines
    depended on output/ucd/* because they follow (by a lot) target-char linearly
    and therefore must depend on anything that target-char does. Obviously that's
    wrong. Putting the asm files first proves that they depend on no other file.
    
    I would not have been surprised if this failed the crossbuild test because
    some asm file depends on a constant that isn't defined until later,
    but it seems they're actually all fine this way.
---
 src/cold/build-order.lisp-expr | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/cold/build-order.lisp-expr b/src/cold/build-order.lisp-expr
index 9296f1ea0..f7143005b 100644
--- a/src/cold/build-order.lisp-expr
+++ b/src/cold/build-order.lisp-expr
@@ -43,6 +43,10 @@
 
  ("src/code/cross-early" :c-headers :not-target)
 
+ ;; assembly files generally don't depend on anything that hasn't already
+ ;; been baked in to the cross-compiler
+ ("src/assembly/master" :assem :not-host)
+
  ;; This comes early because it's useful for debugging everywhere.
  ("src/code/show" :c-headers)
  ("src/compiler/early-constantp" :c-headers)
@@ -416,8 +420,6 @@
  ("src/assembly/{arch}/array")
  ("src/assembly/{arch}/arith")
  ("src/assembly/{arch}/alloc")
- ;; assembly files are all loaded by genesis before any compiled files.
- ("src/assembly/master" :assem :not-host)
 
  ("src/compiler/float-tran")
  ("src/compiler/array-tran")

-----------------------------------------------------------------------


hooks/post-receive
-- 
SBCL