This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi, This patch fixes the affine errors when more than MAX_AFF_ELTS level of an affine are used for a pointer type. The fix is simple and use sizetype for rest instead of the pointer type (it will most likely be sizetype already anyways).
OK? Bootstrapped and tested on i686-linux-gnu with no regressions and pr32417.f90 at -O is now fixed. Also I tested C bootstrap/test with MAX_AFF_ELTS set to 1 (to invoke this code during a bootstrap) and there were no failures there (except for one which is expected as it was expecting the affine code to support 2 levels of affine).
Thanks, Andrew Pinski
ChangeLog: PR tree-opt/32527 * tree-affine.h (aff_tree): The type of rest is sizetype for types of pointers. * tree-affine.c (aff_combination_scale): If type is a pointer type, use sizetype for rest. (aff_combination_add_elt): Likewise. Don't specialize pointer types. (aff_combination_convert): Don't convert rest for pointer types.
Attachment:
fixtree-affine.diff.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |