This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: remembering comparison modes
- To: Michael Meissner <meissner at cygnus dot com>
- Subject: Re: remembering comparison modes
- From: Bernd Schmidt <bernds at redhat dot com>
- Date: Wed, 24 Jan 2001 17:46:33 +0000 (GMT)
- Cc: Richard Henderson <rth at redhat dot com>, DJ Delorie <dj at redhat dot com>,<gcc-patches at gcc dot gnu dot org>, <dj at greed dot delorie dot com>
On Wed, 24 Jan 2001, Michael Meissner wrote:
> >
> > Er, strict_low_part is a wrapper only. It never has a mode.
> > The mode is taken from the subreg that is its argument.
>
> On the other hand, it makes looking up what type of SET (ie, QI/HI/etc.)
> you are dealing with if you can't just check the mode of SET_DEST (you can't
> check the mode of SET_SRC because that might be a CONST_INT). I'm pretty sure
> there are lots of places in the compiler that blindly do it. Doing a simple
> minded grep for GET_MODE.*SET_DEST, I find:
>
> combine.c cse.c function.c gcse.c
> integrate.c jump.c loop.c recog.c
> regclass.c reload1.c rtlanal.c ssa.c
>
> I haven't checked every usage, but it wouldn't surprise me if either their are
> places that blindly assume the destination has the correct mode, or don't
> optimize strict_low_part constructs as well.
Maybe I should get back to my abandoned attempt to get rid of strict_low_part...
Bernd