diff options
author | Alexander Ivchenko <aivchenk@gcc.gnu.org> | 2016-12-27 15:35:19 +0000 |
---|---|---|
committer | Alexander Ivchenko <aivchenk@gcc.gnu.org> | 2016-12-27 15:35:19 +0000 |
commit | bffa6b6c6214169d8d10f05a418f9f072235f068 (patch) | |
tree | e2879c0655bdacaf6b2e1c5755568957d0b3f79d /gcc | |
parent | 2700d0e3ab767c765246cdc480ff7ad5792eb2e6 (diff) | |
download | gcc-bffa6b6c6214169d8d10f05a418f9f072235f068.zip gcc-bffa6b6c6214169d8d10f05a418f9f072235f068.tar.gz gcc-bffa6b6c6214169d8d10f05a418f9f072235f068.tar.bz2 |
libtool-version: New version.
libmpx/
2016-12-27 H.J. Lu <hongjiu.lu@intel.com>
Alexander Ivchenko <alexander.ivchenko@intel.com>
* mpxwrap/libtool-version: New version.
* mpxwrap/mpx_wrappers.c (__mpx_wrapper_realloc): Make it
static with external alias.
(__mpx_wrapper_bzero): Ditto.
(mpx_wrapper_memcpy): Ditto.
(__mpx_wrapper_mempcpy): Ditto.
From-SVN: r243942
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/mpx/memcpy-1.c | 23 |
2 files changed, 27 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6fb5b25..fd5ca94 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -5,6 +5,10 @@ 2016-12-27 Alexander Ivchenko <alexander.ivchenko@intel.com> + * gcc.target/i386/mpx/memcpy-1.c: New test. + +2016-12-27 Alexander Ivchenko <alexander.ivchenko@intel.com> + * gcc.target/i386/mpx/vla-trailing-1-lbv.c: New test. * gcc.target/i386/mpx/vla-trailing-1-nov.c: Ditto. * gcc.target/i386/mpx/vla-trailing-1-ubv.c: Ditto. diff --git a/gcc/testsuite/gcc.target/i386/mpx/memcpy-1.c b/gcc/testsuite/gcc.target/i386/mpx/memcpy-1.c new file mode 100644 index 0000000..1691348 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/mpx/memcpy-1.c @@ -0,0 +1,23 @@ +/* { dg-do run } */ +/* { dg-shouldfail "bounds violation" } */ +/* { dg-options "-fcheck-pointer-bounds -mmpx" } */ + +/* Fix for PR78631 */ + +#define SHOULDFAIL + +#include <stdio.h> +#include <string.h> + +char s[10]; +char d[10]; +__attribute__((noinline)) + +char* foo(char* dst, char* src, size_t size) { + return memcpy(dst, src, size); +} +int main() { + char* r = foo(d, s, 11); + printf("r = %p\n", r); + return 0; +} |