[Openmcl-cvs-notifications] r14957 - /trunk/source/compiler/ARM/arm-asm.lisp
gb at clozure.com
gb at clozure.com
Mon Aug 29 19:37:50 CDT 2011
Author: gb
Date: Mon Aug 29 19:37:50 2011
New Revision: 14957
Log:
fldmiad definition: count operand is :DRCOUNT
PARSE-IMM16-OPERAND: allow quote/fixnum syntax.
Modified:
trunk/source/compiler/ARM/arm-asm.lisp
Modified: trunk/source/compiler/ARM/arm-asm.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/compiler/ARM/arm-asm.lisp (original)
+++ trunk/source/compiler/ARM/arm-asm.lisp Mon Aug 29 19:37:50 2011
@@ -823,7 +823,7 @@
#x0cb00a00
#x0fb00f00
())
- (define-arm-instruction fldmiad (:dd :rnw :srcount)
+ (define-arm-instruction fldmiad (:dd :rnw :drcount)
#x0cb00b00
#x0fb00f00
()) =
@@ -1321,11 +1321,14 @@
=
(defun parse-imm16-operand (form instruction)
(unless (and (consp form)
- (eq (car form) :$)
+ (or (eq (car form) :$)
+ (eq (car form) 'quote))
(consp (cdr form))
(null (cddr form)))
(error "Bad 16-bit immediate operand: ~s" form))
(let* ((val (eval (cadr form))))
+ (when (eq (car form) 'quote)
+ (setq val (ash val arm::fixnumshift)))
(set-field-value instruction (byte 12 0) (ldb (byte 12 0) val))
(set-field-value instruction (byte 4 16) (ldb (byte 4 12) val))))
=
More information about the Openmcl-cvs-notifications
mailing list