This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: An issue for the SC: horrible documentation quality of GCC
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: Richard dot Earnshaw at arm dot com
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 12 May 03 07:21:19 EDT
- Subject: Re: An issue for the SC: horrible documentation quality of GCC
Which, in RTL is
(set b (plus (mult d 4) b))
(set c (plus (mult d 4) c))
into
(set t1 (mult d 4))
(set b (plus t1 b))
(set c (plus t1 c))
is a de-optimization (takes 3 cycles instead of 2).
It's long been on my list to try to see if can find some way to turn the
latter back into the former. The problem is that combine won't do it
because it doesn't know it can kill T1. But I've never come up with
any way that does it. I think this sort of thing is very common,
especially with addressing modes on CISC machines.