1 2011-01-14 Mike Stump <mikestump@comcast.net>
3 * config/alpha/alpha.md (umk_mismatch_args): Don't put a mode on set.
4 * config/fr30/fr30.md: Likweise
5 (movsi_push): Likewise.
7 (enter_func): Likewise.
8 * config/moxie/moxie.md (movsi_push): Likewise.
11 2011-01-14 Joseph Myers <joseph@codesourcery.com>
13 * config/mips/linux64.h (LINK_SPEC): Remove %{bestGnum}
14 %{no_archive} %{exact_version}.
15 * config/mips/mips.h (LINK_SPEC): Remove %{bestGnum}.
16 * config/mips/netbsd.h (LINK_SPEC): Remove %{bestGnum}
17 %{no_archive} %{exact_version}.
18 * config/mips/openbsd.h (LINK_SPEC): Likewise.
19 * config/mips/sde.h (LINK_SPEC): Remove %{bestGnum}.
20 * config/mips/vxworks.h: Likewise.
22 2011-01-14 Joseph Myers <joseph@codesourcery.com>
24 * config/microblaze/microblaze.h (ASM_SPEC): Remove
27 2011-01-14 Joseph Myers <joseph@codesourcery.com>
29 * config/m32r/little.h (CPP_ENDIAN_SPEC, CC1_ENDIAN_SPEC,
30 ASM_ENDIAN_SPEC, LINK_ENDIAN_SPEC): Remove.
32 2011-01-14 Joseph Myers <joseph@codesourcery.com>
34 * config/i386/nwld.h (LINK_SPEC): Check -nodefaultlibs not
37 2011-01-14 Joseph Myers <joseph@codesourcery.com>
39 * config/cris/cris.h (ASM_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check
41 * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC,
42 CRIS_CC1_SUBTARGET_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check for mcpu
44 (CRIS_LINK_SUBTARGET_SPEC): Don't generate -rpath-link options.
47 2011-01-14 Joseph Myers <joseph@codesourcery.com>
49 * config/avr/avr.h (CPP_SPEC): Don't handle -posix.
50 (CC1_SPEC): Don't handle -profile.
52 2011-01-14 Joseph Myers <joseph@codesourcery.com>
54 * config/microblaze/microblaze.h (CC1_SPEC): Remove -gline spec.
55 * config/mips/mips.h (CC1_SPEC): Likewise.
57 2011-01-14 Joseph Myers <joseph@codesourcery.com>
59 * config/microblaze/microblaze.h (CC1_SPEC): Remove %{save-temps: }.
60 * config/mips/mips.h (CC1_SPEC): Likewise.
62 2011-01-14 Joseph Myers <joseph@codesourcery.com>
64 * config/i386/linux.h (LINK_SPEC): Don't use %{!ibcs:} conditional.
65 * config/m32r/linux.h (LINK_SPEC): Likewise.
66 * config/mips/linux.h (LINK_SPEC): Likewise.
67 * config/mips/linux64.h (LINK_SPEC): Likewise.
68 * config/sparc/linux.h (LINK_SPEC): Likewise.
69 * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
71 * config/xtensa/linux.h (LINK_SPEC): Likewise.
73 2011-01-14 Joseph Myers <joseph@codesourcery.com>
75 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove
77 * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
79 2011-01-14 Joseph Myers <joseph@codesourcery.com>
81 * config/sparc/sp-elf.h (ASM_SPEC): Remove %{v:-V}.
82 * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
84 2011-01-14 Joseph Myers <joseph@codesourcery.com>
86 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove %{b}.
88 2011-01-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
90 * configure.ac (gcc_cv_ld_static_dynamic): Solaris 2 ld always
91 supports -Bstatic/-Bdynamic.
92 * configure: Regenerate.
94 2011-01-14 Jan Hubicka <jh@suse.cz>
95 Jack Howarth <howarth@bromo.med.uc.edu>
98 * config/darwin.c (darwin_override_options): Honor flag_gtoggle
99 when checking debug_info_level. Test write_symbols instead of
100 debug_hooks->var_location when setting flag_var_tracking_uninit.
102 2011-01-14 Richard Guenther <rguenther@suse.de>
104 PR tree-optimization/47179
105 * target.def (ref_may_alias_errno): New target hook.
106 * targhooks.h (default_ref_may_alias_errno): Declare.
107 * targhooks.c: Include tree-ssa-alias.h and tree-flow.h.
108 (default_ref_may_alias_errno): New function.
109 * target.h (struct ao_ref_s): Declare.
110 * tree-ssa-alias.c: Include target.h.
111 (call_may_clobber_ref_p_1): Use the ref_may_alias_errno target hook.
112 * Makefile.in (tree-ssa-alias.o): Adjust dependencies.
113 (targhooks.o): Likewise.
114 * doc/tm.texi.in (TARGET_REF_MAY_ALIAS_ERRNO): Document.
115 * doc/tm.texi (TARGET_REF_MAY_ALIAS_ERRNO): Copy documentation.
117 2011-01-14 Richard Guenther <rguenther@suse.de>
119 * tree-ssa-structalias.c (new_var_info): Use DECL_HARD_REGISTER.
121 2011-01-14 Richard Guenther <rguenther@suse.de>
123 PR tree-optimization/47280
124 * tree-ssa-forwprop.c (associate_plusminus): Cleanup EH and
126 (tree_ssa_forward_propagate_single_use_vars): Deal with
127 CFG changes from associate_plusminus.
129 2011-01-14 Richard Guenther <rguenther@suse.de>
133 2011-01-11 Richard Guenther <rguenther@suse.de>
135 PR tree-optimization/46076
136 * tree-ssa.c (useless_type_conversion_p): Conversions from
137 unprototyped to empty argument list function types are useless.
139 2011-01-14 Richard Guenther <rguenther@suse.de>
141 PR tree-optimization/47286
142 * tree-ssa-structalias.c (new_var_info): Register variables are global.
144 2011-01-14 Martin Jambor <mjambor@suse.cz>
147 * tree-inline.c (expand_call_inline): Get fndecl from call graph edge.
149 2011-01-13 Anatoly Sokolov <aesok@post.ru>
151 * config/xtensa/xtensa.h (XTENSA_LIBCALL_VALUE, LIBCALL_VALUE,
152 LIBCALL_OUTGOING_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
153 * config/xtensa/xtensa.c (xtensa_libcall_value,
154 xtensa_function_value_regno_p): New functions.
155 (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
157 2011-01-13 Kai Tietz <kai.tietz@onevision.com>
160 * config/i386/cygming.h (TARGET_ASM_ASSEMBLE_VISIBILITY):
162 * config/i386/i386-protos.h (i386_pe_assemble_visibility):
163 New function prototype.
164 * config/i386/winnt.c (i386_pe_assemble_visibility):
165 Warn only if attribute was specified by user.
167 2011-01-13 Michael Meissner <meissner@linux.vnet.ibm.com>
170 * config/rs6000/rs6000.md (floatunsdidf2): Add check for hardware
172 (floatunsdidf2_fcfidu): Ditto.
174 2011-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
176 * config/s390/s390.c (print_operand_address): Replace 'error' with
177 'output_operand_lossage'.
178 (print_operand): Likewise.
180 2011-01-13 Jeff Law <law@redhat.com>
182 PR rtl-optimization/39077
183 * doc/invoke.texi (max-gcse-insertion-ratio): Document.
184 * params.h (MAX_GCSE_INSERTION_RATIO): Define.
185 * params.def (PARAM_MAX_GCSE_INSERTION_RATIO): Define.
186 * lcm.c (pre_edge_lcm): Properly initialize output sbitmaps.
187 * gcse.c (prune_insertions_deletions): New function.
188 (compute_pre_data): Use it.
190 2011-01-13 Dodji Seketeli <dodji@redhat.com>
193 * dwarf2out.c (prune_unused_types_mark_generic_parms_dies): New
195 (prune_unused_types_mark): Use it.
197 2011-01-13 Andrey Belevantsev <abel@ispras.ru>
199 PR rtl-optimization/45352
200 * sel-sched.c: Update copyright years.
201 (reset_sched_cycles_in_current_ebb): Also recheck the DFA state
202 in the advancing loop when we have issued issue_rate insns.
204 2011-01-12 Richard Henderson <rth@redhat.com>
206 * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
207 (TARGET_MD_ASM_CLOBBERS): New.
209 * config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
210 (TARGET_DELEGITIMIZE_ADDRESS): New.
212 * config/mn10300/mn10300.md (UNSPEC_BSCH): New.
213 (clzsi2, *bsch): New patterns.
215 * config/mn10300/mn10300.md (INT): New mode iterator.
216 (*mov<INT>_clr): New pattern, and peep2 to generate it.
218 * config/mn10300/mn10300.c (mn10300_option_override): Force enable
219 flag_split_wide_types.
221 * config/mn10300/mn10300.c (mn10300_asm_trampoline_template): Remove.
222 (mn10300_trampoline_init): Rewrite without a template, an immediate
223 load and a direct branch.
224 * config/mn10300/mn10300.h (TRAMPOLINE_SIZE): Reduce to 16.
226 2011-01-12 Anatoly Sokolov <aesok@post.ru>
228 * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
229 * config/s390/s390-protos.h (s390_output_addr_const_extra): Remove.
230 * config/s390/s390.c (s390_output_addr_const_extra): Make static.
231 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
233 2011-01-12 Kai Tietz <kai.tietz@onevision.com>
236 * dwarfout2.c (should_emit_struct_debug): Use TYPE_MAIN_VARIANT
239 2011-01-12 Jan Hubicka <jh@suse.cz>
242 * gcc.c (PLUGIN_COND): Update to disable plugin unless -flto is used.
243 (PLUGIN_COND_CLOSE): New macro.
244 (LINK_COMMAND_SPEC): Update to use PLUGIN_COND_CLOSE.
246 2011-01-12 Richard Guenther <rguenther@suse.de>
249 * lto-streamer-out.c (output_gimple_stmt): Do not wrap
250 register variables in a MEM_REF.
252 2011-01-12 Joseph Myers <joseph@codesourcery.com>
254 * config.gcc (arm*-*-linux*, bfin*-uclinux*, bfin*-linux-uclibc*,
255 crisv32-*-linux* | cris-*-linux*, frv-*-*linux*, moxie-*-uclinux*,
256 hppa*64*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux* |
257 i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
258 i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
259 x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu,
260 ia64*-*-linux*, lm32-*-uclinux*, m32r-*-linux*, m32rle-*-linux*,
261 m68k-*-uclinux*, m68k-*-linux*, microblaze*-linux*,
262 mips64*-*-linux* | mipsisa64*-*-linux*, mips*-*-linux*,
263 s390-*-linux*, s390x-*-linux*, sh*-*-linux*, sparc-*-linux*,
264 sparc64-*-linux*, vax-*-linux*, xtensa*-*-linux*,
265 am33_2.0-*-linux*): Use gnu-user.h before linux.h.
266 * config/gnu-user.h: New. Copied from linux.h.
267 (LINUX_TARGET_STARTFILE_SPEC): Rename to
268 GNU_USER_TARGET_STARTFILE_SPEC.
269 (LINUX_TARGET_ENDFILE_SPEC): Rename to
270 GNU_USER_TARGET_ENDFILE_SPEC.
271 (LINUX_TARGET_CC1_SPEC): Rename to GNU_USER_TARGET_CC1_SPEC.
272 (LINUX_TARGET_LIB_SPEC): Rename to GNU_USER_TARGET_LIB_SPEC.
273 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC,
274 LINUX_TARGET_OS_CPP_BUILTINS, CHOOSE_DYNAMIC_LINKER1,
275 CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER,
276 UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
277 BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,
278 BIONIC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER,
279 LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64,
280 TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS): Remove.
281 * config/arm/linux-eabi.h (CC1_SPEC): Use
282 GNU_USER_TARGET_CC1_SPEC.
283 (LIB_SPEC): Use GNU_USER_TARGET_LIB_SPEC.
284 (STARTFILE_SPEC): Use GNU_USER_TARGET_STARTFILE_SPEC.
285 (ENDFILE_SPEC): Use GNU_USER_TARGET_ENDFILE_SPEC
286 * config/linux.h (NO_IMPLICIT_EXTERN_C, ASM_APP_ON, ASM_APP_OFF,
287 LINUX_TARGET_STARTFILE_SPEC, STARTFILE_SPEC,
288 LINUX_TARGET_ENDFILE_SPEC, ENDFILE_SPEC, LINUX_TARGET_CC1_SPEC,
289 CC1_SPEC, CPLUSPLUS_CPP_SPEC, LINUX_TARGET_LIB_SPEC, LIB_SPEC,
290 LINK_EH_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): Remove.
292 2011-01-12 Richard Guenther <rguenther@suse.de>
295 * doc/invoke.texi (ffast-math): Document it is turned on
298 2011-01-12 Jan Hubicka <jh@suse.cz>
300 PR tree-optimization/47233
301 * opts.c (common_handle_option): Disable ipa-reference with profile
304 2011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
306 * c-parser.c (c_parser_objc_at_property_declaration): Improved
309 2011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
311 * c-parser.c (c_lex_one_token): Updated and reindented some
312 comments. No changes in code.
314 2011-01-11 Ian Lance Taylor <iant@google.com>
316 * godump.c (go_output_var): Don't output the variable if there is
317 already a type with the same name.
319 2011-01-11 Ian Lance Taylor <iant@google.com>
321 * godump.c (go_format_type): Don't generate float80.
323 2011-01-11 Richard Henderson <rth@redhat.com>
325 * config/mn10300/mn10300.c (mn10300_address_cost): Remove forward
326 declaration. Rewrite for both speed and size.
327 (mn10300_address_cost_1): Remove.
328 (mn10300_register_move_cost): New.
329 (mn10300_memory_move_cost): New.
330 (mn10300_rtx_costs): Rewrite for both speed and size. Don't handle
331 ZERO_EXTRACT. Do handle UNSPEC, arithmetic, logicals, compare,
332 extensions, shifts, BSWAP, CLZ.
333 (mn10300_wide_const_load_uses_clr): Remove.
334 (TARGET_REGISTER_MOVE_COST): New.
335 (TARGET_MEMORY_MOVE_COST): New.
336 * config/mn10300/mn10300-protos.h: Update.
337 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Remove.
339 * config/mn10300/constraints.md ("R", "T"): Remove constraints.
340 * config/mn10300/mn10300.c (mn10300_mask_ok_for_mem_btst): Remove.
341 * config/mn10300/mn10300-protos.h: Update.
342 * config/mn10300/mn10300.md (movsi_internal): Don't use "R".
343 (*byte_clear, *byte_set, *bit_clear1, *bit_clear2, *bit_set): Remove.
344 (iorqi3, *am33_iorqi3, *mn10300_iorqi3): Remove.
345 (*test_int_bitfield, *test_byte_bitfield): Remove.
346 (*bit_test, *subreg_bit_test): Remove.
347 * config/mn10300/predicates.md (const_8bit_operand): Remove.
349 * config/mn10300/constraints.md ("c"): Rename from "A".
350 ("A", "D"): New constraint letters.
351 * config/mn10300/mn10300.md (fmasf4): Use the "c" constraint.
352 (fmssf4, fnmasf4, fnmssf4): Likewise.
354 * config/mn10300/mn10300.md (isa): New attribute.
355 (enabled): New attribute.
357 * config/mn10300/mn10300.md (absdf2, negdf2): Remove.
358 (abssf2, negsf2): Define only for hardware fp.
360 (addsf3, subsf3, mulsf3): Merge expander and insn.
362 * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
363 (DEBUGGER_AUTO_OFFSET): Remove.
364 (DEBUGGER_ARG_OFFSET): Remove.
366 * config/mn10300/mn10300.c (mn10300_gen_multiple_store): Make static.
367 Emit register stores with the same offsets as the hardware.
368 (mn10300_store_multiple_operation): Don't check that the register
369 save offsets are monotonic.
370 * config/mn10300/mn10300-protos.h: Update.
372 * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
374 * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
375 in terms of the value on the stack, not the MDR register.
377 2011-01-11 Jan Hubicka <jh@suse.cz>
381 * tree.h (symbol_alias_set_t): Move typedef here from varasm.c
382 (symbol_alias_set_destroy, symbol_alias_set_contains,
383 propagate_aliases_backward): Declare.
384 * lto-streamer-out.c (struct sets): New sturcture.
385 (trivally_defined_alias): New function.
386 (output_alias_pair_p): Rewrite.
387 (output_unreferenced_globals): Fix output of alias pairs.
388 (produce_symtab): Likewise.
389 * ipa.c (function_and_variable_visibility): Set weak alias destination
391 * varasm.c (symbol_alias_set_t): Remove.
392 (symbol_alias_set_destroy): Export.
393 (propagate_aliases_forward, propagate_aliases_backward): New functions
395 (compute_visible_aliases): ... this one; remove.
396 (trivially_visible_alias): New
397 (trivially_defined_alias): New.
398 (remove_unreachable_alias_pairs): Rewrite.
399 (finish_aliases_1): Reorganize code checking if alias is defined.
400 * passes.c (rest_of_decl_compilation): Do not call assemble_alias when
403 2011-01-11 Richard Guenther <rguenther@suse.de>
405 PR tree-optimization/46076
406 * tree-ssa.c (useless_type_conversion_p): Conversions from
407 unprototyped to empty argument list function types are useless.
409 2011-01-11 Richard Guenther <rguenther@suse.de>
412 * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
413 volatile MEMs as MEM_READONLY_P.
415 2011-01-11 Richard Guenther <rguenther@suse.de>
417 PR tree-optimization/47239
418 * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
420 2011-01-11 Jeff Law <law@redhat.com>
422 PR tree-optimization/47086
423 * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
424 IVs from statements that might throw.
426 2011-01-10 Jan Hubicka <jh@suse.cz>
429 * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
431 2011-01-10 Jan Hubicka <jh@suse.cz>
434 * profile.c (read_profile_edge_counts): Ignore profile inconistency
435 when correcting profile.
437 2011-01-10 Jan Hubicka <jh@suse.cz>
440 * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
442 * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
443 Restore DECL_FINI_PRIORITY.
445 2011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
447 * doc/gimple.texi: Fix quoting of multi-word return values in
448 @deftypefn statements. Ensure presence of return value. Wrap
449 overlong @deftypefn lines.
450 (is_gimple_operand, is_gimple_min_invariant_address): Remove
451 descriptions of removed functions.
452 * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
453 of multi-word return value in @deftypefn statement.
455 2011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
457 * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
458 (Conditional Expressions, Logical Operators)
459 (Statement and operand traversals): Do not indent smallexample
460 code. Fix duplicate function argument in example.
462 2011-01-10 Jeff Law <law@redhat.com>
464 PR tree-optimization/47141
465 * ipa-split.c (split_function): Handle case where we are
466 returning a value and the return block has a virtual operand phi.
468 2011-01-10 Jan Hubicka <jh@suse.cz>
470 PR tree-optimization/47234
471 * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
472 (pass_feedback_split_functions): Declare.
473 * passes.c (init_optimization_passes): Add ipa-split as subpass of
475 * ipa-split.c (gate_split_functions): Update comments; disable
476 split-functions for profile_arc_flag and branch_probabilities.
477 (gate_feedback_split_functions): New function.
478 (execute_feedback_split_functions): New function.
479 (pass_feedback_split_functions): New global var.
481 2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
484 * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
485 calling gimple_call_set_cannot_inline.
487 2011-01-10 Iain Sandoe <iains@gcc.gnu.org>
489 * config/darwin-sections.def: Remove unused section.
491 2011-01-10 Dave Korn <dave.korn.cygwin@gmail.com>
494 * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
496 2011-01-09 Nicola Pero <nicola.pero@meta-innovation.com>
499 * c-parser.c (c_parser_declaration_or_fndef): Improved
502 2011-01-09 Kai Tietz <kai.tietz@onevision.com>
504 * config/i386/winnt.c (i386_pe_start_function): Make sure
505 to switch back to function's section.
507 2011-01-09 Iain Sandoe <iains@gcc.gnu.org>
511 * plugin.c: Move include of dlfcn.h from here...
512 * system.h: ... to here.
514 2011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
516 * doc/cpp.texi (C++ Named Operators): Fix markup for header
518 * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
519 two extra empty pages in PDF output.
521 2011-01-08 Nicola Pero <nicola.pero@meta-innovation.com>
524 * c-parser.c (c_parser_objc_type_name): If the type is unknown,
525 for error recovery purposes behave as if it was not specified so
526 that the default type is usd.
528 2011-01-07 Jan Hubicka <jh@suse.cz>
530 PR tree-optmization/46469
531 * ipa.c (function_and_variable_visibility): Clear needed flags on
532 nodes with external decls; handle weakrefs merging correctly.
534 2011-01-07 Joseph Myers <joseph@codesourcery.com>
536 * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
539 2011-01-07 Jan Hubicka <jh@suse.cz>
541 * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
542 and no longer claim that gold is required for linker plugin.
543 * configure: Regenerate.
544 * gcc.c (PLUGIN_COND): New macro.
545 (LINK_COMMAND_SPEC): Use it.
546 (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
547 * config.in (HAVE_LTO_PLUGIN): New.
548 * configure.ac (--with-lto-plugin): New parameter; autodetect
551 2011-01-07 Jan Hubicka <jh@suse.cz>
553 PR tree-optimization/46367
554 * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
555 when we can update original.
556 (cgraph_mark_inline_edge): Sanity check.
557 * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
559 2011-01-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
561 * config/spu/spu.h (ASM_COMMENT_START): Define.
563 2011-01-07 H.J. Lu <hongjiu.lu@intel.com>
567 (SWITCH_KEEP_FOR_GCC): Likewise.
568 (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
569 (do_spec_1): Handle "%>".
571 * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
573 2011-01-07 Jakub Jelinek <jakub@redhat.com>
576 * config/i386/i386.c (ix86_delegitimize_address): If
577 simplify_gen_subreg fails, return orig_x.
580 * value-prof.c (gimple_stringop_fixed_value): Handle
581 lhs of the call properly.
583 2011-01-07 Jan Hubicka <jh@suse.cz>
586 * lto-opt.c (lto_reissue_options): Set flag_shlib.
588 2011-01-07 Iain Sandoe <iains@gcc.gnu.org>
590 * target.def (function_switched_text_sections): New hook.
591 * doc/tm.texi: Regenerated.
592 * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
593 * final.c (default_function_switched_text_sections): New.
594 (final_scan_insn): Call function_switched_text_sections when a
595 mid-function section change occurs.
596 * output.h (default_function_switched_text_sections): Declare.
597 * config/darwin-protos.h (darwin_function_switched_text_sections):
599 * config/darwin.c (darwin_function_switched_text_sections): New.
600 * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
602 2011-01-07 Iain Sandoe <iains@gcc.gnu.org>
604 * dwarf2out.c (gen_subprogram_die): Add pubnames with code ranges for
605 DWARF >= 3. Add pubnames for the primary section and a reduced DIE for
606 the secondary code fragment when outputting for DWARF == 2.
608 2011-01-07 Anatoly Sokolov <aesok@post.ru>
610 * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
611 * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
613 * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
614 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
616 2011-01-06 Eric Botcazou <ebotcazou@adacore.com>
619 * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section only
620 when it is not empty.
622 2011-01-06 Changpeng Fang <changpeng.fang@amd.com>
625 * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
626 (case ${target}): Add btver1.
627 * config/i386/driver-i386.c (host_detect_local_cpu): Let
628 -march=native recognize btver1 processors.
629 * config/i386/i386-c.c (ix86_target_macros_internal): Add
631 * config/i386/i386.c (struct processor_costs btver1_cost): New
633 (m_BTVER1): New definition.
634 (m_AMD_MULTIPLE): Includes m_BTVER1.
635 (initial_ix86_tune_features): Add btver1 tune.
636 (processor_target_table): Add btver1 entry.
637 (static const char *const cpu_names): Add btver1 entry.
638 (software_prefetching_beneficial_p): Add btver1.
639 (ix86_option_override_internal): Add btver1 instruction sets.
640 (ix86_issue_rate): Add btver1.
641 (ix86_adjust_cost): Add btver1.
642 * config/i386/i386.h (TARGET_BTVER1): New definition.
643 (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
644 (enum processor_type): Add PROCESSOR_BTVER1.
645 * config/i386/i386.md (define_attr "cpu"): Add btver1.
647 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
650 * config/i386/i386.c (legitimize_tls_address)
651 <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
652 * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
653 (tls_initial_exec_64_sun): New pattern.
655 2011-01-06 Gerald Pfeifer <gerald@pfeifer.com>
657 * doc/invoke.texi (Overall Options): Improve wording and markup
658 of the description of -wrapper.
660 2011-01-06 Joseph Myers <joseph@codesourcery.com>
662 * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
663 rdynamic, threads): New Driver options.
665 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
668 * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
669 if coming from .tdata.
670 * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
672 2011-01-06 Jan Hubicka <jh@suse.cz>
675 * collect2.c (main): Do not enable LTOmode when plugin is active.
677 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
680 * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
681 --version output if supported.
682 * configure: Regenerate.
684 2011-01-06 Joseph Myers <joseph@codesourcery.com>
686 * config/linux-android.opt (tno-android-cc, tno-android-ld): New
689 2011-01-06 Jakub Jelinek <jakub@redhat.com>
692 * c-convert.c (convert): When converting a complex expression
693 other than COMPLEX_EXPR to a different complex type, ensure
694 c_save_expr is called instead of save_expr, unless in_late_binary_op.
695 * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
696 when converting COMPLEX_TYPE.
698 2011-01-06 Ira Rosen <irar@il.ibm.com>
700 PR tree-optimization/47139
701 * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
702 only the last reduction value is used outside the loop. Update
705 2011-01-05 Joseph Myers <joseph@codesourcery.com>
707 * config/rtems.opt: New.
708 * config.gcc (*-*-rtems*): Use rtems.opt.
710 2011-01-05 Changpeng Fang <changpeng.fang@amd.com>
712 * config/i386/i386.c (ix86_option_override_internal): Bulldozer
713 processors do not support 3DNow instructions.
715 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
717 * config/spu/spu.c (spu_option_override): Set parameter
718 PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
720 2011-01-05 Jan Hubicka <jh@suse.cz>
722 * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
725 2011-01-05 Martin Jambor <mjambor@suse.cz>
728 * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
729 deltas on streamed outgoing edges.
730 (output_node_opt_summary): Output info for outgoing edges only when
731 the node is in new parameter set.
732 (output_cgraph_opt_summary): New parameter set, passed to the two
733 aforementioned functions. Update its forward declaration and its
736 2011-01-05 Tom Tromey <tromey@redhat.com>
738 * c-parser.c (c_parser_omp_atomic): Pass location of assignment
739 operator to c_finish_omp_atomic.
740 * c-typeck.c (lvalue_or_else): Add 'loc' argument.
741 (build_unary_op): Update.
742 (build_modify_expr): Update.
743 (build_asm_expr): Update.
745 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
747 * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
748 newly inserted insns.
750 (spu_emit_branch_hint): Likewise.
751 (insert_hbrp_for_ilb_runout): Likewise.
752 (spu_machine_dependent_reorg): Call df_finish_pass after
753 schedule_insns returns.
755 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
757 * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
759 2011-01-05 Eric Botcazou <ebotcazou@adacore.com>
761 PR tree-optimization/47005
762 * tree-sra.c (struct access): Add 'non_addressable' bit.
763 (create_access): Set it for a DECL_NONADDRESSABLE_P field.
764 (decide_one_param_reduction): Return 0 if the parameter is passed by
765 reference and one of the accesses in the group is non_addressable.
767 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
769 PR tree-optimization/47056
770 * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
771 (mark_load): Likewise. Handle FUNCTION_DECL specially.
772 (mark_store): Likewise. Pass STMT to ipa_record_reference.
774 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
776 * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
777 initializer. Skip view conversions from aggregate types.
779 2011-01-04 Kai Tietz <kai.tietz@onevision.com>
782 * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
784 2011-01-04 Philipp Thomas <pth@suse.de>
786 * config/microblaze/microbalse.opt (mxl-float-convert): Fix
789 2011-01-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
791 * function.c (thread_prologue_and_epilogue_insns): Do not crash
792 on empty epilogue sequences.
794 2011-01-04 Joseph Myers <joseph@codesourcery.com>
796 * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
797 non-static): New Driver options.
799 2011-01-04 Jie Zhang <jie@codesourcery.com>
802 * gcc.c (default_compilers[]): Set combinable field to 0
803 for all assembly languages.
805 2011-01-04 Mingjie Xing <mingjie.xing@gmail.com>
807 * config/mips/loongson3a.md: New file.
808 * config/mips/mips.md: Include loongson3a.md.
809 * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
812 2011-01-03 Eric Botcazou <ebotcazou@adacore.com>
815 * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
816 instead of convert_memory_address_addr_space on the base expression.
818 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
820 * config/spu/spu.c (spu_option_override): Update error text
821 for bad -march= / -mtune= values.
823 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
825 * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
826 if branch-hint optimization will be performed.
828 2011-01-03 Jakub Jelinek <jakub@redhat.com>
830 PR tree-optimization/47148
831 * ipa-split.c (split_function): Convert arguments to
832 DECL_ARG_TYPE if possible.
834 PR tree-optimization/47155
835 * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
838 PR rtl-optimization/47157
839 * combine.c (try_combine): If undobuf.other_insn becomes
840 (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
841 and set *new_direct_jump_p too.
843 2011-01-03 Sebastian Pop <sebastian.pop@amd.com>
845 PR tree-optimization/47021
846 * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
848 2011-01-03 Jakub Jelinek <jakub@redhat.com>
850 * gcc.c (process_command): Update copyright notice dates.
851 * gcov.c (print_version): Likewise.
852 * gcov-dump.c (print_version): Likewise.
853 * mips-tfile.c (main): Likewise.
854 * mips-tdump.c (main): Likewise.
856 2011-01-03 Martin Jambor <mjambor@suse.cz>
858 PR tree-optimization/46801
859 * tree-sra.c (type_internals_preclude_sra_p): Check whether
860 aggregate fields start at byte boundary instead of the bit-field flag.
862 2011-01-03 H.J. Lu <hongjiu.lu@intel.com>
865 * gcc.c (main): Revert revision 168407.
867 2011-01-03 Martin Jambor <mjambor@suse.cz>
869 * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
871 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
873 * tree-vect-generic.c (expand_vector_operations_1): When using vector/
874 vector optab to expand vector/scalar shift, update gimple to vector.
876 2011-01-03 Martin Jambor <mjambor@suse.cz>
878 * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
881 2011-01-03 Martin Jambor <mjambor@suse.cz>
883 PR tree-optimization/46984
884 * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
886 (cgraph_create_indirect_edge): Fixed line length.
887 (cgraph_indirect_call_info): Declare.
888 (cgraph_make_edge_direct) Update declaration.
889 * cgraph.c (cgraph_allocate_init_indirect_info): New function.
890 (cgraph_create_indirect_edge): Use it.
891 (cgraph_make_edge_direct): Made delta HOST_WIDE_INT. Updated all
893 * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
894 the new thunk_delta representation.
895 * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
897 (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
898 (ipa_read_indirect_edge_info): Likewise.
899 * lto-cgraph.c (output_edge_opt_summary): New function.
900 (output_node_opt_summary): Call it on all outgoing edges.
901 (input_edge_opt_summary): New function.
902 (input_node_opt_summary): Call it on all outgoing edges.
904 2011-01-02 H.J. Lu <hongjiu.lu@intel.com>
907 * gcc.c (main): Don't check have_o when settting combine_inputs.
909 2011-01-02 Eric Botcazou <ebotcazou@adacore.com>
911 * regrename.c: Add general comment describing the pass.
912 (struct du_head): Remove 'length' field.
913 (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
914 (regrename_optimize): Do not sort chains. Rework comments, add others.
915 Force renaming to the preferred class (if any) in the first pass and do
916 not consider registers that belong to it in the second pass.
917 (create_new_chain): Do not set 'length' field.
918 (scan_rtx_reg): Likewise.
920 2011-01-02 Jakub Jelinek <jakub@redhat.com>
922 PR tree-optimization/47140
923 * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
924 TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
927 PR rtl-optimization/47028
928 * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
929 parm_birth_insn instead of at the beginning of first bb.
931 2011-01-02 Mingjie Xing <mingjie.xing@gmail.com>
933 * doc/generic.texi: Remove duplicated "@subsubsection Statements".
934 Remove the word "see" before "@pxref".
935 * doc/rtl.texi: Remove the word "see" before "@pxref".
937 2011-01-01 Jan Hubicka <jh@suse.cz>
939 * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
942 2011-01-01 Kai Tietz <kai.tietz@onevision.com>
945 * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
948 Copyright (C) 2011 Free Software Foundation, Inc.
950 Copying and distribution of this file, with or without modification,
951 are permitted in any medium without royalty provided the copyright
952 notice and this notice are preserved.