diff options
author | Ilya Enkovich <enkovich.gnu@gmail.com> | 2015-06-18 10:14:38 +0000 |
---|---|---|
committer | Ilya Enkovich <ienkovich@gcc.gnu.org> | 2015-06-18 10:14:38 +0000 |
commit | 855f036dcc09c3c0a7718bdcb0fd4125b57c1dce (patch) | |
tree | 555dbafe475f14c973a8d7cf45e60c09bd75dc1f /gcc/tree-chkp.c | |
parent | 847ffe1718d3eac1a1e605686e8bb27b25969ef0 (diff) | |
download | gcc-855f036dcc09c3c0a7718bdcb0fd4125b57c1dce.zip gcc-855f036dcc09c3c0a7718bdcb0fd4125b57c1dce.tar.gz gcc-855f036dcc09c3c0a7718bdcb0fd4125b57c1dce.tar.bz2 |
re PR middle-end/66568 ([CHKP] internal compiler error: in expand_expr_addr_expr_1)
gcc/
PR middle-end/66568
* cfgexpand.c (expand_return): Handle missing bounds.
(expand_gimple_stmt_1): Likewise.
* tree-chkp.c (chkp_expand_zero_bounds): New.
* tree-chkp.h (chkp_expand_zero_bounds): New.
gcc/testsuite/
PR middle-end/66568
* gcc.target/i386/mpx/pr66568.c: New test.
From-SVN: r224601
Diffstat (limited to 'gcc/tree-chkp.c')
-rw-r--r-- | gcc/tree-chkp.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/tree-chkp.c b/gcc/tree-chkp.c index ed734e6..7ffec7b 100644 --- a/gcc/tree-chkp.c +++ b/gcc/tree-chkp.c @@ -466,6 +466,21 @@ chkp_gimple_call_builtin_p (gimple call, return false; } +/* Emit code to build zero bounds and return RTL holding + the result. */ +rtx +chkp_expand_zero_bounds () +{ + tree zero_bnd; + + if (flag_chkp_use_static_const_bounds) + zero_bnd = chkp_get_zero_bounds_var (); + else + zero_bnd = chkp_build_make_bounds_call (integer_zero_node, + integer_zero_node); + return expand_normal (zero_bnd); +} + /* Emit code to store zero bounds for PTR located at MEM. */ void chkp_expand_bounds_reset_for_mem (tree mem, tree ptr) |