Raymond Toy pushed to branch issue-355-solaris-x86-fp-trap-handler at cmucl / cmucl
Commits:
-
82c50cbc
by Raymond Toy at 2024-09-07T06:41:04-07:00
1 changed file:
Changes:
... | ... | @@ -1265,7 +1265,8 @@ |
1265 | 1265 | |
1266 | 1266 | ;;;; Float mode hackery:
|
1267 | 1267 | |
1268 | -(deftype float-modes () '(unsigned-byte 24))
|
|
1268 | +(deftype x87-float-modes () '(unsigned-byte 32))
|
|
1269 | +(deftype sse2-float-modes () '(unsigned-byte 16))
|
|
1269 | 1270 | |
1270 | 1271 | ;; For the record, here is the format of the MXCSR register.
|
1271 | 1272 | ;;
|
... | ... | @@ -1288,8 +1289,8 @@ |
1288 | 1289 | ;; 0 invalid operation flag
|
1289 | 1290 | ;;
|
1290 | 1291 | ;; See below for rounding control
|
1291 | -(defknown sse2-floating-point-modes () float-modes (flushable))
|
|
1292 | -(defknown ((setf sse2-floating-point-modes)) (float-modes) float-modes)
|
|
1292 | +(defknown sse2-floating-point-modes () sse2-float-modes (flushable))
|
|
1293 | +(defknown ((setf sse2-floating-point-modes)) (sse2-float-modes) sse2-float-modes)
|
|
1293 | 1294 | |
1294 | 1295 | ;; Returns exactly the mxcsr register, except the masks are flipped
|
1295 | 1296 | ;; because we want exception enable flags, not masks.
|
... | ... | @@ -1375,9 +1376,9 @@ |
1375 | 1376 | ;; 10 double precision (53 bits)
|
1376 | 1377 | ;; 11 double extended precision (64 bits)
|
1377 | 1378 | |
1378 | -(defknown x87-floating-point-modes () float-modes (flushable))
|
|
1379 | -(defknown ((setf x87-floating-point-modes)) (float-modes)
|
|
1380 | - float-modes)
|
|
1379 | +(defknown x87-floating-point-modes () x87-float-modes (flushable))
|
|
1380 | +(defknown ((setf x87-floating-point-modes)) (x87-float-modes)
|
|
1381 | + x87-float-modes)
|
|
1381 | 1382 | |
1382 | 1383 | ;; Extract the control and status words from the FPU. The low 16 bits
|
1383 | 1384 | ;; contain the status word, and the high 16 bits contain the control.
|