This is the mail archive of the 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: Patch ping (1 middle-end, 1 C front-end)

> If Richard thinks generic vectors should go away, then I guess it's
> ok.

When this was proposed by Zack and Richard last February, it took me a while
to make sense of it, but now I understand the idea.  To recap, generic vectors
should be mapped to vector *types* but not to *modes*; types such as V2HImode
would be expanded to SImode and possibly subject to parallel access, while
bigger types would become BLKmode (where applicable) or expanded item by item.
Generic vector *modes* will go away, but vector types will become more
powerful because they'll know their length instead of deducing it from the
length of a corresponding vector mode.

Besides me needing to learn more of gcc trees in order to implement this, I
think it is not ok to do so fully for 3.5 (!), because it will break the
feature that my patch deprecated.  For example,

    typedef void v4si __attribute__ ((mode (V4SI)))

would not work without SSE extensions enabled on ix86.  Most of the work can
be made in 3.5, except for moving vector types to the machine-dependent modes
files that were introduced by Zack for 3.4.


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