1 2011-01-15 Eric Botcazou <ebotcazou@adacore.com>
3 * config/sparc/sol2-bi.h (CC1_SPEC): Fix typo.
5 2011-01-15 Jan Hubicka <jh@suse.cz>
7 PR tree-optimization/47276
8 * ipa.c (function_and_variable_visibility): Do not try to mark alias
9 declarations as needed.
11 2011-01-15 Martin Jambor <mjambor@suse.cz>
13 * common.opt (fdevirtualize): New flag.
14 * doc/invoke.texi (Option Summary): Document it.
15 * opts.c (default_options_table): Add devirtualize flag.
16 * ipa-prop.c (detect_type_change): Return immediately if
17 devirtualize flag is not set.
18 (detect_type_change_ssa): Likewise.
19 (compute_known_type_jump_func): Likewise.
20 (ipa_analyze_virtual_call_uses): Likewise.
22 2011-01-14 Martin Jambor <mjambor@suse.cz>
24 PR tree-optimization/45934
25 PR tree-optimization/46302
26 * ipa-prop.c (type_change_info): New type.
27 (stmt_may_be_vtbl_ptr_store): New function.
28 (check_stmt_for_type_change): Likewise.
29 (detect_type_change): Likewise.
30 (detect_type_change_ssa): Likewise.
31 (compute_complex_assign_jump_func): Check for dynamic type change.
32 (compute_complex_ancestor_jump_func): Likewise.
33 (compute_known_type_jump_func): Likewise.
34 (compute_scalar_jump_functions): Likewise.
35 (ipa_analyze_virtual_call_uses): Likewise.
36 (ipa_analyze_node): Push and pop cfun, set current_function_decl.
38 2011-01-14 Joseph Myers <joseph@codesourcery.com>
40 * config/i386/i386.h (CC1_CPU_SPEC_1): Don't handle -msse5.
41 * config/i386/i386.opt (msse5): New Alias.
43 2011-01-14 Joseph Myers <joseph@codesourcery.com>
45 * config/sparc/linux.h (CC1_SPEC): Remove %{sun4:} %{target:}.
46 * config/sparc/linux64.h (CC1_SPEC): Likewise.
47 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
48 * config/sparc/sparc.h (CC1_SPEC): Likewise.
50 2011-01-14 Joseph Myers <joseph@codesourcery.com>
52 * config/sparc/linux.h (CC1_SPEC): Don't handle old equivalents of
54 * config/sparc/linux64.h (CC1_SPEC): Likewise.
55 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
56 * config/sparc/sol2-bi.h (CPP_CPU_SPEC, CC1_SPEC): Likewise.
57 * config/sparc/sparc.h (CPP_CPU_SPEC, CC1_SPEC, ASM_CPU_SPEC):
59 * config/sparc/t-elf (MULTILIB_MATCHES): Don't handle -mv8.
61 2011-01-14 Joseph Myers <joseph@codesourcery.com>
63 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -fvec or
66 2011-01-14 Mike Stump <mikestump@comcast.net>
68 * config/alpha/alpha.md (umk_mismatch_args): Don't put a mode on set.
69 * config/fr30/fr30.md: Likweise
70 (movsi_push): Likewise.
71 (movsi_pop): Likewise.
72 (enter_func): Likewise.
73 * config/moxie/moxie.md (movsi_push): Likewise.
74 (movsi_pop): Likewise.
76 2011-01-14 Joseph Myers <joseph@codesourcery.com>
78 * config/mips/linux64.h (LINK_SPEC): Remove %{bestGnum}
79 %{no_archive} %{exact_version}.
80 * config/mips/mips.h (LINK_SPEC): Remove %{bestGnum}.
81 * config/mips/netbsd.h (LINK_SPEC): Remove %{bestGnum}
82 %{no_archive} %{exact_version}.
83 * config/mips/openbsd.h (LINK_SPEC): Likewise.
84 * config/mips/sde.h (LINK_SPEC): Remove %{bestGnum}.
85 * config/mips/vxworks.h: Likewise.
87 2011-01-14 Joseph Myers <joseph@codesourcery.com>
89 * config/microblaze/microblaze.h (ASM_SPEC): Remove
92 2011-01-14 Joseph Myers <joseph@codesourcery.com>
94 * config/m32r/little.h (CPP_ENDIAN_SPEC, CC1_ENDIAN_SPEC,
95 ASM_ENDIAN_SPEC, LINK_ENDIAN_SPEC): Remove.
97 2011-01-14 Joseph Myers <joseph@codesourcery.com>
99 * config/i386/nwld.h (LINK_SPEC): Check -nodefaultlibs not
102 2011-01-14 Joseph Myers <joseph@codesourcery.com>
104 * config/cris/cris.h (ASM_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check
106 * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC,
107 CRIS_CC1_SUBTARGET_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check for mcpu
109 (CRIS_LINK_SUBTARGET_SPEC): Don't generate -rpath-link options.
112 2011-01-14 Joseph Myers <joseph@codesourcery.com>
114 * config/avr/avr.h (CPP_SPEC): Don't handle -posix.
115 (CC1_SPEC): Don't handle -profile.
117 2011-01-14 Joseph Myers <joseph@codesourcery.com>
119 * config/microblaze/microblaze.h (CC1_SPEC): Remove -gline spec.
120 * config/mips/mips.h (CC1_SPEC): Likewise.
122 2011-01-14 Joseph Myers <joseph@codesourcery.com>
124 * config/microblaze/microblaze.h (CC1_SPEC): Remove %{save-temps: }.
125 * config/mips/mips.h (CC1_SPEC): Likewise.
127 2011-01-14 Joseph Myers <joseph@codesourcery.com>
129 * config/i386/linux.h (LINK_SPEC): Don't use %{!ibcs:} conditional.
130 * config/m32r/linux.h (LINK_SPEC): Likewise.
131 * config/mips/linux.h (LINK_SPEC): Likewise.
132 * config/mips/linux64.h (LINK_SPEC): Likewise.
133 * config/sparc/linux.h (LINK_SPEC): Likewise.
134 * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
135 LINK_SPEC): Likewise.
136 * config/xtensa/linux.h (LINK_SPEC): Likewise.
138 2011-01-14 Joseph Myers <joseph@codesourcery.com>
140 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove
142 * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
144 2011-01-14 Joseph Myers <joseph@codesourcery.com>
146 * config/sparc/sp-elf.h (ASM_SPEC): Remove %{v:-V}.
147 * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
149 2011-01-14 Joseph Myers <joseph@codesourcery.com>
151 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove %{b}.
153 2011-01-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
155 * configure.ac (gcc_cv_ld_static_dynamic): Solaris 2 ld always
156 supports -Bstatic/-Bdynamic.
157 * configure: Regenerate.
159 2011-01-14 Jan Hubicka <jh@suse.cz>
160 Jack Howarth <howarth@bromo.med.uc.edu>
163 * config/darwin.c (darwin_override_options): Honor flag_gtoggle
164 when checking debug_info_level. Test write_symbols instead of
165 debug_hooks->var_location when setting flag_var_tracking_uninit.
167 2011-01-14 Richard Guenther <rguenther@suse.de>
169 PR tree-optimization/47179
170 * target.def (ref_may_alias_errno): New target hook.
171 * targhooks.h (default_ref_may_alias_errno): Declare.
172 * targhooks.c: Include tree-ssa-alias.h and tree-flow.h.
173 (default_ref_may_alias_errno): New function.
174 * target.h (struct ao_ref_s): Declare.
175 * tree-ssa-alias.c: Include target.h.
176 (call_may_clobber_ref_p_1): Use the ref_may_alias_errno target hook.
177 * Makefile.in (tree-ssa-alias.o): Adjust dependencies.
178 (targhooks.o): Likewise.
179 * doc/tm.texi.in (TARGET_REF_MAY_ALIAS_ERRNO): Document.
180 * doc/tm.texi (TARGET_REF_MAY_ALIAS_ERRNO): Copy documentation.
182 2011-01-14 Richard Guenther <rguenther@suse.de>
184 * tree-ssa-structalias.c (new_var_info): Use DECL_HARD_REGISTER.
186 2011-01-14 Richard Guenther <rguenther@suse.de>
188 PR tree-optimization/47280
189 * tree-ssa-forwprop.c (associate_plusminus): Cleanup EH and
191 (tree_ssa_forward_propagate_single_use_vars): Deal with
192 CFG changes from associate_plusminus.
194 2011-01-14 Richard Guenther <rguenther@suse.de>
198 2011-01-11 Richard Guenther <rguenther@suse.de>
200 PR tree-optimization/46076
201 * tree-ssa.c (useless_type_conversion_p): Conversions from
202 unprototyped to empty argument list function types are useless.
204 2011-01-14 Richard Guenther <rguenther@suse.de>
206 PR tree-optimization/47286
207 * tree-ssa-structalias.c (new_var_info): Register variables are global.
209 2011-01-14 Martin Jambor <mjambor@suse.cz>
212 * tree-inline.c (expand_call_inline): Get fndecl from call graph edge.
214 2011-01-13 Anatoly Sokolov <aesok@post.ru>
216 * config/xtensa/xtensa.h (XTENSA_LIBCALL_VALUE, LIBCALL_VALUE,
217 LIBCALL_OUTGOING_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
218 * config/xtensa/xtensa.c (xtensa_libcall_value,
219 xtensa_function_value_regno_p): New functions.
220 (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
222 2011-01-13 Kai Tietz <kai.tietz@onevision.com>
225 * config/i386/cygming.h (TARGET_ASM_ASSEMBLE_VISIBILITY):
227 * config/i386/i386-protos.h (i386_pe_assemble_visibility):
228 New function prototype.
229 * config/i386/winnt.c (i386_pe_assemble_visibility):
230 Warn only if attribute was specified by user.
232 2011-01-13 Michael Meissner <meissner@linux.vnet.ibm.com>
235 * config/rs6000/rs6000.md (floatunsdidf2): Add check for hardware
237 (floatunsdidf2_fcfidu): Ditto.
239 2011-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
241 * config/s390/s390.c (print_operand_address): Replace 'error' with
242 'output_operand_lossage'.
243 (print_operand): Likewise.
245 2011-01-13 Jeff Law <law@redhat.com>
247 PR rtl-optimization/39077
248 * doc/invoke.texi (max-gcse-insertion-ratio): Document.
249 * params.h (MAX_GCSE_INSERTION_RATIO): Define.
250 * params.def (PARAM_MAX_GCSE_INSERTION_RATIO): Define.
251 * lcm.c (pre_edge_lcm): Properly initialize output sbitmaps.
252 * gcse.c (prune_insertions_deletions): New function.
253 (compute_pre_data): Use it.
255 2011-01-13 Dodji Seketeli <dodji@redhat.com>
258 * dwarf2out.c (prune_unused_types_mark_generic_parms_dies): New
260 (prune_unused_types_mark): Use it.
262 2011-01-13 Andrey Belevantsev <abel@ispras.ru>
264 PR rtl-optimization/45352
265 * sel-sched.c: Update copyright years.
266 (reset_sched_cycles_in_current_ebb): Also recheck the DFA state
267 in the advancing loop when we have issued issue_rate insns.
269 2011-01-12 Richard Henderson <rth@redhat.com>
271 * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
272 (TARGET_MD_ASM_CLOBBERS): New.
274 * config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
275 (TARGET_DELEGITIMIZE_ADDRESS): New.
277 * config/mn10300/mn10300.md (UNSPEC_BSCH): New.
278 (clzsi2, *bsch): New patterns.
280 * config/mn10300/mn10300.md (INT): New mode iterator.
281 (*mov<INT>_clr): New pattern, and peep2 to generate it.
283 * config/mn10300/mn10300.c (mn10300_option_override): Force enable
284 flag_split_wide_types.
286 * config/mn10300/mn10300.c (mn10300_asm_trampoline_template): Remove.
287 (mn10300_trampoline_init): Rewrite without a template, an immediate
288 load and a direct branch.
289 * config/mn10300/mn10300.h (TRAMPOLINE_SIZE): Reduce to 16.
291 2011-01-12 Anatoly Sokolov <aesok@post.ru>
293 * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
294 * config/s390/s390-protos.h (s390_output_addr_const_extra): Remove.
295 * config/s390/s390.c (s390_output_addr_const_extra): Make static.
296 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
298 2011-01-12 Kai Tietz <kai.tietz@onevision.com>
301 * dwarfout2.c (should_emit_struct_debug): Use TYPE_MAIN_VARIANT
304 2011-01-12 Jan Hubicka <jh@suse.cz>
307 * gcc.c (PLUGIN_COND): Update to disable plugin unless -flto is used.
308 (PLUGIN_COND_CLOSE): New macro.
309 (LINK_COMMAND_SPEC): Update to use PLUGIN_COND_CLOSE.
311 2011-01-12 Richard Guenther <rguenther@suse.de>
314 * lto-streamer-out.c (output_gimple_stmt): Do not wrap
315 register variables in a MEM_REF.
317 2011-01-12 Joseph Myers <joseph@codesourcery.com>
319 * config.gcc (arm*-*-linux*, bfin*-uclinux*, bfin*-linux-uclibc*,
320 crisv32-*-linux* | cris-*-linux*, frv-*-*linux*, moxie-*-uclinux*,
321 hppa*64*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux* |
322 i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
323 i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
324 x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu,
325 ia64*-*-linux*, lm32-*-uclinux*, m32r-*-linux*, m32rle-*-linux*,
326 m68k-*-uclinux*, m68k-*-linux*, microblaze*-linux*,
327 mips64*-*-linux* | mipsisa64*-*-linux*, mips*-*-linux*,
328 s390-*-linux*, s390x-*-linux*, sh*-*-linux*, sparc-*-linux*,
329 sparc64-*-linux*, vax-*-linux*, xtensa*-*-linux*,
330 am33_2.0-*-linux*): Use gnu-user.h before linux.h.
331 * config/gnu-user.h: New. Copied from linux.h.
332 (LINUX_TARGET_STARTFILE_SPEC): Rename to
333 GNU_USER_TARGET_STARTFILE_SPEC.
334 (LINUX_TARGET_ENDFILE_SPEC): Rename to
335 GNU_USER_TARGET_ENDFILE_SPEC.
336 (LINUX_TARGET_CC1_SPEC): Rename to GNU_USER_TARGET_CC1_SPEC.
337 (LINUX_TARGET_LIB_SPEC): Rename to GNU_USER_TARGET_LIB_SPEC.
338 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC,
339 LINUX_TARGET_OS_CPP_BUILTINS, CHOOSE_DYNAMIC_LINKER1,
340 CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER,
341 UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
342 BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,
343 BIONIC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER,
344 LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64,
345 TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS): Remove.
346 * config/arm/linux-eabi.h (CC1_SPEC): Use
347 GNU_USER_TARGET_CC1_SPEC.
348 (LIB_SPEC): Use GNU_USER_TARGET_LIB_SPEC.
349 (STARTFILE_SPEC): Use GNU_USER_TARGET_STARTFILE_SPEC.
350 (ENDFILE_SPEC): Use GNU_USER_TARGET_ENDFILE_SPEC
351 * config/linux.h (NO_IMPLICIT_EXTERN_C, ASM_APP_ON, ASM_APP_OFF,
352 LINUX_TARGET_STARTFILE_SPEC, STARTFILE_SPEC,
353 LINUX_TARGET_ENDFILE_SPEC, ENDFILE_SPEC, LINUX_TARGET_CC1_SPEC,
354 CC1_SPEC, CPLUSPLUS_CPP_SPEC, LINUX_TARGET_LIB_SPEC, LIB_SPEC,
355 LINK_EH_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): Remove.
357 2011-01-12 Richard Guenther <rguenther@suse.de>
360 * doc/invoke.texi (ffast-math): Document it is turned on
363 2011-01-12 Jan Hubicka <jh@suse.cz>
365 PR tree-optimization/47233
366 * opts.c (common_handle_option): Disable ipa-reference with profile
369 2011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
371 * c-parser.c (c_parser_objc_at_property_declaration): Improved
374 2011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
376 * c-parser.c (c_lex_one_token): Updated and reindented some
377 comments. No changes in code.
379 2011-01-11 Ian Lance Taylor <iant@google.com>
381 * godump.c (go_output_var): Don't output the variable if there is
382 already a type with the same name.
384 2011-01-11 Ian Lance Taylor <iant@google.com>
386 * godump.c (go_format_type): Don't generate float80.
388 2011-01-11 Richard Henderson <rth@redhat.com>
390 * config/mn10300/mn10300.c (mn10300_address_cost): Remove forward
391 declaration. Rewrite for both speed and size.
392 (mn10300_address_cost_1): Remove.
393 (mn10300_register_move_cost): New.
394 (mn10300_memory_move_cost): New.
395 (mn10300_rtx_costs): Rewrite for both speed and size. Don't handle
396 ZERO_EXTRACT. Do handle UNSPEC, arithmetic, logicals, compare,
397 extensions, shifts, BSWAP, CLZ.
398 (mn10300_wide_const_load_uses_clr): Remove.
399 (TARGET_REGISTER_MOVE_COST): New.
400 (TARGET_MEMORY_MOVE_COST): New.
401 * config/mn10300/mn10300-protos.h: Update.
402 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Remove.
404 * config/mn10300/constraints.md ("R", "T"): Remove constraints.
405 * config/mn10300/mn10300.c (mn10300_mask_ok_for_mem_btst): Remove.
406 * config/mn10300/mn10300-protos.h: Update.
407 * config/mn10300/mn10300.md (movsi_internal): Don't use "R".
408 (*byte_clear, *byte_set, *bit_clear1, *bit_clear2, *bit_set): Remove.
409 (iorqi3, *am33_iorqi3, *mn10300_iorqi3): Remove.
410 (*test_int_bitfield, *test_byte_bitfield): Remove.
411 (*bit_test, *subreg_bit_test): Remove.
412 * config/mn10300/predicates.md (const_8bit_operand): Remove.
414 * config/mn10300/constraints.md ("c"): Rename from "A".
415 ("A", "D"): New constraint letters.
416 * config/mn10300/mn10300.md (fmasf4): Use the "c" constraint.
417 (fmssf4, fnmasf4, fnmssf4): Likewise.
419 * config/mn10300/mn10300.md (isa): New attribute.
420 (enabled): New attribute.
422 * config/mn10300/mn10300.md (absdf2, negdf2): Remove.
423 (abssf2, negsf2): Define only for hardware fp.
425 (addsf3, subsf3, mulsf3): Merge expander and insn.
427 * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
428 (DEBUGGER_AUTO_OFFSET): Remove.
429 (DEBUGGER_ARG_OFFSET): Remove.
431 * config/mn10300/mn10300.c (mn10300_gen_multiple_store): Make static.
432 Emit register stores with the same offsets as the hardware.
433 (mn10300_store_multiple_operation): Don't check that the register
434 save offsets are monotonic.
435 * config/mn10300/mn10300-protos.h: Update.
437 * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
439 * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
440 in terms of the value on the stack, not the MDR register.
442 2011-01-11 Jan Hubicka <jh@suse.cz>
446 * tree.h (symbol_alias_set_t): Move typedef here from varasm.c
447 (symbol_alias_set_destroy, symbol_alias_set_contains,
448 propagate_aliases_backward): Declare.
449 * lto-streamer-out.c (struct sets): New sturcture.
450 (trivally_defined_alias): New function.
451 (output_alias_pair_p): Rewrite.
452 (output_unreferenced_globals): Fix output of alias pairs.
453 (produce_symtab): Likewise.
454 * ipa.c (function_and_variable_visibility): Set weak alias destination
456 * varasm.c (symbol_alias_set_t): Remove.
457 (symbol_alias_set_destroy): Export.
458 (propagate_aliases_forward, propagate_aliases_backward): New functions
460 (compute_visible_aliases): ... this one; remove.
461 (trivially_visible_alias): New
462 (trivially_defined_alias): New.
463 (remove_unreachable_alias_pairs): Rewrite.
464 (finish_aliases_1): Reorganize code checking if alias is defined.
465 * passes.c (rest_of_decl_compilation): Do not call assemble_alias when
468 2011-01-11 Richard Guenther <rguenther@suse.de>
470 PR tree-optimization/46076
471 * tree-ssa.c (useless_type_conversion_p): Conversions from
472 unprototyped to empty argument list function types are useless.
474 2011-01-11 Richard Guenther <rguenther@suse.de>
477 * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
478 volatile MEMs as MEM_READONLY_P.
480 2011-01-11 Richard Guenther <rguenther@suse.de>
482 PR tree-optimization/47239
483 * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
485 2011-01-11 Jeff Law <law@redhat.com>
487 PR tree-optimization/47086
488 * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
489 IVs from statements that might throw.
491 2011-01-10 Jan Hubicka <jh@suse.cz>
494 * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
496 2011-01-10 Jan Hubicka <jh@suse.cz>
499 * profile.c (read_profile_edge_counts): Ignore profile inconistency
500 when correcting profile.
502 2011-01-10 Jan Hubicka <jh@suse.cz>
505 * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
507 * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
508 Restore DECL_FINI_PRIORITY.
510 2011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
512 * doc/gimple.texi: Fix quoting of multi-word return values in
513 @deftypefn statements. Ensure presence of return value. Wrap
514 overlong @deftypefn lines.
515 (is_gimple_operand, is_gimple_min_invariant_address): Remove
516 descriptions of removed functions.
517 * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
518 of multi-word return value in @deftypefn statement.
520 2011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
522 * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
523 (Conditional Expressions, Logical Operators)
524 (Statement and operand traversals): Do not indent smallexample
525 code. Fix duplicate function argument in example.
527 2011-01-10 Jeff Law <law@redhat.com>
529 PR tree-optimization/47141
530 * ipa-split.c (split_function): Handle case where we are
531 returning a value and the return block has a virtual operand phi.
533 2011-01-10 Jan Hubicka <jh@suse.cz>
535 PR tree-optimization/47234
536 * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
537 (pass_feedback_split_functions): Declare.
538 * passes.c (init_optimization_passes): Add ipa-split as subpass of
540 * ipa-split.c (gate_split_functions): Update comments; disable
541 split-functions for profile_arc_flag and branch_probabilities.
542 (gate_feedback_split_functions): New function.
543 (execute_feedback_split_functions): New function.
544 (pass_feedback_split_functions): New global var.
546 2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
549 * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
550 calling gimple_call_set_cannot_inline.
552 2011-01-10 Iain Sandoe <iains@gcc.gnu.org>
554 * config/darwin-sections.def: Remove unused section.
556 2011-01-10 Dave Korn <dave.korn.cygwin@gmail.com>
559 * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
561 2011-01-09 Nicola Pero <nicola.pero@meta-innovation.com>
564 * c-parser.c (c_parser_declaration_or_fndef): Improved
567 2011-01-09 Kai Tietz <kai.tietz@onevision.com>
569 * config/i386/winnt.c (i386_pe_start_function): Make sure
570 to switch back to function's section.
572 2011-01-09 Iain Sandoe <iains@gcc.gnu.org>
576 * plugin.c: Move include of dlfcn.h from here...
577 * system.h: ... to here.
579 2011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
581 * doc/cpp.texi (C++ Named Operators): Fix markup for header
583 * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
584 two extra empty pages in PDF output.
586 2011-01-08 Nicola Pero <nicola.pero@meta-innovation.com>
589 * c-parser.c (c_parser_objc_type_name): If the type is unknown,
590 for error recovery purposes behave as if it was not specified so
591 that the default type is usd.
593 2011-01-07 Jan Hubicka <jh@suse.cz>
595 PR tree-optmization/46469
596 * ipa.c (function_and_variable_visibility): Clear needed flags on
597 nodes with external decls; handle weakrefs merging correctly.
599 2011-01-07 Joseph Myers <joseph@codesourcery.com>
601 * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
604 2011-01-07 Jan Hubicka <jh@suse.cz>
606 * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
607 and no longer claim that gold is required for linker plugin.
608 * configure: Regenerate.
609 * gcc.c (PLUGIN_COND): New macro.
610 (LINK_COMMAND_SPEC): Use it.
611 (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
612 * config.in (HAVE_LTO_PLUGIN): New.
613 * configure.ac (--with-lto-plugin): New parameter; autodetect
616 2011-01-07 Jan Hubicka <jh@suse.cz>
618 PR tree-optimization/46367
619 * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
620 when we can update original.
621 (cgraph_mark_inline_edge): Sanity check.
622 * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
624 2011-01-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
626 * config/spu/spu.h (ASM_COMMENT_START): Define.
628 2011-01-07 H.J. Lu <hongjiu.lu@intel.com>
632 (SWITCH_KEEP_FOR_GCC): Likewise.
633 (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
634 (do_spec_1): Handle "%>".
636 * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
638 2011-01-07 Jakub Jelinek <jakub@redhat.com>
641 * config/i386/i386.c (ix86_delegitimize_address): If
642 simplify_gen_subreg fails, return orig_x.
645 * value-prof.c (gimple_stringop_fixed_value): Handle
646 lhs of the call properly.
648 2011-01-07 Jan Hubicka <jh@suse.cz>
651 * lto-opt.c (lto_reissue_options): Set flag_shlib.
653 2011-01-07 Iain Sandoe <iains@gcc.gnu.org>
655 * target.def (function_switched_text_sections): New hook.
656 * doc/tm.texi: Regenerated.
657 * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
658 * final.c (default_function_switched_text_sections): New.
659 (final_scan_insn): Call function_switched_text_sections when a
660 mid-function section change occurs.
661 * output.h (default_function_switched_text_sections): Declare.
662 * config/darwin-protos.h (darwin_function_switched_text_sections):
664 * config/darwin.c (darwin_function_switched_text_sections): New.
665 * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
667 2011-01-07 Iain Sandoe <iains@gcc.gnu.org>
669 * dwarf2out.c (gen_subprogram_die): Add pubnames with code ranges for
670 DWARF >= 3. Add pubnames for the primary section and a reduced DIE for
671 the secondary code fragment when outputting for DWARF == 2.
673 2011-01-07 Anatoly Sokolov <aesok@post.ru>
675 * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
676 * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
678 * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
679 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
681 2011-01-06 Eric Botcazou <ebotcazou@adacore.com>
684 * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section only
685 when it is not empty.
687 2011-01-06 Changpeng Fang <changpeng.fang@amd.com>
690 * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
691 (case ${target}): Add btver1.
692 * config/i386/driver-i386.c (host_detect_local_cpu): Let
693 -march=native recognize btver1 processors.
694 * config/i386/i386-c.c (ix86_target_macros_internal): Add
696 * config/i386/i386.c (struct processor_costs btver1_cost): New
698 (m_BTVER1): New definition.
699 (m_AMD_MULTIPLE): Includes m_BTVER1.
700 (initial_ix86_tune_features): Add btver1 tune.
701 (processor_target_table): Add btver1 entry.
702 (static const char *const cpu_names): Add btver1 entry.
703 (software_prefetching_beneficial_p): Add btver1.
704 (ix86_option_override_internal): Add btver1 instruction sets.
705 (ix86_issue_rate): Add btver1.
706 (ix86_adjust_cost): Add btver1.
707 * config/i386/i386.h (TARGET_BTVER1): New definition.
708 (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
709 (enum processor_type): Add PROCESSOR_BTVER1.
710 * config/i386/i386.md (define_attr "cpu"): Add btver1.
712 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
715 * config/i386/i386.c (legitimize_tls_address)
716 <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
717 * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
718 (tls_initial_exec_64_sun): New pattern.
720 2011-01-06 Gerald Pfeifer <gerald@pfeifer.com>
722 * doc/invoke.texi (Overall Options): Improve wording and markup
723 of the description of -wrapper.
725 2011-01-06 Joseph Myers <joseph@codesourcery.com>
727 * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
728 rdynamic, threads): New Driver options.
730 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
733 * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
734 if coming from .tdata.
735 * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
737 2011-01-06 Jan Hubicka <jh@suse.cz>
740 * collect2.c (main): Do not enable LTOmode when plugin is active.
742 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
745 * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
746 --version output if supported.
747 * configure: Regenerate.
749 2011-01-06 Joseph Myers <joseph@codesourcery.com>
751 * config/linux-android.opt (tno-android-cc, tno-android-ld): New
754 2011-01-06 Jakub Jelinek <jakub@redhat.com>
757 * c-convert.c (convert): When converting a complex expression
758 other than COMPLEX_EXPR to a different complex type, ensure
759 c_save_expr is called instead of save_expr, unless in_late_binary_op.
760 * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
761 when converting COMPLEX_TYPE.
763 2011-01-06 Ira Rosen <irar@il.ibm.com>
765 PR tree-optimization/47139
766 * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
767 only the last reduction value is used outside the loop. Update
770 2011-01-05 Joseph Myers <joseph@codesourcery.com>
772 * config/rtems.opt: New.
773 * config.gcc (*-*-rtems*): Use rtems.opt.
775 2011-01-05 Changpeng Fang <changpeng.fang@amd.com>
777 * config/i386/i386.c (ix86_option_override_internal): Bulldozer
778 processors do not support 3DNow instructions.
780 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
782 * config/spu/spu.c (spu_option_override): Set parameter
783 PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
785 2011-01-05 Jan Hubicka <jh@suse.cz>
787 * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
790 2011-01-05 Martin Jambor <mjambor@suse.cz>
793 * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
794 deltas on streamed outgoing edges.
795 (output_node_opt_summary): Output info for outgoing edges only when
796 the node is in new parameter set.
797 (output_cgraph_opt_summary): New parameter set, passed to the two
798 aforementioned functions. Update its forward declaration and its
801 2011-01-05 Tom Tromey <tromey@redhat.com>
803 * c-parser.c (c_parser_omp_atomic): Pass location of assignment
804 operator to c_finish_omp_atomic.
805 * c-typeck.c (lvalue_or_else): Add 'loc' argument.
806 (build_unary_op): Update.
807 (build_modify_expr): Update.
808 (build_asm_expr): Update.
810 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
812 * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
813 newly inserted insns.
815 (spu_emit_branch_hint): Likewise.
816 (insert_hbrp_for_ilb_runout): Likewise.
817 (spu_machine_dependent_reorg): Call df_finish_pass after
818 schedule_insns returns.
820 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
822 * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
824 2011-01-05 Eric Botcazou <ebotcazou@adacore.com>
826 PR tree-optimization/47005
827 * tree-sra.c (struct access): Add 'non_addressable' bit.
828 (create_access): Set it for a DECL_NONADDRESSABLE_P field.
829 (decide_one_param_reduction): Return 0 if the parameter is passed by
830 reference and one of the accesses in the group is non_addressable.
832 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
834 PR tree-optimization/47056
835 * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
836 (mark_load): Likewise. Handle FUNCTION_DECL specially.
837 (mark_store): Likewise. Pass STMT to ipa_record_reference.
839 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
841 * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
842 initializer. Skip view conversions from aggregate types.
844 2011-01-04 Kai Tietz <kai.tietz@onevision.com>
847 * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
849 2011-01-04 Philipp Thomas <pth@suse.de>
851 * config/microblaze/microbalse.opt (mxl-float-convert): Fix
854 2011-01-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
856 * function.c (thread_prologue_and_epilogue_insns): Do not crash
857 on empty epilogue sequences.
859 2011-01-04 Joseph Myers <joseph@codesourcery.com>
861 * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
862 non-static): New Driver options.
864 2011-01-04 Jie Zhang <jie@codesourcery.com>
867 * gcc.c (default_compilers[]): Set combinable field to 0
868 for all assembly languages.
870 2011-01-04 Mingjie Xing <mingjie.xing@gmail.com>
872 * config/mips/loongson3a.md: New file.
873 * config/mips/mips.md: Include loongson3a.md.
874 * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
877 2011-01-03 Eric Botcazou <ebotcazou@adacore.com>
880 * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
881 instead of convert_memory_address_addr_space on the base expression.
883 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
885 * config/spu/spu.c (spu_option_override): Update error text
886 for bad -march= / -mtune= values.
888 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
890 * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
891 if branch-hint optimization will be performed.
893 2011-01-03 Jakub Jelinek <jakub@redhat.com>
895 PR tree-optimization/47148
896 * ipa-split.c (split_function): Convert arguments to
897 DECL_ARG_TYPE if possible.
899 PR tree-optimization/47155
900 * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
903 PR rtl-optimization/47157
904 * combine.c (try_combine): If undobuf.other_insn becomes
905 (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
906 and set *new_direct_jump_p too.
908 2011-01-03 Sebastian Pop <sebastian.pop@amd.com>
910 PR tree-optimization/47021
911 * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
913 2011-01-03 Jakub Jelinek <jakub@redhat.com>
915 * gcc.c (process_command): Update copyright notice dates.
916 * gcov.c (print_version): Likewise.
917 * gcov-dump.c (print_version): Likewise.
918 * mips-tfile.c (main): Likewise.
919 * mips-tdump.c (main): Likewise.
921 2011-01-03 Martin Jambor <mjambor@suse.cz>
923 PR tree-optimization/46801
924 * tree-sra.c (type_internals_preclude_sra_p): Check whether
925 aggregate fields start at byte boundary instead of the bit-field flag.
927 2011-01-03 H.J. Lu <hongjiu.lu@intel.com>
930 * gcc.c (main): Revert revision 168407.
932 2011-01-03 Martin Jambor <mjambor@suse.cz>
934 * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
936 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
938 * tree-vect-generic.c (expand_vector_operations_1): When using vector/
939 vector optab to expand vector/scalar shift, update gimple to vector.
941 2011-01-03 Martin Jambor <mjambor@suse.cz>
943 * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
946 2011-01-03 Martin Jambor <mjambor@suse.cz>
948 PR tree-optimization/46984
949 * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
951 (cgraph_create_indirect_edge): Fixed line length.
952 (cgraph_indirect_call_info): Declare.
953 (cgraph_make_edge_direct) Update declaration.
954 * cgraph.c (cgraph_allocate_init_indirect_info): New function.
955 (cgraph_create_indirect_edge): Use it.
956 (cgraph_make_edge_direct): Made delta HOST_WIDE_INT. Updated all
958 * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
959 the new thunk_delta representation.
960 * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
962 (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
963 (ipa_read_indirect_edge_info): Likewise.
964 * lto-cgraph.c (output_edge_opt_summary): New function.
965 (output_node_opt_summary): Call it on all outgoing edges.
966 (input_edge_opt_summary): New function.
967 (input_node_opt_summary): Call it on all outgoing edges.
969 2011-01-02 H.J. Lu <hongjiu.lu@intel.com>
972 * gcc.c (main): Don't check have_o when settting combine_inputs.
974 2011-01-02 Eric Botcazou <ebotcazou@adacore.com>
976 * regrename.c: Add general comment describing the pass.
977 (struct du_head): Remove 'length' field.
978 (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
979 (regrename_optimize): Do not sort chains. Rework comments, add others.
980 Force renaming to the preferred class (if any) in the first pass and do
981 not consider registers that belong to it in the second pass.
982 (create_new_chain): Do not set 'length' field.
983 (scan_rtx_reg): Likewise.
985 2011-01-02 Jakub Jelinek <jakub@redhat.com>
987 PR tree-optimization/47140
988 * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
989 TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
992 PR rtl-optimization/47028
993 * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
994 parm_birth_insn instead of at the beginning of first bb.
996 2011-01-02 Mingjie Xing <mingjie.xing@gmail.com>
998 * doc/generic.texi: Remove duplicated "@subsubsection Statements".
999 Remove the word "see" before "@pxref".
1000 * doc/rtl.texi: Remove the word "see" before "@pxref".
1002 2011-01-01 Jan Hubicka <jh@suse.cz>
1004 * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
1007 2011-01-01 Kai Tietz <kai.tietz@onevision.com>
1010 * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
1013 Copyright (C) 2011 Free Software Foundation, Inc.
1015 Copying and distribution of this file, with or without modification,
1016 are permitted in any medium without royalty provided the copyright
1017 notice and this notice are preserved.