diff options
author | David Sherwood <david.sherwood@arm.com> | 2025-04-17 08:44:47 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-17 08:44:47 +0100 |
commit | 1cf9acdb750612985674a0349ed607768e1edc6d (patch) | |
tree | db551101bac799f2419ca2e9d330b61592b77fa5 /llvm/unittests/Analysis | |
parent | 34f9ddf1ce2d775d8df1ca9c9806710f3ba8361d (diff) | |
download | llvm-1cf9acdb750612985674a0349ed607768e1edc6d.zip llvm-1cf9acdb750612985674a0349ed607768e1edc6d.tar.gz llvm-1cf9acdb750612985674a0349ed607768e1edc6d.tar.bz2 |
[TLI] Use AArch64 vector calling convention for ArmPL routines (#135790)
Some ArmPL vector math routines that operate on fixed-width
vector types obey the aarch64_vector_pcs calling convention,
e.g. armpl_vsinq_f64, etc. This patch adds support for
functions in the TLI to specify an optional calling
convention to be added to the declared function. Once this
patch lands I intend to follow up with a vectoriser patch
that adds this optional calling convention when invoking the
vector library variant from the loop vectoriser.
Diffstat (limited to 'llvm/unittests/Analysis')
-rw-r--r-- | llvm/unittests/Analysis/ReplaceWithVecLibTest.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/unittests/Analysis/ReplaceWithVecLibTest.cpp b/llvm/unittests/Analysis/ReplaceWithVecLibTest.cpp index d97549c..31e0263 100644 --- a/llvm/unittests/Analysis/ReplaceWithVecLibTest.cpp +++ b/llvm/unittests/Analysis/ReplaceWithVecLibTest.cpp @@ -97,7 +97,7 @@ declare <vscale x 4 x float> @llvm.powi.f32.i32(<vscale x 4 x float>, i32) #0 TEST_F(ReplaceWithVecLibTest, TestValidMapping) { VecDesc CorrectVD = {"llvm.powi.f32.i32", "_ZGVsMxvu_powi", ElementCount::getScalable(4), /*Masked*/ true, - "_ZGVsMxvu"}; + "_ZGVsMxvu", /* CC = */ std::nullopt}; EXPECT_EQ(run(CorrectVD, IR), "Intrinsic calls replaced with vector libraries: 1"); } @@ -107,9 +107,9 @@ TEST_F(ReplaceWithVecLibTest, TestValidMapping) { TEST_F(ReplaceWithVecLibTest, TestInvalidMapping) { VecDesc IncorrectVD = {"llvm.powi.f32.i32", "_ZGVsMxvv_powi", ElementCount::getScalable(4), /*Masked*/ true, - "_ZGVsMxvv"}; + "_ZGVsMxvv", /* CC = */ std::nullopt}; EXPECT_EQ(run(IncorrectVD, IR), "replace-with-veclib: Will not replace: llvm.powi.f32.i32. Wrong " "type at index 1: i32"); } -#endif
\ No newline at end of file +#endif |