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 Fix #296: Fix disassembly of MOVD instruction
- - - - - df78595e by Raymond Toy at 2024-04-10T03:10:20+00:00 Merge branch 'issue-296-fix-movd-disassembly' into 'master'
Fix #296: Fix disassembly of MOVD instruction
Closes #296 and #300
See merge request cmucl/cmucl!207 - - - - - e88d7ffe by Raymond Toy at 2024-04-11T22:11:51+00:00 Fix #275: FP underflow in reader allows restart with 0
- - - - - 07c9c06b by Raymond Toy at 2024-04-11T22:11:55+00:00 Merge branch 'issue-275b-signal-float-underflow' into 'master'
Fix #275: FP underflow in reader allows restart with 0
Closes #275 and #287
See merge request cmucl/cmucl!197 - - - - - c4cfca89 by Raymond Toy at 2024-04-11T16:01:24-07:00 Merge branch 'master' into issue-293-restart-on-reader-fp-overflow
- - - - -
2 changed files:
- src/compiler/x86/insts.lisp - src/general-info/release-21f.md
Changes:
===================================== src/compiler/x86/insts.lisp ===================================== @@ -509,6 +509,14 @@ (print-byte-reg value stream dstate) (print-mem-access value stream t dstate)))
+(defun print-word-reg/mem (value stream dstate) + (declare (type (or list reg) value) + (type stream stream) + (type disassem:disassem-state dstate)) + (if (typep value 'reg) + (print-word-reg value stream dstate) + (print-mem-access value stream nil dstate))) + (defun print-label (value stream dstate) (declare (ignore dstate)) (princ (if (and (numberp value) (minusp value)) @@ -716,7 +724,11 @@ (disassem:define-argument-type byte-reg/mem :prefilter #'prefilter-reg/mem :printer #'print-byte-reg/mem) - +(disassem:define-argument-type word-reg/mem + ;; Like reg/mem but if the reg/mem field is a register, it's a word + ;; register. + :prefilter #'prefilter-reg/mem + :printer #'print-word-reg/mem) ;;; ;;; added by jrd ;;; @@ -3478,7 +3490,7 @@ ;;; We do not support the MMX version of this instruction. (define-instruction movd (segment dst src) (:printer ext-xmm-reg/mem ((prefix #x66) (op #x6e))) - (:printer ext-xmm-reg/mem ((prefix #x66) (op #x7e)) + (:printer ext-xmm-reg/mem ((prefix #x66) (op #x7e) (reg/mem nil :type 'word-reg/mem)) '(:name :tab reg/mem ", " reg)) (:emitter (cond ((xmm-register-p dst)
===================================== src/general-info/release-21f.md ===================================== @@ -56,6 +56,7 @@ public domain. * ~~#271~~ Update ASDF to 3.3.7 * ~~#272~~ Move scavenge code for static vectors to its own function * ~~#274~~ 1d99999999 hangs + * ~~#275~~ FP underflow in reader allows restarting with 0 * ~~#276~~ Implement xoroshiro128** generator for x86 * ~~#277~~ `float-ratio-float` returns 0 for numbers close to least-positive-float
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/da48651df72c0685a095cca...