[PATCH] D154508: [TLI][AArch64] Add mappings to vectorized functions from ArmPL
mgabka via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 10 05:00:49 PDT 2023
mgabka added inline comments.
================
Comment at: llvm/test/Transforms/LoopVectorize/AArch64/armpl-calls.ll:1903-1905
+; NEON: [[TMP5:%.*]] = call <2 x double> @armpl_vldexpq_f64(<2 x double> [[TMP4:%.*]], <2 x i32> [[TMP4:%.*]])
+; SVE: [[TMP5:%.*]] = call <vscale x 2 x double> @armpl_svldexp_f64_x(<vscale x 2 x double> [[TMP4:%.*]], <vscale x 2 x i32> [[TMP4:%.*]], <vscale x 2 x i1> {{.*}})
+; CHECK: ret void
----------------
paulwalker-arm wrote:
> This is not the interface ArmPL implements for vector `ldexp` functions. ArmPL requires the integer operand to be a scalar. I think the mappings should be removed until either ArmPL matches the interface currently expected or LoopVectorize gains the smarts to support scalar operands.
good catch, I must admit I wasn't checking header files from armpl, was hoping that the interface is matching scalar definitions, so:
float ldexpf( float arg, int exp );
double ldexp( double arg, int exp );
I will remove the mappings together with the tests
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D154508/new/
https://reviews.llvm.org/D154508
More information about the llvm-commits
mailing list