On 16 April 2014 09:12, Kyrill Tkachov wrote:
> On 15/04/14 18:45, Eric Christopher wrote:
>>
>> Testcase weirdness?
>>
>>for (i < 0; i < N; ++i)
>> {
>>arr[i] = i;
>>expect[i] = __builtin_bswap64 (i);
>>if (y) /* Avoid vectorisation. */
>> abort ();
>> }
>>
On 15/04/14 18:45, Eric Christopher wrote:
Testcase weirdness?
for (i < 0; i < N; ++i)
{
arr[i] = i;
expect[i] = __builtin_bswap64 (i);
if (y) /* Avoid vectorisation. */
abort ();
}
i < 0 :)
duplicated in all 3 testcases btw.
Oops, here it is fixed.
Thanks
Testcase weirdness?
for (i < 0; i < N; ++i)
{
arr[i] = i;
expect[i] = __builtin_bswap64 (i);
if (y) /* Avoid vectorisation. */
abort ();
}
i < 0 :)
duplicated in all 3 testcases btw.
-eric
On Tue, Apr 15, 2014 at 4:25 AM, Kyrill Tkachov wrote:
> Hi all,
>
> This
Hi all,
This patch enables aarch64 to vectorise bswap[16,32,64] operations by using the
AdvancedSIMD forms of the rev[16,32,64] instructions.
The TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION hook is extended to return the
vectorised forms of __builtin_bswap* where possible and vector bswap pa