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: [LNO, mainline] Remember rs6000 builtins decls


On Tue, Jun 08, 2004 at 10:23:42PM +0300, Ayal Zaks wrote:
> >And you get this from tables of FUNCTION_DECLs ... how?
> 
> By not hiding inside a single generic tree something (e.g.
> load-from-unaligned-address) that will later expand into
> several builtins, some of which could be combined/amortized
> /moved-out-of-loops iff known to the vectorizer.
> I think Dorit talked about some of these options at the summit.

Yes, but builtins do NOT help.  Indeed, they'll hurt more.

Your mistake is assuming that we can only have a single 
tree that does a complete unaligned load or store.

Indeed, I would assume the opposite -- the exception is going
to be the target that can do unaligned acceses.  The rule is
going to be two loads followed by some sort of merge operation.

> But *until tree codes are defined* for some of the exotic (yet
> critical) builtins that we want to use, I think our only option
> is to use target hooks that emit builtin FUNCTION_DECLs.

No, your other option is to design and propose tree codes.

It shouldn't take too long to survey the extant processors
that support vector operations and catalogue the available
methods for forming unaligned load/store, then choose some
representative operations or concepts to apply.


r~


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