diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e91f54e8cfe..1a3d1221813 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2011-01-13 Andreas Krebbel + + * config/s390/s390.c (print_operand_address): Replace 'error' with + 'output_operand_lossage'. + (print_operand): Likewise. + 2011-01-13 Jeff Law * PR rtl-optimization/39077 diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c index c0389bf4d8f..efbf03503d0 100644 --- a/gcc/config/s390/s390.c +++ b/gcc/config/s390/s390.c @@ -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; } }