Commit d398d903 by Gunther Nikl Committed by Nathan Froyd

rs6000.c (print_operand): Also use print_operand_address and puts to output the operand for CONST.

	* config/rs6000/rs6000.c (print_operand) <'K'>: Also use
	print_operand_address and puts to output the operand for CONST.

From-SVN: r160945
parent 654bbfea
2010-06-17 Gunther Nikl <gnikl@users.sourceforge.net>
* config/rs6000/rs6000.c (print_operand) <'K'>: Also use
print_operand_address and puts to output the operand for CONST.
2010-06-17 Jakub Jelinek <jakub@redhat.com> 2010-06-17 Jakub Jelinek <jakub@redhat.com>
PR debug/44572 PR debug/44572
......
...@@ -14885,27 +14885,16 @@ print_operand (FILE *file, rtx x, int code) ...@@ -14885,27 +14885,16 @@ print_operand (FILE *file, rtx x, int code)
/* X must be a symbolic constant on ELF. Write an /* X must be a symbolic constant on ELF. Write an
expression suitable for an 'addi' that adds in the low 16 expression suitable for an 'addi' that adds in the low 16
bits of the MEM. */ bits of the MEM. */
if (GET_CODE (x) != CONST) if (GET_CODE (x) == CONST)
{
print_operand_address (file, x);
fputs ("@l", file);
}
else
{ {
if (GET_CODE (XEXP (x, 0)) != PLUS if (GET_CODE (XEXP (x, 0)) != PLUS
|| (GET_CODE (XEXP (XEXP (x, 0), 0)) != SYMBOL_REF || (GET_CODE (XEXP (XEXP (x, 0), 0)) != SYMBOL_REF
&& GET_CODE (XEXP (XEXP (x, 0), 0)) != LABEL_REF) && GET_CODE (XEXP (XEXP (x, 0), 0)) != LABEL_REF)
|| GET_CODE (XEXP (XEXP (x, 0), 1)) != CONST_INT) || GET_CODE (XEXP (XEXP (x, 0), 1)) != CONST_INT)
output_operand_lossage ("invalid %%K value"); output_operand_lossage ("invalid %%K value");
print_operand_address (file, XEXP (XEXP (x, 0), 0));
fputs ("@l", file);
/* For GNU as, there must be a non-alphanumeric character
between 'l' and the number. The '-' is added by
print_operand() already. */
if (INTVAL (XEXP (XEXP (x, 0), 1)) >= 0)
fputs ("+", file);
print_operand (file, XEXP (XEXP (x, 0), 1), 0);
} }
print_operand_address (file, x);
fputs ("@l", file);
return; return;
/* %l is output_asm_label. */ /* %l is output_asm_label. */
......
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