2014-07-21 Tom de Vries <tom@codesourcery.com>
PR target/61827
* gcc.target/i386/fuse-caller-save-xmm.c: Allow LC0 without dot prefix
for darwin in scan-assembler-times check.
* gcc.target/i386/fuse-caller-save.c: Remove cfi-related
scan-assembler-not checks. Add checks for insns.
(main): Remove.
* gcc.target/i386/fuse-caller-save-rec.c: Remove cfi-related
scan-assembler-not checks. Copy checks from i386/fuse-caller-save.c.
(main): Remove.
@@ -18,14 +18,12 @@ foo (int y)
return y + bar (y);
}
-int
-main (void)
-{
- return !(foo (5) == 13);
-}
+/* Check that no registers are saved/restored. */
+/* { dg-final { scan-assembler-not "push" } } */
+/* { dg-final { scan-assembler-not "pop" } } */
-/* Verify that no registers where saved on stack. */
-/* { dg-final { scan-assembler-not "\.cfi_offset" } } */
+/* Check that addition uses dx. */
+/* { dg-final { scan-assembler-times "addl\t%\[re\]?dx, %\[re\]?ax" 1 } } */
/* Verify that bar is self-recursive. */
/* { dg-final { scan-assembler-times "call\tbar" 2 } } */
@@ -17,7 +17,7 @@ foo (v2df y)
/* Check presence of all insns on xmm registers. These checks are expected to
pass with both -fuse-caller-save and -fno-use-caller-save. */
-/* { dg-final { scan-assembler-times "addpd\t\\.LC0.*, %xmm0" 1 } } */
+/* { dg-final { scan-assembler-times "addpd\t\\.?LC0.*, %xmm0" 1 } } */
/* { dg-final { scan-assembler-times "addpd\t%xmm1, %xmm0" 1 } } */
/* { dg-final { scan-assembler-times "movapd\t%xmm0, %xmm1" 1 } } */
@@ -16,12 +16,9 @@ foo (int y)
return y + bar (y);
}
-int
-main (void)
-{
- return !(foo (5) == 13);
-}
-
-/* { dg-final { scan-assembler-not "\.cfi_def_cfa_offset" } } */
-/* { dg-final { scan-assembler-not "\.cfi_offset" } } */
+/* Check that no registers are saved/restored. */
+/* { dg-final { scan-assembler-not "push" } } */
+/* { dg-final { scan-assembler-not "pop" } } */
+/* Check that addition uses dx. */
+/* { dg-final { scan-assembler-times "addl\t%\[re\]?dx, %\[re\]?ax" 1 } } */