X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2FChangeLog;h=8ee8c20897632d4e67781931873f6a8ca3493177;hp=72c4c9a43cdfb5c5067faccb0acfcbe550d8fda1;hb=c1da6fc5a725c08435cefcb1ba840c8f72396121;hpb=6470e3d1083c25d0ea44e8ac84c37c6bffc9e99b diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 72c4c9a43cd..8ee8c208976 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,364 @@ +2010-04-25 Uros Bizjak + + * config/i386/gmon-sol2.c (_mcleanup): Change format string + placeholder from 0x%x to %#x. + * config/i386/i386elf.h (ASM_OUTPUT_ASCII): Ditto. + * config/i386/i386-interix.h (ASM_OUTPUT_ASCII): Ditto. + * config/i386/att.h (ASM_OUTPUT_ASCII): Ditto. + * config/i386/sysv4.h (ASM_OUTPUT_ASCII): Ditto. + * config/i386/i386.c (ix86_target_string): Ditto. + (output_pic_addr_const): Ditto. + (print_operand): Ditto. + +2010-04-25 Paolo Bonzini + + * combine.c (find_split_point): Add third argument. Use it + to find nested multiply-accumulate instructions. Adjust calls. + (try_combine): Adjust call to find_split_point. + +2010-04-24 Gerald Pfeifer + + * doc/contrib.texi (Contributors): Add Dodji Seketeli. + +2010-04-24 Bernd Schmidt + + PR tree-optimization/41442 + * fold-const.c (merge_truthop_with_opposite_arm): New function. + (fold_binary_loc): Call it. + +2010-04-23 Manuel López-Ibáñez + + * toplev.c (general_init): Set default for fdiagnostics-show-option. + * opts.c (common_handle_option): Allow disabling it. + * common.opt (fdiagnostics-show-option): Add Var. Enabled by default. + +2010-04-23 Eric Botcazou + + * expr.c (expand_expr_real_1) : Only use conversion + between modes if both types are integral. + +2010-04-23 Richard Guenther + + PR tree-optimization/43572 + * tree-tailcall.c (find_tail_calls): Allow PARM_DECL uses. + +2010-04-23 Richard Guenther + + PR lto/43455 + * tree-inline.c (tree_can_inline_p): Also check compatibility + of return types. + +2010-04-23 Martin Jambor + + PR tree-optimization/43846 + * tree-sra.c (struct access): New flag grp_assignment_read. + (build_accesses_from_assign): Set grp_assignment_read. + (sort_and_splice_var_accesses): Propagate grp_assignment_read. + (enum mark_read_status): New type. + (analyze_access_subtree): Propagate grp_assignment_read, create + accesses also if both direct_read and root->grp_assignment_read. + +2010-04-23 Martin Jambor + + PR middle-end/43835 + * tree-sra.c (ipa_sra_preliminary_function_checks): Check that the + function does not have type attributes. + +2010-04-23 Richard Guenther + + PR lto/42653 + * tree.c (free_lang_data_in_decl): Do not reset DECL_CONTEXT + of FUNCTION_DECLs. + +2010-04-22 Laurynas Biveinis + + * sese.h (create_if_region_on_edge): Remove. + + * sese.c (create_if_region_on_edge): Make static. + + * tree-inline.c: Do not include ggc.h. + + * expr.c: Do not include ggc.h. + + * Makefile.in (tree-inline.o, expr.o): Remove $(GGC_H) from + dependencies. + +2010-04-22 Kaz Kojima + + PR target/43744 + * config/sh/sh.c (find_barrier): Don't emit a constant pool + in the middle of insns for casesi_worker_2. + +2010-04-22 David Edelsohn + + * config/rs6000/x-aix: Override LDFLAGS for all COMPILERS. + +2010-04-22 Ira Rosen + + PR tree-optimization/43842 + * tree-vect-loop.c (vect_create_epilog_for_reduction): Handle + loop unrolling in update of exit phis. Fix comment. + * tree-vect-slp.c (vect_analyze_slp): Check that there are at + least two reduction statements in the loop before starting SLP + analysis. + +2010-04-22 Nick Clifton + + * config/stormy16/stormy16-lib2.c (__ucmpsi2): Fix thinko. + +2010-04-22 Alexander Monakov + + * tree-ssa-reassoc.c (eliminate_plus_minus_pair): Handle BIT_NOT_EXPR + to simplify a + ~a. + +2010-04-22 Laurynas Biveinis + + * tree-parloops.c (loop_parallel_p): New argument + parloop_obstack. Pass it down. + (parallelize_loops): New variable parloop_obstack. Initialize it, + pass it down, free it. + + * tree-loop-linear.c (linear_transform_loops): Pass down + lambda_obstack. + + * tree-data-ref.h (lambda_compute_access_matrices): New argument + of type struct obstack *. + + * tree-data-ref.c (analyze_subscript_affine_affine): New variable + scratch_obstack. Initialize it, pass down, free it. + + * lambda.h (lambda_loop_new): Remove. + (lambda_matrix_new, lambda_matrix_inverse) + (lambda_trans_matrix_new, lambda_trans_matrix_inverse): New + argument of type struct obstack *. + + * lambda-trans.c (lambda_trans_matrix_new): New argument + lambda_obstack. Pass it down, use obstack allocation for ret. + (lambda_trans_matrix_inverse): New argument lambda_obstack. Pass + it down. + + * lambda-mat.c (lambda_matrix_get_column) + (lambda_matrix_project_to_null): Remove. + (lambda_matrix_new): New argument lambda_obstack. Use obstack + allocation for mat. + (lambda_matrix_inverse_hard, lambda_matrix_inverse): New argument + lambda_obstack. + + * lambda-code.c (lambda_loop_new): New function. + (lambda_lattice_new, compute_nest_using_fourier_motzkin) + (lambda_compute_auxillary_space, lambda_compute_target_space) + (lambda_loopnest_transform, gcc_loop_to_lambda_loop) + (lambda_loopnest_to_gcc_loopnest): Pass down lambda_obstack. + (build_access_matrix): New argument lambda_obstack. Use obstack + allocation for am. + (lambda_compute_step_signs, lambda_compute_access_matrices): New + argument lambda_obstack. Pass it down. + +2010-04-22 Bernd Schmidt + + * optabs.h (expand_widening_mult): Declare. + +2010-04-22 Richard Guenther + + PR tree-optimization/43845 + * tree-ssa-pre.c (create_component_ref_by_pieces_1): Properly + lookup the CALL_EXPR function and arguments. + +2010-04-22 Nick Clifton + + * config/stormy16/stormy16.c + (xstormy16_asm_output_aligned_common): Handle a NULL decl parameter. + * config/stormy16/stormy16.h: Tidy up formatting. + (DONT_USE_BUILTIN_SETJMP): Remove definition. + * config/stormy16/stormy16.c (cbranchsi4): Delete pattern. + (ineqbranchsi): Delete pattern. + * config/stormy16/stormy16-lib2-ucmpsi2.c: New file. + * config/stormy16/stormy16-lib2.c (__ucmpsi2): New function. + * config/stormy16/t-stormy16 (LIB2FUNCS_EXTRA): Add + stormy16-lib2-ucmpsi2.c. + +2010-04-22 Bernd Schmidt + + * ifcvt.c (dead_or_predicable): Use df_simulate_find_defs and + df_simulate_find_noclobber_defs as appropriate. Keep track of an + extra set merge_set_noclobber, and use it to relax the final test + slightly. + * df.h (df_simulate_find_noclobber_defs): Declare. + * df-problems.c (df_simulate_find_defs): Don't ignore partial or + conditional defs. + (df_simulate_find_noclobber_defs): New function. + +2010-04-22 Uros Bizjak + + * config/i386/i386.md: Use {} around multi-line preparation statements. + +2010-04-22 Laurynas Biveinis + + * c-tree.h (push_init_level, pop_init_level, set_init_index) + (process_init_element): New argument of type struct obstack *. + + * c-typeck.c (push_init_level, pop_init_level, set_designator) + (set_init_index, set_init_label, set_nonincremental_init) + (set_nonincremental_init_from_string, find_init_member) + (output_init_element, output_pending_init_elements) + (process_init_element): New argument braced_init_obstack. Pass it + down. + (push_range_stack, add_pending_init): New argument + braced_init_obstack. Use obstack allocation. + + * c-parser.c (c_parser_initelt, c_parser_initval): New argument + braced_init_obstack. Pass it down. + (c_parser_braced_init): New variables ret, braced_init_obstack. + Initialize obstack, pass it down and finally free it. + +2010-04-22 Bernd Schmidt + + PR middle-end/29274 + * tree-pass.h (pass_optimize_widening_mul): Declare. + * tree-ssa-math-opts.c (execute_optimize_widening_mul, + gate_optimize_widening_mul): New static functions. + (pass_optimize_widening_mul): New. + * expr.c (expand_expr_real_2) : New case. + : Remove support for widening multiplies. + * tree.def (WIDEN_MULT_EXPR): Tweak comment. + * cfgexpand.c (expand_debug_expr) : Use + simplify_gen_unary rather than directly building extensions. + * tree-cfg.c (verify_gimple_assign_binary): Add tests for + WIDEN_MULT_EXPR. + * expmed.c (expand_widening_mult): New function. + * passes.c (init_optimization_passes): Add pass_optimize_widening_mul. + +2010-04-21 Jan Hubicka + + * timevar.def (TV_WHOPR_WPA_FIXUP): Remove. + * lto-section-in.c (lto_section_name): Remove wpa_fixup. + * lto-wpa-fixup.c: Remove. + * Makefile.in (lto-wpa-fixup.o): Remove. + * passes.c (init_optimization_passes): Remove pass_ipa_lto_wpa_fixup. + (execute_all_ipa_transforms): Set cgraph_state to CGRAPH_STATE_IPA_SSA. + * lto-streamer.c (lto_get_section_name): Remove wpa_fixup section. + +2010-04-21 Jan Hubicka + + * tree-pass.h (ipa_opt_pass_d): Rename function_read_summary; + add write_optimization_summary, read_optimization_summary. + (ipa_write_summaries_of_cgraph_node_set): Remove. + (ipa_write_optimization_summaries): Declare. + (ipa_read_optimization_summaries): Declare. + * ipa-cp.c (pass_ipa_cp): Update. + * ipa-reference.c (pass_ipa_reference): Update. + * ipa-pure-const.c (pass_ipa_pure_const): Update. + * lto-streamer-out.c (pass_ipa_lto_gimple, pass_ipa_lto_finish): + Update. + * ipa-inline.c (pass_ipa_inline): Update. + * ipa.c (pass_ipa_whole_program): Update. + * lto-wpa-fixup.c (pass_ipa_lto_wpa_fixup): Update. + * passes.c (ipa_write_summaries_1): Do not test wpa. + (ipa_write_optimization_summaries_1): New. + (ipa_write_optimization_summaries): New. + (ipa_read_summaries): Do not test ltrans. + (ipa_read_optimization_summaries_1): New. + (ipa_read_optimization_summaries): New. + +2010-04-21 Jan Hubicka + + * lto-cgraph.c (lto_output_node): Do not output comdat groups + for boundary nodes. + (output_cgraph): Do not arrange comdat groups for boundary nodes. + +2010-04-21 Jakub Jelinek + + PR debug/40040 + * dwarf2out.c (add_name_and_src_coords_attributes): Add + DW_AT_{,MIPS_}linkage_name even for Fortran decls. + +2010-04-21 Jan Hubicka + + * ipa-prop.c (ipa_edge_removal_hook): Check for bounds. + +2010-04-21 Jan Hubicka + + * varpool.c (decide_is_variable_needed): Variable is always needed + during ltrans. + +2010-04-21 Jan Hubicka + + * opts.c (decode_options): Enable pure-const pass for whopr. + +2010-04-21 Jan Hubicka + + * cgraph.c (dump_cgraph_node): Dump also assembler name. + * ipa-inline.c (cgraph_decide_inlining_of_small_functions): Do not ice + at WPA dumping. + (cgraph_decide_inlining): Do not expect callee to be removed in all + cases. + +2010-04-21 Eric B. Weddington + + * config/avr/avr-devices.c (avr_mcu_types): Add missing comma. + +2010-04-21 Uros Bizjak + + * config/i386/i386.md (x86_shrd): Add athlon_decode and + amdfam10_decode attributes. + +2010-04-21 Jakub Jelinek + + PR middle-end/43570 + * omp-low.c (scan_sharing_clauses): Don't scan_omp_op + OMP_CLAUSE_DECL for OMP_CLAUSE_COPYPRIVATE. + (lower_copyprivate_clauses): Use private var in outer + context instead of original var. Make sure the types + are correct for VLAs. + +2010-04-21 Richard Guenther + + * tree-ssa-structalias.c (do_ds_constraint): Avoid escaping + to non-pointer objects. + +2010-04-21 Jakub Jelinek + + * dwarf2out.c (add_var_loc_to_decl): Add LABEL argument. Drop + last chain entry if it starts with the still current label. + (add_location_or_const_value_attribute): Check that + loc_list->first->next is NULL instead of comparing ->first with ->last. + (dwarf2out_var_location): Pass last_label resp. last_postcall_label + to add_var_loc_to_decl. + + * dwarf2out.c (output_call_frame_info): For dw_cie_version + >= 4 add also address size and segment size fields into CIE header. + + * unwind-dw2.c (extract_cie_info): Handle CIE version 4, as + long as address size is the same as sizeof (void *) and + segment size is 0. + * unwind-dw2-fde.c (get_cie_encoding): Likewise. If + address size or segment size is unexpected, return DW_EH_PE_omit. + (classify_object_over_fdes): If get_cie_encoding returned + DW_EH_PE_omit, return -1. + (init_object): If classify_object_over_fdes returned -1, + pretend there were no FDEs at all. + +2010-04-21 Uros Bizjak + + * config/i386/i386.md (bswap2): Macroize expander from + bswap{si,di}2 using SWI48 mode iterator. + (*bswap2_movbe): Macroize insn from *bswap{si,di}_movbe using + SWI48 mode iterator. Set type attribute of bswap insn to bitmanip, + set modrm attribute of bswap insn to 0 and remove length attribute. + (*bswap2_1): Macroize insn from *bswap{si,di}_1 using SWI48 mode + iterator. Set type attribute to bitmanip, set modrm attribute to 0, + set mode attribute to and remove length attribute. + +2010-04-20 James E. Wilson + + PR rtl-optimization/43520 + * ira-lives.c (ira_implicitly_set_insn_hard_regs): Exclude classes with + zero available registers. + +2010-04-20 Kaveh R. Ghazi + + * builtins.c (fold_builtin_cproj): Fold more cases. + 2010-04-20 Kaveh R. Ghazi * builtins.c (build_complex_cproj, fold_builtin_cproj): New. @@ -110,7 +471,6 @@ 2010-04-19 James E. Wilson - PR rtl-optimization/43520 * config/ia64/ia64.h (FIXED_REGISTERS, CALL_USED_REGISTERS): Make ar.lc fixed and call-used. @@ -219,7 +579,7 @@ PR target/43662 * reginfo.c (reinit_regs): Set caller_save_initialized_p to false. -2010-04-19 Ira Rosen +2010-04-19 Ira Rosen PR tree-optimization/37027 * tree-vectorizer.h (struct _loop_vec_info): Add new field reductions @@ -284,7 +644,7 @@ * gcc.c (main): Search for liblto_plugin.so with mode R_OK. -2010-04-18 Ira Rosen +2010-04-18 Ira Rosen PR tree-optimization/43771 * tree-vect-slp.c (vect_supported_load_permutation_p): Check that @@ -4497,7 +4857,7 @@ statements ... (vrp_visit_phi_node): ... but only for loop PHI nodes. -2010-02-16 Ira Rosen +2010-02-16 Ira Rosen PR tree-optimization/43074 * tree-vectorizer.h (VECTORIZABLE_CYCLE_DEF): New.