This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
gcc.dg/20000724-1.c spurious failures
- To: gcc-patches at gcc dot gnu dot org
- Subject: gcc.dg/20000724-1.c spurious failures
- From: "Zack Weinberg" <zackw at stanford dot edu>
- Date: Tue, 6 Mar 2001 17:06:41 -0800
gcc.dg/20000724-1.c contains a multiline string, which cpp complains
about at some length. dg.exp turns that into an excess-errors
failure.
The test case has nothing to do with multiline strings; it just
happens to have a huge chunk of inline assembly. I've applied this
patch to the 3.0 branch, and will to mainline shortly.
zw
* gcc.dg/20000724-1.c: Don't use multiline strings.
===================================================================
Index: testsuite/gcc.dg/20000724-1.c
--- testsuite/gcc.dg/20000724-1.c 2000/08/21 08:30:38 1.1
+++ testsuite/gcc.dg/20000724-1.c 2001/03/07 01:06:05
@@ -30,16 +30,24 @@ void do_check(struct s *x)
abort();
}
-asm ("
-___checkme:
- pushl %eax; pushl %ebx; pushl %ecx; pushl %edx; pushl %esi; pushl %edi; pushl $0; pushl $0
- pushl $0; pushl $0; pushl $0; pushl $0; pushl $0; pushl $0; pushl $0; pushl $0
- movl %ecx, %eax
- call do_check
- popl %eax; popl %eax; popl %eax; popl %eax; popl %eax; popl %eax; popl %eax; popl %eax
- popl %eax; popl %eax; popl %edi; popl %esi; popl %edx; popl %ecx; popl %ebx; popl %eax
- ret
-");
+#define NT "\n\t"
+
+asm ("\n"
+"___checkme:"
+NT "pushl %eax; pushl %ebx; pushl %ecx; pushl %edx; pushl %esi; pushl %edi"
+
+NT "pushl $0; pushl $0; pushl $0; pushl $0; pushl $0"
+NT "pushl $0; pushl $0; pushl $0; pushl $0; pushl $0"
+
+NT "movl %ecx, %eax"
+NT "call do_check"
+
+NT "popl %eax; popl %eax; popl %eax; popl %eax; popl %eax"
+NT "popl %eax; popl %eax; popl %eax; popl %eax; popl %eax"
+
+NT "popl %edi; popl %esi; popl %edx; popl %ecx; popl %ebx; popl %eax"
+NT "ret"
+);
extern inline void do_asm(struct s * x)
{