Commit 145f6c5b by Eric Botcazou Committed by Eric Botcazou

sparc.c (sparc_delegitimize_address): Handle UNSPEC_MOVE_PIC pattern.

	* config/sparc/sparc.c (sparc_delegitimize_address): Handle
	UNSPEC_MOVE_PIC pattern.

From-SVN: r174043
parent 8ac79835
2011-05-22 Eric Botcazou <ebotcazou@adacore.com>
* config/sparc/sparc.c (sparc_delegitimize_address): Handle
UNSPEC_MOVE_PIC pattern.
2011-05-22 Eric Botcazou <ebotcazou@adacore.com>
* config.gcc (sparc-*-elf*): Add sparc/t-crtin.
(sparc-*-rtems*): Likewise.
(sparc64-*-elf*): Likewise.
......
......@@ -3615,13 +3615,17 @@ sparc_delegitimize_address (rtx x)
{
x = delegitimize_mem_from_attrs (x);
if (GET_CODE (x) == LO_SUM
&& GET_CODE (XEXP (x, 1)) == UNSPEC
&& XINT (XEXP (x, 1), 1) == UNSPEC_TLSLE)
{
x = XVECEXP (XEXP (x, 1), 0, 0);
gcc_assert (GET_CODE (x) == SYMBOL_REF);
}
if (GET_CODE (x) == LO_SUM && GET_CODE (XEXP (x, 1)) == UNSPEC)
switch (XINT (XEXP (x, 1), 1))
{
case UNSPEC_MOVE_PIC:
case UNSPEC_TLSLE:
x = XVECEXP (XEXP (x, 1), 0, 0);
gcc_assert (GET_CODE (x) == SYMBOL_REF);
break;
default:
break;
}
/* This is generated by mov{si,di}_pic_label_ref in PIC mode. */
if (GET_CODE (x) == MINUS
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment