From: Janis Johnson Date: Thu, 7 Jul 2011 15:07:57 +0000 (+0000) Subject: target-supports.exp (check_effective_target_arm_thumb1): New. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7122998a4a736deabb561a78a008a8101f5e7c24;p=gcc.git target-supports.exp (check_effective_target_arm_thumb1): New. * 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 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9c5f80a31b5..7be00601d7b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2011-07-07 Janis Johnson + + * 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 * gcc.target/arm/neon-modes-3.c: New test. diff --git a/gcc/testsuite/gcc.target/arm/mla-1.c b/gcc/testsuite/gcc.target/arm/mla-1.c index 6d5ee73b261..42101ef37cf 100644 --- a/gcc/testsuite/gcc.target/arm/mla-1.c +++ b/gcc/testsuite/gcc.target/arm/mla-1.c @@ -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" } } */ diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 1b06771e4e1..7db156f3a12 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -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; } ""] }