Another issue found by -Wlogical-not-parentheses. tree-vect-data-refs.c contains if (!LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT (loop_vinfo)) but since the definition of LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT is lacking parens, this expands to !X > 0 and we warn. Similarly for LOOP_REQUIRES_VERSIONING_FOR_ALIAS.
Bootstrapped/regtested on x86_64-linux, ok for trunk? 2014-08-25 Marek Polacek <pola...@redhat.com> PR c/61271 * tree-vectorizer.h (LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT, LOOP_REQUIRES_VERSIONING_FOR_ALIAS): Wrap in parens. diff --git gcc/tree-vectorizer.h gcc/tree-vectorizer.h index a38443e..95209bc 100644 --- gcc/tree-vectorizer.h +++ gcc/tree-vectorizer.h @@ -414,9 +414,9 @@ typedef struct _loop_vec_info { #define LOOP_VINFO_SCALAR_LOOP(L) (L)->scalar_loop #define LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT(L) \ - (L)->may_misalign_stmts.length () > 0 + ((L)->may_misalign_stmts.length () > 0) #define LOOP_REQUIRES_VERSIONING_FOR_ALIAS(L) \ - (L)->may_alias_ddrs.length () > 0 + ((L)->may_alias_ddrs.length () > 0) #define LOOP_VINFO_NITERS_KNOWN_P(L) \ (tree_fits_shwi_p ((L)->num_iters) && tree_to_shwi ((L)->num_iters) > 0) Marek