aboutsummaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorChao-ying Fu <fu@mips.com>2007-08-30 23:09:28 +0000
committerChao-ying Fu <chaoyingfu@gcc.gnu.org>2007-08-30 23:09:28 +0000
commit14c931f14242c901c436e34a04c22b79197edc84 (patch)
tree147d8f8e5f66c5b18b1af215b5ed27814c9a27a1 /gcc/final.c
parentac6b1c676c9713beb3cfe1ac663c60317c57e1f6 (diff)
downloadgcc-14c931f14242c901c436e34a04c22b79197edc84.zip
gcc-14c931f14242c901c436e34a04c22b79197edc84.tar.gz
gcc-14c931f14242c901c436e34a04c22b79197edc84.tar.bz2
c-lex.c (interpret_fixed): Declare.
* 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. From-SVN: r127941
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/final.c b/gcc/final.c
index aac9a9e..7c2b4ea 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)