public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/rguenth/heads/vect-force-slp)] Avoid SLP build failure for unsupported shifts
@ 2023-10-19 13:29 Richard Biener
  0 siblings, 0 replies; 6+ messages in thread
From: Richard Biener @ 2023-10-19 13:29 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:881b485e01e2150757042dfff9640ee813cf31e8

commit 881b485e01e2150757042dfff9640ee813cf31e8
Author: Richard Biener <rguenther@suse.de>
Date:   Thu Oct 5 14:07:02 2023 +0200

    Avoid SLP build failure for unsupported shifts
    
    When asserting that SLP _build_ can succeed we run into the SLP
    shift discovery code trying to be clever doing vectorizable_shifts
    work and failing discovery already.  That gives a false impression
    for now, so disable that when we do single-lane builds.
    
            * tree-vect-slp.cc (vect_build_slp_tree_1): Do not fail
            fatally for shifts not supported by the target when discovering
            a single lane.

Diff:
---
 gcc/tree-vect-slp.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc
index 4f06cb45ea28..af6a81155960 100644
--- a/gcc/tree-vect-slp.cc
+++ b/gcc/tree-vect-slp.cc
@@ -1185,7 +1185,13 @@ vect_build_slp_tree_1 (vec_info *vinfo, unsigned char *swap,
 	      if (!directly_supported_p (rhs_code, vectype, optab_vector))
 		{
 		  /* No vector/vector shift, try for a vector/scalar shift.  */
-		  if (!directly_supported_p (rhs_code, vectype, optab_scalar))
+		  if (!directly_supported_p (rhs_code, vectype, optab_scalar)
+		      /* ???  We are using this to guide operand swapping to
+			 eventually make all shift operands the same but we
+			 shouldn't fail in the end - that's be business of
+			 vectorizable_shift.
+			 Avoid spurious ICEs for single-lane discovery.  */
+		      && group_size != 1)
 		    {
 		      if (dump_enabled_p ())
 			dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [gcc(refs/users/rguenth/heads/vect-force-slp)] Avoid SLP build failure for unsupported shifts
@ 2024-02-23  7:31 Richard Biener
  0 siblings, 0 replies; 6+ messages in thread
From: Richard Biener @ 2024-02-23  7:31 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:ef49bc613081e6cf821f6871930c01fc241bef15

commit ef49bc613081e6cf821f6871930c01fc241bef15
Author: Richard Biener <rguenther@suse.de>
Date:   Thu Oct 5 14:07:02 2023 +0200

    Avoid SLP build failure for unsupported shifts
    
    When asserting that SLP _build_ can succeed we run into the SLP
    shift discovery code trying to be clever doing vectorizable_shifts
    work and failing discovery already.  That gives a false impression
    for now, so disable that when we do single-lane builds.
    
            * tree-vect-slp.cc (vect_build_slp_tree_1): Do not fail
            fatally for shifts not supported by the target when discovering
            a single lane.

Diff:
---
 gcc/tree-vect-slp.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc
index 83ee8a7efc32..32fccba7f154 100644
--- a/gcc/tree-vect-slp.cc
+++ b/gcc/tree-vect-slp.cc
@@ -1209,7 +1209,13 @@ vect_build_slp_tree_1 (vec_info *vinfo, unsigned char *swap,
 	      if (!directly_supported_p (rhs_code, vectype, optab_vector))
 		{
 		  /* No vector/vector shift, try for a vector/scalar shift.  */
-		  if (!directly_supported_p (rhs_code, vectype, optab_scalar))
+		  if (!directly_supported_p (rhs_code, vectype, optab_scalar)
+		      /* ???  We are using this to guide operand swapping to
+			 eventually make all shift operands the same but we
+			 shouldn't fail in the end - that's be business of
+			 vectorizable_shift.
+			 Avoid spurious ICEs for single-lane discovery.  */
+		      && group_size != 1)
 		    {
 		      if (dump_enabled_p ())
 			dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [gcc(refs/users/rguenth/heads/vect-force-slp)] Avoid SLP build failure for unsupported shifts
@ 2023-11-09 13:03 Richard Biener
  0 siblings, 0 replies; 6+ messages in thread
From: Richard Biener @ 2023-11-09 13:03 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:1a7a3d4fdb569c91be1de2aa4c6e8d58d54fcc22

commit 1a7a3d4fdb569c91be1de2aa4c6e8d58d54fcc22
Author: Richard Biener <rguenther@suse.de>
Date:   Thu Oct 5 14:07:02 2023 +0200

    Avoid SLP build failure for unsupported shifts
    
    When asserting that SLP _build_ can succeed we run into the SLP
    shift discovery code trying to be clever doing vectorizable_shifts
    work and failing discovery already.  That gives a false impression
    for now, so disable that when we do single-lane builds.
    
            * tree-vect-slp.cc (vect_build_slp_tree_1): Do not fail
            fatally for shifts not supported by the target when discovering
            a single lane.

Diff:
---
 gcc/tree-vect-slp.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc
index 69df69ac755..15d60c14e01 100644
--- a/gcc/tree-vect-slp.cc
+++ b/gcc/tree-vect-slp.cc
@@ -1216,7 +1216,13 @@ vect_build_slp_tree_1 (vec_info *vinfo, unsigned char *swap,
 	      if (!directly_supported_p (rhs_code, vectype, optab_vector))
 		{
 		  /* No vector/vector shift, try for a vector/scalar shift.  */
-		  if (!directly_supported_p (rhs_code, vectype, optab_scalar))
+		  if (!directly_supported_p (rhs_code, vectype, optab_scalar)
+		      /* ???  We are using this to guide operand swapping to
+			 eventually make all shift operands the same but we
+			 shouldn't fail in the end - that's be business of
+			 vectorizable_shift.
+			 Avoid spurious ICEs for single-lane discovery.  */
+		      && group_size != 1)
 		    {
 		      if (dump_enabled_p ())
 			dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [gcc(refs/users/rguenth/heads/vect-force-slp)] Avoid SLP build failure for unsupported shifts
@ 2023-11-02 14:00 Richard Biener
  0 siblings, 0 replies; 6+ messages in thread
From: Richard Biener @ 2023-11-02 14:00 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:bcddead27931294a909686a38daf1df661845366

commit bcddead27931294a909686a38daf1df661845366
Author: Richard Biener <rguenther@suse.de>
Date:   Thu Oct 5 14:07:02 2023 +0200

    Avoid SLP build failure for unsupported shifts
    
    When asserting that SLP _build_ can succeed we run into the SLP
    shift discovery code trying to be clever doing vectorizable_shifts
    work and failing discovery already.  That gives a false impression
    for now, so disable that when we do single-lane builds.
    
            * tree-vect-slp.cc (vect_build_slp_tree_1): Do not fail
            fatally for shifts not supported by the target when discovering
            a single lane.

Diff:
---
 gcc/tree-vect-slp.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc
index 9d7b74cb9f25..f6741433ae17 100644
--- a/gcc/tree-vect-slp.cc
+++ b/gcc/tree-vect-slp.cc
@@ -1215,7 +1215,13 @@ vect_build_slp_tree_1 (vec_info *vinfo, unsigned char *swap,
 	      if (!directly_supported_p (rhs_code, vectype, optab_vector))
 		{
 		  /* No vector/vector shift, try for a vector/scalar shift.  */
-		  if (!directly_supported_p (rhs_code, vectype, optab_scalar))
+		  if (!directly_supported_p (rhs_code, vectype, optab_scalar)
+		      /* ???  We are using this to guide operand swapping to
+			 eventually make all shift operands the same but we
+			 shouldn't fail in the end - that's be business of
+			 vectorizable_shift.
+			 Avoid spurious ICEs for single-lane discovery.  */
+		      && group_size != 1)
 		    {
 		      if (dump_enabled_p ())
 			dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [gcc(refs/users/rguenth/heads/vect-force-slp)] Avoid SLP build failure for unsupported shifts
@ 2023-10-16 12:50 Richard Biener
  0 siblings, 0 replies; 6+ messages in thread
From: Richard Biener @ 2023-10-16 12:50 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:83c9d09888461de024bf83f47469bbb12c8f0d98

commit 83c9d09888461de024bf83f47469bbb12c8f0d98
Author: Richard Biener <rguenther@suse.de>
Date:   Thu Oct 5 14:07:02 2023 +0200

    Avoid SLP build failure for unsupported shifts
    
    When asserting that SLP _build_ can succeed we run into the SLP
    shift discovery code trying to be clever doing vectorizable_shifts
    work and failing discovery already.  That gives a false impression
    for now, so disable that when we do single-lane builds.
    
            * tree-vect-slp.cc (vect_build_slp_tree_1): Do not fail
            fatally for shifts not supported by the target when discovering
            a single lane.

Diff:
---
 gcc/tree-vect-slp.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc
index 672c84ffbf05..436efdd4807d 100644
--- a/gcc/tree-vect-slp.cc
+++ b/gcc/tree-vect-slp.cc
@@ -1149,7 +1149,13 @@ vect_build_slp_tree_1 (vec_info *vinfo, unsigned char *swap,
 	      if (!directly_supported_p (rhs_code, vectype, optab_vector))
 		{
 		  /* No vector/vector shift, try for a vector/scalar shift.  */
-		  if (!directly_supported_p (rhs_code, vectype, optab_scalar))
+		  if (!directly_supported_p (rhs_code, vectype, optab_scalar)
+		      /* ???  We are using this to guide operand swapping to
+			 eventually make all shift operands the same but we
+			 shouldn't fail in the end - that's be business of
+			 vectorizable_shift.
+			 Avoid spurious ICEs for single-lane discovery.  */
+		      && group_size != 1)
 		    {
 		      if (dump_enabled_p ())
 			dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [gcc(refs/users/rguenth/heads/vect-force-slp)] Avoid SLP build failure for unsupported shifts
@ 2023-10-06  7:07 Richard Biener
  0 siblings, 0 replies; 6+ messages in thread
From: Richard Biener @ 2023-10-06  7:07 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:2016b3bae4f9aec33052c3e12d9ad4233a62bb6b

commit 2016b3bae4f9aec33052c3e12d9ad4233a62bb6b
Author: Richard Biener <rguenther@suse.de>
Date:   Thu Oct 5 14:07:02 2023 +0200

    Avoid SLP build failure for unsupported shifts
    
    When asserting that SLP _build_ can succeed we run into the SLP
    shift discovery code trying to be clever doing vectorizable_shifts
    work and failing discovery already.  That gives a false impression
    for now, so disable that when we do single-lane builds.
    
            * tree-vect-slp.cc (vect_build_slp_tree_1): Do not fail
            fatally for shifts not supported by the target when discovering
            a single lane.

Diff:
---
 gcc/tree-vect-slp.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc
index a3a32aa701e..4ff8cbaec04 100644
--- a/gcc/tree-vect-slp.cc
+++ b/gcc/tree-vect-slp.cc
@@ -1131,7 +1131,13 @@ vect_build_slp_tree_1 (vec_info *vinfo, unsigned char *swap,
 	      if (!directly_supported_p (rhs_code, vectype, optab_vector))
 		{
 		  /* No vector/vector shift, try for a vector/scalar shift.  */
-		  if (!directly_supported_p (rhs_code, vectype, optab_scalar))
+		  if (!directly_supported_p (rhs_code, vectype, optab_scalar)
+		      /* ???  We are using this to guide operand swapping to
+			 eventually make all shift operands the same but we
+			 shouldn't fail in the end - that's be business of
+			 vectorizable_shift.
+			 Avoid spurious ICEs for single-lane discovery.  */
+		      && group_size != 1)
 		    {
 		      if (dump_enabled_p ())
 			dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-02-23  7:31 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-19 13:29 [gcc(refs/users/rguenth/heads/vect-force-slp)] Avoid SLP build failure for unsupported shifts Richard Biener
  -- strict thread matches above, loose matches on Subject: below --
2024-02-23  7:31 Richard Biener
2023-11-09 13:03 Richard Biener
2023-11-02 14:00 Richard Biener
2023-10-16 12:50 Richard Biener
2023-10-06  7:07 Richard Biener

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).