1 2011-01-11 Richard Henderson <rth@redhat.com>
3 * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
4 (DEBUGGER_AUTO_OFFSET): Remove.
5 (DEBUGGER_ARG_OFFSET): Remove.
7 * config/mn10300/mn10300.c (mn10300_gen_multiple_store): Make static.
8 Emit register stores with the same offsets as the hardware.
9 (mn10300_store_multiple_operation): Don't check that the register
10 save offsets are monotonic.
11 * config/mn10300/mn10300-protos.h: Update.
13 * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
15 * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
16 in terms of the value on the stack, not the MDR register.
18 2011-01-11 Jan Hubicka <jh@suse.cz>
22 * tree.h (symbol_alias_set_t): Move typedef here from varasm.c
23 (symbol_alias_set_destroy, symbol_alias_set_contains,
24 propagate_aliases_backward): Declare.
25 * lto-streamer-out.c (struct sets): New sturcture.
26 (trivally_defined_alias): New function.
27 (output_alias_pair_p): Rewrite.
28 (output_unreferenced_globals): Fix output of alias pairs.
29 (produce_symtab): Likewise.
30 * ipa.c (function_and_variable_visibility): Set weak alias destination
32 * varasm.c (symbol_alias_set_t): Remove.
33 (symbol_alias_set_destroy): Export.
34 (propagate_aliases_forward, propagate_aliases_backward): New functions
36 (compute_visible_aliases): ... this one; remove.
37 (trivially_visible_alias): New
38 (trivially_defined_alias): New.
39 (remove_unreachable_alias_pairs): Rewrite.
40 (finish_aliases_1): Reorganize code checking if alias is defined.
41 * passes.c (rest_of_decl_compilation): Do not call assemble_alias when
44 2011-01-11 Richard Guenther <rguenther@suse.de>
46 PR tree-optimization/46076
47 * tree-ssa.c (useless_type_conversion_p): Conversions from
48 unprototyped to empty argument list function types are useless.
50 2011-01-11 Richard Guenther <rguenther@suse.de>
53 * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
54 volatile MEMs as MEM_READONLY_P.
56 2011-01-11 Richard Guenther <rguenther@suse.de>
58 PR tree-optimization/47239
59 * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
61 2011-01-11 Jeff Law <law@redhat.com>
63 * PR tree-optimization/47086
64 * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
65 IVs from statements that might throw.
67 2011-01-10 Jan Hubicka <jh@suse.cz>
70 * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
72 2011-01-10 Jan Hubicka <jh@suse.cz>
75 * profile.c (read_profile_edge_counts): Ignore profile inconistency
76 when correcting profile.
78 2011-01-10 Jan Hubicka <jh@suse.cz>
81 * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
83 * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
84 Restore DECL_FINI_PRIORITY.
86 2011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
88 * doc/gimple.texi: Fix quoting of multi-word return values in
89 @deftypefn statements. Ensure presence of return value. Wrap
90 overlong @deftypefn lines.
91 (is_gimple_operand, is_gimple_min_invariant_address): Remove
92 descriptions of removed functions.
93 * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
94 of multi-word return value in @deftypefn statement.
96 2011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
98 * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
99 (Conditional Expressions, Logical Operators)
100 (Statement and operand traversals): Do not indent smallexample
101 code. Fix duplicate function argument in example.
103 2011-01-10 Jeff Law <law@redhat.com>
105 * PR tree-optimization/47141
106 * ipa-split.c (split_function): Handle case where we are
107 returning a value and the return block has a virtual operand phi.
109 2011-01-10 Jan Hubicka <jh@suse.cz>
111 PR tree-optimization/47234
112 * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
113 (pass_feedback_split_functions): Declare.
114 * passes.c (init_optimization_passes): Add ipa-split as subpass of
116 * ipa-split.c (gate_split_functions): Update comments; disable
117 split-functions for profile_arc_flag and branch_probabilities.
118 (gate_feedback_split_functions): New function.
119 (execute_feedback_split_functions): New function.
120 (pass_feedback_split_functions): New global var.
122 2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
125 * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
126 calling gimple_call_set_cannot_inline.
128 2011-01-10 Iain Sandoe <iains@gcc.gnu.org>
130 * config/darwin-sections.def: Remove unused section.
132 2011-01-10 Dave Korn <dave.korn.cygwin@gmail.com>
135 * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
137 2011-01-09 Nicola Pero <nicola.pero@meta-innovation.com>
140 * c-parser.c (c_parser_declaration_or_fndef): Improved
143 2011-01-09 Kai Tietz <kai.tietz@onevision.com>
145 * config/i386/winnt.c (i386_pe_start_function): Make sure
146 to switch back to function's section.
148 2011-01-09 Iain Sandoe <iains@gcc.gnu.org>
152 * plugin.c: Move include of dlfcn.h from here...
153 * system.h: ... to here.
155 2011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
157 * doc/cpp.texi (C++ Named Operators): Fix markup for header
159 * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
160 two extra empty pages in PDF output.
162 2011-01-08 Nicola Pero <nicola.pero@meta-innovation.com>
165 * c-parser.c (c_parser_objc_type_name): If the type is unknown,
166 for error recovery purposes behave as if it was not specified so
167 that the default type is usd.
169 2011-01-07 Jan Hubicka <jh@suse.cz>
171 PR tree-optmization/46469
172 * ipa.c (function_and_variable_visibility): Clear needed flags on
173 nodes with external decls; handle weakrefs merging correctly.
175 2011-01-07 Joseph Myers <joseph@codesourcery.com>
177 * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
180 2011-01-07 Jan Hubicka <jh@suse.cz>
182 * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
183 and no longer claim that gold is required for linker plugin.
184 * configure: Regenerate.
185 * gcc.c (PLUGIN_COND): New macro.
186 (LINK_COMMAND_SPEC): Use it.
187 (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
188 * config.in (HAVE_LTO_PLUGIN): New.
189 * configure.ac (--with-lto-plugin): New parameter; autodetect
192 2011-01-07 Jan Hubicka <jh@suse.cz>
194 PR tree-optimization/46367
195 * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
196 when we can update original.
197 (cgraph_mark_inline_edge): Sanity check.
198 * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
200 2011-01-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
202 * config/spu/spu.h (ASM_COMMENT_START): Define.
204 2011-01-07 H.J. Lu <hongjiu.lu@intel.com>
208 (SWITCH_KEEP_FOR_GCC): Likewise.
209 (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
210 (do_spec_1): Handle "%>".
212 * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
214 2011-01-07 Jakub Jelinek <jakub@redhat.com>
217 * config/i386/i386.c (ix86_delegitimize_address): If
218 simplify_gen_subreg fails, return orig_x.
221 * value-prof.c (gimple_stringop_fixed_value): Handle
222 lhs of the call properly.
224 2011-01-07 Jan Hubicka <jh@suse.cz>
227 * lto-opt.c (lto_reissue_options): Set flag_shlib.
229 2011-01-07 Iain Sandoe <iains@gcc.gnu.org>
231 * target.def (function_switched_text_sections): New hook.
232 * doc/tm.texi: Regenerated.
233 * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
234 * final.c (default_function_switched_text_sections): New.
235 (final_scan_insn): Call function_switched_text_sections when a
236 mid-function section change occurs.
237 * output.h (default_function_switched_text_sections): Declare.
238 * config/darwin-protos.h (darwin_function_switched_text_sections):
240 * config/darwin.c (darwin_function_switched_text_sections): New.
241 * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
243 2011-01-07 Iain Sandoe <iains@gcc.gnu.org>
245 * dwarf2out.c (gen_subprogram_die): Add pubnames with code ranges for
246 DWARF >= 3. Add pubnames for the primary section and a reduced DIE for
247 the secondary code fragment when outputting for DWARF == 2.
249 2011-01-07 Anatoly Sokolov <aesok@post.ru>
251 * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
252 * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
254 * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
255 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
257 2011-01-06 Eric Botcazou <ebotcazou@adacore.com>
260 * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section
261 only when it is not empty.
263 2011-01-06 Changpeng Fang <changpeng.fang@amd.com>
266 * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
267 (case ${target}): Add btver1.
268 * config/i386/driver-i386.c (host_detect_local_cpu): Let
269 -march=native recognize btver1 processors.
270 * config/i386/i386-c.c (ix86_target_macros_internal): Add
272 * config/i386/i386.c (struct processor_costs btver1_cost): New
274 (m_BTVER1): New definition.
275 (m_AMD_MULTIPLE): Includes m_BTVER1.
276 (initial_ix86_tune_features): Add btver1 tune.
277 (processor_target_table): Add btver1 entry.
278 (static const char *const cpu_names): Add btver1 entry.
279 (software_prefetching_beneficial_p): Add btver1.
280 (ix86_option_override_internal): Add btver1 instruction sets.
281 (ix86_issue_rate): Add btver1.
282 (ix86_adjust_cost): Add btver1.
283 * config/i386/i386.h (TARGET_BTVER1): New definition.
284 (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
285 (enum processor_type): Add PROCESSOR_BTVER1.
286 * config/i386/i386.md (define_attr "cpu"): Add btver1.
288 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
291 * config/i386/i386.c (legitimize_tls_address)
292 <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
293 * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
294 (tls_initial_exec_64_sun): New pattern.
296 2011-01-06 Gerald Pfeifer <gerald@pfeifer.com>
298 * doc/invoke.texi (Overall Options): Improve wording and markup
299 of the description of -wrapper.
301 2011-01-06 Joseph Myers <joseph@codesourcery.com>
303 * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
304 rdynamic, threads): New Driver options.
306 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
309 * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
310 if coming from .tdata.
311 * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
313 2011-01-06 Jan Hubicka <jh@suse.cz>
316 * collect2.c (main): Do not enable LTOmode when plugin is active.
318 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
321 * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
322 --version output if supported.
323 * configure: Regenerate.
325 2011-01-06 Joseph Myers <joseph@codesourcery.com>
327 * config/linux-android.opt (tno-android-cc, tno-android-ld): New
330 2011-01-06 Jakub Jelinek <jakub@redhat.com>
333 * c-convert.c (convert): When converting a complex expression
334 other than COMPLEX_EXPR to a different complex type, ensure
335 c_save_expr is called instead of save_expr, unless in_late_binary_op.
336 * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
337 when converting COMPLEX_TYPE.
339 2011-01-06 Ira Rosen <irar@il.ibm.com>
341 PR tree-optimization/47139
342 * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
343 only the last reduction value is used outside the loop. Update
346 2011-01-05 Joseph Myers <joseph@codesourcery.com>
348 * config/rtems.opt: New.
349 * config.gcc (*-*-rtems*): Use rtems.opt.
351 2011-01-05 Changpeng Fang <changpeng.fang@amd.com>
353 * config/i386/i386.c (ix86_option_override_internal): Bulldozer
354 processors do not support 3DNow instructions.
356 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
358 * config/spu/spu.c (spu_option_override): Set parameter
359 PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
361 2011-01-05 Jan Hubicka <jh@suse.cz>
363 * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
366 2011-01-05 Martin Jambor <mjambor@suse.cz>
369 * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
370 deltas on streamed outgoing edges.
371 (output_node_opt_summary): Output info for outgoing edges only when
372 the node is in new parameter set.
373 (output_cgraph_opt_summary): New parameter set, passed to the two
374 aforementioned functions. Update its forward declaration and its
377 2011-01-05 Tom Tromey <tromey@redhat.com>
379 * c-parser.c (c_parser_omp_atomic): Pass location of assignment
380 operator to c_finish_omp_atomic.
381 * c-typeck.c (lvalue_or_else): Add 'loc' argument.
382 (build_unary_op): Update.
383 (build_modify_expr): Update.
384 (build_asm_expr): Update.
386 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
388 * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
389 newly inserted insns.
391 (spu_emit_branch_hint): Likewise.
392 (insert_hbrp_for_ilb_runout): Likewise.
393 (spu_machine_dependent_reorg): Call df_finish_pass after
394 schedule_insns returns.
396 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
398 * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
400 2011-01-05 Eric Botcazou <ebotcazou@adacore.com>
402 PR tree-optimization/47005
403 * tree-sra.c (struct access): Add 'non_addressable' bit.
404 (create_access): Set it for a DECL_NONADDRESSABLE_P field.
405 (decide_one_param_reduction): Return 0 if the parameter is passed by
406 reference and one of the accesses in the group is non_addressable.
408 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
410 PR tree-optimization/47056
411 * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
412 (mark_load): Likewise. Handle FUNCTION_DECL specially.
413 (mark_store): Likewise. Pass STMT to ipa_record_reference.
415 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
417 * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
418 initializer. Skip view conversions from aggregate types.
420 2011-01-04 Kai Tietz <kai.tietz@onevision.com>
423 * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
425 2011-01-04 Philipp Thomas <pth@suse.de>
427 * config/microblaze/microbalse.opt (mxl-float-convert): Fix
430 2011-01-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
432 * function.c (thread_prologue_and_epilogue_insns): Do not crash
433 on empty epilogue sequences.
435 2011-01-04 Joseph Myers <joseph@codesourcery.com>
437 * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
438 non-static): New Driver options.
440 2011-01-04 Jie Zhang <jie@codesourcery.com>
443 * gcc.c (default_compilers[]): Set combinable field to 0
444 for all assembly languages.
446 2011-01-04 Mingjie Xing <mingjie.xing@gmail.com>
448 * config/mips/loongson3a.md: New file.
449 * config/mips/mips.md: Include loongson3a.md.
450 * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
453 2011-01-03 Eric Botcazou <ebotcazou@adacore.com>
456 * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
457 instead of convert_memory_address_addr_space on the base expression.
459 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
461 * config/spu/spu.c (spu_option_override): Update error text
462 for bad -march= / -mtune= values.
464 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
466 * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
467 if branch-hint optimization will be performed.
469 2011-01-03 Jakub Jelinek <jakub@redhat.com>
471 PR tree-optimization/47148
472 * ipa-split.c (split_function): Convert arguments to
473 DECL_ARG_TYPE if possible.
475 PR tree-optimization/47155
476 * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
479 PR rtl-optimization/47157
480 * combine.c (try_combine): If undobuf.other_insn becomes
481 (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
482 and set *new_direct_jump_p too.
484 2011-01-03 Sebastian Pop <sebastian.pop@amd.com>
486 PR tree-optimization/47021
487 * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
489 2011-01-03 Jakub Jelinek <jakub@redhat.com>
491 * gcc.c (process_command): Update copyright notice dates.
492 * gcov.c (print_version): Likewise.
493 * gcov-dump.c (print_version): Likewise.
494 * mips-tfile.c (main): Likewise.
495 * mips-tdump.c (main): Likewise.
497 2011-01-03 Martin Jambor <mjambor@suse.cz>
499 PR tree-optimization/46801
500 * tree-sra.c (type_internals_preclude_sra_p): Check whether
501 aggregate fields start at byte boundary instead of the bit-field flag.
503 2011-01-03 H.J. Lu <hongjiu.lu@intel.com>
506 * gcc.c (main): Revert revision 168407.
508 2011-01-03 Martin Jambor <mjambor@suse.cz>
510 * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
512 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
514 * tree-vect-generic.c (expand_vector_operations_1): When using vector/
515 vector optab to expand vector/scalar shift, update gimple to vector.
517 2011-01-03 Martin Jambor <mjambor@suse.cz>
519 * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
522 2011-01-03 Martin Jambor <mjambor@suse.cz>
524 PR tree-optimization/46984
525 * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
527 (cgraph_create_indirect_edge): Fixed line length.
528 (cgraph_indirect_call_info): Declare.
529 (cgraph_make_edge_direct) Update declaration.
530 * cgraph.c (cgraph_allocate_init_indirect_info): New function.
531 (cgraph_create_indirect_edge): Use it.
532 (cgraph_make_edge_direct): Made delta HOST_WIDE_INT. Updated all
534 * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
535 the new thunk_delta representation.
536 * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
538 (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
539 (ipa_read_indirect_edge_info): Likewise.
540 * lto-cgraph.c (output_edge_opt_summary): New function.
541 (output_node_opt_summary): Call it on all outgoing edges.
542 (input_edge_opt_summary): New function.
543 (input_node_opt_summary): Call it on all outgoing edges.
545 2011-01-02 H.J. Lu <hongjiu.lu@intel.com>
548 * gcc.c (main): Don't check have_o when settting combine_inputs.
550 2011-01-02 Eric Botcazou <ebotcazou@adacore.com>
552 * regrename.c: Add general comment describing the pass.
553 (struct du_head): Remove 'length' field.
554 (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
555 (regrename_optimize): Do not sort chains. Rework comments, add others.
556 Force renaming to the preferred class (if any) in the first pass and do
557 not consider registers that belong to it in the second pass.
558 (create_new_chain): Do not set 'length' field.
559 (scan_rtx_reg): Likewise.
561 2011-01-02 Jakub Jelinek <jakub@redhat.com>
563 PR tree-optimization/47140
564 * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
565 TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
568 PR rtl-optimization/47028
569 * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
570 parm_birth_insn instead of at the beginning of first bb.
572 2011-01-02 Mingjie Xing <mingjie.xing@gmail.com>
574 * doc/generic.texi: Remove duplicated "@subsubsection Statements".
575 Remove the word "see" before "@pxref".
576 * doc/rtl.texi: Remove the word "see" before "@pxref".
578 2011-01-01 Jan Hubicka <jh@suse.cz>
580 * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
583 2011-01-01 Kai Tietz <kai.tietz@onevision.com>
586 * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
589 Copyright (C) 2011 Free Software Foundation, Inc.
591 Copying and distribution of this file, with or without modification,
592 are permitted in any medium without royalty provided the copyright
593 notice and this notice are preserved.