OSDN Git Service

PR fortran/46416
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2011-01-15  Eric Botcazou  <ebotcazou@adacore.com>
2
3         * config/sparc/sol2-bi.h (CC1_SPEC): Fix typo.
4
5 2011-01-15  Jan Hubicka  <jh@suse.cz>
6
7         PR tree-optimization/47276
8         * ipa.c (function_and_variable_visibility): Do not try to mark alias
9         declarations as needed.
10
11 2011-01-15  Martin Jambor  <mjambor@suse.cz>
12
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.
21
22 2011-01-14  Martin Jambor  <mjambor@suse.cz>
23
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.
37
38 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
39
40         * config/i386/i386.h (CC1_CPU_SPEC_1): Don't handle -msse5.
41         * config/i386/i386.opt (msse5): New Alias.
42
43 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
44
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.
49
50 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
51
52         * config/sparc/linux.h (CC1_SPEC): Don't handle old equivalents of
53         -mcpu options.
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):
58         Likewise.
59         * config/sparc/t-elf (MULTILIB_MATCHES): Don't handle -mv8.
60
61 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
62
63         * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -fvec or
64         -fvec-eabi.
65
66 2011-01-14  Mike Stump  <mikestump@comcast.net>
67
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.
75
76 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
77
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.
86
87 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
88
89         * config/microblaze/microblaze.h (ASM_SPEC): Remove
90         %{microblaze1}.
91
92 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
93
94         * config/m32r/little.h (CPP_ENDIAN_SPEC, CC1_ENDIAN_SPEC,
95         ASM_ENDIAN_SPEC, LINK_ENDIAN_SPEC): Remove.
96
97 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
98
99         * config/i386/nwld.h (LINK_SPEC): Check -nodefaultlibs not
100         -nodefaultlib.
101
102 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
103
104         * config/cris/cris.h (ASM_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check
105         for mcpu not cpu.
106         * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC,
107         CRIS_CC1_SUBTARGET_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check for mcpu
108         not cpu.
109         (CRIS_LINK_SUBTARGET_SPEC): Don't generate -rpath-link options.
110         Don't handle -shlib.
111
112 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
113
114         * config/avr/avr.h (CPP_SPEC): Don't handle -posix.
115         (CC1_SPEC): Don't handle -profile.
116
117 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
118
119         * config/microblaze/microblaze.h (CC1_SPEC): Remove -gline spec.
120         * config/mips/mips.h (CC1_SPEC): Likewise.
121
122 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
123
124         * config/microblaze/microblaze.h (CC1_SPEC): Remove %{save-temps: }.
125         * config/mips/mips.h (CC1_SPEC): Likewise.
126
127 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
128
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.
137
138 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
139
140         * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove
141         %{version:-v}.
142         * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
143
144 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
145
146         * config/sparc/sp-elf.h (ASM_SPEC): Remove %{v:-V}.
147         * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
148
149 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
150
151         * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove %{b}.
152
153 2011-01-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
154
155         * configure.ac (gcc_cv_ld_static_dynamic): Solaris 2 ld always
156         supports -Bstatic/-Bdynamic.
157         * configure: Regenerate.
158
159 2011-01-14  Jan Hubicka  <jh@suse.cz>
160         Jack Howarth <howarth@bromo.med.uc.edu>
161
162         PR target/46037
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.
166
167 2011-01-14  Richard Guenther  <rguenther@suse.de>
168
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.
181
182 2011-01-14  Richard Guenther  <rguenther@suse.de>
183
184         * tree-ssa-structalias.c  (new_var_info): Use DECL_HARD_REGISTER.
185
186 2011-01-14  Richard Guenther  <rguenther@suse.de>
187
188         PR tree-optimization/47280
189         * tree-ssa-forwprop.c (associate_plusminus): Cleanup EH and
190         return CFG changes.
191         (tree_ssa_forward_propagate_single_use_vars): Deal with
192         CFG changes from associate_plusminus.
193
194 2011-01-14  Richard Guenther  <rguenther@suse.de>
195
196         PR middle-end/47281
197         Revert
198         2011-01-11  Richard Guenther  <rguenther@suse.de>
199
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.
203
204 2011-01-14  Richard Guenther  <rguenther@suse.de>
205
206         PR tree-optimization/47286
207         * tree-ssa-structalias.c (new_var_info): Register variables are global.
208
209 2011-01-14  Martin Jambor  <mjambor@suse.cz>
210
211         PR middle-end/46823
212         * tree-inline.c (expand_call_inline): Get fndecl from call graph edge.
213
214 2011-01-13  Anatoly Sokolov  <aesok@post.ru>
215
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.
221
222 2011-01-13  Kai Tietz  <kai.tietz@onevision.com>
223
224         PR c++/47213
225         * config/i386/cygming.h (TARGET_ASM_ASSEMBLE_VISIBILITY):
226         PE specific hook.
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.
231
232 2011-01-13  Michael Meissner  <meissner@linux.vnet.ibm.com>
233
234         PR target/47251
235         * config/rs6000/rs6000.md (floatunsdidf2): Add check for hardware
236         floating point.
237         (floatunsdidf2_fcfidu): Ditto.
238
239 2011-01-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
240
241         * config/s390/s390.c (print_operand_address): Replace 'error' with
242         'output_operand_lossage'.
243         (print_operand): Likewise.
244
245 2011-01-13  Jeff Law  <law@redhat.com>
246
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.
254
255 2011-01-13  Dodji Seketeli  <dodji@redhat.com>
256
257         PR debug/PR46973
258         * dwarf2out.c (prune_unused_types_mark_generic_parms_dies): New
259         static function.
260         (prune_unused_types_mark): Use it.
261
262 2011-01-13  Andrey Belevantsev  <abel@ispras.ru>
263
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. 
268
269 2011-01-12  Richard Henderson  <rth@redhat.com>
270
271         * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
272         (TARGET_MD_ASM_CLOBBERS): New.
273
274         * config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
275         (TARGET_DELEGITIMIZE_ADDRESS): New.
276
277         * config/mn10300/mn10300.md (UNSPEC_BSCH): New.
278         (clzsi2, *bsch): New patterns.
279
280         * config/mn10300/mn10300.md (INT): New mode iterator.
281         (*mov<INT>_clr): New pattern, and peep2 to generate it.
282
283         * config/mn10300/mn10300.c (mn10300_option_override): Force enable
284         flag_split_wide_types.
285
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.
290
291 2011-01-12  Anatoly Sokolov  <aesok@post.ru>
292
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.
297
298 2011-01-12  Kai Tietz  <kai.tietz@onevision.com>
299
300         PR debug/47209
301         * dwarfout2.c (should_emit_struct_debug): Use TYPE_MAIN_VARIANT
302         of type.
303
304 2011-01-12  Jan Hubicka  <jh@suse.cz>
305
306         PR driver/47244
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.
310
311 2011-01-12  Richard Guenther  <rguenther@suse.de>
312
313         PR lto/47259
314         * lto-streamer-out.c (output_gimple_stmt): Do not wrap
315         register variables in a MEM_REF.
316
317 2011-01-12  Joseph Myers  <joseph@codesourcery.com>
318
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.
356
357 2011-01-12  Richard Guenther  <rguenther@suse.de>
358
359         PR other/46946
360         * doc/invoke.texi (ffast-math): Document it is turned on
361         with -Ofast.
362
363 2011-01-12  Jan Hubicka  <jh@suse.cz>
364
365         PR tree-optimization/47233
366         * opts.c (common_handle_option): Disable ipa-reference with profile
367         feedback.
368
369 2011-01-12  Nicola Pero  <nicola.pero@meta-innovation.com>      
370
371         * c-parser.c (c_parser_objc_at_property_declaration): Improved
372         error message.
373
374 2011-01-12  Nicola Pero  <nicola.pero@meta-innovation.com>
375
376         * c-parser.c (c_lex_one_token): Updated and reindented some
377         comments.  No changes in code.
378
379 2011-01-11  Ian Lance Taylor  <iant@google.com>
380
381         * godump.c (go_output_var): Don't output the variable if there is
382         already a type with the same name.
383
384 2011-01-11  Ian Lance Taylor  <iant@google.com>
385
386         * godump.c (go_format_type): Don't generate float80.
387
388 2011-01-11  Richard Henderson  <rth@redhat.com>
389
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.
403
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.
413
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.
418
419         * config/mn10300/mn10300.md (isa): New attribute.
420         (enabled): New attribute.
421
422         * config/mn10300/mn10300.md (absdf2, negdf2): Remove.
423         (abssf2, negsf2): Define only for hardware fp.
424         (sqrtsf2): Reformat.
425         (addsf3, subsf3, mulsf3): Merge expander and insn.
426
427         * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
428         (DEBUGGER_AUTO_OFFSET): Remove.
429         (DEBUGGER_ARG_OFFSET): Remove.
430
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.
436
437         * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
438
439         * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
440         in terms of the value on the stack, not the MDR register.
441
442 2011-01-11  Jan Hubicka  <jh@suse.cz>
443
444         PR lto/45721
445         PR lto/45375
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
455         as needed in lto.
456         * varasm.c (symbol_alias_set_t): Remove.
457         (symbol_alias_set_destroy): Export.
458         (propagate_aliases_forward, propagate_aliases_backward): New functions
459         based on ...
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
466         in LTO mode.
467
468 2011-01-11  Richard Guenther  <rguenther@suse.de>
469
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.
473
474 2011-01-11  Richard Guenther  <rguenther@suse.de>
475
476         PR middle-end/45235
477         * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
478         volatile MEMs as MEM_READONLY_P.
479
480 2011-01-11  Richard Guenther  <rguenther@suse.de>
481
482         PR tree-optimization/47239
483         * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
484
485 2011-01-11  Jeff Law  <law@redhat.com>
486
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.
490
491 2011-01-10  Jan Hubicka  <jh@suse.cz>
492
493         PR lto/45375
494         * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
495
496 2011-01-10  Jan Hubicka  <jh@suse.cz>
497
498         PR lto/45375
499         * profile.c (read_profile_edge_counts): Ignore profile inconistency
500         when correcting profile.
501
502 2011-01-10  Jan Hubicka  <jh@suse.cz>
503
504         PR lto/46083
505         * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
506         DECL_FINI_PRIORITY.
507         * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
508         Restore DECL_FINI_PRIORITY.
509
510 2011-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
511
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.
519
520 2011-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
521
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.
526
527 2011-01-10  Jeff Law  <law@redhat.com>
528
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.
532
533 2011-01-10  Jan Hubicka  <jh@suse.cz>
534
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
539         tree-profile.
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.
545
546 2011-01-10  H.J. Lu  <hongjiu.lu@intel.com>
547
548         PR lto/46760
549         * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
550         calling gimple_call_set_cannot_inline.
551
552 2011-01-10  Iain Sandoe  <iains@gcc.gnu.org>
553
554         * config/darwin-sections.def: Remove unused section.
555
556 2011-01-10  Dave Korn  <dave.korn.cygwin@gmail.com>
557
558         PR c++/47218
559         * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
560
561 2011-01-09  Nicola Pero  <nicola.pero@meta-innovation.com>
562
563         PR objc/47232
564         * c-parser.c (c_parser_declaration_or_fndef): Improved
565         error message.
566
567 2011-01-09  Kai Tietz  <kai.tietz@onevision.com>
568
569         * config/i386/winnt.c (i386_pe_start_function): Make sure
570         to switch back to function's section.
571
572 2011-01-09  Iain Sandoe  <iains@gcc.gnu.org>
573
574         PR gcc/46902
575         PR testsuite/46912
576         * plugin.c: Move include of dlfcn.h from here...
577         * system.h: ... to here.
578
579 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
580
581         * doc/cpp.texi (C++ Named Operators): Fix markup for header
582         file name.
583         * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
584         two extra empty pages in PDF output.
585
586 2011-01-08  Nicola Pero  <nicola.pero@meta-innovation.com>
587
588         PR objc/47078
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.
592
593 2011-01-07  Jan Hubicka  <jh@suse.cz>
594
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.
598
599 2011-01-07  Joseph Myers  <joseph@codesourcery.com>
600
601         * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
602         not false.
603
604 2011-01-07  Jan Hubicka  <jh@suse.cz>
605
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
614         HAVE_LTO_PLUGIN.
615
616 2011-01-07  Jan Hubicka  <jh@suse.cz>
617
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.
623
624 2011-01-07  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
625
626         * config/spu/spu.h (ASM_COMMENT_START): Define.
627
628 2011-01-07  H.J. Lu  <hongjiu.lu@intel.com>
629
630         PR driver/42445
631         * gcc.c (%>S): New.
632         (SWITCH_KEEP_FOR_GCC): Likewise.
633         (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
634         (do_spec_1): Handle "%>".
635
636         * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
637
638 2011-01-07  Jakub Jelinek  <jakub@redhat.com>
639
640         PR target/47201
641         * config/i386/i386.c (ix86_delegitimize_address): If
642         simplify_gen_subreg fails, return orig_x.
643
644         PR bootstrap/47187
645         * value-prof.c (gimple_stringop_fixed_value): Handle
646         lhs of the call properly.
647
648 2011-01-07  Jan Hubicka  <jh@suse.cz>
649
650         PR lto/45375
651         * lto-opt.c (lto_reissue_options): Set flag_shlib.
652
653 2011-01-07  Iain Sandoe  <iains@gcc.gnu.org>
654
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):
663         Likewise.
664         * config/darwin.c (darwin_function_switched_text_sections): New.
665         * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
666
667 2011-01-07  Iain Sandoe  <iains@gcc.gnu.org>
668
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.
672
673 2011-01-07  Anatoly Sokolov  <aesok@post.ru>
674
675         * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
676         * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
677         Remove.
678         * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
679         (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
680
681 2011-01-06  Eric Botcazou  <ebotcazou@adacore.com>
682
683         PR debug/46704
684         * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section only
685         when it is not empty.
686
687 2011-01-06  Changpeng Fang  <changpeng.fang@amd.com>
688
689         Bobcat Enablement
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
695         btver1 def_and_undef
696         * config/i386/i386.c (struct processor_costs btver1_cost): New
697         btver1 cost table.
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.
711
712 2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
713
714         PR target/43309
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.
719
720 2011-01-06  Gerald Pfeifer  <gerald@pfeifer.com>
721
722         * doc/invoke.texi (Overall Options): Improve wording and markup
723         of the description of -wrapper.
724
725 2011-01-06  Joseph Myers  <joseph@codesourcery.com>
726
727         * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
728         rdynamic, threads): New Driver options.
729
730 2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
731
732         PR target/38118
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.
736
737 2011-01-06  Jan Hubicka  <jh@suse.cz>
738
739         PR lto/47188
740         * collect2.c (main): Do not enable LTOmode when plugin is active.
741
742 2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
743
744         PR other/45915
745         * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
746         --version output if supported.
747         * configure: Regenerate.
748
749 2011-01-06  Joseph Myers  <joseph@codesourcery.com>
750
751         * config/linux-android.opt (tno-android-cc, tno-android-ld): New
752         Driver options.
753
754 2011-01-06  Jakub Jelinek  <jakub@redhat.com>
755
756         PR c/47150
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.
762
763 2011-01-06  Ira Rosen  <irar@il.ibm.com>
764
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
768         documentation.
769
770 2011-01-05  Joseph Myers  <joseph@codesourcery.com>
771
772         * config/rtems.opt: New.
773         * config.gcc (*-*-rtems*): Use rtems.opt.
774
775 2011-01-05  Changpeng Fang  <changpeng.fang@amd.com>
776
777         * config/i386/i386.c (ix86_option_override_internal): Bulldozer
778         processors do not support 3DNow instructions.
779
780 2011-01-05  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
781
782         * config/spu/spu.c (spu_option_override): Set parameter
783         PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
784
785 2011-01-05  Jan Hubicka  <jh@suse.cz>
786
787         * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
788         at the command line.
789
790 2011-01-05  Martin Jambor  <mjambor@suse.cz>
791
792         PR lto/47162
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
799         callee too.
800
801 2011-01-05  Tom Tromey  <tromey@redhat.com>
802
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.
809
810 2011-01-05  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
811
812         * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
813         newly inserted insns.
814         (pad_bb): Likewise.
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.
819
820 2011-01-05  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
821
822         * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
823
824 2011-01-05  Eric Botcazou  <ebotcazou@adacore.com>
825
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.
831
832 2011-01-04  Eric Botcazou  <ebotcazou@adacore.com>
833
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.
838
839 2011-01-04  Eric Botcazou  <ebotcazou@adacore.com>
840
841         * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
842         initializer.  Skip view conversions from aggregate types.
843
844 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
845
846         PR bootstrap/47055
847         * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
848
849 2011-01-04  Philipp Thomas <pth@suse.de>
850
851         * config/microblaze/microbalse.opt (mxl-float-convert): Fix
852         obvious typo.
853
854 2011-01-04  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
855
856         * function.c (thread_prologue_and_epilogue_insns): Do not crash
857         on empty epilogue sequences.
858
859 2011-01-04  Joseph Myers  <joseph@codesourcery.com>
860
861         * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
862         non-static): New Driver options.
863
864 2011-01-04  Jie Zhang  <jie@codesourcery.com>
865
866         PR driver/47137
867         * gcc.c (default_compilers[]): Set combinable field to 0
868         for all assembly languages.
869
870 2011-01-04  Mingjie Xing  <mingjie.xing@gmail.com>
871
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
875         TUNE_LOONGSON_3A.
876
877 2011-01-03  Eric Botcazou  <ebotcazou@adacore.com>
878
879         PR middle-end/47017
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.
882
883 2011-01-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
884
885         * config/spu/spu.c (spu_option_override): Update error text
886         for bad -march= / -mtune= values.
887
888 2011-01-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
889
890         * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
891         if branch-hint optimization will be performed.
892
893 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
894
895         PR tree-optimization/47148
896         * ipa-split.c (split_function): Convert arguments to
897         DECL_ARG_TYPE if possible.
898
899         PR tree-optimization/47155
900         * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
901         when computing uns.
902
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.
907
908 2011-01-03  Sebastian Pop  <sebastian.pop@amd.com>
909
910         PR tree-optimization/47021
911         * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
912
913 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
914
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.
920
921 2011-01-03  Martin Jambor  <mjambor@suse.cz>
922
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.
926
927 2011-01-03  H.J. Lu  <hongjiu.lu@intel.com>
928
929         PR driver/47137
930         * gcc.c (main): Revert revision 168407.
931
932 2011-01-03  Martin Jambor  <mjambor@suse.cz>
933
934         * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
935
936 2011-01-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
937
938         * tree-vect-generic.c (expand_vector_operations_1): When using vector/
939         vector optab to expand vector/scalar shift, update gimple to vector.
940
941 2011-01-03  Martin Jambor  <mjambor@suse.cz>
942
943         * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
944         a thunk.
945
946 2011-01-03  Martin Jambor  <mjambor@suse.cz>
947
948         PR tree-optimization/46984
949         * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
950         HOST_WIDE_INT.
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
957         callees.
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
961         HOST_WIDE_INT.
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.
968
969 2011-01-02  H.J. Lu  <hongjiu.lu@intel.com>
970
971         PR driver/47137
972         * gcc.c (main): Don't check have_o when settting combine_inputs.
973
974 2011-01-02  Eric Botcazou  <ebotcazou@adacore.com>
975
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.
984
985 2011-01-02  Jakub Jelinek  <jakub@redhat.com>
986
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
990         to bit_value_binop.
991
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.
995
996 2011-01-02  Mingjie Xing  <mingjie.xing@gmail.com>
997
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".
1001
1002 2011-01-01  Jan Hubicka  <jh@suse.cz>
1003
1004         * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
1005         memory.
1006
1007 2011-01-01  Kai Tietz  <kai.tietz@onevision.com>
1008
1009         PR target/38662
1010         * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
1011
1012 \f
1013 Copyright (C) 2011 Free Software Foundation, Inc.
1014
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.