Hi!
On Wed, Mar 22, 2023 at 01:37:39PM -0400, Vladimir Makarov via Gcc-patches 
wrote:
>             * gcc.target/i386/pr109137.c: New.

The testcase has a couple of small problems:
1) had -m32 in dg-options, that should never be done, instead the test
   should be guarded on ia32
2) adds -fPIC unconditionally (that should be guarded on fpic effective
   target)
3) using #include <string.h> for a RA test seems unnecessary, __builtin_memset
   handles it without the header

Bootstrapped/regtested on x86_64-linux and i686-linux, committed to trunk
as obvious.

2023-03-24  Jakub Jelinek  <ja...@redhat.com>

        PR target/109137
        * gcc.target/i386/pr109137.c: Remove -m32 from dg-options, instead
        require ia32 effective target.  Only add -fPIC for fpic effective
        target.  Remove #include <string.h>, use __builtin_memset instead of
        memset.

--- gcc/testsuite/gcc.target/i386/pr109137.c.jj 2023-03-23 10:00:58.776093791 
+0100
+++ gcc/testsuite/gcc.target/i386/pr109137.c    2023-03-23 19:16:37.858850237 
+0100
@@ -1,6 +1,8 @@
-/* { dg-do compile } */
-/* { dg-options "-m32 -O3 -march=znver1 -fPIC -mfpmath=sse -w" } */
-#include <string.h>
+/* PR target/109137 */
+/* { dg-do compile { target ia32 } } */
+/* { dg-options "-O3 -march=znver1 -mfpmath=sse -w" } */
+/* { dg-additional-options "-fPIC" { target fpic } } */
+
 typedef struct {
   char bytestream_end;
 } CABACContext;
@@ -12,7 +14,7 @@ typedef struct {
 } H264SliceContext;
 H264SliceContext ff_h264_decode_mb_cabac_sl;
 void ff_h264_decode_mb_cabac(void) {
-  memset((void*)ff_h264_decode_mb_cabac_h_0, 6, 48);
+  __builtin_memset((void*)ff_h264_decode_mb_cabac_h_0, 6, 48);
   int i;
   for (;; i++) {
     __asm__(""/* { dg-error "'asm' operand has impossible constraints" } */
@@ -25,4 +27,3 @@ void ff_h264_decode_mb_cabac(void) {
         decode_cabac_mb_intra4x4_pred_mode_mode;
   }
 }
-


        Jakub

Reply via email to