[committed] Add check_vect in a testcase

Message ID c6e25a36-e2e8-4787-86bc-885faa1f0acc@AZ-NEU-EX03.Arm.com
State Not Applicable
Headers
Series [committed] Add check_vect in a testcase |

Checks

Context Check Description
snail/gcc-patch-check fail Git am fail log

Commit Message

Matthew Malcomson July 26, 2023, 3:58 p.m. UTC
  Also reformat a comment that had too long lines.
Commit c5bd0e5870a introduced both these problems to fix.

Committed as obvious after ensuring that when running the testcase on
AArch64 it still fails before the original c5bd0e5870a commit and passes
after it.

gcc/ChangeLog:

	* tree-vect-stmts.cc (get_group_load_store_type): Reformat
	comment.

gcc/testsuite/ChangeLog:

	* gcc.dg/vect/vect-multi-peel-gaps.c: Add `check_vect` call into
	`main` of this testcase.



###############     Attachment also inlined for ease of reply    ###############
diff --git a/gcc/testsuite/gcc.dg/vect/vect-multi-peel-gaps.c b/gcc/testsuite/gcc.dg/vect/vect-multi-peel-gaps.c
index 1aab4c5a14d1e8346d89587bd9544a1516535a45..7e7db3c7a45fa1ecc748f51353170ec66c5dfed7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multi-peel-gaps.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multi-peel-gaps.c
@@ -9,6 +9,7 @@
 /* { dg-require-effective-target mmap } */
 #include <sys/mman.h>
 #include <stdio.h>
+#include "tree-vect.h"
 
 #define MMAP_SIZE 0x20000
 #define ADDRESS 0x1122000000
@@ -24,6 +25,7 @@ void initialise_s(int *s) { }
 int main() {
     void *s_mapping;
     void *end_s;
+    check_vect ();
     s_mapping = mmap ((void *)ADDRESS, MMAP_SIZE, PROT_READ | PROT_WRITE,
 		      MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
     if (s_mapping == MAP_FAILED)
diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc
index 99e61f8a85dc6cebbb3cd4183f8bd7fdfe9aa1de..5018bd23e6ec457a8e4790d333752b7e009228e0 100644
--- a/gcc/tree-vect-stmts.cc
+++ b/gcc/tree-vect-stmts.cc
@@ -2214,8 +2214,9 @@ get_group_load_store_type (vec_info *vinfo, stmt_vec_info stmt_info,
 	     we can end up with no gap recorded but still excess
 	     elements accessed, see PR103116.  Make sure we peel for
 	     gaps if necessary and sufficient and give up if not.
-	     If there is a combination of the access not covering the full vector and
-	     a gap recorded then we may need to peel twice.  */
+
+	     If there is a combination of the access not covering the full
+	     vector and a gap recorded then we may need to peel twice.  */
 	  if (loop_vinfo
 	      && *memory_access_type == VMAT_CONTIGUOUS
 	      && SLP_TREE_LOAD_PERMUTATION (slp_node).exists ()
  

Patch

diff --git a/gcc/testsuite/gcc.dg/vect/vect-multi-peel-gaps.c b/gcc/testsuite/gcc.dg/vect/vect-multi-peel-gaps.c
index 1aab4c5a14d1e8346d89587bd9544a1516535a45..7e7db3c7a45fa1ecc748f51353170ec66c5dfed7 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-multi-peel-gaps.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-multi-peel-gaps.c
@@ -9,6 +9,7 @@ 
 /* { dg-require-effective-target mmap } */
 #include <sys/mman.h>
 #include <stdio.h>
+#include "tree-vect.h"
 
 #define MMAP_SIZE 0x20000
 #define ADDRESS 0x1122000000
@@ -24,6 +25,7 @@  void initialise_s(int *s) { }
 int main() {
     void *s_mapping;
     void *end_s;
+    check_vect ();
     s_mapping = mmap ((void *)ADDRESS, MMAP_SIZE, PROT_READ | PROT_WRITE,
 		      MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
     if (s_mapping == MAP_FAILED)
diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc
index 99e61f8a85dc6cebbb3cd4183f8bd7fdfe9aa1de..5018bd23e6ec457a8e4790d333752b7e009228e0 100644
--- a/gcc/tree-vect-stmts.cc
+++ b/gcc/tree-vect-stmts.cc
@@ -2214,8 +2214,9 @@  get_group_load_store_type (vec_info *vinfo, stmt_vec_info stmt_info,
 	     we can end up with no gap recorded but still excess
 	     elements accessed, see PR103116.  Make sure we peel for
 	     gaps if necessary and sufficient and give up if not.
-	     If there is a combination of the access not covering the full vector and
-	     a gap recorded then we may need to peel twice.  */
+
+	     If there is a combination of the access not covering the full
+	     vector and a gap recorded then we may need to peel twice.  */
 	  if (loop_vinfo
 	      && *memory_access_type == VMAT_CONTIGUOUS
 	      && SLP_TREE_LOAD_PERMUTATION (slp_node).exists ()