mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-24 03:14:08 +08:00
s390.c (print_operand_address): Replace 'error' with 'output_operand_lossage'.
2011-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * config/s390/s390.c (print_operand_address): Replace 'error' with 'output_operand_lossage'. (print_operand): Likewise. From-SVN: r168748
This commit is contained in:
parent
29fa95ed57
commit
3f3c098d96
@ -1,3 +1,9 @@
|
||||
2011-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
|
||||
|
||||
* config/s390/s390.c (print_operand_address): Replace 'error' with
|
||||
'output_operand_lossage'.
|
||||
(print_operand): Likewise.
|
||||
|
||||
2011-01-13 Jeff Law <law@redhat.com>
|
||||
|
||||
* PR rtl-optimization/39077
|
||||
|
@ -5131,7 +5131,8 @@ print_operand_address (FILE *file, rtx addr)
|
||||
{
|
||||
if (!TARGET_Z10)
|
||||
{
|
||||
error ("symbolic memory references are only supported on z10 or later");
|
||||
output_operand_lossage ("symbolic memory references are "
|
||||
"only supported on z10 or later");
|
||||
return;
|
||||
}
|
||||
output_addr_const (file, addr);
|
||||
@ -5200,7 +5201,8 @@ print_operand (FILE *file, rtx x, int code)
|
||||
else if (GET_CODE (x) == GT)
|
||||
fprintf (file, "h");
|
||||
else
|
||||
error ("invalid comparison operator for 'E' output modifier");
|
||||
output_operand_lossage ("invalid comparison operator "
|
||||
"for 'E' output modifier");
|
||||
return;
|
||||
|
||||
case 'J':
|
||||
@ -5220,7 +5222,7 @@ print_operand (FILE *file, rtx x, int code)
|
||||
assemble_name (file, get_some_local_dynamic_name ());
|
||||
}
|
||||
else
|
||||
error ("invalid reference for 'J' output modifier");
|
||||
output_operand_lossage ("invalid reference for 'J' output modifier");
|
||||
return;
|
||||
|
||||
case 'G':
|
||||
@ -5234,7 +5236,8 @@ print_operand (FILE *file, rtx x, int code)
|
||||
|
||||
if (!MEM_P (x))
|
||||
{
|
||||
error ("memory reference expected for 'O' output modifier");
|
||||
output_operand_lossage ("memory reference expected for "
|
||||
"'O' output modifier");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -5244,7 +5247,7 @@ print_operand (FILE *file, rtx x, int code)
|
||||
|| (ad.base && !REGNO_OK_FOR_BASE_P (REGNO (ad.base)))
|
||||
|| ad.indx)
|
||||
{
|
||||
error ("invalid address for 'O' output modifier");
|
||||
output_operand_lossage ("invalid address for 'O' output modifier");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -5262,7 +5265,8 @@ print_operand (FILE *file, rtx x, int code)
|
||||
|
||||
if (!MEM_P (x))
|
||||
{
|
||||
error ("memory reference expected for 'R' output modifier");
|
||||
output_operand_lossage ("memory reference expected for "
|
||||
"'R' output modifier");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -5272,7 +5276,7 @@ print_operand (FILE *file, rtx x, int code)
|
||||
|| (ad.base && !REGNO_OK_FOR_BASE_P (REGNO (ad.base)))
|
||||
|| ad.indx)
|
||||
{
|
||||
error ("invalid address for 'R' output modifier");
|
||||
output_operand_lossage ("invalid address for 'R' output modifier");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -5290,7 +5294,8 @@ print_operand (FILE *file, rtx x, int code)
|
||||
|
||||
if (!MEM_P (x))
|
||||
{
|
||||
error ("memory reference expected for 'S' output modifier");
|
||||
output_operand_lossage ("memory reference expected for "
|
||||
"'S' output modifier");
|
||||
return;
|
||||
}
|
||||
ret = s390_decompose_address (XEXP (x, 0), &ad);
|
||||
@ -5299,7 +5304,7 @@ print_operand (FILE *file, rtx x, int code)
|
||||
|| (ad.base && !REGNO_OK_FOR_BASE_P (REGNO (ad.base)))
|
||||
|| ad.indx)
|
||||
{
|
||||
error ("invalid address for 'S' output modifier");
|
||||
output_operand_lossage ("invalid address for 'S' output modifier");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -5319,7 +5324,8 @@ print_operand (FILE *file, rtx x, int code)
|
||||
else if (GET_CODE (x) == MEM)
|
||||
x = change_address (x, VOIDmode, plus_constant (XEXP (x, 0), 4));
|
||||
else
|
||||
error ("register or memory expression expected for 'N' output modifier");
|
||||
output_operand_lossage ("register or memory expression expected "
|
||||
"for 'N' output modifier");
|
||||
break;
|
||||
|
||||
case 'M':
|
||||
@ -5328,7 +5334,8 @@ print_operand (FILE *file, rtx x, int code)
|
||||
else if (GET_CODE (x) == MEM)
|
||||
x = change_address (x, VOIDmode, plus_constant (XEXP (x, 0), 8));
|
||||
else
|
||||
error ("register or memory expression expected for 'M' output modifier");
|
||||
output_operand_lossage ("register or memory expression expected "
|
||||
"for 'M' output modifier");
|
||||
break;
|
||||
|
||||
case 'Y':
|
||||
@ -5387,21 +5394,26 @@ print_operand (FILE *file, rtx x, int code)
|
||||
else if (code == 'x')
|
||||
fprintf (file, HOST_WIDE_INT_PRINT_DEC, CONST_DOUBLE_LOW (x) & 0xffff);
|
||||
else if (code == 'h')
|
||||
fprintf (file, HOST_WIDE_INT_PRINT_DEC, ((CONST_DOUBLE_LOW (x) & 0xffff) ^ 0x8000) - 0x8000);
|
||||
fprintf (file, HOST_WIDE_INT_PRINT_DEC,
|
||||
((CONST_DOUBLE_LOW (x) & 0xffff) ^ 0x8000) - 0x8000);
|
||||
else
|
||||
{
|
||||
if (code == 0)
|
||||
error ("invalid constant - try using an output modifier");
|
||||
output_operand_lossage ("invalid constant - try using "
|
||||
"an output modifier");
|
||||
else
|
||||
error ("invalid constant for output modifier '%c'", code);
|
||||
output_operand_lossage ("invalid constant for output modifier '%c'",
|
||||
code);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
if (code == 0)
|
||||
error ("invalid expression - try using an output modifier");
|
||||
output_operand_lossage ("invalid expression - try using "
|
||||
"an output modifier");
|
||||
else
|
||||
error ("invalid expression for output modifier '%c'", code);
|
||||
output_operand_lossage ("invalid expression for output "
|
||||
"modifier '%c'", code);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user