On 22/08/12 02:20, Terry Guo wrote:
> Hi,
> 
> Due to the impact of ARM UAL, the Thumb1 and Thumb2 mode use LSRS
> instruction while the ARM mode uses MOVS instruction. So the following case
> is updated accordingly. Is it OK to trunk?
> 
> BR,
> Terry
> 
> 2012-08-21  Terry Guo  <terry....@arm.com>
> 
>         * gcc.target/arm/combine-movs.c: Check movs for ARM mode 
>         and lsrs for other mode.
> 

This can't be right.  Thumb1 doesn't use unified syntax.

R.

> diff --git a/gcc/testsuite/gcc.target/arm/combine-movs.c
> b/gcc/testsuite/gcc.target/arm/combine-movs.c
> index 4209a33..fbef9df 100644
> --- a/gcc/testsuite/gcc.target/arm/combine-movs.c
> +++ b/gcc/testsuite/gcc.target/arm/combine-movs.c
> @@ -1,5 +1,4 @@
>  /* { dg-do compile } */
> -/* { dg-skip-if "" { arm_thumb1 } } */
>  /* { dg-options "-O" }  */
> 
>  void foo (unsigned long r[], unsigned int d)
> @@ -9,4 +8,5 @@ void foo (unsigned long r[], unsigned int d)
>      r[i] = 0;
>  }
> 
> -/* { dg-final { scan-assembler "movs\tr\[0-9\]" } } */
> +/* { dg-final { scan-assembler "movs\tr\[0-9\]" { target arm_nothumb } } }
> */
> +/* { dg-final { scan-assembler "lsrs\tr\[0-9\]" { target { ! arm_nothumb }
> } } } */
> 
> 
> 
> 




Reply via email to