Raymond Toy pushed to branch sparc64-dev at cmucl / cmucl
Commits:
-
0bb3de03
by Raymond Toy at 2018-01-01T09:03:08-08:00
-
dddfd33c
by Raymond Toy at 2018-01-01T09:04:05-08:00
3 changed files:
- src/compiler/sparc64/memory.lisp
- src/compiler/sparc64/move.lisp
- src/tools/cross-scripts/cross-x86-sparc64.lisp
Changes:
... | ... | @@ -28,6 +28,7 @@ |
28 | 28 |
(:variant-vars offset lowtag)
|
29 | 29 |
(:policy :fast-safe)
|
30 | 30 |
(:generator 4
|
31 |
+ (emit-not-implemented)
|
|
31 | 32 |
(loadw value object offset lowtag)))
|
32 | 33 |
;;;
|
33 | 34 |
(define-vop (cell-set)
|
... | ... | @@ -49,6 +50,7 @@ |
49 | 50 |
(:variant-vars base lowtag)
|
50 | 51 |
(:info offset)
|
51 | 52 |
(:generator 4
|
53 |
+ (emit-not-implemented)
|
|
52 | 54 |
(loadw value object (+ base offset) lowtag)))
|
53 | 55 |
;;;
|
54 | 56 |
(define-vop (slot-set)
|
... | ... | @@ -57,6 +59,7 @@ |
57 | 59 |
(:variant-vars base lowtag)
|
58 | 60 |
(:info offset)
|
59 | 61 |
(:generator 4
|
62 |
+ (emit-not-implemented)
|
|
60 | 63 |
(storew value object (+ base offset) lowtag)))
|
61 | 64 |
|
62 | 65 |
|
... | ... | @@ -81,6 +84,7 @@ |
81 | 84 |
(:variant-vars offset lowtag)
|
82 | 85 |
(:policy :fast-safe)
|
83 | 86 |
(:generator 5
|
87 |
+ (emit-not-implemented)
|
|
84 | 88 |
(sc-case index
|
85 | 89 |
((immediate zero)
|
86 | 90 |
(let ((offset (- (+ (if (sc-is index zero)
|
... | ... | @@ -41,6 +41,7 @@ |
41 | 41 |
(define-move-function (load-number 1) (vop x y)
|
42 | 42 |
((immediate zero)
|
43 | 43 |
(signed-reg unsigned-reg))
|
44 |
+ (not-implemented "LOAD-NUMBER")
|
|
44 | 45 |
(inst li y (tn-value x)))
|
45 | 46 |
|
46 | 47 |
#+(and sparc-v9 sparc-v8plus)
|
... | ... | @@ -51,10 +52,12 @@ |
51 | 52 |
|
52 | 53 |
(define-move-function (load-base-char 1) (vop x y)
|
53 | 54 |
((immediate) (base-char-reg))
|
55 |
+ (not-implemented "LOAD-BASE-CHAR")
|
|
54 | 56 |
(inst li y (char-code (tn-value x))))
|
55 | 57 |
|
56 | 58 |
(define-move-function (load-system-area-pointer 1) (vop x y)
|
57 | 59 |
((immediate) (sap-reg))
|
60 |
+ (not-implemented "LOAD-SYSTEM-AREA-POINTER")
|
|
58 | 61 |
(inst li y (sap-int (tn-value x))))
|
59 | 62 |
|
60 | 63 |
(define-move-function (load-constant 5) (vop x y)
|
... | ... | @@ -64,6 +67,7 @@ |
64 | 67 |
|
65 | 68 |
(define-move-function (load-stack 5) (vop x y)
|
66 | 69 |
((control-stack) (any-reg descriptor-reg))
|
70 |
+ (not-implemented "LOAD-STACK")
|
|
67 | 71 |
(load-stack-tn y x))
|
68 | 72 |
|
69 | 73 |
(define-move-function (load-number-stack 5) (vop x y)
|
... | ... | @@ -72,6 +76,7 @@ |
72 | 76 |
(signed-stack) (signed-reg)
|
73 | 77 |
(unsigned-stack) (unsigned-reg))
|
74 | 78 |
(let ((nfp (current-nfp-tn vop)))
|
79 |
+ (not-implemented "LOAD-NUMBER-STACK")
|
|
75 | 80 |
(loadw y nfp (tn-offset x))))
|
76 | 81 |
|
77 | 82 |
(define-move-function (store-stack 5) (vop x y)
|
... | ... | @@ -85,6 +90,7 @@ |
85 | 90 |
(signed-reg) (signed-stack)
|
86 | 91 |
(unsigned-reg) (unsigned-stack))
|
87 | 92 |
(let ((nfp (current-nfp-tn vop)))
|
93 |
+ (not-implemented "STORE-NUMBER-STACK")
|
|
88 | 94 |
(storew x nfp (tn-offset y))))
|
89 | 95 |
|
90 | 96 |
|
... | ... | @@ -169,6 +175,7 @@ |
169 | 175 |
(:arg-types tagged-num)
|
170 | 176 |
(:note _N"fixnum untagging")
|
171 | 177 |
(:generator 1
|
178 |
+ (emit-not-implemented)
|
|
172 | 179 |
(inst sran y x fixnum-tag-bits)))
|
173 | 180 |
|
174 | 181 |
;;;
|
... | ... | @@ -181,6 +188,7 @@ |
181 | 188 |
(:results (y :scs (signed-reg unsigned-reg)))
|
182 | 189 |
(:note _N"constant load")
|
183 | 190 |
(:generator 1
|
191 |
+ (emit-not-implemented)
|
|
184 | 192 |
(inst li y (tn-value x))))
|
185 | 193 |
|
186 | 194 |
;;;
|
... | ... | @@ -196,6 +204,7 @@ |
196 | 204 |
(:temporary (:scs (non-descriptor-reg)) temp)
|
197 | 205 |
(:generator 4
|
198 | 206 |
(let ((done (gen-label)))
|
207 |
+ (emit-not-implemented)
|
|
199 | 208 |
(inst andcc temp x fixnum-tag-mask)
|
200 | 209 |
(inst b :eq done)
|
201 | 210 |
(inst sran y x fixnum-tag-bits)
|
... | ... | @@ -238,6 +247,7 @@ |
238 | 247 |
(:result-types tagged-num)
|
239 | 248 |
(:note _N"fixnum tagging")
|
240 | 249 |
(:generator 1
|
250 |
+ (emit-not-implemented)
|
|
241 | 251 |
(inst slln y x fixnum-tag-bits)))
|
242 | 252 |
;;;
|
243 | 253 |
(define-move-vop move-from-word/fixnum :move
|
... | ... | @@ -253,6 +263,7 @@ |
253 | 263 |
(:temporary (:scs (non-descriptor-reg) :from (:argument 0)) x temp)
|
254 | 264 |
(:note _N"signed word to integer coercion")
|
255 | 265 |
(:generator 20
|
266 |
+ (emit-not-implemented)
|
|
256 | 267 |
(move x arg)
|
257 | 268 |
(let ((done (gen-label)))
|
258 | 269 |
;; Need to figure out if we have a fixnum or not, so look at the
|
... | ... | @@ -290,6 +301,7 @@ |
290 | 301 |
(:temporary (:scs (non-descriptor-reg) :from (:argument 0)) x temp)
|
291 | 302 |
(:note _N"unsigned word to integer coercion")
|
292 | 303 |
(:generator 20
|
304 |
+ (emit-not-implemented)
|
|
293 | 305 |
(move x arg)
|
294 | 306 |
(let ((done (gen-label))
|
295 | 307 |
(one-word (gen-label)))
|
... | ... | @@ -35,7 +35,7 @@ |
35 | 35 |
:relative-package-names ; Relative package names from Allegro
|
36 | 36 |
:conservative-float-type
|
37 | 37 |
:hash-new
|
38 |
- :random-mt19937 ; MT-19937 generator
|
|
38 |
+ :random-xoroshiro ; xoroshiro128+ generator
|
|
39 | 39 |
:cmu ; Announce this is CMUCL
|
40 | 40 |
:cmu20 :cmu20b ; Current version identifier
|
41 | 41 |
:modular-arith ; Modular arithmetic
|
... | ... | @@ -66,6 +66,7 @@ |
66 | 66 |
:pentium
|
67 | 67 |
:long-float
|
68 | 68 |
:new-random
|
69 |
+ :random-mt19937 ; MT-19937 generator
|
|
69 | 70 |
:small
|
70 | 71 |
:mp))
|
71 | 72 |
|