This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Add VIEW_CONVERT_EXPR to operand_equal_p
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: Jan Hubicka <hubicka at ucw dot cz>, Richard Biener <richard dot guenther at gmail dot com>
- Date: Sun, 18 Oct 2015 13:10:21 +0200
- Subject: Re: Add VIEW_CONVERT_EXPR to operand_equal_p
- Authentication-results: sourceware.org; auth=none
- References: <20151014162944 dot GE16672 at kam dot mff dot cuni dot cz> <6561C1C3-366A-411C-BAEE-65E1C233BA16 at gmail dot com> <20151017165252 dot GJ5527 at kam dot mff dot cuni dot cz>
> I was only tracking one isse I hit: Fortran/C interoperability nees LTO to
> produce same TYPE_CANONICAl for signed and unsigned version of size_t.
> Doing so broke useless_type_conversion because it used TYPE_CANONICAL. We
> discussed the topic on the GNU Cauldron and decided that it is cleaner to
> drop TYPE_CANONICAL from useless_type_conversion because it does not really
> belong there.
OK, thanks for the explanation.
> That is only change I plan into the area. The decision to drop comparsion of
> TYPE_MODE from the aggregate path was decision of the discussion about this
> particular patch and I do not really insist on it.
>
> Having fewer VCE expressions in the code is not a bad thing, but I do not
> really see it as an important change. I am sorry for the breakage in move
> expansion that I hoped to not be as important. I am willing to continue
> fixing the fallout (and be more cureful about it - obviously I originally
> underestimated the issue). I am also happy with simply adding back the mode
> checking and drop the changes we did to expr.c so far.
I agree on the fewer VCE expressions goal (and I have an upcoming gigi change
to that effect) but some of them are essentially mandated by the RTL level
and, since GENERIC & GIMPLE are ultimately lowered to RTL, they need to take
that into account IMO. So, if the mode change is not really necessary for the
rest of the work, I'd restore the mode check (and this only affects Ada in
practice since apparently only the Ada compiler fiddles with the type mode).
--
Eric Botcazou