+2010-11-17 Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
+
+ * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Support -fpic
+ as well as -mrelocatable at the same time.
+
+2010-11-17 Quentin Neill <quentin.neill.gnu@gmail.com>
+
+ PR target/46422
+ * config/i386/bmiintrin.h (__lzcnt_u16, __lzcnt_u32, __lzcnt_u64):
+ Call the clz builtin.
+
+2010-11-17 Dinar Temirbulatov <dtemirbulatov@gmail.com>
+ Steve Ellcey <sje@cup.hp.com>
+
+ PR middle-end/31490
+ * varasm.c (categorize_decl_for_section): Ignore reloc_rw_mask
+ if section attribute used.
+
+2010-11-17 Jan Hubicka <jh@suse.cz>
+
+ * builtins.c (expand_builtin_mathfn_2, expand_builtin_mathfn): Do not
+ expand errno setting variant when optimizing for size.
+
+2010-11-17 Eric Botcazou <ebotcazou@adacore.com>
+
+ * postreload.c (reload_combine): Call control_flow_insn_p only once.
+ Reverse backward loop. Fix formatting issues.
+
+2010-11-17 Paolo Bonzini <bonzini@gnu.org>
+
+ * c-parser.c (c_token_is_qualifier,
+ c_parser_next_token_is_qualifier): New.
+ (c_parser_declaration_or_fndef, c_parser_struct_declaration):
+ Improve error message on specs->tagdef_seen_p.
+ (c_parser_struct_or_union_specifier): Improve error recovery.
+ (c_parser_declspecs): Move exit condition on C_ID_ID early.
+ Reorganize exit condition for C_ID_TYPENAME/C_ID_CLASSNAME
+ using c_parser_next_token_is_qualifier; extend it to cover
+ a ctsk_tagdef typespec and !typespec_ok in general.
+
+2010-11-17 Richard Guenther <rguenther@suse.de>
+
+ * value-prof.c (gimple_divmod_fixed_value_transform): Update the stmt.
+ (gimple_mod_pow2_value_transform): Likewise.
+ (gimple_mod_subtract_transform): Likewise.
+
+2010-11-17 Richard Guenther <rguenther@suse.de>
+
+ PR lto/46504
+ * gimple.c (gimple_register_canonical_type): Make sure to only
+ make type leaders canonical types.
+
+2010-11-17 Michael Matz <matz@suse.de>
+
+ * timevar.def (TV_IPA_OPT, TV_EARLY_LOCAL, TV_OPTIMIZE,
+ TV_POSTRELOAD, TV_REMOVE_UNUSED, TV_ADDRESS_TAKEN, TV_TODO,
+ TV_VERIFY_LOOP_CLOSED, TV_VERIFY_RTL_SHARING,
+ TV_REBUILD_FREQUENCIES, TV_REPAIR_LOOPS): New.
+ * tree-into-ssa.c (rewrite_into_ssa): Don't push/pop timevar here ...
+ (pass_build_ssa): ... but here.
+ * cgraphbuild.c (pass_rebuild_cgraph): Use timevar.
+ * tree-ssa-loop-manip.c (verify_loop_closed_ssa): Use timevar.
+ * tree-emutls.c (pass_ipa_lower_emutls): Ditto.
+ * df-core.c (pass_df_initialize_opt, pass_df_initialize_no_opt): Ditto.
+ * predict.c (rebuild_frequencies): Ditto.
+ * tree-vectorizer.c (pass_ipa_increase_alignment): Ditto.
+ * emit-rtl.c (verify_rtl_sharing): Ditto.
+ * tree-cfgcleanup.c (repair_loop_structures): Ditto.
+ * tree-ssa-live.c (remove_unused_locals): Ditto.
+ * cfglayout.c (pass_into_cfg_layout, pass_outof_cfg_layout): Ditto.
+ * tree-ssa.c (pass_early_warn_uninitialized,
+ execute_update_addresses_taken, pass_update_address_taken): Ditto.
+ * tree-optimize.c (pass_all_optimizations, pass_early_local_passes,
+ pass_cleanup_cfg_post_optimizing, tree_rest_of_compilation): Ditto.
+ * passes.c (pass_postreload, execute_todo): Ditto.
+ * tree-ssanames.c (pass_release_ssa_names): Ditto.
+
+2010-11-17 Joseph Myers <joseph@codesourcery.com>
+
+ * doc/invoke.texi (-dy): Remove.
+ * langhooks-def.h (lhd_do_nothing_i): Don't declare.
+ (LANG_HOOKS_PARSE_FILE): Define to lhd_do_nothing.
+ * langhooks.c (lhd_do_nothing_i): Remove.
+ * langhooks.h (lang_hooks.parse_file): Take no arguments.
+ * toplev.c (set_yydebug): Remove.
+ (compile_file): Update call to lang_hooks.parse_file.
+ (decode_d_option): Don't handle -dy.
+
+2010-11-17 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/46440
+ * combine.c (update_cfg_for_uncondjump): When changing
+ an indirect jump into unconditional jump, remove BARRIERs
+ from bb's footer.
+
+2010-11-17 Joseph Myers <joseph@codesourcery.com>
+
+ * opts.c (target_handle_option): Do not assert that loc ==
+ UNKNOWN_LOCATION.
+
+2010-11-17 Jakub Jelinek <jakub@redhat.com>
+ Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/45838
+ * tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
+ call_may_clobber_ref_p_1): Return true for __sync_* and some
+ OpenMP builtins that act as threading barriers.
+
+2010-11-17 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/46498
+ * tree-ssa-dce.c (perform_tree_ssa_dce): Compute dominator info.
+
+2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/xtensa/xtensa.c (function_arg_boundary): Really rename to...
+ (xtensa_function_arg_boundary): ...this.
+ * config/picochip/pichochip.c (picochip_function_arg_boundary): Fix
+ thinko in declaration.
+ (picochip_function_arg, picochip_arg_partial_bytes): Pass proper
+ number of parameters to picochip_function_arg_boundary.
+ (picochip_arg_advance): Likewise.
+
+2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
+
+ PR target/46512
+ * config/pa/pa.c (pa_function_arg_boundary): Move TYPE_SIZE accesses
+ under check for type.
+
+2010-11-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ * ifcvt.c (dead_or_predicable): Fix typo.
+
+2010-11-16 Richard Henderson <rth@redhat.com>
+
+ * config.gcc [s390*-*] (extra_options): Add fused-madd.opt.
+ * config/s390/s390.opt (mfused-madd): Remove.
+ * config/s390/s390.c (s390_rtx_costs): Handle FMA.
+ (TARGET_DEFAULT_TARGET_FLAGS): Remove MASK_FUSED_MADD.
+ * config/s390/s390.md (fma<DSF>4): Rename from *fmadd<DSF>; use FMA.
+ (fms<DSF>4): Rename from *fmsub<DSF>; use FMA.
+
+2010-11-16 Richard Henderson <rth@redhat.com>
+
+ * config.gcc [powerpc*, rs6000*] (extra_options): Add fused-madd.opt.
+ * config/rs6000/rs6000.opt (mfused-madd): Remove.
+ * config/rs6000/altivec.md (altivec_vmaddfp): Remove.
+ (*altivec_vmaddfp_1): Remove.
+ (*altivec_fmav4sf4): Rename from altivec_vmaddfp_2; use FMA.
+ (altivec_mulv4sf3): Expand to FMA directly.
+ (*altivec_vnmsubfp): Rename from altivec_vnmsubfp.
+ (*altivec_vnmsubfp_1, *altivec_vnmsubfp_2): Remove.
+ * config/rs6000/paired.md (paired_madds0): Use FMA.
+ (paired_madds1): Likewise.
+ (*paired_madd): Rename from paired_madd; use FMA.
+ (*paired_msub, *paired_nmadd, *paired_nmsub): Similarly.
+ * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Do not
+ consider TARGET_FUSED_MADD wrt rs6000_recip_control.
+ (bdesc_3arg): Update CODE_FOR_* for pattern renames.
+ (rs6000_emit_madd): Use fma_optab.
+ (rs6000_emit_msub): Use fms_optab.
+ (rs6000_emit_nmsub): Expand the FMA pattern directly.
+ * config/rs6000/rs6000.md (FMA_F): New mode iterator.
+ (*fmasf4_fpr): Rename from fmasf4_fpr.
+ (*nfmasf4_fpr): Rename from *fnmasf4_fpr.
+ (*nfmssf4_fpr): Rename from *fnmssf4_fpr.
+ (*fmaddsf4_powerpc, *fmaddsf4_power, *fmsubsf4_powerpc): Remove.
+ (*fmsubsf4_power, *fnmaddsf4_powerpc_1, *fnmaddsf4_powerpc_2): Remove.
+ (*fnmaddsf4_power_1, *fnmaddsf4_power_2, *fnmsubsf4_powerpc_1): Remove.
+ (*fnmsubsf4_powerpc_2, *fnmsubsf4_power_1, *fnmsubsf4_power_2): Remove.
+ (*fmadf4_fpr): Rename from fmadf4_fpr.
+ (*nfmadf4_fpr): Rename from *fnmadf4_fpr.
+ (*nfmsdf4_fpr): Rename from *fnmsdf4_fpr.
+ (*fmadddf4_fpr, *fmsubdf4_fpr, *fnmadddf4_fpr_1): Remove.
+ (*fnmadddf4_fpr_2, *fnmsubdf4_fpr_1, *fnmsubdf4_fpr_2): Remove.
+ (fmasf4, fmadf4): Macroize into...
+ (fma<FMA_F>4): ... here.
+ (fms<FMA_F>4, fnma<FMA_F>4, fnms<FMA_F>4): New.
+ (nfma<FMA_F>4, nfms<FMA_F>4): New.
+ * config/rs6000/vector.md (mul<VEC_F>3): Do not depend on
+ TARGET_FUSED_MADD.
+ * config/rs6000/vsx.md (vsx_fmadd<VSX_B>4): Remove.
+ (*vsx_fmadd<mode>4_1): Remove.
+ (vsx_fmsub<mode>4, *vsx_fmsub<mode>4_1): Remove.
+ (vsx_fnmadd<mode>4_1, vsx_fnmadd<mode>4_2): Remove.
+ (vsx_fnmsub<mode>4_1, vsx_fnmsub<mode>4_2): Remove.
+ (*vsx_fma<mode>4): Rename from vsx_fmadd<mode>4_2.
+ (*vsx_fms<mode>4): Rename from vsx_fmsub<mode>4_2.
+ (*vsx_nfma<mode>4): Rename from vsx_fnmadd<mode>4.
+ (*vsx_nfms<mode>4): Rename from vsx_fnmsub<mode>4.
+
+2010-11-16 Richard Henderson <rth@redhat.com>
+
+ * config/pa/pa.md (fmadf4): Rename from unnamed; use FMA.
+ (fmasf4, fnmadf4, fnmasf4): Likewise.
+ (unnamed plus+mult insns and splitters): Delete.
+
+2010-11-16 Richard Henderson <rth@redhat.com>
+
+ * config/spu/spu.md (fma<VSF>4): Rename from fma_<VSF>.
+ (fnma<VSF>4): Rename from fnms_<VSF>.
+ (fms<VSF>4): Rename from fms_<VSF>.
+ (fma<VDF>4): Rename from fma_<VDF>.
+ (fms<VDF>4): Rename from fms_<VDF>.
+ (nfma<VDF>4): Rename from fnma_<VDF>.
+ (nfms<VDF>4): Rename from fnms_<VDF>.
+ (fnma<VDF>4, fnms<VDF>4): New expanders.
+ (floatunsdisf2): Update for the renames.
+ (*div<VSF>3_fast, *div<VSF>3_adjusted): Likewise.
+ * config/spu/spu-builtins.def: Update CODE_FOR_* for the renames.
+
+2010-11-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR rtl-optimization/46490
+ * combine.c (expand_compound_operation): Fix thinko.
+
+2010-11-16 Richard Henderson <rth@redhat.com>
+
+ PR target/46470
+ * recog.c (peep2_attempt): Convert frame-related info when possible.
+ (peep2_fill_buffer): Allow frame-related insns into the buffer.
+ (peephole2_optimize): Allow peep2_attempt to fail.
+
+2010-11-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR rtl-optimization/46315
+ * rtl.h (remove_reg_equal_equiv_notes_for_regno): Declare.
+ * rtlanal.c (remove_reg_equal_equiv_notes_for_regno): New function
+ extracted from...
+ * dce.c (delete_corresponding_reg_eq_notes): ...here. Rename into...
+ (remove_reg_equal_equiv_notes_for_defs): ...this.
+ (delete_unmarked_insns): Adjust to above renaming.
+ * ifcvt.c (dead_or_predicable): Remove REG_EQUAL and REG_EQUIV notes
+ referring to registers set in the insns being moved, if any.
+
+ * df-core.c (df_ref_dump): New function extracted from...
+ (df_refs_chain_dump): ...here. Call it.
+ (df_regs_chain_dump): Likewise.
+ * df-problems.c (df_chain_dump): Print 'e' for uses in notes.
+ * df-scan.c (df_scan_start_dump): Likewise. Fix long line.
+
+2010-11-16 Andreas Schwab <schwab@linux-m68k.org>
+
+ PR rtl-optimization/46395
+ * postreload.c (reload_combine): Invalidate register use
+ information on all control flow insns.
+
+ * config/m68k/m68k.c (m68k_delegitimize_address): Also expect
+ LABEL_REF in UNSPEC operand.
+
+2010-11-16 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.h (+varpool_can_remove_if_no_refs): Move here from ...;
+ when !flag_toplevel_reorder do not remove unless variable is
+ COMDAT or ARTIFICIAL.
+ * ipa.c (varpool_can_remove_if_no_refs): ... here.
+ (cgraph_remove_unreachable_nodes): Only analyzed nodes needs to stay.
+ * cgraphunit.c (cgraph_analyze_functions): Dump varpool, too.
+ * varpool.c (decide_is_variable_needed): Do not handle visibility
+ issues.
+ (varpool_finalize_decl): Likewise.
+ (varpool_remove_unreferenced_decls): Use varpool_mark_needed_node;
+ update outdated comment on DECL_RTL_SET_P check.
+
+2010-11-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * config/sol2.h (NM_FLAGS): Define.
+ * doc/tm.texi.in (Macros for Initialization, NM_FLAGS): Document.
+ * doc/tm.texi: Update.
+
2010-11-16 Nick Clifton <nickc@redhat.com>
- * config/v850/v850.md (maddsf4): Rename to fmasf4 and use fma
- rtx_code.
+ * config/v850/v850.md (maddsf4): Rename to fmasf4 and use fma rtx_code.
(msubsf4): Rename to fmssf4, and use fma.
(nmaddsf4): Rename to fnmasf4 and use fma.
(nmsubsf4): Rename to fnmssf4 and use fma.
Remove unused variable.
(score_store_multiple_operation): Likewise.
* config/score/score7.c (score7_return_in_memory): Constify arguments.
- (score7_in_small_data_p, score7_function_value): Likewise.
+ (score7_in_small_data_p, score7_function_value): Likewise.
(score7_trampoline_init): Use LCT_NORMAL.
(score7_print_operand): Initialize code as UNKNOWN.
* config/score/score3.h (score3_return_in_memory): Update prototype.
* config/score/score-conv.h (UIMM_IN_RANGE, SIMM_IN_RANGE):
Allow (W) == HOST_BITS_PER_WIDE_INT.
+ PR java/46386
+ * config/pdp11/t-pdp11 (java/constants.o-warn): Remove.
+ * config/t-pnt16-warn (java/constants.o-warn): Likewise.
+
2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
* config/arc/arc.c: Delete pasto.
2010-11-16 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
- * gensupport.c (MNEMONIC_ATTR_NAME, MNEMONIC_HTAB_SIZE): New
- macros.
+ * gensupport.c (MNEMONIC_ATTR_NAME, MNEMONIC_HTAB_SIZE): New macros.
(htab_eq_string, add_mnemonic_string, gen_mnemonic_setattr)
(mnemonic_htab_callback, gen_mnemonic_attr): New functions.
(init_rtx_reader_args_cb): Invoke gen_mnemonic_attr.
2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
- * Makefile.in (bitmap.o, ebitmap.o, et-forest.o): Update
- dependencies.
+ * Makefile.in (bitmap.o, ebitmap.o, et-forest.o): Update dependencies.
(sreal.o, statistics.o, stringpool.o): Likewise.
2010-11-16 Richard Guenther <rguenther@suse.de>
2010-11-16 Richard Guenther <rguenther@suse.de>
PR middle-end/45172
- * tree-eh.c (cleanup_empty_eh_unsplit): Avoid creating duplicate
- edges.
+ * tree-eh.c (cleanup_empty_eh_unsplit): Avoid creating duplicate edges.
2010-11-16 Nick Clifton <nickc@redhat.com>
2010-11-15 Richard Henderson <rth@redhat.com>
* fold-const.c (operand_equal_for_comparison_p): Handle FMA_EXPR,
- WIDEN_MULT_PLUS_EXPR, WIDEN_MULT_MINUS_EXPR, VEC_COND_EXPR,
+ WIDEN_MULT_PLUS_EXPR, WIDEN_MULT_MINUS_EXPR, VEC_COND_EXPR and
DOT_PROD_EXPR.
2010-11-15 Richard Henderson <rth@redhat.com>
(argbuf_length, argbuf_index): Remove.
(alloc_args, clear_args, store_arg, execute, insert_wrapper,
do_spec, do_self_spec, do_spec_1, eval_spec_function, main,
- compare_debug_dump_opt_spec_function: Use VEC interfaces on
- argbuf.
+ compare_debug_dump_opt_spec_function: Use VEC interfaces on argbuf.
* Makefile.in (GCC_OBJS): Add vec.o and ggc-none.o.
(gcc.o): Depend on $(VEC_H).
(dwarf2out_init): Do not emit debug section switches here, allocate a
vec for macinfo, when required.
(dwarf2out_finish): First switch to debug_abbrev_section here.
- debug_line_section, debug_macinfo_section, Likewise.
+ debug_line_section, debug_macinfo_section, Likewise.
Check that the pubtypes table has at least one unpruned entry before
trying to emit it.
* config/avr/avr.c (avr_num_arg_regs): Constify type.
(avr_return_addr_rtx): De-constify tem.
(avr_rotate_bytes): Move declarations to start of block.
- Don't use variable length array.
- Put nested if/else into block.
+ Don't use variable length array. Put nested if/else into block.
PR rtl-optimization/46433
* var-tracking.c: Include tm_p.h .
(trapping_loads_p): Remove unused variable pat.
(bfin_expand_binop_builtin): Use expand_normal.
(bfin_expand_unop_builtin): Likewise.
- (bfin_expand_builtin): Likewise.
- Set tmode before use.
+ (bfin_expand_builtin): Likewise. Set tmode before use.
PR middle-end/44769
* final.c (split_double): Don't use BITS_PER_WORD directly in
2010-11-11 Richard Henderson <rth@redhat.com>
- * optabs.c (init_optabs): Init {fma,fms,fnma,fnms}_optab properly.
+ * optabs.c (init_optabs): Init {fma,fms,fnma,fnms}_optab properly.
2010-11-11 Richard Henderson <rth@redhat.com>
PR tree-optimize/40436
* ipa-inline.c (likely_eliminated_by_inlining_p): Rename to ...
- (eliminated_by_inlining_prob): ... this one; return 50% probability for
- SRA.
- (estimate_function_body_sizes): Update use of eliminated_by_inlining_prob;
- estimate static function size for 2 instructions.
+ (eliminated_by_inlining_prob): ... this one; return 50% probability
+ for SRA.
+ (estimate_function_body_sizes): Update use of
+ eliminated_by_inlining_prob; estimate static function size
+ for 2 instructions.
2010-11-11 Joern Rennecke <amylaar@spamcop.net>
* opts.c (finish_options, common_handle_option): Start diagnostics
with lowercase letters and remove trailing '.'. Fix typo in
diagnostic.
- * passes.c (position_pass): Start diagnostic with lowercase
- letter.
+ * passes.c (position_pass): Start diagnostic with lowercase letter.
* plugin.c (add_new_plugin, parse_plugin_arg_opt,
register_callback, try_init_one_plugin): Start diagnostics with
lowercase letters.