[Bug tree-optimization/97255] [8 Regression] Vectorizer gives a boolean a value of 255
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Mar 17 11:14:21 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97255
--- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-8 branch has been updated by Richard Biener
<rguenth@gcc.gnu.org>:
https://gcc.gnu.org/g:87da0caaec663bd427147c04e5784d7843ede96a
commit r8-10806-g87da0caaec663bd427147c04e5784d7843ede96a
Author: Richard Biener <rguenther@suse.de>
Date: Thu Oct 1 09:29:32 2020 +0200
tree-optimization/97255 - missing vector bool pattern of SRAed bool
SRA tends to use VIEW_CONVERT_EXPR when replacing bool fields with
unsigned char fields. Those are not handled in vector bool pattern
detection causing vector true values to leak. The following fixes
this by turning those into b ? 1 : 0 as well.
2020-10-01 Richard Biener <rguenther@suse.de>
PR tree-optimization/97255
* tree-vect-patterns.c (vect_recog_bool_pattern): Also handle
VIEW_CONVERT_EXPR.
* g++.dg/vect/pr97255.cc: New testcase.
(cherry picked from commit f720a0d776252aac3002a0a9307a96465f1975bd)
More information about the Gcc-bugs
mailing list