[ARM] Fix failing poly64 tests on ARM

Message ID CAKdteObdo4PAs3=TjCBBxZaMNusky0vHYnA_a=B0HxMe-qwVOw@mail.gmail.com
State New
Headers show

Commit Message

Christophe Lyon Dec. 8, 2016, 9:07 a.m.
Sending again, after removing ARM's "company disclaimer or privacy notice"...


On 8 December 2016 at 10:03, Christophe Lyon <christophe.lyon@linaro.org> wrote:
> Hi,

>

> On 6 December 2016 at 11:55, Tamar Christina <Tamar.Christina@arm.com> wrote:

>> Hi Christophe,

>>

>> Aarch64 seems to still pass. It seems the types are really unused after I moved the other tests to p64_p128.

>>

>

> I checked the attached patch fixes the failing tests on ARM/AArch64

> (no advsimd-intrinsic test

> fail after this patch is applied).

>

> OK for trunk?

>

> Thanks,

>

> Christophe

>

>

>> Thanks,

>> Tamar

>>

>> ________________________________________

>> From: Christophe Lyon <christophe.lyon@linaro.org>

>> Sent: Monday, December 5, 2016 6:33:43 PM

>> To: Kyrill Tkachov

>> Cc: Tamar Christina; GCC Patches; nickc@redhat.com; Richard Earnshaw

>> Subject: Re: [ARM][PATCH] Fix failing poly64 tests on ARM

>>

>> Hi Tamar,

>>

>>

>> On 5 December 2016 at 16:32, Kyrill Tkachov <kyrylo.tkachov@foss.arm.com> wrote:

>>>

>>> On 05/12/16 10:39, Tamar Christina wrote:

>>>>

>>>> Hi All,

>>>>

>>>> This patch fixes test failures on arm-none-eabi.

>>>> Poly64 was being used by files that were not supposed

>>>> to be testing poly64 types.

>>>>

>>>> I have added a new MACRO that must be defined in addition

>>>> to having CRYPTO available before use of Poly64 types are

>>>> allowed in the header arm-neon-ref.h.

>>>>

>>>> Ok for trunk?

>>>>

>>>> gcc/testsuite/

>>>> 2016-12-01  Tamar Christina  <tamar.christina@arm.com>

>>>>

>>>>         * gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h: Gate use

>>>> of Poly64 on USE_CRYPTO_TYPES.

>>>>         * gcc.target/aarch64/advsimd-intrinsics/p64_p128.c: Define

>>>> USE_CRYPTO_TYPES.

>>>>         * gcc.target/aarch64/advsimd-intrinsics/vreinterpret_p128.c:

>>>> Likewise.

>>>>         * gcc.target/aarch64/advsimd-intrinsics/vreinterpret_p64.c:

>>>> Likewise.

>>>

>>>

>>> Ok, but please make sure the line length in the ChangeLog doesn't go over 80

>>> characters.

>>> Kyrill

>>

>> Since 'expected_poly64x[12]' isn't used, there is no need to declare it,

>> and the attached patch seems to work (tested only on arm-none-linux-gnueabihf

>> --target-board=-mthumb/-march=armv8-a/-mfpu=crypto-neon-fp-armv8/-mfloat-abi=hard

>>

>> All the tests for poly64 use dedicated output buffers, at least for the moment.

>>

>> Does my patch break aarch64?

>>

>> Christophe
gcc/testsuite/ChangeLog:

2016-12-08  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h
	(CHECK_CRYPTO): Remove.
	(expected_poly64x1_t, expected_poly64x2_t): Remove

Comments

Kyrill Tkachov Dec. 8, 2016, 9:17 a.m. | #1
On 08/12/16 09:07, Christophe Lyon wrote:
> Sending again, after removing ARM's "company disclaimer or privacy notice"...


And resending the "ok" without the disclaimer...
Ok.
Thanks,
Kyrill

>

> On 8 December 2016 at 10:03, Christophe Lyon <christophe.lyon@linaro.org> wrote:

>> Hi,

>>

>> On 6 December 2016 at 11:55, Tamar Christina <Tamar.Christina@arm.com> wrote:

>>> Hi Christophe,

>>>

>>> Aarch64 seems to still pass. It seems the types are really unused after I moved the other tests to p64_p128.

>>>

>> I checked the attached patch fixes the failing tests on ARM/AArch64

>> (no advsimd-intrinsic test

>> fail after this patch is applied).

>>

>> OK for trunk?

>>

>> Thanks,

>>

>> Christophe

>>

>>

>>> Thanks,

>>> Tamar

>>>

>>> ________________________________________

>>> From: Christophe Lyon <christophe.lyon@linaro.org>

>>> Sent: Monday, December 5, 2016 6:33:43 PM

>>> To: Kyrill Tkachov

>>> Cc: Tamar Christina; GCC Patches; nickc@redhat.com; Richard Earnshaw

>>> Subject: Re: [ARM][PATCH] Fix failing poly64 tests on ARM

>>>

>>> Hi Tamar,

>>>

>>>

>>> On 5 December 2016 at 16:32, Kyrill Tkachov <kyrylo.tkachov@foss.arm.com> wrote:

>>>> On 05/12/16 10:39, Tamar Christina wrote:

>>>>> Hi All,

>>>>>

>>>>> This patch fixes test failures on arm-none-eabi.

>>>>> Poly64 was being used by files that were not supposed

>>>>> to be testing poly64 types.

>>>>>

>>>>> I have added a new MACRO that must be defined in addition

>>>>> to having CRYPTO available before use of Poly64 types are

>>>>> allowed in the header arm-neon-ref.h.

>>>>>

>>>>> Ok for trunk?

>>>>>

>>>>> gcc/testsuite/

>>>>> 2016-12-01  Tamar Christina  <tamar.christina@arm.com>

>>>>>

>>>>>          * gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h: Gate use

>>>>> of Poly64 on USE_CRYPTO_TYPES.

>>>>>          * gcc.target/aarch64/advsimd-intrinsics/p64_p128.c: Define

>>>>> USE_CRYPTO_TYPES.

>>>>>          * gcc.target/aarch64/advsimd-intrinsics/vreinterpret_p128.c:

>>>>> Likewise.

>>>>>          * gcc.target/aarch64/advsimd-intrinsics/vreinterpret_p64.c:

>>>>> Likewise.

>>>>

>>>> Ok, but please make sure the line length in the ChangeLog doesn't go over 80

>>>> characters.

>>>> Kyrill

>>> Since 'expected_poly64x[12]' isn't used, there is no need to declare it,

>>> and the attached patch seems to work (tested only on arm-none-linux-gnueabihf

>>> --target-board=-mthumb/-march=armv8-a/-mfpu=crypto-neon-fp-armv8/-mfloat-abi=hard

>>>

>>> All the tests for poly64 use dedicated output buffers, at least for the moment.

>>>

>>> Does my patch break aarch64?

>>>

>>> Christophe

Patch hide | download patch | download mbox

diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h
index beaf6ac..4728639 100644
--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h
+++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h
@@ -99,13 +99,6 @@  extern size_t strlen(const char *);
     fprintf(stderr, "CHECKED %s %s\n", STR(VECT_TYPE(T, W, N)), MSG);	\
   }
 
-#if defined (__ARM_FEATURE_CRYPTO)
-#define CHECK_CRYPTO(MSG,T,W,N,FMT,EXPECTED,COMMENT) \
-	       CHECK(MSG,T,W,N,FMT,EXPECTED,COMMENT)
-#else
-#define CHECK_CRYPTO(MSG,T,W,N,FMT,EXPECTED,COMMENT)
-#endif
-
 /* Floating-point variant.  */
 #define CHECK_FP(MSG,T,W,N,FMT,EXPECTED,COMMENT)			\
   {									\
@@ -198,9 +191,6 @@  extern ARRAY(expected, uint, 32, 2);
 extern ARRAY(expected, uint, 64, 1);
 extern ARRAY(expected, poly, 8, 8);
 extern ARRAY(expected, poly, 16, 4);
-#if defined (__ARM_FEATURE_CRYPTO)
-extern ARRAY(expected, poly, 64, 1);
-#endif
 extern ARRAY(expected, hfloat, 16, 4);
 extern ARRAY(expected, hfloat, 32, 2);
 extern ARRAY(expected, hfloat, 64, 1);
@@ -214,9 +204,6 @@  extern ARRAY(expected, uint, 32, 4);
 extern ARRAY(expected, uint, 64, 2);
 extern ARRAY(expected, poly, 8, 16);
 extern ARRAY(expected, poly, 16, 8);
-#if defined (__ARM_FEATURE_CRYPTO)
-extern ARRAY(expected, poly, 64, 2);
-#endif
 extern ARRAY(expected, hfloat, 16, 8);
 extern ARRAY(expected, hfloat, 32, 4);
 extern ARRAY(expected, hfloat, 64, 2);
@@ -233,7 +220,6 @@  extern ARRAY(expected, hfloat, 64, 2);
     CHECK(test_name, uint, 64, 1, PRIx64, EXPECTED, comment);		\
     CHECK(test_name, poly, 8, 8, PRIx8, EXPECTED, comment);		\
     CHECK(test_name, poly, 16, 4, PRIx16, EXPECTED, comment);		\
-    CHECK_CRYPTO(test_name, poly, 64, 1, PRIx64, EXPECTED, comment);	\
     CHECK_FP(test_name, float, 32, 2, PRIx32, EXPECTED, comment);	\
 									\
     CHECK(test_name, int, 8, 16, PRIx8, EXPECTED, comment);		\
@@ -246,7 +232,6 @@  extern ARRAY(expected, hfloat, 64, 2);
     CHECK(test_name, uint, 64, 2, PRIx64, EXPECTED, comment);		\
     CHECK(test_name, poly, 8, 16, PRIx8, EXPECTED, comment);		\
     CHECK(test_name, poly, 16, 8, PRIx16, EXPECTED, comment);		\
-    CHECK_CRYPTO(test_name, poly, 64, 2, PRIx64, EXPECTED, comment);	\
     CHECK_FP(test_name, float, 32, 4, PRIx32, EXPECTED, comment);	\
   }									\