This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix always true condition in gimplify_adjust_omp_clauses
- From: Marek Polacek <polacek at redhat dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Cc: Jakub Jelinek <jakub at redhat dot com>
- Date: Thu, 17 Aug 2017 10:57:13 +0200
- Subject: Re: [PATCH] Fix always true condition in gimplify_adjust_omp_clauses
- Authentication-results: sourceware.org; auth=none
- Authentication-results: ext-mx08.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx08.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=polacek at redhat dot com
- Dmarc-filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 3791CC01DDAC
- References: <20170810185044.GS17069@redhat.com>
Ping.
On Thu, Aug 10, 2017 at 08:50:44PM +0200, Marek Polacek wrote:
> My new warning triggered here and said "bitwise comparison always evaluates to
> true" and I believe it's right: GOVD_WRITTEN = 131072 which is 10...0000 in
> binary, so n->value & GOVD_WRITTEN can never be 1; I suppose 0 was meant to
> be used here instead. Too bad Jakub's away, so he can't confirm.
>
> Bootstrapped/regtested on x86_64-linux and ppc64le-linux, ok for trunk?
>
> 2017-08-10 Marek Polacek <polacek@redhat.com>
>
> * gimplify.c (gimplify_adjust_omp_clauses): Compare with 0 instead of
> 1.
>
> diff --git gcc/gimplify.c gcc/gimplify.c
> index 86623e09f5d..e52d7dcddaf 100644
> --- gcc/gimplify.c
> +++ gcc/gimplify.c
> @@ -8915,7 +8915,7 @@ gimplify_adjust_omp_clauses (gimple_seq *pre_p, gimple_seq body, tree *list_p,
> OMP_CLAUSE_SHARED_READONLY (c) = 1;
> else if (DECL_P (decl)
> && ((OMP_CLAUSE_CODE (c) == OMP_CLAUSE_SHARED
> - && (n->value & GOVD_WRITTEN) != 1)
> + && (n->value & GOVD_WRITTEN) != 0)
> || (OMP_CLAUSE_CODE (c) == OMP_CLAUSE_LINEAR
> && !OMP_CLAUSE_LINEAR_NO_COPYOUT (c)))
> && omp_shared_to_firstprivate_optimizable_decl_p (decl))
Marek