diff options
author | chaoyingfu <chaoyingfu@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-08-30 23:09:28 +0000 |
---|---|---|
committer | chaoyingfu <chaoyingfu@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-08-30 23:09:28 +0000 |
commit | b563b483b9f482b0ebd10d79d5982fb6eb3653d7 (patch) | |
tree | 147d8f8e5f66c5b18b1af215b5ed27814c9a27a1 /gcc/final.c | |
parent | 84373723043bc16686594a725911ed92be41db24 (diff) | |
download | gcc-b563b483b9f482b0ebd10d79d5982fb6eb3653d7.tar.gz |
* c-lex.c (interpret_fixed): Declare.
(interpret_float): Process _Fract and _Accum.
(interpret_fixed): New function.
* final.c (output_addr_const): Process CONST_FIXED.
* simplify-rtx.c (simplify_const_unary_operation): Handle US_NEG.
(simplify_binary_operation_1): Handle US_ASHIFT, SS_MULT, US_MULT,
SS_DIV, US_DIV.
(simplify_const_binary_operation): Handle SS_MULT, US_MULT, SS_DIV,
US_DIV, US_ASHIFT.
(simplify_immed_subreg): Support CONST_FIXED.
Process MODE_FRACT, MODE_UFRACT, MODE_ACCUM, MODE_UACCUM.
(simplify_subreg): Support CONST_FIXED.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127941 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/final.c')
-rw-r--r-- | gcc/final.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/final.c b/gcc/final.c index aac9a9e3c0f..7c2b4ea9f08 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -3377,6 +3377,10 @@ output_addr_const (FILE *file, rtx x) output_operand_lossage ("floating constant misused"); break; + case CONST_FIXED: + fprintf (file, HOST_WIDE_INT_PRINT_HEX, CONST_FIXED_VALUE_LOW (x)); + break; + case PLUS: /* Some assemblers need integer constants to appear last (eg masm). */ if (GET_CODE (XEXP (x, 0)) == CONST_INT) |