target-supports.exp (check_effective_target_arm_thumb1): New.
authorJanis Johnson <janisjo@codesourcery.com>
Thu, 7 Jul 2011 15:07:57 +0000 (15:07 +0000)
committerJanis Johnson <janis@gcc.gnu.org>
Thu, 7 Jul 2011 15:07:57 +0000 (15:07 +0000)
* lib/target-supports.exp (check_effective_target_arm_thumb1): New.
(check_effective_target_arm_thumb2): Clarify comment, add valid code.
*  gcc.target/arm/mla-1.c: Skip for arm_thumb1, don't specify -march,
add tab to scan target.

From-SVN: r175982

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/arm/mla-1.c
gcc/testsuite/lib/target-supports.exp

index 9c5f80a31b59c38445c7bc91bf5880c5ea32db31..7be00601d7b910be43b04cd43cd44019de7cb9d8 100644 (file)
@@ -1,3 +1,10 @@
+2011-07-07  Janis Johnson  <janisjo@codesourcery.com>
+
+       * lib/target-supports.exp (check_effective_target_arm_thumb1): New.
+       (check_effective_target_arm_thumb2): Clarify comment, add valid code.
+       *  gcc.target/arm/mla-1.c: Skip for arm_thumb1, don't specify -march,
+       add tab to scan target.
+
 2011-07-07  Richard Sandiford  <richard.sandiford@linaro.org>
 
        * gcc.target/arm/neon-modes-3.c: New test.
index 6d5ee73b26103c69d236589351c238f470c7f9dc..42101ef37cfdfda94bd72dc35250d45bf81056c2 100644 (file)
@@ -1,6 +1,6 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -march=armv5te" } */
-/* { dg-prune-output "switch .* conflicts with" } */
+/* { dg-skip-if "" { arm_thumb1 } { "*" } { "" } } */
+/* { dg-options "-O2" } */
 
 
 int
@@ -19,4 +19,4 @@ foo (int *p, int *q)
   return accum;
 }
 
-/* { dg-final { scan-assembler "mla" } } */
+/* { dg-final { scan-assembler "mla\\t" } } */
index 1b06771e4e19963e0c102822c05bf913fcd3016b..7db156f3a120c33e3eb607bd1291876913b717a0 100644 (file)
@@ -2032,13 +2032,27 @@ proc check_effective_target_arm_thumb2_ok { } {
     } "-mthumb"]
 }
 
-# Return 1 is this is an ARM target where is Thumb-2 used.
+# Return 1 if this is an ARM target where Thumb-1 is used without options
+# added by the test.
+
+proc check_effective_target_arm_thumb1 { } {
+    return [check_no_compiler_messages arm_thumb1 assembly {
+       #if !defined(__arm__) || !defined(__thumb__) || defined(__thumb2__)
+       #error not thumb1
+       #endif
+       int i;
+    } ""]
+}
+
+# Return 1 if this is an ARM target where Thumb-2 is used without options
+# added by the test.
 
 proc check_effective_target_arm_thumb2 { } {
     return [check_no_compiler_messages arm_thumb2 assembly {
        #if !defined(__thumb2__)
        #error FOO
        #endif
+       int i;
     } ""]
 }