[Libre-soc-isa] [Bug 923] New: we missed some important fp ops
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Thu Sep 8 08:50:21 BST 2022
https://bugs.libre-soc.org/show_bug.cgi?id=923
Bug ID: 923
Summary: we missed some important fp ops
Product: Libre-SOC's first SoC
Version: unspecified
Hardware: PC
OS: Linux
Status: CONFIRMED
Severity: major
Priority: ---
Component: Specification
Assignee: programmerjake at gmail.com
Reporter: programmerjake at gmail.com
CC: libre-soc-isa at lists.libre-soc.org
Blocks: 899
NLnet milestone: ---
reading through the opencl list of ops, I realized we forgot to add some fp
ops:
fmax
fmin
fmod
maxmag
minmag
remainder
out of those, imho we need fmin/fmax (all of the several variants), it would be
quite nice to have fmod/remainder and minmag/maxmag (all of the several
variants).
we also forgot erf/erfc/lgamma but they are uncommon enough that they should
just be left to software implementations.
the min/max/minmag/maxmag variants:
* the minNum/maxNum functions from ieee 754-2008 match the behavior of the VSX
xsmindp operation and avx512 vragess (maybe removed?) and armv8.2 fminnm. They
are used in risc-v fmin.s for <= v2.1 of the f extension. They are unspecified
for comparing signed zeros, we will want to treat +0 as greater than -0 to
match a lot of other implementations.
* the minimumNumber/maximumNumber functions from ieee 754-2019 match the
behavior of java and the VMX vminfp operation. They are used in risc-v fmin.s
for >= v2.2 of the f extension.
* the minimum/maximum functions from ieee 754-2019 are basically the
recommended default going forward, but a lot of programming languages don't use
them yet for backward compatibility reasons.
An explanation of why ieee 754 replaced minNum/maxNum with
minimum/maximum/minimumNumber/maximumNumber:
https://grouper.ieee.org/groups/msc/ANSI_IEEE-Std-754-2019/background/minNum_maxNum_Removal_Demotion_v3.pdf
Referenced Bugs:
https://bugs.libre-soc.org/show_bug.cgi?id=899
[Bug 899] implement additional Transcendentals in simulator
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Libre-SOC-ISA
mailing list