diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2016-02-27 09:06:18 +0000 |
---|---|---|
committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2016-02-27 09:06:18 +0000 |
commit | 25cdeb0940dfadaf0a3075f91605a662f4705d21 (patch) | |
tree | 0cd72685a6e2e8d0e029fc354169fd54e1ffa857 /docs/LanguageExtensions.rst | |
parent | fceda7d31062da61f20ac369843d390d9ff4fc20 (diff) |
Add __builtin_canonicalize
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@262122 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/LanguageExtensions.rst')
-rw-r--r-- | docs/LanguageExtensions.rst | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/docs/LanguageExtensions.rst b/docs/LanguageExtensions.rst index 2dbf223d68..baca28e8dc 100644 --- a/docs/LanguageExtensions.rst +++ b/docs/LanguageExtensions.rst @@ -1728,6 +1728,24 @@ convert their operands before performing the operation. Query for this feature with ``__has_builtin(__builtin_add_overflow)``, etc. +Floating point builtins +--------------------------------------- + +``__builtin_canonicalize`` +-------------------------- + +.. code-block:: c + + double __builtin_canonicalize(double); + float __builtin_canonicalizef(float); + long double__builtin_canonicalizel(long double); + +Returns the platform specific canonical encoding of a floating point +number. This canonicalization is useful for implementing certain +numeric primitives such as frexp. See `LLVM canonicalize intrinsic +<http://llvm.org/docs/LangRef.html#llvm-canonicalize-intrinsic>`_ for +more information on the semantics. + .. _langext-__c11_atomic: __c11_atomic builtins |