Skip to content

Commit e859266

Browse files
committed
no 0vs0 for minNum 2008
1 parent 9dd982b commit e859266

File tree

1 file changed

+17
-12
lines changed

1 file changed

+17
-12
lines changed

llvm/docs/LangRef.rst

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16096,38 +16096,44 @@ on working with qNaN/sNaN and +0.0/-0.0. Here is the list:
1609616096

1609716097
* - ``ISO C``
1609816098
- fmin/fmax
16099-
- none
1610016099
- fmininum/fmaximum
1610116100
- fminimum_num/fmaximum_num
1610216101

1610316102
* - ``IEEE754``
16104-
- none
16105-
- nimNUM/maxNUM (2008)
16103+
- nimNum/maxNum (2008)
1610616104
- minimum/maximum (2019)
1610716105
- minimumNumber/maximumNumber (2019)
1610816106

1610916107
* - ``+0.0 vs -0.0``
1611016108
- either one
1611116109
- +0.0 > -0.0
1611216110
- +0.0 > -0.0
16113-
- +0.0 > -0.0
1611416111

16115-
* - ``NUM/qNaN vs sNaN``
16112+
* - ``NUM vs sNaN``
16113+
- qNaN, invalid exception
16114+
- qNaN, invalid exception
16115+
- NUM, invalid exception
16116+
16117+
* - ``qNaN vs sNaN``
1611616118
- qNaN, invalid exception
1611716119
- qNaN, invalid exception
1611816120
- qNaN, invalid exception
16119-
- NUM/qNaN, invalid exception
1612016121

16121-
* - ``NUM/qNaN vs qNaN``
16122-
- NUM/qNaN, no excpetion
16123-
- NUM/qNaN, no excpetion
16124-
- qNaN, no excpetion
16125-
- NUM/qNaN, no excpetion
16122+
* - ``NUM vs qNaN``
16123+
- NUM, no exception
16124+
- qNaN, no exception
16125+
- NUM, no exception
1612616126

1612716127
LLVM Implementation:
1612816128
""""""""""""""""""""
1612916129

1613016130
LLVM implements all ISO C flavors as listed in this table.
16131+
Only basic intrinsics list here. The constrained version
16132+
ones may have different behaivor on exception.
16133+
16134+
Since some architectures implement minNum/maxNum with +0.0>-0.0,
16135+
so we define internal ISD::MINNUM_IEEE and ISD::MAXNUM_IEEE.
16136+
They will be helpful to implement minimumnum/maximumnum.
1613116137

1613216138
.. list-table::
1613316139
:header-rows: 1
@@ -16168,7 +16174,6 @@ LLVM implements all ISO C flavors as listed in this table.
1616816174
- larger(max)/smaller(min)
1616916175
- larger(max)/smaller(min)
1617016176

16171-
1617216177
.. _i_minnum:
1617316178

1617416179
'``llvm.minnum.*``' Intrinsic

0 commit comments

Comments
 (0)