[Bug tree-optimization/101508] [9/10/11/12 Regression] Possible undefined behaviour in cpp program using "unsigned" type starting with r9-4145
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Jan 24 12:15:31 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101508
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Biener <rguenth@gcc.gnu.org>:
https://gcc.gnu.org/g:f1af8528d34418bc874ae9d993ee0dc3559972d2
commit r12-6844-gf1af8528d34418bc874ae9d993ee0dc3559972d2
Author: Richard Biener <rguenther@suse.de>
Date: Mon Jan 24 11:50:06 2022 +0100
tree-optimization/102131 - fix niter analysis wrt overflow
This fixes the overflow issues seen with analyzing
BASE0 + STEP0 cmp BASE1 + STEP1 as BASE0 + STEP0 - STEP1 cmp BASE1
by following the logic we have when simplifying comparisons.
2022-01-24 Richard Biener <rguenther@suse.de>
Jiufu Guo <guojiufu@linux.ibm.com>
PR tree-optimization/100740
PR tree-optimization/101508
PR tree-optimization/101972
PR tree-optimization/102131
* tree-ssa-loop-niter.cc (number_of_iterations_cond): Properly
constrain BASE0 + STEP0 cmp BASE1 + STEP1 to
BASE0 + STEP0 - STEP1 cmp BASE1 transform.
* gcc.dg/torture/pr100740.c: New testcase.
* gcc.dg/torture/pr101508.c: Likewise.
* gcc.dg/torture/pr101972.c: Likewise.
* gcc.dg/torture/pr102131-1.c: Likewise.
* gcc.dg/torture/pr102131-2.c: Likewise.
* gcc.dg/torture/pr102131-3.c: Likewise.
* gcc.dg/torture/pr102131-4.c: Likewise.
More information about the Gcc-bugs
mailing list