re PR target/77324 (ICE in push_reload, at reload.c:1350)

PR target/77324
	* config/sparc/sparc.c (sparc_legitimate_address_p): Accept special
	HIGH+LO construct during reload.

From-SVN: r239807
This commit is contained in:
Eric Botcazou 2016-08-28 08:50:09 +00:00 committed by Eric Botcazou
parent f329b264b3
commit 710a2e1028
2 changed files with 13 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2016-08-28 Eric Botcazou <ebotcazou@adacore.com>
PR target/77324
* config/sparc/sparc.c (sparc_legitimate_address_p): Accept special
HIGH+LO construct during reload.
2016-08-28 Tom de Vries <tom@codesourcery.com>
PR lto/70955

View File

@ -4039,6 +4039,13 @@ sparc_legitimate_address_p (machine_mode mode, rtx addr, bool strict)
than the alignment (8) may cause the LO_SUM to overflow. */
if (mode == TFmode && TARGET_ARCH32)
return 0;
/* During reload, accept the HIGH+LO_SUM construct generated by
sparc_legitimize_reload_address. */
if (reload_in_progress
&& GET_CODE (rs1) == HIGH
&& XEXP (rs1, 0) == imm1)
return 1;
}
else if (GET_CODE (addr) == CONST_INT && SMALL_INT (addr))
return 1;