[llvm] [TLI][NFC] Autogenerate vectorized libcall tests for SLEEF/ArmPL. (PR #76146)

Maciej Gabka via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 21 05:35:52 PST 2023


================
@@ -1,21 +1,23 @@
-; RUN: opt -vector-library=ArmPL -passes=inject-tli-mappings,loop-vectorize -S < %s | FileCheck %s --check-prefixes=CHECK,NEON
-; RUN: opt -mattr=+sve -vector-library=ArmPL -passes=inject-tli-mappings,loop-vectorize -S < %s | FileCheck %s --check-prefixes=CHECK,SVE
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --filter "call.*(cos|sin|tan|cbrt|erf|^exp|gamma|log|sqrt|copysign|dim|min|mod|hypot|nextafter|pow|fma|mod)" --version 4
+; RUN: opt -vector-library=ArmPL -passes=inject-tli-mappings,loop-vectorize,simplifycfg -prefer-predicate-over-epilogue=predicate-dont-vectorize -force-vector-interleave=1 -S < %s | FileCheck %s --check-prefix=NEON
----------------
mgabka wrote:

could you remove the predicate-over-epilogue from the non SVE line?
it is a mistake which went it as part or https://github.com/llvm/llvm-project/pull/75803/files#diff-bdb8956df43bc957bdb15838dc8eced603c00f9a96c68d4659a0486c7994d2f6

SLEEF nor ArmPL provides masked vector functions, so this won't work as expected.

The LV tests should check if the TLI mappings are utilised, and since for neon we have only mappings to non masked functions then vectorisation will happen when mask is not required.

When the new mappings will be added then we can add new run line.


https://github.com/llvm/llvm-project/pull/76146


More information about the llvm-commits mailing list