1. 22 Jun, 2003 2 commits
  2. 10 Jun, 2003 2 commits
  3. 04 Jun, 2003 1 commit
  4. 03 Jun, 2003 1 commit
    • function.c (assign_parms): Split complex arguments. · ded9bf77
      2003-06-03  Aldy Hernandez  <aldyh@redhat.com>
      
              * function.c (assign_parms): Split complex arguments.
      
              * doc/tm.texi (SPLIT_COMPLEX_ARGS): Document.
      
              * expr.h (SPLIT_COMPLEX_ARGS): Define.
              (split_complex_types): Protoize.
              (split_complex_values): Protoize.
      
              * calls.c (expand_call): Split complex arguments on architectures
              that require it.
              (split_complex_values): New.
              (split_complex_types): New.
      
              * config/rs6000/rs6000.c (rs6000_libcall_value): New.
              (rs6000_function_value): Handle complex values on AIX.
              (rs6000_complex_function_value): New.
      
              * config/rs6000/rs6000-protos.h (rs6000_libcall_value): Protoize.
      
              * config/rs6000/rs6000.h (LIBCALL_VALUE): Call function.
              (SPLIT_COMPLEX_ARGS): New.
      
      From-SVN: r67367
      Aldy Hernandez committed
  5. 27 May, 2003 1 commit
    • tree.h (contains_placeholder_p): Now returns bool. · 7a6cdb44
      	* tree.h (contains_placeholder_p): Now returns bool.
      	(CONTAINS_PLACEHOLDER_P): New macro.
      	(type_contains_placeholder_p): New function.
      	* tree.c (save_expr): Remove code avoiding folding COMPONENT_REF.
      	(contains_placeholder_p): Now returns bool.
      	Rework to use CONTAINS_PLACEHOLDER_P macro.
      	(type_contains_placeholder_p): New function.
      	* fold-const.c (fold, case COMPONENT_REF): Don't fold if
      	type_contains_placeholder_p.
      	(fold_range_test, fold_mathfn_compare, fold_inf_compare, fold):
      	Use CONTAINS_PLACEHOLDER_P macro.
      	* builtins.c (fold_builtin): Likewise.
      	* calls.c (initialize_argument_information): Likewise.
      	* emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
      	* explow.c (expr_size): Likewise.
      	* expr.c (store_constructor, get_inner_reference): Likewise.
      	* function.c (assign_parms): Likewise.
      	* stor-layout.c (variable_size): Likewise.
      
      From-SVN: r67189
      Richard Kenner committed
  6. 22 May, 2003 1 commit
  7. 17 May, 2003 1 commit
    • builtins.c (validate_arglist): Eliminate libiberty VA_ macros, always use stdarg. · e34d07f2
      gcc:
      	* builtins.c (validate_arglist): Eliminate libiberty VA_ macros,
      	always use stdarg.
      	* c-errors.c (pedwarn_c99): Likewise.
      	* c-format.c (status_warning): Likewise.
      	* c-semantics.c (build_stmt): Likewise.
      	* calls.c (emit_library_call, emit_library_call_value): Likewise.
      	* collect2.c (notice, fatal_perror, fatal, error): Likewise.
      	* cpperror.c (cpp_error, cpp_error_with_line): Likewise.
      	* diagnostic.c (build_message_string, output_printf,
      	output_verbatim, verbatim, inform, warning, pedwarn, error, sorry,
      	fatal_error, internal_error, warning_with_decl, pedwarn_with_decl,
      	error_with_decl, fnotice): Likewise.
      	* dwarf2asm.c (dw2_asm_output_data, dw2_asm_output_delta,
      	dw2_asm_output_offset, dw2_asm_output_pcrel, dw2_asm_output_addr,
      	dw2_asm_output_addr_rtx, dw2_asm_output_nstring,
      	dw2_asm_output_data_uleb128, dw2_asm_output_data_sleb128,
      	dw2_asm_output_delta_uleb128, dw2_asm_output_delta_sleb128,
      	dw2_asm_output_encoded_addr_rtx): Likewise.
      	* emit-rtl.c (gen_rtx, gen_rtvec): Likewise.
      	* errors.c (warning, error, fatal, internal_error): Likewise.
      	* final.c (output_operand_lossage, asm_fprintf): Likewise.
      	* fix-header.c (fatal): Likewise.
      	* gcc.c (fatal, error, notice): Likewise.
      	* gcov.c (fnotice): Likewise.
      	* genattrtab.c (attr_rtx, attr_printf): Likewise.
      	* gengtype.c (error_at_line, xasprintf, oprintf): Likewise.
      	* gensupport.c (message_with_line): Likewise.
      	* mips-tfile.c (fatal, error): Likewise.
      	* protoize.c (notice): Likewise.
      	* ra-debug.c (ra_debug_msg): Likewise.
      	* read-rtl.c (fatal_with_file_and_line): Likewise.
      	* rtl-error.c (error_for_asm, warning_for_asm): Likewise.
      	* tree.c (build, build_nt, build_function_type_list): Likewise.
      
      cp:
      	* error.c (cp_error_at, cp_warning_at, cp_pedwarn_at): Eliminate
      	libiberty VA_ macros, always use stdarg.
      	* rtti.c (create_pseudo_type_info): Likewise.
      	* tree.c (build_min_nt, build_min): Likewise.
      
      From-SVN: r66919
      Kaveh R. Ghazi committed
  8. 03 May, 2003 1 commit
    • emit-rtl.c (last_call_insn, [...]): New functions. · ee960939
      	* emit-rtl.c (last_call_insn, add_function_usage_to): New functions.
      	* rtl.h (last_call_insn, add_function_usage_to): New prototypes.
      	* builtins.c (expand_builtin_apply): Use the new emit-rtl functions.
      	* calls.c (emit_call_1): Likewise.
      	(expand_call): For calls initializing constant memory, replace
      	emission of standalone mem /u clobber with function usage entry.
      	* expr.c (emit_block_move_via_libcall): Likewise.
      	* cse.c (count_reg_usage, case EXPR_LIST): New case.
      	* flow.c (propagate_one_insn): Pass entire operand of
      	CALL_INSN_FUNCTION_USAGE to mark_used_regs.
      	* integrate.c (try_constants): For CALL_INSNs, substitute constants
      	within the FUNCTION_USAGE also.
      	* loop.c (prescan_loop): Note clobbers of const mem mentioned in
      	FUNCTION_USAGE lists.
      	* reload1.c (replace_pseudos_in): Renamed.
      	(reload): Use it for clobbers surviving until the end of the reload.
      
      From-SVN: r66429
      Olivier Hainque committed
  9. 02 May, 2003 1 commit
    • calls.c (struct arg_data): Move offset, slot_offset, size and alignment_pad to… · e7949876
      calls.c (struct arg_data): Move offset, slot_offset, size and alignment_pad to struct locate_and_pad_arg_data.
      
      	* calls.c (struct arg_data): Move offset, slot_offset, size and
      	alignment_pad to struct locate_and_pad_arg_data.  Update all refs.
      	(initialize_argument_information): Adjust call to locate_and_pad_parm.
      	Delete alignment_pad var.  Don't calculate slot_offset here.
      	(emit_library_call_value_1): Delete alignment_pad, offset and size
      	vars.  Use struct locate_and_pad_arg_data instead.  Adjust refs.
      	Adjust call to locate_and_pad_parm.  Don't tweak arg size for
      	partial in-regs here.  Formatting fixes.
      	* expr.h (struct locate_and_pad_arg_data): New struct.
      	(locate_and_pad_parm): Adjust declaration.
      	* function.c (assign_parms): Localize vars.  Use "locate" instead of
      	other arg location vars.  Don't invoke FUNCTION_ARG or
      	FUNCTION_INCOMING_ARG unless pretend_named is different from
      	named_arg.  Heed MUST_PASS_IN_STACK and set up "partial" before
      	calling locate_and_pad_parm.  Adjust locate_and_pad_parm call.
      	Use slot_offset for stack home of reg parms.  Correct test for
      	parm passed in memory.  Formatting fixes.
      	(locate_and_pad_parm): Add "partial" to params.  Replace offset_ptr
      	arg_size_ptr and alignment pad with "locate".  Set slot_offset here.
      	Correct initial_offset_ptr handling.  Localize vars.  Always pad
      	locate->offset even when in_regs.
      
      From-SVN: r66383
      Alan Modra committed
  10. 29 Apr, 2003 1 commit
  11. 22 Apr, 2003 1 commit
    • Makefile.in (calls.o): Depend on except.h. · b2dd096b
      	* Makefile.in (calls.o): Depend on except.h.
      	* calls.c: Include except.h.
      	(emit_call_1): Call note_eh_region_may_contain_throw if
      	appropriate.
      	* except.c (eh_region): Add may_contain_throw.
      	(expand_eh_region_end_cleanup): Do not include handler code when
      	it cannot be reached.
      	(note_eh_region_may_contain_throw): New function.
      	* except.h (note_eh_region_may_contain_throw): New function.
      
      	* call.c (build_over_call): Use build_cxx_call.
      	(build_cxx_call): New method, split out of build_over_call.
      	* cp-tree.h (language_function): Add can_throw.
      	(build_cxx_call): Declare it.
      	* decl.c (finish_function): If a function does not contain any
      	calls to functions that can throw an exception, indicate that
      	fact.
      	* decl2.c (mark_used): Do not defer the instantiation of
      	functions, if the current function does not throw.
      	* optimize.c (maybe_clone_body): Copy TREE_NOTHROW to the clones.
      	* pt.c (instantiate_decl): Make sure import_export_decl is called
      	before emitting things.
      	* rtti.c (throw_bad_cast): Use build_cxx_call.
      	(build_dynamic_cast_1): Likewise.
      	* typeck.c (build_function_call): Likewise.
      
      	* g++.dg/template/recurse.C: Adjust location of error messages.
      
      From-SVN: r65929
      Mark Mitchell committed
  12. 21 Apr, 2003 1 commit
  13. 19 Apr, 2003 2 commits
  14. 18 Apr, 2003 1 commit
  15. 14 Apr, 2003 1 commit
    • builtin-types.def (BT_FN_STRING_CONST_STRING): New builtin type. · 1331d16f
      	* builtin-types.def (BT_FN_STRING_CONST_STRING): New builtin type.
      	(BT_FN_PTR_SIZE_SIZE): Likewise.
      	* builtins.def (BUILT_IN_MALLOC, BUILT_IN_CALLOC, BUILT_IN_STRDUP):
      	New built-in functions for malloc, calloc and strdup respectively.
      	* calls.c (special_function_p): No need to handle malloc-like
      	functions any longer.  ECF_MALLOC is set via built-in attributes.
      
      	* c-decl.c (duplicate_decls): Preserve pure and malloc attributes.
      	* cp/decl.c (duplicate_decls): Preserve pure and malloc attributes.
      	* f/com.c (duplicate_decls): Preserve pure and malloc attributes.
      
      	* doc/extend.texi: Document these new built-in functions.
      
      	* gcc.dg/builtins-13.c: New test case.
      	* gcc.dg/builtins-14.c: New test case.
      
      From-SVN: r65560
      Roger Sayle committed
  16. 11 Apr, 2003 1 commit
    • libfuncs.h (LTI_setbits, [...]): New. · 68d28100
              * libfuncs.h (LTI_setbits, LTI_gcov_flush, LTI_gcov_init): New.
              (setbits_libfunc, gcov_flush_libfunc, gcov_init_libfunc): New.
              * optabs.c (init_optabs): Initialize them.
              (init_libfuncs): Use init_one_libfunc.
              * calls.c (expand_call): Use gcov_flush_libfunc.
              * expr.c (store_constructor): Use setbits_libfunc.
              * function.c (expand_main_function): Use init_one_libfunc.
              * profile.c (create_profiler): Use gcov_init_libfunc and DECL_RTL.
      
      From-SVN: r65478
      Richard Henderson committed
  17. 14 Mar, 2003 1 commit
  18. 08 Mar, 2003 1 commit
    • calls.c: Fix comment formatting. · 3dc575ff
      	* calls.c: Fix comment formatting.
      	* cfgloopanal.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* combine.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* ggc-common.c: Likewise.
      	* langhooks.c: Likewise.
      	* loop-unroll.c: Likewise.
      	* loop.c: Likewise.
      	* ra-build.c: Likewise.
      	* sbitmap.c: Likewise.
      	* toplev.c: Likewise.
      
      From-SVN: r63966
      Kazu Hirata committed
  19. 05 Mar, 2003 1 commit
    • Makefile.in (calls.o, [...]): Depend on cgraph.h · b255a036
      	* Makefile.in (calls.o, toplev.o alias.o): Depend on cgraph.h
      	* alias.c:  Include cgraph.h
      	(mark_constant_function): Use cgraph_rtl_info.
      	* calls.c:  Include cgraph.h
      	(flags_from_decl_or_type): Use cgraph_rtl_info to find pure and const
      	calls.
      	(expand_call): Use cgraph_rtl_info to set preferred stack boundary.
      	* cgraph.c (cgraph_rtl_info): New function.
      	* cgraph.h (cgraph_rtl_info): Declare
      	(cgraph_rtl_info): Likewise.
      	* function.h (struct function): Add recursive_call_emit.
      	* toplev.c: Include cgraph.h.
      	(rest_of_compilation): Set preferred_incoming_stack_boundary.
      
      	* gcc.dg/i386-local2.c: New.
      
      From-SVN: r63868
      Jan Hubicka committed
  20. 03 Mar, 2003 2 commits
  21. 23 Feb, 2003 1 commit
    • calls.c (store_one_arg): Revert 1999-02-16 change. · 8403445a
      	* calls.c (store_one_arg): Revert 1999-02-16 change.  Revert
      	2000-12-17 change.  Pass EXPAND_STACK_PARM to expand_expr.
      	* expr.h (enum expand_modifier): Define EXPAND_STACK_PARM.
      	(enum block_op_methods): Reorder for better store_expr optimization.
      	* expr.c (store_expr): Test bit 1 of "want_value" for call param
      	stores, test bit 0 for original want_value meaning.  Pass
      	BLOCK_OP_CALL_PARM to emit_block_move when bit 1 set.  Adjust
      	recursive calls, and calls to expand_param.
      	(expand_expr): Handle EXPAND_STACK_PARM modifier.  When cse
      	expected, set target to 0 rather than to subtarget.  Formatting.
      
      From-SVN: r63337
      Alan Modra committed
  22. 19 Feb, 2003 1 commit
    • calls.c (expand_call): Update call of INIT_CUMULATIVE_ARGS · 563a317a
      	* calls.c (expand_call): Update call of INIT_CUMULATIVE_ARGS
      	* function.c (assign_params): Likewise.
      	* arm-protos.h (arm_init_cumulative_args): Update prototype.
      	* arm.c (arm_init_cumulative_args): Update function.
      	* arm.h (INIT_CUMULATIVE_ARGS): Update.
      	* avr-protos.h (init_cumulative_args): Update prototype.
      	* avr.c (init_cumulative_args): Update function.
      	* avr.h (INIT_CUMULATIVE_ARGS): Update.
      	* d30v-protos.h (d30v_init_cumulative_args): Update prototype.
      	* d30v.c (d30v_init_cumulative_args): Update function.
      	* d30v.h (INIT_CUMULATIVE_ARGS): Update.
      	* frv-protos.h (frv_init_cumulative_args): Update prototype.
      	* frv.c (frv_init_cumulative_args): Update function.
      	* frv.h (INIT_CUMULATIVE_ARGS): Update.
      	* mips.c (mips_expand_prolgue): Update call of INIT_CUMULATIVE_ARGS.
      	* pa.h (INIT_CUMULATIVE_ARGS): Update.
      	* sparc-protos.h (init_cumulative_args): Update prototype.
      	* sparc.c (init_cumulative_args): Update function.
      	* sparc.h (INIT_CUMULATIVE_ARGS): Update.
      	* tm.texi (INIT_CUMULATIVE_ARGS): Update documentation.
      
      From-SVN: r63126
      Jan Hubicka committed
  23. 10 Feb, 2003 1 commit
  24. 28 Jan, 2003 1 commit
  25. 26 Jan, 2003 2 commits
  26. 21 Jan, 2003 2 commits
  27. 20 Jan, 2003 1 commit
  28. 18 Jan, 2003 1 commit
    • basic-block.h: Fix comment formatting. · 32dd366d
      	* basic-block.h: Fix comment formatting.
      	* calls.c: Likewise.
      	* combine.c: Likewise.
      	* convert.c: Likewise.
      	* gcov.c: Likewise.
      	* haifa-sched.c: Likewise.
      	* libgcc2.c: Likewise.
      	* loop.c: Likewise.
      	* profile.c: Likewise.
      	* system.h: Likewise.
      
      From-SVN: r61478
      Kazu Hirata committed
  29. 10 Jan, 2003 1 commit
  30. 18 Dec, 2002 1 commit
  31. 17 Dec, 2002 1 commit
  32. 16 Dec, 2002 1 commit
  33. 09 Dec, 2002 1 commit
    • tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition. · 9ac3e73b
      	* doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
      	* defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
      	* calls.c (store_unaligned_arguments_into_pseudos) Remove
      	FUNCTION_ARG_REG_LITTLE_ENDIAN.
      	* stmt.c (expand_return): Ditto.
      	* expr.c (move_block_from_reg): Ditto.
      	(copy_blkmode_from_reg): Ditto.
      	* expmed.c (store_bit_field): Ditto.
      
      From-SVN: r59962
      Steve Ellcey committed
  34. 18 Nov, 2002 1 commit