History log of /src/sys/arch/powerpc/fpu/fpu_implode.c |
Revision | | Date | Author | Comments |
1.24 |
| 14-Sep-2022 |
rin | Fix logic for FPSCR[OX]; set FPSCR[FI] (and therefore FPSCR[XX]).
|
1.23 |
| 14-Sep-2022 |
rin | Fix logic for FPSCR[UX]: - Correct FPSCR[FPRF] field when round to 0.0 or 0.0f. - Simplify.
|
1.22 |
| 04-Sep-2022 |
rin | Simplify logic to remove needless goto. NFC.
|
1.21 |
| 04-Sep-2022 |
rin | Fix logic for FI, FR, and FPRF fields of FPSCR.
They are not sticky bits and updated by arithmetic and round insns at the same time.
Comparison insns update only FPCC sub-field of FPRF.
For other insns, these field are left untouched.
Also, for single-precision insns, exception bits should be set by the first fpu_implode(), which rounds the value to float.
|
1.20 |
| 04-Sep-2022 |
rin | Fix debug printf. Unbreak DEBUG build.
|
1.19 |
| 04-Sep-2022 |
rin | Remove extra break.
|
1.18 |
| 02-Sep-2022 |
rin | fpu_implode(): Clear lower word for float just for sure.
|
1.17 |
| 02-Sep-2022 |
rin | Make fpu_explode() and fpu_implode() take uint64_t and uint64_t *, instead of register number, respectively. NFC.
|
1.16 |
| 02-Sep-2022 |
rin | Fix off-by-one error in exponent when round a double to the largest normalized value; QNaN was wrongly generated here.
|
1.15 |
| 02-Sep-2022 |
rin | Make fpu_ftod() return uint64_t value. NFC.
|
1.14 |
| 01-Sep-2022 |
rin | Set FPSCR[FPRF] for calculated result, for all instructions that are documented to update this field.
Exceptions are fcti{w,d}{,z}; FPSCR[FPRF] becomes undefined, according to Power ISA. We do not overwrite this field for these insns at the moment.
|
1.13 |
| 01-Sep-2022 |
rin | static-fy fpu_fto[ixsd](). NFC.
|
1.12 |
| 01-Sep-2022 |
rin | Further fix for fcti{w,d}{,z}.
- Treat {Q,S}NaN correctly. - Set exception bits appropriately. - Introduce round_int().
|
1.11 |
| 01-Sep-2022 |
rin | Remove stale comment.
|
1.10 |
| 30-Aug-2022 |
rin | Fix fcti{w,d}{,z}.
- Treat 64-bit integer correctly for fctid{,z}. - Respect round mode specified by FPSCR[RN].
XXX - Set FPSCR[FR] and [FI] appropriately. - Also set FPSCR[FPRF]? - fctid{,z} traps on powerpc32 (confirmed on 603e and G4).
|
1.9 |
| 30-Aug-2022 |
rin | Do not assert FPSCR[UX] when overflow.
|
1.8 |
| 28-Aug-2022 |
rin | u_int64_t --> uint64_t. No binary changes.
|
1.7 |
| 27-Jun-2020 |
rin | Sort headers. No functional changes intended.
|
1.6 |
| 11-Dec-2005 |
christos | merge ktrace-lwp.
|
1.5 |
| 27-Jul-2005 |
simonb | KNF nit.
|
1.4 |
| 27-Oct-2003 |
simonb | branches: 1.4.16; Remove (the now non-compiling) support for 128bit FP emulation, which isn't needed for PowerPC anyway.
|
1.3 |
| 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
|
1.2 |
| 15-Jul-2003 |
lukem | __KERNEL_RCSID()
|
1.1 |
| 13-Jun-2001 |
simonb | branches: 1.1.8; 1.1.24; Add a port to IBM's PPC405GP Reference Board (the "walnut") by Eduardo Horvath and Simon Burge of Wasabi Systems.
IBM 4xx series CPU features: - New pmap and revised trap handler. - Support on-chip timers, PCI controller, UARTs - Framework for on-chip ethernet and watchdog timer. General PowerPC features: - Add in-kernel PPC floating point emulation - New in{,4}_cksum that is between 1.5 and 5 times faster than the old version depending on CPU type. General changes: - Kernel support for generic dbsym-style symbols.
|
1.1.24.4 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.1.24.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.1.24.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.1.24.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.1.8.2 |
| 13-Jun-2001 |
simonb | Add a port to IBM's PPC405GP Reference Board (the "walnut") by Eduardo Horvath and Simon Burge of Wasabi Systems.
IBM 4xx series CPU features: - New pmap and revised trap handler. - Support on-chip timers, PCI controller, UARTs - Framework for on-chip ethernet and watchdog timer. General PowerPC features: - Add in-kernel PPC floating point emulation - New in{,4}_cksum that is between 1.5 and 5 times faster than the old version depending on CPU type. General changes: - Kernel support for generic dbsym-style symbols.
|
1.1.8.1 |
| 13-Jun-2001 |
simonb | file fpu_implode.c was added on branch nathanw_sa on 2001-06-13 06:01:48 +0000
|
1.4.16.1 |
| 21-Jun-2006 |
yamt | sync with head.
|