This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RE: RFC: MIPS paired single vector support
- From: James E Wilson <wilson at specifixinc dot com>
- To: "Fu, Chao-Ying" <fu at mips dot com>
- Cc: gcc-patches at gcc dot gnu dot org, David Ung <davidu at mips dot com>,Nigel Stephens <nigel at mips dot com>,"Uhler, Mike" <uhler at mercury dot mips dot com>,"Thekkath, Radhika" <radhika at mercury dot mips dot com>
- Date: Tue, 17 Aug 2004 22:30:12 -0700
- Subject: RE: RFC: MIPS paired single vector support
- References: <3CB54817FDF733459B230DD27C690CEC041BFD@Exchange.MIPS.COM>
I wanted to follow up on one issue not directly related to this patch.
I mentioned in an earlier mail that the ABI was the same whether you
have paired single instruction or not. That was a mistake. I didn't
test it well enough.
The problem here is that we only have vector modes if we have paired
single instructions. If we don't have paired single instructions, then
the objects with a vector type end up as BLKmode, and thus get passed
like structures, which is definitely not a compatible calling
convention.
I think we just have to accept for now that use of paired single
instructions changes the ABI if you use v2sf types. I don't think there
is a way around it. Code that uses v2sf types will be rare, and won't
end up in standard libraries, so I suspect this won't be a major
problem. If we do need multilibs for some reason, then it just depends
on the -mpaired-single option.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com