This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: General question about types of tree expressions
- From: Daniel Berlin <dberlin at dberlin dot org>
- To: Paul Schlie <schlie at comcast dot net>
- Cc: Jeffrey A Law <law at redhat dot com>, Richard Guenther <rguenth at tat dot physik dot uni-tuebingen dot de>, Andrew Pinski <pinskia at physics dot uc dot edu>, gcc at gcc dot gnu dot org
- Date: Wed, 09 Feb 2005 13:58:20 -0500
- Subject: Re: General question about types of tree expressions
- References: <BE2FB5E7.8FA4%schlie@comcast.net>
On Wed, 2005-02-09 at 12:43 -0500, Paul Schlie wrote:
> > Daniel Berlin writes:
> > The document i've been working on defining the semantics of gimple
> > operations specifically states that all binary and unary operators
> > must have operands of the same type.
>
> Out of curiosity, wouldn't it be both simpler and more efficient to
> define the semantics such that operands are "implied" to have the same
> type as the node itself, thereby eliminate the otherwise necessity to
> literally insert cast operators into the tree, which are already implied
> by the semantics of the operation itself (except as may otherwise be
> required to denote that sign extension for promoted signed integers, but
> not otherwise required for unsigned, down-cast, or other type conversions)?
You don't insert cast operators into the operator tree, you insert them
in the statements before the operation.
If we need casts to make the operands the same, they should be there
anyway (they are implicitly when they are expanded).
--Dan