On Thu, Jun 19, 2014 at 01:30:32PM +0100, Alan Lawrence wrote:
> diff --git a/gcc/testsuite/gcc.target/aarch64/simd/ext_s64.x
> b/gcc/testsuite/gcc.target/aarch64/simd/ext_s64.x
> index
> c71011a5157a207fe68fe814ed80658fd5e0f90f..b879fdacaa6544790e4d3ff98ca0055073d6d1d1
> 100644
> --- a/gcc/testsuite/gcc.target/aarch64/simd/ext_s64.x
> +++ b/gcc/testsuite/gcc.target/aarch64/simd/ext_s64.x
> @@ -9,7 +9,7 @@ main (int argc, char **argv)
> int64_t arr2[] = {1};
> int64x1_t in2 = vld1_s64 (arr2);
> int64x1_t actual = vext_s64 (in1, in2, 0);
> - if (actual != in1)
> + if (actual[0] != in1[0])
> abort ();
>
> return 0;
> diff --git a/gcc/testsuite/gcc.target/aarch64/simd/ext_u64.x
> b/gcc/testsuite/gcc.target/aarch64/simd/ext_u64.x
> index
> 8d5072bf761d96ea5a95342423ae9861d05d024a..bd51e27c2156bfcaca6b26798c449369b2894c08
> 100644
> --- a/gcc/testsuite/gcc.target/aarch64/simd/ext_u64.x
> +++ b/gcc/testsuite/gcc.target/aarch64/simd/ext_u64.x
> @@ -9,7 +9,7 @@ main (int argc, char **argv)
> uint64_t arr2[] = {1};
> uint64x1_t in2 = vld1_u64 (arr2);
> uint64x1_t actual = vext_u64 (in1, in2, 0);
> - if (actual != in1)
> + if (actual[0] != in1[0])
> abort ();
>
> return 0;
Hi Alan,
Note that these files are also included by tests in the ARM backend, where
<u>int64x1_t is still a typedef to a scalar type, leading to:
PASS->FAIL: gcc.target/arm/simd/vexts64_1.c (test for excess errors)
../aarch64/simd/ext_u64.x:12:23: error: subscripted value is neither array
nor pointer nor vector
Thanks,
James