Skip to content
Snippets Groups Projects
  1. Dec 02, 2004
  2. Nov 24, 2004
    • Steven Bosscher's avatar
      expr.c (expand_expr_real_1): Remove cases for EXIT_BLOCK_EXPR and LABELED_BLOCK_EXPR. · 16df8078
      Steven Bosscher authored
      gcc/
      	* expr.c (expand_expr_real_1): Remove cases for EXIT_BLOCK_EXPR
      	and LABELED_BLOCK_EXPR.
      	* gimplify.c (gimplify_labeled_block_expr): Remove.
      	(gimplify_exit_block_expr): Remove.
      	(gimplify_expr): Don't call them.
      	* tree-inline.c (copy_body_r): Don't handle EXIT_BLOCK_EXPR
      	and LABELED_BLOCK_EXPR.
      	(estimate_num_insns_1): Likewise.
      	(walk_tree): Likewise.
      	* tree-pretty-print.c (dump_generic_node): Don't handle
      	EXIT_BLOCK_EXPR and LABELED_BLOCK_EXPR.
      	* tree.def (EXIT_BLOCK_EXPR): Moved to java-tree.def.
      	(LABELED_BLOCK_EXPR): Likewise.
      	* tree.h (LABELED_BLOCK_LABEL): Moved to java-tree.h.
      	(LABELED_BLOCK_BODY): Likewise.
      	(EXIT_BLOCK_LABELED_BLOCK): Likewise.
      	(EXIT_BLOCK_RETURN): Removed.
      
      java/
      	* java-gimplify.c (java_gimplify_labeled_block_expr): New function.
      	(java_gimplify_exit_block_expr): New function.
      	(java_gimplify_expr): Use them to gimplify EXIT_BLOCK_EXPR and
      	LABELED_BLOCK_EXPR.
      	* java-tree.def (LABELED_BLOCK_EXPR): Moved from tree.def.
      	(EXIT_BLOCK_EXPR): Likewise.
      	* java-tree.h (LABELED_BLOCK_LABEL): Moved from tree.h.
      	(LABELED_BLOCK_BODY): Likewise.
      	(EXIT_BLOCK_LABELED_BLOCK): Likewise.
      	* jcf-write.c (generate_bytecode_insns): Don't handle the unused
      	EXIT_BLOCK_RETURN operand.  Use EXIT_BLOCK_LABELED_BLOCK instead of
      	TREE_OPERAND.
      	* lang.c (java_tree_inlining_walk_subtrees): Handle EXIT_BLOCK_EXPR.
      	(java_dump_tree): Use LABELED_BLOCK_LABEL, LABELED_BLOCK_BODY, and
      	EXIT_BLOCK_LABELED_BLOCK instead of TREE_OPERAND.  Don't handle the
      	second operand of EXIT_BLOCK_EXPR.
      	* parse.y (find_expr_with_wfl): Use LABELED_BLOCK_BODY instead of
      	TREE_OPERAND.
      	(build_bc_statement): Use build1 to build EXIT_BLOCK_EXPR nodes.
      
      From-SVN: r91149
      16df8078
  3. Sep 30, 2004
    • Per Bothner's avatar
      check-init.c (check_init): Handle USE_MAPPED_LOCATION case. · de399303
      Per Bothner authored
      	* check-init.c (check_init): Handle USE_MAPPED_LOCATION case.
      	* decl.c (finish_method, java_add_stmt): Likewise.
      	* java-gimplify.c (java-gimplify.c):  Likewise.
      	* jcf-write.c (generate_bytecode_insns):  Likewise.
      	* lang.c (java_post_options): Likewise - call linemap_add.
      
      From-SVN: r88324
      de399303
  4. Sep 23, 2004
  5. Sep 17, 2004
    • Jeffrey D. Oldham's avatar
      alias.c (find_base_decl): Remove unreachable case '3' block. · 6615c446
      Jeffrey D. Oldham authored
      2004-09-17  Jeffrey D. Oldham  <oldham@codesourcery.com>
      	    Zack Weinberg  <zack@codesourcery.com>
      
      	* alias.c (find_base_decl): Remove unreachable case '3' block.
      	* expr.c (safe_from_p): Abort if passed a type.
      	* tree-gimple.c (recalculate_side_effects): Abort if passed
      	anything other than an expression.
      	* tree-ssa-pre.c (phi_translate): Return expr immediately if
      	is_gimple_min_invariant is true for it.  Reorder cases for clarity.
      	Abort on un-handled tree classes.
      	(valid_in_set): Likewise.
      	* tree.c (tree_code_class_strings): New static data.
      
      	* tree.h (enum tree_code_class): New.
      	(tree_code_class_strings): Declare.
      	(TREE_CODE_CLASS_STRING, EXCEPTIONAL_CLASS_P, CONSTANT_CLASS_P)
      	(REFERENCE_CLASS_P, COMPARISON_CLASS_P, UNARY_CLASS_P, BINARY_CLASS_P)
      	(STATEMENT_CLASS_P, EXPRESSION_CLASS_P, IS_TYPE_OR_DECL_P): New macros.
      	(TYPE_P, DECL_P, IS_NON_TYPE_CODE_CLASS, IS_EXPR_CODE_CLASS)
      	(checking macros, EXPR_LOCATION, SET_EXPR_LOCATION, EXPR_LOCUS): Update.
      
      	* tree.def, c-common.def, objc/objc-tree.def: Use
      	tree_code_class enumeration constants instead of code letters.
      
      	* alias.c, builtins.c, c-common.c, c-format.c, c-lang.c, c-pragma.c
      	* c-typeck.c, cgraphunit.c, convert.c, dbxout.c, dwarf2out.c
      	* emit-rtl.c expr.c, fold-const.c, gimplify.c, lambda-code.c
      	* langhooks.c, langhooks.h, predict.c, print-tree.c, reload1.c, stmt.c
      	* tree-browser.c, tree-cfg.c, tree-chrec.c, tree-complex.c, tree-dfa.c
      	* tree-dump.c, tree-eh.c, tree-gimple.c, tree-inline.c, tree-nested.c
      	* tree-outof-ssa.c, tree-pretty-print.c, tree-sra.c, tree-ssa-ccp.c
      	* tree-ssa-dce.c, tree-ssa-dom.c, tree-ssa-forwprop.c, tree-ssa-live.c
      	* tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c, tree-ssa-operands.c
      	* tree-ssa-phiopt.c, tree-ssa-pre.c, tree-ssa-propagate.c
      	* tree-ssa.c, tree-ssanames.c, tree-tailcall.c, tree.c, varasm.c
      	* config/sol2-c.c, config/arm/arm.c, config/i386/winnt.c
      	* config/pa/pa.c, config/pa/pa.h, config/sh/sh.c, objc/objc-lang.c
      	Update to match.
      
      	* LANGUAGES: Add note about change.
      
      ada:
      	* ada-tree.def: Use tree_code_class enumeration constants
      	instead of code letters.
      	* ada-tree.h, decl.c, misc.c, trans.c, utils.c, utils2.c:
      	Update for new tree-class enumeration constants.
      
      cp:
      	* cp-tree.def: Use tree_code_class enumeration constants
      	instead of code letters.
      	* call.c, class.c, cp-gimplify.c, cp-lang.c, cxx-pretty-print.c
      	* mangle.c, pt.c, semantics.c, tree.c, typeck.c:
      	Update for new tree-class enumeration constants.
      
      fortran:
      	* f95-lang.c, trans-expr.c, trans.c: Update for new tree-class
      	enumeration constants.
      
      java:
      	* java-tree.def: Use tree_code_class enumeration constants
      	instead of code letters.
      	* java-gimplify.c, jcf-write.c, lang.c, parse.y: Update for
      	new tree-class enumeration constants.
      
      treelang:
      	* treetree.c: Update for new tree-class enumeration constants.
      
      From-SVN: r87675
      6615c446
  6. Aug 25, 2004
    • Nathan Sidwell's avatar
      tree.h (build_int_cst): New, sign extended constant. · 7d60be94
      Nathan Sidwell authored
      	* tree.h  (build_int_cst): New, sign extended constant.
      	(build_int_cstu): New, zero extended constant.
      	(build_int_cst_wide): Renamed from build_int_cst.
      	* tree.c (build_int_cst, build_int_cstu): New.
      	(build_int_cst_wide): Renamed from build_int_cst.
      	(make_vector_type, build_common_tree_nodes,
      	build_common_tree_nodes_2): Adjust build_int_cst calls.
      	* builtins.c (expand_builtin_prefetch, expand_builtin_strstr,
      	expand_builtin_strpbrk, expand_builtin_fputs,
      	build_string_literal, expand_builtin_printf,
      	expand_builtin_sprintf, fold_builtin_classify_type,
      	fold_builtin_lround, fold_builtin_bitop, fold_builtin_isascii,
      	fold_builtin_toascii, fold_builtin_isdigit,
      	simplify_builtin_strstr, simplify_builtin_strpbrk,
      	fold_builtin_fputs, simplify_builtin_sprintf): Likewise.
      	* c-common.c (start_fname_decls, fix_string_type, shorten_compare,
      	DEF_ATTR_INT): Likewise.
      	* c-decl.c (complete_array_type, check_bitfield_type_and_width):
      	Likewise.
      	* c-lex.c (interpret_integer, lex_charconst): Likewise.
      	* c-parse.in (primary) <TYPES_COMPATIBLE_P> Likewise.
      	* c-pretty-print.c (pp_c_integer_constant): Likewise.
      	* c-typeck.c (really_start_incremental_init, push_init_level,
      	set_nonincremental_init_from_string): Likewise.
      	* calls.c (load_register_parameters): Likewise.
      	convert.c (convert_to_pointer): Likewise.
      	coverage.c (coverage_counter_alloc, tree_coverage_counter_ref,
      	build_fn_info_type, build_fn_info_value, build_ctr_info_value,
      	build_gcov_info): Likewise.
      	* except.c (init_eh, assign_filter_values): Likewise.
      	* expmed.c (store_fixed_bit_field, extract_bit_field,
      	extract_fixed_bit_field, extract_split_bit_field, expand_shift,
      	expand_mult_const, expand_mult_highpart_adjust, extract_high_half,
      	expand_sdiv_pow2, expand_divmod, make_tree): Likewise.
      	* expr.c (convert_move, emit_group_load, emit_group_store,
      	expand_assignment, store_constructor, store_field,
      	expand_expr_real_1, reduce_to_bit_field_precision): Likewise.
      	fold-const.c (force_fit_type, int_const_binop, fold_convert_const,
      	invert_truthvalue, optimize_bit_field_compare,
      	decode_field_reference, all_ones_mask_p, constant_boolean_node,
      	fold_div_compare, fold, fold_read_from_constant_string,
      	fold_negate_const, fold_abs_const, fold_not_const, round_up,
      	round_down): Likewise.
      	* function.c (assign_parm_setup_block): Likewise.
      	* stmt.c (shift_return_value, expand_case, estimate_case_costs):
      	Likewise.
      	* stor-layout.c (layout_type, initialize_sizetypes,
      	set_min_and_max_values_for_integral_type): Likewise.
      	* tree-chrec.c (chrec_fold_multiply_poly_poly,
      	reset_evolution_in_loop): Likewise.
      	* tree-chrec.h (build_polynomial_chrec): Likewise.
      	* tree-complex.c (build_replicated_const): Likewise.
      	* tree-eh.c (honor_protect_cleanup_actions,
      	lower_try_finally_onedest, lower_try_finally_copy,
      	lower_try_finally_switch): Likewise.
      	* tree-mudflap.c (mf_build_string, mx_register_decls,
      	mudflap_register_call, mudflap_enqueue_constant): Likewise.
      	* tree-nested.c (get_trampoline_type, get_nl_goto_field): Likewise.
      	* tree-pretty-print.c (dump_generic_node): Likewise.
      	* tree-ssa-ccp.c (widen_bitfield, maybe_fold_offset_to_array_ref):
      	Likewise.
      	* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Likewise.
      	* tree-ssa-loop-niter.c (number_of_iterations_cond,
      	loop_niter_by_eval, upper_bound_in_type, lower_bound_in_type):
      	Likewise.
      	* tree-ssa-loop-ivcanon.c (create_canonical_iv,
      	canonicalize_loop_induction_variables): Likewise.
      	* tree-vectorizer.c (vect_create_index_for_array_ref,
      	vect_transform_loop_bound, vect_compute_data_ref_alignment):
      	Likewise.
      
      	* config/alpha/alpha.c (alpha_initialize_trampoline, alpha_va_start,
      	alpha_gimplify_va_arg_1): Likewise.
      	* config/arm/arm.c (arm_get_cookie_size): Likewise.
      	* config/c4x/c4x.c (c4x_gimplify_va_arg_expr): Likewise.
      	* config/i386/i386.c (ix86_va_start, ix86_gimplify_va_arg): Likewise.
      	* config/ia64/ia64.c (ia64_gimplify_va_arg): Likewise.
      	* config/mips/mips.c (mips_build_builtin_va_list, mips_va_start,
      	mips_gimplify_va_arg_expr): Likewise.
      	* config/pa/pa.c (hppa_gimplify_va_arg_expr): Likewise.
      	* config/rs6000/rs6000.c (rs6000_va_start, rs6000_gimplify_va_arg,
      	add_compiler_branch_island): Likewise.
      	* config/s390/s390.c (s390_va_start): Likewise.
      	* config/sh/sh.c (sh_va_start): Likewise.
      	* config/stormy16/stormy16.c (xstormy16_expand_builtin_va_start):
      	Likewise.
      	* config/xtensa/xtensa.c (xtensa_va_start,
      	xtensa_gimplify_va_arg_expr): Likewise.
      
      	* objc/objc-act.c (build_objc_string_object,
      	build_objc_symtab_template, init_def_list, init_objc_symtab,
      	init_module_descriptor, generate_static_references,
      	build_selector_translation_table, get_proto_encoding,
      	build_typed_selector_reference, build_selector_reference,
      	build_next_objc_exception_stuff,
      	build_method_prototype_list_template, generate_descriptor_table,
      	generate_protocols, build_protocol_initializer,
      	build_ivar_list_template, build_method_list_template,
      	build_ivar_list_initializer, generate_ivars_list,
      	generate_dispatch_table, generate_protocol_list,
      	build_category_initializer, build_shared_structure_initializer,
      	generate_shared_structures, handle_impent,
      	generate_objc_image_info): Likewise.
      
      2004-04-25  Paolo Bonzini  <bonzini@gnu.org>
      
      	* cfglayout.c (duplicate_insn_chain): Remove references to
      	NOTE_INSN_LOOP_VTOP and NOTE_INSN_LOOP_CONT.
      	* cfgloop.h (struct loop): Remove fields vtop, cont and cont_dominator.
      	* cfgrtl.c (rtl_delete_block): Remove handling of NOTE_INSN_LOOP_CONT.
      	* final.c (final_scan_insn): Remove references to NOTE_INSN_LOOP_VTOP
      	and NOTE_INSN_LOOP_CONT.
      	* insn-notes.def (NOTE_INSN_LOOP_VTOP, NOTE_INSN_LOOP_CONT): Remove.
      	* jump.c (squeeze_notes): Remove references to NOTE_INSN_LOOP_VTOP
      	and NOTE_INSN_LOOP_CONT.
      	* loop.c (scan_loops, find_and_verify_loops, for_each_insn_in_loop,
      	check_dbra_loop, loop_dump_aux): Remove references to removed notes
      	and fields.
      	* reorg.c (mostly_true_jump): Do not rely on NOTE_INSN_LOOP_VTOPs.
      	* unroll.c (unroll_loop, copy_loop_body, loop_iterations): Remove
      	references to removed notes and fields.
      	(subtract_reg_term, ujump_to_loop_cont): Remove.
      
      From-SVN: r86544
      7d60be94
  7. Aug 18, 2004
    • Richard Henderson's avatar
      tree.h (struct tree_decl): Add gimple_formal_temp. · 17ad5b5e
      Richard Henderson authored
              * tree.h (struct tree_decl): Add gimple_formal_temp.
              (DECL_GIMPLE_FORMAL_TEMP_P): New.
              * gimplify.c (pop_gimplify_context): Clear it.
              (lookup_tmp_var): Set it, if is_formal.
              (gimplify_init_constructor): Use rhs_predicate_for for COMPLEX.
              Use is_gimple_val for VECTOR.  Simplify return value.
              (gimplify_save_expr): Use and set DECL_GIMPLE_FORMAL_TEMP_P.
              (gimplify_expr): Likewise.
              * tree-gimple.c (is_gimple_formal_tmp_rhs): Rename from
              is_gimple_tmp_rhs for clarity.  Update all callers.
              (is_gimple_reg_rhs): Simplify logic.
              (is_gimple_formal_tmp_var): Rename from is_gimple_tmp_var for
              clarity; use DECL_GIMPLE_FORMAL_TEMP_P.
              (is_gimple_formal_tmp_reg): Similarly.
              * tree-gimple.h: Update decls.
              * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Use
              DECL_IGNORED_P, not DECL_ARTIFICIAL.  Tidy formatting.
              * tree-ssa-live.c (var_union, type_var_init): Likewise.
      java/
              * java-gimplify.c (java_gimplify_expr): Move '2' handling into
              default case.  Treat '<' similarly.  Update for
              is_gimple_formal_tmp_var name change.
      testsuite/
              * gcc.dg/20040206-1.c: XFAIL.
      
      From-SVN: r86176
      17ad5b5e
  8. Aug 15, 2004
    • Nathan Sidwell's avatar
      tree.h (build_int_cst): New. · 4a90aeeb
      Nathan Sidwell authored
      .:	* tree.h (build_int_cst): New.
      	(build_int_2): Remove.
      	* tree.c (build_int_2): Remove.
      	(build_int_cst): New.
      	(make_vector_type, build_common_tree_nodes,
      	build_common_tree_nodes_2): Use build_int_cst.
      	* builtins.c (expand_builtin_prefetch, expand_builtin_strstr,
      	expand_builtin_strpbrk, expand_builtin_fputs,
      	build_string_literal, expand_builtin_printf,
      	expand_builtin_sprintf, fold_builtin_lround, fold_builtin_bitop,
      	fold_builtin_bitop, fold_builtin_isascii, fold_builtin_toascii,
      	fold_builtin_isdigit, simplify_builtin_strstr,
      	simplify_builtin_strpbrk, fold_builtin_fputs,
      	simplify_builtin_sprintf): Use build_int_cst.
      	* c-common.c (start_fname_decls, fix_string_type,
      	c_common_nodes_and_builtins, c_init_attributes,
      	shorten_compare): Likewise.
      	* c-decl.c (complete_array_type,
      	check_bitfield_type_and_width): Likewise.
      	* c-lex.c (interpret_integer, lex_charconst): Likewise.
      	* c-parse.in (primary): <TYPES_COMPATIBLE_P> Likewise.
      	* c-pretty-print.c (pp_c_integer_constant): Likewise.
      	* c-typeck.c (really_start_incremental_init, push_init_level,
      	set_nonincremental_init_from_string): Likewise.
      	* calls.c (load_register_parameters): Likewise.
      	* convert.c (convert_to_pointer): Likewise.
      	* coverage.c (coverage_counter_alloc, tree_coverage_counter_ref,
      	build_fn_info_type, build_ctr_info_value, build_gcov_info):
      	Likewise.
      	* except.c (init_eh, assign_filter_values, assign_filter_values):
      	Likewise.
      	* expmed.c (store_fixed_bit_field, extract_bit_field,
      	extract_fixed_bit_field, extract_split_bit_field, expand_shift,
      	expand_mult_const, expand_mult_highpart_adjust, extract_high_half,
      	expand_sdiv_pow2, expand_divmod, make_tree): Likewise.
      	* expr.c (convert_move, emit_group_load, emit_group_store,
      	expand_assignment, store_constructor, store_field,
      	expand_expr_real_1, reduce_to_bit_field_precision): Likewise.
      	* fold-const.c (force_fit_type, int_const_binop, fold_convert_const,
      	invert_truthvalue, optimize_bit_field_compare,
      	decode_field_reference, all_ones_mask_p, constant_boolean_node,
      	fold_div_compare, fold, fold_read_from_constant_string,
      	fold_negate_const, fold_abs_const, fold_not_const): Likewise.
      	* function.c (assign_parm_setup_block): Likewise.
      	* stmt.c (shift_return_value, expand_end_case_type,
      	estimate_case_costs): Likewise.
      	* stor-layout.c (layout_type, initialize_sizetypes,
      	set_min_and_max_values_for_integral_type): Likewise.
      	* tree-chrec.c (chrec_fold_multiply_poly_poly,
      	reset_evolution_in_loop): Likewise.
      	* tree-chrec.h (build_polynomial_chrec): Likewise.
      	* tree-complex.c (build_replicated_const): Likewise.
      	* tree-eh.c (honor_protect_cleanup_actions,
      	lower_try_finally_onedest, lower_try_finally_copy,
      	lower_try_finally_switch): Likewise.
      	* tree-mudflap.c (mf_build_string, mx_register_decls,
      	mudflap_register_call, mudflap_enqueue_constant): Likewise.
      	* tree-nested.c (get_trampoline_type, get_nl_goto_field): Likewise.
      	* tree-pretty-print.c (dump_generic_node): Likewise.
      	* tree-ssa-ccp.c (widen_bitfield, maybe_fold_offset_to_array_ref):
      	Likewise.
      	* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Likewise.
      	* tree-ssa-loop-niter.c (number_of_iterations_cond,
      	loop_niter_by_eval, upper_bound_in_type, lower_bound_in_type):
      	Likewise.
      
      	* config/alpha/alpha.c (alpha_initialize_trampoline,
      	alpha_va_start, alpha_gimplify_va_arg_1): Use build_int_cst.
      	* config/arm/arm.c (arm_get_cookie_size): Likewise.
      	* config/c4x/c4x.c (c4x_gimplify_va_arg_expr): Likewise.
      	* config/i386/i386.c (ix86_va_start, ix86_gimplify_va_arg): Likewise.
      	* config/i860/i860.c (i860_va_start): Likewise.
      	* config/ia64/ia64.c (ia64_gimplify_va_arg): Likewise.
      	* config/mips/mips.c (mips_build_builtin_va_list, mips_va_start,
      	mips_gimplify_va_arg_expr): Likewise.
      	* config/pa/pa.c (hppa_gimplify_va_arg_expr): Likewise.
      	* config/rs6000/rs6000.c (rs6000_va_start, rs6000_gimplify_va_arg,
      	add_compiler_branch_island): Likewise.
      	* config/s390/s390.c (s390_va_start): Likewise.
      	* config/sh/sh.c (sh_va_start): Likewise.
      	* config/stormy16/stormy16.c (xstormy16_expand_builtin_va_start):
      	Likewise.
      	* config/xtensa/xtensa.c (xtensa_va_start,
      	xtensa_gimplify_va_arg_expr): Likewise.
      
      	* objc/objc-act.c (build_objc_string_object,
      	build_objc_symtab_template, init_def_list, init_objc_symtab,
      	init_module_descriptor, generate_static_references,
      	build_selector_translation_table, get_proto_encoding,
      	build_typed_selector_reference, build_selector_reference,
      	build_next_objc_exception_stuff,
      	build_method_prototype_list_template, generate_descriptor_table,
      	generate_protocols, build_protocol_initializer,
      	build_ivar_list_template, build_method_list_template,
      	build_ivar_list_initializer, generate_ivars_list,
      	generate_dispatch_table, generate_protocol_list,
      	build_category_initializer, build_shared_structure_initializer,
      	generate_shared_structures, handle_impent,
      	generate_objc_image_info): Use build_int_cst.
      ada:
      	* cuintp.c (UI_To_gnu): Use build_int_cst..
      	* trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise.
      	* utils.c (init_gigi_decls): Likewise.
      	* utils2.c (build_call_raise): Likewise.
      cp:
      	* call.c (convert_class_to_reference,
      	build_user_type_conversion_1, convert_like_real,
      	build_java_interface_fn_ref, build_special_member_call): Use
      	build_int_cst.
      	* class.c (build_vtbl_initializer): Likewise.
      	* cp-gimplify.c (cp_gimplify_expr): Likewise.
      	* cvt.c (cp_convert_to_pointer): Likewise.
      	* decl.c (cxx_init_decl_processing, complete_array_type): Likewise.
      	* decl2.c (start_static_initialization_or_destruction,
      	generate_ctor_or_dtor_function): Likewise.
      	* except.c (build_throw): Likewise.
      	* lex.c (cxx_init): Likewise.
      	* mangle.c (write_integer_cst): Likewise.
      	* rtti.c (build_headof, get_tinfo_decl_dynamic,
      	build_dynamic_cast_1, ptr_initializer, ptm_initializer,
      	get_pseudo_ti_init): Likewise.
      	* search.c (get_dynamic_cast_base_type): Likewise.
      	* tree.c (build_shared_int_cst): Likewise.
      fortran:
      	* trans-array.c (gfc_trans_array_constructor_value): Use
      	build_int_cst.
      	* trans-const.c (gfc_build_string_const,
      	gfc_init_constants, gfc_conv_mpz_to_tree,
      	gfc_conv_constant_to_tree): Likewise.
      	* trans-decl.c (gfc_get_symbol_decl): Likewise.
      	* trans-intrinsic.c (gfc_conv_intrinsic_ibits,
      	gfc_conv_intrinsic_len, prepare_arg_info): Likewise.
      	* trans-io.c (add_case, set_error_locus, build_dt,
      	transfer_expr): Likewise.
      	* trans-stmt.c (gfc_trans_label_assign, gfc_trans_pause,
      	gfc_trans_stop, gfc_trans_character_select): Likewise.
      	* trans-types.c (gfc_init_types, gfc_get_dtype): Likewise.
      	* trans.c (gfc_trans_runtime_check): Likewise.
      java:
      	* boehm.c (get_boehm_type_descriptor): Use build_int_cst.
      	* class.c (build_utf8_ref, build_static_field_ref,
      	make_field_value, make_method_value, get_dispatch_table,
      	make_class_data, emit_symbol_table, emit_catch_table): Likewise.
      	* constants.c (get_tag_node,  build_ref_from_constant_pool,
      	build_constants_constructor): Likewise.
      	* decl.c (java_init_decl_processing): Likewise.
      	* expr.c (build_java_array_length_access, build_newarray,
      	expand_java_multianewarray, expand_java_pushc, expand_iinc,
      	build_java_binop, build_field_ref, expand_java_add_case,
      	expand_java_call, build_known_method_ref, build_invokevirtual,
      	build_invokeinterface, build_jni_stub): Likewise.
      	* java-gimplify.c (java_gimplify_new_array_init): Likewise.
      	* jcf-parse.c (get_constant): Likewise.
      	* lex.c (do_java_lex): Likewise.
      	* parse.y (patch_binop, patch_unaryop, patch_cast,
      	build_null_of_type, patch_newarray): Likewise.
      	* resource.c (compile_resource_data): Likewise.
      	* typeck.c (build_prim_array_type): Likewise.
      
      From-SVN: r86022
      4a90aeeb
  9. Aug 10, 2004
  10. Aug 01, 2004
    • Roger Sayle's avatar
      decl.c (update_aliases, [...]): Replace calls to build with calls to buildN. · dc6d7095
      Roger Sayle authored
      	* decl.c (update_aliases, initialize_local_variable): Replace calls
      	to build with calls to buildN.
      	* java-gimplify.c (java_gimplify_modify_expr): Likewise.
      	* java-tree.h (BUILD_MONITOR_ENTER, BUILD_MONITOR_EXIT): Likewise.
      	* parse.h (BUILD_THROW): Likewise.
      	* parse.y (switch_expression, synchronized_statement,
      	catch_clause_parameter, array_creation_expression,
      	conditional_expression, make_qualified_name,
      	resolve_qualified_expression_name, patch_method_invocation,
      	patch_invoke, build_method_invocation, build_new_invocation,
      	build_assignment, patch_assignment, build_binop, patch_binop,
      	build_string_concatenation, build_incdec, patch_unaryop,
      	patch_cast, build_array_ref, build_newarray_node, patch_newarray,
      	patch_return, build_if_else_statement, build_labeled_block,
      	build_new_loop, build_loop_body, build_bc_statement,
      	build_assertion, encapsulate_with_try_catch, build_try_statement,
      	build_try_finally_statement, patch_synchronized_statement,
      	emit_test_initialization): Likewise, replace build with buildN.
      
      From-SVN: r85410
      dc6d7095
  11. Jul 21, 2004
    • Andrew Haley's avatar
      verify.c (verify_jvm_instructions): Comment change only. · 00150bf9
      Andrew Haley authored
      2004-07-20  Andrew Haley  <aph@redhat.com>
      
      	* verify.c (verify_jvm_instructions): Comment change only.
      
      	* typeck.c (build_java_array_type): Add size field to array name.
      
      	* java-tree.h (LOCAL_SLOT_P): New.
      	(update_aliases): Add PC argument.
      	(pushdecl_function_level): New function.
      
      	* java-gimplify.c (java_gimplify_expr): Handle VAR_DECL,
      	MODIFY_EXPR, and SAVE_EXPR.
      	(java_gimplify_modify_expr): New function.
      
      	* expr.c (push_type_0): Call find_stack_slot() to create temporary.
      	(expand_iinc): Pass PC to update_aliases().
      	(STORE_INTERNAL): Likewise.
      	(process_jvm_instruction): Likewise.
      
      	* decl.c (base_decl_map): New variable.
      	(uniq): New variable.
      	(update_aliases): Rewrite with more thorough checking.
      	(debug_variable_p): New function.
      	(push_jvm_slot): Don't initialize local variable.  Don't pushdecl.
      	(check_local_named_variable): Delete whole function.
      	(initialize_local_variable): New function.
      	(check_local_unnamed_variable): Add checks and comments.
      	(find_local_variable): Rewrite.
      	(java_replace_reference): New function.
      	(function_binding_level): New variable.
      	(pushdecl_function_level): New function.
      	(maybe_pushlevels): Set DECL_LOCAL_END_PC.
      	(maybe_pushlevels): Call pushdecl() on each of the new decls.
      	(start_java_method): Reset uniq.  Create base_decl_map.  Set
      	function_binding_level.
      	(end_java_method): Null unused fields to save memory.
      
      From-SVN: r85009
      00150bf9
  12. Jul 18, 2004
    • Roger Sayle's avatar
      builtins.c (max_builtin, [...]): Replace calls to build with buildN. · 94cdeb1a
      Roger Sayle authored
      	* builtins.c (max_builtin, min_builtin,
      	java_build_function_call_expr): Replace calls to build with buildN.
      	* class.c (build_class_ref, build_static_field_ref,
      	get_dispatch_table, make_class_data, layout_class_method): Likewise.
      	* constants.c (build_ref_from_constant_pool): Likewise.
      	* decl.c (update_aliases, push_jvm_slot, poplevel, finish_method,
      	add_stmt_to_compound): Likewise.
      	* except.c (build_exception_object_ref, expand_end_java_handler):
      	Likewise.
      	* java-gimplify.c (java_gimplify_case_expr,
      	java_gimplify_default_expr, java_gimplify_block,
      	java_gimplify_new_array_init, java_gimplify_try_expr): Likewise.
      	* jcf-write.c (generate_bytecode_insns): Likewise.
      	* typeck.c (convert_ieee_real_to_integer): Likewise.
      
      From-SVN: r84894
      94cdeb1a
  13. Jun 22, 2004
    • Richard Kenner's avatar
      alias.c (adjust_offset_for_component_ref): Use component_ref_field_offset. · 44de5aeb
      Richard Kenner authored
      	* alias.c (adjust_offset_for_component_ref): Use
      	component_ref_field_offset.
      	* c-decl.c (build_array_declarator): Add news args for ARRAY_REF.
      	* c-gimplify.c (gimplify_expr_stmt): Use alloc_stmt_list.
      	(gimplify_decl_stmt): Call gimplify_type_sizes for type.
      	For decl, call gimplify_one_sizepos and use statement list.
      	(gimplify_compound_literal_expr): New arg PRE_P.
      	Add statement to PRE_P list and return DECL.
      	(c_gimplify_expr, case COMPOUND_LITERAL_EXPR): Add arg to
      	gimplify_compound_literal_expr.
      	* c-tree.h (getdecls): Deleted.
      	* c-typeck.c (build_component_ref): Add operand for COMPONENT_REF.
      	(build_array_ref): Add two operands for ARRAY_REF.
      	(build_unary_op): Set TREE_INVARIANT and TREE_CONSTANT for
      	COMPOUND_LITERAL_EXPR.
      	* coverage.c (tree_coverage_counter_ref): Add new operands
      	for ARRAY_REF.
      	* emit-rtl.c (component_ref_for_mem_expr): Add new operand
      	for COMPONENT_REF.
      	(set_mem_attributes_minus_bitpos): Use array_ref_low_bound
      	and array_ref_element_size.
      	(widen_memory_access):Use component_ref_field_offset.
      	* explow.c (update_nonlocal_goto_save_area): Add two operands
      	for ARRAY_REF.
      	* expr.c (array_ref_element_size, array_ref_low_bound): New functions.
      	(component_ref_field_offset): Likewise.
      	(get_inner_reference): Use them.
      	(expand_expr_real_1, case ARRAY_REF): Use array_ref_low_bound.
      	* fold-const.c (fold, case EQ_EXPR): Properly handle DECL_SIZE.
      	(fold_read_from_constant_string): Use array_ref_low_bound.
      	Verify that result is a character type.
      	(build_fold_indirect_ref): Add two operands for ARRAY_REF.
      	* function.c (expand_function_start): Likewise.
      	* gimple-low.c (expand_var_p): Delete duplicated line.
      	* gimplify.c: Add static decls for local functions.
      	(cgraph.h): Now included.
      	(create_tmp_var): Remove check for ARRAY_TYPE.
      	(copy_if_shared_r): Look at bounds and sizes of types.
      	(build_and_jump): Return alloc_stmt_list instead of build_empty_stmt.
      	(gimplify_exit_expr, shortcut_cond_expr): Likewise.
      	(gimplify_save_expr, gimple_push_cleanup): Likewise.
      	(gimplify_init_constructor): Likewise.
      	WANT_VALUE now bool.
      	If empty list with no result wanted, return GS_UNHANDLED.
      	Add additional operands for ARRAY_REF and COMPONENT_REF.
      	(canonicalize_component_ref): Convert to &array[L].
      	(gimplify_array_ref_to_plus): Use array_ref_element_size and
      	array_ref_lower_bound.
      	(build_addr_expr_with_type, build_addr_expr): New functions.
      	(gimplify_compound_lval): WANT_LVALUE now bool.
      	Major rework to allow handle_component_p and initialize and
      	gimplify new operands for ARRAY_REF, ARRAY_RANGE_REF, and
      	COMPONENT_REF.
      	(gimplify_array_ref): Deleted.
      	(gimplify_self_mod_expr): WANT_VALUE now bool.
      	(gimplify_modify_expr): Gimplify to_p and from_p later.
      	Factor out code into gimplify_modify_expr_rhs and call twice.
      	Move variable-size code earlier and handle PLACEHOLDER_EXPR.
      	(gimplify_modify_expr_rhs, gimplify_variable_sized_compare): New fns.
      	(gimplify_addr_expr, case VIEW_CONVERT_EXPR): New case.
      	(gimplify_expr, case ARRAY_REF): Delete special case.
      	Instead handle like COMPONENT_REF; also do ARRAY_RANGE_REF,
      	IMAGPART, and REALPART the same way.
      	(gimplify_expr, case VIEW_CONVERT_EXPR): New case.
      	(gimplify_expr): Call gimplify_variable_sized_compare if applicable.
      	Call alloc_stmt_list instead of build_empty_stmt.
      	Deal with _REF that's volatile.
      	(gimplify_type_sizes, gimplify_one_sizepos): New functions.
      	(unshare_body, unvisit_body): New functions.
      	(gimplify_body): Call them.
      	* stmt.c (expand_stack_alloc): Don't expand TYPE_MAX_VALUE.
      	* stor-layout.c (get_pending_sizes): Don't change SAVE_EXPR_CONTEXT.
      	* tree-alias-common.c (get_alias_var): Also skip ARRAY_RANGE_REF.
      	* tree-cfg.c (tree_node_can_be_shared): Treat ARRAY_RANGE_REF
      	like ARRAY_REF.
      	(verify_expr, case ADDR_EXPR): Use handled_component_p.
      	* tree-dfa.c (get_virtual_var): Likewise.
      	* tree-dump.c (dequeue_and_dump, case COMPONENT_REF, ARRAY_REF):
      	New cases to dump new operands; likewise for ARRAY_RANGE_REF.
      	* tree-eh.c (tree_could_trap, case ARRAY_RANGE_REF): Like ARRAY_REF.
      	* tree-gimple.c (is_gimple_addr_expr_arg): Add ARRAY_RANGE_REF
      	and INDIRECT_REF.
      	(get_base_address): Use handled_component_p.
      	* tree-gimple.h (gimplify_type_sizes, gimplify_one_sizepos): New.
      	* tree-line.c (walk_tree): Walk more things for types and decls.
      	* tree-mudflap.c (mf_build_check_statement_for): Add new operands
      	for ARRAY_REF and COMPONENT_REF.
      	(mx_xform_derefs_1): Clean up usage of decl sizes.
      	* tree-nested.c (build_addr): Use handled_component_p.
      	(walk_stmts, case CATCH_EXPR): Add missing "break".
      	(get_static_chain, get_frame_field): Add new operand for COMPONENT_REF.
      	(finalize_nesting_tree_1): Likewise.
      	(convert_nonlocal_reference, case ARRAY_RANGE_REF): Like ARRAY_REF
      	and process additional operands.
      	(convert_local_reference): Likewise.
      	* tree-outof-ssa.c (discover_nonconstant_array_refs_r): Treat
      	ARRAY_RANGE_REF similarly to ARRAY_REF.
      	* tree-pretty-print.c (dump_generic_node, case QUAL_UNION_TYPE): Handle
      	like RECORD_TYPE.
      	(dump_generic_node, case COMPONENT_REF): Print offset operand.
      	(dump_generic_node, case ARRAY_RANGE_REF): Treat like ARRAY_REF
      	and print lower bound and element size for both.
      	(op_prio, case ARRAY_RANGE_REF): Like ARRAY_REF.
      	* tree-sra.c (csc_build_component_ref): Add new operand.
      	(scalarize_call_expr): Use get_base_address.
      	* tree-ssa-ccp.c (widen_bitfield): Clean up size handling.
      	(maybe_fold_offset_to_array_ref): Rework to handle input having an
      	ARRAY_REF, refine handling of lower bound, and add new operands
      	for ARRAY_REF.
      	(maybe_fold_to_component_ref): Add new operand for COMPONENT_REF.
      	(maybe_fold_stmt_indirect): Only fold *&B to B if types match.
      	(maybe_fold_stmt_addition): Only handle constant lower bound.
      	* tree-ssa-operands.c (get_expr_operands): Minor rearrangements.
      	Treat ARRAY_REF and ARRAY_RANGE_REF the same; look at extra operands.
      	Look at new offset operand of COMPONENT_REF.
      	* tree-ssa.c (set_is_used): Use handled_component_p.
      	* tree.c (substitute_in_expr, case COMPONENT_REF): Add new operand.
      	(stabilize_reference, case COMPONENT_REF): Likewise.
      	(stabilize_reference, case ARRAY_RANGE_REF, ARRAY_REF): Similarly.
      	(recompute_tree_invariant_for_addr_expr): Completely rework to
      	be more precise.  Also set TREE_SIDE_EFFECTS.
      	(build1_stat, case ARRAY_EXPR): Don't handle TREE_SIDE_EFFECTS here.
      	(build2_stat, build3_stat, build4_stat): For references,
      	propagate TREE_THIS_VOLATILE.
      	(get_unwidened): Add new operand for COMPONENT_REF.
      	(get_narrower): Likewise; use host_integerp for DECL_SIZE.
      	* tree.def (COMPONENT_REF): Add new operand.
      	(ARRAY_REF, ARRAY_RANGE_REF): Add two new operands.
      	* tree.h (array_ref_element_size, array_ref_low_bound): New decls.
      	(component_ref_field_offset): Likewise.
      	* config/alpha/alpha.c (alpha_va_start): Add new op for COMPONENT_REF.
      	(alpha_gimplify_va_arg): Likewise.
      	* config/i386/i386.c (ix86_va_start, ix86_gimplify_va_arg): Likewise.
      	* config/i860/i860.c (i860_va_start, i860_va_arg): Likewise.
      	* config/iq2000/iq2000.c (iq2000_va_arg): Likewise.
      	* config/mips/mips.c (mips_va_start, mips_va_arg): Likewise.
      	* config/rs6000/rs6000.c (rs6000_va_start, rs6000_gimplify_va_arg):
      	Likewise.
      	* config/s390/s390.c (s390_va_start, s390_gimplify_va_arg): Likewise.
      	* config/sh/sh.c (sh_va_start, sh_va_arg): Likewise.
      	* config/stormy16/stormy16.c (xstormy1_expand_builin_va_start):
      	Likewise.
      	(xstormy16_expand_builtin_va_arg): Likewise.
      	* config/xtensa/xtensa.c (xtensa_va_start, xtensa_va_arg): Likewise.
      
      	* cp/call.c (build_vfield_ref): Add new operand for COMPONENT_REF.
      	(build_new_method_call): Likewise.
      	* cp/decl.c (local_variable_p_walkfn): Don't walk into types.
      	* cp/decl2.c (grok_array_decl): Add new operands for ARRAY_REF.
      	(build_anon_union_vars): Add new operand for COMPONENT_REF.
      	* cp/init.c (buld_new): Add new operand for ARRAY_REF.
      	* cp/method.c (do_build_copy_constructor): New op for COMPONENT_REF.
      	(do_build_assign_ref): Likewise.
      	* cp/parser.c (cp_parser_direct_new_declarator): Add new operands
      	for ARRAY_REF.
      	(cp_parser_direct_declarator): Likewise.
      	* cp/pt.c (tsubst): Likewise.
      	(tsubst_copy, tsubst_copy_and_build): Likewise; also add new operand
       	for COMPONENT_REF.
      	* cp/semantics.c (finish_non_static_data_member): Add new operand
      	for COMPONENT_REF.
      	* cp/typeck.c (build_class_member_access_expr): Likewise.
      	(build_class_member_access_expr, finish_class_member_access_expr):
      	Likewise.
      	(build_ptrmemfunc_access_expr): Likewise.
      	(build_array_ref): Add new operands for ARRAY_REF.
      	* cp/typeck2.c (split_nonconstant_init_1): Likewise; COMPONENT_REF too.
      	* cp/tree.c (count_trees_r, no_linkage_helper): Don't walk in types.
      
      	* fortran/f95-lang.c (LANG_HOOKS_GIMPLE_BEFORE_INLINING): Deleted.
      	* fortran/trans-array.c (gfc_conv_descriptor_data): Add operand
      	for COMPONENT_REF.
      	(gfc_conv_descriptor_offset, gfc_conv_descriptor_dtype): Likewise.
      	(gfc_conv_descriptor_dimension, gfc_conv_descriptor_stride): Likewise.
      	(gfc_conv_descriptor_lbound, gfc_conv_descriptor_ubound): Likewise.
      	* fortran/trans-common.c (create_common): Likewise.
      	* fortran/trans-expr.c (gfc_conv_component_ref): Likewise.
      	* fortran/trans-io.c (set_parameter_value): Likewise.
      	(set_parameter_ref, set_string, set_flag, io_result): Likewise.
      	(transfer_expr): Likewise.
      	* fortran/trans-decl.c (gfc_trans_auto_character_variable):
      	Set up to get DECL_SIZE and DECL_SIZE_UNIT gimplified.
      	(gfc_simplify_function): New function.
      	(gfc_generate_function-code): Properly handle nested functions.
      	* fortran/trans.c (gfc_build_array_ref): Add two new operands
      	for ARRAY_REF.
      
      	* java/class.c (build_class_ref): Add new operand for COMPONENT_REF.
      	(build_static_field_ref): Likewise and add new operands for ARRAY_REF.
      	* java/constants.c (build_ref_from_constant_pool): Likewise.
      	* java/expr.c (build_java_array_length_access): Likewise.
      	(build_get_class, build_field_ref, build_known_method_ref): Likewise.
      	(invoke_build_dtable, build_invokevirtual): Likewise.
      	(build_invokeinterface, java_expand_expr): Likewise.
      	(emit_init_test_initialization): Likewise.
      	* java/java-gimplify.c (java_gimplify_new_array_init): Likewise.
      	* java/parse.y (make_qualifed_name, build_array_ref): Likewise.
      
      	* objc/ojbc-act.c (generate_static_references): Add additional
      	operands to ARRAY_REF.
      	(generate_strings, build_method_prototype_list_template): Likewise.
      	(generate_protocol_list): Likewise.
      
      From-SVN: r83474
      44de5aeb
  14. Jun 21, 2004
  15. May 14, 2004
    • Diego Novillo's avatar
      tree-gimple.c: Rename from tree-simple.c. · eadf906f
      Diego Novillo authored
      	* tree-gimple.c: Rename from tree-simple.c.
      	* tree-gimple.h: Rename from tree-simple.h.
      	* c-gimplify.c: Rename from c-simplify.c
      	* Makefile.in, c-decl.c, gimple-low.c, gimplify.c,
      	langhooks.c, tree-alias-ander.c, tree-alias-common.c,
      	tree-complex.c, tree-dfa.c, tree-flow.h, tree-inline.c,
      	tree-into-ssa.c, tree-iterator.c, tree-mudflap.c,
      	tree-nested.c, tree-nomudflap.c, tree-outof-ssa.c, tree-sra.c,
      	tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-copyrename.c,
      	tree-ssa-dce.c, tree-ssa-live.c, tree-ssa-pre.c, tree-ssa.c:
      	Update.
      
      cp/ChangeLog
      
      	* cp-gimplify.c: Rename from cp-simplify.c.
      	* Make-lang.in, optimize.c: Update.
      
      fortran/ChangeLog
      
      	* Make-lang.in, f95-lang.c, trans-array.c, trans-decl.c,
      	trans-expr.c, trans-intrinsic.c, trans-io.c, trans-stmt.c,
      	trans.c: Rename tree-simple.[ch] to tree-gimple.[ch].
      
      java/ChangeLog
      
      	* Make-lang.in, expr.c, java-gimplify.c: Rename
      	tree-simple.[ch] to tree-gimple.[ch].
      
      From-SVN: r81829
      eadf906f
    • Ranjit Mathew's avatar
      * java-gimplify.c (java_gimplify_expr): Correct minor typos. · c9ecc336
      Ranjit Mathew authored
      From-SVN: r81825
      c9ecc336
  16. May 13, 2004
Loading