From aec57fd0cead34b460abf2882598c5687b109184 Mon Sep 17 00:00:00 2001 From: Simon Pilgrim Date: Mon, 9 Dec 2024 14:04:40 +0000 Subject: [PATCH] [docs] Add a brief description of using -fveclib to enable some math library vectorizations Fixes #62283 --- llvm/docs/Vectorizers.rst | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/llvm/docs/Vectorizers.rst b/llvm/docs/Vectorizers.rst index c2beb1669c4e3..a4462e53edda0 100644 --- a/llvm/docs/Vectorizers.rst +++ b/llvm/docs/Vectorizers.rst @@ -345,6 +345,16 @@ instruction is available. f[i] = floorf(f[i]); } +Many of these math functions are only vectorizable if the file has been built +with a specified target vector library that provides a vector implemention +of that math function. Using clang, this is handled by the "-fveclib" command +line option with one of the following vector libraries: +"accelerate,libmvec,massv,svml,sleef,darwin_libsystem_m,armpl,amdlibm" + +.. code-block:: console + + $ clang ... -fno-math-errno -fveclib=libmvec file.c + Partial unrolling during vectorization ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^