OSDN Git Service

2011-01-11 Richard Guenther <rguenther@suse.de>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2011-01-11  Richard Guenther  <rguenther@suse.de>
2
3         PR tree-optimization/46076
4         * tree-ssa.c (useless_type_conversion_p): Conversions from
5         unprototyped to empty argument list function types are useless.
6
7 2011-01-11  Richard Guenther  <rguenther@suse.de>
8
9         PR middle-end/45235
10         * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
11         volatile MEMs as MEM_READONLY_P.
12
13 2011-01-11  Richard Guenther  <rguenther@suse.de>
14
15         PR tree-optimization/47239
16         * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
17
18 2011-01-11  Jeff Law  <law@redhat.com>
19
20         * PR tree-optimization/47086
21         * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
22         IVs from statements that might throw.
23
24 2011-01-10  Jan Hubicka  <jh@suse.cz>
25
26         PR lto/45375
27         * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
28
29 2011-01-10  Jan Hubicka  <jh@suse.cz>
30
31         PR lto/45375
32         * profile.c (read_profile_edge_counts): Ignore profile inconistency
33         when correcting profile.
34
35 2011-01-10  Jan Hubicka  <jh@suse.cz>
36
37         PR lto/46083
38         * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
39         DECL_FINI_PRIORITY.
40         * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
41         Restore DECL_FINI_PRIORITY.
42
43 2011-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
44
45         * doc/gimple.texi: Fix quoting of multi-word return values in
46         @deftypefn statements.  Ensure presence of return value.  Wrap
47         overlong @deftypefn lines.
48         (is_gimple_operand, is_gimple_min_invariant_address): Remove
49         descriptions of removed functions.
50         * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
51         of multi-word return value in @deftypefn statement.
52
53 2011-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
54
55         * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
56         (Conditional Expressions, Logical Operators)
57         (Statement and operand traversals): Do not indent smallexample
58         code.  Fix duplicate function argument in example.
59
60 2011-01-10  Jeff Law  <law@redhat.com>
61
62         * PR tree-optimization/47141
63         * ipa-split.c (split_function): Handle case where we are
64         returning a value and the return block has a virtual operand phi.
65
66 2011-01-10  Jan Hubicka  <jh@suse.cz>
67
68         PR tree-optimization/47234 
69         * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
70         (pass_feedback_split_functions): Declare.
71         * passes.c (init_optimization_passes): Add ipa-split as subpass of
72         tree-profile.
73         * ipa-split.c (gate_split_functions): Update comments; disable
74         split-functions for profile_arc_flag and branch_probabilities.
75         (gate_feedback_split_functions): New function.
76         (execute_feedback_split_functions): New function.
77         (pass_feedback_split_functions): New global var.
78
79 2011-01-10  H.J. Lu  <hongjiu.lu@intel.com>
80
81         PR lto/46760
82         * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
83         calling gimple_call_set_cannot_inline.
84
85 2011-01-10  Iain Sandoe  <iains@gcc.gnu.org>
86
87         * config/darwin-sections.def: Remove unused section.
88
89 2011-01-10  Dave Korn  <dave.korn.cygwin@gmail.com>
90
91         PR c++/47218
92         * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
93
94 2011-01-09  Nicola Pero  <nicola.pero@meta-innovation.com>
95
96         PR objc/47232
97         * c-parser.c (c_parser_declaration_or_fndef): Improved
98         error message.
99
100 2011-01-09  Kai Tietz  <kai.tietz@onevision.com>
101
102         * config/i386/winnt.c (i386_pe_start_function): Make sure
103         to switch back to function's section.
104
105 2011-01-09  Iain Sandoe  <iains@gcc.gnu.org>
106
107         PR gcc/46902
108         PR testsuite/46912
109         * plugin.c: Move include of dlfcn.h from here...
110         * system.h: ... to here.
111
112 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
113
114         * doc/cpp.texi (C++ Named Operators): Fix markup for header
115         file name.
116         * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
117         two extra empty pages in PDF output.
118
119 2011-01-08  Nicola Pero  <nicola.pero@meta-innovation.com>
120
121         PR objc/47078
122         * c-parser.c (c_parser_objc_type_name): If the type is unknown,
123         for error recovery purposes behave as if it was not specified so
124         that the default type is usd.
125
126 2011-01-07  Jan Hubicka  <jh@suse.cz>
127
128         PR tree-optmization/46469
129         * ipa.c (function_and_variable_visibility): Clear needed flags on
130         nodes with external decls; handle weakrefs merging correctly.
131
132 2011-01-07  Joseph Myers  <joseph@codesourcery.com>
133
134         * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
135         not false.
136
137 2011-01-07  Jan Hubicka  <jh@suse.cz>
138
139         * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
140         and no longer claim that gold is required for linker plugin.
141         * configure: Regenerate.
142         * gcc.c (PLUGIN_COND): New macro.
143         (LINK_COMMAND_SPEC): Use it.
144         (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
145         * config.in (HAVE_LTO_PLUGIN): New.
146         * configure.ac (--with-lto-plugin): New parameter; autodetect
147         HAVE_LTO_PLUGIN.
148
149 2011-01-07  Jan Hubicka  <jh@suse.cz>
150
151         PR tree-optimization/46367
152         * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
153         when we can update original.
154         (cgraph_mark_inline_edge): Sanity check.
155         * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
156
157 2011-01-07  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
158
159         * config/spu/spu.h (ASM_COMMENT_START): Define.
160
161 2011-01-07  H.J. Lu  <hongjiu.lu@intel.com>
162
163         PR driver/42445
164         * gcc.c (%>S): New.
165         (SWITCH_KEEP_FOR_GCC): Likewise.
166         (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
167         (do_spec_1): Handle "%>".
168
169         * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
170
171 2011-01-07  Jakub Jelinek  <jakub@redhat.com>
172
173         PR target/47201
174         * config/i386/i386.c (ix86_delegitimize_address): If
175         simplify_gen_subreg fails, return orig_x.
176
177         PR bootstrap/47187
178         * value-prof.c (gimple_stringop_fixed_value): Handle
179         lhs of the call properly.
180
181 2011-01-07  Jan Hubicka  <jh@suse.cz>
182
183         PR lto/45375
184         * lto-opt.c (lto_reissue_options): Set flag_shlib.
185
186 2011-01-07  Iain Sandoe  <iains@gcc.gnu.org>
187
188         * target.def (function_switched_text_sections): New hook.
189         * doc/tm.texi: Regenerated.
190         * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
191         * final.c (default_function_switched_text_sections): New.
192         (final_scan_insn): Call function_switched_text_sections when a
193         mid-function section change occurs.
194         * output.h (default_function_switched_text_sections): Declare.
195         * config/darwin-protos.h (darwin_function_switched_text_sections):
196         Likewise.
197         * config/darwin.c (darwin_function_switched_text_sections): New.
198         * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
199
200 2011-01-07  Iain Sandoe  <iains@gcc.gnu.org>
201
202         * dwarf2out.c (gen_subprogram_die):  Add pubnames with code ranges for
203         DWARF >= 3.  Add pubnames for the primary section and a reduced DIE for
204         the secondary code fragment when outputting for DWARF == 2.
205
206 2011-01-07  Anatoly Sokolov  <aesok@post.ru>
207
208         * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
209         * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
210         Remove.
211         * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
212         (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
213
214 2011-01-06  Eric Botcazou  <ebotcazou@adacore.com>
215
216         PR debug/46704
217         * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section
218         only when it is not empty.
219
220 2011-01-06  Changpeng Fang  <changpeng.fang@amd.com>
221
222         Bobcat Enablement
223         * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
224         (case ${target}): Add btver1.
225         * config/i386/driver-i386.c (host_detect_local_cpu): Let
226         -march=native recognize btver1 processors.
227         * config/i386/i386-c.c (ix86_target_macros_internal): Add
228         btver1 def_and_undef
229         * config/i386/i386.c (struct processor_costs btver1_cost): New
230         btver1 cost table.
231         (m_BTVER1): New definition.
232         (m_AMD_MULTIPLE): Includes m_BTVER1.
233         (initial_ix86_tune_features): Add btver1 tune.
234         (processor_target_table): Add btver1 entry.
235         (static const char *const cpu_names): Add btver1 entry.
236         (software_prefetching_beneficial_p): Add btver1.
237         (ix86_option_override_internal): Add btver1 instruction sets.
238         (ix86_issue_rate): Add btver1.
239         (ix86_adjust_cost): Add btver1.
240         * config/i386/i386.h (TARGET_BTVER1): New definition.
241         (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
242         (enum processor_type): Add PROCESSOR_BTVER1.
243         * config/i386/i386.md (define_attr "cpu"): Add btver1.
244
245 2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
246
247         PR target/43309
248         * config/i386/i386.c (legitimize_tls_address)
249         <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
250         * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
251         (tls_initial_exec_64_sun): New pattern.
252
253 2011-01-06  Gerald Pfeifer  <gerald@pfeifer.com>
254
255         * doc/invoke.texi (Overall Options): Improve wording and markup
256         of the description of -wrapper.
257
258 2011-01-06  Joseph Myers  <joseph@codesourcery.com>
259
260         * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
261         rdynamic, threads): New Driver options.
262
263 2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
264
265         PR target/38118
266         * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
267         if coming from .tdata.
268         * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
269
270 2011-01-06  Jan Hubicka  <jh@suse.cz>
271
272         PR lto/47188
273         * collect2.c (main): Do not enable LTOmode when plugin is active.
274
275 2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
276
277         PR other/45915
278         * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
279         --version output if supported.
280         * configure: Regenerate.
281
282 2011-01-06  Joseph Myers  <joseph@codesourcery.com>
283
284         * config/linux-android.opt (tno-android-cc, tno-android-ld): New
285         Driver options.
286
287 2011-01-06  Jakub Jelinek  <jakub@redhat.com>
288
289         PR c/47150
290         * c-convert.c (convert): When converting a complex expression
291         other than COMPLEX_EXPR to a different complex type, ensure
292         c_save_expr is called instead of save_expr, unless in_late_binary_op.
293         * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
294         when converting COMPLEX_TYPE.
295
296 2011-01-06  Ira Rosen  <irar@il.ibm.com>
297
298         PR tree-optimization/47139
299         * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
300         only the last reduction value is used outside the loop.  Update
301         documentation.
302
303 2011-01-05  Joseph Myers  <joseph@codesourcery.com>
304
305         * config/rtems.opt: New.
306         * config.gcc (*-*-rtems*): Use rtems.opt.
307
308 2011-01-05  Changpeng Fang  <changpeng.fang@amd.com>
309
310         * config/i386/i386.c (ix86_option_override_internal): Bulldozer
311         processors do not support 3DNow instructions.
312
313 2011-01-05  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
314
315         * config/spu/spu.c (spu_option_override): Set parameter
316         PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
317
318 2011-01-05  Jan Hubicka  <jh@suse.cz>
319
320         * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
321         at the command line.
322
323 2011-01-05  Martin Jambor  <mjambor@suse.cz>
324
325         PR lto/47162
326         * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
327         deltas on streamed outgoing edges.
328         (output_node_opt_summary): Output info for outgoing edges only when
329         the node is in new parameter set.
330         (output_cgraph_opt_summary): New parameter set, passed to the two
331         aforementioned functions.  Update its forward declaration and its
332         callee too.
333
334 2011-01-05  Tom Tromey  <tromey@redhat.com>
335
336         * c-parser.c (c_parser_omp_atomic): Pass location of assignment
337         operator to c_finish_omp_atomic.
338         * c-typeck.c (lvalue_or_else): Add 'loc' argument.
339         (build_unary_op): Update.
340         (build_modify_expr): Update.
341         (build_asm_expr): Update.
342
343 2011-01-05  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
344
345         * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
346         newly inserted insns.
347         (pad_bb): Likewise.
348         (spu_emit_branch_hint): Likewise.
349         (insert_hbrp_for_ilb_runout): Likewise.
350         (spu_machine_dependent_reorg): Call df_finish_pass after
351         schedule_insns returns.
352
353 2011-01-05  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
354
355         * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
356
357 2011-01-05  Eric Botcazou  <ebotcazou@adacore.com>
358
359         PR tree-optimization/47005
360         * tree-sra.c (struct access): Add 'non_addressable' bit.
361         (create_access): Set it for a DECL_NONADDRESSABLE_P field.
362         (decide_one_param_reduction): Return 0 if the parameter is passed by
363         reference and one of the accesses in the group is non_addressable.
364
365 2011-01-04  Eric Botcazou  <ebotcazou@adacore.com>
366
367         PR tree-optimization/47056
368         * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
369         (mark_load): Likewise.  Handle FUNCTION_DECL specially.
370         (mark_store): Likewise.  Pass STMT to ipa_record_reference.
371
372 2011-01-04  Eric Botcazou  <ebotcazou@adacore.com>
373
374         * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
375         initializer.  Skip view conversions from aggregate types.
376
377 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
378
379         PR bootstrap/47055
380         * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
381
382 2011-01-04  Philipp Thomas <pth@suse.de>
383
384         * config/microblaze/microbalse.opt (mxl-float-convert): Fix
385         obvious typo.
386
387 2011-01-04  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
388
389         * function.c (thread_prologue_and_epilogue_insns): Do not crash
390         on empty epilogue sequences.
391
392 2011-01-04  Joseph Myers  <joseph@codesourcery.com>
393
394         * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
395         non-static): New Driver options.
396
397 2011-01-04  Jie Zhang  <jie@codesourcery.com>
398
399         PR driver/47137
400         * gcc.c (default_compilers[]): Set combinable field to 0
401         for all assembly languages.
402
403 2011-01-04  Mingjie Xing  <mingjie.xing@gmail.com>
404
405         * config/mips/loongson3a.md: New file.
406         * config/mips/mips.md: Include loongson3a.md.
407         * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
408         TUNE_LOONGSON_3A.
409
410 2011-01-03  Eric Botcazou  <ebotcazou@adacore.com>
411
412         PR middle-end/47017
413         * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
414         instead of convert_memory_address_addr_space on the base expression.
415
416 2011-01-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
417
418         * config/spu/spu.c (spu_option_override): Update error text
419         for bad -march= / -mtune= values.
420
421 2011-01-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
422
423         * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
424         if branch-hint optimization will be performed.
425
426 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
427
428         PR tree-optimization/47148
429         * ipa-split.c (split_function): Convert arguments to
430         DECL_ARG_TYPE if possible.
431
432         PR tree-optimization/47155
433         * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
434         when computing uns.
435
436         PR rtl-optimization/47157
437         * combine.c (try_combine): If undobuf.other_insn becomes
438         (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
439         and set *new_direct_jump_p too.
440
441 2011-01-03  Sebastian Pop  <sebastian.pop@amd.com>
442
443         PR tree-optimization/47021
444         * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
445
446 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
447
448         * gcc.c (process_command): Update copyright notice dates.
449         * gcov.c (print_version): Likewise.
450         * gcov-dump.c (print_version): Likewise.
451         * mips-tfile.c (main): Likewise.
452         * mips-tdump.c (main): Likewise.
453
454 2011-01-03  Martin Jambor  <mjambor@suse.cz>
455
456         PR tree-optimization/46801
457         * tree-sra.c (type_internals_preclude_sra_p): Check whether
458         aggregate fields start at byte boundary instead of the bit-field flag.
459
460 2011-01-03  H.J. Lu  <hongjiu.lu@intel.com>
461
462         PR driver/47137
463         * gcc.c (main): Revert revision 168407.
464
465 2011-01-03  Martin Jambor  <mjambor@suse.cz>
466
467         * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
468
469 2011-01-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
470
471         * tree-vect-generic.c (expand_vector_operations_1): When using vector/
472         vector optab to expand vector/scalar shift, update gimple to vector.
473
474 2011-01-03  Martin Jambor  <mjambor@suse.cz>
475
476         * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
477         a thunk.
478
479 2011-01-03  Martin Jambor  <mjambor@suse.cz>
480
481         PR tree-optimization/46984
482         * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
483         HOST_WIDE_INT.
484         (cgraph_create_indirect_edge): Fixed line length.
485         (cgraph_indirect_call_info): Declare.
486         (cgraph_make_edge_direct) Update declaration.
487         * cgraph.c (cgraph_allocate_init_indirect_info): New function.
488         (cgraph_create_indirect_edge): Use it.
489         (cgraph_make_edge_direct): Made delta HOST_WIDE_INT.  Updated all
490         callees.
491         * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
492         the new thunk_delta representation.
493         * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
494         HOST_WIDE_INT.
495         (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
496         (ipa_read_indirect_edge_info): Likewise.
497         * lto-cgraph.c (output_edge_opt_summary): New function.
498         (output_node_opt_summary): Call it on all outgoing edges.
499         (input_edge_opt_summary): New function.
500         (input_node_opt_summary): Call it on all outgoing edges.
501
502 2011-01-02  H.J. Lu  <hongjiu.lu@intel.com>
503
504         PR driver/47137
505         * gcc.c (main): Don't check have_o when settting combine_inputs.
506
507 2011-01-02  Eric Botcazou  <ebotcazou@adacore.com>
508
509         * regrename.c: Add general comment describing the pass.
510         (struct du_head): Remove 'length' field.
511         (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
512         (regrename_optimize): Do not sort chains.  Rework comments, add others.
513         Force renaming to the preferred class (if any) in the first pass and do
514         not consider registers that belong to it in the second pass.
515         (create_new_chain): Do not set 'length' field.
516         (scan_rtx_reg): Likewise.
517
518 2011-01-02  Jakub Jelinek  <jakub@redhat.com>
519
520         PR tree-optimization/47140
521         * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
522         TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
523         to bit_value_binop.
524
525         PR rtl-optimization/47028
526         * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
527         parm_birth_insn instead of at the beginning of first bb.
528
529 2011-01-02  Mingjie Xing  <mingjie.xing@gmail.com>
530
531         * doc/generic.texi: Remove duplicated "@subsubsection Statements".
532         Remove the word "see" before "@pxref".
533         * doc/rtl.texi: Remove the word "see" before "@pxref".
534
535 2011-01-01  Jan Hubicka  <jh@suse.cz>
536
537         * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
538         memory.
539
540 2011-01-01  Kai Tietz  <kai.tietz@onevision.com>
541
542         PR target/38662
543         * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
544
545 \f
546 Copyright (C) 2011 Free Software Foundation, Inc.
547
548 Copying and distribution of this file, with or without modification,
549 are permitted in any medium without royalty provided the copyright
550 notice and this notice are preserved.