OSDN Git Service

Update loop-block testcases.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2010-01-07  Richard Guenther  <rguenther@suse.de>
2
3         * gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
4         (gimple_op): Likewise.
5         (gimple_op_ptr): Likewise.
6         (gimple_assign_set_lhs): Remove gcc_assert.
7         (gimple_assign_set_rhs1): Likewise.
8         (gimple_assign_set_rhs2): Likewise.
9         (gimple_call_set_lhs): Likewise.
10         (gimple_call_set_fn): Likewise.
11         (gimple_call_set_fndecl): Likewise.
12         (gimple_call_fndecl): Likewise.
13         (gimple_call_return_type): Likewise.
14         (gimple_call_set_chain): Likewise.
15         (gimple_call_num_args): Likewise.
16         (gimple_call_set_arg): Likewise.
17         (gimple_cond_set_code): Likewise.
18         (gimple_cond_set_lhs): Likewise.
19         (gimple_cond_set_rhs): Likewise.
20         (gimple_cond_set_true_label): Likewise.
21         (gimple_cond_set_false_label): Likewise.
22         (gimple_label_set_label): Likewise.
23         (gimple_goto_set_dest): Likewise.
24         (gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
25         (gimple_debug_bind_get_value): Likewise.
26         (gimple_debug_bind_get_value_ptr): Likewise.
27         (gimple_debug_bind_set_var): Likewise.
28         (gimple_debug_bind_set_value): Likewise.
29         (gimple_debug_bind_reset_value): Likewise.
30         (gimple_debug_bind_has_value_p): Likewise.
31         (gimple_return_retval_ptr): Remove gcc_assert.
32         (gimple_return_retval): Likewise.
33         (gimple_return_set_retval): Likewise.
34         * tree-flow.h (struct gimple_df): Remove nonlocal_all member.
35         (safe_referenced_var_iterator): Remove.
36         (FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
37         * tree-flow-inline.h (gimple_nonlocal_all): Remove.
38         (fill_referenced_var_vec): Remove.
39         (first_readonly_imm_use): Remove redundant gcc_assert.
40         (phi_arg_index_from_use): Combine gcc_asserts.
41         (move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
42         (first_imm_use_stmt): Remove redundant gcc_assert.
43         * tree-cfg.c (verify_gimple_call): Verify function and chain
44         operands.  Verify arguments.
45         (verify_types_in_gimple_stmt): Verify condition code and labels.
46
47 2010-01-07  Richard Guenther  <rguenther@suse.de>
48
49         PR tree-optimization/42641
50         * sese.c (rename_map_elt_info): Use the SSA name version, do
51         not hash pointers.
52
53 2010-01-07  Jakub Jelinek  <jakub@redhat.com>
54
55         PR tree-optimization/42625
56         * cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
57         TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body
58         aliases.
59
60 2010-01-07  Duncan Sands  <baldrick@free.fr>
61
62         * Makefile.in (PLUGIN_HEADERS): Add version.h.
63
64 2010-01-07  Uros Bizjak  <ubizjak@gmail.com>
65
66         PR target/42511
67         * ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
68         note itself is not function_invariant_p.
69
70 2009-01-07  Steven Bosscher  <steven@gcc.gnu.org>
71
72         * gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
73         Do not add the DF_NOTE problem.
74         * store-motion.c (execute_rtl_store_motion): Likewise.
75
76 2010-01-07  Martin Jambor  <mjambor@suse.cz>
77
78         PR tree-optimization/42157
79         * tree-sra.c (compare_access_positions): Stabilize sort if both
80         accesses have integer types, return zero immediately if they are the
81         same.
82
83 2010-01-06  Richard Henderson  <rth@redhat.com>
84
85         PR middle-end/41883
86         * haifa-sched.c (add_to_note_list): Merge into ...
87         (concat_note_lists): ... here, and ...
88         (unlink_other_notes, rm_other_notes): Merge into...
89         (remove_notes): ... here.  Create REG_SAVE_NOTEs for
90         NOTE_INSN_EPILOGUE_BEG.  
91
92 2010-01-06  Richard Guenther  <rguenther@suse.de>
93
94         * ipa-inline.c (cgraph_decide_inlining_incrementally): Do
95         not inline regular functions into always-inline functions.
96
97 2010-01-06  Nick Clifton  <nickc@redhat.com>
98
99         * config/rx/rx.h (enum rx_cpu_type): Add RX200.
100         (CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
101         used together.
102         (OVERRIDE_OPTIONS): Delete.
103         (OPTIMIZATION_OPTIONS): Define.
104         (ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
105         * config/rx/rx.c (rx_handle_option): Issue an error message if
106         -mcpu=rx200 and -fpu are used together.
107         (rx_set_optimization_options): New function.  Issue an error
108         message if an optimization attribute attempts to reset the FPU/
109         math optimization pairing.
110         * config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
111         * config/rx/rx.opt: Set the default to 32-bit doubles.
112         * config/rx/t-rx: Add multilibs for -nofpu option.
113         * doc/invoke.texi: Update documentation of RX options.
114
115 2010-01-06  Richard Guenther  <rguenther@suse.de>
116
117         * tree-ssa-pre.c (name_to_id): New global.
118         (alloc_expression_id): Simplify SSA name handling.
119         (lookup_expression_id): Likewise.
120         (init_pre): Zero name_to_id.
121         (fini_pre): Free it.
122
123 2010-01-06  Uros Bizjak  <ubizjak@gmail.com>
124
125         * ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
126
127 2010-01-05  H.J. Lu  <hongjiu.lu@intel.com>
128
129         PR target/42542
130         * config/i386/sse.md (smaxv2di3): New.
131         (umaxv2di3): Likewise.
132         (sminv2di3): Likewise.
133         (uminv2di3): Likewise.
134
135 2010-01-05  Eric Botcazou  <ebotcazou@adacore.com>
136
137         PR target/42564
138         * config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
139         * config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
140         (legitimize_tls_address): Likewise.
141         (sparc_tls_referenced_p): Likewise.
142         * config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
143         and adjust calls to legitimize_pic_address.
144         (legitimate_constant_p) Use sparc_tls_referenced_p.
145         (legitimate_pic_operand_p): Likewise.
146         (sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
147         (sparc_tls_symbol_ref_1): Delete.
148         (sparc_tls_referenced_p): Make static, recognize specific patterns.
149         (legitimize_tls_address): Make static, handle CONST patterns.
150         (legitimize_pic_address): Make static, remove unused parameter and
151         adjust recursive calls.
152         (sparc_legitimize_address): Make static, use sparc_tls_referenced_p
153         and adjust call to legitimize_pic_address.
154         (sparc_output_mi_thunk): Likewise.
155
156 2010-01-05  Paolo Bonzini  <bonzini@gnu.rg>
157             H.J. Lu  <hongjiu.lu@intel.com>
158
159         PR target/42542
160         * config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
161         for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
162         operands to make them signed.
163
164         Revert:
165         2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
166
167         PR target/42542
168         * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
169         GTU to GT for V4SI and V2DI.
170
171         * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
172         (umin<mode>3): Removed.
173         (uminv8hi3): New.
174         (uminv4si3): Likewise.
175
176 2010-01-05  Martin Jambor  <mjambor@suse.cz>
177
178         PR tree-optimization/42462
179         * ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
180         current_function_decl to helper functions and macros.
181
182 2010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
183
184         PR bootstrap/41771
185         * flags.h: Don't include real.h.
186         (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
187         HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
188         * real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
189         HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
190         * dominance.c: Update copyright.
191         * gimple.c (walk_gimple_op): Remove inline.
192         * tree-ssa-reassoc.c: Include real.h.
193         * Makefile.in (FLAGS_H): Remove $(REAL_H).
194         (tree-ssa-reassoc.o): Depend on $(REAL_H).
195
196 2010-01-05  Nick Clifton  <nickc@redhat.com>
197
198         * config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
199         register to push into the stack frame when the accumulator has to
200         be saved during interrupts.
201
202 2010-01-05  Eric Fisher  <joefoxreal@gmail.com>
203
204         * doc/invoke.texi: Remove the documentation about option
205         -Wunreachable-code.
206         * common.opt (Wunreachable-code):  Preserved for backward
207         compatibility.
208         * tree-cfg.c: Remove the implementation of -Wunreachable-code.
209         * opts.c (common_handle_option): Add OPT_Wunreachable_code to
210         the backward compatibility flag section.
211
212 2010-01-05  Richard Guenther  <rguenther@suse.de>
213
214         * tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
215
216 2010-01-05  Jakub Jelinek  <jakub@redhat.com>
217
218         PR other/42611
219         * cfgexpand.c (expand_one_var): Diagnose too large variables.
220
221         PR tree-optimization/42508
222         * tree-sra.c (convert_callers): Check for recursive call
223         by comparing cgraph nodes instead of decls.
224         (modify_function): Call ipa_modify_formal_parameters also
225         on all same_body aliases.
226
227         * cgraphunit.c (cgraph_materialize_all_clones): Compare
228         cgraph nodes when checking for same_body aliases.
229
230 2010-01-05  Richard Guenther  <rguenther@suse.de>
231
232         * tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
233         allocation and lookup.
234         (get_or_alloc_expr_for_constant): Likewise.
235         (phi_translate): Sink allocation.
236
237 2010-01-04  Richard Guenther  <rguenther@suse.de>
238
239         * tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
240         a new entry only if needed.
241         * tree-ssa-dom.c (lookup_avail_expr): Likewise.
242         * tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
243         hashtable lookup.
244         * tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
245         the result array.
246         (phi_translate): Handle CONSTANTs early.
247
248 2010-01-04  Martin Jambor  <mjambor@suse.cz>
249
250         PR tree-optimization/42398
251         * tree-sra.c (struct access): Removed flag grp_different_types.
252         (dump_access): Do not dump the removed flag.
253         (sort_and_splice_var_accesses): Do not set the removed flag.
254         (sra_modify_expr): Check for type compatibility directly.
255
256 2010-01-04  Martin Jambor  <mjambor@suse.cz>
257
258         PR tree-optimization/42366
259         * ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
260         edges with variable number of parameters.
261         * ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
262         flag instead of asserting it.
263         (ipa_read_node_info): Read uses_analysis_done flag.
264
265 2010-01-04  Richard Guenther  <rguenther@suse.de>
266
267         * tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
268         iterative_hash_* as intended.
269         (vn_reference_compute_hash): Likewise.  Simplify hashing
270         SSA names.
271         (vn_reference_lookup_2): Likewise.
272         (vn_nary_op_compute_hash): Likewise.
273         (vn_phi_compute_hash): Likewise.
274         (expressions_equal_p): Remove strange code.
275         * tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
276         (pre_expr_hash): Likewise.  Simplify hashing SSA names.
277         (bitmap_insert_into_set_1): Take value-id as parameter.
278         (add_to_value): Pass it.
279         (bitmap_insert_into_set): Likewise.
280         (bitmap_value_insert_into_set): Likewise.  Remove redundant check.
281
282 2010-01-04  Jakub Jelinek  <jakub@redhat.com>
283
284         PR driver/42442
285         * gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
286         (do_self_spec): For switches with SWITCH_IGNORE set set also
287         SWITCH_IGNORE_PERMANENTLY.
288         (check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
289         of SWITCH_IGNORE.
290
291 2010-01-04  Rafael Avila de Espindola  <espindola@google.com>
292
293         * lto-streamer-out.c (output_unreferenced_globals): Output the full
294         tree of an unreferenced global var.
295
296 2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
297
298         PR target/42542
299         * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
300         GTU to GT for V4SI and V2DI.
301
302         * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
303         (umin<mode>3): Removed.
304         (uminv8hi3): New.
305         (uminv4si3): Likewise.
306
307 2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
308
309         PR lto/42581
310         * collect2.c (main): Turn on trace in collect2 if -v is passed
311         to gcc with LTO.
312
313 2010-01-03  Jerry Quinn  <jlquinn@optonline.net>
314
315         * doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR.  Update
316         description of expression operand.
317
318 2010-01-03  Andrew Jenner  <andrew@codesourcery.com>
319
320         * configure.ac: Add install-html to target_list for Make-hooks.
321         * configure: Regenerate.
322         * fortran/Make-lang.in (F95_HTMLFILES): New.
323         (fortran.html): Use it.
324         (fortran.install-html): New.
325         * Makefile.in (install-html): Add lang.install-html.
326         * java/Make-lang.in (JAVA_HTMLFILES): New.
327         (java.html): Use it.
328         (java.install-html): New.
329         * objc/Make-lang.in (objc.install-html): New.
330         * objcp/Make-lang.in (obj-c++.install-html): New.
331         * cp/Make-lang.in (c++.install-html): New.
332         * ada/gcc-interface/Make-lang.in (ada.install-html): New.
333         * lto/Make-lang.in (lto.install-html): New.
334
335 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
336
337         PR lto/42520
338         * gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
339
340 2009-01-03  Steven Bosscher  <steven@gcc.gnu.org>
341
342         PR rtl-optimization/41862
343         * store-motion.c (store_killed_in_insn, compute_store_table,
344         remove_reachable_equiv_notes, replace_store_insn,
345         build_store_vectors): Ignore all DEBUG_INSNs.
346
347 2010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
348
349         PR lto/41564
350         * common.opt: Add dumpdir.
351
352         * gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
353         isn't specified.
354         (option_map): Add --dumpdir.
355
356         * gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
357
358         * lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
359
360         * opts.c (decode_options): Try dump_dir_name first if
361         dump_base_name isn't an absolute path.
362         (common_handle_option): Handle OPT_dumpdir.
363
364         * toplev.c (dump_dir_name): New.
365         (print_switch_values): Also ignore -dumpdir.
366
367         * toplev.h (dump_dir_name): New.
368
369 2010-01-03  Richard Guenther  <rguenther@suse.de>
370
371         PR tree-optimization/42589
372         * tree-ssa-math-opts.c (execute_optimize_bswap): Allow
373         double-word expansion of bswap32.
374
375 2010-01-03  Steven Bosscher  <steven@gcc.gnu.org>
376
377         * postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
378         with BLOCK_FOR_INSN.
379         * auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
380         * ifcvt.c (noce_get_alt_condition, noce_try_abs,
381         noce_process_if_block): Likewise.
382         * gcse.c (compute_local_properties, insert_expr_in_table,
383         insert_set_in_table, canon_list_insert, find_avail_set,
384         pre_insert_copy_insn): Likewise.
385
386         * basic-block.h (BLOCK_NUM): Move from here...
387         * sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
388
389 2010-01-03  Richard Guenther  <rguenther@suse.de>
390
391         PR tree-optimization/42438
392         * tree-ssa-pre.c (struct bb_bitmap_sets): Add
393         contains_may_not_return_call flag.
394         (BB_MAY_NOTRETURN): New.
395         (valid_in_sets): Trapping nary operations are not valid
396         in blocks that may not return.
397         (insert_into_preds_of_block): Remove check for trapping
398         expressions.
399         (compute_avail): Compute also BB_MAY_NOTRETURN.
400
401 2010-01-03  Gerald Pfeifer  <gerald@pfeifer.com>
402
403         * doc/invoke.texi: Add 2010 to copyright years.
404
405 2010-01-03  Eric Botcazou  <ebotcazou@adacore.com>
406
407         * config/sparc/sparc.c: Fix formatting nits.
408
409 2010-01-02  Gerald Pfeifer  <gerald@pfeifer.com>
410             Alexander Monakov  <amonakov@ispras.ru>
411
412         * doc/invoke.texi (Optimize Options): Reword introduction a bit.
413
414 2010-01-02  Richard Guenther  <rguenther@suse.de>
415
416         PR middle-end/42577
417         * tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
418         (simplify_switch_using_ranges): Mark to be removed edges
419         as non-executable.
420
421 2010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
422
423         * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
424
425         * collect2.c (scan_libraries): Add missing argument in call to
426         scan_prog_file.
427
428 2010-01-02  Uros Bizjak  <ubizjak@gmail.com>
429
430         PR target/42448
431         * config/alpha/predicates.md (aligned_memory_operand): Return false
432         for CQImode.
433         (unaligned_memory_operand): Return true for CQImode.
434         * config/alpha/alpha.c (get_aligned_mem): Assert that location
435         doesn not cross aligned SImode word boundary.
436
437 2010-01-02  Anatoly Sokolov  <aesok@post.ru>
438
439         * config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
440         Remove.
441         * config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
442         avr_change_section, avr_reg_class_from_letter) : Remove declaration.
443
444 2010-01-02  Richard Guenther  <rguenther@suse.de>
445
446         PR lto/41597
447         * toplev.c (compile_file): Emit LTO marker properly.  Change
448         it to __gnu_lto_v1.
449         * collect2.c (scan_prog_file): Adjust for changed LTO marker.
450
451 2010-01-01  Richard Guenther  <rguenther@suse.de>
452
453         PR debug/42455
454         * tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
455
456 2010-01-01  Richard Guenther  <rguenther@suse.de>
457
458         PR c/42570
459         * c-decl.c (grokdeclarator): For zero-size arrays force
460         structural equality checks as layout_type does.
461
462 2010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
463
464         * builtins.c: Update copyright to 2010.
465
466 2010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
467
468         PR lto/42531
469         * lto-streamer-out.c (produce_asm): Revert the last change.
470         (copy_function): Likewise.
471
472         * lto-streamer.c (lto_get_section_name): Skip any leading
473         asterisk in name.
474
475 2010-01-01  Richard Guenther  <rguenther@suse.de>
476
477         PR middle-end/42559
478         * builtins.c (get_object_alignment): Do not use DECL_ALIGN
479         for LABEL_DECLs.
480
481 \f
482 Copyright (C) 2010 Free Software Foundation, Inc.
483
484 Copying and distribution of this file, with or without modification,
485 are permitted in any medium without royalty provided the copyright
486 notice and this notice are preserved.