diff options
author | Ilya Enkovich <ilya.enkovich@intel.com> | 2015-03-25 12:41:27 +0000 |
---|---|---|
committer | Ilya Enkovich <ienkovich@gcc.gnu.org> | 2015-03-25 12:41:27 +0000 |
commit | b2953ba0cb7deb9202c6be5ecbbb9d078cede900 (patch) | |
tree | 56b77c8ccd2e4215ddbbe4945e04b06357a05d6b /gcc | |
parent | 2bb9e67fff9e16f18d720c7cb5babbd5523f789f (diff) | |
download | gcc-b2953ba0cb7deb9202c6be5ecbbb9d078cede900.zip gcc-b2953ba0cb7deb9202c6be5ecbbb9d078cede900.tar.gz gcc-b2953ba0cb7deb9202c6be5ecbbb9d078cede900.tar.bz2 |
re PR target/65508 (ICE: in initialize_inlined_parameters, at tree-inline.c:3305 with -fcheck-pointer-bounds -mmpx and nested function)
gcc/
PR target/65508
* tree-chkp.c (chkp_add_bounds_to_call_stmt): Set static
chain for generated call.
gcc/testsuite/
PR target/65508
* gcc.target/i386/mpx/pr65508.c: New.
From-SVN: r221661
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/mpx/pr65508.c | 12 | ||||
-rw-r--r-- | gcc/tree-chkp.c | 1 |
4 files changed, 24 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b4c8aff..fbef8a1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-03-25 Ilya Enkovich <ilya.enkovich@intel.com> + + PR target/65508 + * tree-chkp.c (chkp_add_bounds_to_call_stmt): Set static + chain for generated call. + 2015-03-25 Richard Biener <rguenther@suse.de> * passes.c (pass_manager::execute_early_local_passes): Guard diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index cf3b288..f92db23 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-03-25 Ilya Enkovich <ilya.enkovich@intel.com> + + PR target/65508 + * gcc.target/i386/mpx/pr65508.c: New. + 2015-03-25 Mikael Morin <mikael@gcc.gnu.org> PR fortran/64952 diff --git a/gcc/testsuite/gcc.target/i386/mpx/pr65508.c b/gcc/testsuite/gcc.target/i386/mpx/pr65508.c new file mode 100644 index 0000000..9060287 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/mpx/pr65508.c @@ -0,0 +1,12 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -fcheck-pointer-bounds -mmpx" } */ + +void +bar (int N) +{ + int a[N]; + void foo (int a[N]) + { + } + foo (a); +} diff --git a/gcc/tree-chkp.c b/gcc/tree-chkp.c index 977c460..03f75b3 100644 --- a/gcc/tree-chkp.c +++ b/gcc/tree-chkp.c @@ -1838,6 +1838,7 @@ chkp_add_bounds_to_call_stmt (gimple_stmt_iterator *gsi) new_call = gimple_build_call_vec (gimple_op (call, 1), new_args); gimple_call_set_lhs (new_call, gimple_call_lhs (call)); gimple_call_copy_flags (new_call, call); + gimple_call_set_chain (new_call, gimple_call_chain (call)); } new_args.release (); |