X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=311f24c1fc1a71f9f0ceccff00b92ab69d1a766d;hb=77ebfbe17723a011a41b8871c777787ee1f1b07a;hp=5137c8ce0319f901a545762c703c226fce069961;hpb=86062919aa02f36336affa2c67b2ead43df12667;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5137c8ce031..311f24c1fc1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,272 @@ +2004-09-03 James E Wilson + + * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Add __mips3d. + + * config/mips/generic.md (generic_frecip_fsqrt_step): New. + * config/mips/mips-ps-3d.md (mips_rsqrt1_): Use frsqrt1 type. + (mips_rsqrt2_): Use frsqrt2 type. + (mips_recip1_): Use frdiv1 type. + (mips_recip2_): Use frdiv2 type. + * config/mips/mips.md (type): Add frdiv1, frdiv2, frsqrt1, frsqrt2. + * config/mips/sb1.md (ir_sb1_fpu_2pipes, ir_sb1_fpu_1pipe): Add frdiv1 + and frsqrt1. + (ir_sb1_fpu_step2_2pipes, ir_sb1_fpu_step2_1pipe): New. + +2004-09-03 Daniel Jacobowitz + + * reload.c (find_reloads): Swap operand_loc pointers for + find_dummy_reload if we have swapped two operands. + +2004-09-03 Hans-Peter Nilsson + + * config/cris/cris.h (ASM_OUTPUT_CASE_END): Use prev_nonnote_insn + to get the tablejump-insn before the jump-table label. + +2004-09-03 Ziemowit Laski + + * c-common.h (objc_is_id, objc_declare_alias, objc_declare_class, + objc_declare_protocols, objc_build_message_expr, + objc_finish_message_expr, objc_build_selector_expr, + objc_build_protocol_expr, objc_build_encode_expr, + objc_build_string_object, objc_get_protocol_qualified_type, + objc_get_class_reference, objc_get_class_ivars, + objc_start_class_interface, objc_start_category_interface, + objc_start_protocol, objc_continue_interface, objc_finish_interface, + objc_start_class_implementation, objc_start_category_implementation, + objc_continue_implementation, objc_finish_implementation, + objc_set_visibility, objc_set_method_type, objc_build_method_signature, + objc_add_method_declaration, objc_start_method_definition, + objc_finish_method_definition, objc_add_instance_variable, + objc_build_keyword_decl, objc_build_throw_stmt, objc_begin_try_stmt, + objc_finish_try_stmt, objc_begin_catch_clause, + objc_finish_catch_clause, objc_build_finally_clause, + objc_build_synchronized, objc_static_init_needed_p, + objc_generate_static_init_call): New prototypes. + +2004-09-03 Steve Ellcey + + * config/ia64/ia64.c (ia64_function_arg): Use PARALLEL even if there + is only one reg. + (ia64_function_value): Ditto. + +2004-09-03 Jan Beulich + + * config.gcc: Resurrect NetWare as a target. Handle special case of + Novell linker to be used (specified through --with-ld=) and threading + model of either Posix (default) or NKS. + * config/i386/i386.c (ix86_return_pops_args): Conditionalize popping + of incoming hidden argument on KEEP_AGGREGATE_RETURN_POINTER. + * config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): New. + * config/i386/netware.c, config/i386/netware.h: New. + * config/i386/nwld.c, config/i386/nwld.h: New. + * config/i386/netware-crt0.c: New. + * config/i386/netware-libgcc.c: New. + * config/i386/netware-libgcc.def: New. + * config/i386/netware-libgcc.exp: New. + * config/i386/t-netware, config/i386/t-nwld: New. + * gthr-nks.h: New. + * doc/install.texi: Document NKS threading model. + +2004-09-03 Jan Beulich + + PR c/7054 + * defaults.h (TARGET_DEFAULT_PACK_STRUCT): Provide default. + * tree.h (initial_max_fld_align): Declare + * stor-layout.c (initial_max_fld_align): Define and initialize. + (maximum_field_alignment): Initialize to the same value. + * common.opt: Add -fpack-struct= variant of switch. + * opts.c: Handle -fpack-struct= variant of switch. + * c-pragma.c: Change #pragma pack() handling so that it becomes + compatible to other compilers: accept individual 'push' argument, + make final pop restore (command line) default, correct interaction + of push/pop and sole specification of a new alignment (so that the + sequence #pragma pack(push) - #pragma pack() becomes identical + to #pragma pack(push, ). + * doc/extend.texi: New node "Structure-Packing Pragmas" under + "Pragmas", describing #pragma pack. + * doc/invoke.texi: Document -fpack-struct= variant of switch. + * doc/tm.texi: Adjust description for HANDLE_PRAGMA_PACK_PUSH_POP. + Document new TARGET_DEFAULT_PACK_STRUCT. + +2004-09-03 Devang Patel + + * dwarf2out.c (gen_field_die). Equate decl number to die. + +2004-09-03 Vladimir Makarov + + PR target/15832 + * global.c (modify_reg_pav): New function. + (make_accurate_live_analysis): Call the new function. Move pavin + modification by earlyclobber set into the new function. + +2004-09-03 Andreas Schwab + + * config/m68k/m68k.c (output_andsi3): Use -1 instead of + (HOST_WIDE_INT)0xffffffff since CONST_INT value are always sign + extended. + +2004-09-02 Jan Beulich + + * Makefile.in (LIB2ADDEHDEP): Add unwind.h and unwind-pe.h. + * mklibgcc.in (libgcc_dep): New, covering general dependencies, but + not unwind code specific ones. + (libgcc2_c_dep): Replace general dependencies with use of libgcc_dep. + Remove unwind code specific dependencies. + (libgcov_c_dep): Replace general dependencies with use of libgcc_dep. + Remove gbl-ctors.h. + Add libgcc_dep to output generated for LIB2ADD, LIB2ADDEH, and + LIB2ADD_ST. Add LIB2ADDEHDEP to output generated for LIB2ADDEH. + * tsystem.h: Declare memcpy and memset when inhibit_libc. + +2004-09-02 Roman Zippel + + * combine.c (try_combine): Delay modifying of insns which cannot + be easily undone. + +2004-09-02 Daniel Berlin + + * gcc/common.opt: Rename ivcanon to tree-loop-ivcanon, tree-lim to + tree-loop-im. + * gcc/tree-ssa-loop.c: Ditto + * gcc/tree-ssa-loop-ivcanon.c: Ditto + * gcc/doc/invoke.texi: Ditto. + +2004-09-02 Ziemowit Laski + + * c-decl.c (store_parm_decls_newstyle): Make static. + (store_parm_decls_from): New function. + * c-tree.h (store_parm_decls_newstyle): Remove prototype. + (store_parm_decls_from): New prototype. + +2004-09-02 David Edelsohn + + * config/rs6000/rs6000.c (expand_block_move): Use SImode and + HImode with STRICT_ALIGNMENT. + +2004-09-02 Mark Mitchell + + * config/arm/bpabi.h (TARGET_BPABI_CPP_BUILTINS): Define. + (TARGET_OS_CPP_BUILTINS): Likewise. + * config/arm/symbian.h (TARGET_OS_CPP_BUILTINS): Include + TARGET_BPABI_CPP_BUILTINS. + +2004-09-02 Roman Zippel + + * combine.c (distribute_notes): Don't add REG_LABEL to jump insn. + +2004-09-02 Eric Christopher + + * builtins.c (expand_builtin_cabs): Delete. + (expand_builtin): If unable to fold the values do a normal + library call for builtin_cab*. + (fold_builtin_cabs): Depend on optimize and optimize_size. + * optabs.c (expand_cmplxdiv_straight): Delete. + (expand_cmplxdiv_wide): Ditto. + (expand_vector_binop): Ditto. + (expand_vector_unop): Ditto. + (expand_complex_abs): Delete. + (expand_binop): Remove calls to above functions. + Remove open coding of complex arithmetic. + (expand_unop): Ditto. + * optabs.h: Remove prototypes. + +2004-09-02 Ziemowit Laski + + * c-decl.c (store_parm_decls_newstyle): Make externally visible. + * c-tree.h (store_parm_decls_newstyle): New prototype. + +2004-09-02 Geoffrey Keating + + * config/rs6000/rs6000.c (expand_block_clear): Use vector + instructions if available. + (expand_block_move): Likewise. + +2004-09-03 Jan Hubicka + + * rtl.def (RANGE_INFO, RANGE_REG, RANGE_VAR, RANGE_LIVE): Kill. + +2004-09-02 Mark Mitchell + + * config/arm/symbian.h (LIB_SPEC): Define to empty. + * config/arm/t-symbian (SHLIB_LC): Likewise. + +2004-09-02 Paul Brook + + * config/arm/bpabi.c (__aeabi_ul2d, __aeabi_ul2f): Remove. + +2004-09-02 Richard Sandiford + + * config/mips/mips.c (mips_classify_symbol, mips_fetch_insns): + (mips_restore_gp, mips_set_return_address, mips_expand_prologue) + (mips16_fp_args, mips_avoid_hazard): Replace abort with gcc_assert. + (build_mips16_call_stub): Likewise. Remove daft CALL_INSN checks. + (mips_issue_rate): Remove unreachable abort. + (mips_symbolic_constant_p, mips_symbolic_address_p, mips_symbol_insns) + (mips_output_move, mips_relational_operand_ok_p, mips_arg_info) + (mips_block_move_straight, print_operand_address, mips_file_start) + (mips_initial_elimination_offset, mips16_fp_args, dump_constants_1) + (mips_output_conditional_branch, mips_expand_builtin_direct) + (mips_expand_builtin_compare): Replace abort with gcc_unreachable. + * config/mips/mips.md (rotr3, consttable_float): Replace abort + with gcc_assert. + +2004-09-02 Richard Sandiford + + * config/mips/mips.md (*lea_high64): Change split condition to + flow2_completed. Add a peephole2 to generate a more parallel version. + +2004-09-02 Jan Hubicka + + * gimplify.c (gimplify_compound_lval): Move "stack" varray out of + GGC. + + * ggc-page.c: include tree-flow.h. + (extra_order_size_table): Add stmt_ann_d. + (STAT_LABEL): Rename from .... + (LABEL): ... this one. + * Makefile.in (ggc-page.o): Add dependency. + + * ggc-common.c (ggc_force_collect): New global variable. + (loc_description): Add fields "freed", "collected" + (ptr_hash): New static hash + (ptr_hash_entry): New structure. + (hash_ptr,eq_ptr,ggc_prune_ptr): New static functions. + (ggc_record_overhead): Take ptr argument, record it + (ggc_prune_overhead_list, ggc_free_overhead): New functions. + (cmp_statistics): Imrove sorting. + (dump_ggc_loc_statistics): Output newly collected statistics + * ggc-page.c (ggc_alloc): Update call of ggc_record_overhead + (ggc_free): Call ggc_free_overhead. + (ggc_collect): Force collection when asked to be forced. + (ggc_collect): Call ggc_prune_overhead_list. + * ggc.h (ggc_force_collect): Declare + (ggc_record_overhead): Update prototype. + (ggc_free_overhead, ggc_prune_overhead_list): Declare. + +2004-09-02 James E Wilson + + * common.opt (ftrapping-math): Default to on. + +2004-09-02 Richard Earnshaw + + * arm/predicates.md (arm_reload_memory_operand): Allow MEM. + +2004-09-02 Denis Chertykov + + PR target/16884 + * config/avr/avr.md ("movmemhi"): Substitute match_dup to + match_scratch. + (*movmemqi_insn): Likewise. + (*movmemhi): Likewise. + (clrmemhi): Likewise. + (*clrmemqi): Likewise. + (*clrmemhi): Likewise. + +2004-09-02 Paul Brook + + * config.gcc (arm*-*-eabi* | arm*-*-symbianelf*): Set + default_use_cxa_atexit=yes. + 2004-09-02 Alan Modra * config/rs6000/linux64.h: Don't include signal.h or sys/ucontext.h. @@ -29,14 +298,14 @@ 2004-09-01 Roger Sayle * expmed.c (enum alg_code): Remove long unused enumeration values. - (struct mult_cost): New structure to hold the "score" of a synthetic + (struct mult_cost): New structure to hold the "score" of a synthetic multiply sequence, including both a rtx_cost and a latency field. (MULT_COST_LESS): New macro to compare mult_cost to a constant. (CHEAPER_MULT_COST): New macro to compare two mult_costs. (struct algorithm): Change type of cost field to be mult_cost. (synth_mult): Change type of cost_limit argument to be a pointer to a mult_cost. Update all cost comparisons to use the - new mult_cost infrastructure. For alg_add_factor and + new mult_cost infrastructure. For alg_add_factor and alg_sub_factor operations, latency is lower than the rtx_cost. (choose_mult_variant): Update calls to synth_mult. Perform cost comparisons using the new mult_cost infrastructure. @@ -152,8 +421,8 @@ 2004-09-01 Richard Henderson - * config/ns32k/ns32k.h (TRANSFER_FROM_TRAMPOLINE): Remove. - (TRAMPOLINE_TEMPLATE): Merge code from __trampoline inline. + * config/ns32k/ns32k.h (TRANSFER_FROM_TRAMPOLINE): Remove. + (TRAMPOLINE_TEMPLATE): Merge code from __trampoline inline. 2004-09-01 Jakub Jelinek @@ -246,7 +515,7 @@ * config/arm/arm.c (arm_cxx_export_class_data): New function. (TARGET_CXX_EXPORT_CLASS_DATA): Use it. * doc/tm.texi (TARGET_CXX_EXPORT_CLASS_DATA): Document it. - + 2004-08-31 Kaz Kojima * config/sh/sh.c (output_branch): Check the insn length possibly @@ -287,7 +556,7 @@ (TARGET_CXX_KEY_METHOD_MAY_BE_INLINE): New macro. * config/arm/bpabi.h: Use __THUMB_INTERWORK__ instead of __THUMB_INTERWORK. - + 2004-08-31 Denis Chertykov PR target/15417 @@ -304,7 +573,7 @@ * config/darwin.c (darwin_make_decl_one_only): Allocate section names once per compilation, instead of once per symbol. - + 2004-08-31 Paolo Bonzini * Makefile.in (build_subdir): New substitution. @@ -323,7 +592,7 @@ * fixinc.in: New, from fixinc/fixincl.sh. * fixinc/*: Removed. - + 2004-08-31 Joseph S. Myers * attribs.c (strip_attrs): Remove. @@ -353,12 +622,12 @@ 2004-08-30 Andrew Pinski - * hard-reg-set.h: + * hard-reg-set.h: s/HOST_BITS_PER_WIDES_FAST_INT/HOST_BITS_PER_WIDEST_FAST_INT. * ChangeLog: Fix previous ChangeLog entry. PR rtl-opt/13987 - * config.host (use_long_long_for_widest_fast_int): New, default is + * config.host (use_long_long_for_widest_fast_int): New, default is off. (ia64-*-hpux*): Enable use_long_long_for_widest_fast_int. * configure.ac: If use_long_long_for_widest_fast_int, then @@ -371,7 +640,7 @@ * sbitmap.h (SBITMAP_ELT_BITS): Define based on HOST_BITS_PER_WIDEST_FAST_INT. (SBITMAP_ELT_TYPE): Define based on HOST_WIDEST_FAST_INT. - * hard-reg-set.h (HARD_REG_ELT_TYPE): Define based on + * hard-reg-set.h (HARD_REG_ELT_TYPE): Define based on HOST_WIDEST_FAST_INT instead of HOST_WIDE_INT. (HARD_REG_SET_LONGS): Likewise. @@ -418,7 +687,7 @@ 2004-08-30 Richard Henderson - * c-typeck.c (build_unary_op): Don't expand ADDR_EXPR of a + * c-typeck.c (build_unary_op): Don't expand ADDR_EXPR of a COMPONENT_REF to pointer arithmetic. * varasm.c (initializer_constant_valid_p): Allow "&(*c).f", for constant "c" as a valid constant initializer. Allow narrowing of @@ -672,7 +941,7 @@ 2004-08-29 Chao-ying Fu James E Wilson - + * config/mips/mips-modes.def (V2SF, CCV2, CCV4): New modes. Give CCV2 8 byte size and alignment. Give CCV4 16 byte size and alignment. * config/mips/mips-ps-3d.md: New file. @@ -714,7 +983,7 @@ (enum mips_builtins): New for MIPS builtin functions. (enum mips_function_type): New for the types of MIPS builtin functions. (enum mips_cmp_choice): New for the MIPS comparison builtin functions. - * config/mips/mips.md: New constants for paired single and MIPS-3D + * config/mips/mips.md: New constants for paired single and MIPS-3D instructions. Include the new mips-ps-3d.md file. (addv2sf3, subv2sf3, mulv2sf3, absv2sf2, negv2sf2, movv2sf, movv2sf_hardfloat_64bit): New named patterns. @@ -879,7 +1148,7 @@ 2004-08-26 Fariborz Jahanian - * config/rs6000/rs6000.h (HARD_REGNO_CALL_PART_CLOBBERED): Added + * config/rs6000/rs6000.h (HARD_REGNO_CALL_PART_CLOBBERED): Added TFmode as additional register mode cloberred by call. 2004-08-26 Fariborz Jahanian @@ -900,7 +1169,7 @@ target mode. * config/rs6000/rs6000.md (movdi_update): Changed to movdi__update, to generate two versions. - + 2004-08-26 Daniel Berlin * Makefile.in (lambda-code.o): New. @@ -919,11 +1188,11 @@ * lambda-mat.c: Include tree.h 2004-08-26 Daniel Berlin - Sebastian Pop - - * tree-data-ref.h: Include lambda.h + Sebastian Pop + + * tree-data-ref.h: Include lambda.h (free_dependence_relation): Declared here. - (free_dependence_relations): Ditto. + (free_dependence_relations): Ditto. (free_data_refs): Ditto. * tree-data-ref.c (free_dependence_relation): New function. (free_dependence_relations): Ditto. @@ -941,7 +1210,7 @@ and classic_dist vectors. (analyze_all_data_dependences): Adjusted for using the new interface of compute_data_dependences_for_loop. Remove the statistics dump. - + 2004-08-26 Bob Wilson * config/xtensa/xtensa.c (xtensa_ld_opcodes, xtensa_st_opcodes): Delete. @@ -967,7 +1236,7 @@ if the constant satisfies add_operand. 2004-08-25 Richard Henderson - + PR debug/10695 * config/alpha/alpha.c (emit_frame_store_1, emit_frame_store): New. (alpha_expand_prologue): Handle >32-bit frames. Generate proper @@ -1037,7 +1306,7 @@ (FOR_EACH_SSA_USE_OPERAND): New. Iterate over operands as uses. (FOR_EACH_SSA_DEF_OPERAND): New. Iterate over operands as defs. (FOR_EACH_SSA_MAYDEF_OPERAND): New. Iterate over V_MAY_DEFs. - * tree-ssa-operands.c (NULL_DEF_OPERAND_P, NULL_USE_OPERAND_P): New. + * tree-ssa-operands.c (NULL_DEF_OPERAND_P, NULL_USE_OPERAND_P): New. Empty operand pointers. * tree-flow-inline.h (op_iter_done): New. Return true if finished. (op_iter_next_use): New. Return next use_operand_p. @@ -1048,10 +1317,10 @@ (op_iter_init_def): New. Initialize structure and get the first def. (op_iter_init_tree): New. Initialize structure and get the first tree. (op_iter_next_maydef): New. Return next V_MAY_DEF operands. - (op_iter_init_maydef): New. Initialize structure and get the first + (op_iter_init_maydef): New. Initialize structure and get the first V_MAY_DEF operands. * tree-cfg.c (tree_duplicate_bb): Use new operand iterator. - * tree-dfa.c (compute_immediate_uses_for_stmt, + * tree-dfa.c (compute_immediate_uses_for_stmt, redirect_immediate_uses): Use new operand iterator. (v_may_defs_disappeared_p, v_must_defs_disappeared_p): Delete. (mark_new_vars_to_rename): Use new operand iterator. Count virtual @@ -1062,12 +1331,12 @@ rewrite_trees): Use new operand iterator. * tree-pretty-print.c (dump_vops): Use new operand iterator. * tree-sra.c (mark_all_v_defs): Use new operand iterator. - * tree-ssa-alias.c (compute_points_to_and_addr_escape, + * tree-ssa-alias.c (compute_points_to_and_addr_escape, dump_points_to_info): Use new operand iterator. - * tree-ssa-ccp.c (cp_lattice_meet, visit_stmt, initialize, - replace_uses_in, replace_vuse_in, likely_value, set_rhs): Use new + * tree-ssa-ccp.c (cp_lattice_meet, visit_stmt, initialize, + replace_uses_in, replace_vuse_in, likely_value, set_rhs): Use new operand iterator. - * tree-ssa-dce.c (mark_stmt_if_obviously_necessary, + * tree-ssa-dce.c (mark_stmt_if_obviously_necessary, propagate_necessity): Use new operand iterator. * tree-ssa-dom.c (cprop_into_stmt, optimize_stmt): Use operand iterator. (register_definitions_for_stmt): Use new operand iterator. Take stmt as @@ -1076,7 +1345,7 @@ build_tree_conflict_graph): Use new operand iterator. * tree-ssa-loop-im.c (determine_max_movement, single_reachable_address, rewrite_mem_refs): Use new operand iterator. - * tree-ssa-loop-manip.c (find_uses_to_rename_stmt, + * tree-ssa-loop-manip.c (find_uses_to_rename_stmt, check_loop_closed_ssa_use): Use new operand iterator. * tree-ssa.c (verify_ssa, replace_immediate_uses): Use operand iterator. * tree-ssanames.c (release_defs): Use new operand iterator. @@ -1106,19 +1375,19 @@ to comments at start of function. * cfgbuild.c (make_edges): Add more details to hot/cold partitioning comment. - * cfgcleanup.c (try_simplify_condjump, try_forward_edges, - merge_blocks_move_predecessor_nojumps, - merge_blocks_move_successor_nojumps, merge_blocks_move, + * cfgcleanup.c (try_simplify_condjump, try_forward_edges, + merge_blocks_move_predecessor_nojumps, + merge_blocks_move_successor_nojumps, merge_blocks_move, try_crossjump_to_edge, try_crossjump_bb): Likewise. * cfglayout.c (fixup_reorder_chain): Likewise. * cfgrtl.c (rtl_can_merge_blocks, try_redirect_by_replacing_jump, cfg_layout_can_merge_blocks_p): Likewise. * ifcvt.c (find_if_case_1, find_if_case_2): Likewise. - * passes.c (rest_of_compilation): Update comments for calling + * passes.c (rest_of_compilation): Update comments for calling optimization that partitions hot/cold basic blocks. - * doc/invoke.texi: Update documentation of + * doc/invoke.texi: Update documentation of freorder-blocks-and-partition flag. - + 2004-08-25 Richard Sandiford * config/mips/mips.md (reg): Renamed mode attribute from ccreg. @@ -1149,7 +1418,7 @@ PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of - tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. + tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. @@ -1280,7 +1549,7 @@ 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,