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: gcc + vector (v4sf) implementation guide


Thanks for the pointers, do you know of a machine description I can look at
for reference that's a little simpler than ia64? (something a little closer
to the mips architecture)

I'm not so worried about passing/returning vectors at the moment, so
hopefully no ABI changes are necessary.

I would simply like to be able to do "typedef int v4sf
__attribute__((mode(V4SF)))" and have it map to a new register class.  Is
version 3.2.3 of gcc ok for setting up this stuff?

Regards

---------------------------------
Q-Games, Dylan Cuthbert.
http://www.q-games.com

"Jim Wilson" <wilson.specifixinc.com> wrote in message
4015C917.6000900@specifixinc.com">news:4015C917.6000900@specifixinc.com...
> Dylan Cuthbert wrote:
> > Does anyone know of any documentation/examples or guidelines regarding
> > implementing vector support for a new target description in gcc?
>
> We generally don't have good documentation for this kind of thing.
> There is a short "Vector Operations" node in gcc/doc/rtl.texi which
> might be helpful.
>
> > I have a new target description and I need to begin implementing support
for
> > vector types (v4sf etc), and wondered if there was anything special I
had to
> > do to enable this functionality?  Can they be implemented in pretty much
the
> > same way as TImode types?  (version of gcc is 3.2.3)
>
> Yes, you just define md file patterns for them like you might do for
> TImode types.  However, since we don't have automatic vectorization, you
> will also want to define built-in functions (intrinsics) that the user
> can use to generate the vector instructions.  You may also want to look
> at the ABI support, to make sure passing/returning vectors works in a
> reasonable way.  Plus you will have to make whatever changes are
> necessary to get this support working in your backend.
>
> Look at other ports to see how they have solved these problems.
> -- 
> Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com
>
>



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