summaryrefslogtreecommitdiff
path: root/gcc/dse.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2018-04-17 23:38:45 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2018-04-17 23:38:45 +0200
commitcbe679a486d11b1d959042732a9ddc204afbb661 (patch)
tree3b848e97175cf19e67adf7c6ceb38fd5ca89f496 /gcc/dse.c
parent3f586095d5c004b73d33dcb944705a4b0b07710a (diff)
re PR rtl-optimization/85431 (UBSAN: ../../gcc/dse.c:303:15: runtime error: shift exponent 64 is too large for 64-bit type 'long unsigned int')
PR rtl-optimization/85431 * dse.c (record_store): Ignore zero width stores. From-SVN: r259448
Diffstat (limited to 'gcc/dse.c')
-rw-r--r--gcc/dse.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/dse.c b/gcc/dse.c
index 1ef8f642719..26c6007b9ed 100644
--- a/gcc/dse.c
+++ b/gcc/dse.c
@@ -1417,6 +1417,9 @@ record_store (rtx body, bb_info_t bb_info)
return 0;
}
+ if (known_eq (width, 0))
+ return 0;
+
if (group_id >= 0)
{
/* In the restrictive case where the base is a constant or the