[Bug target/81534] [7/8 Regression] ICE in in extract_insn, at recog.c:2311 (unrecognizable insn)
krebbel at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jul 27 10:42:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81534
--- Comment #2 from Andreas Krebbel <krebbel at gcc dot gnu.org> ---
Author: krebbel
Date: Thu Jul 27 10:42:22 2017
New Revision: 250618
URL: https://gcc.gnu.org/viewcvs?rev=250618&root=gcc&view=rev
Log:
S/390: Fix PR81534
The HI/QI atomic_fetch_<atomic><mode>" expander accepted symbolic
references and emitted CAS patterns whose insn predicates rejected them.
Fixed by allowing symbolic references there as well. Reload will get
rid of them due to the constraint letter.
Regression tested on s390x.
gcc/ChangeLog:
2017-07-27 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Backport from mainline
2017-07-27 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
PR target/81534
* config/s390/s390.md ("*atomic_compare_and_swap<mode>_1")
("*atomic_compare_and_swapdi_2", "*atomic_compare_and_swapsi_3"):
Change s_operand to memory_operand.
gcc/testsuite/ChangeLog:
2017-07-27 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Backport from mainline
2017-07-27 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
PR target/81534
* gcc.target/s390/pr81534.c: New test.
Added:
branches/gcc-7-branch/gcc/testsuite/gcc.target/s390/pr81534.c
Modified:
branches/gcc-7-branch/gcc/ChangeLog
branches/gcc-7-branch/gcc/config/s390/s390.md
branches/gcc-7-branch/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list