gnu.org/g:2efe3a7de0107618397264017fb045f237764cc7
Thanks,
Hao.
From: Richard Biener
Sent: Thursday, December 7, 2023 22:12
To: Hao Liu OS
Cc: GCC-patches@gcc.gnu.org
Subject: Re: [PATCH] tree-optimization/PR112774 - SCEV: extend the chrec tree
with a nonwrapping flag
On Thu, Dec 7,
ion:
/* The following table lists the uses of each of the above flags and
for which types of nodes they are defined.
...
OK with that change. Let's see how it goes ...
Thanks,
Richard.
> Thanks,
> Hao
>
> ____________
> From: Richard Biener
> Sent: Wednesday, Decem
h such unsigned access pattern, and it can get huge
improvements.
Thanks,
Hao
From: Richard Biener
Sent: Wednesday, December 6, 2023 19:49
To: Hao Liu OS
Cc: GCC-patches@gcc.gnu.org
Subject: Re: [PATCH] tree-optimization/PR112774 - SCEV: extend the chrec tr
* Accessors for the chains of recurrences. */
> -#define CHREC_LEFT(NODE) TREE_OPERAND (POLYNOMIAL_CHREC_CHECK
> (NODE), 0)
> -#define CHREC_RIGHT(NODE) TREE_OPERAND (POLYNOMIAL_CHREC_CHECK
> (NODE), 1)
> -#define CHREC_VARIABLE(NODE) POLYNOMIAL_CHREC_CHECK
> (NODE)->base.u
e label associated with
the given label expression. */
--
2.34.1
________
From: Hao Liu OS
Sent: Monday, December 4, 2023 18:05
To: GCC-patches@gcc.gnu.org
Subject: [PATCH] tree-optimization/PR112774 - SCEV: extend the chrec tree with
a nonwrapping flag
Loop
Loop vecotorization can not optimize following case due to SCEV is not affine
failure (i+offset may overflow):
int A[1024 * 2];
int foo (unsigned offset, unsigned N)
{
int sum = 0;
for (unsigned i = 0; i < N; i++)
sum += A[i + offset];
return sum;
}