This is the mail archive of the gcc@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: Re: Implementing TI mode (128-bit) and the 2nd pipeline for the MIPS R5900


Hi Richard,

On 10/3/2016 12:56 AM, Richard Henderson wrote:
Why do you believe that not using TImode precludes you implementing any vector support? I don't think you need to touch TImode at all. Just implement V16QImode, V8HImode and maybe V4SImode.

These modes can be special cased within mips_hard_regno_nregs and mips_class_max_nregs to only consume one register.


Indeed, you are right! My original statements were the result of mixing TI mode with the vector modes, which prevented me from indicating support for 128-bit storage within mips_hard_regno_nregs and mips_hard_regno_ok. When I totally stripped off the broken support for TI mode, and made the recommended changes to mips_hard_regno_nregs and mips_hard_regno_ok, everything seems to be working fine now. Even argument passing and return values.

I even got the inline memcpy to work with 16-byte copies by changing the word type to vector integer for the the R5900.

Thank you!

Now, the only feature left unimplemented is support for the COP0 (FPU) instructions (i.e. madda.s). I can't get GCC to emit them, but I'll start another discussion in a different thread at a later time; I would like to first get my facts right because I am not sure if it was even supported by the SONY GCC releases.


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