[PATCH] D45190: [LangRef] fix description and examples of fptrunc
Sanjay Patel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Apr 2 15:49:10 PDT 2018
spatel created this revision.
spatel added reviewers: efriedma, scanon, nagisa.
Herald added a subscriber: mcrosier.
As noted in PR36966:
https://bugs.llvm.org/show_bug.cgi?id=36966
The old description doesn't match what we do in code, so this just fixes the documentation to avoid confusion.
https://reviews.llvm.org/D45190
Files:
docs/LangRef.rst
Index: docs/LangRef.rst
===================================================================
--- docs/LangRef.rst
+++ docs/LangRef.rst
@@ -8371,18 +8371,17 @@
The '``fptrunc``' instruction casts a ``value`` from a larger
:ref:`floating-point <t_floating>` type to a smaller :ref:`floating-point
-<t_floating>` type. If the value cannot fit (i.e. overflows) within the
-destination type, ``ty2``, then the results are undefined. If the cast produces
-an inexact result, how rounding is performed (e.g. truncation, also known as
-round to zero) is undefined.
+<t_floating>` type.
+This instruction is assumed to execute in the default :ref:`floating-point
+environment <floatenv>`.
Example:
""""""""
.. code-block:: llvm
- %X = fptrunc double 123.0 to float ; yields float:123.0
- %Y = fptrunc double 1.0E+300 to float ; yields undefined
+ %X = fptrunc double 16777217.0 to float ; yields float:16777216.0
+ %Y = fptrunc double 1.0E+300 to half ; yields half:+infinity
'``fpext .. to``' Instruction
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45190.140700.patch
Type: text/x-patch
Size: 1087 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180402/ccf692d0/attachment.bin>
More information about the llvm-commits
mailing list