https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80606

            Bug ID: 80606
           Summary: avx-vtestpd-1.c contains outdated line number
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: trivial
          Priority: P3
         Component: testsuite
          Assignee: unassigned at gcc dot gnu.org
          Reporter: vries at gcc dot gnu.org
  Target Milestone: ---

gcc/testsuite/gcc.target/i386/avx-vtestpd-1.c contains a reference to a line
number 164:
...
/* { dg-do run } */
/* { dg-require-effective-target avx } */
/* { dg-options "-O2 -mavx -DNEED_IEEE754_DOUBLE" } */
/* { dg-warning "attribute ignored" "" { target default_packed } 164 } */
/* { dg-message " from " "include chain" { target default_packed } 0 } */

#include "avx-check.h"
...

From the patch posting here (
https://gcc.gnu.org/ml/gcc-patches/2009-07/msg01303.html ) I understand that
the line number is related to two ieee754 unions with packed attribute in
m128-check.h.

Looking at m128-check.h we see that neither of the unions is at line 164:
...
   161        }                                                 \
   162    return err;                                           \
   163  }
   164  
   165  CHECK_FP_ARRAY (d, double, ESP_DOUBLE, "%f")
   166  CHECK_FP_ARRAY (f, float, ESP_FLOAT, "%f")
   167  
   168  #ifdef NEED_IEEE754_FLOAT
   169  union ieee754_float
   170  {
   171     float d;
   172     struct 
   173     {
   174        unsigned long frac : 23;
   175        unsigned exp : 8;
   176        unsigned sign : 1;
   177     } bits __attribute__((packed));
   178  };
   179  #endif
   180  
   181  #ifdef NEED_IEEE754_DOUBLE
   182  union ieee754_double
   183  {
   184     double d;
   185     struct 
   186     {
   187        unsigned long frac1 : 32;
   188        unsigned long frac0 : 20;
   189        unsigned exp : 11;
   190        unsigned sign : 1;
   191     } bits __attribute__((packed));
   192  };
   193  #endif
...

I suspect that since netware support was removed in 2011, the
default_packed-guarded directives have not been run, which allowed the line
numbers of the unions to change silently.

Perhaps we should revert the patch.

Reply via email to