1 2010-01-09 Alexandre Oliva <aoliva@redhat.com>
4 * gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
5 * tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
6 (verify_gimple_call): Reject LHS in noreturn calls.
8 2010-01-09 Alexandre Oliva <aoliva@redhat.com>
12 * tree-vect-loop-manip.c (adjust_info): New type.
13 (adjust_vec): New pointer to vector.
14 (adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
15 (adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
16 (slpeel_update_phis_for_duplicate_loop): Use them.
17 (slpeel_update_phi_nodes_for_guard1): Likewise.
18 (slpeel_update_phi_nodes_for_guard2): Likewise.
19 (slpeel_tree_peel_loop_to_edge): Likewise.
20 (vect_update_ivs_after_vectorizer): Likewise.
22 2010-01-09 Alexandre Oliva <aoliva@redhat.com>
24 * vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
25 (DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
27 2010-01-09 Alexandre Oliva <aoliva@redhat.com>
29 * config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
30 bogus uninitialized warning.
32 2010-01-09 Richard Guenther <rguenther@suse.de>
35 * tree-scalar-evolution.c (interpret_loop_phi): Make sure
36 the evolution is compatible with the initial condition.
38 2010-01-09 Jakub Jelinek <jakub@redhat.com>
40 * gcc.c (process_command): Update copyright notice dates.
41 * gcov.c (print_version): Likewise.
42 * gcov-dump.c (print_version): Likewise.
43 * mips-tfile.c (main): Likewise.
44 * mips-tdump.c (main): Likewise.
46 2010-01-08 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>
49 * avr.md (rotlqi3): Add CONST_INT_P check.
59 * avr.c (avr_rotate_bytes): New function.
60 * avr-proto.h (avr_rotate_bytes): New function.
62 2010-01-08 Steve Ellcey <sje@cup.hp.com>
65 * configure.ac: Modify -rdynamic check.
66 * configure: Regenerate.
68 2010-01-08 DJ Delorie <dj@redhat.com>
70 * config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
71 register popping order.
73 2010-01-08 Richard Guenther <rguenther@suse.de>
76 * c.opt (fsigned-char): Also let LTO handle this option.
77 (funsigned-char): Likewise.
79 2010-01-07 Richard Guenther <rguenther@suse.de>
81 * gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
82 (gimple_op): Likewise.
83 (gimple_op_ptr): Likewise.
84 (gimple_assign_set_lhs): Remove gcc_assert.
85 (gimple_assign_set_rhs1): Likewise.
86 (gimple_assign_set_rhs2): Likewise.
87 (gimple_call_set_lhs): Likewise.
88 (gimple_call_set_fn): Likewise.
89 (gimple_call_set_fndecl): Likewise.
90 (gimple_call_fndecl): Likewise.
91 (gimple_call_return_type): Likewise.
92 (gimple_call_set_chain): Likewise.
93 (gimple_call_num_args): Likewise.
94 (gimple_call_set_arg): Likewise.
95 (gimple_cond_set_code): Likewise.
96 (gimple_cond_set_lhs): Likewise.
97 (gimple_cond_set_rhs): Likewise.
98 (gimple_cond_set_true_label): Likewise.
99 (gimple_cond_set_false_label): Likewise.
100 (gimple_label_set_label): Likewise.
101 (gimple_goto_set_dest): Likewise.
102 (gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
103 (gimple_debug_bind_get_value): Likewise.
104 (gimple_debug_bind_get_value_ptr): Likewise.
105 (gimple_debug_bind_set_var): Likewise.
106 (gimple_debug_bind_set_value): Likewise.
107 (gimple_debug_bind_reset_value): Likewise.
108 (gimple_debug_bind_has_value_p): Likewise.
109 (gimple_return_retval_ptr): Remove gcc_assert.
110 (gimple_return_retval): Likewise.
111 (gimple_return_set_retval): Likewise.
112 * tree-flow.h (struct gimple_df): Remove nonlocal_all member.
113 (safe_referenced_var_iterator): Remove.
114 (FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
115 * tree-flow-inline.h (gimple_nonlocal_all): Remove.
116 (fill_referenced_var_vec): Remove.
117 (first_readonly_imm_use): Remove redundant gcc_assert.
118 (phi_arg_index_from_use): Combine gcc_asserts.
119 (move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
120 (first_imm_use_stmt): Remove redundant gcc_assert.
121 * tree-cfg.c (verify_gimple_call): Verify function and chain
122 operands. Verify arguments.
123 (verify_types_in_gimple_stmt): Verify condition code and labels.
125 2010-01-07 Richard Guenther <rguenther@suse.de>
127 PR tree-optimization/42641
128 * sese.c (rename_map_elt_info): Use the SSA name version, do
131 2010-01-07 Jakub Jelinek <jakub@redhat.com>
133 PR tree-optimization/42625
134 * cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
135 TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body
138 2010-01-07 Duncan Sands <baldrick@free.fr>
140 * Makefile.in (PLUGIN_HEADERS): Add version.h.
142 2010-01-07 Uros Bizjak <ubizjak@gmail.com>
145 * ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
146 note itself is not function_invariant_p.
148 2009-01-07 Steven Bosscher <steven@gcc.gnu.org>
150 * gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
151 Do not add the DF_NOTE problem.
152 * store-motion.c (execute_rtl_store_motion): Likewise.
154 2010-01-07 Martin Jambor <mjambor@suse.cz>
156 PR tree-optimization/42157
157 * tree-sra.c (compare_access_positions): Stabilize sort if both
158 accesses have integer types, return zero immediately if they are the
161 2010-01-06 Richard Henderson <rth@redhat.com>
164 * haifa-sched.c (add_to_note_list): Merge into ...
165 (concat_note_lists): ... here, and ...
166 (unlink_other_notes, rm_other_notes): Merge into...
167 (remove_notes): ... here. Create REG_SAVE_NOTEs for
168 NOTE_INSN_EPILOGUE_BEG.
170 2010-01-06 Richard Guenther <rguenther@suse.de>
172 * ipa-inline.c (cgraph_decide_inlining_incrementally): Do
173 not inline regular functions into always-inline functions.
175 2010-01-06 Nick Clifton <nickc@redhat.com>
177 * config/rx/rx.h (enum rx_cpu_type): Add RX200.
178 (CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
180 (OVERRIDE_OPTIONS): Delete.
181 (OPTIMIZATION_OPTIONS): Define.
182 (ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
183 * config/rx/rx.c (rx_handle_option): Issue an error message if
184 -mcpu=rx200 and -fpu are used together.
185 (rx_set_optimization_options): New function. Issue an error
186 message if an optimization attribute attempts to reset the FPU/
187 math optimization pairing.
188 * config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
189 * config/rx/rx.opt: Set the default to 32-bit doubles.
190 * config/rx/t-rx: Add multilibs for -nofpu option.
191 * doc/invoke.texi: Update documentation of RX options.
193 2010-01-06 Richard Guenther <rguenther@suse.de>
195 * tree-ssa-pre.c (name_to_id): New global.
196 (alloc_expression_id): Simplify SSA name handling.
197 (lookup_expression_id): Likewise.
198 (init_pre): Zero name_to_id.
201 2010-01-06 Uros Bizjak <ubizjak@gmail.com>
203 * ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
205 2010-01-05 H.J. Lu <hongjiu.lu@intel.com>
208 * config/i386/sse.md (smaxv2di3): New.
209 (umaxv2di3): Likewise.
210 (sminv2di3): Likewise.
211 (uminv2di3): Likewise.
213 2010-01-05 Eric Botcazou <ebotcazou@adacore.com>
216 * config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
217 * config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
218 (legitimize_tls_address): Likewise.
219 (sparc_tls_referenced_p): Likewise.
220 * config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
221 and adjust calls to legitimize_pic_address.
222 (legitimate_constant_p) Use sparc_tls_referenced_p.
223 (legitimate_pic_operand_p): Likewise.
224 (sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
225 (sparc_tls_symbol_ref_1): Delete.
226 (sparc_tls_referenced_p): Make static, recognize specific patterns.
227 (legitimize_tls_address): Make static, handle CONST patterns.
228 (legitimize_pic_address): Make static, remove unused parameter and
229 adjust recursive calls.
230 (sparc_legitimize_address): Make static, use sparc_tls_referenced_p
231 and adjust call to legitimize_pic_address.
232 (sparc_output_mi_thunk): Likewise.
234 2010-01-05 Paolo Bonzini <bonzini@gnu.rg>
235 H.J. Lu <hongjiu.lu@intel.com>
238 * config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
239 for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
240 operands to make them signed.
243 2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
246 * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
247 GTU to GT for V4SI and V2DI.
249 * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
250 (umin<mode>3): Removed.
252 (uminv4si3): Likewise.
254 2010-01-05 Martin Jambor <mjambor@suse.cz>
256 PR tree-optimization/42462
257 * ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
258 current_function_decl to helper functions and macros.
260 2010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
263 * flags.h: Don't include real.h.
264 (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
265 HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
266 * real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
267 HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
268 * dominance.c: Update copyright.
269 * gimple.c (walk_gimple_op): Remove inline.
270 * tree-ssa-reassoc.c: Include real.h.
271 * Makefile.in (FLAGS_H): Remove $(REAL_H).
272 (tree-ssa-reassoc.o): Depend on $(REAL_H).
274 2010-01-05 Nick Clifton <nickc@redhat.com>
276 * config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
277 register to push into the stack frame when the accumulator has to
278 be saved during interrupts.
280 2010-01-05 Eric Fisher <joefoxreal@gmail.com>
282 * doc/invoke.texi: Remove the documentation about option
284 * common.opt (Wunreachable-code): Preserved for backward
286 * tree-cfg.c: Remove the implementation of -Wunreachable-code.
287 * opts.c (common_handle_option): Add OPT_Wunreachable_code to
288 the backward compatibility flag section.
290 2010-01-05 Richard Guenther <rguenther@suse.de>
292 * tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
294 2010-01-05 Jakub Jelinek <jakub@redhat.com>
297 * cfgexpand.c (expand_one_var): Diagnose too large variables.
299 PR tree-optimization/42508
300 * tree-sra.c (convert_callers): Check for recursive call
301 by comparing cgraph nodes instead of decls.
302 (modify_function): Call ipa_modify_formal_parameters also
303 on all same_body aliases.
305 * cgraphunit.c (cgraph_materialize_all_clones): Compare
306 cgraph nodes when checking for same_body aliases.
308 2010-01-05 Richard Guenther <rguenther@suse.de>
310 * tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
311 allocation and lookup.
312 (get_or_alloc_expr_for_constant): Likewise.
313 (phi_translate): Sink allocation.
315 2010-01-04 Richard Guenther <rguenther@suse.de>
317 * tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
318 a new entry only if needed.
319 * tree-ssa-dom.c (lookup_avail_expr): Likewise.
320 * tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
322 * tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
324 (phi_translate): Handle CONSTANTs early.
326 2010-01-04 Martin Jambor <mjambor@suse.cz>
328 PR tree-optimization/42398
329 * tree-sra.c (struct access): Removed flag grp_different_types.
330 (dump_access): Do not dump the removed flag.
331 (sort_and_splice_var_accesses): Do not set the removed flag.
332 (sra_modify_expr): Check for type compatibility directly.
334 2010-01-04 Martin Jambor <mjambor@suse.cz>
336 PR tree-optimization/42366
337 * ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
338 edges with variable number of parameters.
339 * ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
340 flag instead of asserting it.
341 (ipa_read_node_info): Read uses_analysis_done flag.
343 2010-01-04 Richard Guenther <rguenther@suse.de>
345 * tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
346 iterative_hash_* as intended.
347 (vn_reference_compute_hash): Likewise. Simplify hashing
349 (vn_reference_lookup_2): Likewise.
350 (vn_nary_op_compute_hash): Likewise.
351 (vn_phi_compute_hash): Likewise.
352 (expressions_equal_p): Remove strange code.
353 * tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
354 (pre_expr_hash): Likewise. Simplify hashing SSA names.
355 (bitmap_insert_into_set_1): Take value-id as parameter.
356 (add_to_value): Pass it.
357 (bitmap_insert_into_set): Likewise.
358 (bitmap_value_insert_into_set): Likewise. Remove redundant check.
360 2010-01-04 Jakub Jelinek <jakub@redhat.com>
363 * gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
364 (do_self_spec): For switches with SWITCH_IGNORE set set also
365 SWITCH_IGNORE_PERMANENTLY.
366 (check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
369 2010-01-04 Rafael Avila de Espindola <espindola@google.com>
371 * lto-streamer-out.c (output_unreferenced_globals): Output the full
372 tree of an unreferenced global var.
374 2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
377 * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
378 GTU to GT for V4SI and V2DI.
380 * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
381 (umin<mode>3): Removed.
383 (uminv4si3): Likewise.
385 2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
388 * collect2.c (main): Turn on trace in collect2 if -v is passed
391 2010-01-03 Jerry Quinn <jlquinn@optonline.net>
393 * doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR. Update
394 description of expression operand.
396 2010-01-03 Andrew Jenner <andrew@codesourcery.com>
398 * configure.ac: Add install-html to target_list for Make-hooks.
399 * configure: Regenerate.
400 * fortran/Make-lang.in (F95_HTMLFILES): New.
401 (fortran.html): Use it.
402 (fortran.install-html): New.
403 * Makefile.in (install-html): Add lang.install-html.
404 * java/Make-lang.in (JAVA_HTMLFILES): New.
406 (java.install-html): New.
407 * objc/Make-lang.in (objc.install-html): New.
408 * objcp/Make-lang.in (obj-c++.install-html): New.
409 * cp/Make-lang.in (c++.install-html): New.
410 * ada/gcc-interface/Make-lang.in (ada.install-html): New.
411 * lto/Make-lang.in (lto.install-html): New.
413 2010-01-03 H.J. Lu <hongjiu.lu@intel.com>
416 * gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
418 2009-01-03 Steven Bosscher <steven@gcc.gnu.org>
420 PR rtl-optimization/41862
421 * store-motion.c (store_killed_in_insn, compute_store_table,
422 remove_reachable_equiv_notes, replace_store_insn,
423 build_store_vectors): Ignore all DEBUG_INSNs.
425 2010-01-03 H.J. Lu <hongjiu.lu@intel.com>
428 * common.opt: Add dumpdir.
430 * gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
432 (option_map): Add --dumpdir.
434 * gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
436 * lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
438 * opts.c (decode_options): Try dump_dir_name first if
439 dump_base_name isn't an absolute path.
440 (common_handle_option): Handle OPT_dumpdir.
442 * toplev.c (dump_dir_name): New.
443 (print_switch_values): Also ignore -dumpdir.
445 * toplev.h (dump_dir_name): New.
447 2010-01-03 Richard Guenther <rguenther@suse.de>
449 PR tree-optimization/42589
450 * tree-ssa-math-opts.c (execute_optimize_bswap): Allow
451 double-word expansion of bswap32.
453 2010-01-03 Steven Bosscher <steven@gcc.gnu.org>
455 * postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
457 * auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
458 * ifcvt.c (noce_get_alt_condition, noce_try_abs,
459 noce_process_if_block): Likewise.
460 * gcse.c (compute_local_properties, insert_expr_in_table,
461 insert_set_in_table, canon_list_insert, find_avail_set,
462 pre_insert_copy_insn): Likewise.
464 * basic-block.h (BLOCK_NUM): Move from here...
465 * sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
467 2010-01-03 Richard Guenther <rguenther@suse.de>
469 PR tree-optimization/42438
470 * tree-ssa-pre.c (struct bb_bitmap_sets): Add
471 contains_may_not_return_call flag.
472 (BB_MAY_NOTRETURN): New.
473 (valid_in_sets): Trapping nary operations are not valid
474 in blocks that may not return.
475 (insert_into_preds_of_block): Remove check for trapping
477 (compute_avail): Compute also BB_MAY_NOTRETURN.
479 2010-01-03 Gerald Pfeifer <gerald@pfeifer.com>
481 * doc/invoke.texi: Add 2010 to copyright years.
483 2010-01-03 Eric Botcazou <ebotcazou@adacore.com>
485 * config/sparc/sparc.c: Fix formatting nits.
487 2010-01-02 Gerald Pfeifer <gerald@pfeifer.com>
488 Alexander Monakov <amonakov@ispras.ru>
490 * doc/invoke.texi (Optimize Options): Reword introduction a bit.
492 2010-01-02 Richard Guenther <rguenther@suse.de>
495 * tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
496 (simplify_switch_using_ranges): Mark to be removed edges
499 2010-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
501 * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
503 * collect2.c (scan_libraries): Add missing argument in call to
506 2010-01-02 Uros Bizjak <ubizjak@gmail.com>
509 * config/alpha/predicates.md (aligned_memory_operand): Return false
511 (unaligned_memory_operand): Return true for CQImode.
512 * config/alpha/alpha.c (get_aligned_mem): Assert that location
513 doesn not cross aligned SImode word boundary.
515 2010-01-02 Anatoly Sokolov <aesok@post.ru>
517 * config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
519 * config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
520 avr_change_section, avr_reg_class_from_letter) : Remove declaration.
522 2010-01-02 Richard Guenther <rguenther@suse.de>
525 * toplev.c (compile_file): Emit LTO marker properly. Change
527 * collect2.c (scan_prog_file): Adjust for changed LTO marker.
529 2010-01-01 Richard Guenther <rguenther@suse.de>
532 * tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
534 2010-01-01 Richard Guenther <rguenther@suse.de>
537 * c-decl.c (grokdeclarator): For zero-size arrays force
538 structural equality checks as layout_type does.
540 2010-01-01 H.J. Lu <hongjiu.lu@intel.com>
542 * builtins.c: Update copyright to 2010.
544 2010-01-01 H.J. Lu <hongjiu.lu@intel.com>
547 * lto-streamer-out.c (produce_asm): Revert the last change.
548 (copy_function): Likewise.
550 * lto-streamer.c (lto_get_section_name): Skip any leading
553 2010-01-01 Richard Guenther <rguenther@suse.de>
556 * builtins.c (get_object_alignment): Do not use DECL_ALIGN
560 Copyright (C) 2010 Free Software Foundation, Inc.
562 Copying and distribution of this file, with or without modification,
563 are permitted in any medium without royalty provided the copyright
564 notice and this notice are preserved.