On 12/10/16 17:01, Christophe Lyon wrote:
On 12 October 2016 at 17:50, Kyrill Tkachov <kyrylo.tkac...@foss.arm.com> wrote:

On 12/10/16 16:29, Thomas Preudhomme wrote:

Sorry :-(

Here you are.

Cheers,

Thomas

On 12/10/16 16:25, Kyrill Tkachov wrote:


On 12/10/16 16:21, Thomas Preudhomme wrote:

Hi,

As reported by Christophe Lyon, gcc.target/arm/movdi_movw test fails on
big
endian targets. This is because on big endian targets the low bits of a
64bit
value would be in the highest numbered register of a pair rather than
the
lowest numbered register as on little endian targets. This patch fixes
that by
allowing both r0 and r1. It also changes effective target to use
arm_thumb2_ok
instead of arm_thumb2 to allow the test on ARM mode targets.

ChangeLog entry is as follows:


*** gcc/testsuite/ChangeLog ***

2016-10-11  Thomas Preud'homme <thomas.preudho...@arm.com>

        * gcc.target/arm/movhi_movw.c: Enable test for ARM mode.
        * gcc.target/arm/movsi_movw.c: Likewise.
        * gcc.target/arm/movdi_movw.c: Likewise and adapt scan-assembler
        directive to work on big endian targets.


Tested testcases with armeb-none-eabi for -march=armv8-a.

Is this ok for trunk?

Best regards,

Thomas


-ERRNOPATCH.
Thanks,
Kyrill


--- a/gcc/testsuite/gcc.target/arm/movdi_movw.c
+++ b/gcc/testsuite/gcc.target/arm/movdi_movw.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target { arm_thumb2 || arm_thumb1_movt_ok } } } */
+/* { dg-do compile { target { arm_thumb2_ok || arm_thumb1_movt_ok } } } */

what is the purpose of arm_thumb2_ok || arm_thumb1_movt_ok
if you do not use -mthumb in dg-options?

Checking whether movw is available, otherwise the test would fail. This condition ensures that the -march or -mcpu passed indicates either a Thumb-2 capable target or a target with Thumb-1 and movw such as ARMv8-M.

Best regards,

Thomas

Reply via email to