This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [gomp] walk_tree and OMP_CLAUSE_*
- From: Richard Henderson <rth at redhat dot com>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: Diego Novillo <dnovillo at redhat dot com>, gcc-patches at gcc dot gnu dot org
- Date: Sat, 5 Nov 2005 15:10:48 -0800
- Subject: Re: [gomp] walk_tree and OMP_CLAUSE_*
- References: <20051105203612.GR16034@devserv.devel.redhat.com>
On Sat, Nov 05, 2005 at 03:36:12PM -0500, Jakub Jelinek wrote:
> if (len)
> {
> - /* The common case is that we may tail recurse here. */
> - if (code != BIND_EXPR
> - && !TREE_CHAIN (*tp))
> - WALK_SUBTREE_TAIL (TREE_OPERAND (*tp, len - 1));
> + if (code >= OMP_CLAUSE_PRIVATE && code <= OMP_CLAUSE_DEFAULT)
> + {
> + WALK_SUBTREE (TREE_OPERAND (*tp, len - 1));
> + WALK_SUBTREE_TAIL (OMP_CLAUSE_CHAIN (*tp));
> + }
> else
> - WALK_SUBTREE (TREE_OPERAND (*tp, len - 1));
> + WALK_SUBTREE_TAIL (TREE_OPERAND (*tp, len - 1));
> }
> #endif
> }
This one's wrong, afaics, since it doesn't run the chain
of the zero length clauses like nowait.
r~