diff options
author | Jakub Jelinek <jakub@redhat.com> | 2018-02-22 09:28:42 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2018-02-22 09:28:42 +0100 |
commit | c5679c37aad3775ecbb41b1a191514b13bf73f77 (patch) | |
tree | 38ab37d523c307e1c49bcda952b3c3b0814ed074 /libgfortran | |
parent | ad18eed284cc7a461f2030a7c0996f69048a9e92 (diff) | |
download | gcc-c5679c37aad3775ecbb41b1a191514b13bf73f77.zip gcc-c5679c37aad3775ecbb41b1a191514b13bf73f77.tar.gz gcc-c5679c37aad3775ecbb41b1a191514b13bf73f77.tar.bz2 |
re PR tree-optimization/84503 (store-merging miscompilation on powerpc64 with -O3 since r241789)
PR tree-optimization/84503
* gimple-ssa-store-merging.c (merged_store_group::merge_into): Compute
width as info->bitpos + info->bitsize - start.
(merged_store_group::merge_overlapping): Simplify width computation.
(check_no_overlap): New function.
(imm_store_chain_info::try_coalesce_bswap): Compute expected
start + width and last_order of the group, fail if check_no_overlap
fails.
(imm_store_chain_info::coalesce_immediate_stores): Don't merge info
to group if check_no_overlap fails.
* gcc.dg/pr84503-1.c: New test.
* gcc.dg/pr84503-2.c: New test.
From-SVN: r257891
Diffstat (limited to 'libgfortran')
0 files changed, 0 insertions, 0 deletions