diff --git a/test/autoschedulers/mullapudi2016/max_filter.cpp b/test/autoschedulers/mullapudi2016/max_filter.cpp index 0731e5960e68..4b8aef88378f 100644 --- a/test/autoschedulers/mullapudi2016/max_filter.cpp +++ b/test/autoschedulers/mullapudi2016/max_filter.cpp @@ -134,7 +134,7 @@ int main(int argc, char **argv) { if (Internal::get_llvm_version() >= 210 && Internal::get_llvm_version() < 220 && get_jit_target_from_environment().has_feature(Target::SVE2)) { - printf("[SKIP] LLVM 21 has known getFixedValue() assertions on SVE scalable types.\n"); + printf("[SKIP] LLVM 21 has known getFixedValue() assertion failures on SVE scalable types.\n"); return 0; } diff --git a/test/correctness/align_bounds.cpp b/test/correctness/align_bounds.cpp index f8a14424d240..9c083144a551 100644 --- a/test/correctness/align_bounds.cpp +++ b/test/correctness/align_bounds.cpp @@ -29,7 +29,7 @@ int main(int argc, char **argv) { if (Internal::get_llvm_version() >= 210 && Internal::get_llvm_version() < 220 && get_jit_target_from_environment().has_feature(Target::SVE2)) { - printf("[SKIP] LLVM 21 has known getFixedValue() assertions on SVE scalable types.\n"); + printf("[SKIP] LLVM 21 has known getFixedValue() assertion failures on SVE scalable types.\n"); return 0; } diff --git a/test/correctness/bound_small_allocations.cpp b/test/correctness/bound_small_allocations.cpp index 7216360c8d1d..49ca75906eaf 100644 --- a/test/correctness/bound_small_allocations.cpp +++ b/test/correctness/bound_small_allocations.cpp @@ -16,7 +16,7 @@ int main(int argc, char **argv) { if (Internal::get_llvm_version() >= 210 && Internal::get_llvm_version() < 220 && get_jit_target_from_environment().has_feature(Target::SVE2)) { - printf("[SKIP] LLVM 21 has known getFixedValue() assertions on SVE scalable types.\n"); + printf("[SKIP] LLVM 21 has known getFixedValue() assertion failures on SVE scalable types.\n"); return 0; } diff --git a/test/correctness/fit_function.cpp b/test/correctness/fit_function.cpp index e9c38df324ce..7a72854e0fc6 100644 --- a/test/correctness/fit_function.cpp +++ b/test/correctness/fit_function.cpp @@ -13,7 +13,7 @@ int main(int argc, char **argv) { if (Internal::get_llvm_version() >= 210 && Internal::get_llvm_version() < 220 && get_jit_target_from_environment().has_feature(Target::SVE2)) { - printf("[SKIP] LLVM 21 has known getFixedValue() assertions on SVE scalable types.\n"); + printf("[SKIP] LLVM 21 has known getFixedValue() assertion failures on SVE scalable types.\n"); return 0; } diff --git a/test/correctness/logical.cpp b/test/correctness/logical.cpp index c94b01b534f9..74f0ae233dd0 100644 --- a/test/correctness/logical.cpp +++ b/test/correctness/logical.cpp @@ -18,7 +18,7 @@ int main(int argc, char **argv) { if (Internal::get_llvm_version() >= 210 && Internal::get_llvm_version() < 220 && get_jit_target_from_environment().has_feature(Target::SVE2)) { - printf("[SKIP] LLVM 21 has known getFixedValue() assertions on SVE scalable types.\n"); + printf("[SKIP] LLVM 21 has known getFixedValue() assertion failures on SVE scalable types.\n"); return 0; } diff --git a/test/correctness/predicated_store_load.cpp b/test/correctness/predicated_store_load.cpp index 3a51b3440d87..2cf69af64d8e 100644 --- a/test/correctness/predicated_store_load.cpp +++ b/test/correctness/predicated_store_load.cpp @@ -493,7 +493,7 @@ int main(int argc, char **argv) { if (Internal::get_llvm_version() >= 210 && Internal::get_llvm_version() < 220 && t.has_feature(Target::SVE2)) { - printf("[SKIP] LLVM 21 has known getFixedValue() assertions on SVE scalable types.\n"); + printf("[SKIP] LLVM 21 has known getFixedValue() assertion failures on SVE scalable types.\n"); return 0; } diff --git a/test/correctness/strict_fma.cpp b/test/correctness/strict_fma.cpp index f5f736cd5940..e0d1ec2ebf26 100644 --- a/test/correctness/strict_fma.cpp +++ b/test/correctness/strict_fma.cpp @@ -94,6 +94,15 @@ int test() { } int main(int argc, char **argv) { + Target t = get_jit_target_from_environment(); + + // LLVM < 22 cannot widen non-native vector stores for SVE, hitting + // "LLVM ERROR: Unable to widen vector store". Fixed in LLVM 22 by: + // https://github.com/llvm/llvm-project/commit/8cf43aebc67b (PR #160515) + if (Internal::get_llvm_version() < 220 && t.has_feature(Target::SVE2)) { + printf("[SKIP] LLVM <22 cannot widen vector stores for SVE scalable types.\n"); + return 0; + } if (test() || test() || diff --git a/test/correctness/truncated_pyramid.cpp b/test/correctness/truncated_pyramid.cpp index 2bc53aca5aae..dc5d7b8fa65d 100644 --- a/test/correctness/truncated_pyramid.cpp +++ b/test/correctness/truncated_pyramid.cpp @@ -12,7 +12,7 @@ int main(int argc, char **argv) { if (Internal::get_llvm_version() >= 210 && Internal::get_llvm_version() < 220 && get_jit_target_from_environment().has_feature(Target::SVE2)) { - printf("[SKIP] LLVM 21 has known getFixedValue() assertions on SVE scalable types.\n"); + printf("[SKIP] LLVM 21 has known getFixedValue() assertion failures on SVE scalable types.\n"); return 0; } diff --git a/test/correctness/vectorize_nested.cpp b/test/correctness/vectorize_nested.cpp index d7d4336bb03f..9e54a2c2b7b8 100644 --- a/test/correctness/vectorize_nested.cpp +++ b/test/correctness/vectorize_nested.cpp @@ -283,7 +283,7 @@ int main(int argc, char **argv) { if (Internal::get_llvm_version() >= 210 && Internal::get_llvm_version() < 220 && get_jit_target_from_environment().has_feature(Target::SVE2)) { - printf("[SKIP] LLVM 21 has known getFixedValue() assertions on SVE scalable types.\n"); + printf("[SKIP] LLVM 21 has known getFixedValue() assertion failures on SVE scalable types.\n"); return 0; } diff --git a/test/performance/const_division.cpp b/test/performance/const_division.cpp index b036931feb2a..f993fbac156c 100644 --- a/test/performance/const_division.cpp +++ b/test/performance/const_division.cpp @@ -131,7 +131,7 @@ int main(int argc, char **argv) { if (Internal::get_llvm_version() >= 210 && Internal::get_llvm_version() < 220 && target.has_feature(Target::SVE2)) { - printf("[SKIP] LLVM 21 has known getFixedValue() assertions on SVE scalable types.\n"); + printf("[SKIP] LLVM 21 has known getFixedValue() assertion failures on SVE scalable types.\n"); return 0; }