[llvm-commits] vector widening patch
Stefanus Du Toit
stefanus.dutoit at rapidmind.com
Mon Oct 20 08:18:01 PDT 2008
Hi Mon Ping,
> + // If it a vector of two, we will assume it doesn't make sense to
> widen
> + if (NElts == 2)
> + return MVT::Other;
What's the reasoning behind this? In our experience this makes a lot
of sense, at least on x86 SSE2+ (assuming MMX is disabled).
Stefanus
On 18-Oct-08, at 12:12 AM, Mon Ping Wang wrote:
> Hi,
>
> Here is a patch for vector widen. In certain cases, it is more
> profitable to widen a vector from an illegal type to a legal type
> (e.g., v7i8 to v8i8) instead of scalarzing the vector. This patch
> implements that. The default implementation is to widen if there is a
> legal type that is wider than the illegal type and the vector has more
> elements. Any target can override the default logic and implement it
> own policy. Please let me know if you have any comments or concerns.
>
> Thanks,
> -- Mon Ping
> <widening.patch><ATT00001.txt>
--
Stefanus Du Toit <stefanus.dutoit at rapidmind.com>
RapidMind Inc.
phone: +1 519 885 5455 x116 -- fax: +1 519 885 1463
More information about the llvm-commits
mailing list