--- /dev/null
+! Copyright (C) 2007, 2009 Slava Pestov.
+! See http://factorcode.org/license.txt for BSD license.
+USING: alien arrays byte-arrays kernel layouts math namespaces
+quotations strings words ;
+
+16 data-alignment set
+
+0b1111 tag-mask set
+4 tag-bits set
+
+32 mega-cache-size set
+
+! Type tags, should be kept in sync with:
+! vm/layouts.hpp
+H{
+ { fixnum 0 }
+ { POSTPONE: f 1 }
+ { array 2 }
+ { float 3 }
+ { quotation 4 }
+ { bignum 5 }
+ { alien 6 }
+ { tuple 7 }
+ { wrapper 8 }
+ { byte-array 9 }
+ { callstack 10 }
+ { string 11 }
+ { word 12 }
+ { dll 13 }
+} type-numbers set
+
+14 num-types set
+
+2 header-bits set
+++ /dev/null
-Slava Pestov
+++ /dev/null
-! Copyright (C) 2007, 2009 Slava Pestov.
-! See http://factorcode.org/license.txt for BSD license.
-USING: alien arrays byte-arrays kernel layouts math namespaces
-quotations strings words ;
-
-16 data-alignment set
-
-0b1111 tag-mask set
-4 tag-bits set
-
-32 mega-cache-size set
-
-! Type tags, should be kept in sync with:
-! vm/layouts.hpp
-H{
- { fixnum 0 }
- { POSTPONE: f 1 }
- { array 2 }
- { float 3 }
- { quotation 4 }
- { bignum 5 }
- { alien 6 }
- { tuple 7 }
- { wrapper 8 }
- { byte-array 9 }
- { callstack 10 }
- { string 11 }
- { word 12 }
- { dll 13 }
-} type-numbers set
-
-14 num-types set
-
-2 header-bits set
+++ /dev/null
-Description of low-level object layout for image generation
+++ /dev/null
-USING: bootstrap.image.private effects help.markup help.syntax strings ;
-IN: bootstrap.primitives
-
-ARTICLE: "bootstrap.primitives" "Bootstrap primitives"
-"A script file run to create the bootstrap image. Also see the vocab " { $link "bootstrap.image.primitives" } "." ;
-
-ABOUT: "bootstrap.primitives"
architecture get asm-file parse-file
-"vocab:bootstrap/layouts/layouts.factor" parse-file
+"vocab:bootstrap/layouts.factor" parse-file
! Now we have ( syntax-quot arch-quot layouts-quot ) on the stack
"vocabs.loader" require
"syntax" require
- "bootstrap.layouts" require
+
+ "vocab:bootstrap/layouts.factor" parse-file %
[
f parser-quiet? set-global
static const cell data_alignment = 16;
-// Must match leaf-stack-frame-size in core/layouts/layouts.factor
+// Must match leaf-stack-frame-size in core/bootstrap/layouts.factor
#define LEAF_FRAME_SIZE 16
#define WORD_SIZE (signed)(sizeof(cell) * 8)
#define RETAG(x, tag) (UNTAG(x) | (tag))
// Type tags, should be kept in sync with:
-// core/bootstrap/layouts/layouts.factor
+// core/bootstrap/layouts.factor
#define FIXNUM_TYPE 0
#define F_TYPE 1
#define ARRAY_TYPE 2