On Sun, 2022-01-16 at 12:11 +0100, FX wrote:
> > No, that's "dg-do compile" (as in "compile but don't assemble").
> 
> I can confirm that this patch:
> 
> diff --git a/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-1.c
> b/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-1.c
> index c235e22fd01..4730255bb3c 100644
> --- a/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-1.c
> +++ b/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-1.c
> @@ -1,4 +1,4 @@
> -/* { dg-do assemble { target x86_64-*-* } } */
> +/* { dg-do compile { target x86_64-*-* } } */
>  /* { dg-require-effective-target lp64 } */
>  
>  #include "analyzer-decls.h”
> 
> 
> fixes the gcc.dg/analyzer/asm-x86-lp64-1.c failure on
> x86_64-apple-darwin. The same is true of this one:
> 
> diff --git
> a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c
> b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c
> index e90dccf58dd..4cbf43206dc 100644
> ---
> a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c
> +++
> b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c
> @@ -1,4 +1,4 @@
> -/* { dg-do assemble { target x86_64-*-* } } */
> +/* { dg-do compile { target x86_64-*-* } } */
>  /* { dg-require-effective-target lp64 } */
>  /* { dg-additional-options "-fsanitize=bounds
> -fno-analyzer-call-summaries" } */
>  /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */
> 
> 
> 
> These other three:
> FAIL: gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-1.c
> FAIL: gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-2.c
> FAIL: gcc.dg/analyzer/torture/asm-x86-linux-rdmsr-paravirt.c
> 
> still fail with dg-do compile, as explained, become the error comes
> from the C front-end, not the assembler:
> 
> /Users/fx/gcc/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-1.c:27:3:
> warning: 'asm' operand 6 probably does not match constraints
> /Users/fx/gcc/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-1.c:27:3:
> error: impossible constraint in 'asm'

Thanks.  I extended your patch as follows, which works successfully for
me on x86_64-pc-linux-gnu.

Does the following look OK for the analyzer asm failures on
x86_64-apple-darwin?

Dave

gcc/testsuite/ChangeLog:
        * gcc.dg/analyzer/asm-x86-1.c: Use dg-do "compile" rather than
        "assemble".
        * gcc.dg/analyzer/asm-x86-lp64-1.c: Likewise.
        * gcc.dg/analyzer/asm-x86-lp64-2.c: Likewise.
        * gcc.dg/analyzer/torture/asm-x86-linux-array_index_mask_nospec.c:
        Likewise.
        * gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-1.c:
        Likewise, and restrict to x86_64-pc-linux-gnu.
        * gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-2.c: Likewise.
        * gcc.dg/analyzer/torture/asm-x86-linux-cpuid.c: Use dg-do
        "compile" rather than "assemble".
        * gcc.dg/analyzer/torture/asm-x86-linux-rdmsr-paravirt.c:
        Likewise, and restrict to x86_64-pc-linux-gnu.
        * gcc.dg/analyzer/torture/asm-x86-linux-rdmsr.c: Use dg-do
        "compile" rather than "assemble".
        * gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c:
        Likewise.
        * gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-reduced.c:
        Likewise.

Signed-off-by: David Malcolm <dmalc...@redhat.com>
---
 gcc/testsuite/gcc.dg/analyzer/asm-x86-1.c                       | 2 +-
 gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-1.c                  | 2 +-
 gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-2.c                  | 2 +-
 .../analyzer/torture/asm-x86-linux-array_index_mask_nospec.c    | 2 +-
 .../gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-1.c    | 2 +-
 .../gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-2.c    | 2 +-
 gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid.c     | 2 +-
 .../gcc.dg/analyzer/torture/asm-x86-linux-rdmsr-paravirt.c      | 2 +-
 gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-rdmsr.c     | 2 +-
 .../analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c    | 2 +-
 .../analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-reduced.c | 2 +-
 11 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/gcc/testsuite/gcc.dg/analyzer/asm-x86-1.c 
b/gcc/testsuite/gcc.dg/analyzer/asm-x86-1.c
index f6026b7e288..a3f86e440b5 100644
--- a/gcc/testsuite/gcc.dg/analyzer/asm-x86-1.c
+++ b/gcc/testsuite/gcc.dg/analyzer/asm-x86-1.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-*-* } } */
 
 #include "analyzer-decls.h"
 
diff --git a/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-1.c 
b/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-1.c
index c235e22fd01..4730255bb3c 100644
--- a/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-1.c
+++ b/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-1.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-*-* } } */
 /* { dg-require-effective-target lp64 } */
 
 #include "analyzer-decls.h"
diff --git a/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-2.c 
b/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-2.c
index fa507395ec7..2864ab69d2a 100644
--- a/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-2.c
+++ b/gcc/testsuite/gcc.dg/analyzer/asm-x86-lp64-2.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-*-* } } */
 /* { dg-require-effective-target lp64 } */
 
 /* Adapted from Linux x86: page_ref_dec_and_test.c (GPL-2.0).  */
diff --git 
a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-array_index_mask_nospec.c 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-array_index_mask_nospec.c
index 6201fdb498f..b2d615c22b9 100644
--- 
a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-array_index_mask_nospec.c
+++ 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-array_index_mask_nospec.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-*-* } } */
 /* { dg-require-effective-target lp64 } */
 /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } { "" } } */
 
diff --git 
a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-1.c 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-1.c
index cf5cf97367d..9861c2d15ca 100644
--- a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-1.c
+++ b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-1.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-pc-linux-gnu } } */
 /* { dg-require-effective-target lp64 } */
 /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */
 /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } { "" } } */
diff --git 
a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-2.c 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-2.c
index c4b365f1e6e..09fef5ddfcc 100644
--- a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-2.c
+++ b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid-paravirt-2.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-pc-linux-gnu } } */
 /* { dg-require-effective-target lp64 } */
 /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */
 /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } { "" } } */
diff --git a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid.c 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid.c
index 243931aebc8..518fe8c286c 100644
--- a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid.c
+++ b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-cpuid.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-*-* } } */
 /* { dg-require-effective-target lp64 } */
 
 #include "../analyzer-decls.h"
diff --git 
a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-rdmsr-paravirt.c 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-rdmsr-paravirt.c
index d9947871235..ed807ab8fc8 100644
--- a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-rdmsr-paravirt.c
+++ b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-rdmsr-paravirt.c
@@ -1,6 +1,6 @@
 /* Adapted from Linux: arch/x86/include/asm/paravirt.h */
 
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-pc-linux-gnu } } */
 /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } { "" } } */
 /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */
 
diff --git a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-rdmsr.c 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-rdmsr.c
index 69d0165aefe..3735d33444e 100644
--- a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-rdmsr.c
+++ b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-rdmsr.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-*-* } } */
 /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } { "" } } */
 
 #include "../analyzer-decls.h"
diff --git 
a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c
index e90dccf58dd..4cbf43206dc 100644
--- 
a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c
+++ 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-full.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-*-* } } */
 /* { dg-require-effective-target lp64 } */
 /* { dg-additional-options "-fsanitize=bounds -fno-analyzer-call-summaries" } 
*/
 /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */
diff --git 
a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-reduced.c
 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-reduced.c
index a18c58c5e61..e046d8c03b1 100644
--- 
a/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-reduced.c
+++ 
b/gcc/testsuite/gcc.dg/analyzer/torture/asm-x86-linux-wfx_get_ps_timeout-reduced.c
@@ -1,4 +1,4 @@
-/* { dg-do assemble { target x86_64-*-* } } */
+/* { dg-do compile { target x86_64-*-* } } */
 /* { dg-require-effective-target lp64 } */
 
 /* Reproducer for false positive from -Wanalyzer-null-dereference seen
-- 
2.26.3

Reply via email to