This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
push_reload question
- To: egcs at cygnus dot com
- Subject: push_reload question
- From: Bernd Schmidt <crux at pool dot informatik dot rwth-aachen dot de>
- Date: Tue, 20 Oct 1998 10:59:17 +0200 (MET DST)
I'm trying to understand (and then make readable) the huge if statements in
push_reload which handle SUBREGs. There appears to be a problem in the
first one of them. Consider the first line:
if (in != 0 && GET_CODE (in) == SUBREG && SUBREG_WORD (in) == 0
So the condition can only be true if SUBREG_WORD (in) == 0.
A little below, we find the following code:
/* The case where out is nonzero
is handled differently in the following statement. */
&& (out == 0 || SUBREG_WORD (in) == 0)
This condition therefore evaluates to 1 in all cases. Is this a bug,
does the out == 0 case really have to be handled differently?
Bernd