re PR middle-end/85196 (ICE in extract_insn, at recog.c:2311: unrecognizable insn)
authorEric Botcazou <ebotcazou@adacore.com>
Fri, 6 Apr 2018 22:30:05 +0000 (22:30 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Fri, 6 Apr 2018 22:30:05 +0000 (22:30 +0000)
commit69128a1730ce956e536faf2f0b0e3f7326e5a52c
tree2a197d72f1c10b72cf68e89772fd4694ca795363
parent5f690e68cb2f92414a77336f9992649f17a86ee0
re PR middle-end/85196 (ICE in extract_insn, at recog.c:2311: unrecognizable insn)

PR target/85196
* config/sparc/sparc.c (sparc_expand_move): Deal with symbolic operands
based on LABEL_REF.  Remove useless assertion.
(pic_address_needs_scratch): Fix formatting.
(sparc_legitimize_pic_address): Minor tweaks.
(sparc_delegitimize_address): Adjust assertion accordingly.
* config/sparc/sparc.md (movsi_pic_label_ref): Change label_ref_operand
into symbolic_operand.
(movsi_high_pic_label_ref): Likewise.
(movsi_lo_sum_pic_label_ref): Likewise.
(movdi_pic_label_ref): Likewise.
(movdi_high_pic_label_ref): Likewise.
(movdi_lo_sum_pic_label_ref): Likewise.

From-SVN: r259194
gcc/ChangeLog
gcc/config/sparc/sparc.c
gcc/config/sparc/sparc.md
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/opt/pr85196.C [new file with mode: 0644]