This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] improve C++ code by changing fold-const.c
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: mark at codesourcery dot com
- Cc: gcc-patches at gcc dot gnu dot org, gcc at gcc dot gnu dot org
- Date: Sun, 23 May 04 10:39:29 EDT
- Subject: Re: [PATCH] improve C++ code by changing fold-const.c
There are places in the front ends, at least that assume that the tree
structure is type correct, using explicit NOP_EXPRs to convert where
necessary. If the optimizers are confused by NOP_EXPRs, then they
should be fixed -- that should generally be an easy fix. (Note that a
NOP_EXPR is a promise that the underlying bits do not change.)
So then how does it differ from VIEW_CONVERT_EXPR? I somewhat take
back my previous message since you have given a more meaningful
semantic distinction between NOP_EXPR and CONVERT_EXPR, but we now
have *four* similar tree codes (NON_LVALUE_EXPR, NOP_EXPR,
CONVERT_EXPR, and VIEW_CONVERT_EXPR) and that sounds like too many.