public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r14-4763] parloops: Allow poly nit and bound
@ 2023-10-19 17:30 Andre Simoes Dias Vieira
  0 siblings, 0 replies; only message in thread
From: Andre Simoes Dias Vieira @ 2023-10-19 17:30 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:53d40858c8370b2079bfb017c6870b244b718800

commit r14-4763-g53d40858c8370b2079bfb017c6870b244b718800
Author: Andre Vieira <andre.simoesdiasvieira@arm.com>
Date:   Thu Oct 19 18:27:18 2023 +0100

    parloops: Allow poly nit and bound
    
    Teach parloops how to handle a poly nit and bound e ahead of the changes to
    enable non-constant simdlen.
    
    gcc/ChangeLog:
    
            * tree-parloops.cc (try_transform_to_exit_first_loop_alt): Accept
            poly NIT and ALT_BOUND.

Diff:
---
 gcc/tree-parloops.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gcc/tree-parloops.cc b/gcc/tree-parloops.cc
index a35f3d5023b0..80f3dd6dce28 100644
--- a/gcc/tree-parloops.cc
+++ b/gcc/tree-parloops.cc
@@ -2531,14 +2531,15 @@ try_transform_to_exit_first_loop_alt (class loop *loop,
   tree nit_type = TREE_TYPE (nit);
 
   /* Figure out whether nit + 1 overflows.  */
-  if (TREE_CODE (nit) == INTEGER_CST)
+  if (poly_int_tree_p (nit))
     {
       if (!tree_int_cst_equal (nit, TYPE_MAX_VALUE (nit_type)))
 	{
 	  alt_bound = fold_build2_loc (UNKNOWN_LOCATION, PLUS_EXPR, nit_type,
 				       nit, build_one_cst (nit_type));
 
-	  gcc_assert (TREE_CODE (alt_bound) == INTEGER_CST);
+	  gcc_assert (TREE_CODE (alt_bound) == INTEGER_CST
+		      || TREE_CODE (alt_bound) == POLY_INT_CST);
 	  transform_to_exit_first_loop_alt (loop, reduction_list, alt_bound);
 	  return true;
 	}

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-10-19 17:30 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-19 17:30 [gcc r14-4763] parloops: Allow poly nit and bound Andre Simoes Dias Vieira

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).