X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=c235d08ef5002eb68e322259f17e539d4b000e38;hb=3bcc1a800100c83e84eaa18ef50c68510a8d8cd1;hp=921b5a8e193983763bfe2045779c9af2fc24e0bc;hpb=32a99bf22d315dec553115f6dfc4a6c981b4be32;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 921b5a8e193..c235d08ef50 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,700 @@ +2004-02-10 Paolo Bonzini + + PR c/14092 + * fold-const.c (fold) : Convert result of + negate_expr back to the original type. + +2004-02-10 Alan Modra + + * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Don't + bump retaddr here. + +2004-02-10 Paolo Bonzini + + * rtl.h (schedule_insns, schedule_ebbs, fix_sched_param, + gen_lowpart_SUBREG): Move under the file in which they + are actually declared. + +2004-02-10 Arnaud Charlet + + * doc/sourcebuild.texi: Add libada documentation. + + * doc/install.texi: Update documentation on Ada build, now + that the GNAT lib and tools are built automatically. + +2004-02-10 Richard Sandiford + + * config/mips/mips.h (TARGET_GPWORD): Return false for TARGET_NEWABI + && TARGET_IRIX. + +2004-02-09 Ziemowit Laski + + * objc/objc-act.c (get_super_receiver): Move '#ifdef OBJCPLUS' + boundaries outside build_component_ref() call (a macro in ObjC++). + +2004-02-09 Bob Wilson + + * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Update. + (init_cumulative_args): Likewise. + (a7_overlap_mentioned_p): Delete prototype. + * config/xtensa/xtensa.c (struct machine_function): Replace + incoming_a7_copied field with need_a7_copy and vararg_a7 flags. + Add set_frame_ptr_insn field. + (xtensa_emit_move_sequence): Update call to xtensa_copy_incoming_a7. + (xtensa_copy_incoming_a7): Rewrite to check need_a7_copy flag and check + if the operand is an argument in a7. If so, copy a7 to a new pseudo + at the function entry and replace the operand with the pseudo. + (init_cumulative_args): Remove unused arguments. Add new "incoming" + argument and record this flag in CUMULATIVE_ARGS. + (function_arg): Remove result_mode and special-case code to handle + arguments in a7. Instead, set need_a7_copy flag when there is an + incoming argument in a7. + (xtensa_expand_prologue): Remove code to search for set_frame_ptr insn + and use the value recorded in cfun->machine->set_frame_ptr_insn. + (xtensa_builtin_saveregs): Check for negative gp_left value. Set + need_a7_copy and vararg_a7 flags. Use move_block_from_reg instead of + special-case code. + (a7_overlap_mentioned_p): Delete. + * config/xtensa/xtensa.h (CUMULATIVE_ARGS): Add "incoming" flag. + (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Remove useless + arguments to init_cumulative_args and pass "incoming" flag instead. + (BLOCK_REG_PADDING): Delete. + * config/xtensa/xtensa.md (movdi, movsf, movdf): Remove unnecessary + checks for reload_in_progress and reload_completed. Update calls to + xtensa_copy_incoming_a7. + (ashlsi3): Rename existing insn to ashlsi3_internal. Add expander + to call xtensa_copy_incoming_a7. + +2004-02-09 DJ Delorie + + * config/i386/xm-djgpp.h (GCC_DRIVER_HOST_INITIALIZATION): No + longer modify standard_exec_prefix, standard_bindir_prefix, or + standard_startfile_prefix. + +2004-02-09 James E Wilson + + PR c++/11295 + * c-common.c (c_expand_expr, case STMT_EXPR): Change expand_expr call + to expand_expr_real call, and pass in alt_rtl as last argument. + + PR libstdc++/5625 + * builtin-types.def (BT_WORD, BT_FN_WORD_PTR): New. + * builtins.c (expand_builtin): Handle BUILT_IN_EXTEND_POINTER. + * builtins.def (BUILT_IN_EXTEND_POINTER): New. + * except.c (expand_builtin_extend_pointer): New. + * except.h (expand_builtin_extend_pointer): Declare. + +2004-02-09 David Edelsohn + + * config/rs6000/rs6000.c (rs6000_emit_move): Remove splitting slow + unaligned loads and stores. + +2004-02-09 Rainer Orth + + * config/mips/iris5.h (BSS_SECTION_ASM_OP): Define. + * config/mips/iris6.h (BSS_SECTION_ASM_OP): Undef. + + * config/mips/iris6.h (TARGET_ASM_NAMED_SECTION): Moved ... + * config/mips/iris5.h: ... here. + * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Remove. + + * config/mips/iris6.h (EXTRA_SECTION_FUNCTIONS): Move ... + * config/mips/iris5.h: ... here. + +2004-02-09 Rainer Orth + + * configure.ac: Remove default executable files before AC_PROG_CC. + * configure: Regenerate. + +2004-02-09 Kazu Hirata + + PR target/13721 + * config/h8300/h8300.c (byte_reg): Call abort() if asked to + print a operand other than a register. + +2004-02-09 Roger Sayle + + * fold-const.c (fold) : Use the original type conversion + tree code rather than call fold_convert, which doesn't specify a + default floating point to integer conversion. + +2004-02-08 Bernardo Innocenti + + * config/m68k/m68k.c, config/m68k/m68k.md (SGS, SGS_CMP_ORDER): Remove + code to support SGS assembler. Reformat adjacent code where possible. + * config/m68k/m68k.c (switch_table_difference_label_flag): Remove + definition. + * config/m68k/m68k.h (PRINT_OPERAND_PUNCT_VALID_P): Remove support + for '%#'. + * config/m68k/linux.h, config/m68k/m68k.c, + * config/m68k/math-68881.h: Replace `%#' with `#' in inline asm + macros and asm_printf() format strings. + * config/m68k/m68kelf.h (ASM_OUTPUT_CASE_END): Remove macro definition. + * config/m68k/linux.h: Update copyright. + * config/m68k/linux.h, config/m68k/m68k.c: Remove traling whitespace. + +2004-02-08 Andreas Schwab + Bernardo Innocenti + + * config/m68k/m68k.h (REGISTER_NAMES): Prefix each name with + REGISTER_PREFIX. + * (M68K_FP_REG_NAME): New macro to specify an alternate name for the + frame pointer register, overridable by OS targets. + * (M68K_REGNAME): Macro to obtain register name for asm output, + eventually replacing %a6 with M68K_FP_REG_NAME. + * config/m68k/coff.h (REGISTER_NAMES): Don't redefine. + * config/m68k/linux.h (REGISTER_NAMES): Likewise. + * config/m68k/m68kelf.h (REGISTER_NAMES): Likewise. + * config/m68k/netbsd-elf.h (REGISTER_NAMES): Likewise. + * config/m68k/m68k.c: Use M68K_REGNAME(x) in place of reg_names[x]. + +2004-02-08 Kazu Hirata + + * target-def.h (TARGET_STRUCT_VALUE_RTX): Define as + hook_rtx_tree_int_null. + * targhooks.c (default_struct_value_rtx): Remove. + * targhooks.h: Remove the prototype for + default_struct_value_rtx. + * config/alpha/alpha.c, config/arc/arc.c, config/avr/avr.c, + config/fr30/fr30.c, config/h8300/h8300.c, config/i386/i386.c, + config/ip2k/ip2k.c, config/iq2000/iq2000.c, + config/m32r/m32r.c, config/mcore/mcore.c, config/mips/mips.c, + config/mn10300/mn10300.c, config/pdp11/pdp11.c, + config/rs6000/rs6000.c, config/s390/s390.c, + config/stormy16/stormy16.c, config/v850/v850.c, + config/xtensa/xtensa.c (TARGET_STRUCT_VALUE_RTX): Remove. + * doc/tm.texi (TARGET_STRUCT_VALUE_RTX): Document the default. + +2004-02-08 Joseph S. Myers + + * README.Portability: Change "ISO C89" to "ISO C90". + * c-parse.in (primary, initelt): Likewise. + +2004-02-08 Richard Sandiford + + * real.c (encode_ibm_extended): Normalize the input value before + converting it to a double. Handle the case where a normal value + rounds to infinity. + +2004-02-08 Kazu Hirata + + * c-objc-common.c (c_cannot_inline_tree_fn): Fix a typo in a + warning. + * cse.c (preferrable): Change to preferable. Update all of its + callers. + * genautomata.c (ainsn): Change + first_ainsn_with_given_equialence_num to + first_ainsn_with_given_equivalence_num. Update all of its + references. + +2004-02-08 Jan Hubicka + + * schedule-ebb.c (schedule_ebbs): Do not allocate reg life data. + +2004-02-07 David Edelsohn + + * function.c (assign_parms): Fix formatting. + +2004-02-07 Kazu Hirata + + * default.h (PROMOTE_PROTOTYPES): Remove. + * system.h (PROMOTE_FUNCTION_RETURN, PROMOTE_PROTOTYPES, + STRUCT_VALUE_REGNUM, SETUP_INCOMING_VARARGS, + EXPAND_BUILTIN_SAVEREGS): Poison. + * target-def.h (TARGET_PROMOTE_FUNCTION_RETURN): Define as + hook_bool_tree_false. + (TARGET_PROMOTE_PROTOTYPES): Likewise. + * target.h: Replace SETUP_INCOMING_VARARGS with + targetm.calls.setup_incoming_varargs(). + * targhooks.c (default_promote_function_return): Remove. + (default_promote_prototypes): Likewise. + (default_struct_value_rtx): Always abort(). + (default_expand_builtin_saveregs): Always print an error + message. + (default_setup_incoming_varargs): Do nothing. + (default_pretend_outgoing_varargs_named): Don't depend on + SETUP_INCOMING_VARARGS. + * targhooks.h: Remove the prototype for + default_promote_function_return and + default_promote_prototypes. + +2004-02-07 Kazu Hirata + + * system.h (SHARED_SECTION_ASM_OP): Poison. + * varasm.c (data_section): Don't use SHARED_SECTION_ASM_OP. + * doc/tm.texi (SHARED_SECTION_ASM_OP): Remove. + +2004-02-07 Zack Weinberg + + Bug 13856 + * c-decl.c (diagnose_mismatched_decls): Only give special + treatment when olddecl is DECL_BUILT_IN, if C_DECL_INVISIBLE + is also true. + (merge_decls): Don't clear DECL_BUILT_IN_CLASS and + DECL_FUNCTION_CODE when defining a built-in function. + Don't update DECL_ESTIMATED_INSNS. + * dwarf2out.c (dwarf2out_decl): Don't ignore built-in + FUNCTION_DECLs. + * tree.h: Delete DECL_ESTIMATED_INSNS. + * tree-inline.c (struct inline_data): Delete inlined_insns field. + (expand_call_inline, optimize_inline_calls): Don't update + DECL_ESTIMATED_INSNS nor inlined_insns. + * cgraphunit.c (cgraph_analyze_function): Don't update + DECL_ESTIMATED_INSNS. + +2004-02-07 Zack Weinberg + + * c-common.c (shadow_warning): Delete. + * c-common.h (free_parser_stacks, shadow_warning, sw_kind): Delete. + * c-decl.c (warn_if_shadowing): Issue shadow warnings directly. + * c-opts.c (c_common_parse_file): Don't call free_parser_stacks. + * c-parse.in (free_parser_stacks): Delete. + +2004-02-07 Nathanael Nerode + + * Makefile.in, config/t-slibgcc-darwin, config/t-slibgcc-elf-ver, + config/t-slibgcc-sld, config/mips/t-iris5-6, config/sh/t-linux: + Use the top level mkinstalldirs, not the one in the gcc subdir. + * mkinstalldirs: Remove (from the gcc subdir). + +2004-02-07 Roger Sayle + + PR middle-end/13696 + * fold-const.c (fold_convert): New function to provide type + conversion to the middle-end without using convert. + (negate_expr, associate_trees, size_diffop, omit_one_operand, + operand_equal_for_comparison_p, pedantic_omit_one_operand, + invert_truthvalue, optimize_bit_field_compare, range_binop, + decode_field_reference, make_range, build_range_check, unextend, + fold_truthop, extract_muldiv_1, fold_mathfn_compare, + fold_binary_op_with_conditional_arg, fold_inf_compare, + fold_single_bit_test, fold, multiple_of_p): Replace all calls to + convert with calls to fold_convert. + +2004-02-07 Jan Hubicka + + * genrecog.c (find_operand): add extra argument stop. + (validate_pattern): Verify that mach_dup is duplicating operand + defined lexically earlier. + +2004-02-07 Kazu Hirata + + * config.gcc: Don't mention MAX_LONG_TYPE_SIZE. + * system.h (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, + MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Poison. + * config/avr/avr.h, config/h8300/h8300.h, config/i386/i386.h, + config/ia64/ia64.h, config/ip2k/ip2k.h, + config/iq2000/iq2000.h, config/mips/iris5.h, + config/mips/mips.h, config/pa/pa-64.h, config/pa/pa.h, + config/rs6000/aix51.h, config/rs6000/aix52.h, + config/rs6000/darwin.h, config/rs6000/rs6000.h, + config/s390/s390.h, config/sh/sh.h, config/sparc/freebsd.h, + config/sparc/linux.h, config/sparc/linux64.h, + config/sparc/netbsd-elf.h, config/sparc/sparc.h, + config/xtensa/xtensa.h: Remove the definitions of + MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, and/or + MAX_WCHAR_TYPE_SIZE. + * doc/tm.texi (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, + MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Remove. + +2004-02-07 Stephane Carrez + + PR bootstrap/13990 + * config/m68hc11/m68hc11.md ("doloop_end"): Pass dummy arguments to + gen_rtx_NE. + +2004-02-07 Josef Zlomek + + * var-tracking.c (vt_add_function_parameters): Surround checkings by + #ifdef ENABLE_CHECKING and #endif. + +2004-02-07 Roger Sayle + + * fold-const.c (negate_expr_p, negate_expr): Optimize -(A+B) into + either (-A)-B or (-B)-A, if A or B is easily negated respectively. + (fold) : Optimize (A*C) - (B*C) -> (A-B)*C for both + integer types and floating point with unsafe_math_optimizations. + Add similar optimization for (A*C1) - (A*C2) -> A*(C1-C2). + Optimize A - B as A + (-B), if B is easily negated. + +2004-02-07 Kazu Hirata + + * c-ppoutput.c, cfganal.c, diagnostic.h, print-rtl.c, + config/darwin.c, config/darwin.h, config/ia64/ia64-c.c, + config/m32r/linux.h, config/rs6000/ppc64-fp.c, + config/sparc/openbsd.h, doc/makefile.texi, doc/passes.texi: + Update copyright. + +2004-02-07 Kazu Hirata + + * c-ppoutput.c, var-tracking.c: Fix comment typos. + +2004-02-06 James E Wilson + + * config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Only define for + glibc 2.3 or better. + +2004-02-06 Kazu Hirata + + * doc/tm.texi (TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL): Change + to FLOAT_LIB_COMPARE_RETURNS_BOOL. + +2004-02-07 Alan Modra + + * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add darwin-ldouble.c. + (SHLIB_MAPFILES): Add libgcc-ppc64.ver. + (SHLIB_MKMAP_OPTS): Delete. + (TARGET_LIBGCC2_CFLAGS): Add -specs. + (bispecs): Add rule. + * config/rs6000/libgcc-ppc64.ver: New file. + * config/rs6000/ppc64-fp.c (__fixtfdi, __floatditf): New functions. + (__floatdidf, __floatdisf): Optimize multiply. + (__fixunstfdi): New function. + * config/rs6000/rs6000.c (rs6000_complex_function_value): Allow for + real and imag parts larger than one register. + (function_arg): Correct type of reg used when fp arg split partially + to stack. + * config/rs6000/darwin-ldouble.c: Protect with #if !_SOFT_FLOAT + and __MACH__ or __powerpc64__. + +2004-02-06 Roger Sayle + Ulrich Weigand + + * builtins.c (expand_builtin_signbit): Use extract_bit_field instead + of gen_highpart or gen_lowpart when the floating point format is + wider than the result mode. + +2004-02-06 Andrew Pinski + + * dwarf2out.c (loclabel_num): Move into #ifdef + DWARF2_DEBUGGING_INFO. + +2004-02-06 Ziemowit Laski + + * objc/objc-act.c (build_super_template) the 'class' field of + 'struct _objc_super' shall be named 'super_class' #ifdef OBJCPLUS. + (get_super_receiver): Likewise. + +2004-02-06 Kazu Hirata + + * reload1.c (check_eliminable_occurrences): Optimize the reset + of can_eliminate. + (eliminate_regs_in_insn): Likewise. + +2004-02-06 Daniel Berlin + Josef Zlomek + + * dwarf2out.c (struct gcc_debug_hooks): Call dwarf2out_begin_function + at the beginning of function, call dwarf2out_var_location for + NOTE_INSN_VAR_LOCATION note. + (struct var_loc_node, struct var_loc_list_def, loclabel_num, + decl_loc_table): New. + (lookup_decl_loc): New function. + (add_var_loc_to_decl): New function. + (based_loc_descr): Added parameter can_use_fbreg, DW_OP_fbreg is used + only if can_use_fbreg. + (mem_loc_descriptor): Added parameter can_use_fbreg, pass it to other + functions. + (loc_descriptor): Likewise. Process VAR_LOCATION. + (concat_loc_descriptor): Call loc_descriptor with can_use_fbreg == true. + (loc_descriptor_from_tree): Call mem_loc_descriptor with + can_use_fbreg == true. + (add_location_or_const_value_attribute): Added parameter enum + dwarf_attribute attr, generate attribute ATTR. Create the location list. + (add_bound_info): Call loc_descriptor with can_use_fbreg == true. + (gen_formal_parameter_die): Call add_location_or_const_value_attribute + with attr == DW_AT_location. + (gen_subprogram_die): Generate the location list for DW_AT_frame_base + if frame_base_decl is defined and has a location list. + (gen_variable_die): Call add_location_or_const_value_attribute with + attr == DW_AT_location. + (dwarf2out_var_location): New function. + (dwarf2out_begin_function): New function. + (dwarf2out_init): Create decl_loc_table. + +2004-02-06 Ulrich Weigand + + * loop.c (force_movables): Transitively increase the priorities of + all insns forces by an insn, not just the first one. + +2004-02-06 Josef Zlomek + Daniel Berlin + + Josef Zlomek + * Makefile.in (var-tracking.o): New. + * common.opt (fvar-tracking): New. + * flags.h (flag_var_tracking): New. + * gengtype.c (adjust_field_rtx_def): NOTE_INSN_VAR_LOCATION was added. + * opts.c (common_handle_option): Add OPT_fvar_tracking. + * print-rtl.c (print_rtx): NOTE_INSN_VAR_LOCATION was added. + * rtl.c (note_insn_name): Likewise. + * rtl.def (VAR_LOCATION): New. + * rtl.h (NOTE_VAR_LOCATION): New. + (NOTE_VAR_LOCATION_DECL): New. + (NOTE_VAR_LOCATION_LOC): New. + (enum insn_note): NOTE_INSN_VAR_LOCATION was added. + (variable_tracking_main): New exported function. + * timevar.def (TV_VAR_TRACKING): New. + * toplev.c (enum dump_file_index): Added DFI_vartrack. + (dump_file): "vartrack" was added (-dV). + (flag_var_tracking): New. + (f_options): "var-tracking" was added. + (rest_of_handle_variable_tracking): New function. + (rest_of_compilation): Run variable tracking. + (process_options): If user has not specified flag_var_tracking set it + according to optimize, debug_info_level and debug_hooks. + * tree.h (frame_base_decl): New. + * var-tracking.c: New file. + * config/ia64/ia64.c (ia64_flag_var_tracking): New variable. + (ia64_override_options): Set flags to run variable tracking in machine + dependent reorg instead of toplev.c. + (ia64_reorg): Run variable tracking if wanted. + * doc/invoke.texi: Mention variable tracking in -dV, + add and -fvar-tracking. + * doc/passes.texi: Added variable tracking pass. + + Daniel Berlin + * debug.h (struct gcc_debug_hooks): Added var_location debug hook. + * dbxout.c (dbx_debug_hooks): Likewise. + (xcoff_debug): Likewise. + * debug.c (do_nothing_debug_hooks): Likewise. + * dwarf2out.c (dwarf2_debug_hooks): Likewise. + * dwarfout.c (dwarf_debug_hooks): Likewise. + * sdbout.c (sdb_debug_hooks): Likewise. + * vmsdbgout.c (vmsdbg_debug_hooks): Likewise. + * final.c (final_scan_insn): Call var_location debug hook for each + NOTE_INSN_VAR_LOCATION. + +2004-02-06 Jan Hubicka + + * flow.c (update_life_info): Allocate reg_deaths when called from + scheudler. + (attempt_auto_inc): Update life ranges accordingly. + +2004-02-06 Ulrich Weigand + + PR debug/11816 + * dwarf2out.c (gen_decl_die): Handle anonymous struct members. + +2004-02-06 Ulrich Weigand + + * cfganal.c (flow_call_edges_add): Never split a libcall block. + +2004-02-06 Daniel Berlin + + * dwarf2out.c (output_loc_list): Don't use deltas if we have + a separate line info table in use. + Use the correct size for terminators. + (output_die): Use offset, not delta. + +2004-02-06 H.J. Lu + + * doc/invoke.texi: Remove the pni option from -mfpmath=. + +2004-02-06 Jan Hubicka + + * recog.c (split_all_insns): Do not update reg info. + * regrename.c (regrename_optimize): Likewise. + * toplev.c (rest_of_handle_reorder_blocks): Likewise. + * flow.c (struct propagate_block_info): Add insn_num field. + (reg_deaths): New array. + (life_analysis): Free reg_deaths info. + (allocate_reg_life_data): Allocate reg_deaths array. + (propagate_one_insn): Use new array. + (init_propagate_block): Initialize it. + (free_propagate_block_info): Finish compuation of + REG_LIVE_LENGTH + (attempt_auto_inc): Sanity check that REG_INFO is not + computed at same time. + (mark_used_regs): Update new array. + + * reg-stack.c (subst_stack_regs): Unshare clobbers before + substitution. + +2004-02-06 Kazu Hirata + + * config/s390/s390.md (*extendsiqi2_short_displ): Change to + *extendqisi2_short_displ. + +2004-02-06 Alan Modra + + * doc/tm.texi (INIT_CUMULATIVE_ARGS): Update doco. + * calls.c (expand_call): Pass n_named_args to INIT_CUMULATIVE_ARGS. + (emit_library_call_value_1): Likewise pass nargs. + * expr.c (block_move_libcall_safe_for_call_parm): Pass 3 here. + * function.c (assign_parms): Pass -1 to INIT_CUMULATIVE_ARGS. + * config/rs6000/rs6000.c (init_cumulative_args): Use n_named_args + parameter instead of scanning TYPE_ARGS_TYPES to count args. + * config/rs6000/rs6000-protos.h (init_cumulative_args): Update + prototype. + * config/rs6000/rs6000.h (INIT_CUMULATIVE_ARGS): Pass extra arg. + (INIT_CUMULATIVE_INCOMING_ARGS): Set extra arg to 1000. + (INIT_CUMULATIVE_LIBCALL_ARGS): Set extra arg to 0. + * config/sh/sh.c (sh_output_mi_thunk): Pass 1 as n_named_args to + INIT_CUMULATIVE_ARGS. + * config/alpha/alpha.h (INIT_CUMULATIVE_ARGS): Update. + * config/alpha/unicosmk.h, config/alpha/vms.h, config/arc/arc.h, + config/arm/arm.h, config/avr/avr.h, config/c4x/c4x.h, + config/cris/cris.h, config/fr30/fr30.h, config/frv/frv.h, + config/h8300/h8300.h, config/i386/i386.h, config/i860/i860.h, + config/ia64/ia64.h, config/ip2k/ip2k.h, config/iq2000/iq2000.h, + config/iq2000/iq2000.c, config/m32r/m32r.h, config/m68hc11/m68hc11.h, + config/m68k/m68k.h, config/mcore/mcore.h, config/mips/mips.h, + config/mmix/mmix.h, config/mn10300/mn10300.h, config/ns32k/ns32k.h, + config/pa/pa.h, config/pdp11/pdp11.h, config/s390/s390.h, + config/sh/sh.h, config/sparc/sparc.h, config/stormy16/stormy16.h, + config/v850/v850.h, config/vax/vax.h, config/xtensa/xtensa.h: Likewise. + +2004-02-06 Kazu Hirata + + * genemit.c (gen_exp) [CONST_INT]: Use const_int_rtx whenever + possible. + +2004-02-06 Kazu Hirata + + * reload1.c (eliminate_regs_in_insn): If a set has a REG_EQUAL + note containing (plus (reg) (const_int)), where reg is an + eliminable reg, then perform the register elimination without + depending on eliminate_regs(). + +2004-02-06 Kazu Hirata + + * config/arc/arc.c (arc_return_in_memory): Check the return + value of int_size_in_bytes against -1. Don't check + TREE_ADDRESSABLE. + * config/avr/avr.c (avr_return_in_memory): Check the return + value of int_size_in_bytes against -1. + * config/ip2k/ip2k.c (ip2k_return_in_memory): Likewise. + * config/m68hc11/m68hc11.c (m68hc11_return_in_memory): + Likewise. + * config/mcore/mcore.c (mcore_return_in_memory): Likewise. + * config/stormy16/stormy16.c (xstormy16_return_in_memory): + Likewise. + +2004-02-06 Kazu Hirata + + * config/frv/frv-protos.h: Remove the prototype for + frv_setup_incoming_varargs. + * config/frv/frv.c (TARGET_SETUP_INCOMING_VARARGS): New. + (frv_setup_incoming_varargs): Make it static. + * config/frv/frv.h (SETUP_INCOMING_VARARGS): Remove. + +2004-02-06 Kazu Hirata + + * config/fr30/fr30-protos.h: Remove the prototype for + fr30_setup_incoming_varargs. + Update the prototypes for fr30_num_arg_regs and + fr30_function_arg_partial_nregs. + * config/fr30/fr30.c (TARGET_STRUCT_VALUE_RTX): New. + (TARGET_SETUP_INCOMING_VARARGS): Likewise. + (fr30_setup_incoming_varargs): Make it static. + Add argument second_time. Don't do anything when second_time + is nonzero. + (fr30_num_arg_regs): Change the type of the first argument to + enum machine_mode. + (fr30_function_arg_partial_nregs): Change the type of the + second argument to enum machine_mode. + * config/fr30/fr30.h (STRUCT_VALUE): Remove. + (SETUP_INCOMING_VARARGS): Remove. + +2004-02-06 Kazu Hirata + + * config/arc/arc-protos.h: Remove the prototype for + arc_setup_incoming_varargs. + * config/arc/arc.c (TARGET_ASM_EXTERNAL_LIBCALL): New. + (TARGET_SETUP_INCOMING_VARARGS): Likewise. + (arc_setup_incoming_varargs): Make it static. + (arc_external_libcall): Likewise. + * config/arc/arc.h (SETUP_INCOMING_VARARGS): Remove. + Remove the commented-out definition of + ASM_OUTPUT_EXTERNAL_LIBCALL. + +2004-02-05 SUGIOKA Toshinobu + + * config/sh/t-linux (SHLIB_INSTALL): Prepend $$(DESTDIR) + to $$(slibdir) in the installation commands. + +2004-02-05 David Edelsohn + + * reload.c (refers_to_regno_for_reload_p): Index hard_regno_nregs + with inner_regno, not regno. + * rtlanal.c (refers_to_regno_p): Same. + +2004-02-05 Kazu Hirata + + * config.gcc: Remove i370 support. + +2004-02-05 Kelley Cook + + * doc/install.texi: Update automake and autoconf version + requirements. Note where to find gcj automake version. + +2004-02-05 Kelley Cook + + * Makefile.in (generate-manpages): Move dependencies to ... + (man): here. + * doc/makefile.texi: Document new targets. + * doc/sourcebuild.texi (Make-lang.in): Document new langhooks. + +2004-02-05 Kelley Cook + + PR/13485 + Makefile.in (srcextra): Add a level of indirection to ... + (gcc.srcextra): ... here. + (po-generated): Delete. + (po/$(PACKAGE).pot: Use srcextra instead of po-generated. Depend on + options.c. + (start.encap): Remove superfluous lang.srcextra dependency. + objc/Make-lang.in (po-generated): Delete. + +2004-02-05 Kazu Hirata + + * config/ia64/ia64.c (REG_GP): Remove. + +2004-02-05 Rainer Orth + + * config/mips/iris5gas.h (PREFERRED_DEBUGGING_TYPE): Define. + +2004-02-05 Devang Patel + + * dwarf2out.c (force_type_die): Look up input type itself + instead of root_type() of type. + +2004-02-05 Andreas Krebbel + + * config/s390/s390.md ("*tmqidi_ext"): New insn. + ("*extendqidi2_short_displ", "*extendsiqi2_short_displ"): Old + pre-reload splitters are transformed to post-reload + define_insn_and_split patterns. + ("*tmqisi_ext"): Renamed old "*tmqi_ext". + +2004-02-05 Kazu Hirata + + * config/cris/cris.h: Replace PROMOTE_PROTOTYPES with + TARGET_PROMOTE_PROTOTYPES. + +2004-02-05 Rainer Orth + + PR middle-end/13750 + Revert: + 2004-01-15 Geoffrey Keating + PR pch/13361 + * c-typeck.c (constructor_asmspec): Delete. + (struct initializer_stack): Delete field 'asmspec'. + (start_init): Delete saving of asmspec. + (finish_init): Don't update constructor_asmspec. + * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree. + * stmt.c (expand_asm): Duplicate strings from tree. + (expand_asm_operands): Likewise. + * tree.c (tree_size): Update computation of size of STRING_CST. + (make_node): Don't make STRING_CST nodes. + (build_string): Allocate string with tree node. + * tree.def (STRING_CST): Update comment. + * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST. + (tree_string): Place contents of string in tree node. + * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string + from tree. + 2004-02-05 Joseph S. Myers * diagnostic.h (DEFINE_DIAGNOSTIC_KIND): Change parameter M to @@ -166,8 +863,8 @@ by reference if ARCH32. 2004-02-04 Aldy Hernandez - - * cgraphunit.c (cgraph_postorder): Fix typo in comment. + + * cgraphunit.c (cgraph_postorder): Fix typo in comment. 2004-02-04 Ulrich Weigand @@ -252,7 +949,7 @@ pointer when all VALUE's locations has been invalidated. (rtx_equal_for_memref_p): Simplify checking of VALUEs. -2004-02-03 Wolfgang Bangerth +2004-02-03 Wolfgang Bangerth * doc/invoke.texi (x86 options): Fix spelling/wording. @@ -778,8 +1475,8 @@ 2004-02-02 Richard Henderson - PR target/13789 - * expr.c (store_expr): Use force_operand before emit_move_insn. + PR target/13789 + * expr.c (store_expr): Use force_operand before emit_move_insn. 2004-02-02 Jeff Law Roger Sayle @@ -815,24 +1512,24 @@ gen_rtx. 2004-02-02 Eric Christopher - Zack Weinberg + Zack Weinberg * c-opts.c (c_common_handle_option): Add -finput-charset. - * c.opt: Ditto. - * cppcharset.c (one_iso88591_to_utf8): Remove. - (convert_iso88591_utf8): Ditto. - (conversion_tab): Remove 8859-1 converter. - (_cpp_input_to_utf8): Remove. - (_cpp_init_iconv_buffer): Ditto. - (_cpp_close_iconv_buffer): Ditto. - (_cpp_convert_input): New function. - (_cpp_default_encoding): Ditto. - * cpphash.h: Add/remove prototypes for above. - * cppfiles.c (read_file_guts): Use _cpp_convert_input. - * cppinit.c (cpp_create_reader): Use _cpp_default_encoding - for narrow execution and input character sets. - * cpplib.c (cpp_push_buffer): Delete uses of removed functions. - * doc/cppopts.texi: Document -finput-charset. + * c.opt: Ditto. + * cppcharset.c (one_iso88591_to_utf8): Remove. + (convert_iso88591_utf8): Ditto. + (conversion_tab): Remove 8859-1 converter. + (_cpp_input_to_utf8): Remove. + (_cpp_init_iconv_buffer): Ditto. + (_cpp_close_iconv_buffer): Ditto. + (_cpp_convert_input): New function. + (_cpp_default_encoding): Ditto. + * cpphash.h: Add/remove prototypes for above. + * cppfiles.c (read_file_guts): Use _cpp_convert_input. + * cppinit.c (cpp_create_reader): Use _cpp_default_encoding + for narrow execution and input character sets. + * cpplib.c (cpp_push_buffer): Delete uses of removed functions. + * doc/cppopts.texi: Document -finput-charset. 2004-02-02 David Edelsohn @@ -1272,7 +1969,7 @@ 2004-01-30 Fariborz Jahanian - * config/rs6000/rs6000.c (rs6000_emit_move): Remove #if 0. + * config/rs6000/rs6000.c (rs6000_emit_move): Remove #if 0. Copy operands[1] to pseudo for simplify_gen_subreg. 2004-01-30 Kazu Hirata @@ -1291,7 +1988,7 @@ commuting XOR with ASHIFTRT. 2004-01-30 Kazu Hirata - Eric Botcazou + Eric Botcazou * config/sparc/sparc-protos.h: Remove the prototype for sparc_builtin_saveregs.