projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
1.0.44.13: x86: Implement ANCESTOR-FRAME VOPs.
[sbcl.git]
/
src
/
compiler
/
generic
/
vm-macs.lisp
diff --git
a/src/compiler/generic/vm-macs.lisp
b/src/compiler/generic/vm-macs.lisp
index
3bcb46c
..
8789a96
100644
(file)
--- a/
src/compiler/generic/vm-macs.lisp
+++ b/
src/compiler/generic/vm-macs.lisp
@@
-119,8
+119,10
@@
(constants `(def!constant ,size ,offset))
(exports size)))
(when alloc-trans
(constants `(def!constant ,size ,offset))
(exports size)))
(when alloc-trans
- (forms `(def-alloc ,alloc-trans ,offset ,variable-length-p ,widetag
- ,lowtag ',(inits))))
+ (forms `(def-alloc ,alloc-trans ,offset
+ ,(if variable-length-p :var-alloc :fixed-alloc)
+ ,widetag
+ ,lowtag ',(inits))))
`(progn
(eval-when (:compile-toplevel :load-toplevel :execute)
(%define-primitive-object
`(progn
(eval-when (:compile-toplevel :load-toplevel :execute)
(%define-primitive-object
@@
-141,8
+143,8
@@
`(%def-reffer ',name ,offset ,lowtag))
(defmacro def-setter (name offset lowtag)
`(%def-setter ',name ,offset ,lowtag))
`(%def-reffer ',name ,offset ,lowtag))
(defmacro def-setter (name offset lowtag)
`(%def-setter ',name ,offset ,lowtag))
-(defmacro def-alloc (name words variable-length-p header lowtag inits)
- `(%def-alloc ',name ,words ,variable-length-p ,header ,lowtag ,inits))
+(defmacro def-alloc (name words alloc-style header lowtag inits)
+ `(%def-alloc ',name ,words ,alloc-style ,header ,lowtag ,inits))
#!+compare-and-swap-vops
(defmacro def-casser (name offset lowtag)
`(%def-casser ',name ,offset ,lowtag))
#!+compare-and-swap-vops
(defmacro def-casser (name offset lowtag)
`(%def-casser ',name ,offset ,lowtag))
@@
-160,7
+162,7
@@
(in-package "SB!C")
;;; the maximum number of SCs in any implementation
(in-package "SB!C")
;;; the maximum number of SCs in any implementation
-(def!constant sc-number-limit 32)
+(def!constant sc-number-limit 40)
\f
;;; Modular functions
\f
;;; Modular functions
@@
-247,7
+249,7
@@
(check-type kind (member :untagged :tagged))
(check-type width unsigned-byte)
(dolist (arg lambda-list)
(check-type kind (member :untagged :tagged))
(check-type width unsigned-byte)
(dolist (arg lambda-list)
- (when (member arg lambda-list-keywords)
+ (when (member arg sb!xc:lambda-list-keywords)
(error "Lambda list keyword ~S is not supported for ~
modular function lambda lists." arg)))
`(progn
(error "Lambda list keyword ~S is not supported for ~
modular function lambda lists." arg)))
`(progn
@@
-276,7
+278,7
@@
(check-type name symbol)
(check-type kind (member :untagged :tagged))
(dolist (arg lambda-list)
(check-type name symbol)
(check-type kind (member :untagged :tagged))
(dolist (arg lambda-list)
- (when (member arg lambda-list-keywords)
+ (when (member arg sb!xc:lambda-list-keywords)
(error "Lambda list keyword ~S is not supported for ~
modular function lambda lists." arg)))
(with-unique-names (call args)
(error "Lambda list keyword ~S is not supported for ~
modular function lambda lists." arg)))
(with-unique-names (call args)