This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA]: Fix reload of paradoxical subreg on big-endian platforms when reg is in memory


On Apr 13, 2003, Jan Hubicka <jh at suse dot cz> wrote:

>       else if (regno >= FIRST_PSEUDO_REGISTER
> #ifdef LOAD_EXTEND_OP
>                && (GET_MODE_SIZE (GET_MODE (x))
>                    <= GET_MODE_SIZE (GET_MODE (SUBREG_REG (x))))
> #endif

> ^^^^ This will disqualify the paradoxical subregs entirely

> I believe that condition is right.  I don't follow the logic on why
> there is bypass on LOAD_EXTEND_OP.

I think it's because when you have LOAD_EXTEND_OP, you can obtain the
extended value by simply loading the inner subreg, and the implicit
extension will take care of the paradoxical subreg.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                 aoliva at {redhat dot com, gcc.gnu.org}
CS PhD student at IC-Unicamp        oliva at {lsd dot ic dot unicamp dot br, gnu.org}
Free Software Evangelist                Professional serial bug killer


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]