From 487cb5e0cdbb02e1b4a9b1cda26b21f7cbb8322f Mon Sep 17 00:00:00 2001 From: Paul Brook Date: Wed, 9 Aug 2006 18:24:45 +0000 Subject: 2006-08-09 Paul Brook gcc/ * final.c (final_scan_insn): Clear current_insn_predicate before outputting inline asm. gcc/testsuite/ * gcc.target/arm/cond-asm.c: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/branches/csl/sourcerygxx-4_1@116042 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/gcc.target/arm/cond-asm.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 gcc/testsuite/gcc.target/arm/cond-asm.c diff --git a/gcc/testsuite/gcc.target/arm/cond-asm.c b/gcc/testsuite/gcc.target/arm/cond-asm.c new file mode 100644 index 00000000000..450bd9d6a82 --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/cond-asm.c @@ -0,0 +1,13 @@ +/* Check that %? in inline asm expands to nothing. */ +/* { dg-do compile } */ +/* { dg-options "-O2" } */ +/* { dg-require-effective-target arm32 } */ +int b; +int foo(int a) +{ + if (a) + b = 42; + asm ("test%?me":"=r"(a):"0"(a)); + return a; +} +/* { dg-final { scan-assembler "testme" } } */ -- cgit v1.2.3