Raymond Toy pushed to branch issue-293-restart-on-reader-fp-overflow at cmucl / cmucl
Commits:
-
0cbb2264
by Raymond Toy at 2024-04-10T03:10:16+00:00
-
df78595e
by Raymond Toy at 2024-04-10T03:10:20+00:00
-
e88d7ffe
by Raymond Toy at 2024-04-11T22:11:51+00:00
-
07c9c06b
by Raymond Toy at 2024-04-11T22:11:55+00:00
-
c4cfca89
by Raymond Toy at 2024-04-11T16:01:24-07:00
2 changed files:
Changes:
... | ... | @@ -509,6 +509,14 @@ |
509 | 509 | (print-byte-reg value stream dstate)
|
510 | 510 | (print-mem-access value stream t dstate)))
|
511 | 511 | |
512 | +(defun print-word-reg/mem (value stream dstate)
|
|
513 | + (declare (type (or list reg) value)
|
|
514 | + (type stream stream)
|
|
515 | + (type disassem:disassem-state dstate))
|
|
516 | + (if (typep value 'reg)
|
|
517 | + (print-word-reg value stream dstate)
|
|
518 | + (print-mem-access value stream nil dstate)))
|
|
519 | + |
|
512 | 520 | (defun print-label (value stream dstate)
|
513 | 521 | (declare (ignore dstate))
|
514 | 522 | (princ (if (and (numberp value) (minusp value))
|
... | ... | @@ -716,7 +724,11 @@ |
716 | 724 | (disassem:define-argument-type byte-reg/mem
|
717 | 725 | :prefilter #'prefilter-reg/mem
|
718 | 726 | :printer #'print-byte-reg/mem)
|
719 | - |
|
727 | +(disassem:define-argument-type word-reg/mem
|
|
728 | + ;; Like reg/mem but if the reg/mem field is a register, it's a word
|
|
729 | + ;; register.
|
|
730 | + :prefilter #'prefilter-reg/mem
|
|
731 | + :printer #'print-word-reg/mem)
|
|
720 | 732 | ;;;
|
721 | 733 | ;;; added by jrd
|
722 | 734 | ;;;
|
... | ... | @@ -3478,7 +3490,7 @@ |
3478 | 3490 | ;;; We do not support the MMX version of this instruction.
|
3479 | 3491 | (define-instruction movd (segment dst src)
|
3480 | 3492 | (:printer ext-xmm-reg/mem ((prefix #x66) (op #x6e)))
|
3481 | - (:printer ext-xmm-reg/mem ((prefix #x66) (op #x7e))
|
|
3493 | + (:printer ext-xmm-reg/mem ((prefix #x66) (op #x7e) (reg/mem nil :type 'word-reg/mem))
|
|
3482 | 3494 | '(:name :tab reg/mem ", " reg))
|
3483 | 3495 | (:emitter
|
3484 | 3496 | (cond ((xmm-register-p dst)
|
... | ... | @@ -56,6 +56,7 @@ public domain. |
56 | 56 | * ~~#271~~ Update ASDF to 3.3.7
|
57 | 57 | * ~~#272~~ Move scavenge code for static vectors to its own function
|
58 | 58 | * ~~#274~~ 1d99999999 hangs
|
59 | + * ~~#275~~ FP underflow in reader allows restarting with 0
|
|
59 | 60 | * ~~#276~~ Implement xoroshiro128** generator for x86
|
60 | 61 | * ~~#277~~ `float-ratio-float` returns 0 for numbers close to
|
61 | 62 | least-positive-float
|