@@ -14713,6 +14713,47 @@ trapping or setting ``errno``.
14713
14713
When specified with the fast-math-flag 'afn', the result may be approximated
14714
14714
using a less accurate calculation.
14715
14715
14716
+ '``llvm.ldexp.*``' Intrinsic
14717
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^
14718
+
14719
+ Syntax:
14720
+ """""""
14721
+
14722
+ This is an overloaded intrinsic. You can use ``llvm.ldexp`` on any
14723
+ floating point or vector of floating point type. Not all targets support
14724
+ all types however.
14725
+
14726
+ ::
14727
+
14728
+ declare float @llvm.ldexp.f32.i32(float %Val, i32 %Exp)
14729
+ declare double @llvm.ldexp.f64.i32(double %Val, i32 %Exp)
14730
+ declare x86_fp80 @llvm.ldexp.f80.i32(x86_fp80 %Val, i32 %Exp)
14731
+ declare fp128 @llvm.ldexp.f128.i32(fp128 %Val, i32 %Exp)
14732
+ declare ppc_fp128 @llvm.ldexp.ppcf128.i32(ppc_fp128 %Val, i32 %Exp)
14733
+ declare <2 x float> @llvm.ldexp.v2f32.v2i32(<2 x float> %Val, <2 x i32> %Exp)
14734
+
14735
+ Overview:
14736
+ """""""""
14737
+
14738
+ The '``llvm.ldexp.*``' intrinsics perform the ldexp function.
14739
+
14740
+ Arguments:
14741
+ """"""""""
14742
+
14743
+ The first argument and the return value are :ref:`floating-point
14744
+ <t_floating>` or :ref:`vector <t_vector>` of floating-point values of
14745
+ the same type. The second argument is an integer with the same number
14746
+ of elements.
14747
+
14748
+ Semantics:
14749
+ """"""""""
14750
+
14751
+ This function multiplies the first argument by 2 raised to the second
14752
+ argument's power. If the first argument is NaN or infinite, the same
14753
+ value is returned. If the result underflows a zero with the same sign
14754
+ is returned. If the result overflows, the result is an infinity with
14755
+ the same sign.
14756
+
14716
14757
'``llvm.log.*``' Intrinsic
14717
14758
^^^^^^^^^^^^^^^^^^^^^^^^^^
14718
14759
@@ -24306,6 +24347,47 @@ This function returns the first value raised to the second power with an
24306
24347
unspecified sequence of rounding operations.
24307
24348
24308
24349
24350
+ '``llvm.experimental.constrained.ldexp``' Intrinsic
24351
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
24352
+
24353
+ Syntax:
24354
+ """""""
24355
+
24356
+ ::
24357
+
24358
+ declare <type0>
24359
+ @llvm.experimental.constrained.ldexp(<type0> <op1>, <type1> <op2>,
24360
+ metadata <rounding mode>,
24361
+ metadata <exception behavior>)
24362
+
24363
+ Overview:
24364
+ """""""""
24365
+
24366
+ The '``llvm.experimental.constrained.ldexp``' performs the ldexp function.
24367
+
24368
+
24369
+ Arguments:
24370
+ """"""""""
24371
+
24372
+ The first argument and the return value are :ref:`floating-point
24373
+ <t_floating>` or :ref:`vector <t_vector>` of floating-point values of
24374
+ the same type. The second argument is an integer with the same number
24375
+ of elements.
24376
+
24377
+
24378
+ The third and fourth arguments specify the rounding mode and exception
24379
+ behavior as described above.
24380
+
24381
+ Semantics:
24382
+ """"""""""
24383
+
24384
+ This function multiplies the first argument by 2 raised to the second
24385
+ argument's power. If the first argument is NaN or infinite, the same
24386
+ value is returned. If the result underflows a zero with the same sign
24387
+ is returned. If the result overflows, the result is an infinity with
24388
+ the same sign.
24389
+
24390
+
24309
24391
'``llvm.experimental.constrained.sin``' Intrinsic
24310
24392
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
24311
24393
0 commit comments