@@ -15748,16 +15748,17 @@ all types however.
15748
15748
15749
15749
::
15750
15750
15751
- declare float @llvm.atan2.f32(float %X , float %Y )
15752
- declare double @llvm.atan2.f64(double %X , double %Y )
15753
- declare x86_fp80 @llvm.atan2.f80(x86_fp80 %X , x86_fp80 %Y )
15754
- declare fp128 @llvm.atan2.f128(fp128 %X , fp128 %Y )
15755
- declare ppc_fp128 @llvm.atan2.ppcf128(ppc_fp128 %X , ppc_fp128 %Y )
15751
+ declare float @llvm.atan2.f32(float %Y , float %X )
15752
+ declare double @llvm.atan2.f64(double %Y , double %X )
15753
+ declare x86_fp80 @llvm.atan2.f80(x86_fp80 %Y , x86_fp80 %X )
15754
+ declare fp128 @llvm.atan2.f128(fp128 %Y , fp128 %X )
15755
+ declare ppc_fp128 @llvm.atan2.ppcf128(ppc_fp128 %Y , ppc_fp128 %X )
15756
15756
15757
15757
Overview:
15758
15758
"""""""""
15759
15759
15760
- The '``llvm.atan2.*``' intrinsics return the arctangent of the operand.
15760
+ The '``llvm.atan2.*``' intrinsics return the arctangent of ``Y/X`` accounting
15761
+ for the quadrant.
15761
15762
15762
15763
Arguments:
15763
15764
""""""""""
@@ -27259,6 +27260,42 @@ This function returns the arctangent of the specified operand, returning the
27259
27260
same values as the libm ``atan`` functions would, and handles error
27260
27261
conditions in the same way.
27261
27262
27263
+ '``llvm.experimental.constrained.atan2``' Intrinsic
27264
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
27265
+
27266
+ Syntax:
27267
+ """""""
27268
+
27269
+ ::
27270
+
27271
+ declare <type>
27272
+ @llvm.experimental.constrained.atan2(<type> <op1>,
27273
+ <type> <op2>,
27274
+ metadata <rounding mode>,
27275
+ metadata <exception behavior>)
27276
+
27277
+ Overview:
27278
+ """""""""
27279
+
27280
+ The '``llvm.experimental.constrained.atan2``' intrinsic returns the arctangent
27281
+ of ``<op1>`` divided by ``<op2>`` accounting for the quadrant.
27282
+
27283
+ Arguments:
27284
+ """"""""""
27285
+
27286
+ The first two arguments and the return value are floating-point numbers of the
27287
+ same type.
27288
+
27289
+ The third and fourth arguments specify the rounding mode and exception
27290
+ behavior as described above.
27291
+
27292
+ Semantics:
27293
+ """"""""""
27294
+
27295
+ This function returns the quadrant-specific arctangent using the specified
27296
+ operands, returning the same values as the libm ``atan2`` functions would, and
27297
+ handles error conditions in the same way.
27298
+
27262
27299
'``llvm.experimental.constrained.sinh``' Intrinsic
27263
27300
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
27264
27301
0 commit comments