aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorKenneth Zadeck <zadeck@naturalbridge.com>2014-05-06 16:35:35 +0000
committerMike Stump <mrs@gcc.gnu.org>2014-05-06 16:35:35 +0000
commit1d60af086712da018dbdf2a31b0fa6513ccc4487 (patch)
treec122483e07919d83e97d9cc24e59922013688628 /gcc
parent807e902eea17f3132488c256c963823976b2348c (diff)
downloadgcc-1d60af086712da018dbdf2a31b0fa6513ccc4487.zip
gcc-1d60af086712da018dbdf2a31b0fa6513ccc4487.tar.gz
gcc-1d60af086712da018dbdf2a31b0fa6513ccc4487.tar.bz2
Update ChangeLogs for wide-int work.
Co-Authored-By: Kyrylo Tkachov <kyrylo.tkachov@arm.com> Co-Authored-By: Mike Stump <mikestump@comcast.net> Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com> From-SVN: r210116
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog780
-rw-r--r--gcc/ChangeLog.wide-int899
-rw-r--r--gcc/ada/ChangeLog9
-rw-r--r--gcc/c-family/ChangeLog26
-rw-r--r--gcc/c/ChangeLog11
-rw-r--r--gcc/cp/ChangeLog29
-rw-r--r--gcc/fortran/ChangeLog25
-rw-r--r--gcc/go/ChangeLog6
-rw-r--r--gcc/java/ChangeLog14
-rw-r--r--gcc/lto/ChangeLog7
-rw-r--r--gcc/objc/ChangeLog7
-rw-r--r--gcc/testsuite/ChangeLog6
12 files changed, 920 insertions, 899 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cd6a42f..0644a4d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,783 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+ Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * alias.c (ao_ref_from_mem): Use wide-int interfaces.
+ (rtx_equal_for_memref_p): Update comment.
+ (adjust_offset_for_component_ref): Use wide-int interfaces.
+ * builtins.c (get_object_alignment_2): Likewise.
+ (c_readstr): Likewise.
+ (target_char_cast): Add comment.
+ (determine_block_size): Use wide-int interfaces.
+ (expand_builtin_signbit): Likewise.
+ (fold_builtin_int_roundingfn): Likewise.
+ (fold_builtin_bitop): Likewise.
+ (fold_builtin_bswap): Likewise.
+ (fold_builtin_logarithm): Use signop.
+ (fold_builtin_pow): Likewise.
+ (fold_builtin_memory_op): Use wide-int interfaces.
+ (fold_builtin_object_size): Likewise.
+ * cfgloop.c (alloc_loop): Initialize nb_iterations_upper_bound and
+ nb_iterations_estimate.
+ (record_niter_bound): Use wide-int interfaces.
+ (get_estimated_loop_iterations_int): Likewise.
+ (get_estimated_loop_iterations): Likewise.
+ (get_max_loop_iterations): Likewise.
+ * cfgloop.h: Include wide-int.h.
+ (struct nb_iter_bound): Change bound to widest_int.
+ (struct loop): Change nb_iterations_upper_bound and
+ nb_iterations_estimate to widest_int.
+ (record_niter_bound): Switch to use widest_int.
+ (get_estimated_loop_iterations): Likewise.
+ (get_max_loop_iterations): Likewise.
+ (gcov_type_to_double_int): Rename to gcov_type_to_wide_int and
+ update for wide-int.
+ * cgraph.c (cgraph_add_thunk): Use wide-int interfaces.
+ * combine.c (try_combine): Likewise.
+ (subst): Use CONST_SCALAR_INT_P rather than CONST_INT_P.
+ * config/aarch64/aarch64.c (aapcs_vfp_sub_candidate): Use wide-int
+ interfaces.
+ (aarch64_float_const_representable_p): Likewise.
+ * config/arc/arc.c: Include wide-int.h.
+ (arc_can_use_doloop_p): Use wide-int interfaces.
+ * config/arm/arm.c (aapcs_vfp_sub_candidate): Likewise.
+ (vfp3_const_double_index): Likewise.
+ * config/avr/avr.c (avr_out_round): Likewise.
+ (avr_fold_builtin): Likewise.
+ * config/bfin/bfin.c (bfin_local_alignment): Likewise.
+ (bfin_can_use_doloop_p): Likewise.
+ * config/darwin.c (darwin_mergeable_constant_section): Likewise.
+ (machopic_select_rtx_section): Update to handle CONST_WIDE_INT.
+ * config/i386/i386.c: Include wide-int.h.
+ (ix86_data_alignment): Use wide-int interfaces.
+ (ix86_local_alignment): Likewise.
+ (ix86_emit_swsqrtsf): Update real_from_integer.
+ * config/msp430/msp430.c (msp430_attr): Use wide-int interfaces.
+ * config/nds32/nds32.c (nds32_insert_attributes): Likewise.
+ * config/rs6000/predicates.md (any_operand): Add const_wide_int.
+ (zero_constant): Likewise.
+ (input_operand): Likewise.
+ (splat_input_operand): Likewise.
+ (non_logical_cint_operand): Change const_double to const_wide_int.
+ * config/rs6000/rs6000.c (num_insns_constant): Handle CONST_WIDE_INT.
+ (easy_altivec_constant): Remove comment.
+ (paired_expand_vector_init): Use CONSTANT_P.
+ (rs6000_legitimize_address): Handle CONST_WIDE_INT.
+ (rs6000_emit_move): Update checks.
+ (rs6000_aggregate_candidate): Use wide-int interfaces.
+ (rs6000_expand_ternop_builtin): Likewise.
+ (rs6000_output_move_128bit): Handle CONST_WIDE_INT.
+ (rs6000_assemble_integer): Likewise.
+ (rs6000_hash_constant): Likewise.
+ (output_toc): Likewise.
+ (rs6000_rtx_costs): Likewise.
+ (rs6000_emit_swrsqrt); Update call to real_from_integer.
+ * config/rs6000/rs6000-c.c: Include wide-int.h.
+ (altivec_resolve_overloaded_builtin): Use wide-int interfaces.
+ * config/rs6000/rs6000.h (TARGET_SUPPORTS_WIDE_INT): New.
+ * config/rs6000/rs6000.md: Use const_scalar_int_operand.
+ Handle CONST_WIDE_INT.
+ * config/sol2-c.c (solaris_pragma_align): Change low to unsigned HWI.
+ Use tree_fits_uhwi_p.
+ * config/sparc/sparc.c: Include wide-int.h.
+ (sparc_fold_builtin): Use wide-int interfaces.
+ * config/vax/vax.c: Include wide-int.h.
+ (vax_float_literal): Use real_from_integer.
+ * coretypes.h (struct hwivec_def): New.
+ (hwivec): New.
+ (const_hwivec): New.
+ * cse.c (hash_rtx_cb): Handle CONST_WIDE_INT.
+ (equiv_constant): Handle CONST_WIDE_INT.
+ * cselib.c (rtx_equal_for_cselib_1): Use CASE_CONST_UNIQUE.
+ (cselib_hash_rtx): Handle CONST_WIDE_INT.
+ * dbxout.c (stabstr_U): Use wide-int interfaces.
+ (dbxout_type): Update to use cst_fits_shwi_p.
+ * defaults.h (LOG2_BITS_PER_UNIT): Define.
+ (TARGET_SUPPORTS_WIDE_INT): Add default.
+ * dfp.c: Include wide-int.h.
+ (decimal_real_to_integer2): Use wide-int interfaces and rename to
+ decimal_real_to_integer.
+ * dfp.h (decimal_real_to_integer2): Return a wide_int and rename to
+ decimal_real_to_integer.
+ * doc/generic.texi (Constant expressions): Update for wide_int.
+ * doc/rtl.texi (const_double): Likewise.
+ (const_wide_int, CONST_WIDE_INT, CONST_WIDE_INT_VEC): New.
+ (CONST_WIDE_INT_NUNITS, CONST_WIDE_INT_ELT): New.
+ * doc/tm.texi.in (REAL_VALUE_TO_INT): Remove.
+ (REAL_VALUE_FROM_INT): Remove.
+ (TARGET_SUPPORTS_WIDE_INT): New.
+ * doc/tm.texi: Regenerate.
+ * dojump.c (prefer_and_bit_test): Use wide-int interfaces.
+ * double-int.h: Include wide-int.h.
+ (struct wi::int_traits): New.
+ * dwarf2out.c (get_full_len): New.
+ (dw_val_equal_p): Add case dw_val_class_wide_int.
+ (size_of_loc_descr): Likewise.
+ (output_loc_operands): Likewise.
+ (insert_double): Remove.
+ (insert_wide_int): New.
+ (add_AT_wide): New.
+ (print_die): Add case dw_val_class_wide_int.
+ (attr_checksum): Likewise.
+ (attr_checksum_ordered): Likewise.
+ (same_dw_val_p): Likewise.
+ (size_of_die): Likewise.
+ (value_format): Likewise.
+ (output_die): Likewise.
+ (double_int_type_size_in_bits): Rename to offset_int_type_size_in_bits.
+ Use wide-int.
+ (clz_loc_descriptor): Use wide-int interfaces.
+ (mem_loc_descriptor): Likewise. Handle CONST_WIDE_INT.
+ (loc_descriptor): Use wide-int interfaces. Handle CONST_WIDE_INT.
+ (round_up_to_align): Use wide-int interfaces.
+ (field_byte_offset): Likewise.
+ (insert_double): Rename to insert_wide_int. Use wide-int interfaces.
+ (add_const_value_attribute): Handle CONST_WIDE_INT. Update
+ CONST_DOUBLE handling. Use wide-int interfaces.
+ (add_bound_info): Use tree_fits_uhwi_p. Use wide-int interfaces.
+ (gen_enumeration_type_die): Use add_AT_wide.
+ (hash_loc_operands): Add case dw_val_class_wide_int.
+ (compare_loc_operands): Likewise.
+ * dwarf2out.h: Include wide-int.h.
+ (wide_int_ptr): New.
+ (enum dw_val_class): Add dw_val_class_wide_int.
+ (struct dw_val_struct): Add val_wide.
+ * emit-rtl.c (const_wide_int_htab): New.
+ (const_wide_int_htab_hash): New.
+ (const_wide_int_htab_eq): New.
+ (lookup_const_wide_int): New.
+ (const_double_htab_hash): Use wide-int interfaces.
+ (const_double_htab_eq): Likewise.
+ (rtx_to_double_int): Conditionally compile for wide-int.
+ (immed_double_int_const): Rename to immed_wide_int_const and
+ update for wide-int.
+ (immed_double_const): Conditionally compile for wide-int.
+ (init_emit_once): Use wide-int interfaces.
+ * explow.c (plus_constant): Likewise.
+ * expmed.c (mask_rtx): Move further up file. Use wide-int interfaces.
+ (lshift_value): Use wide-int interfaces.
+ (expand_mult): Likewise.
+ (choose_multiplier): Likewise.
+ (expand_smod_pow2): Likewise.
+ (make_tree): Likewise.
+ * expr.c (convert_modes): Consolidate handling of constants.
+ Use wide-int interfaces.
+ (emit_group_load_1): Add note.
+ (store_expr): Update comment.
+ (get_inner_reference): Use wide-int interfaces.
+ (expand_constructor): Update comment.
+ (expand_expr_real_2): Use wide-int interfaces.
+ (expand_expr_real_1): Likewise.
+ (reduce_to_bit_field_precision): Likewise.
+ (const_vector_from_tree): Likewise.
+ * final.c: Include wide-int-print.h.
+ (output_addr_const): Handle CONST_WIDE_INT. Use CONST_DOUBLE_AS_INT_P.
+ * fixed-value.c: Include wide-int.h.
+ (fixed_from_string): Use wide-int interfaces.
+ (fixed_to_decimal): Likewise.
+ (fixed_convert_from_real): Likewise.
+ (real_convert_from_fixed): Likewise.
+ * fold-const.h (mem_ref_offset): Return an offset_int.
+ (div_if_zero_remainder): Remove code parameter.
+ * fold-const.c (div_if_zero_remainder): Remove code parameter.
+ Use wide-int interfaces.
+ (may_negate_without_overflow_p): Use wide-int interfaces.
+ (negate_expr_p): Likewise.
+ (fold_negate_expr): Likewise.
+ (int_const_binop_1): Likewise.
+ (const_binop): Likewise.
+ (fold_convert_const_int_from_int): Likewise.
+ (fold_convert_const_int_from_real): Likewise.
+ (fold_convert_const_int_from_fixed): Likewise.
+ (fold_convert_const_fixed_from_int): Likewise.
+ (all_ones_mask_p): Take an unsigned size. Use wide-int interfaces.
+ (sign_bit_p): Use wide-int interfaces.
+ (make_range_step): Likewise.
+ (build_range_check): Likewise. Pass an integer of the correct type
+ instead of using integer_one_node.
+ (range_predecessor): Pass an integer of the correct type instead
+ of using integer_one_node.
+ (range_successor): Likewise.
+ (merge_ranges): Likewise.
+ (unextend): Use wide-int interfaces.
+ (extract_muldiv_1): Likewise.
+ (fold_div_compare): Likewise.
+ (fold_single_bit_test): Likewise.
+ (fold_sign_changed_comparison): Likewise.
+ (try_move_mult_to_index): Update calls to div_if_zero_remainder.
+ (fold_plusminus_mult_expr): Use wide-int interfaces.
+ (native_encode_int): Likewise.
+ (native_interpret_int): Likewise.
+ (fold_unary_loc): Likewise.
+ (pointer_may_wrap_p): Likewise.
+ (size_low_cst): Likewise.
+ (mask_with_tz): Likewise.
+ (fold_binary_loc): Likewise.
+ (fold_ternary_loc): Likewise.
+ (multiple_of_p): Likewise.
+ (tree_call_nonnegative_warnv_p): Update calls to
+ tree_int_cst_min_precision and real_from_integer.
+ (fold_negate_const): Use wide-int interfaces.
+ (fold_abs_const): Likewise.
+ (fold_relational_const): Use tree_int_cst_lt.
+ (round_up_loc): Use wide-int interfaces.
+ * genemit.c (gen_exp): Add CONST_WIDE_INT case.
+ * gengenrtl.c (excluded_rtx): Add CONST_WIDE_INT case.
+ * gengtype.c: Remove include of double-int.h.
+ (do_typedef): Use wide-int interfaces.
+ (open_base_files): Add wide-int.h.
+ (main): Add offset_int and widest_int typedefs.
+ * gengtype-lex.l: Handle "^".
+ (CXX_KEYWORD): Add "static".
+ * gengtype-parse.c (require3): New.
+ (require_template_declaration): Handle constant template arguments
+ and nested templates.
+ * gengtype-state.c: Don't include "double-int.h".
+ * genpreds.c (write_one_predicate_function): Update comment.
+ (write_tm_constrs_h): Add check for hval and lval use in
+ CONST_WIDE_INT.
+ * genrecog.c (validate_pattern): Add CONST_WIDE_INT case.
+ (add_to_sequence): Likewise.
+ * gensupport.c (struct std_pred_table): Add const_scalar_int_operand
+ and const_double_operand.
+ * gimple.c (preprocess_case_label_vec_for_gimple): Use wide-int
+ interfaces.
+ * gimple-fold.c (get_base_constructor): Likewise.
+ (fold_array_ctor_reference): Likewise.
+ (fold_nonarray_ctor_reference): Likewise.
+ (fold_const_aggregate_ref_1): Likewise.
+ (gimple_val_nonnegative_real_p): Likewise.
+ (gimple_fold_indirect_ref): Likewise.
+ * gimple-pretty-print.c (dump_ssaname_info): Likewise.
+ * gimple-ssa-strength-reduction.c: Include wide-int-print.h.
+ (struct slsr_cand_d): Change index to be widest_int.
+ (struct incr_info_d): Change incr to be widest_int.
+ (alloc_cand_and_find_basis): Use wide-int interfaces.
+ (slsr_process_phi): Likewise.
+ (backtrace_base_for_ref): Likewise. Return a widest_int.
+ (restructure_reference): Take a widest_int instead of a double_int.
+ (slsr_process_ref): Use wide-int interfaces.
+ (create_mul_ssa_cand): Likewise.
+ (create_mul_imm_cand): Likewise.
+ (create_add_ssa_cand): Likewise.
+ (create_add_imm_cand): Take a widest_int instead of a double_int.
+ (slsr_process_add): Use wide-int interfaces.
+ (slsr_process_cast): Likewise.
+ (slsr_process_copy): Likewise.
+ (dump_candidate): Likewise.
+ (dump_incr_vec): Likewise.
+ (replace_ref): Likewise.
+ (cand_increment): Likewise. Return a widest_int.
+ (cand_abs_increment): Likewise.
+ (replace_mult_candidate): Take a widest_int instead of a double_int.
+ (replace_unconditional_candidate): Use wide-int interfaces.
+ (incr_vec_index): Take a widest_int instead of a double_int.
+ (create_add_on_incoming_edge): Likewise.
+ (create_phi_basis): Use wide-int interfaces.
+ (replace_conditional_candidate): Likewise.
+ (record_increment): Take a widest_int instead of a double_int.
+ (record_phi_increments): Use wide-int interfaces.
+ (phi_incr_cost): Take a widest_int instead of a double_int.
+ (lowest_cost_path): Likewise.
+ (total_savings): Likewise.
+ (analyze_increments): Use wide-int interfaces.
+ (ncd_with_phi): Take a widest_int instead of a double_int.
+ (ncd_of_cand_and_phis): Likewise.
+ (nearest_common_dominator_for_cands): Likewise.
+ (insert_initializers): Use wide-int interfaces.
+ (all_phi_incrs_profitable): Likewise.
+ (replace_one_candidate): Likewise.
+ (replace_profitable_candidates): Likewise.
+ * godump.c: Include wide-int-print.h.
+ (go_output_typedef): Use wide-int interfaces.
+ * graphite-clast-to-gimple.c (gmp_cst_to_tree): Likewise.
+ * graphite-sese-to-poly.c (tree_int_to_gmp): Likewise.
+ (build_loop_iteration_domains): Likewise.
+ * hooks.h: Include wide-int.h rather than double-int.h.
+ (hook_bool_dint_dint_uint_bool_true): Delete.
+ (hook_bool_wint_wint_uint_bool_true): Declare.
+ * hooks.c (hook_bool_dint_dint_uint_bool_true): Removed.
+ (hook_bool_wint_wint_uint_bool_true): New.
+ * internal-fn.c (ubsan_expand_si_overflow_addsub_check): Use wide-int
+ interfaces.
+ (ubsan_expand_si_overflow_mul_check): Likewise.
+ * ipa-devirt.c (get_polymorphic_call_info): Likewise.
+ * ipa-prop.c (compute_complex_assign_jump_func): Likewise.
+ (get_ancestor_addr_info): Likewise.
+ (ipa_modify_call_arguments): Likewise.
+ * loop-doloop.c (doloop_modify): Likewise.
+ (doloop_optimize): Likewise.
+ * loop-iv.c (iv_number_of_iterations): Likewise.
+ * loop-unroll.c (decide_unroll_constant_iterations): Likewise.
+ (unroll_loop_constant_iterations): Likewise.
+ (decide_unroll_runtime_iterations): Likewise.
+ (unroll_loop_runtime_iterations): Likewise.
+ (decide_peel_simple): Likewise.
+ (decide_unroll_stupid): Likewise.
+ * lto-streamer-in.c (streamer_read_wi): Add.
+ (input_cfg): Use wide-int interfaces.
+ (lto_input_tree_1): Likewise.
+ * lto-streamer-out.c (streamer_write_wi): Add.
+ (hash_tree): Use wide-int interfaces.
+ (output_cfg): Likewise.
+ * Makefile.in (OBJS): Add wide-int.o and wide-int-print.o.
+ (GTFILES): Add wide-int.h and signop.h.
+ (TAGS): Look for .cc files too.
+ * omp-low.c (scan_omp_1_op): Use wide-int interfaces.
+ * optabs.c (expand_subword_shift): Likewise.
+ (expand_doubleword_shift): Likewise.
+ (expand_absneg_bit): Likewise.
+ (expand_copysign_absneg): Likewise.
+ (expand_copysign_bit): Likewise.
+ * postreload.c (reload_cse_simplify_set): Likewise.
+ * predict.c (predict_iv_comparison): Likewise.
+ * pretty-print.h: Include wide-int-print.h.
+ (pp_wide_int) New.
+ * print-rtl.c (print_rtx): Add CONST_WIDE_INT case.
+ * print-tree.c: Include wide-int-print.h.
+ (print_node_brief): Use wide-int interfaces.
+ (print_node): Likewise.
+ * read-rtl.c (validate_const_wide_int): New.
+ (read_rtx_code): Add CONST_WIDE_INT case.
+ * real.c: Include wide-int.h.
+ (real_to_integer2): Delete.
+ (real_to_integer): New function, returning a wide_int.
+ (real_from_integer): Take a wide_int rather than two HOST_WIDE_INTs.
+ (ten_to_ptwo): Update call to real_from_integer.
+ (real_digit): Likewise.
+ * real.h: Include signop.h, wide-int.h and insn-modes.h.
+ (real_to_integer2, REAL_VALUE_FROM_INT, REAL_VALUE_FROM_UNSIGNED_INT)
+ (REAL_VALUE_TO_INT): Delete.
+ (real_to_integer): Declare a wide-int form.
+ (real_from_integer): Take a wide_int rather than two HOST_WIDE_INTs.
+ * recog.c (const_int_operand): Improve comment.
+ (const_scalar_int_operand): New.
+ (const_double_operand): Add a separate definition for CONST_WIDE_INT.
+ * rtlanal.c (commutative_operand_precedence): Handle CONST_WIDE_INT.
+ (split_double): Likewise.
+ * rtl.c (DEF_RTL_EXPR): Handle CONST_WIDE_INT.
+ (rtx_size): Likewise.
+ (rtx_alloc_stat_v): New.
+ (rtx_alloc_stat): Now calls rtx_alloc_stat_v.
+ (cwi_output_hex): New.
+ (iterative_hash_rtx): Handle CONST_WIDE_INT.
+ (cwi_check_failed_bounds): New.
+ * rtl.def (CONST_WIDE_INT): New.
+ * rtl.h: Include <utility> and wide-int.h.
+ (struct hwivec_def): New.
+ (CWI_GET_NUM_ELEM): New.
+ (CWI_PUT_NUM_ELEM): New.
+ (struct rtx_def): Add num_elem and hwiv.
+ (CASE_CONST_SCALAR_INT): Modify for TARGET_SUPPORTS_WIDE_INT.
+ (CASE_CONST_UNIQUE): Likewise.
+ (CASE_CONST_ANY): Likewise.
+ (CONST_SCALAR_INT_P): Likewise.
+ (CONST_WIDE_INT_P): New.
+ (CWI_ELT): New.
+ (HWIVEC_CHECK): New.
+ (cwi_check_failed_bounds): New.
+ (CWI_ELT): New.
+ (HWIVEC_CHECK): New.
+ (CONST_WIDE_INT_VEC) New.
+ (CONST_WIDE_INT_NUNITS) New.
+ (CONST_WIDE_INT_ELT) New.
+ (rtx_mode_t): New type.
+ (wi::int_traits <rtx_mode_t>): New.
+ (wi::shwi): New.
+ (wi::min_value): New.
+ (wi::max_value): New.
+ (rtx_alloc_v) New.
+ (const_wide_int_alloc): New.
+ (immed_wide_int_const): New.
+ * sched-vis.c (print_value): Handle CONST_WIDE_INT.
+ * sel-sched-ir.c (lhs_and_rhs_separable_p): Update comment.
+ * signop.h: New file.
+ * simplify-rtx.c (mode_signbit_p): Handle CONST_WIDE_INT.
+ (simplify_const_unary_operation): Use wide-int interfaces.
+ (simplify_binary_operation_1): Likewise.
+ (simplify_const_binary_operation): Likewise.
+ (simplify_const_relational_operation): Likewise.
+ (simplify_immed_subreg): Likewise.
+ * stmt.c (expand_case): Likewise.
+ * stor-layout.h (set_min_and_max_values_for_integral_type): Take a
+ signop rather than a bool.
+ * stor-layout.c (layout_type): Use wide-int interfaces.
+ (initialize_sizetypes): Update calls to
+ set_min_and_max_values_for_integral_type.
+ (set_min_and_max_values_for_integral_type): Take a signop rather
+ than a bool. Use wide-int interfaces.
+ (fixup_signed_type): Update accordingly. Remove
+ HOST_BITS_PER_DOUBLE_INT limit.
+ (fixup_unsigned_type): Likewise.
+ * system.h (STATIC_CONSTANT_P): New.
+ (STATIC_ASSERT): New.
+ * target.def (can_use_doloop_p): Take widest_ints rather than
+ double_ints.
+ * target.h: Include wide-int.h rather than double-int.h.
+ * targhooks.h (can_use_doloop_if_innermost): Take widest_ints rather
+ than double_ints.
+ * targhooks.c (default_cxx_get_cookie_size): Use tree_int_cst_lt
+ rather than INT_CST_LT_UNSIGNED.
+ (can_use_doloop_if_innermost): Take widest_ints rather than
+ double_ints.
+ * tree-affine.c: Include wide-int-print.h.
+ (double_int_ext_for_comb): Delete.
+ (wide_int_ext_for_comb): New.
+ (aff_combination_zero): Use wide-int interfaces.
+ (aff_combination_const): Take a widest_int instead of a double_int.
+ (aff_combination_elt): Use wide-int interfaces.
+ (aff_combination_scale): Take a widest_int instead of a double_int.
+ (aff_combination_add_elt): Likewise.
+ (aff_combination_add_cst): Likewise.
+ (aff_combination_add): Use wide-int interfaces.
+ (aff_combination_convert): Likewise.
+ (tree_to_aff_combination): Likewise.
+ (add_elt_to_tree): Take a widest_int instead of a double_int.
+ (aff_combination_to_tree): Use wide-int interfaces.
+ (aff_combination_remove_elt): Likewise.
+ (aff_combination_add_product): Take a widest_int instead of
+ a double_int.
+ (aff_combination_mult): Use wide-int interfaces.
+ (aff_combination_expand): Likewise.
+ (double_int_constant_multiple_p): Delete.
+ (wide_int_constant_multiple_p): New.
+ (aff_combination_constant_multiple_p): Take a widest_int pointer
+ instead of a double_int pointer.
+ (print_aff): Use wide-int interfaces.
+ (get_inner_reference_aff): Take a widest_int pointer
+ instead of a double_int pointer.
+ (aff_comb_cannot_overlap_p): Take widest_ints instead of double_ints.
+ * tree-affine.h: Include wide-int.h.
+ (struct aff_comb_elt): Change type of coef to widest_int.
+ (struct affine_tree_combination): Change type of offset to widest_int.
+ (double_int_ext_for_comb): Delete.
+ (wide_int_ext_for_comb): New.
+ (aff_combination_const): Use widest_int instead of double_int.
+ (aff_combination_scale): Likewise.
+ (aff_combination_add_elt): Likewise.
+ (aff_combination_constant_multiple_p): Likewise.
+ (get_inner_reference_aff): Likewise.
+ (aff_comb_cannot_overlap_p): Likewise.
+ (aff_combination_zero_p): Use wide-int interfaces.
+ * tree.c: Include tree.h.
+ (init_ttree): Use make_int_cst.
+ (tree_code_size): Removed code for INTEGER_CST case.
+ (tree_size): Add INTEGER_CST case.
+ (make_node_stat): Update comment.
+ (get_int_cst_ext_nunits, build_new_int_cst, build_int_cstu): New.
+ (build_int_cst_type): Use wide-int interfaces.
+ (double_int_to_tree): Likewise.
+ (double_int_fits_to_tree_p): Delete.
+ (force_fit_type_double): Delete.
+ (force_fit_type): New.
+ (int_cst_hash_hash): Use wide-int interfaces.
+ (int_cst_hash_eq): Likewise.
+ (build_int_cst_wide): Delete.
+ (wide_int_to_tree): New.
+ (cache_integer_cst): Use wide-int interfaces.
+ (build_low_bits_mask): Likewise.
+ (cst_and_fits_in_hwi): Likewise.
+ (real_value_from_int_cst): Likewise.
+ (make_int_cst_stat): New.
+ (integer_zerop): Use wide_int interfaces.
+ (integer_onep): Likewise.
+ (integer_all_onesp): Likewise.
+ (integer_pow2p): Likewise.
+ (integer_nonzerop): Likewise.
+ (tree_log2): Likewise.
+ (tree_floor_log2): Likewise.
+ (tree_ctz): Likewise.
+ (int_size_in_bytes): Likewise.
+ (mem_ref_offset): Return an offset_int rather than a double_int.
+ (build_type_attribute_qual_variant): Use wide_int interfaces.
+ (type_hash_eq): Likewise
+ (tree_int_cst_equal): Likewise.
+ (tree_int_cst_lt): Delete.
+ (tree_int_cst_compare): Likewise.
+ (tree_fits_shwi_p): Use wide_int interfaces.
+ (tree_fits_uhwi_p): Likewise.
+ (tree_int_cst_sign_bit): Likewise.
+ (tree_int_cst_sgn): Likewise.
+ (tree_int_cst_min_precision): Take a signop rather than a bool.
+ (simple_cst_equal): Use wide_int interfaces.
+ (compare_tree_int): Likewise.
+ (iterative_hash_expr): Likewise.
+ (int_fits_type_p): Likewise. Use tree_int_cst_lt rather than
+ INT_CST_LT.
+ (get_type_static_bounds): Use wide_int interfaces.
+ (tree_int_cst_elt_check_failed): New.
+ (build_common_tree_nodes): Reordered to set prec before filling in
+ value.
+ (int_cst_value): Check cst_and_fits_in_hwi.
+ (widest_int_cst_value): Use wide_int interfaces.
+ (upper_bound_in_type): Likewise.
+ (lower_bound_in_type): Likewise.
+ (num_ending_zeros): Likewise.
+ (drop_tree_overflow): Likewise.
+ * tree-call-cdce.c (check_pow): Update call to real_from_integer.
+ (gen_conditions_for_pow_cst_base): Likewise.
+ * tree-cfg.c: Include wide-int.h and wide-int-print.h.
+ (group_case_labels_stmt): Use wide-int interfaces.
+ (verify_gimple_assign_binary): Likewise.
+ (print_loop): Likewise.
+ * tree-chrec.c (tree_fold_binomial): Likewise.
+ * tree-core.h (struct tree_base): Add int_length.
+ (struct tree_int_cst): Change rep of value.
+ * tree-data-ref.c (dr_analyze_innermost): Use wide-int interfaces.
+ (dr_may_alias_p): Likewise.
+ (max_stmt_executions_tree): Likewise.
+ * tree.def (INTEGER_CST): Update comment.
+ * tree-dfa.c (get_ref_base_and_extent): Use wide-int interfaces.
+ * tree-dfa.h (get_addr_base_and_unit_offset_1): Likewise.
+ * tree-dump.c: Include wide-int.h and wide-int-print.h.
+ (dequeue_and_dump): Use wide-int interfaces.
+ * tree.h: Include wide-int.h.
+ (NULL_TREE): Moved to earlier loc in file.
+ (TREE_INT_CST_ELT_CHECK): New.
+ (tree_int_cst_elt_check_failed): New.
+ (TYPE_SIGN): New.
+ (TREE_INT_CST): Delete.
+ (TREE_INT_CST_LOW): Use wide-int interfaces.
+ (TREE_INT_CST_HIGH): Delete.
+ (TREE_INT_CST_NUNITS): New.
+ (TREE_INT_CST_EXT_NUNITS): Likewise.
+ (TREE_INT_CST_OFFSET_NUNITS): Likewise.
+ (TREE_INT_CST_ELT): Likewise.
+ (INT_CST_LT): Delete.
+ (tree_int_cst_elt_check): New (two forms).
+ (type_code_size): Update comment.
+ (make_int_cst_stat, make_int_cst): New.
+ (tree_to_double_int): Delete.
+ (double_int_fits_to_tree_p): Delete.
+ (force_fit_type_double): Delete.
+ (build_int_cstu): Replace with out-of-line function.
+ (build_int_cst_wide): Delete.
+ (tree_int_cst_lt): Define inline.
+ (tree_int_cst_le): New.
+ (tree_int_cst_compare): Define inline.
+ (tree_int_cst_min_precision): Take a signop rather than a bool.
+ (wi::int_traits <const_tree>): New.
+ (wi::int_traits <tree>): New.
+ (wi::extended_tree): New.
+ (wi::int_traits <wi::extended_tree>): New.
+ (wi::to_widest): New.
+ (wi::to_offset): New.
+ (wi::fits_to_tree_p): New.
+ (wi::min_value): New.
+ (wi::max_value): New.
+ * tree-inline.c (remap_gimple_op_r): Use wide-int interfaces.
+ (copy_tree_body_r): Likewise.
+ * tree-object-size.c (compute_object_offset): Likewise.
+ (addr_object_size): Likewise.
+ * tree-predcom.c: Include wide-int-print.h.
+ (struct dref_d): Change type of offset to widest_int.
+ (dump_dref): Call wide-int printer.
+ (aff_combination_dr_offset): Use wide-int interfaces.
+ (determine_offset): Take a widest_int pointer rather than a
+ double_int pointer.
+ (split_data_refs_to_components): Use wide-int interfaces.
+ (suitable_component_p): Likewise.
+ (order_drefs): Likewise.
+ (add_ref_to_chain): Likewise.
+ (valid_initializer_p): Likewise.
+ (determine_roots_comp): Likewise.
+ * tree-pretty-print.c: Include wide-int-print.h.
+ (dump_generic_node): Use wide-int interfaces.
+ * tree-sra.c (sra_ipa_modify_expr): Likewise.
+ * tree-ssa-address.c (addr_for_mem_ref): Likewise.
+ (move_fixed_address_to_symbol): Likewise.
+ (move_hint_to_base): Likewise.
+ (move_pointer_to_base): Likewise.
+ (move_variant_to_index): Likewise.
+ (most_expensive_mult_to_index): Likewise.
+ (addr_to_parts): Likewise.
+ (copy_ref_info): Likewise.
+ * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Likewise.
+ (indirect_refs_may_alias_p): Likewise.
+ (stmt_kills_ref_p_1): Likewise.
+ * tree-ssa.c (non_rewritable_mem_ref_base): Likewise.
+ * tree-ssa-ccp.c: Update comment at top of file. Include
+ wide-int-print.h.
+ (struct prop_value_d): Change type of mask to widest_int.
+ (extend_mask): New function.
+ (dump_lattice_value): Use wide-int interfaces.
+ (get_default_value): Likewise.
+ (set_constant_value): Likewise.
+ (set_value_varying): Likewise.
+ (valid_lattice_transition): Likewise.
+ (set_lattice_value): Likewise.
+ (value_to_double_int): Delete.
+ (value_to_wide_int): New.
+ (get_value_from_alignment): Use wide-int interfaces.
+ (get_value_for_expr): Likewise.
+ (do_dbg_cnt): Likewise.
+ (ccp_finalize): Likewise.
+ (ccp_lattice_meet): Likewise.
+ (bit_value_unop_1): Use widest_ints rather than double_ints.
+ (bit_value_binop_1): Likewise.
+ (bit_value_unop): Use wide-int interfaces.
+ (bit_value_binop): Likewise.
+ (bit_value_assume_aligned): Likewise.
+ (evaluate_stmt): Likewise.
+ (ccp_fold_stmt): Likewise.
+ (visit_cond_stmt): Likewise.
+ (ccp_visit_stmt): Likewise.
+ * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Likewise.
+ (constant_pointer_difference): Likewise.
+ (associate_pointerplus): Likewise.
+ (combine_conversions): Likewise.
+ * tree-ssa-loop.h: Include wide-int.h.
+ (struct tree_niter_desc): Change type of max to widest_int.
+ * tree-ssa-loop-im.c (mem_refs_may_alias_p): Use wide-int interfaces.
+ * tree-ssa-loop-ivcanon.c (remove_exits_and_undefined_stmts): Likewise.
+ (remove_redundant_iv_tests): Likewise.
+ (canonicalize_loop_induction_variables): Likewise.
+ * tree-ssa-loop-ivopts.c (alloc_iv): Likewise.
+ (constant_multiple_of): Take a widest_int pointer instead of
+ a double_int pointer.
+ (get_computation_aff): Use wide-int interfaces.
+ (ptr_difference_cost): Likewise.
+ (difference_cost): Likewise.
+ (get_loop_invariant_expr_id): Likewise.
+ (get_computation_cost_at): Likewise.
+ (iv_elimination_compare_lt): Likewise.
+ (may_eliminate_iv): Likewise.
+ * tree-ssa-loop-niter.h (estimated_loop_iterations): Use widest_int
+ instead of double_int.
+ (max_loop_iterations): Likewise.
+ (max_stmt_executions): Likewise.
+ (estimated_stmt_executions): Likewise.
+ * tree-ssa-loop-niter.c: Include wide-int-print.h.
+ (split_to_var_and_offset): Use wide-int interfaces.
+ (determine_value_range): Likewise.
+ (bound_difference_of_offsetted_base): Likewise.
+ (bounds_add): Take a widest_int instead of a double_int.
+ (number_of_iterations_ne_max): Use wide-int interfaces.
+ (number_of_iterations_ne): Likewise.
+ (number_of_iterations_lt_to_ne): Likewise.
+ (assert_loop_rolls_lt): Likewise.
+ (number_of_iterations_lt): Likewise.
+ (number_of_iterations_le): Likewise.
+ (number_of_iterations_cond): Likewise.
+ (number_of_iterations_exit): Likewise.
+ (finite_loop_p): Likewise.
+ (derive_constant_upper_bound_assign): Likewise.
+ (derive_constant_upper_bound): Return a widest_int.
+ (derive_constant_upper_bound_ops): Likewise.
+ (do_warn_aggressive_loop_optimizations): Use wide-int interfaces.
+ (record_estimate): Take a widest_int rather than a double_int.
+ (record_nonwrapping_iv): Use wide-int interfaces.
+ (double_int_cmp): Delete.
+ (wide_int_cmp): New.
+ (bound_index): Take a widest_int rather than a double_int.
+ (discover_iteration_bound_by_body_walk): Use wide-int interfaces.
+ (maybe_lower_iteration_bound): Likewise.
+ (estimate_numbers_of_iterations_loop): Likewise.
+ (estimated_loop_iterations): Take a widest_int pointer than than
+ a double_int pointer.
+ (estimated_loop_iterations_int): Use wide-int interfaces.
+ (max_loop_iterations): Take a widest_int pointer than than
+ a double_int pointer.
+ (max_loop_iterations_int): Use wide-int interfaces.
+ (max_stmt_executions): Take a widest_int pointer than than
+ a double_int pointer.
+ (estimated_stmt_executions): Likewise.
+ (n_of_executions_at_most): Use wide-int interfaces.
+ (scev_probably_wraps_p): Likewise.
+ * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Update calls
+ to real_to_integer.
+ * tree-scalar-evolution.c (simplify_peeled_chrec): Use wide-int
+ interfaces.
+ * tree-ssanames.c (set_range_info): Use wide_int_refs rather than
+ double_ints. Adjust for trailing_wide_ints <3> representation.
+ (set_nonzero_bits): Likewise.
+ (get_range_info): Return wide_ints rather than double_ints.
+ Adjust for trailing_wide_ints <3> representation.
+ (get_nonzero_bits): Likewise.
+ (duplicate_ssa_name_range_info): Adjust for trailing_wide_ints <3>
+ representation.
+ * tree-ssanames.h (struct range_info_def): Replace min, max and
+ nonzero_bits with a trailing_wide_ints <3>.
+ (set_range_info): Use wide_int_refs rather than double_ints.
+ (set_nonzero_bits): Likewise.
+ (get_range_info): Return wide_ints rather than double_ints.
+ (get_nonzero_bits): Likewise.
+ * tree-ssa-phiopt.c (jump_function_from_stmt): Use wide-int interfaces.
+ * tree-ssa-pre.c (phi_translate_1): Likewise.
+ * tree-ssa-reassoc.c (decrement_power): Use calls to real_from_integer.
+ (acceptable_pow_call): Likewise.
+ * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use wide-int
+ interfaces.
+ (vn_reference_fold_indirect): Likewise.
+ (vn_reference_maybe_forwprop_address): Likewise.
+ (valueize_refs_1): Likewise.
+ * tree-ssa-structalias.c (get_constraint_for_ptr_offset): Likewise.
+ * tree-ssa-uninit.c (is_value_included_in): Use wide-int interfaces,
+ tree_int_cst_lt and tree_int_cst_le.
+ * tree-streamer-in.c (unpack_ts_base_value_fields): Use wide-int
+ interfaces.
+ (streamer_alloc_tree): Likewise.
+ * tree-streamer-out.c (pack_ts_int_cst_value_fields): Likewise.
+ (streamer_write_tree_header): Likewise.
+ (streamer_write_integer_cst): Likewise.
+ * tree-switch-conversion.c (emit_case_bit_tests): Likewise.
+ (build_constructors): Likewise.
+ (array_value_type): Likewise.
+ * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list): Likewise.
+ (vect_check_gather): Likewise.
+ * tree-vect-generic.c (build_replicated_const): Likewise.
+ (expand_vector_divmod): Likewise.
+ * tree-vect-loop.c (vect_transform_loop): Likewise.
+ * tree-vect-loop-manip.c (vect_do_peeling_for_loop_bound): Likewise.
+ (vect_do_peeling_for_alignment): Likewise.
+ * tree-vect-patterns.c (vect_recog_divmod_pattern): Likewise.
+ * tree-vrp.c: Include wide-int.h.
+ (operand_less_p): Use wide-int interfaces and tree_int_cst_lt.
+ (extract_range_from_assert): Use wide-int interfaces.
+ (vrp_int_const_binop): Likewise.
+ (zero_nonzero_bits_from_vr): Take wide_int pointers rather than
+ double_int pointers.
+ (ranges_from_anti_range): Use wide-int interfaces.
+ (quad_int_cmp): Delete.
+ (quad_int_pair_sort): Likewise.
+ (extract_range_from_binary_expr_1): Use wide-int interfaces.
+ (extract_range_from_unary_expr_1): Likewise.
+ (adjust_range_with_scev): Likewise.
+ (masked_increment): Take and return wide_ints rather than double_ints.
+ (register_edge_assert_for_2): Use wide-int interfaces.
+ (check_array_ref): Likewise.
+ (search_for_addr_array): Likewise.
+ (maybe_set_nonzero_bits): Likewise.
+ (union_ranges): Pass an integer of the correct type instead of
+ using integer_one_node.
+ (intersect_ranges): Likewise.
+ (simplify_truth_ops_using_ranges): Likewise.
+ (simplify_bit_ops_using_ranges): Use wide-int interfaces.
+ (range_fits_type_p): Likewise.
+ (simplify_cond_using_ranges): Likewise. Take a signop rather than
+ a bool.
+ (simplify_conversion_using_ranges): Use wide-int interfaces.
+ (simplify_float_conversion_using_ranges): Likewise.
+ (vrp_finalize): Likewise.
+ * value-prof.c (gimple_divmod_fixed_value_transform): Likewise.
+ (gimple_stringops_transform): Likewise.
+ * varasm.c (decode_addr_const): Likewise.
+ (const_hash_1): Likewise.
+ (const_rtx_hash_1): Likewise
+ (output_constant): Likewise.
+ (array_size_for_constructor): Likewise.
+ (output_constructor_regular_field): Likewise.
+ (output_constructor_bitfield): Likewise.
+ * var-tracking.c (loc_cmp): Handle CONST_WIDE_INT.
+ * mkconfig.sh: Include machmode.h to pick up BITS_PER_UNIT for
+ GENERATOR_FILEs.
+ * gencheck.c: Define BITS_PER_UNIT.
+ * wide-int.cc: New.
+ * wide-int.h: New.
+ * wide-int-print.cc: New.
+ * wide-int-print.h: New.
+
2014-05-06 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/avr/avr.c (avr_can_eliminate): Mark unused argument.
diff --git a/gcc/ChangeLog.wide-int b/gcc/ChangeLog.wide-int
deleted file mode 100644
index 71057cf..0000000
--- a/gcc/ChangeLog.wide-int
+++ /dev/null
@@ -1,899 +0,0 @@
-2013-11-21 Kenneth Zadeck <zadeck@naturalbridge.com>
- Mike Stump <mikestump@comcast.net>
- Richard Sandiford <rdsandiford@googlemail.com>
- Kyrylo Tkachov <kyrylo.tkachov@arm.com>
-
- * alias.c (ao_ref_from_mem): Use wide-int interfaces.
- (rtx_equal_for_memref_p): Update comment.
- (adjust_offset_for_component_ref): Use wide-int interfaces.
- * builtins.c (get_object_alignment_2): Likewise.
- (c_readstr): Likewise.
- (target_char_cast): Add comment.
- (determine_block_size): Use wide-int interfaces.
- (expand_builtin_signbit): Likewise.
- (fold_builtin_int_roundingfn): Likewise.
- (fold_builtin_bitop): Likewise.
- (fold_builtin_bswap): Likewise.
- (fold_builtin_logarithm): Use signop.
- (fold_builtin_pow): Likewise.
- (fold_builtin_memory_op): Use wide-int interfaces.
- (fold_builtin_object_size): Likewise.
- * cfgloop.c (alloc_loop): Initialize nb_iterations_upper_bound and
- nb_iterations_estimate.
- (record_niter_bound): Use wide-int interfaces.
- (get_estimated_loop_iterations_int): Likewise.
- (get_estimated_loop_iterations): Likewise.
- (get_max_loop_iterations): Likewise.
- * cfgloop.h: Include wide-int.h.
- (struct nb_iter_bound): Change bound to widest_int.
- (struct loop): Change nb_iterations_upper_bound and
- nb_iterations_estimate to widest_int.
- (record_niter_bound): Switch to use widest_int.
- (get_estimated_loop_iterations): Likewise.
- (get_max_loop_iterations): Likewise.
- (gcov_type_to_double_int): Rename to gcov_type_to_wide_int and
- update for wide-int.
- * cgraph.c (cgraph_add_thunk): Use wide-int interfaces.
- * combine.c (try_combine): Likewise.
- (subst): Use CONST_SCALAR_INT_P rather than CONST_INT_P.
- * config/aarch64/aarch64.c (aapcs_vfp_sub_candidate): Use wide-int
- interfaces.
- (aarch64_float_const_representable_p): Likewise.
- * config/arc/arc.c: Include wide-int.h.
- (arc_can_use_doloop_p): Use wide-int interfaces.
- * config/arm/arm.c (aapcs_vfp_sub_candidate): Likewise.
- (vfp3_const_double_index): Likewise.
- * config/avr/avr.c (avr_out_round): Likewise.
- (avr_fold_builtin): Likewise.
- * config/bfin/bfin.c (bfin_local_alignment): Likewise.
- (bfin_can_use_doloop_p): Likewise.
- * config/darwin.c (darwin_mergeable_constant_section): Likewise.
- (machopic_select_rtx_section): Update to handle CONST_WIDE_INT.
- * config/i386/i386.c: Include wide-int.h.
- (ix86_data_alignment): Use wide-int interfaces.
- (ix86_local_alignment): Likewise.
- (ix86_emit_swsqrtsf): Update real_from_integer.
- * config/msp430/msp430.c (msp430_attr): Use wide-int interfaces.
- * config/nds32/nds32.c (nds32_insert_attributes): Likewise.
- * config/rs6000/predicates.md (any_operand): Add const_wide_int.
- (zero_constant): Likewise.
- (input_operand): Likewise.
- (splat_input_operand): Likewise.
- (non_logical_cint_operand): Change const_double to const_wide_int.
- * config/rs6000/rs6000.c (num_insns_constant): Handle CONST_WIDE_INT.
- (easy_altivec_constant): Remove comment.
- (paired_expand_vector_init): Use CONSTANT_P.
- (rs6000_legitimize_address): Handle CONST_WIDE_INT.
- (rs6000_emit_move): Update checks.
- (rs6000_aggregate_candidate): Use wide-int interfaces.
- (rs6000_expand_ternop_builtin): Likewise.
- (rs6000_output_move_128bit): Handle CONST_WIDE_INT.
- (rs6000_assemble_integer): Likewise.
- (rs6000_hash_constant): Likewise.
- (output_toc): Likewise.
- (rs6000_rtx_costs): Likewise.
- (rs6000_emit_swrsqrt); Update call to real_from_integer.
- * config/rs6000/rs6000-c.c: Include wide-int.h.
- (altivec_resolve_overloaded_builtin): Use wide-int interfaces.
- * config/rs6000/rs6000.h (TARGET_SUPPORTS_WIDE_INT): New.
- * config/rs6000/rs6000.md: Use const_scalar_int_operand.
- Handle CONST_WIDE_INT.
- * config/sol2-c.c (solaris_pragma_align): Change low to unsigned HWI.
- Use tree_fits_uhwi_p.
- * config/sparc/sparc.c: Include wide-int.h.
- (sparc_fold_builtin): Use wide-int interfaces.
- * config/vax/vax.c: Include wide-int.h.
- (vax_float_literal): Use real_from_integer.
- * coretypes.h (struct hwivec_def): New.
- (hwivec): New.
- (const_hwivec): New.
- * cse.c (hash_rtx_cb): Handle CONST_WIDE_INT.
- (equiv_constant): Handle CONST_WIDE_INT.
- * cselib.c (rtx_equal_for_cselib_1): Use CASE_CONST_UNIQUE.
- (cselib_hash_rtx): Handle CONST_WIDE_INT.
- * dbxout.c (stabstr_U): Use wide-int interfaces.
- (dbxout_type): Update to use cst_fits_shwi_p.
- * defaults.h (LOG2_BITS_PER_UNIT): Define.
- (TARGET_SUPPORTS_WIDE_INT): Add default.
- * dfp.c: Include wide-int.h.
- (decimal_real_to_integer2): Use wide-int interfaces and rename to
- decimal_real_to_integer.
- * dfp.h (decimal_real_to_integer2): Return a wide_int and rename to
- decimal_real_to_integer.
- * doc/generic.texi (Constant expressions): Update for wide_int.
- * doc/rtl.texi (const_double): Likewise.
- (const_wide_int, CONST_WIDE_INT, CONST_WIDE_INT_VEC): New.
- (CONST_WIDE_INT_NUNITS, CONST_WIDE_INT_ELT): New.
- * doc/tm.texi.in (REAL_VALUE_TO_INT): Remove.
- (REAL_VALUE_FROM_INT): Remove.
- (TARGET_SUPPORTS_WIDE_INT): New.
- * doc/tm.texi: Regenerate.
- * dojump.c (prefer_and_bit_test): Use wide-int interfaces.
- * double-int.h: Include wide-int.h.
- (struct wi::int_traits): New.
- * dwarf2out.c (get_full_len): New.
- (dw_val_equal_p): Add case dw_val_class_wide_int.
- (size_of_loc_descr): Likewise.
- (output_loc_operands): Likewise.
- (insert_double): Remove.
- (insert_wide_int): New.
- (add_AT_wide): New.
- (print_die): Add case dw_val_class_wide_int.
- (attr_checksum): Likewise.
- (attr_checksum_ordered): Likewise.
- (same_dw_val_p): Likewise.
- (size_of_die): Likewise.
- (value_format): Likewise.
- (output_die): Likewise.
- (double_int_type_size_in_bits): Rename to offset_int_type_size_in_bits.
- Use wide-int.
- (clz_loc_descriptor): Use wide-int interfaces.
- (mem_loc_descriptor): Likewise. Handle CONST_WIDE_INT.
- (loc_descriptor): Use wide-int interfaces. Handle CONST_WIDE_INT.
- (round_up_to_align): Use wide-int interfaces.
- (field_byte_offset): Likewise.
- (insert_double): Rename to insert_wide_int. Use wide-int interfaces.
- (add_const_value_attribute): Handle CONST_WIDE_INT. Update
- CONST_DOUBLE handling. Use wide-int interfaces.
- (add_bound_info): Use tree_fits_uhwi_p. Use wide-int interfaces.
- (gen_enumeration_type_die): Use add_AT_wide.
- (hash_loc_operands): Add case dw_val_class_wide_int.
- (compare_loc_operands): Likewise.
- * dwarf2out.h: Include wide-int.h.
- (wide_int_ptr): New.
- (enum dw_val_class): Add dw_val_class_wide_int.
- (struct dw_val_struct): Add val_wide.
- * emit-rtl.c (const_wide_int_htab): New.
- (const_wide_int_htab_hash): New.
- (const_wide_int_htab_eq): New.
- (lookup_const_wide_int): New.
- (const_double_htab_hash): Use wide-int interfaces.
- (const_double_htab_eq): Likewise.
- (rtx_to_double_int): Conditionally compile for wide-int.
- (immed_double_int_const): Rename to immed_wide_int_const and
- update for wide-int.
- (immed_double_const): Conditionally compile for wide-int.
- (init_emit_once): Use wide-int interfaces.
- * explow.c (plus_constant): Likewise.
- * expmed.c (mask_rtx): Move further up file. Use wide-int interfaces.
- (lshift_value): Use wide-int interfaces.
- (expand_mult): Likewise.
- (choose_multiplier): Likewise.
- (expand_smod_pow2): Likewise.
- (make_tree): Likewise.
- * expr.c (convert_modes): Consolidate handling of constants.
- Use wide-int interfaces.
- (emit_group_load_1): Add note.
- (store_expr): Update comment.
- (get_inner_reference): Use wide-int interfaces.
- (expand_constructor): Update comment.
- (expand_expr_real_2): Use wide-int interfaces.
- (expand_expr_real_1): Likewise.
- (reduce_to_bit_field_precision): Likewise.
- (const_vector_from_tree): Likewise.
- * final.c: Include wide-int-print.h.
- (output_addr_const): Handle CONST_WIDE_INT. Use CONST_DOUBLE_AS_INT_P.
- * fixed-value.c: Include wide-int.h.
- (fixed_from_string): Use wide-int interfaces.
- (fixed_to_decimal): Likewise.
- (fixed_convert_from_real): Likewise.
- (real_convert_from_fixed): Likewise.
- * fold-const.h (mem_ref_offset): Return an offset_int.
- (div_if_zero_remainder): Remove code parameter.
- * fold-const.c (div_if_zero_remainder): Remove code parameter.
- Use wide-int interfaces.
- (may_negate_without_overflow_p): Use wide-int interfaces.
- (negate_expr_p): Likewise.
- (fold_negate_expr): Likewise.
- (int_const_binop_1): Likewise.
- (const_binop): Likewise.
- (fold_convert_const_int_from_int): Likewise.
- (fold_convert_const_int_from_real): Likewise.
- (fold_convert_const_int_from_fixed): Likewise.
- (fold_convert_const_fixed_from_int): Likewise.
- (all_ones_mask_p): Take an unsigned size. Use wide-int interfaces.
- (sign_bit_p): Use wide-int interfaces.
- (make_range_step): Likewise.
- (build_range_check): Likewise. Pass an integer of the correct type
- instead of using integer_one_node.
- (range_predecessor): Pass an integer of the correct type instead
- of using integer_one_node.
- (range_successor): Likewise.
- (merge_ranges): Likewise.
- (unextend): Use wide-int interfaces.
- (extract_muldiv_1): Likewise.
- (fold_div_compare): Likewise.
- (fold_single_bit_test): Likewise.
- (fold_sign_changed_comparison): Likewise.
- (try_move_mult_to_index): Update calls to div_if_zero_remainder.
- (fold_plusminus_mult_expr): Use wide-int interfaces.
- (native_encode_int): Likewise.
- (native_interpret_int): Likewise.
- (fold_unary_loc): Likewise.
- (pointer_may_wrap_p): Likewise.
- (size_low_cst): Likewise.
- (mask_with_tz): Likewise.
- (fold_binary_loc): Likewise.
- (fold_ternary_loc): Likewise.
- (multiple_of_p): Likewise.
- (tree_call_nonnegative_warnv_p): Update calls to
- tree_int_cst_min_precision and real_from_integer.
- (fold_negate_const): Use wide-int interfaces.
- (fold_abs_const): Likewise.
- (fold_relational_const): Use tree_int_cst_lt.
- (round_up_loc): Use wide-int interfaces.
- * genemit.c (gen_exp): Add CONST_WIDE_INT case.
- * gengenrtl.c (excluded_rtx): Add CONST_WIDE_INT case.
- * gengtype.c: Remove include of double-int.h.
- (do_typedef): Use wide-int interfaces.
- (open_base_files): Add wide-int.h.
- (main): Add offset_int and widest_int typedefs.
- * gengtype-lex.l: Handle "^".
- (CXX_KEYWORD): Add "static".
- * gengtype-parse.c (require3): New.
- (require_template_declaration): Handle constant template arguments
- and nested templates.
- * gengtype-state.c: Don't include "double-int.h".
- * genpreds.c (write_one_predicate_function): Update comment.
- (write_tm_constrs_h): Add check for hval and lval use in
- CONST_WIDE_INT.
- * genrecog.c (validate_pattern): Add CONST_WIDE_INT case.
- (add_to_sequence): Likewise.
- * gensupport.c (struct std_pred_table): Add const_scalar_int_operand
- and const_double_operand.
- * gimple.c (preprocess_case_label_vec_for_gimple): Use wide-int
- interfaces.
- * gimple-fold.c (get_base_constructor): Likewise.
- (fold_array_ctor_reference): Likewise.
- (fold_nonarray_ctor_reference): Likewise.
- (fold_const_aggregate_ref_1): Likewise.
- (gimple_val_nonnegative_real_p): Likewise.
- (gimple_fold_indirect_ref): Likewise.
- * gimple-pretty-print.c (dump_ssaname_info): Likewise.
- * gimple-ssa-strength-reduction.c: Include wide-int-print.h.
- (struct slsr_cand_d): Change index to be widest_int.
- (struct incr_info_d): Change incr to be widest_int.
- (alloc_cand_and_find_basis): Use wide-int interfaces.
- (slsr_process_phi): Likewise.
- (backtrace_base_for_ref): Likewise. Return a widest_int.
- (restructure_reference): Take a widest_int instead of a double_int.
- (slsr_process_ref): Use wide-int interfaces.
- (create_mul_ssa_cand): Likewise.
- (create_mul_imm_cand): Likewise.
- (create_add_ssa_cand): Likewise.
- (create_add_imm_cand): Take a widest_int instead of a double_int.
- (slsr_process_add): Use wide-int interfaces.
- (slsr_process_cast): Likewise.
- (slsr_process_copy): Likewise.
- (dump_candidate): Likewise.
- (dump_incr_vec): Likewise.
- (replace_ref): Likewise.
- (cand_increment): Likewise. Return a widest_int.
- (cand_abs_increment): Likewise.
- (replace_mult_candidate): Take a widest_int instead of a double_int.
- (replace_unconditional_candidate): Use wide-int interfaces.
- (incr_vec_index): Take a widest_int instead of a double_int.
- (create_add_on_incoming_edge): Likewise.
- (create_phi_basis): Use wide-int interfaces.
- (replace_conditional_candidate): Likewise.
- (record_increment): Take a widest_int instead of a double_int.
- (record_phi_increments): Use wide-int interfaces.
- (phi_incr_cost): Take a widest_int instead of a double_int.
- (lowest_cost_path): Likewise.
- (total_savings): Likewise.
- (analyze_increments): Use wide-int interfaces.
- (ncd_with_phi): Take a widest_int instead of a double_int.
- (ncd_of_cand_and_phis): Likewise.
- (nearest_common_dominator_for_cands): Likewise.
- (insert_initializers): Use wide-int interfaces.
- (all_phi_incrs_profitable): Likewise.
- (replace_one_candidate): Likewise.
- (replace_profitable_candidates): Likewise.
- * godump.c: Include wide-int-print.h.
- (go_output_typedef): Use wide-int interfaces.
- * graphite-clast-to-gimple.c (gmp_cst_to_tree): Likewise.
- * graphite-sese-to-poly.c (tree_int_to_gmp): Likewise.
- (build_loop_iteration_domains): Likewise.
- * hooks.h: Include wide-int.h rather than double-int.h.
- (hook_bool_dint_dint_uint_bool_true): Delete.
- (hook_bool_wint_wint_uint_bool_true): Declare.
- * hooks.c (hook_bool_dint_dint_uint_bool_true): Removed.
- (hook_bool_wint_wint_uint_bool_true): New.
- * internal-fn.c (ubsan_expand_si_overflow_addsub_check): Use wide-int
- interfaces.
- (ubsan_expand_si_overflow_mul_check): Likewise.
- * ipa-devirt.c (get_polymorphic_call_info): Likewise.
- * ipa-prop.c (compute_complex_assign_jump_func): Likewise.
- (get_ancestor_addr_info): Likewise.
- (ipa_modify_call_arguments): Likewise.
- * loop-doloop.c (doloop_modify): Likewise.
- (doloop_optimize): Likewise.
- * loop-iv.c (iv_number_of_iterations): Likewise.
- * loop-unroll.c (decide_unroll_constant_iterations): Likewise.
- (unroll_loop_constant_iterations): Likewise.
- (decide_unroll_runtime_iterations): Likewise.
- (unroll_loop_runtime_iterations): Likewise.
- (decide_peel_simple): Likewise.
- (decide_unroll_stupid): Likewise.
- * lto-streamer-in.c (streamer_read_wi): Add.
- (input_cfg): Use wide-int interfaces.
- (lto_input_tree_1): Likewise.
- * lto-streamer-out.c (streamer_write_wi): Add.
- (hash_tree): Use wide-int interfaces.
- (output_cfg): Likewise.
- * Makefile.in (OBJS): Add wide-int.o and wide-int-print.o.
- (GTFILES): Add wide-int.h and signop.h.
- (TAGS): Look for .cc files too.
- * omp-low.c (scan_omp_1_op): Use wide-int interfaces.
- * optabs.c (expand_subword_shift): Likewise.
- (expand_doubleword_shift): Likewise.
- (expand_absneg_bit): Likewise.
- (expand_copysign_absneg): Likewise.
- (expand_copysign_bit): Likewise.
- * postreload.c (reload_cse_simplify_set): Likewise.
- * predict.c (predict_iv_comparison): Likewise.
- * pretty-print.h: Include wide-int-print.h.
- (pp_wide_int) New.
- * print-rtl.c (print_rtx): Add CONST_WIDE_INT case.
- * print-tree.c: Include wide-int-print.h.
- (print_node_brief): Use wide-int interfaces.
- (print_node): Likewise.
- * read-rtl.c (validate_const_wide_int): New.
- (read_rtx_code): Add CONST_WIDE_INT case.
- * real.c: Include wide-int.h.
- (real_to_integer2): Delete.
- (real_to_integer): New function, returning a wide_int.
- (real_from_integer): Take a wide_int rather than two HOST_WIDE_INTs.
- (ten_to_ptwo): Update call to real_from_integer.
- (real_digit): Likewise.
- * real.h: Include signop.h, wide-int.h and insn-modes.h.
- (real_to_integer2, REAL_VALUE_FROM_INT, REAL_VALUE_FROM_UNSIGNED_INT)
- (REAL_VALUE_TO_INT): Delete.
- (real_to_integer): Declare a wide-int form.
- (real_from_integer): Take a wide_int rather than two HOST_WIDE_INTs.
- * recog.c (const_int_operand): Improve comment.
- (const_scalar_int_operand): New.
- (const_double_operand): Add a separate definition for CONST_WIDE_INT.
- * rtlanal.c (commutative_operand_precedence): Handle CONST_WIDE_INT.
- (split_double): Likewise.
- * rtl.c (DEF_RTL_EXPR): Handle CONST_WIDE_INT.
- (rtx_size): Likewise.
- (rtx_alloc_stat_v): New.
- (rtx_alloc_stat): Now calls rtx_alloc_stat_v.
- (cwi_output_hex): New.
- (iterative_hash_rtx): Handle CONST_WIDE_INT.
- (cwi_check_failed_bounds): New.
- * rtl.def (CONST_WIDE_INT): New.
- * rtl.h: Include <utility> and wide-int.h.
- (struct hwivec_def): New.
- (CWI_GET_NUM_ELEM): New.
- (CWI_PUT_NUM_ELEM): New.
- (struct rtx_def): Add num_elem and hwiv.
- (CASE_CONST_SCALAR_INT): Modify for TARGET_SUPPORTS_WIDE_INT.
- (CASE_CONST_UNIQUE): Likewise.
- (CASE_CONST_ANY): Likewise.
- (CONST_SCALAR_INT_P): Likewise.
- (CONST_WIDE_INT_P): New.
- (CWI_ELT): New.
- (HWIVEC_CHECK): New.
- (cwi_check_failed_bounds): New.
- (CWI_ELT): New.
- (HWIVEC_CHECK): New.
- (CONST_WIDE_INT_VEC) New.
- (CONST_WIDE_INT_NUNITS) New.
- (CONST_WIDE_INT_ELT) New.
- (rtx_mode_t): New type.
- (wi::int_traits <rtx_mode_t>): New.
- (wi::shwi): New.
- (wi::min_value): New.
- (wi::max_value): New.
- (rtx_alloc_v) New.
- (const_wide_int_alloc): New.
- (immed_wide_int_const): New.
- * sched-vis.c (print_value): Handle CONST_WIDE_INT.
- * sel-sched-ir.c (lhs_and_rhs_separable_p): Update comment.
- * signop.h: New file.
- * simplify-rtx.c (mode_signbit_p): Handle CONST_WIDE_INT.
- (simplify_const_unary_operation): Use wide-int interfaces.
- (simplify_binary_operation_1): Likewise.
- (simplify_const_binary_operation): Likewise.
- (simplify_const_relational_operation): Likewise.
- (simplify_immed_subreg): Likewise.
- * stmt.c (expand_case): Likewise.
- * stor-layout.h (set_min_and_max_values_for_integral_type): Take a
- signop rather than a bool.
- * stor-layout.c (layout_type): Use wide-int interfaces.
- (initialize_sizetypes): Update calls to
- set_min_and_max_values_for_integral_type.
- (set_min_and_max_values_for_integral_type): Take a signop rather
- than a bool. Use wide-int interfaces.
- (fixup_signed_type): Update accordingly. Remove
- HOST_BITS_PER_DOUBLE_INT limit.
- (fixup_unsigned_type): Likewise.
- * system.h (STATIC_CONSTANT_P): New.
- (STATIC_ASSERT): New.
- * target.def (can_use_doloop_p): Take widest_ints rather than
- double_ints.
- * target.h: Include wide-int.h rather than double-int.h.
- * targhooks.h (can_use_doloop_if_innermost): Take widest_ints rather
- than double_ints.
- * targhooks.c (default_cxx_get_cookie_size): Use tree_int_cst_lt
- rather than INT_CST_LT_UNSIGNED.
- (can_use_doloop_if_innermost): Take widest_ints rather than
- double_ints.
- * tree-affine.c: Include wide-int-print.h.
- (double_int_ext_for_comb): Delete.
- (wide_int_ext_for_comb): New.
- (aff_combination_zero): Use wide-int interfaces.
- (aff_combination_const): Take a widest_int instead of a double_int.
- (aff_combination_elt): Use wide-int interfaces.
- (aff_combination_scale): Take a widest_int instead of a double_int.
- (aff_combination_add_elt): Likewise.
- (aff_combination_add_cst): Likewise.
- (aff_combination_add): Use wide-int interfaces.
- (aff_combination_convert): Likewise.
- (tree_to_aff_combination): Likewise.
- (add_elt_to_tree): Take a widest_int instead of a double_int.
- (aff_combination_to_tree): Use wide-int interfaces.
- (aff_combination_remove_elt): Likewise.
- (aff_combination_add_product): Take a widest_int instead of
- a double_int.
- (aff_combination_mult): Use wide-int interfaces.
- (aff_combination_expand): Likewise.
- (double_int_constant_multiple_p): Delete.
- (wide_int_constant_multiple_p): New.
- (aff_combination_constant_multiple_p): Take a widest_int pointer
- instead of a double_int pointer.
- (print_aff): Use wide-int interfaces.
- (get_inner_reference_aff): Take a widest_int pointer
- instead of a double_int pointer.
- (aff_comb_cannot_overlap_p): Take widest_ints instead of double_ints.
- * tree-affine.h: Include wide-int.h.
- (struct aff_comb_elt): Change type of coef to widest_int.
- (struct affine_tree_combination): Change type of offset to widest_int.
- (double_int_ext_for_comb): Delete.
- (wide_int_ext_for_comb): New.
- (aff_combination_const): Use widest_int instead of double_int.
- (aff_combination_scale): Likewise.
- (aff_combination_add_elt): Likewise.
- (aff_combination_constant_multiple_p): Likewise.
- (get_inner_reference_aff): Likewise.
- (aff_comb_cannot_overlap_p): Likewise.
- (aff_combination_zero_p): Use wide-int interfaces.
- * tree.c: Include tree.h.
- (init_ttree): Use make_int_cst.
- (tree_code_size): Removed code for INTEGER_CST case.
- (tree_size): Add INTEGER_CST case.
- (make_node_stat): Update comment.
- (get_int_cst_ext_nunits, build_new_int_cst, build_int_cstu): New.
- (build_int_cst_type): Use wide-int interfaces.
- (double_int_to_tree): Likewise.
- (double_int_fits_to_tree_p): Delete.
- (force_fit_type_double): Delete.
- (force_fit_type): New.
- (int_cst_hash_hash): Use wide-int interfaces.
- (int_cst_hash_eq): Likewise.
- (build_int_cst_wide): Delete.
- (wide_int_to_tree): New.
- (cache_integer_cst): Use wide-int interfaces.
- (build_low_bits_mask): Likewise.
- (cst_and_fits_in_hwi): Likewise.
- (real_value_from_int_cst): Likewise.
- (make_int_cst_stat): New.
- (integer_zerop): Use wide_int interfaces.
- (integer_onep): Likewise.
- (integer_all_onesp): Likewise.
- (integer_pow2p): Likewise.
- (integer_nonzerop): Likewise.
- (tree_log2): Likewise.
- (tree_floor_log2): Likewise.
- (tree_ctz): Likewise.
- (int_size_in_bytes): Likewise.
- (mem_ref_offset): Return an offset_int rather than a double_int.
- (build_type_attribute_qual_variant): Use wide_int interfaces.
- (type_hash_eq): Likewise
- (tree_int_cst_equal): Likewise.
- (tree_int_cst_lt): Delete.
- (tree_int_cst_compare): Likewise.
- (tree_fits_shwi_p): Use wide_int interfaces.
- (tree_fits_uhwi_p): Likewise.
- (tree_int_cst_sign_bit): Likewise.
- (tree_int_cst_sgn): Likewise.
- (tree_int_cst_min_precision): Take a signop rather than a bool.
- (simple_cst_equal): Use wide_int interfaces.
- (compare_tree_int): Likewise.
- (iterative_hash_expr): Likewise.
- (int_fits_type_p): Likewise. Use tree_int_cst_lt rather than
- INT_CST_LT.
- (get_type_static_bounds): Use wide_int interfaces.
- (tree_int_cst_elt_check_failed): New.
- (build_common_tree_nodes): Reordered to set prec before filling in
- value.
- (int_cst_value): Check cst_and_fits_in_hwi.
- (widest_int_cst_value): Use wide_int interfaces.
- (upper_bound_in_type): Likewise.
- (lower_bound_in_type): Likewise.
- (num_ending_zeros): Likewise.
- (drop_tree_overflow): Likewise.
- * tree-call-cdce.c (check_pow): Update call to real_from_integer.
- (gen_conditions_for_pow_cst_base): Likewise.
- * tree-cfg.c: Include wide-int.h and wide-int-print.h.
- (group_case_labels_stmt): Use wide-int interfaces.
- (verify_gimple_assign_binary): Likewise.
- (print_loop): Likewise.
- * tree-chrec.c (tree_fold_binomial): Likewise.
- * tree-core.h (struct tree_base): Add int_length.
- (struct tree_int_cst): Change rep of value.
- * tree-data-ref.c (dr_analyze_innermost): Use wide-int interfaces.
- (dr_may_alias_p): Likewise.
- (max_stmt_executions_tree): Likewise.
- * tree.def (INTEGER_CST): Update comment.
- * tree-dfa.c (get_ref_base_and_extent): Use wide-int interfaces.
- * tree-dfa.h (get_addr_base_and_unit_offset_1): Likewise.
- * tree-dump.c: Include wide-int.h and wide-int-print.h.
- (dequeue_and_dump): Use wide-int interfaces.
- * tree.h: Include wide-int.h.
- (NULL_TREE): Moved to earlier loc in file.
- (TREE_INT_CST_ELT_CHECK): New.
- (tree_int_cst_elt_check_failed): New.
- (TYPE_SIGN): New.
- (TREE_INT_CST): Delete.
- (TREE_INT_CST_LOW): Use wide-int interfaces.
- (TREE_INT_CST_HIGH): Delete.
- (TREE_INT_CST_NUNITS): New.
- (TREE_INT_CST_EXT_NUNITS): Likewise.
- (TREE_INT_CST_OFFSET_NUNITS): Likewise.
- (TREE_INT_CST_ELT): Likewise.
- (INT_CST_LT): Delete.
- (tree_int_cst_elt_check): New (two forms).
- (type_code_size): Update comment.
- (make_int_cst_stat, make_int_cst): New.
- (tree_to_double_int): Delete.
- (double_int_fits_to_tree_p): Delete.
- (force_fit_type_double): Delete.
- (build_int_cstu): Replace with out-of-line function.
- (build_int_cst_wide): Delete.
- (tree_int_cst_lt): Define inline.
- (tree_int_cst_le): New.
- (tree_int_cst_compare): Define inline.
- (tree_int_cst_min_precision): Take a signop rather than a bool.
- (wi::int_traits <const_tree>): New.
- (wi::int_traits <tree>): New.
- (wi::extended_tree): New.
- (wi::int_traits <wi::extended_tree>): New.
- (wi::to_widest): New.
- (wi::to_offset): New.
- (wi::fits_to_tree_p): New.
- (wi::min_value): New.
- (wi::max_value): New.
- * tree-inline.c (remap_gimple_op_r): Use wide-int interfaces.
- (copy_tree_body_r): Likewise.
- * tree-object-size.c (compute_object_offset): Likewise.
- (addr_object_size): Likewise.
- * tree-predcom.c: Include wide-int-print.h.
- (struct dref_d): Change type of offset to widest_int.
- (dump_dref): Call wide-int printer.
- (aff_combination_dr_offset): Use wide-int interfaces.
- (determine_offset): Take a widest_int pointer rather than a
- double_int pointer.
- (split_data_refs_to_components): Use wide-int interfaces.
- (suitable_component_p): Likewise.
- (order_drefs): Likewise.
- (add_ref_to_chain): Likewise.
- (valid_initializer_p): Likewise.
- (determine_roots_comp): Likewise.
- * tree-pretty-print.c: Include wide-int-print.h.
- (dump_generic_node): Use wide-int interfaces.
- * tree-sra.c (sra_ipa_modify_expr): Likewise.
- * tree-ssa-address.c (addr_for_mem_ref): Likewise.
- (move_fixed_address_to_symbol): Likewise.
- (move_hint_to_base): Likewise.
- (move_pointer_to_base): Likewise.
- (move_variant_to_index): Likewise.
- (most_expensive_mult_to_index): Likewise.
- (addr_to_parts): Likewise.
- (copy_ref_info): Likewise.
- * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Likewise.
- (indirect_refs_may_alias_p): Likewise.
- (stmt_kills_ref_p_1): Likewise.
- * tree-ssa.c (non_rewritable_mem_ref_base): Likewise.
- * tree-ssa-ccp.c: Update comment at top of file. Include
- wide-int-print.h.
- (struct prop_value_d): Change type of mask to widest_int.
- (extend_mask): New function.
- (dump_lattice_value): Use wide-int interfaces.
- (get_default_value): Likewise.
- (set_constant_value): Likewise.
- (set_value_varying): Likewise.
- (valid_lattice_transition): Likewise.
- (set_lattice_value): Likewise.
- (value_to_double_int): Delete.
- (value_to_wide_int): New.
- (get_value_from_alignment): Use wide-int interfaces.
- (get_value_for_expr): Likewise.
- (do_dbg_cnt): Likewise.
- (ccp_finalize): Likewise.
- (ccp_lattice_meet): Likewise.
- (bit_value_unop_1): Use widest_ints rather than double_ints.
- (bit_value_binop_1): Likewise.
- (bit_value_unop): Use wide-int interfaces.
- (bit_value_binop): Likewise.
- (bit_value_assume_aligned): Likewise.
- (evaluate_stmt): Likewise.
- (ccp_fold_stmt): Likewise.
- (visit_cond_stmt): Likewise.
- (ccp_visit_stmt): Likewise.
- * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Likewise.
- (constant_pointer_difference): Likewise.
- (associate_pointerplus): Likewise.
- (combine_conversions): Likewise.
- * tree-ssa-loop.h: Include wide-int.h.
- (struct tree_niter_desc): Change type of max to widest_int.
- * tree-ssa-loop-im.c (mem_refs_may_alias_p): Use wide-int interfaces.
- * tree-ssa-loop-ivcanon.c (remove_exits_and_undefined_stmts): Likewise.
- (remove_redundant_iv_tests): Likewise.
- (canonicalize_loop_induction_variables): Likewise.
- * tree-ssa-loop-ivopts.c (alloc_iv): Likewise.
- (constant_multiple_of): Take a widest_int pointer instead of
- a double_int pointer.
- (get_computation_aff): Use wide-int interfaces.
- (ptr_difference_cost): Likewise.
- (difference_cost): Likewise.
- (get_loop_invariant_expr_id): Likewise.
- (get_computation_cost_at): Likewise.
- (iv_elimination_compare_lt): Likewise.
- (may_eliminate_iv): Likewise.
- * tree-ssa-loop-niter.h (estimated_loop_iterations): Use widest_int
- instead of double_int.
- (max_loop_iterations): Likewise.
- (max_stmt_executions): Likewise.
- (estimated_stmt_executions): Likewise.
- * tree-ssa-loop-niter.c: Include wide-int-print.h.
- (split_to_var_and_offset): Use wide-int interfaces.
- (determine_value_range): Likewise.
- (bound_difference_of_offsetted_base): Likewise.
- (bounds_add): Take a widest_int instead of a double_int.
- (number_of_iterations_ne_max): Use wide-int interfaces.
- (number_of_iterations_ne): Likewise.
- (number_of_iterations_lt_to_ne): Likewise.
- (assert_loop_rolls_lt): Likewise.
- (number_of_iterations_lt): Likewise.
- (number_of_iterations_le): Likewise.
- (number_of_iterations_cond): Likewise.
- (number_of_iterations_exit): Likewise.
- (finite_loop_p): Likewise.
- (derive_constant_upper_bound_assign): Likewise.
- (derive_constant_upper_bound): Return a widest_int.
- (derive_constant_upper_bound_ops): Likewise.
- (do_warn_aggressive_loop_optimizations): Use wide-int interfaces.
- (record_estimate): Take a widest_int rather than a double_int.
- (record_nonwrapping_iv): Use wide-int interfaces.
- (double_int_cmp): Delete.
- (wide_int_cmp): New.
- (bound_index): Take a widest_int rather than a double_int.
- (discover_iteration_bound_by_body_walk): Use wide-int interfaces.
- (maybe_lower_iteration_bound): Likewise.
- (estimate_numbers_of_iterations_loop): Likewise.
- (estimated_loop_iterations): Take a widest_int pointer than than
- a double_int pointer.
- (estimated_loop_iterations_int): Use wide-int interfaces.
- (max_loop_iterations): Take a widest_int pointer than than
- a double_int pointer.
- (max_loop_iterations_int): Use wide-int interfaces.
- (max_stmt_executions): Take a widest_int pointer than than
- a double_int pointer.
- (estimated_stmt_executions): Likewise.
- (n_of_executions_at_most): Use wide-int interfaces.
- (scev_probably_wraps_p): Likewise.
- * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Update calls
- to real_to_integer.
- * tree-scalar-evolution.c (simplify_peeled_chrec): Use wide-int
- interfaces.
- * tree-ssanames.c (set_range_info): Use wide_int_refs rather than
- double_ints. Adjust for trailing_wide_ints <3> representation.
- (set_nonzero_bits): Likewise.
- (get_range_info): Return wide_ints rather than double_ints.
- Adjust for trailing_wide_ints <3> representation.
- (get_nonzero_bits): Likewise.
- (duplicate_ssa_name_range_info): Adjust for trailing_wide_ints <3>
- representation.
- * tree-ssanames.h (struct range_info_def): Replace min, max and
- nonzero_bits with a trailing_wide_ints <3>.
- (set_range_info): Use wide_int_refs rather than double_ints.
- (set_nonzero_bits): Likewise.
- (get_range_info): Return wide_ints rather than double_ints.
- (get_nonzero_bits): Likewise.
- * tree-ssa-phiopt.c (jump_function_from_stmt): Use wide-int interfaces.
- * tree-ssa-pre.c (phi_translate_1): Likewise.
- * tree-ssa-reassoc.c (decrement_power): Use calls to real_from_integer.
- (acceptable_pow_call): Likewise.
- * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use wide-int
- interfaces.
- (vn_reference_fold_indirect): Likewise.
- (vn_reference_maybe_forwprop_address): Likewise.
- (valueize_refs_1): Likewise.
- * tree-ssa-structalias.c (get_constraint_for_ptr_offset): Likewise.
- * tree-ssa-uninit.c (is_value_included_in): Use wide-int interfaces,
- tree_int_cst_lt and tree_int_cst_le.
- * tree-streamer-in.c (unpack_ts_base_value_fields): Use wide-int
- interfaces.
- (streamer_alloc_tree): Likewise.
- * tree-streamer-out.c (pack_ts_int_cst_value_fields): Likewise.
- (streamer_write_tree_header): Likewise.
- (streamer_write_integer_cst): Likewise.
- * tree-switch-conversion.c (emit_case_bit_tests): Likewise.
- (build_constructors): Likewise.
- (array_value_type): Likewise.
- * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list): Likewise.
- (vect_check_gather): Likewise.
- * tree-vect-generic.c (build_replicated_const): Likewise.
- (expand_vector_divmod): Likewise.
- * tree-vect-loop.c (vect_transform_loop): Likewise.
- * tree-vect-loop-manip.c (vect_do_peeling_for_loop_bound): Likewise.
- (vect_do_peeling_for_alignment): Likewise.
- * tree-vect-patterns.c (vect_recog_divmod_pattern): Likewise.
- * tree-vrp.c: Include wide-int.h.
- (operand_less_p): Use wide-int interfaces and tree_int_cst_lt.
- (extract_range_from_assert): Use wide-int interfaces.
- (vrp_int_const_binop): Likewise.
- (zero_nonzero_bits_from_vr): Take wide_int pointers rather than
- double_int pointers.
- (ranges_from_anti_range): Use wide-int interfaces.
- (quad_int_cmp): Delete.
- (quad_int_pair_sort): Likewise.
- (extract_range_from_binary_expr_1): Use wide-int interfaces.
- (extract_range_from_unary_expr_1): Likewise.
- (adjust_range_with_scev): Likewise.
- (masked_increment): Take and return wide_ints rather than double_ints.
- (register_edge_assert_for_2): Use wide-int interfaces.
- (check_array_ref): Likewise.
- (search_for_addr_array): Likewise.
- (maybe_set_nonzero_bits): Likewise.
- (union_ranges): Pass an integer of the correct type instead of
- using integer_one_node.
- (intersect_ranges): Likewise.
- (simplify_truth_ops_using_ranges): Likewise.
- (simplify_bit_ops_using_ranges): Use wide-int interfaces.
- (range_fits_type_p): Likewise.
- (simplify_cond_using_ranges): Likewise. Take a signop rather than
- a bool.
- (simplify_conversion_using_ranges): Use wide-int interfaces.
- (simplify_float_conversion_using_ranges): Likewise.
- (vrp_finalize): Likewise.
- * value-prof.c (gimple_divmod_fixed_value_transform): Likewise.
- (gimple_stringops_transform): Likewise.
- * varasm.c (decode_addr_const): Likewise.
- (const_hash_1): Likewise.
- (const_rtx_hash_1): Likewise
- (output_constant): Likewise.
- (array_size_for_constructor): Likewise.
- (output_constructor_regular_field): Likewise.
- (output_constructor_bitfield): Likewise.
- * var-tracking.c (loc_cmp): Handle CONST_WIDE_INT.
- * mkconfig.sh: Include machmode.h to pick up BITS_PER_UNIT for
- GENERATOR_FILEs.
- * gencheck.c: Define BITS_PER_UNIT.
- * wide-int.cc: New.
- * wide-int.h: New.
- * wide-int-print.cc: New.
- * wide-int-print.h: New.
-
-
-ada:
- * gcc-interface/cuintp.c (UI_From_gnu): Use wide-int interfaces.
- * gcc-interface/decl.c (gnat_to_gnu_entity): Use TYPE_SIGN.
- (annotate_value): Use wide-int interfaces.
- * gcc-interface/utils.c (get_nonnull_operand): Use tree_fits_uhwi_p.
-
-
-c:
- * c-decl.c (check_bitfield_type_and_width): Use TYPE_SIGN.
- (finish_enum): Use wide-int interfaces.
- * c-parser.c (c_parser_cilk_clause_vectorlength): Likewise.
- * c-typeck.c (build_c_cast): Likewise.
- (set_nonincremental_init_from_string): Likewise.
- (c_tree_equal): Likewise.
-
-
-c-family:
- * c-ada-spec.c: Include wide-int.h.
- (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
- (dump_generic_ada_node): Use wide-int interfaces.
- * c-common.c: Include wide-int-print.h.
- (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
- (pointer_int_sum): Use wide-int interfaces.
- (c_common_nodes_and_builtins): Use make_int_cst.
- (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
- (handle_alloc_size_attribute): Use wide-int interfaces.
- (get_nonnull_operand): Likewise.
- * c-format.c (get_constant): Use tree_fits_uhwi_p.
- * c-lex.c: Include wide-int.h.
- (narrowest_unsigned_type): Take a widest_int rather than two
- HOST_WIDE_INTs.
- (narrowest_signed_type): Likewise.
- (interpret_integer): Update accordingly. Use wide-int interfaces.
- (lex_charconst): Use wide-int interfaces.
- * c-pretty-print.c: Include wide-int.h.
- (pp_c_integer_constant): Use wide-int interfaces.
- * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
- INT_CST_LT_UNSIGNED.
-
-
-cp:
- * call.c: Include wide-int.h.
- (type_passed_as): Use tree_int_cst_lt instead of INT_CST_LT_UNSIGNED.
- (convert_for_arg_passing): Likewise.
- * class.c: Include wide-int.h.
- (walk_subobject_offsets): Use tree_int_cst_lt instead of INT_CST_LT.
- (end_of_class): Use tree_int_cst_lt instead of INT_CST_LT_UNSIGNED.
- (include_empty_classes): Likewise
- (layout_class_type): Use tree_int_cst_lt instead of INT_CST_LT.
- * cvt.c: Include wide-int.h.
- (ignore_overflows): Use wide_int_to_tree.
- * decl.c: Include wide-int.h.
- (check_array_designated_initializer): Use wide-int interfaces.
- (compute_array_index_type): Use tree_int_cst_lt instead of INT_CST_LT.
- (finish_enum_value_list): Use signop.
- (build_enumerator): Use wide-int interfaces.
- * init.c: Include wide-int.h.
- (build_new_1): Use wide-int interfaces.
- * mangle.c: Include wide-int.h.
- (write_integer_cst): Use wide-int interfaces.
- (write_array_type): Likewise.
- * tree.c: Include wide-int.h.
- (cp_tree_equal): Use tree_int_cst_equal.
- * typeck2.c: Include wide-int.h.
- (process_init_constructor_array): Use wide-int interfaces.
-
-
-fortran:
- * target-memory.c: Include wide-int.h.
- (gfc_interpret_logical): Use wide-int interfaces.
- * trans-array.c: Include wide-int.h.
- (gfc_conv_array_initializer): Use wide-int interfaces.
- * trans-const.c: Include wide-int.h.
- (gfc_conv_string_init): Use wide-int interfaces.
- (gfc_conv_mpz_to_tree): Likewise.
- (gfc_conv_tree_to_mpz): Likewise.
- * trans-decl.c (gfc_can_put_var_on_stack): Use tree_fits_uhwi_p.
- * trans-expr.c: Include wide-int.h.
- (gfc_conv_cst_int_power): Use wide-int interfaces.
- (gfc_string_to_single_character): Likewise.
- (gfc_optimize_len_trim): Likewise.
- * trans-intrinsic.c: Include wide-int.h.
- (trans_this_image): Use wide-int interfaces.
- (gfc_conv_intrinsic_bound): Likewise.
- (conv_intrinsic_cobound): Likewise.
- * trans-types.c (gfc_init_types): Likewise.
- (gfc_get_array_type_bounds): Pass an integer of the correct type
- instead of using integer_one_node.
-
-
-go:
- * go-gcc.cc (Gcc_backend::type_size): Use tree_fits_uhwi_p.
-
-
-java:
- * boehm.c: Include wide-int.h.
- (mark_reference_fields): Use a wide_int mask.
- (get_boehm_type_descriptor): Use wide-int interfaces.
- * expr.c: Include wide-int.h.
- (build_newarray): Remove bogus "== INTEGER_CST".
- (expand_java_pushc): Use real_from_integer.
- (build_field_ref): Use tree_int_cst_lt instead of INT_CST_LT_UNSIGNED.
- * jcf-parse.c: Include wide-int.h.
- (get_constant): Use wide-int interfaces.
-
-
-lto:
- * lto.c (compare_tree_sccs_1): Use wide-int interfaces.
- * lto-lang.c (get_nonnull_operand): Likewise.
-
-
-objc:
- * objc-act.c: Include wide-int.h.
- (objc_decl_method_attributes): Use wide-int interfaces.
-
-
-testsuite:
- * gcc.dg/tree-ssa/pr45427.c: Update to look for 0x0 instead of 0.
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index fb57af5..57c5176 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,12 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * gcc-interface/cuintp.c (UI_From_gnu): Use wide-int interfaces.
+ * gcc-interface/decl.c (gnat_to_gnu_entity): Use TYPE_SIGN.
+ (annotate_value): Use wide-int interfaces.
+ * gcc-interface/utils.c (get_nonnull_operand): Use tree_fits_uhwi_p.
+
2014-04-28 Richard Henderson <rth@redhat.com>
* gcc-interface/Makefile.in: Support aarch64-linux.
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index e347b32..4673a16 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,29 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * c-ada-spec.c: Include wide-int.h.
+ (ADA_HOST_WIDE_INT_PRINT_DOUBLE_HEX): Remove.
+ (dump_generic_ada_node): Use wide-int interfaces.
+ * c-common.c: Include wide-int-print.h.
+ (shorten_compare): Use wide-int interfaces and tree_int_cst_lt.
+ (pointer_int_sum): Use wide-int interfaces.
+ (c_common_nodes_and_builtins): Use make_int_cst.
+ (match_case_to_enum_1): Use tree_fits_uhwi_p and tree_fits_shwi_p.
+ (handle_alloc_size_attribute): Use wide-int interfaces.
+ (get_nonnull_operand): Likewise.
+ * c-format.c (get_constant): Use tree_fits_uhwi_p.
+ * c-lex.c: Include wide-int.h.
+ (narrowest_unsigned_type): Take a widest_int rather than two
+ HOST_WIDE_INTs.
+ (narrowest_signed_type): Likewise.
+ (interpret_integer): Update accordingly. Use wide-int interfaces.
+ (lex_charconst): Use wide-int interfaces.
+ * c-pretty-print.c: Include wide-int.h.
+ (pp_c_integer_constant): Use wide-int interfaces.
+ * cilk.c (declare_one_free_variable): Use tree_int_cst_lt instead of
+ INT_CST_LT_UNSIGNED.
+
2014-05-06 Richard Biener <rguenther@suse.de>
* c-opts.c (c_common_post_options): For -freestanding,
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index e408fef..379b8d7 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,14 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * c-decl.c (check_bitfield_type_and_width): Use TYPE_SIGN.
+ (finish_enum): Use wide-int interfaces.
+ * c-parser.c (c_parser_cilk_clause_vectorlength): Likewise.
+ * c-typeck.c (build_c_cast): Likewise.
+ (set_nonincremental_init_from_string): Likewise.
+ (c_tree_equal): Likewise.
+
2014-05-02 Marek Polacek <polacek@redhat.com>
PR c/25801
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 374cd0f..dce8df6 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,32 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * call.c: Include wide-int.h.
+ (type_passed_as): Use tree_int_cst_lt instead of INT_CST_LT_UNSIGNED.
+ (convert_for_arg_passing): Likewise.
+ * class.c: Include wide-int.h.
+ (walk_subobject_offsets): Use tree_int_cst_lt instead of INT_CST_LT.
+ (end_of_class): Use tree_int_cst_lt instead of INT_CST_LT_UNSIGNED.
+ (include_empty_classes): Likewise
+ (layout_class_type): Use tree_int_cst_lt instead of INT_CST_LT.
+ * cvt.c: Include wide-int.h.
+ (ignore_overflows): Use wide_int_to_tree.
+ * decl.c: Include wide-int.h.
+ (check_array_designated_initializer): Use wide-int interfaces.
+ (compute_array_index_type): Use tree_int_cst_lt instead of INT_CST_LT.
+ (finish_enum_value_list): Use signop.
+ (build_enumerator): Use wide-int interfaces.
+ * init.c: Include wide-int.h.
+ (build_new_1): Use wide-int interfaces.
+ * mangle.c: Include wide-int.h.
+ (write_integer_cst): Use wide-int interfaces.
+ (write_array_type): Likewise.
+ * tree.c: Include wide-int.h.
+ (cp_tree_equal): Use tree_int_cst_equal.
+ * typeck2.c: Include wide-int.h.
+ (process_init_constructor_array): Use wide-int interfaces.
+
2014-05-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58582
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index b991dc0..5e39b13 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,28 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * target-memory.c: Include wide-int.h.
+ (gfc_interpret_logical): Use wide-int interfaces.
+ * trans-array.c: Include wide-int.h.
+ (gfc_conv_array_initializer): Use wide-int interfaces.
+ * trans-const.c: Include wide-int.h.
+ (gfc_conv_string_init): Use wide-int interfaces.
+ (gfc_conv_mpz_to_tree): Likewise.
+ (gfc_conv_tree_to_mpz): Likewise.
+ * trans-decl.c (gfc_can_put_var_on_stack): Use tree_fits_uhwi_p.
+ * trans-expr.c: Include wide-int.h.
+ (gfc_conv_cst_int_power): Use wide-int interfaces.
+ (gfc_string_to_single_character): Likewise.
+ (gfc_optimize_len_trim): Likewise.
+ * trans-intrinsic.c: Include wide-int.h.
+ (trans_this_image): Use wide-int interfaces.
+ (gfc_conv_intrinsic_bound): Likewise.
+ (conv_intrinsic_cobound): Likewise.
+ * trans-types.c (gfc_init_types): Likewise.
+ (gfc_get_array_type_bounds): Pass an integer of the correct type
+ instead of using integer_one_node.
+
2014-04-30 Tobias Burnus <burnus@net-b.de>
* trans-decl.c (create_function_arglist): Add hidden coarray arguments
diff --git a/gcc/go/ChangeLog b/gcc/go/ChangeLog
index b4267ab..ca9b4a2 100644
--- a/gcc/go/ChangeLog
+++ b/gcc/go/ChangeLog
@@ -1,3 +1,9 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * go-gcc.cc (Gcc_backend::type_size): Use tree_fits_uhwi_p.
+
2014-05-06 Chris Manghane <cmang@google.com>
* go-c.h (go_create_gogo): Update declaration to add
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 7bdc8ca..93c634d 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,17 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * boehm.c: Include wide-int.h.
+ (mark_reference_fields): Use a wide_int mask.
+ (get_boehm_type_descriptor): Use wide-int interfaces.
+ * expr.c: Include wide-int.h.
+ (build_newarray): Remove bogus "== INTEGER_CST".
+ (expand_java_pushc): Use real_from_integer.
+ (build_field_ref): Use tree_int_cst_lt instead of INT_CST_LT_UNSIGNED.
+ * jcf-parse.c: Include wide-int.h.
+ (get_constant): Use wide-int interfaces.
+
2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
Update copyright years
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index edb5bb9..038f8a9 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,3 +1,10 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * lto.c (compare_tree_sccs_1): Use wide-int interfaces.
+ * lto-lang.c (get_nonnull_operand): Likewise.
+
2014-04-28 Richard Biener <rguenther@suse.de>
PR middle-end/60092
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog
index 5d77411..bcc5b82 100644
--- a/gcc/objc/ChangeLog
+++ b/gcc/objc/ChangeLog
@@ -1,3 +1,10 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * objc-act.c: Include wide-int.h.
+ (objc_decl_method_attributes): Use wide-int interfaces.
+
2014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
PR objc/56044
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index a3dd81c..cdd4924 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+ Mike Stump <mikestump@comcast.net>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * gcc.dg/tree-ssa/pr45427.c: Update to look for 0x0 instead of 0.
+
2014-05-05 Jan Hubicka <hubicka@ucw.cz>
PR ipa/60965