[PATCH] D93470: [VP] Binary floating-point intrinsics.

Fraser Cormack via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 15 01:48:44 PDT 2021


frasercrmck added inline comments.


================
Comment at: llvm/docs/LangRef.rst:17384
+      %r = call <4 x float> @llvm.vp.fadd.v4f32(<4 x float> %a, <4 x float> %b, <4 x i1> %mask, i32 %evl)
+      ;; For all lanes below %evl, %r is lane-wise equivalent to %also.r
+
----------------
I realise this inherits from the documentation of the integer intrinsics, but I was wondering if this can be expressed as being equivalent to `<%evl x float>` in the following example. Would that be any clearer that the intrinsic is conceptually working on vectors of length `%evl` isn't actually executing the lanes above `%evl` (as in `%t` below)?


================
Comment at: llvm/docs/LangRef.rst:17408
+
+Predicated floating-point addition of two vectors of floating-point values.
+
----------------
`addition` -> `subtraction`


================
Comment at: llvm/docs/LangRef.rst:17422
+
+The '``llvm.vp.fsub``' intrinsic performs floating-point addition (:ref:`add <i_fsub>`)
+of the first and second vector operand on each enabled lane.  The result on
----------------
same here: `addition` and maybe `add <i_fsub>`?


================
Comment at: llvm/docs/LangRef.rst:17457
+
+Predicated floating-point addition of two vectors of floating-point values.
+
----------------
`addition` -> `multiplication`


================
Comment at: llvm/docs/LangRef.rst:17471
+
+The '``llvm.vp.fmul``' intrinsic performs floating-point addition (:ref:`add <i_fmul>`)
+of the first and second vector operand on each enabled lane.  The result on
----------------
`addition` -> `multiplication`


================
Comment at: llvm/docs/LangRef.rst:17506
+
+Predicated floating-point addition of two vectors of floating-point values.
+
----------------
`addition` -> `division`


================
Comment at: llvm/docs/LangRef.rst:17520
+
+The '``llvm.vp.fdiv``' intrinsic performs floating-point addition (:ref:`add <i_fdiv>`)
+of the first and second vector operand on each enabled lane.  The result on
----------------
same here


================
Comment at: llvm/docs/LangRef.rst:17555
+
+Predicated floating-point addition of two vectors of floating-point values.
+
----------------
`addition` -> `remainder`


================
Comment at: llvm/docs/LangRef.rst:17569
+
+The '``llvm.vp.frem``' intrinsic performs floating-point addition (:ref:`add <i_frem>`)
+of the first and second vector operand on each enabled lane.  The result on
----------------
`addition` -> `remainder`


================
Comment at: llvm/include/llvm/IR/VPIntrinsics.def:162
+
+// Specialized helper macro for integer binary operators (%x, %y, %mask, %evl).
+#ifdef HELPER_REGISTER_BINARY_FP_VP
----------------
`integer` -> `floating-point`?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D93470/new/

https://reviews.llvm.org/D93470



More information about the llvm-commits mailing list