projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
handle non-standard slot allocations when updating classes
[sbcl.git]
/
src
/
compiler
/
x86
/
insts.lisp
diff --git
a/src/compiler/x86/insts.lisp
b/src/compiler/x86/insts.lisp
index
c7e3005
..
720ad62
100644
(file)
--- a/
src/compiler/x86/insts.lisp
+++ b/
src/compiler/x86/insts.lisp
@@
-1285,6
+1285,11
@@
(emit-byte segment (if (eq size :byte) #b10110000 #b10110001))
(emit-ea segment dst (reg-tn-encoding src)))))
(emit-byte segment (if (eq size :byte) #b10110000 #b10110001))
(emit-ea segment dst (reg-tn-encoding src)))))
+(define-instruction pause (segment)
+ (:printer two-bytes ((op '(#xf3 #x90))))
+ (:emitter
+ (emit-byte segment #xf3)
+ (emit-byte segment #x90)))
\f
(defun emit-prefix (segment name)
(ecase name
\f
(defun emit-prefix (segment name)
(ecase name
@@
-3028,6
+3033,9
@@
((:single-float)
(aver (typep value 'single-float))
(cons :dword (ldb (byte 32 0) (single-float-bits value))))
((:single-float)
(aver (typep value 'single-float))
(cons :dword (ldb (byte 32 0) (single-float-bits value))))
+ ((:double-float-bits)
+ (aver (integerp value))
+ (cons :double-float (ldb (byte 64 0) value)))
((:double-float)
(aver (typep value 'double-float))
(cons :double-float
((:double-float)
(aver (typep value 'double-float))
(cons :double-float