re PR target/65602 (gcc.target/i386/mpx tests FAIL)
authorIlya Enkovich <ilya.enkovich@intel.com>
Tue, 31 Mar 2015 08:24:38 +0000 (08:24 +0000)
committerIlya Enkovich <ienkovich@gcc.gnu.org>
Tue, 31 Mar 2015 08:24:38 +0000 (08:24 +0000)
PR target/65602
* gcc.target/i386/mpx/alloca-1-lbv.c (mpx_test): Use
__builtin_alloca instead of alloca.
* gcc.target/i386/mpx/alloca-1-nov.c (mpx_test): Likewise.
* gcc.target/i386/mpx/alloca-1-ubv.c (mpx_test): Likewise.
* lib/mpx-dg.exp (check_effective_target_mpx): Add wrapper
check.

From-SVN: r221787

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/mpx/alloca-1-lbv.c
gcc/testsuite/gcc.target/i386/mpx/alloca-1-nov.c
gcc/testsuite/gcc.target/i386/mpx/alloca-1-ubv.c
gcc/testsuite/lib/mpx-dg.exp

index 708d8c65ad46c28b789a2866c79e945c6085b892..04b5fadb94db10006afae37d7a602e7249efcbb9 100644 (file)
@@ -1,3 +1,13 @@
+2015-03-31  Ilya Enkovich  <ilya.enkovich@intel.com>
+
+       PR target/65602
+       * gcc.target/i386/mpx/alloca-1-lbv.c (mpx_test): Use
+       __builtin_alloca instead of alloca.
+       * gcc.target/i386/mpx/alloca-1-nov.c (mpx_test): Likewise.
+       * gcc.target/i386/mpx/alloca-1-ubv.c (mpx_test): Likewise.
+       * lib/mpx-dg.exp (check_effective_target_mpx): Add wrapper
+       check.
+
 2015-03-30  Jakub Jelinek  <jakub@redhat.com>
 
        PR ipa/65610
index f81a5e25f32b941bcdfbdd92b76b7e210ef74460..57c05d33f8927bcc3676aa479b3ca02c37e2b5b2 100644 (file)
@@ -16,7 +16,7 @@ int rd (int *p, int i)
 
 int mpx_test (int argc, const char **argv)
 {
-  int *buf = (int *)alloca (100 * sizeof(int));
+  int *buf = (int *)__buitlin_alloca (100 * sizeof(int));
 
   rd (buf, -1);
 
index 162b4d572703f7448e14ee8555c62256eb7346a2..835015fc43203f80f32d4646526ab7dc971a3f99 100644 (file)
@@ -13,7 +13,7 @@ int rd (int *p, int i)
 
 int mpx_test (int argc, const char **argv)
 {
-  int *buf = (int *)alloca (100 * sizeof(int));
+  int *buf = (int *)__builtin_alloca (100 * sizeof(int));
 
   rd (buf, 0);
   rd (buf, 99);
index 9af3f11ac49e572494729ee0302425c6f7e51c57..c57c6c4811f7fdc045cca7148325d7016ca2a682 100644 (file)
@@ -16,7 +16,7 @@ int rd (int *p, int i)
 
 int mpx_test (int argc, const char **argv)
 {
-  int *buf = (int *)alloca (100 * sizeof(int));
+  int *buf = (int *)__builtin_alloca (100 * sizeof(int));
 
   rd (buf, 100);
 
index 0b731a7ee46c4ef777b0747fdf1077f068ec6e3b..c8f64cddd271c45def490d6134a38ae882913eee 100644 (file)
 proc check_effective_target_mpx {} {
     return [check_no_compiler_messages mpx executable {
        int *foo (int *arg) { return arg; }
-       int main (void) { return foo ((void *)0) == 0; }
+       int main (void)
+       {
+           int *p = __builtin_malloc (sizeof (int));
+           int res = foo (p) == 0;
+           __builtin_free (p);
+           return res;
+       }
     } "-fcheck-pointer-bounds -mmpx"]
 }