[COMMITTED] Fix some testcases after my computed goto patch
Commit Message
From: Andrew Pinski <apinski@marvell.com>
For some reason I did not see these failures in my testing.
Sorry about that. Anyways this fixes the testcases by
adding a cast to __INTPTR_TYPE__ and then a cast to void*.
Committed after testing them on x86_64-linux-gnu.
gcc/testsuite/ChangeLog:
* gcc.c-torture/compile/920826-1.c: Fix computed goto.
* gcc.c-torture/compile/pr27863.c: Likewise.
* gcc.c-torture/compile/pr70190.c: Likewise.
* gcc.dg/torture/pr89135.c: Likewise.
* gcc.dg/torture/pr90071.c: Likewise.
* gcc.dg/vect/bb-slp-pr97709.c: Likewise.
---
gcc/testsuite/gcc.c-torture/compile/920826-1.c | 2 +-
gcc/testsuite/gcc.c-torture/compile/pr27863.c | 2 +-
gcc/testsuite/gcc.c-torture/compile/pr70190.c | 2 +-
gcc/testsuite/gcc.dg/torture/pr89135.c | 2 +-
gcc/testsuite/gcc.dg/torture/pr90071.c | 2 +-
gcc/testsuite/gcc.dg/vect/bb-slp-pr97709.c | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
@@ -1,3 +1,3 @@
/* { dg-require-effective-target indirect_jumps } */
-f(int*x){goto*(char)*x;}
+f(int*x){goto*(void*)(__INTPTR_TYPE__)(char)*x;}
@@ -27,5 +27,5 @@ _loc66:;
*++esp=(long)&&_loc119;
_loc119:;
SetTermStruc:
- goto *(*esp--);
+ goto *(void*)(__INTPTR_TYPE__)(*esp--);
}
@@ -8,7 +8,7 @@ fn1 ()
static char a[] = "foo";
static void *b[] = { &&l1, &&l2 };
goto *(b[1]);
- l1: goto *(a[0]);
+ l1: goto *(void*)(__INTPTR_TYPE__)(a[0]);
l2: return 0;
}
@@ -28,7 +28,7 @@ h:
g = foo ();
*o = g;
if (c)
- goto *d;
+ goto *(void*)d;
}
}
goto *i;
@@ -21,6 +21,6 @@ h: ++e;
goto i;
}
f:
- goto *({ d || e < 0 || e >= 2; });
+ goto *(void*)(__INTPTR_TYPE__)({ d || e < 0 || e >= 2; });
&e;
}
@@ -12,7 +12,7 @@ e()
void *f[] = {&&g, &&h, &&i, &&j};
int d, c;
j:
- goto *a;
+ goto *(void*)(__INTPTR_TYPE__)a;
g:
d = 0;
h: