diff options
author | Ilya Enkovich <ienkovich@gcc.gnu.org> | 2015-11-26 11:49:20 +0000 |
---|---|---|
committer | Ilya Enkovich <ienkovich@gcc.gnu.org> | 2015-11-26 11:49:20 +0000 |
commit | d0470103a9e3432d0ed1a726369b8311631dcfe1 (patch) | |
tree | 2674ff0830fbd1056a2266d5368fc51c4a6f29aa | |
parent | 182a9973035b6a6c40a28320e19bbf13c6e19fd8 (diff) | |
download | gcc-d0470103a9e3432d0ed1a726369b8311631dcfe1.zip gcc-d0470103a9e3432d0ed1a726369b8311631dcfe1.tar.gz gcc-d0470103a9e3432d0ed1a726369b8311631dcfe1.tar.bz2 |
re PR target/68416 ([MPX] GCC emits a lot of redundant bndmov instructions)
gcc/
2015-11-26 Vladimir Makarov <vmakarov@redhat.com>
PR target/68416
* config/i386/i386.h (enum reg_class): Add
bounds registers to ALL_REGS.
gcc/testsuite/
2015-11-26 Ilya Enkovich <enkovich.gnu@gmail.com>
PR target/68416
* gcc.target/i386/mpx/pr68416.c: New test.
From-SVN: r230938
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/i386/i386.h | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/mpx/pr68416.c | 9 |
4 files changed, 21 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c021524..55c8820 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-11-26 Vladimir Makarov <vmakarov@redhat.com> + + PR target/68416 + * config/i386/i386.h (enum reg_class): Add + bounds registers to ALL_REGS. + 2015-11-26 Jakub Jelinek <jakub@redhat.com> PR tree-optimization/68128 diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index ceda472..e69c9cc 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -1457,7 +1457,7 @@ enum reg_class { 0x1ff1ffff,0xffffffe0, 0x1f }, /* FLOAT_INT_SSE_REGS */ \ { 0x0, 0x0, 0x1fc0 }, /* MASK_EVEX_REGS */ \ { 0x0, 0x0, 0x1fe0 }, /* MASK_REGS */ \ -{ 0xffffffff,0xffffffff, 0x1fff } \ +{ 0xffffffff,0xffffffff,0x1ffff } \ } /* The same information, inverted: diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 1152137..6f6cc20 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-11-26 Ilya Enkovich <enkovich.gnu@gmail.com> + + PR target/68416 + * gcc.target/i386/mpx/pr68416.c: New test. + 2015-11-26 Paolo Carlini <paolo.carlini@oracle.com> PR c++/67313 diff --git a/gcc/testsuite/gcc.target/i386/mpx/pr68416.c b/gcc/testsuite/gcc.target/i386/mpx/pr68416.c new file mode 100644 index 0000000..10587ed --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/mpx/pr68416.c @@ -0,0 +1,9 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -mmpx -fcheck-pointer-bounds" } */ +/* { dg-final { scan-assembler-not "bndmov" } } */ + +int +foo(int **arr, int i) +{ + return (*arr)[i]; +} |