diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-08 18:29:18 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-08 18:29:18 +0000 |
commit | 167a3fa54362dcfe6cb3ef3b92e1d27784c415c4 (patch) | |
tree | 39d3113999a59bc49ff73a06408842ee861973fd /gcc/c-pretty-print.c | |
parent | 06dd9e696544873a14db4c5f832fef0c42f719fd (diff) | |
download | gcc-167a3fa54362dcfe6cb3ef3b92e1d27784c415c4.tar.gz |
2007-01-08 Richard Guenther <rguenther@suse.de>
* tree-ssa-ccp.c (maybe_fold_offset_to_array_ref): Use type
of offset to build the index.
* tree-pretty-print.c (dump_generic_node): Don't build negated
const just for printing.
* c-pretty-print.c (pp_c_integer_constant): Likewise.
* builtins.c (fold_builtin_int_roundingfn): Check if result
fits the type by using force_fit_type and comparing the result.
* predict.c (predict_loops): Use compare_tree_int for comparison.
* tree.c (build_int_cst): Fall back to integer_type_node for
NULL_TREE type.
(build_int_cst_wide): Assert type is non-null.
fortran/
* trans-io.c (transfer_array_desc): Use build_int_cst instead
of build_int_cstu.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120586 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-pretty-print.c')
-rw-r--r-- | gcc/c-pretty-print.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/gcc/c-pretty-print.c b/gcc/c-pretty-print.c index 56b2b47a569..e7ca1246b35 100644 --- a/gcc/c-pretty-print.c +++ b/gcc/c-pretty-print.c @@ -810,17 +810,16 @@ pp_c_integer_constant (c_pretty_printer *pp, tree i) pp_wide_integer (pp, TREE_INT_CST_LOW (i)); else { + unsigned HOST_WIDE_INT low = TREE_INT_CST_LOW (i); + HOST_WIDE_INT high = TREE_INT_CST_HIGH (i); if (tree_int_cst_sgn (i) < 0) { pp_character (pp, '-'); - i = build_int_cst_wide (NULL_TREE, - -TREE_INT_CST_LOW (i), - ~TREE_INT_CST_HIGH (i) - + !TREE_INT_CST_LOW (i)); + high = ~high + !low; + low = -low; } sprintf (pp_buffer (pp)->digit_buffer, - HOST_WIDE_INT_PRINT_DOUBLE_HEX, - TREE_INT_CST_HIGH (i), TREE_INT_CST_LOW (i)); + HOST_WIDE_INT_PRINT_DOUBLE_HEX, high, low); pp_string (pp, pp_buffer (pp)->digit_buffer); } if (TYPE_UNSIGNED (type)) |