Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SLP] Move some of X86 tests to common directory #107587

Merged
merged 1 commit into from
Sep 23, 2024

Conversation

ElvinaYakubova
Copy link
Contributor

Some of the tests from the X86 directory can be generalized to improve coverage for other architectures

@llvmbot
Copy link
Collaborator

llvmbot commented Sep 6, 2024

@llvm/pr-subscribers-llvm-transforms

Author: Elvina Yakubova (ElvinaYakubova)

Changes

Some of the tests from the X86 directory can be generalized to improve coverage for other architectures


Patch is 22.50 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/107587.diff

24 Files Affected:

  • (renamed) llvm/test/Transforms/SLPVectorizer/ext-int-reduced-not-operand.ll (+6-3)
  • (renamed) llvm/test/Transforms/SLPVectorizer/extended-vectorized-gathered-inst.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/external-user-instruction-minbitwidth.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/extractelement-insertpoint.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/extractlements-gathered-first-node.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/extracts-with-undefs.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/gather_extract_from_vectorbuild.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/gep-with-extractelement-many-users.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/insert-crash-index.ll ()
  • (renamed) llvm/test/Transforms/SLPVectorizer/insert-element-build-vector-const-undef.ll ()
  • (renamed) llvm/test/Transforms/SLPVectorizer/insert-element-build-vector-inseltpoison.ll ()
  • (renamed) llvm/test/Transforms/SLPVectorizer/insert-element-build-vector.ll (-3)
  • (renamed) llvm/test/Transforms/SLPVectorizer/insert-element-multiple-uses.ll ()
  • (renamed) llvm/test/Transforms/SLPVectorizer/insertelement-postpone.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/insertelement-uses-vectorized-index.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/int-bitcast-minbitwidth.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/jumbled_store_crash.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/minbitwidth-multiuse-with-insertelement.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/minbitwidth-node-with-multi-users.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/minbitwidth-user-not-min.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/multi-node-vectorized-insts.ll (+2-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/multi-uses-with-deps-in-first.ll (+3-1)
  • (renamed) llvm/test/Transforms/SLPVectorizer/one-element-vector.ll ()
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/ext-int-reduced-not-operand.ll b/llvm/test/Transforms/SLPVectorizer/ext-int-reduced-not-operand.ll
similarity index 71%
rename from llvm/test/Transforms/SLPVectorizer/X86/ext-int-reduced-not-operand.ll
rename to llvm/test/Transforms/SLPVectorizer/ext-int-reduced-not-operand.ll
index 2ff6785c0da640..d8021538252c82 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/ext-int-reduced-not-operand.ll
+++ b/llvm/test/Transforms/SLPVectorizer/ext-int-reduced-not-operand.ll
@@ -1,7 +1,10 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -slp-threshold=-99999 < %s | FileCheck %s
-; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -slp-threshold=-99999\
-; RUN: -slp-skip-early-profitability-check < %s | FileCheck %s --check-prefixes=FORCED
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -slp-threshold=-99999 < %s | FileCheck %s %}
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -slp-threshold=-99999\
+; RUN: -slp-skip-early-profitability-check < %s | FileCheck %s --check-prefixes=FORCED %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=aarch64-unknown-linux-gnu -slp-threshold=-99999 < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=aarch64-unknown-linux-gnu -slp-threshold=-99999\
+; RUN: -slp-skip-early-profitability-check < %s | FileCheck %s --check-prefixes=FORCED %}
 
 define i64 @wombat() {
 ; FORCED-LABEL: define i64 @wombat() {
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/extended-vectorized-gathered-inst.ll b/llvm/test/Transforms/SLPVectorizer/extended-vectorized-gathered-inst.ll
similarity index 91%
rename from llvm/test/Transforms/SLPVectorizer/X86/extended-vectorized-gathered-inst.ll
rename to llvm/test/Transforms/SLPVectorizer/extended-vectorized-gathered-inst.ll
index 2d028060f49143..94aa8de5fdb72c 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/extended-vectorized-gathered-inst.ll
+++ b/llvm/test/Transforms/SLPVectorizer/extended-vectorized-gathered-inst.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=aarch64-unknown-linux < %s | FileCheck %s %}
 
 define void @test(ptr %top) {
 ; CHECK-LABEL: define void @test(
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/external-user-instruction-minbitwidth.ll b/llvm/test/Transforms/SLPVectorizer/external-user-instruction-minbitwidth.ll
similarity index 90%
rename from llvm/test/Transforms/SLPVectorizer/X86/external-user-instruction-minbitwidth.ll
rename to llvm/test/Transforms/SLPVectorizer/external-user-instruction-minbitwidth.ll
index f58379b46dc19e..07dab9f53b1b0f 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/external-user-instruction-minbitwidth.ll
+++ b/llvm/test/Transforms/SLPVectorizer/external-user-instruction-minbitwidth.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=aarch64-unknown-linux-gnu < %s | FileCheck %s %}
 
 @e = global i8 0
 @c = global i16 0
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/extract-many-users-buildvector.ll b/llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
similarity index 94%
rename from llvm/test/Transforms/SLPVectorizer/X86/extract-many-users-buildvector.ll
rename to llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
index 87b1302e4cecf4..261ec2b3935d7e 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/extract-many-users-buildvector.ll
+++ b/llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 2
-; RUN: opt -S -passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S -passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S -passes=slp-vectorizer -mtriple=aarch64-unknown-linux-gnu < %s | FileCheck %s %}
 
 define i1 @test(float %0, double %1) {
 ; CHECK-LABEL: define i1 @test
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/extractelement-insertpoint.ll b/llvm/test/Transforms/SLPVectorizer/extractelement-insertpoint.ll
similarity index 84%
rename from llvm/test/Transforms/SLPVectorizer/X86/extractelement-insertpoint.ll
rename to llvm/test/Transforms/SLPVectorizer/extractelement-insertpoint.ll
index 8c51a907998a4b..94c361caf90fa5 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/extractelement-insertpoint.ll
+++ b/llvm/test/Transforms/SLPVectorizer/extractelement-insertpoint.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -passes=slp-vectorizer -mtriple=x86_64-grtev4-linux-gnu -o - < %s | FileCheck %s
+; RUN: %if x86_64-registered-target %{ opt -S -passes=slp-vectorizer -mtriple=x86_64-grtev4-linux-gnu -o - < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S -passes=slp-vectorizer -mtriple=aarch64-unknown-linux-gnu -o - < %s | FileCheck %s %}
 
 define i32 @crash() {
 ; CHECK-LABEL: @crash(
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/extractlements-gathered-first-node.ll b/llvm/test/Transforms/SLPVectorizer/extractlements-gathered-first-node.ll
similarity index 66%
rename from llvm/test/Transforms/SLPVectorizer/X86/extractlements-gathered-first-node.ll
rename to llvm/test/Transforms/SLPVectorizer/extractlements-gathered-first-node.ll
index d5f2cf7fc28c46..9afd47e18b72b4 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/extractlements-gathered-first-node.ll
+++ b/llvm/test/Transforms/SLPVectorizer/extractlements-gathered-first-node.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -S --passes=slp-vectorizer -slp-threshold=-99999 -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -slp-threshold=-99999 -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -slp-threshold=-99999 -mtriple=aarch64-unknown-linux-gnu < %s | FileCheck %s %}
 
 define void @test() {
 ; CHECK-LABEL: define void @test() {
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/extracts-with-undefs.ll b/llvm/test/Transforms/SLPVectorizer/extracts-with-undefs.ll
similarity index 92%
rename from llvm/test/Transforms/SLPVectorizer/X86/extracts-with-undefs.ll
rename to llvm/test/Transforms/SLPVectorizer/extracts-with-undefs.ll
index b6de2d4fbcb11f..dca34b681032c4 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/extracts-with-undefs.ll
+++ b/llvm/test/Transforms/SLPVectorizer/extracts-with-undefs.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt < %s -passes=slp-vectorizer -S -mtriple=x86_64-unknown-linux-gnu | FileCheck %s
+; RUN: %if x86-registered-target %{ opt < %s -passes=slp-vectorizer -S -mtriple=x86_64-unknown-linux-gnu | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt < %s -passes=slp-vectorizer -S -mtriple=aarch64-unknown-linux-gnu | FileCheck %s %}
 
 define void @test() {
 ; CHECK-LABEL: @test(
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/gather_extract_from_vectorbuild.ll b/llvm/test/Transforms/SLPVectorizer/gather_extract_from_vectorbuild.ll
similarity index 95%
rename from llvm/test/Transforms/SLPVectorizer/X86/gather_extract_from_vectorbuild.ll
rename to llvm/test/Transforms/SLPVectorizer/gather_extract_from_vectorbuild.ll
index dd5c52b99d00e8..c1ec9b8eeadff8 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/gather_extract_from_vectorbuild.ll
+++ b/llvm/test/Transforms/SLPVectorizer/gather_extract_from_vectorbuild.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -passes=slp-vectorizer -S -mtriple=x86_64 < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -passes=slp-vectorizer -S -mtriple=x86_64 < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -passes=slp-vectorizer -S -mtriple=aarch64 < %s | FileCheck %s %}
 ; Vectorization tree roots at vector build sequence (insertelement),
 ; SLP crashed on generating vector code for pair {%i4, 0.0} trying to produce
 ; a shuffle with %ins1 as a source because it was marked deleted
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/gep-with-extractelement-many-users.ll b/llvm/test/Transforms/SLPVectorizer/gep-with-extractelement-many-users.ll
similarity index 73%
rename from llvm/test/Transforms/SLPVectorizer/X86/gep-with-extractelement-many-users.ll
rename to llvm/test/Transforms/SLPVectorizer/gep-with-extractelement-many-users.ll
index cea95c11024976..996ed8791bbb32 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/gep-with-extractelement-many-users.ll
+++ b/llvm/test/Transforms/SLPVectorizer/gep-with-extractelement-many-users.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -slp-threshold=-99999 < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -slp-threshold=-99999 < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=aarch64-unknown-linux-gnu -slp-threshold=-99999 < %s | FileCheck %s %}
 
 define void @test() {
 ; CHECK-LABEL: define void @test() {
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/insert-crash-index.ll b/llvm/test/Transforms/SLPVectorizer/insert-crash-index.ll
similarity index 100%
rename from llvm/test/Transforms/SLPVectorizer/X86/insert-crash-index.ll
rename to llvm/test/Transforms/SLPVectorizer/insert-crash-index.ll
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-const-undef.ll b/llvm/test/Transforms/SLPVectorizer/insert-element-build-vector-const-undef.ll
similarity index 100%
rename from llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-const-undef.ll
rename to llvm/test/Transforms/SLPVectorizer/insert-element-build-vector-const-undef.ll
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll b/llvm/test/Transforms/SLPVectorizer/insert-element-build-vector-inseltpoison.ll
similarity index 100%
rename from llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll
rename to llvm/test/Transforms/SLPVectorizer/insert-element-build-vector-inseltpoison.ll
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll b/llvm/test/Transforms/SLPVectorizer/insert-element-build-vector.ll
similarity index 99%
rename from llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
rename to llvm/test/Transforms/SLPVectorizer/insert-element-build-vector.ll
index 18d5b09001762b..2bd1948444b72f 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
+++ b/llvm/test/Transforms/SLPVectorizer/insert-element-build-vector.ll
@@ -3,9 +3,6 @@
 ; RUN: opt -S -passes=slp-vectorizer -slp-threshold=0 < %s | FileCheck %s --check-prefixes=CHECK,NOTHRESHOLD
 ; RUN: opt -S -passes=slp-vectorizer -slp-threshold=-10000 -slp-min-tree-size=0 < %s | FileCheck %s --check-prefixes=CHECK,MINTREESIZE
 
-target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-n8:16:32:64-S128"
-target triple = "x86_64-apple-macosx10.8.0"
-
 define <4 x float> @simple_select(<4 x float> %a, <4 x float> %b, <4 x i32> %c) #0 {
 ; CHECK-LABEL: @simple_select(
 ; CHECK-NEXT:    [[TMP1:%.*]] = icmp ne <4 x i32> [[C:%.*]], zeroinitializer
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/insert-element-multiple-uses.ll b/llvm/test/Transforms/SLPVectorizer/insert-element-multiple-uses.ll
similarity index 100%
rename from llvm/test/Transforms/SLPVectorizer/X86/insert-element-multiple-uses.ll
rename to llvm/test/Transforms/SLPVectorizer/insert-element-multiple-uses.ll
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/insertelement-postpone.ll b/llvm/test/Transforms/SLPVectorizer/insertelement-postpone.ll
similarity index 90%
rename from llvm/test/Transforms/SLPVectorizer/X86/insertelement-postpone.ll
rename to llvm/test/Transforms/SLPVectorizer/insertelement-postpone.ll
index 3fc6fe9e60611a..1e4b598d9fe923 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/insertelement-postpone.ll
+++ b/llvm/test/Transforms/SLPVectorizer/insertelement-postpone.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -S -passes=slp-vectorizer -mtriple x86_64-unknown-linux-gnu < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S -passes=slp-vectorizer -mtriple x86_64-unknown-linux-gnu < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S -passes=slp-vectorizer -mtriple aarch64-unknown-linux-gnu < %s | FileCheck %s %}
 
 define <4 x double> @test(ptr %p2, double %i1754, double %i1781, double %i1778) {
 ; CHECK-LABEL: @test(
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/insertelement-uses-vectorized-index.ll b/llvm/test/Transforms/SLPVectorizer/insertelement-uses-vectorized-index.ll
similarity index 84%
rename from llvm/test/Transforms/SLPVectorizer/X86/insertelement-uses-vectorized-index.ll
rename to llvm/test/Transforms/SLPVectorizer/insertelement-uses-vectorized-index.ll
index 78b3f8b1012845..94f973e606436e 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/insertelement-uses-vectorized-index.ll
+++ b/llvm/test/Transforms/SLPVectorizer/insertelement-uses-vectorized-index.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
-; RUN: opt -S --passes=slp-vectorizer -slp-threshold=-10 < %s -mtriple=x86_64-pc-windows-msvc19.39.33523 | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -slp-threshold=-10 < %s -mtriple=x86_64-pc-windows-msvc19.39.33523 | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -slp-threshold=-10 < %s -mtriple=aarch64-unknown-linux-gnu | FileCheck %s %}
 
 define void @test(ptr %0) {
 ; CHECK-LABEL: define void @test(
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll b/llvm/test/Transforms/SLPVectorizer/int-bitcast-minbitwidth.ll
similarity index 82%
rename from llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
rename to llvm/test/Transforms/SLPVectorizer/int-bitcast-minbitwidth.ll
index 97e505f4319c6b..766deccf1250b8 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
+++ b/llvm/test/Transforms/SLPVectorizer/int-bitcast-minbitwidth.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -slp-threshold=-9 < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -slp-threshold=-9 < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=aarch64-unknown-linux-gnu -slp-threshold=-9 < %s | FileCheck %s %}
 
 define void @t(i64 %v) {
 ; CHECK-LABEL: define void @t(
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/jumbled_store_crash.ll b/llvm/test/Transforms/SLPVectorizer/jumbled_store_crash.ll
similarity index 95%
rename from llvm/test/Transforms/SLPVectorizer/X86/jumbled_store_crash.ll
rename to llvm/test/Transforms/SLPVectorizer/jumbled_store_crash.ll
index bb1aac8fb932c9..f53e22d89d5169 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/jumbled_store_crash.ll
+++ b/llvm/test/Transforms/SLPVectorizer/jumbled_store_crash.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -o - -S < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -o - -S < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt --passes=slp-vectorizer -mtriple=aarch64-unknown-linux-gnu -o - -S < %s | FileCheck %s %}
 
 @b = common dso_local global ptr null, align 8
 @e = common dso_local global float 0.000000e+00, align 4
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll b/llvm/test/Transforms/SLPVectorizer/minbitwidth-multiuse-with-insertelement.ll
similarity index 84%
rename from llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
rename to llvm/test/Transforms/SLPVectorizer/minbitwidth-multiuse-with-insertelement.ll
index 6051638562b59b..97341d1b490378 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
+++ b/llvm/test/Transforms/SLPVectorizer/minbitwidth-multiuse-with-insertelement.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -passes=slp-vectorizer -S -slp-threshold=-10 -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -passes=slp-vectorizer -S -slp-threshold=-10 -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -passes=slp-vectorizer -S -slp-threshold=-10 -mtriple=aarch64-unknown-linux-gnu < %s | FileCheck %s %}
 
 define void @test(i8 %0) {
 ; CHECK-LABEL: define void @test(
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-node-with-multi-users.ll b/llvm/test/Transforms/SLPVectorizer/minbitwidth-node-with-multi-users.ll
similarity index 91%
rename from llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-node-with-multi-users.ll
rename to llvm/test/Transforms/SLPVectorizer/minbitwidth-node-with-multi-users.ll
index ef07e337246632..a7f86292138907 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-node-with-multi-users.ll
+++ b/llvm/test/Transforms/SLPVectorizer/minbitwidth-node-with-multi-users.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=aarch64-unknown-linux-gnu < %s | FileCheck %s %}
 
 define void @test() {
 ; CHECK-LABEL: define void @test() {
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-user-not-min.ll b/llvm/test/Transforms/SLPVectorizer/minbitwidth-user-not-min.ll
similarity index 90%
rename from llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-user-not-min.ll
rename to llvm/test/Transforms/SLPVectorizer/minbitwidth-user-not-min.ll
index 50b19d01ad58f1..f07a2128dfeb48 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-user-not-min.ll
+++ b/llvm/test/Transforms/SLPVectorizer/minbitwidth-user-not-min.ll
@@ -1,5 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
-; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s
+; RUN: %if x86-registered-target %{ opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s %}
+; RUN: %if aarch64-registered-target %{ opt -S --passes=slp-vectorizer -m...
[truncated]

Comment on lines 3 to 4
; RUN: opt -S -passes=slp-vectorizer -slp-threshold=0 < %s | FileCheck %s --check-prefixes=CHECK,NOTHRESHOLD
; RUN: opt -S -passes=slp-vectorizer -slp-threshold=-10000 -slp-min-tree-size=0 < %s | FileCheck %s --check-prefixes=CHECK,MINTREESIZE
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These tests should be tuned for x86 and aarch64

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They are passing on other targets as well now, shouldn't we give it a try to enable for everything?

Copy link
Member

@alexey-bataev alexey-bataev Sep 6, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you removed tripple, it executes for the default target implementation. It is not aarch64 or x86, it just gives some default numbers. If you want to make it run for aarch64, need still to specify aarch64/x86 explicitly

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks, fixed this

@ElvinaYakubova ElvinaYakubova force-pushed the testsPorting branch 2 times, most recently from 4618246 to 04574fa Compare September 9, 2024 16:21
@ElvinaYakubova ElvinaYakubova merged commit 706e710 into llvm:main Sep 23, 2024
8 checks passed
@ElvinaYakubova ElvinaYakubova deleted the testsPorting branch September 24, 2024 09:04
augusto2112 pushed a commit to augusto2112/llvm-project that referenced this pull request Sep 26, 2024
Some of the tests from the X86 directory can be generalized to improve
coverage for other architectures
xgupta pushed a commit to xgupta/llvm-project that referenced this pull request Oct 4, 2024
Some of the tests from the X86 directory can be generalized to improve
coverage for other architectures
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants