X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=d85bc4b7ef15cb30b8fe9a5fd3b20e6cf1c67a68;hb=84f3a178789d337492b95abecd502f8b335011fb;hp=63dd2b3f16f623ec179c0acc8a1dbcb5680d748e;hpb=4d62f82895deb7521a548e5f0e16b8beb63c004e;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 63dd2b3f16f..d85bc4b7ef1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,332 @@ +2010-03-31 Jie Zhang + + PR 43574 + * opt-functions.awk (var_type_struct): Use signed char type + for simple variables. + +2010-03-31 Rainer Orth + + * config/sol2.c: Include output.h. + (solaris_assemble_visibility): New function. + * config/t-sol2 (sol2.o): Add output.h dependency. + * config/sol2-protos.h (solaris_assemble_visibility): Declare. + * config/sol2.h [!USE_GAS] (TARGET_ASM_ASSEMBLE_VISIBILITY): + Redefine. + +2010-03-31 Jakub Jelinek + + PR target/43580 + * config/arm/arm.c (arm_save_coproc_regs): Use Pmode instead of + V2SImode or XFmode on PRE_DEC. + + PR debug/43557 + * cfgexpand.c (expand_debug_expr): Handle VOIDmode mode like + BLKmode. + +2010-03-31 Jie Zhang + + PR 43562 + * reload.h (caller_save_initialized_p): Declare. + * toplev.c (backend_init_target): Don't call + init_caller_save but set caller_save_initialized_p + to false. + * caller-save.c (caller_save_initialized_p): Define. + (init_caller_save): Check caller_save_initialized_p. + * ira.c (ira): Call init_caller_save if flag_caller_saves. + +2010-03-31 Rainer Orth + + PR target/39048 + * config.gcc (i[34567]86-*-solaris2*): Add i386/t-fprules-softfp + and soft-fp/t-softfp to tmake_file. + * config/i386/sol2.h (LIBGCC2_HAS_TF_MODE): Redefine. + (LIBGCC2_TF_CEXT): Define. + (TF_SIZE): Define. + +2010-03-30 Alexandre Oliva + + PR debug/42977 + * cselib.c (n_useless_values): Document handling of debug locs. + (n_useless_debug_values, n_debug_values): New variables. + (new_elt_loc_list): Don't add to debug values, keep count. + (promote_debug_loc): New. + (cselib_reset_table): Zero new variables. + (entry_and_rtx_equal_p): Promote debug locs. + (discard_useless_locs): Increment n_useless_debug_values for + debug values. + (remove_useless_values): Adjust n_useless_values and n_debug_values + with n_useless_debug_values. + (add_mem_for_addr): Promote debug locs. + (cselib_lookup_mem): Likewise. + (cselib_lookup_addr): Renamed to... + (cselib_lookup_addr_1): ... this. Promote debug locs. + Don't call... + (cselib_log_lookup): ... this. Turn into... + (cselib_lookup_addr): ... new wrapper. + (cselib_lookup_from_insn): New. + (cselib_invalidate_regno): Increment n_useless_debug_values for + debug values. + (cselib_invalidate_mem): Likewise. + (cselib_process_insn): Take n_deleted and n_debug_values into + account to guard remove_useless_value call. + (cselib_finish): Zero n_useless_debug_values. + * cselib.h (cselib_lookup_from_insn): Declare. + * sched-deps.c (sched_analyze_1): Use cselib_lookup_from_insn. + (sched_analyze_2): Likewise. + +2010-03-30 Jakub Jelinek + + * var-tracking.c (use_narrower_mode_test, use_narrower_mode): New + functions. + (adjust_mems): Replace narrowing SUBREG of expression containing + just PLUS, MINUS, MULT and ASHIFT of registers and constants + with operations in the narrower mode. + + PR debug/43593 + * var-tracking.c (dataflow_set_clear_at_call): Invalidate + just regs_invalidated_by_call instead all call_used_reg_set + registers. + +2010-03-30 Sebastian Pop + + PR middle-end/43430 + * tree-vect-slp.c (vect_get_and_check_slp_defs): Replace type + pointer comparisons with types_compatible_p. + * tree-vect-stmts.c (vectorizable_call): Same. + (vectorizable_condition): Same. + +2010-03-30 Andreas Krebbel + + * config/s390/s390.c (s390_emit_prologue): Omit issuing a dynamic + stack check if the mask would be zero. + +2010-03-30 Seongbae Park + Jack Howarth + + * tree-profile.c (tree_init_ic_make_global_vars): Make static + variables TLS. + +2010-03-30 Joseph Myers + + PR other/25232 + * libgcc-std.ver (GCC_4.5.0): Define version. Include __unordxf2 + and __unordtf2. + * config/bfin/libgcc-bfin.ver (GCC_4.5.0): Define version. + Include ___unordxf2 and ___unordtf2. + * config/i386/libgcc-glibc.ver: Do not define inheritance from + GCC_4.4.0 here. + +2010-03-30 Tarik Graba + + * config/lm32/t-lm32: New file. + * config.gcc: Use the above file when targetting lm32. + +2010-03-28 Duncan Sands + + * Makefile.in (PLUGIN_HEADERS): Add except.h. + +2010-03-29 Sebastian Pop + + PR middle-end/43431 + * tree-vect-loop.c (vect_estimate_min_profitable_iters): + Improve vectorization cost model diagnostic. + +2010-03-29 Sebastian Pop + + PR middle-end/43436 + * tree-vect-data-refs.c (vect_analyze_data_refs): When + compute_data_dependences_for_loop returns false, early exit + and output an extra diagnostic for the failed data reference + analysis. + +2010-03-29 Richard Guenther + + PR tree-optimization/43560 + * tree-ssa-loop-im.c (ref_always_accessed_p): Add store_p + parameter. + (can_sm_ref_p): Treat stores to readonly locations as + trapping. + +2010-03-29 Jie Zhang + + PR 43564 + * toplev.c (process_options): Set optimization_default_node + and optimization_current_node. + * opts.c (decode_options): Don't set optimization_default_node + and optimization_current_node. + +2010-03-29 Ralf Corsépius + + * config/rtems.h: Abandon -qrtems_debug. + +2010-03-28 Jan Hubicka + + PR tree-optimization/43505 + * cgraph.c (cgraph_clone_node): When clonning a clone, replacement + map should not be copied. + +2010-03-27 John David Anglin + + PR middle-end/41674 + * cgraphunit.c (cgraph_build_static_cdtor): If target doesn't have + cdtors, set DECL_PRESERVE_P. + * ipa.c (cgraph_externally_visible_p): Return true if declaration + should be preseved. + +2010-03-27 Uros Bizjak + + PR tree-optimization/43528 + * stor-layout.c (place_field): Check that constant fits into + unsigned HWI when skipping calculation of MS bitfield layout. + +2010-03-27 Jan Hubicka + + PR middle-end/43391 + * varasm.c (make_decl_rtl): Deal with COMMON flag to make + notice_global_symbol work. + +2010-03-27 Jakub Jelinek + + * dwarf2out.c (dwarf2_debug_hooks): Use dwarf2out_function_decl + instead of dwarf2out_decl. + (struct var_loc_node): Remove section_label field. + (dwarf2out_function_decl): New function. + (dwarf2out_var_location): Don't set section_label field. + (dwarf2out_begin_function): Don't empty decl_loc_table here. + +2010-03-26 Michael Meissner + + PR tree-optimization/43544 + * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION): + First argument for builtin vectorized function hook is now a + tree to be able to distinguish between machine specific and + standard builtins. + * targhooks.c (default_builtin_vectorized_function): Ditto. + * targhooks.h (default_builtin_vectorized_function): Ditto. + * target.h (struct gcc_target): Ditto. + * tree-vect-stmts.c (vectorizable_function): Ditto. + * config/i386/i386.c (ix86_builtin_vectorized_function): Ditto. + * config/rs6000/rs6000.c (rs6000_builtin_vectorized_function): + Ditto. + +2010-03-26 Joseph Myers + + PR c/43381 + * c-decl.c (get_parm_info): Assert that decl going in OTHERS has a + nested binding iff it is a FUNCTION_DECL. + (store_parm_decls_newstyle): Pass nested=true to bind for + FUNCTION_DECLs amongst parameters. + +2010-03-26 Jakub Jelinek + + * var-tracking.c (vt_expand_loc_callback): Don't run + cselib_expand_value_rtx_cb in dummy mode if + cselib_dummy_expand_value_rtx_cb returned false. + + * var-tracking.c (emit_note_insn_var_location): For one part + notes with offset 0, don't add EXPR_LIST around the location. + * dwarf2out.c (loc_descriptor, dw_loc_list_1, + add_location_or_const_value_attribute): Adjust for that change. + + PR debug/43540 + * dwarf2out.c (reg_save): For DW_CFA_expression put regnum + into first operand and location into second. + (dw_cfi_oprnd1_desc): Return dw_cfi_oprnd_reg_num instead of + dw_cfi_oprnd_loc for DW_CFA_expression. + (dw_cfi_oprnd2_desc): Return dw_cfi_oprnd_loc for DW_CFA_expression. + (output_cfa_loc, output_cfa_loc_raw): For DW_CFA_expression + assume first argument is regnum and second argument is location. + +2010-03-26 Uros Bizjak + + PR target/42113 + * config/alpha/alpha.md (*cmp_sadd_si): Change mode + of scratch register to DImode. Split to DImode comparison operator. + Use SImode subreg of scratch register in the multiplication. + (*cmp_sadd_sidi): Ditto. + (*cmp_ssub_si): Ditto. + (*cmp_ssub_sidi): Ditto. + +2010-03-26 Uros Bizjak + + PR target/43524 + * config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]: + Remove invalid assert and wrong comment. + +2010-03-26 Jakub Jelinek + + PR debug/43516 + * flags.h (final_insns_dump_p): New extern. + * final.c (final_insns_dump_p): New variable. + (rest_of_clean_state): Set it before -fdump-final-insns= + dumping, clear afterwards. + * print-rtl.c (print_rtx): If final_insns_dump_p don't dump + MEM_ALIAS_SET on MEMs. + +2010-03-26 David S. Miller + + * configure.ac: Fix sparc GOTDATA_OP bug check. + * configure: Rebuild. + +2010-03-26 Alan Modra + + * config/rs6000/rs6000.md (cmptf_internal2): Correct comparison. + +2010-03-25 Rainer Orth + + * doc/tm.texi (Sections): Document TLS_COMMON_ASM_OP, + TLS_SECTION_ASM_FLAG. + +2010-03-25 Jakub Jelinek + + PR bootstrap/43511 + * config/i386/i386.c (ix86_code_end): Set DECL_WEAK if TARGET_MACHO. + Clear first_function_block_is_cold. + + PR c/43385 + * gimplify.c (gimple_boolify): Only recurse on __builtin_expect + argument if the argument is truth_value_p. + +2010-03-24 Michael Meissner + + * config/rs6000/constraints.md: Update copyright year for my changes. + + PR target/43484 + * config/rs6000/rs6000.c (rs6000_split_multireg_move): If r0 is + used in reg+reg addressing, swap registers. + +2010-03-24 Jakub Jelinek + + PR debug/43293 + * target.h (struct gcc_target): Add code_end hook. + * target-def.h (TARGET_ASM_CODE_END): Define to hook_void_void + if not yet defined. + (TARGET_ASM_OUT): Add TARGET_ASM_CODE_END. + * toplev.c (compile_file): Call targetm.asm_out.code_end + hook before unwind info/debug info output. + * config/i386/winnt.c (i386_pe_file_end): Don't call ix86_file_end. + * config/i386/linux.h (NEED_INDICATE_EXEC_STACK): Don't define. + (TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack. + * config/i386/linux64.h (NEED_INDICATE_EXEC_STACK): Don't define. + (TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack. + * config/i386/i386.c (ix86_file_end): Renamed to... + (ix86_code_end): ... this. Make static. Don't call + file_end_indicate_exec_stack. Emit unwind info using + final_start_function/final_end_function. + (darwin_x86_file_end): Remove. + (TARGET_ASM_CODE_END): Define. + * config/i386/i386.h (TARGET_ASM_FILE_END, + NEED_INDICATE_EXEC_STACK): Don't define. + * config/i386/darwin.h (darwin_x86_file_end): Remove prototype. + (TARGET_ASM_FILE_END): Define to darwin_file_end. + * config/i386/i386-protos.h (ix86_file_end): Remove prototype. + * doc/tm.texi (TARGET_ASM_CODE_END): Document. + + PR target/43498 + * config/i386/i386.c (x86_output_mi_thunk): Call final_start_function + at the beginning and final_end_function at the end. + * config/s390/s390.c (s390_output_mi_thunk): Likewise. + 2010-03-24 Rainer Orth * configure.ac (i[34567]86-*-*): Handle Solaris 2/x86 TLS support @@ -20,8 +349,7 @@ (output_addr_const_extra): Likewise. (output_pic_addr_const): Lowercase @TPOFF. (output_addr_const_extra): Likewise. - * config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase - @TLSGD. + * config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase @TLSGD. (*tls_global_dynamic_64): Likewise. (*tls_local_dynamic_base_32_gnu): Lowercase @TLSLDM. (*tls_local_dynamic_base_64): Lowercase @TLSLD. @@ -31,8 +359,7 @@ * config/i386/sol2-gas.h (TLS_COMMON_ASM_OP): Undef. PR target/38118 - * config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to - tm_file. + * config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to tm_file. * config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Move ... * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): ... here. * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine. @@ -78,12 +405,12 @@ PR target/43348 * ia64.md (call_nogp, call_value_nogp, sibcall_nogp, call_gp, - call_value_gp,sibcall_gp): Use 's' constraint not 'i'. + call_value_gp, sibcall_gp): Use 's' constraint not 'i'. 2010-03-22 H.J. Lu - * config/i386/i386.c (ix86_target_string): Fix a typo in comments. - Add -mfma. + * config/i386/i386.c (ix86_target_string): Add -mfma. + Fix a typo in comment. 2010-03-22 Mike Stump @@ -100,17 +427,15 @@ * doc/configfiles.texi (Configuration Files): Removed fixinc/Makefile*, intl/Makefile.*. - * doc/makefile.texi: Fixed markup. - Abstract from version control system used. + * doc/makefile.texi: Fixed markup. Abstract from version + control system used. (Makefile): Removed obsolete gcc/java/parse.y example. * doc/sourcebuild.texi: Likewise. (Top Level): Added config, gnattools, libdecnumber, libgcc, - libgomp, libssp. - Removed fastjar. + libgomp, libssp. Removed fastjar. (Miscellaneous Docs): Clarify location. Added COPYING3, COPYING3.LIB. - (Front End Directory): Moved Make-lang.in entry to new - subsubsection. + (Front End Directory): Moved Make-lang.in entry to new subsubsection. 2010-03-22 Rainer Orth @@ -197,8 +522,8 @@ 2010-03-19 Andrew Pinski PR c/43211 - * c-decl.c (grokparms): Set arg_types to NULL_TREE if there was an - error. + * c-decl.c (grokparms): Set arg_types to NULL_TREE if there was + an error. 2010-03-19 Bernd Schmidt @@ -297,8 +622,7 @@ PR bootstrap/43403 * var-tracking.c (vt_init_cfa_base): Do nothing if - cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed - register. + cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed register. 2010-03-18 Alexandre Oliva @@ -324,8 +648,7 @@ * cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare. * cgraphunit.c (cgraph_materialize_all_clones): Update calls in all non-clones. Moved call redirection... - (cgraph_redirect_edge_call_stmt_to_callee): ...to this new - function. + (cgraph_redirect_edge_call_stmt_to_callee): ...to this new function. (cgraph_materialize_all_clones): Dispose of all combined_args_to_skip bitmaps. (verify_cgraph_node): Do not check for edges pointing to wrong @@ -396,8 +719,7 @@ appending a use to an empty chain. (build_def_use): Remove previous changes that convert OP_INOUT to OP_OUT operands; instead detect the case where an OP_INOUT operand - uses a previously untracked register and create an empty chain for - it. + uses a previously untracked register and create an empty chain for it. 2010-03-17 Ralf Wildenhues @@ -435,9 +757,8 @@ 2010-03-16 Richard Guenther PR middle-end/43379 - * tree-cfg.c (gimple_merge_blocks): When propagating virtual - PHI operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI - properly. + * tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI + operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly. 2010-03-16 Aldy Hernandez Alexandre Oliva @@ -455,7 +776,7 @@ cfa_base_preserved_val): New static variables. (preserve_only_constants): New function. (cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't - clear its REG_VALUES. If cselib_preserve_constants, don't + clear its REG_VALUES. If cselib_preserve_constants, don't empty the whole hash table, but preserve there VALUEs with constants, cfa_base_preserved_val and cfa_base_preserved_val plus constant. (cselib_preserve_cfa_base_value): New function.