This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/82778] crash: insn does not satisfy its constraints
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 01 Nov 2017 21:52:52 +0000
- Subject: [Bug rtl-optimization/82778] crash: insn does not satisfy its constraints
- Auto-submitted: auto-generated
- References: <bug-82778-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82778
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Wed Nov 1 21:52:21 2017
New Revision: 254328
URL: https://gcc.gnu.org/viewcvs?rev=254328&root=gcc&view=rev
Log:
PR rtl-optimization/82778
PR rtl-optimization/82597
* compare-elim.c (struct comparison): Add in_a_setter field.
(find_comparison_dom_walker::before_dom_children): Remove killed
bitmap and df_simulate_find_defs call, instead walk the defs.
Compute last_setter and initialize in_a_setter. Merge definitions
with first initialization for a few variables.
(try_validate_parallel): Use insn_invalid_p instead of
recog_memoized. Return insn rather than just the pattern.
(try_merge_compare): Fix up comment. Don't uselessly test if
in_a is a REG_P. Use cmp->in_a_setter instead of walking UD
chains.
(execute_compare_elim_after_reload): Remove df_chain_add_problem
call.
* g++.dg/opt/pr82778.C: New test.
2017-11-01 Michael Collison <michael.collison@arm.com>
PR rtl-optimization/82597
* gcc.dg/pr82597.c: New test.
Added:
trunk/gcc/testsuite/g++.dg/opt/pr82778.C
trunk/gcc/testsuite/gcc.dg/pr82597.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/compare-elim.c
trunk/gcc/testsuite/ChangeLog