diff options
author | Martin Liska <mliska@suse.cz> | 2017-11-21 14:39:14 +0100 |
---|---|---|
committer | Martin Liska <marxin@gcc.gnu.org> | 2017-11-21 13:39:14 +0000 |
commit | 938f9248db10f40bd95f09a53742e9063d4814ae (patch) | |
tree | 91c9d0c44fc7b5f85ce97e48bc0232423cb36f0b /gcc | |
parent | ddc1759a351bcf186aeafa34613ccc89cdba4913 (diff) | |
download | gcc-938f9248db10f40bd95f09a53742e9063d4814ae.zip gcc-938f9248db10f40bd95f09a53742e9063d4814ae.tar.gz gcc-938f9248db10f40bd95f09a53742e9063d4814ae.tar.bz2 |
Fix UBSAN errors in dse.c (PR rtl-optimization/82044).
2017-11-21 Martin Liska <mliska@suse.cz>
PR rtl-optimization/82044
PR tree-optimization/82042
* dse.c (check_mem_read_rtx): Check for overflow.
From-SVN: r255001
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/dse.c | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2f13296..eb2bdd6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-11-21 Martin Liska <mliska@suse.cz> + + PR rtl-optimization/82044 + PR tree-optimization/82042 + * dse.c (check_mem_read_rtx): Check for overflow. + 2017-11-21 Aldy Hernandez <aldyh@redhat.com> * tree-ssa-threadbackward.c (find_jump_threads_backwards): Fix @@ -1981,6 +1981,12 @@ check_mem_read_rtx (rtx *loc, bb_info_t bb_info) else width = GET_MODE_SIZE (GET_MODE (mem)); + if (offset > HOST_WIDE_INT_MAX - width) + { + clear_rhs_from_active_local_stores (); + return; + } + read_info = read_info_type_pool.allocate (); read_info->group_id = group_id; read_info->mem = mem; |