From cbe679a486d11b1d959042732a9ddc204afbb661 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 17 Apr 2018 23:38:45 +0200 Subject: [PATCH] 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 --- gcc/ChangeLog | 3 +++ gcc/dse.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cce4d3ddb9b..1fba2d92215 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ 2018-04-17 Jakub Jelinek + PR rtl-optimization/85431 + * dse.c (record_store): Ignore zero width stores. + PR sanitizer/85230 * asan.c (handle_builtin_stack_restore): Adjust comment. Emit __asan_allocas_unpoison call and last_alloca_addr = new_sp before 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 -- 2.30.2