GCC DejaGNU regressions

The GCC DejaGNU testsuite has discovered some regressions. Here's one; this was reduced from testsuite/gcc.apple/4656532.c:

typedef long long __m64 __attribute__ ((__vector_size__ (8), __may_alias__));
static __inline __m64 __attribute__((__always_inline__, __nodebug__)) _mm_slli_si64 (__m64 __m, int __count) {
}
__m64 x, y;
void t1(int n) {
   y = _mm_slli_si64(x, n);
}

Compiled with LLVM-GCC (v76963) on Darwin/x86, this generates an ICE in the GCC/LLVM conversion layer.

Here's another test that want's to provoke lots of null pointer diagnostics; several such diagnostics are no longer happening, on lines 69, 71, 72, 75, 77, and 78:

nonnull-3.c (5.28 KB)

regressions.txt (386 KB)

The GCC DejaGNU testsuite has discovered some regressions. Here's one; this was reduced from testsuite/gcc.apple/4656532.c:

typedef long long __m64 __attribute__ ((__vector_size__ (8), __may_alias__));
static __inline __m64 __attribute__((__always_inline__, __nodebug__)) _mm_slli_si64 (__m64 __m, int __count) {
}
__m64 x, y;
void t1(int n) {
y = _mm_slli_si64(x, n);
}

Compiled with LLVM-GCC (v76963) on Darwin/x86, this generates an ICE in the GCC/LLVM conversion layer.

Here's another test that want's to provoke lots of null pointer diagnostics; several such diagnostics are no longer happening, on lines 69, 71, 72, 75, 77, and 78:

<nonnull-3.c>

Here's another test that aborts at runtime (it's gcc.dg/pr26719.c):

/* { dg-do compile } */
/* { dg-do run } */
/* { dg-options "-O2" } */

void abort (void);

int table[32][256];

int main(void)
{
int i, j;

for (i = 0; i < 32; i++)
   for (j = 0; j < 256; j++)
     table[i][j] = ((signed char)j) * i;

if (table[9][132] != -1116)
   abort ();

return 0;
}

I've only scratched the surface here; my low-priority testing rig thinks it has found 400+ regressions. (It's wrong; it didn't locate libstdc++ this time, so most of the C++ tests failed.)

Do any of these "ring a bell" with anyone?

It doesn't sound familiar. Go ahead and file PRs for them. Thanks!

-bw

This one is fixed in r77078.

Dan