xiongji90 updated this revision to Diff 506472. xiongji90 added a comment. Combine description of __builtin_flt_rounds and __builtin_set_flt_rounds
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D146188/new/ https://reviews.llvm.org/D146188 Files: clang/docs/LanguageExtensions.rst clang/docs/ReleaseNotes.rst Index: clang/docs/ReleaseNotes.rst =================================================================== --- clang/docs/ReleaseNotes.rst +++ clang/docs/ReleaseNotes.rst @@ -272,6 +272,7 @@ - Add ``__builtin_elementwise_log2`` builtin for floating point types only. - Add ``__builtin_elementwise_exp`` builtin for floating point types only. - Add ``__builtin_elementwise_exp2`` builtin for floating point types only. +- Add ``__builtin_set_flt_rounds`` builtin for X86, x86_64, Arm and AArch64 only. AST Matchers ------------ Index: clang/docs/LanguageExtensions.rst =================================================================== --- clang/docs/LanguageExtensions.rst +++ clang/docs/LanguageExtensions.rst @@ -3246,7 +3246,7 @@ double __builtin_canonicalize(double); float __builtin_canonicalizef(float); - long double__builtin_canonicalizel(long double); + long double __builtin_canonicalizel(long double); Returns the platform specific canonical encoding of a floating point number. This canonicalization is useful for implementing certain @@ -3254,6 +3254,25 @@ <https://llvm.org/docs/LangRef.html#llvm-canonicalize-intrinsic>`_ for more information on the semantics. +``__builtin_flt_rounds`` and ``__builtin_set_flt_rounds`` +--------------------------------------------------------- + +.. code-block:: c + + int __builtin_flt_rounds(); + void __builtin_set_flt_rounds(int); + +Returns and sets current rounding mode. Encoding of the returned values and +input parameter is same as the result of FLT_ROUNDS, specified by C standard: +0 - toward zero +1 - to nearest, ties to even +2 - toward positive infinity +3 - toward negative infinity +4 - to nearest, ties away from zero +The effect of passing some other value to ``__builtin_flt_rounds`` is +implementation-defined. ``__builtin_set_flt_rounds`` is restricted to work on +X86 and Arm targets currently. + String builtins ---------------
Index: clang/docs/ReleaseNotes.rst =================================================================== --- clang/docs/ReleaseNotes.rst +++ clang/docs/ReleaseNotes.rst @@ -272,6 +272,7 @@ - Add ``__builtin_elementwise_log2`` builtin for floating point types only. - Add ``__builtin_elementwise_exp`` builtin for floating point types only. - Add ``__builtin_elementwise_exp2`` builtin for floating point types only. +- Add ``__builtin_set_flt_rounds`` builtin for X86, x86_64, Arm and AArch64 only. AST Matchers ------------ Index: clang/docs/LanguageExtensions.rst =================================================================== --- clang/docs/LanguageExtensions.rst +++ clang/docs/LanguageExtensions.rst @@ -3246,7 +3246,7 @@ double __builtin_canonicalize(double); float __builtin_canonicalizef(float); - long double__builtin_canonicalizel(long double); + long double __builtin_canonicalizel(long double); Returns the platform specific canonical encoding of a floating point number. This canonicalization is useful for implementing certain @@ -3254,6 +3254,25 @@ <https://llvm.org/docs/LangRef.html#llvm-canonicalize-intrinsic>`_ for more information on the semantics. +``__builtin_flt_rounds`` and ``__builtin_set_flt_rounds`` +--------------------------------------------------------- + +.. code-block:: c + + int __builtin_flt_rounds(); + void __builtin_set_flt_rounds(int); + +Returns and sets current rounding mode. Encoding of the returned values and +input parameter is same as the result of FLT_ROUNDS, specified by C standard: +0 - toward zero +1 - to nearest, ties to even +2 - toward positive infinity +3 - toward negative infinity +4 - to nearest, ties away from zero +The effect of passing some other value to ``__builtin_flt_rounds`` is +implementation-defined. ``__builtin_set_flt_rounds`` is restricted to work on +X86 and Arm targets currently. + String builtins ---------------
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits