Commit ac223183 by Segher Boessenkool Committed by Segher Boessenkool

rs6000: Put back the 's' output modifier

It turns out the 's' output modifier is used in some glibc math code,
and is in an installed header even.  So let's put it back, it is much
less of a burden supporting it a bit longer than to deal with the fallout.
(It is also being fixed for glibc.)


	* config/rs6000/rs6000.c (print_operand): Rollback 's' removal.

From-SVN: r232900
parent cbdd8ae0
2016-01-27 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/rs6000.c (print_operand): Rollback 's' removal.
2016-01-27 Jeff Law <law@redhat.com> 2016-01-27 Jeff Law <law@redhat.com>
PR tree-optimization/68398 PR tree-optimization/68398
......
...@@ -19949,6 +19949,14 @@ print_operand (FILE *file, rtx x, int code) ...@@ -19949,6 +19949,14 @@ print_operand (FILE *file, rtx x, int code)
fprintf (file, "%d", 128 >> (REGNO (x) - CR0_REGNO)); fprintf (file, "%d", 128 >> (REGNO (x) - CR0_REGNO));
return; return;
case 's':
/* Low 5 bits of 32 - value */
if (! INT_P (x))
output_operand_lossage ("invalid %%s value");
else
fprintf (file, HOST_WIDE_INT_PRINT_DEC, (32 - INTVAL (x)) & 31);
return;
case 't': case 't':
/* Like 'J' but get to the OVERFLOW/UNORDERED bit. */ /* Like 'J' but get to the OVERFLOW/UNORDERED bit. */
gcc_assert (REG_P (x) && GET_MODE (x) == CCmode); gcc_assert (REG_P (x) && GET_MODE (x) == CCmode);
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