+2009-04-21 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.c (prepare_cbranch_operands): Use
+ LAST_AND_UNUSED_RTX_CODE instead of CODE_FOR_nothing.
+ (expand_cbranchdi4): Likewise.
+ (from_compare): Add cast to enum type.
+ (expand_cbranchsi4): Use add_reg_note.
+ (output_stack_adjust, push, pop, sh_expand_prologue): Likewise.
+ (sh_insn_length_adjustment): Use sh_cpu_attr instead of sh_cpu.
+ (sh_initialize_trampoline): Change 0 to LCT_NORMAL in function call.
+ (sh_expand_builtin): Change 0 to EXPAND_NORMAL in function call.
+ * config/sh/sh.md (cbranchsi4): Use LAST_AND_UNUSED_RTX_CODE
+ instead of CODE_FOR_nothing.
+ (cbranchdi4): Likewise. Fix the order of arguments for
+ gen_rtx_fmt_ee.
+ (push_fpscr): Use add_reg_note.
+ (pop_fpscr, movdf_i4+1, reload_outdf__RnFRm+3, reload_outdf__RnFRm+4,
+ reload_outdf__RnFRm+5, fpu_switch+1, fpu_switch+2): Likewise.
+
+2009-04-21 Joseph Myers <joseph@codesourcery.com>
+
+ * ABOUT-GCC-NLS, ChangeLog, ChangeLog-1997, ChangeLog-1998,
+ ChangeLog-1999, ChangeLog-2000, ChangeLog-2001, ChangeLog-2002,
+ ChangeLog-2003, ChangeLog-2004, ChangeLog-2005, ChangeLog-2006,
+ ChangeLog-2007, ChangeLog-2008, ChangeLog.dataflow, ChangeLog.lib,
+ ChangeLog.ptr, ChangeLog.tree-ssa, ChangeLog.tuples, FSFChangeLog,
+ FSFChangeLog.10, FSFChangeLog.11, LANGUAGES, ONEWS, acinclude.m4,
+ config/alpha/gnu.h, config/alpha/libgcc-alpha-ldbl.ver,
+ config/alpha/t-osf4, config/alpha/t-vms, config/alpha/va_list.h,
+ config/alpha/x-vms, config/arc/t-arc,
+ config/arm/README-interworking, config/arm/arm-c.c,
+ config/arm/gentune.sh, config/arm/libgcc-bpabi.ver,
+ config/arm/t-arm, config/arm/t-arm-elf, config/arm/t-arm-softfp,
+ config/arm/t-bpabi, config/arm/t-linux, config/arm/t-linux-eabi,
+ config/arm/t-netbsd, config/arm/t-pe, config/arm/t-strongarm-elf,
+ config/arm/t-symbian, config/arm/t-vxworks, config/arm/t-wince-pe,
+ config/avr/t-avr, config/bfin/elf.h, config/bfin/libgcc-bfin.ver,
+ config/bfin/linux.h, config/bfin/t-bfin, config/bfin/t-bfin-elf,
+ config/bfin/t-bfin-linux, config/bfin/t-bfin-uclinux,
+ config/bfin/uclinux.h, config/cris/mulsi3.asm, config/cris/t-cris,
+ config/cris/t-elfmulti, config/crx/t-crx,
+ config/darwin-ppc-ldouble-patch.def, config/darwin-sections.def,
+ config/divmod.c, config/fr30/t-fr30, config/frv/libgcc-frv.ver,
+ config/frv/t-frv, config/frv/t-linux, config/h8300/genmova.sh,
+ config/h8300/t-h8300, config/i386/athlon.md,
+ config/i386/darwin-libgcc.10.4.ver,
+ config/i386/darwin-libgcc.10.5.ver, config/i386/libgcc-glibc.ver,
+ config/i386/mach.h, config/i386/netbsd.h, config/i386/t-crtpc,
+ config/i386/t-cygming, config/i386/t-cygwin, config/i386/t-i386,
+ config/i386/t-linux64, config/i386/t-nwld,
+ config/i386/t-rtems-i386, config/i386/t-sol2-10,
+ config/i386/x-mingw32, config/ia64/div.md, config/ia64/elf.h,
+ config/ia64/ia64.opt, config/ia64/libgcc-glibc.ver,
+ config/ia64/libgcc-ia64.ver, config/ia64/linux.h,
+ config/ia64/sysv4.h, config/ia64/t-hpux, config/ia64/t-ia64,
+ config/iq2000/abi, config/iq2000/lib2extra-funcs.c,
+ config/iq2000/t-iq2000, config/libgcc-glibc.ver,
+ config/m32r/libgcc-glibc.ver, config/m32r/t-linux,
+ config/m32r/t-m32r, config/m68hc11/t-m68hc11,
+ config/m68k/t-floatlib, config/m68k/t-linux, config/m68k/t-mlibs,
+ config/m68k/t-uclinux, config/mcore/t-mcore,
+ config/mcore/t-mcore-pe, config/mips/20kc.md, config/mips/4130.md,
+ config/mips/5400.md, config/mips/5500.md, config/mips/crti.asm,
+ config/mips/crtn.asm, config/mips/irix-crti.asm,
+ config/mips/irix-crtn.asm, config/mips/libgcc-mips16.ver,
+ config/mips/mips-dsp.md, config/mips/mips-dspr2.md,
+ config/mips/mips-fixed.md, config/mips/sb1.md,
+ config/mips/sr71k.md, config/mips/t-elf, config/mips/t-gofast,
+ config/mips/t-iris6, config/mips/t-isa3264,
+ config/mips/t-libgcc-mips16, config/mips/t-linux64,
+ config/mips/t-mips, config/mips/t-r3900, config/mips/t-rtems,
+ config/mips/t-sb1, config/mips/t-sde, config/mips/t-sdemtk,
+ config/mips/t-slibgcc-irix, config/mips/t-sr71k, config/mips/t-st,
+ config/mips/t-vr, config/mips/t-vxworks, config/mmix/t-mmix,
+ config/mn10300/t-linux, config/mn10300/t-mn10300,
+ config/pa/pa32-regs.h, config/pa/t-hpux-shlib, config/pa/t-linux,
+ config/pa/t-linux64, config/pa/t-pa64, config/pdp11/t-pdp11,
+ config/picochip/libgccExtras/clzsi2.asm,
+ config/picochip/t-picochip, config/rs6000/darwin-ldouble-format,
+ config/rs6000/darwin-libgcc.10.4.ver,
+ config/rs6000/darwin-libgcc.10.5.ver,
+ config/rs6000/libgcc-ppc-glibc.ver, config/rs6000/ppc-asm.h,
+ config/rs6000/t-aix43, config/rs6000/t-aix52,
+ config/rs6000/t-darwin, config/rs6000/t-fprules,
+ config/rs6000/t-fprules-fpbit, config/rs6000/t-linux64,
+ config/rs6000/t-lynx, config/rs6000/t-netbsd,
+ config/rs6000/t-ppccomm, config/rs6000/t-ppcendian,
+ config/rs6000/t-ppcgas, config/rs6000/t-rs6000,
+ config/rs6000/t-rtems, config/rs6000/t-spe,
+ config/rs6000/t-vxworks, config/s390/libgcc-glibc.ver,
+ config/score/t-score-elf, config/sh/divcost-analysis,
+ config/sh/libgcc-glibc.ver, config/sh/t-netbsd, config/sh/t-sh,
+ config/sh/t-sh64, config/sh/t-superh, config/sh/t-symbian,
+ config/sparc/libgcc-sparc-glibc.ver, config/sparc/sol2-bi.h,
+ config/sparc/sol2-gas.h, config/sparc/sol2-gld-bi.h,
+ config/sparc/t-elf, config/sparc/t-linux64, config/sparc/t-sol2,
+ config/stormy16/stormy-abi, config/stormy16/t-stormy16,
+ config/t-darwin, config/t-libunwind, config/t-libunwind-elf,
+ config/t-linux, config/t-lynx, config/t-slibgcc-elf-ver,
+ config/t-slibgcc-sld, config/t-sol2, config/t-vxworks,
+ config/udivmod.c, config/udivmodsi4.c, config/v850/t-v850,
+ config/v850/t-v850e, config/xtensa/t-xtensa, diagnostic.def,
+ gdbinit.in, glimits.h, gstab.h, gsyms.h, java/ChangeLog,
+ java/ChangeLog.ptr, java/ChangeLog.tree-ssa, libgcc-std.ver,
+ limitx.h, version.c, xcoff.h: Add copyright and license notices.
+ * config/h8300/genmova.sh: Include copyright and license notices
+ in generated output.
+ * config/h8300/mova.md: Regenerate.
+ * doc/install.texi2html: Include word "Copyright" in copyright
+ notice and use name "Free Software Foundation, Inc.".
+ * ChangeLog, ChangeLog-2000, ChangeLog-2001, ChangeLog-2002,
+ ChangeLog-2003, ChangeLog-2004, ChangeLog-2005, ChangeLog-2006,
+ ChangeLog-2007, ChangeLog-2008: Correct dates.
+
+2009-04-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * c-common.c (c_common_truthvalue_conversion): Use LOCATION to build
+ NE_EXPR operations as well.
+ * c-parser.c (c_parser_condition): Do not set location information on
+ the condition.
+ (c_parser_conditional_expression): Likewise.
+ (c_parser_binary_expression): Set location information on operators.
+ * c-typeck.c (build_unary_op) <TRUTH_NOT_EXPR>: Reset the location if
+ TRUTH_NOT_EXPR has been folded.
+ * fold-const.c (fold_truth_not_expr): Copy location information from
+ the incoming expression to the outgoing one.
+ * gimplify.c (shortcut_cond_r): Add locus parameter. Pass it to
+ recursive calls on the LHS of the operator but pass that of the
+ operator to recursive calls on the RHS of the operator. Set it
+ on the COND_EXPR.
+ (shortcut_cond_expr): Set the locus of the operator on the second
+ COND_EXPR and that of the expression on the first in degenerate cases.
+ Pass the locus of the expression to calls to shortcut_cond_r.
+ Set the locus of the 'then' block on the associated jump, if any.
+ (gimplify_boolean_expr): Add locus parameter. Set it on the COND_EXPR.
+ (gimplify_expr) <TRUTH_ANDIF_EXPR>: Pass the locus of the outer
+ expression to call to gimplify_boolean_expr.
+
+2009-04-21 Kai Tietz <kai.tietz@onevision.com>
+
+ * config.gcc: Add additional configuration for
+ i686-w64-mingw* and x86_64-w64-mingw* triplet.
+ * config/i386/mingw-w64.h: New mingw-w64 specific header.
+ (CPP_SPEC): Redefine for allowing -municode option.
+ (STARTFILE_SPEC): Likewise.
+ * config/i386/t-mingw-w64: New.
+ * config/i386/mingw-w64.opt: New.
+ (municode): Add new target option.
+ * doc/invoke.texi (municode): Add documentation for new option.
+
+2009-04-21 Ian Lance Taylor <iant@google.com>
+
+ * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
+ Correct test for number of arguments.
+ * config/spu/spu-c.c (spu_resolve_overloaded_builtin): Likewise.
+
+2009-04-21 Andreas Schwab <schwab@linux-m68k.org>
+
+ * config/m68k/linux.h (FINALIZE_TRAMPOLINE): Use enum for second
+ argument of emit_library_call.
+
+2009-04-21 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/39829
+ * gimple.c (walk_stmt_load_store_addr_ops): Catch addresses
+ inside VIEW_CONVERT_EXPRs.
+
+2009-04-21 Martin Jambor <mjambor@suse.cz>
+
+ * tree-switch-conversion.c (build_constructors): Split a long line.
+ (constructor_contains_same_values_p): New function.
+ (build_one_array): Create assigns of constants if possible, do not call
+ mark_sym_for_renaming, call update_stmt.
+ (build_arrays): Call make_ssa_name (create_tmp_var ()) instead of
+ make_rename_temp. Do not call mark_symbols_for_renaming, call
+ update_stmt.
+ (gen_def_assigns): Do not call mark_symbols_for_renaming or
+ find_new_referenced_vars, call update_stmt.
+ (gen_inbound_check): Use create_tmp_var and create ssa names manually
+ instead of calling make_rename_temp. Do not call
+ find_new_referenced_vars or mark_symbols_for_renaming, call
+ update_stmt.
+
+2009-04-21 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/39827
+ * tree-ssa-phiprop.c (propagate_with_phi): Check SSA_NAME
+ is in range.
+ (tree_ssa_phiprop): Pass the correct array size.
+
+2009-04-21 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/alpha/alpha.md (tune): Add cast to enum attr_tune.
+
+2009-04-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR 16202
+ * c-typeck.c (lvalue_p): Move declaration ...
+ * c-common.h (lvalue_p): ... to here.
+ * c-common.c (candidate_equal_p): New.
+ (add_tlist): Use it.
+ (merge_tlist): Use it.
+ (warn_for_collisions_1): Likewise.
+ (warning_candidate_p): Accept more candidates.
+ (verify_tree): A warning candidate can be an expression. Use
+ candidate_equal_p.
+
+2009-04-21 Ben Elliston <bje@au.ibm.com>
+
+ PR target/5267
+ * doc/invoke.texi (RS/6000 and PowerPC Options): Add documentation
+ for -mcall-eabi, -mcall-aixdesc, -mcall-freebsd and -mcall-openbsd
+ options. Remove -mcall-solaris documentation.
+
+2009-04-21 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
+
+ PR c++/13358
+ * doc/invoke.texi (-Wlong-long): Update description.
+ * c-lex (interpret_integer): Only warn if there was no previous
+ overflow and -Wlong-long is enabled.
+ * c-decl.c (declspecs_add_type): Drop redundant flags.
+ * c.opt (Wlong-long): Init to -1.
+ * c-opts.c (sanitize_cpp_opts): Synchronize cpp's warn_long_long
+ and front-end warn_long_long. Wlong-long only depends on other
+ flags if it is uninitialized.
+ * c-parser.c (disable_extension_diagnostics): warn_long_long is
+ the same for CPP and FE.
+ (restore_extension_diagnostics): Likewise.
+
+2009-04-20 Ian Lance Taylor <iant@google.com>
+
+ Fix enum conversions which are invalid in C++:
+ * auto-inc-dec.c (attempt_change): Change 0 to SET in function call.
+ * calls.c (store_one_arg): Change 0 to EXPAND_NORMAL in function call.
+ * cse.c (hash_rtx_cb): Change 0 to VOIDmode in function call.
+ * dbgcnt.c (dbg_cnt_set_limit_by_name): Add cast to enum type.
+ * dbxout.c (dbxout_symbol): Change 0 to VOIDmode in function call.
+ (dbxout_parms): Likewise.
+ * df-core.c (df_set_flags): Change changeable_flags parameter to int.
+ (df_clear_flags): Likewise.
+ * df-problems.c (df_rd_bb_local_compute_process_def): Change
+ top_flag parameter to int.
+ (df_chain_create_bb_process_use): Likewise.
+ (df_chain_add_problem): Change chain_flags parameter to unsigned int.
+ Remove cast.
+ * df-scan.c (df_ref_create): Change ref_flags parameter to int.
+ (df_ref_create_structure, df_def_record_1): Likewise.
+ (df_defs_record, df_uses_record, df_get_call_refs): Likewise.
+ (df_notes_rescan): Change 0 to VOIDmode in function call.
+ (df_get_call_refs, df_insn_refs_collect): Likewise.
+ (df_bb_regs_collect): Likewise.
+ (df_entry_block_defs_collect): Likewise.
+ (df_exit_block_uses_collect): Likewise.
+ * df.h: Update declarations.
+ * double-int.c (double_int_divmod): Add cast to enum type.
+ * dse.c (replace_inc_dec): Reverse parameters to gen_int_mode.
+ * dwarf2out.c (new_reg_loc_descr): Add casts to enum type.
+ (based_loc_descr): Likewise.
+ (loc_descriptor_from_tree_1): Change first_op and second_op to
+ enum dwarf_location_atom. Add cast to enum type.
+ * expmed.c (init_expmed): Change 0 to SET in function call.
+ * expr.c (init_expr_target): Change 0 to VOIDmode in function call.
+ (expand_expr_real_1): Change 0 to EXPAND_NORMAL in function call.
+ (do_store_flag): Likewise.
+ * fixed-value.h (struct fixed_value): Change mode to enum
+ machine_mode.
+ * function.c (assign_parms): Change 0 to VOIDmode in function call.
+ * genautomata.c (insert_automaton_decl): Change 1 to INSERT in
+ function call.
+ (insert_insn_decl, insert_decl, insert_state): Likewise.
+ (automata_list_finish): Likewise.
+ * genrecog.c (process_define_predicate): Add cast to enum type.
+ * gensupport.c (init_predicate_table): Add cast to enum type.
+ * gimple.c (gimple_build_return): Change 0 to ERROR_MARK in
+ function call.
+ (gimple_build_call_1, gimple_build_label): Likewise.
+ (gimple_build_goto, gimple_build_asm_1): Likewise.
+ (gimple_build_switch_1, gimple_build_cdt): Likewise.
+ * gimple.h (GIMPLE_CHECK): Change 0 to ERROR_MARK in function call.
+ (enum fallback): Rename from enum fallback_t.
+ (fallback_t): Typedef as int.
+ * gimple-low.c (lower_builtin_setjmp): Change TSI_SAME_STMT to
+ GSI_SAME_STMT in function call.
+ * ira.c (setup_class_subset_and_memory_move_costs): Add casts to
+ enum type.
+ (setup_reg_class_relations): Likewise.
+ (setup_reg_class_nregs): Change cl to int. Add casts to enum type.
+ (setup_prohibited_class_mode_regs): Add cast to enum type.
+ (setup_prohibited_mode_move_regs): Likewise.
+ * ira-costs.c (record_reg_classes): Change rclass to enum reg_class.
+ (record_address_regs): Change i to enum reg_class.
+ * lists.c (alloc_EXPR_LIST): Add cast to enum type.
+ * machmode.h (GET_MODE_CLASS): Cast value to enum mode_class.
+ (GET_MODE_WIDER_MODE): Cast value to enum machine_mode.
+ (GET_MODE_2XWIDER_MODE): Likewise.
+ (GET_CLASS_NARROWEST_MODE): Likewise.
+ * omp-low.c (expand_omp_for): Add cast to enum type.
+ * optabs.c (debug_optab_libfuncs): Add casts to enum type.
+ * opts.c (enable_warning_as_error): Change kind to diagostic_t.
+ * postreload.c (reload_cse_simplify_operands): Change rclass local
+ to enum reg_class.
+ * predict.c (combine_predictions_for_insn): Change best_predictor
+ and predictor to enum br_predictor.
+ (combine_predictions_for_bb): Likewise.
+ (build_predict_expr): Change assignment to PREDICT_EXPR_OUTCOME to
+ use SET_PREDICT_EXPR_OUTCOME.
+ * real.c (real_arithmetic): Change icode to code in function call.
+ * reginfo.c (init_move_cost): Add casts to enum type.
+ (init_reg_sets_1, init_fake_stack_mems): Likewise.
+ * regmove.c (regclass_compatible_p): Change class0 and class1 to
+ enum reg_class.
+ * reload.c (find_valid_class): Add casts to enum type.
+ (push_reload): Change 0 to NO_REGS in function call.
+ (find_reloads): Change this_alternative to array of enum
+ reg_class. Remove some now-unnecessary casts.
+ (make_memloc): Change 0 to VOIDmode in function call.
+ * reload1.c (reload): Change 0 to VOIDmode in function call.
+ (eliminate_regs_1, elimination_effects): Likewise.
+ (eliminate_regs_in_insn): Likewise.
+ (emit_input_reload_insns): Add cast to enum type.
+ (delete_output_reload): Change 0 to VOIDmode in function call.
+ * reorg.c (insn_sets_resource_p): Convert include_delayed_effects
+ to enum type in function call.
+ * tree.h (PREDICT_EXPR_OUTCOME): Add cast to enum type.
+ (SET_PREDICT_EXPR_OUTCOME): Define.
+ * tree-dump.c (get_dump_file_info): Change phase parameter to int.
+ (get_dump_file_name, dump_begin, dump_enabled_p): Likewise.
+ (dump_initialized_p, dump_flag_name, dump_end): Likewise.
+ (dump_function): Likewise.
+ * tree-dump.h: Update declarations.
+ * tree-pass.h: Update declarations.
+ * varasm.c (assemble_integer): Change mclass to enum mode_class.
+ * config/arm/arm.c (thumb_legitimize_reload_address): Add cast to
+ enum type.
+ (arm_rtx_costs_1): Correct parenthesization.
+ (arm_rtx_costs): Add casts to enum type.
+ (adjacent_mem_locations): Reverse arguments to const_ok_for_op.
+ (vfp_emit_fstmd): Use add_rg_note.
+ (emit_multi_reg_push, emit_sfm): Likewise.
+ (thumb_set_frame_pointer): Likewise.
+ (arm_expand_prologue): Likewise.
+ (arm_regno_class): Change return type to enum reg_class.
+ (thumb1_expand_prologue): Use add_reg_note.
+ * config/arm/arm-protos.h (arm_regno_class): Update declaration.
+ * config/arm/arm.h (INITIALIZE_TRAMPOLINE): Change 0 to LCT_NORMAL
+ in function call.
+ * config/arm/gentune.sh: Add cast to enum type.
+ * config/arm/arm-tune.md: Rebuild.
+ * config/i386/i386.c (ix86_expand_prologue): Use add_reg_note.
+ (ix86_split_fp_branch, predict_jump): Likewise.
+ (ix86_expand_multi_arg_builtin): Change sub_code from enum
+ insn_code to enum rtx_code.
+ (ix86_builtin_vectorized_function): Add cast to enum type.
+ * config/i386/i386.md (truncdfsf2): Change slot to enum
+ ix86_stack_slot.
+ (truncxf<mode>2, isinf<mode>2): Likewise.
+ * config/i386/i386-c.c (ix86_pragma_target_parse): Add cast to
+ enum type.
+ * config/ia64/ia64.c (ia64_split_tmode_move): Use add_reg_note.
+ (spill_restore_mem, do_spill, ia64_expand_prologue): Likewise.
+ (insert_bundle_state): Change 1 to INSERT in function call.
+ (ia64_add_bundle_selector_before): Likewise.
+ * config/ia64/ia64.md (cpu attr): Add cast to enum type.
+ (save_stack_nonlocal): Change 0 to LCT_NORMAL in function call.
+ (restore_stack_nonlocal): Likewise.
+ * config/mips/mips.h (MIPS_ICACHE_SYNC): Change 0 to LCT_NORMAL in
+ function call.
+ * config/mips/mips.c (mips_binary_cost): Change 0 to SET in
+ function call.
+ (mips_rtx_costs): Likewise.
+ (mips_override_options): Add casts to enum type.
+ * config/mips/sdemtk.h (MIPS_ICACHE_SYNC): Change 0 to LCT_NORMAL
+ in function call.
+ * config/pa/pa.c (legitimize_pic_address): Use add_reg_note.
+ (store_reg, set_reg_plus_d): Likewise.
+ (hppa_expand_prologue, hppa_profile_hook): Likewise.
+ * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Add
+ cast to enum type.
+ (altivec_expand_vec_set_builtin): Change 0 to EXPAND_NORMAL in
+ function call.
+ (emit_unlikely_jump): Use add_reg_note.
+ (rs6000_emit_allocate_stack): Likewise.
+ (rs6000_frame_related, rs6000_emit_prologue): Likewise.
+ (output_toc): Change 1 to INSERT in function call.
+ (output_profile_hook): Change 0 to LCT_NORMAL in function call.
+ (rs6000_initialize_trampoline): Likewise.
+ (rs6000_init_dwarf_reg_sizes_extra): Change 0 to EXPAND_NORMAL in
+ function call.
+ * config/s390/s390.c (s390_rtx_costs): Add cast to enum type.
+ (s390_expand_movmem): Change 0 to OPTAB_DIRECT in function call.
+ (s390_expand_setmem, s390_expand_cmpmem): Likewise.
+ (save_gprs): Use add_reg_note.
+ (s390_emit_prologue): Likewise.
+ (s390_expand_builtin): Change 0 to EXPAND_NORMAL in function call.
+ * config/sparc/sparc.c (sparc_expand_prologue): Use add_reg_note.
+ (sparc_fold_builtin): Add cast to enum type.
+ * config/spu/spu.c (spu_emit_branch_or_set): Change ior_code to
+ enum insn_code.
+ (spu_expand_prologue): Use add_reg_note.
+ (expand_builtin_args): Change 0 to EXPAND_NORMAL in function call.
+
+2009-04-20 Ian Lance Taylor <iant@google.com>
+
+ * c-parser.c (c_parser_attributes): Change VEC back to tree list.
+ (c_parser_postfix_expression_after_primary): Get VEC for list of
+ arguments. Get original types of arguments. Call
+ build_function_call_vec.
+ (cached_expr_list_1, cached_expr_list_2): New static variables.
+ (c_parser_expr_list): Change return type to VEC *. Add
+ p_orig_types parameter. Change all callers.
+ (c_parser_release_expr): New static function.
+ (c_parser_vec_to_tree_list): New static function.
+ * c-typeck.c (build_function_call): Rewrite to build a VEC and
+ call build_function_call_vec.
+ (build_function_call_vec): New function, based on old
+ build_function_call.
+ (convert_arguments): Remove nargs and argarray parameters. Change
+ values to a VEC. Add origtypes parameter.
+ (build_modify_expr): Add rhs_origtype parameter. Change all callers.
+ (convert_for_assignment): Add origtype parameter. Change all
+ callers. If warn_cxx_compat, check for conversion to an enum
+ type when calling a function.
+ (store_init_value): Add origtype parameter. Change all callers.
+ (digest_init): Likewise.
+ (struct init_node): Add origtype field.
+ (add_pending_init): Add origtype parameter. Change all callers.
+ (output_init_element): Likewise.
+ (output_pending_init_elements): Pass origtype from init_node to
+ output_init_element.
+ (process_init_element): Pass origtype from c_expr to
+ output_init_element.
+ (c_finish_return): Add origtype parameter. Change all callers.
+ * c-common.c (sync_resolve_size): Change params to VEC *. Change
+ caller.
+ (sync_resolve_params): Likewise.
+ (sync_resolve_return): Change params to first_param. Change caller.
+ (resolve_overloaded_builtins): Change params to VEC *. Change
+ callers. Save first parameter around call to build_function_call_vec.
+ * c-decl.c (finish_decl): Add origtype parameter. Change all
+ callers. Call build_function_call_vec rather than
+ build_function_call for cleanup.
+ * c-tree.h: Update declarations.
+ * c-common.h: Update declarations.
+ * stub-objc.c (objc_rewrite_function_call): Change parameter from
+ params to first_param.
+ * target.h (struct gcc_target): Change resolve_overloaded_builtin
+ params parameter from tree to void *.
+ * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
+ Change arglist parameter to have type void *, and to be a pointer
+ to a VEC.
+ * config/rs6000/rs6000-protos.h
+ (altivec_resolve_overloaded_builtin): Update declaration.
+ * config/spu/spu-c.c (spu_resolved_overloaded_builtin): Change
+ fnargs parameter to have type void *, and to be a pointer to a
+ VEC. Call build_function_call_vec instead of
+ build_function_call.
+ * config/spu/spu-protos.h (spu_expand_builtin): Update declaration.
+
+2009-04-20 Joey Ye <joey.ye@intel.com>
+ Xuepeng Guo <xuepeng.guo@intel.com>
+ H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/atom.md: Add bypasses with ix86_dep_by_shift_count.
+
+ * config/i386/i386.c (LEA_SEARCH_THRESHOLD): New macro.
+ (IX86_LEA_PRIORITY): Likewise.
+ (distance_non_agu_define): New function.
+ (distance_agu_use): Likewise.
+ (ix86_lea_for_add_ok): Likewise.
+ (ix86_dep_by_shift_count): Likewise.
+
+ * config/i386/i386.md: Call ix86_lea_for_add_ok to decide we
+ should split for LEA.
+
+ * config/i386/i386-protos.h (ix86_lea_for_add_ok): Declare new
+ function.
+ (ix86_dep_by_shift_count): Likewise.
+
+2009-04-20 Richard Guenther <rguenther@suse.de>
+
+ * expr.c (handled_component_p): Move ...
+ * tree.h (handled_component_p): ... here.
+ * tree.def: Re-order BIT_FIELD_REF, COMPONENT_REF,
+ ARRAY_REF, ARRAY_RANGE_REF, VIEW_CONVERT_EXPR, IMAGPART_EXPR
+ and REALPART_EXPR to be in one group.
+
+2009-04-20 Richard Guenther <rguenther@suse.de>
+
+ * basic-block.h (get_all_dominated_blocks): Declare.
+ * dominance.c (get_all_dominated_blocks): New function.
+ * tree-cfg.c (get_all_dominated_blocks): Remove.
+ (remove_edge_and_dominated_blocks): Adjust.
+ * tree-ssa-phiprop.c (tree_ssa_phiprop_1): Fold in ...
+ (tree_ssa_phiprop): ... here. Use get_all_dominated_blocks
+ instead of recursing.
+
+2009-04-20 Doug Kwan <dougkwan@google.com>
+
+ * cgraph.h (cgraph_node_ptr): New type for vector functions.
+ (struct cgraph_node_set_def): New type.
+ (cgraph_node_set) New type. Also declare vector functions.
+ (struct cgraph_node_set_element_def): New type.
+ (cgraph_node_set_element): Ditto.
+ (cgraph_node_set_iterator): New iterator type.
+ (cgraph_node_set_new, cgraph_node_set_find, cgraph_node_set_add,
+ cgraph_node_set_remove, dump_cgraph_node_set,
+ debug_cgraph_node_set): New prototypes.
+ (csi_end_p, csi_next, csi_node, csi_start, cgraph_node_in_set_p,
+ cgraph_node_set_size): New inlines.
+ * tree-pass.h (struct cgraph_node_set_def): New decl to avoid
+ including cgraph.h.
+ (struct ipa_opt_pass): Add struct cgraph_node_set_def
+ argument to function 'write_summary'.
+ * ipa.c: Include ggc.h.
+ (hash_cgraph_node_set_element,
+ eq_cgraph_node_set_element, cgraph_node_set_new,
+ cgraph_node_set_add, cgraph_node_set_remove,
+ cgraph_node_set_find, dump_cgraph_node_set,
+ debug_cgraph_node_set): New functions.
+ * Makefile.in (ipa.o): Add dependency on GGC_H.
+
+2009-04-20 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/39675
+ * tree-vect-loop.c (vect_transform_loop): Remove currently redundant
+ check of the return code of vect_schedule_slp. Check that
+ stmt_vec_info still exists for the statement, before checking its
+ vectorization type.
+
+2009-04-20 Michael Matz <matz@suse.de>
+
+ * Makefile.in (generated_files): Take out $(simple_generated_c).
+
+2009-04-19 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ * config/i386/cygwin-stdint.h (INTPTR_TYPE): Remove "long".
+ (UINTPTR_TYPE): Likewise.
+
+2009-04-19 Joseph Myers <joseph@codesourcery.com>
+
+ PR c/37481
+ * c-typeck.c (digest_init): Check for initializing an array with a
+ string literal.
+
+2009-04-19 Joseph Myers <joseph@codesourcery.com>
+
+ PR c/19771
+ * c-semantics.c (pop_stmt_list): Propagate
+ STATEMENT_LIST_HAS_LABEL to parent statement list.
+
+2009-04-19 Adam Nemet <anemet@caviumnetworks.com>
+
+ * config/mips/mips.h (mips_tune_attr): New macro.
+ * config/mips/mips.md (cpu): Use it.
+
+2009-04-19 Joseph Myers <joseph@codesourcery.com>
+
+ PR c/38243
+ * c-decl.c (shadow_tag_warned): Diagnose use of restrict when
+ declaring a tag.
+
+2009-04-19 Diego Novillo <dnovillo@google.com>
+
+ * toplev.c (compile_file): Move call to coverage_finish ...
+ * cgraphunit.c (ipa_passes): ... here.
+ Call cgraph_process_new_functions.
+ * ipa-utils.c (get_base_var): Handle CONSTRUCTOR.
+ * Makefile.in (cgraphunit.o): Add dependency on COVERAGE_H.
+
+2009-04-19 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_create_edge, cgraph_set_call_stmt): Set proper
+ cfun.
+ (dump_cgraph_node): Dump can throw external flag.
+ * ipa-pure-const.c (propagate): Fix propagation of nothrow flags.
+
+2009-04-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR c/32061
+ PR c++/36954
+ * doc/invoke.texi: Add -Wlogical-op to -Wextra.
+ * common.opt (Wlogical-op): Move from here...
+ * c.opt (Wlogical-op): ... to here.
+ * c-typeck.c (parser_build_binary_op): Update call to
+ warn_logical_operator.
+ * c-opts.c (c_common_post_options): Enable warn_logical_op with
+ extra_warnings.
+ * c-common.c (warn_logical_op): Update.
+ * c-common.h (warn_logical_op): Update declaration.
+
+2009-04-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tree.c (protected_set_expr_location): Fix formatting.
+
+2009-04-18 Joseph Myers <joseph@codesourcery.com>
+
+ PR c/27676
+ * c-typeck.c (readonly_warning): new.
+ (build_unary_op, build_modify_expr): Use readonly_warning for
+ storing into something readonly but not const-qualified.
+
+2009-04-18 Joseph Myers <joseph@codesourcery.com>
+
+ PR c/22367
+ * c-typeck.c (build_unary_op): Check for taking address of
+ expression of type void.
+
+2009-04-18 Joseph Myers <joseph@codesourcery.com>
+
+ PR c/35210
+ * c-typeck.c (build_function_call): Check for calling a function
+ with qualified void return types. Call require_complete_type when
+ generating a trap.
+
+2009-04-18 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_make_edge, dump_cgraph_node, cgraph_set_call_stmt):
+ Set nothrow flag.
+ * cgraph.h (struct function): Reduce loop_nest to 30 bits; add
+ can_throw_external flag.
+ * ipa-reference.c (ipa_utils_reduced_inorder): Update call.
+ * ipa-pure-const.c (ignore_edge): New function.
+ (propagate): Compute order for NOTHROW computation; set NOTHROWs
+ only over can_throw_external edges.
+ (local_pure_const): Add nothrow flag.
+ * ipa-utils.c (searchc): Add ignore_edge callback.
+ (ipa_utils_reduced_inorder): Add ignore_edge callback.
+ * ipa-utils.h (ipa_utils_reduced_inorder): Update prototype.
+ (set_nothrow_function_flags): Update cgraph.
+ * tree-cfg.c (verify_stmt): Relax nothrow checking when in IPA mode.
+
+2009-04-18 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/39804
+ * tree-ssa-ccp.c (fold_stmt_1): New function factored from ...
+ (fold_stmt): ... this and ...
+ (fold_stmt_inplace): ... this.
+ (fold_stmt_1): Fold references in calls and asms.
+ * tree-cfg.c (remove_useless_stmts_cond): Use fold_stmt.
+
+2009-04-18 Kazu Hirata <kazu@codesourcery.com>
+
+ * tree-vrp.c (ssa_name_nonzero_p): Remove.
+ * tree.h: Remove the prototype for ssa_name_nonzero_p.
+
+2009-04-18 Kazu Hirata <kazu@codesourcery.com>
+
+ * tree.c (function_args_count): Remove.
+ * tree.h: Remove the prototype for function_args_count.
+
+2009-04-18 Kazu Hirata <kazu@codesourcery.com>
+
+ * tree-iterator.c (expr_only): Remove.
+ * tree.h: Remove the prototype for expr_only.
+
+2009-04-18 Kazu Hirata <kazu@codesourcery.com>
+
+ * reginfo.c (cannot_change_mode_set_regs): Remove.
+ * rtl.h: Remove the prototype for cannot_change_mode_set_regs.
+
+2009-04-08 Anatoly Sokolov <aesok@post.ru>
+
+ * config/avr/avr.md (*rotlsi3_8, *rotlsi3_16, *rotlsi3_24 ): Check
+ whether operands 0 and 1 overlaps.
+
+2009-04-18 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR middle-end/36902
+ * tree-vrp.c (check_array_ref): Pass a location_t instead of a
+ pointer. Use warning_at instead of warning.
+ (search_for_addr_array): Likewise.
+ (check_array_bounds): Likewise.
+ (check_all_array_refs): Check that the incoming edge is not in the
+ list of edges to be removed.
+ (check_all_array_refs): Avoid the temporal pointer.
+ (vrp_visit_cond_stmt): Fix typo.
+ (simplify_switch_using_ranges): Handle the case where the switch
+ index is an integer constant.
+
+2009-04-18 Adam Nemet <anemet@caviumnetworks.com>
+
+ * config/mips/mips.c (mips_final_postscan_insn): Make it static.
+
+2009-04-18 Kazu Hirata <kazu@codesourcery.com>
+
+ * doc/extend.texi, doc/invoke.texi: Fix typos.
+
+2009-04-17 Cary Coutant <ccoutant@google.com>
+
+ * tree-flow-inline.h (get_lineno): Fix inverted test.
+
+2009-04-17 Diego Novillo <dnovillo@google.com>
+
+ * tree-ssa-pre.c (create_expression_by_pieces): Remove
+ assertion for AVAIL_OUT.
+
+2009-04-17 Mike Frysinger <vapier@gentoo.org>
+
+ PR target/38627
+ * config/sh/lib1funcs.asm [__ELF__ && __linux__]: Add .note.GNU-stack.
+ * config/sh/linux-atomic.asm: Likewise.
+
+2009-04-17 Diego Novillo <dnovillo@google.com>
+
+ * except.c (debug_eh_tree): New.
+ (struct eh_region, struct eh_status): Move ...
+ * except.h: ... here.
+ (add_type_for_runtime): Declare extern.
+ (lookup_type_for_runtime): Likewise.
+ (debug_eh_tree): Declare.
+ * Makefile.in (GTFILES): List except.h before except.c
+
+2009-04-17 Diego Novillo <dnovillo@google.com>
+
+ * omp-low.c (create_omp_child_function): Set DECL_CONTEXT for DECL.
+ * cgraphunit.c (cgraph_build_static_cdtor): Likewise.
+ * tree-dfa.c (find_referenced_vars_in): Factor out of ...
+ (find_vars_r): ... here.
+ * tree-flow.h (find_referenced_vars_in): Declare.
+ * tree-ssa-pre.c (create_expression_by_pieces): Assert
+ that AVAIL_OUT exists for BLOCK.
+ * Makefile.in (CGRAPH_H): Add dependency on cif-code.def
+ (tree-loop-distribution.o): Fix dependency on TREE_VECTORIZER_H.
+ (tree-parloops.o): Likewise.
+
+2009-04-17 Simon Baldwin <simonb@google.com>
+
+ * toplev.c (default_tree_printer): Add handling for %E format.
+
+2009-04-17 Diego Novillo <dnovillo@google.com>
+
+ * tree-pretty-print.c (dump_generic_node): Add break after
+ TREE_BINFO handler. Handle COMPLEX_TYPE, REAL_TYPE and
+ FIXED_POINT_TYPE. Handle NULL TREE_TYPEs. Handle METHOD_TYPE and
+ FUNCTION_TYPE together. Call print_struct_decl when printing
+ structures and TDF_SLIM is not given.
+ (print_struct_decl): Fix logic for detecting recursion.
+
+2009-04-17 Rafael Avila de Espindola <espindola@google.com>
+
+ PR 31567
+ * gcc.c (create_at_file): New.
+ (compile_input_file_p): New.
+ (do_spec_1): Use @args files for %i. Use create_at_file for %o.
+ * main.c (main): Update call to toplev_main.
+ * toplev.c (toplev_main): Change signature. Call expandargv.
+ * toplev.h (toplev_main): Change signature.
+
+2009-04-17 Eric Botcazou <ebotcazou@adacore.com>
+
+ * dwarf2out.c (field_byte_offset): Use the type size as the field size
+ if the latter is not constant.
+
+2009-04-17 David Edelsohn <edelsohn@gnu.org>
+
+ * dbxout.c (xcoff_debug_hooks): Add set_name_debug_nothing.
+
+2009-04-17 Eric Botcazou <ebotcazou@adacore.com>
+
+ * dbxout.c (dbxout_block): Reinstate test on TREE_USED.
+ * tree-ssa-live.c (remove_unused_scope_block_p): Update TREE_USED bit.
+
+2009-04-17 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (get_constraint_for_component_ref):
+ Handle component references view-converting an invariant address.
+
+2009-04-17 Adam Nemet <anemet@caviumnetworks.com>
+
+ * doc/tm.texi (TARGET_DEFAULT_TARGET_FLAGS,
+ TARGET_MIN_ANCHOR_OFFSET, TARGET_MAX_ANCHOR_OFFSET,
+ TARGET_HAVE_SRODATA_SECTION, TARGET_HAVE_TLS,
+ TARGET_UNWIND_TABLES_DEFAULT, TARGET_TERMINATE_DW2_EH_FRAME_INFO):
+ Use @deftypevr rather than @deftypevar.
+
+2009-04-17 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-forwprop.c (get_prop_dest_stmt): Clean up tuplification.
+ (get_prop_source_stmt): Likewise.
+ (can_propagate_from): Likewise.
+
+2009-04-17 Andrew Stubbs <ams@codesourcery.com>
+
+ * configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG,
+ TM_MULTILIB_CONFIG and TM_MULTILIB_EXCEPTIONS_CONFIG.
+ (--with-multilib-list): Add default value.
+ * configure: Regenerate.
+ * Makefile.in (TM_ENDIAN_CONFIG): Define.
+ (TM_MULTILIB_CONFIG, TM_MULTILIB_EXCEPTIONS_CONFIG): Define.
+ * config.gcc (sh-*-*): Switch to using TM_ENDIAN_CONFIG,
+ TM_MULTILIB_CONFIG, and TM_MULTILIB_EXCEPTIONS_CONFIG.
+ Don't add default cpu to multilib list unnecessarily, but do enable
+ the relevant compiler option..
+ Add support for --with-multilib-list=<blank> and
+ --with-multilib-list=!<somelib> to supress unwanted multilibs.
+ * config/sh/t-sh (DEFAULT_ENDIAN, OTHER_ENDIAN): New variables.
+ (MULTILIB_ENDIAN, MULTILIB_CPUS): Delete variables.
+ (MULTILIB_OPTIONS): Redefine using OTHER_ENDIAN and
+ TM_MULTILIB_CONFIG.
+ (MULTILIB_EXCEPTIONS): Add TM_MULTILIB_EXCEPTIONS_CONFIG.
+ (MULTILIB_OSDIRNAMES): New variable.
+ * config/sh/t-1e: Delete file.
+ * config/sh/t-mlib-sh1: Delete file.
+ * config/sh/t-mlib-sh2: Delete file.
+ * config/sh/t-mlib-sh2a: Delete file.
+ * config/sh/t-mlib-sh2a-nofpu: Delete file.
+ * config/sh/t-mlib-sh2a-single: Delete file.
+ * config/sh/t-mlib-sh2a-single-only: Delete file.
+ * config/sh/t-mlib-sh2e: Delete file.
+ * config/sh/t-mlib-sh3e: Delete file.
+ * config/sh/t-mlib-sh4: Delete file.
+ * config/sh/t-mlib-sh4-nofpu: Delete file.
+ * config/sh/t-mlib-sh4-single: Delete file.
+ * config/sh/t-mlib-sh4-single-only: Delete file.
+ * config/sh/t-mlib-sh4a: Delete file.
+ * config/sh/t-mlib-sh4a-nofpu: Delete file.
+ * config/sh/t-mlib-sh4a-single: Delete file.
+ * config/sh/t-mlib-sh4a-single-only: Delete file.
+ * config/sh/t-mlib-sh4al: Delete file.
+ * config/sh/t-mlib-sh5-32media: Delete file.
+ * config/sh/t-mlib-sh5-32media-nofpu: Delete file.
+ * config/sh/t-mlib-sh5-64media: Delete file.
+ * config/sh/t-mlib-sh5-64media-nofpu: Delete file.
+ * config/sh/t-mlib-sh5-compact: Delete file.
+ * config/sh/t-mlib-sh5-compact-nofpu: Delete file.
+ * config/sh/t-linux: Don't override MULTILIB_EXCEPTIONS.
+ * doc/install.texi (Options specification): Add
+ --with-multilib-list and --with-endian.
+
+2009-04-17 Rafael Avila de Espindola <espindola@google.com>
+
+ * Makefile.in (REVISION_s): Always include quotes. Change ifdef to use
+ REVISION_c.
+ (OBJS-common): Add plugin-version.o.
+ (plugin-version.o): New.
+ * gcc-plugin.h (plugin_gcc_version): New.
+ (plugin_default_version_check): New.
+ (plugin_init_func, plugin_init): Add version argument.
+ * plugin-version.c: New.
+ * plugin.c (str_plugin_gcc_version_name): New.
+ (try_init_one_plugin): Read plugin_gcc_version from the plugin and
+ pass it to the init function.
+ (plugin_default_version_check): New.
+
+2009-04-17 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-alias.c (refs_may_alias_p_1): Do not use TBAA
+ for decl-vs-decl disambiguation.
+
+2009-04-17 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.h (s390_tune_attr): New macro definition.
+ * config/s390/s390.md (cpu attribute): Map to s390_tune_attr.
+
+2009-04-17 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-ccp.c (struct fold_stmt_r_data): Remove.
+ (fold_stmt_r): Likewise.
+ (maybe_fold_reference): New function.
+ (fold_gimple_assign): Handle cases fold_stmt_r did.
+ (fold_stmt): Do not use fold_stmt_r.
+ (fold_stmt_inplace): Likewise.
+
+2009-04-17 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-dom.c (gimple_assign_unary_useless_conversion_p): Remove.
+ (record_equivalences_from_stmt): Remove useless checks and
+ simplifications.
+ * tree-ssa-pre.c (eliminate): Avoid converting a constant if
+ the type is already suitable.
+
+2009-04-17 Paolo Bonzini <bonzini@gnu.org>
+
+ * config/sh/sh.h (FUNCTION_VALUE): Fix call to sh_promote_prototypes.
+
+2009-04-17 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/arm/sfp-machine.h (__gcc_CMPtype): New typedef.
+ (CMPtype): Define as __gcc_CMPtype.
+
+2009-04-17 Aurelien Jarno <aurelien@aurel32.net>
+
+ * config.gcc: Add soft-fp/t-softfp and i386/t-linux to tmake_file
+ for i[34567]86-*-kfreebsd*-gnu*, x86_64-*-kfreebsd*-gnu*.
+
+2009-04-17 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/39746
+ * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Remove
+ special-casing for builtins and static variable use/def.
+ (call_may_clobber_ref_p_1): Likewise.
+
+2009-04-16 Ian Lance Taylor <iant@google.com>
+
+ * df.h: Include "timevar.h".
+ (struct df_problem): Change tv_id field to timevar_id_t.
+ * tree-pass.h: Include "timevar.h".
+ (struct opt_pass): Change tv_id field to timevar_id_t.
+ * timevar.h (timevar_id_t): Define TV_NONE.
+ * passes.c (execute_one_ipa_transform_pass): Check for tv_id !=
+ TV_NONE rather than tv_id != 0.
+ (execute_one_pass): Likewise.
+ * Makefile.in (DF_H): Add $(TIMEVAR_H).
+ (TREE_PASS_H): Define. Change all instances of tree-pass.h in
+ dependencies to $(TREE_PASS_H).
+ * bt-load.c (pass_branch_target_load_optimize1): Set tv_id field
+ to TV_NONE.
+ (pass_branch_target_load_optimize2): Likewise.
+ * cfglayout.c (pass_into_cfg_layout_mode): Likewise.
+ (pass_outof_cfg_layout_mode): Likewise.
+ * cgraphbuild.c (pass_remove_cgraph_callee_edges): Likewise.
+ (pass_rebuild_cgraph_edges): Likewise.
+ (pass_remove_cgraph_callee_edges): Likewise.
+ * df-core.c (pass_df_initialize_opt): Likewise.
+ (pass_df_initialize_no_opt): Likewise.
+ (pass_df_finish): Likewise.
+ * emit-rtl.c (pass_unshare_all_rtl): Likewise.
+ * except.c (pass_set_nothrow_function_flags): Likewise.
+ (pass_convert_to_eh_region_ranges): Likewise.
+ * final.c (pass_compute_alignments): Likewise.
+ * function.c (pass_instantiate_virtual_regs): Likewise.
+ (pass_init_function): Likewise.
+ (pass_leaf_regs): Likewise.
+ (pass_match_asm_constraints): Likewise.
+ * gimple-low.c (pass_lower_cf): Likewise.
+ (pass_mark_used_blocks): Likewise.
+ * init-regs.c (pass_initialize_regs): Likewise.
+ * integrate.c (pass_initial_value_sets): Likewise.
+ * ira.c (pass_ira): Likewise.
+ * jump.c (pass_cleanup_barriers): Likewise.
+ * omp-low.c (pass_expand_omp): Likewise.
+ (pass_lower_omp): Likewise.
+ * matrix-reorg.c (pass_ipa_matrix_reorg): Likewise.
+ * recog.c (pass_split_all_insns): Likewise.
+ (pass_split_after_reload): Likewise.
+ (pass_split_before_regstack): Likewise.
+ (pass_split_before_sched2): Likewise.
+ (pass_split_for_shorten_branches): Likewise.
+ * reginfo.c (pass_reginfo_init): Likewise.
+ (pass_subregs_of_mode_init): Likewise.
+ (pass_subregs_of_mode_finish): Likewise.
+ * passes.c (pass_postreload): Likewise.
+ * stack-ptr-mod.c (pass_stack_ptr_mod): Likewise.
+ * tree-cfg.c (pass_remove_useless_stmts): Likewise.
+ (pass_warn_function_return): Likewise.
+ (pass_warn_function_noreturn): Likewise.
+ * tree-complex.c (pass_lower_complex): Likewise.
+ (pass_lower_complex_O0): Likewise.
+ * tree-if-conv.c (pass_if_conversion): Likewise.
+ * tree-into-ssa.c (pass_build_ssa): Likewise.
+ * tree-mudflap.c (pass_mudflap_1): Likewise.
+ (pass_mudflap_2): Likewise.
+ * tree-nomudflap.c (pass_mudflap_1): Likewise.
+ (pass_mudflap_2): Likewise.
+ * tree-nrv.c (pass_return_slot): Likewise.
+ * tree-object-size.c (pass_object_sizes): Likewise.
+ * tree-optimize.c (pass_all_optimizations): Likewise.
+ (pass_early_local_passes): Likewise.
+ (pass_all_early_optimizations): Likewise.
+ (pass_cleanup_cfg): Likewise.
+ (pass_cleanup_cfg_post_optimizing): Likewise.
+ (pass_free_datastructures): Likewise.
+ (pass_free_cfg_annotations): Likewise.
+ (pass_fixup_cfg): Likewise.
+ (pass_init_datastructures): Likewise.
+ * tree-ssa.c (pass_early_warn_uninitialized): Likewise.
+ (pass_late_warn_uninitialized): Likewise.
+ (pass_update_address_taken): Likewise.
+ * tree-ssa-ccp.c (pass_fold_builtins): Likewise.
+ * tree-ssa-math-opts.c (pass_cse_reciprocals): Likewise.
+ (pass_cse_sincos): Likewise.
+ (pass_convert_to_rsqrt): Likewise.
+ * tree-ssa-structalias.c (pass_build_alias): Likewise.
+ * tree-stdarg.c (pass_stdarg): Likewise.
+ * tree-tailcall.c (pass_tail_recursion): Likewise.
+ (pass_tail_calls): Likewise.
+ * tree-vect-generic.c (pass_lower_vector): Likewise.
+ (pass_lower_vector_ssa): Likewise.
+ * tree-vectorizer.c (pass_ipa_increase_alignment): Likewise.
+
+2009-04-16 Joseph Myers <joseph@codesourcery.com>
+
+ * config/mips/mips.c (mips_rtx_cost_data): Use SOFT_FP_COSTS in
+ XLR entry.
+ * config/mips/mips.h (MIPS_ISA_LEVEL_SPEC, MIPS_ARCH_FLOAT_SPEC):
+ Handle -march=xlr.
+ * config/mips/xlr.md (ir_xlr_alu): Also accept insn types move,
+ logical and signext.
+
+2009-04-16 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR target/39767
+ * config/sh/predicates.md (arith_operand): Check if the operand
+ of TRUNCATE is a REG.
+
+2009-04-16 Kazu Hirata <kazu@codesourcery.com>
+
+ * cfgrtl.c (delete_insn_chain_and_edges): Remove.
+ * rtl.h: Remove the prototype for delete_insn_chain_and_edges.
+
+2009-04-16 Kazu Hirata <kazu@codesourcery.com>
+
+ * tree-iterator.c (tsi_split_statement_list_after,
+ tsi_split_statement_list_before): Remove.
+ * tree-iterator.h: Remove the prototypes for
+ tsi_split_statement_list_after and tsi_split_statement_list_before.
+
+2009-04-16 Kazu Hirata <kazu@codesourcery.com>
+
+ * tree-ssa-propagate.c (stmt_makes_single_load): Remove.
+ * tree-ssa-propagate.h: Remove the prototype for
+ stmt_makes_single_load.
+
+2009-04-16 Kazu Hirata <kazu@codesourcery.com>
+
+ * emit-rtl.c (set_mem_attrs_from_reg): Remove.
+ * rtl.h: Remove the prototype for set_mem_attrs_from_reg.
+
+2009-04-16 Kazu Hirata <kazu@codesourcery.com>
+
+ * tree-iterator.c (EXPR_LAST_BODY): Remove.
+
+2009-04-16 Kazu Hirata <kazu@codesourcery.com>
+
+ * except.c (eh_region_outer_p): Remove.
+ * except.h: Remove the prototype for eh_region_outer_p.
+
+2009-04-16 Kazu Hirata <kazu@codesourcery.com>
+
+ * function.c (current_function_assembler_name): Remove.
+ * function.h: Remove the prototype for
+ current_function_assembler_name.
+
+2009-04-16 Ian Lance Taylor <iant@google.com>
+
+ * rtlanal.c (alloc_reg_note): New function, broken out of add_reg_note.
+ (add_reg_note): Call alloc_reg_note.
+ * rtl.h (alloc_reg_note): Declare.
+ * combine.c (try_combine): Use alloc_reg_note.
+ (recog_for_combine, move_deaths): Likewise.
+ (distribute_notes): Use alloc_reg_note and add_reg_note.
+ * haifa-sched.c (sched_create_recovery_edges): Use add_reg_note.
+ * combine-stack-adj.c (adjust_frame_related_expr): Likewise.
+ * reload1.c (eliminate_regs_1): Use alloc_reg_note.
+
+2009-04-16 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR rtl-optimization/39762
+ * ira-int.h (ira_register_move_cost, ira_may_move_in_cost,
+ ira_may_move_out_cost): Add comments about way of their usage.
+ (ira_get_register_move_cost, ira_get_may_move_cost): New functions.
+
+ * ira-conflicts.c (process_regs_for_copy): Use function
+ ira_get_register_move_cost instead of global
+ ira_register_move_cost.
+
+ * ira-color.c (update_copy_costs, calculate_allocno_spill_cost,
+ color_pass, move_spill_restore, update_curr_costs): Ditto.
+
+ * ira-lives.c (process_single_reg_class_operands): Ditto.
+
+ * ira-emit.c (emit_move_list): Ditto.
+
+ * ira-costs.c (copy_cost): Don't call ira_init_register_move_cost.
+ (record_reg_classes): Ditto. Use functions
+ ira_get_register_move_cost and ira_get_may_move_cost instead of
+ global vars ira_register_move_cost, ira_may_move_out_cost and
+ ira_may_move_in_cost.
+ (record_address_regs): Don't call ira_init_register_move_cost.
+ Use function ira_get_may_move_cost instead of global
+ ira_may_move_in_cost.
+ (process_bb_node_for_hard_reg_moves): Use function
+ ira_get_register_move_cost instead of global ira_register_move_cost.
+ (ira_costs): Don't call ira_init_register_move_cost.
+
+2009-04-16 Richard Guenther <rguenther@suse.de>
+
+ * tree-cfg.c (verify_gimple_assign_binary):
+ Allow POINTER_PLUS_EXPR-like PLUS_EXPR for vectors.
+ * ipa-struct-reorg.c (gen_size): Fold the built expressions.
+ (create_general_new_stmt): Note that this function is broken.
+
+2009-04-16 Rafael Avila de Espindola <espindola@google.com>
+
+ * common.opt (fhelp): Add Var(help_flag).
+ * gcc-plugin.h (plugin_info): Add help.
+ * plugin.c (plugin_name_args): Add help.
+ (register_plugin_info): Set plugin->help.
+ (print_help_one_plugin): New.
+ (print_plugins_help): New.
+ * plugin.h (print_plugins_help): New.
+ * toplev.c (toplev_main): Call print_plugins_help if needed.
+
+2009-04-16 Richard Guenther <rguenther@suse.de>
+
+ * gimple.c (gimple_copy): Do not clear addresses_taken bitmap.
+ (gimple_ior_addresses_taken_1): New function.
+ (gimple_ior_addresses_taken): Likewise.
+ * gimple.h (struct gimple_statement_with_ops_base): Remove
+ addresses_taken member.
+ (gimple_ior_addresses_taken): Declare.
+ (gimple_addresses_taken, gimple_addresses_taken_ptr,
+ gimple_set_addresses_taken): Remove.
+ * ipa-reference.c (mark_address): New function.
+ (scan_stmt_for_static_refs): Use it for marking addresses taken.
+ * tree-ssa-operands.c (add_to_addressable_set): Rename to ...
+ (mark_address_taken): ... this. Just set TREE_ADDRESSABLE.
+ (gimple_add_to_addresses_taken): Remove.
+ (get_tmr_operands): Call mark_address_taken.
+ (get_asm_expr_operands): Likewise.
+ (get_expr_operands): Likewise.
+ (build_ssa_operands): Do not clear the addresses_taken bitmap.
+ (free_stmt_operands): Do not free it.
+ * tree-ssa.c (delete_tree_ssa): Likewise.
+ (execute_update_addresses_taken): Use gimple_ior_addresses_taken.
+
+2009-04-16 Richard Guenther <rguenther@suse.de>
+
+ * gimple.h (walk_stmt_load_store_addr_ops): Declare.
+ (walk_stmt_load_store_ops): Likewise.
+ * gimple.c (get_base_loadstore): New function.
+ (walk_stmt_load_store_addr_ops): Likewise.
+ (walk_stmt_load_store_ops): Likewise.
+ * ipa-pure-const.c (check_op): Simplify.
+ (check_load, check_store): New functions.
+ (check_stmt): Use walk_stmt_load_store_ops.
+ * ipa-reference.c (mark_load): Adjust signature.
+ (mark_store): Likewise.
+ (scan_stmt_for_static_refs): Use walk_stmt_load_store_addr_ops.
+
+2009-04-16 Rafael Avila de Espindola <espindola@google.com>
+
+ * gcc-plugin.h (plugin_event): Add PLUGIN_INFO.
+ (plugin_info): New.
+ * opts.c (common_handle_option): Don't call print_version.
+ * plugin.c (plugin_name_args): Add version.
+ (register_plugin_info): New.
+ (register_callback): Handle PLUGIN_INFO.
+ (try_init_one_plugin): New.
+ (init_one_plugin): Use try_init_one_plugin. Only free plugin_name_args
+ if failed to init.
+ (finalize_one_plugin): New.
+ (finalize_plugins): New.
+ (print_one_plugin): New.
+ (print_plugins_versions): New.
+ * plugin.h (print_plugins_versions): New.
+ (finalize_plugins): New.
+ * toplev.c (compile_file): Don't call initialize_plugins.
+ (print_version): Call print_plugins_versions.
+ (toplev_main): Call initialize_plugins. Print version if needed.
+ Call finalize_plugins.
+
+2009-04-16 Rafael Avila de Espindola <espindola@google.com>
+
+ * common.opt (fversion): New.
+ * gcc.c (print_version): New.
+ (process_command): Don't print the version. Just set print_version.
+ (main): Print version. Call subprocesses if print_version and
+ verbose_flag are set.
+ * opts.c (common_handle_option): Handle OPT_fversion.
+
+2009-04-16 Richard Guenther <rguenther@suse.de>
+ Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/39698
+ * tree-vect-loop.c (get_initial_def_for_reduction): Use the
+ type of the reduction variable. Only generate the def if
+ it is needed.
+
+ * omp-low.c (expand_omp_for_generic): When converting to a pointer
+ make sure to first convert to an integer of the same precision.
+ * tree-vect-loop-manip.c (vect_update_ivs_after_vectorizer): Retain
+ the type of the evolution correctly in computing the new
+ induction variable base.
+
+2009-04-16 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/39625
+ * tree-cfg.c (make_blocks): Split statements with to-be
+ abnormal SSA names on the lhs.
+
+2009-04-16 Paolo Bonzini <bonzini@gnu.org>
+
+ * c-common.c (vector_targets_convertible_p, vector_types_convertible_p):
+ Use TYPE_VECTOR_OPAQUE instead of targetm.vector_opaque_p.
+ * c-typeck.c (really_start_incremental_init): Likewise.
+ * target-def.h (TARGET_VECTOR_OPAQUE_P): Remove.
+ (TARGET_INITIALIZER): Remove it.
+ * target.h (struct target): Remove vector_opaque_p.
+ * tree.c (build_opaque_vector_type): New.
+ * tree.h (TYPE_VECTOR_OPAQUE): New.
+ (build_opaque_vector_type): Declare.
+ * doc/tm.texi (TARGET_VECTOR_OPAQUE_P): Remove.
+ * config/rs6000/rs6000.c (build_opaque_vector_type,
+ rs6000_is_vector_type, TARGET_VECTOR_OPAQUE_P): Remove.
+ (rs6000_init_builtins): Use build_opaque_vector_type for
+ opaque_V4SI_type_node.
+
+2009-04-15 Catherine Moore <clm@codesourcery.com>
+
+ * debug.h (set_name): Declare.
+ * dwarf2out.c (dwarf2out_set_name): Declare.
+ (dwarf2_debug_hooks): Add set_name.
+ (find_AT_string): New.
+ (add_AT_string): Call find_AT_string.
+ (dwarf2out_set_name): New.
+ * cp/decl.c (grokdeclarator): Call set_name.
+ * vmsdbgout.c (vmsdbg_debug_hooks): Add set_name_debug_nothing.
+ * debug.c (do_nothing_debug_hooks): Likewise.
+ * dbxout.c (dbx_debug_hooks): Likewise.
+ * sdbout.c (sdb_debug_hooks): Likewise.
+
+2009-04-15 Michael Eager <eager@eagercon.com>
+
+ * config/rs6000/rs6000.c (rs6000_function_value): Set function return
+ reg for single-precision FPU.
+ * config/rs6000/rs6000.md (movsi_internal1): Only for
+ !TARGET_SINGLE_FPU.
+ (movsi_internal1_single): New. Add pattern to move SI values to/from
+ single-precision FP regs.
+
+2009-04-15 Richard Guenther <rguenther@suse.de>
+
+ * omp-low.c (lower_rec_input_clauses): Build correct address
+ expressions.
+ (expand_omp_for_generic): Fix multiplication type.
+ * tree-loop-distribution.c (build_size_arg): Build a size_t argument.
+ (generate_memset_zero): Fix types.
+ * tree-profile.c (prepare_instrumented_value): Correctly
+ widen a pointer.
+
+2009-04-15 Ian Lance Taylor <iant@google.com>
+
+ * c.opt (Wenum-compare): Enable for C and Objc. Initialize to -1.
+ * c-opts.c (c_common_handle_option): For C, set warn_enum_compare
+ for -Wall and for -Wc++-compat.
+ (c_common_post_options): For C++, set warn_enum_compare if not
+ already set.
+ * c-tree.h (struct c_expr): Add field original_type.
+ (build_external_ref): Update declaration.
+ * c-parser.c (c_parser_braced_init): Set original_type.
+ (c_parser_initelt): Likewise.
+ (c_parser_expr_no_commas): Likewise.
+ (c_parser_conditional_expression): Likewise.
+ (c_parser_cast_expression): Likewise.
+ (c_parser_unary_expression): Likewise. Pull setting of
+ original_code to top of function.
+ (c_parser_sizeof_expression): Set original_type.
+ (c_parser_alignof_expression): Likewise.
+ (c_parser_postfix_expression): Likewise. Pull setting of
+ original_code to top of function.
+ (c_parser_postfix_expression_after_paren_type): Set original_type.
+ (c_parser_postfix_expression_after_primary): Likewise.
+ (c_parser_expression): Likewise.
+ * c-typeck.c (build_external_ref): Add type parameter. Change all
+ callers.
+ (c_expr_sizeof_expr): Set original_type field.
+ (parser_build_unary_op): Likewise.
+ (parser_build_binary_op): Likewise. Optionally warn about
+ comparisons of enums of different types.
+ (digest_init): Set original_type field.
+ (really_start_incremental_init): Likewise.
+ (push_init_level, pop_init_level): Likewise.
+ * doc/invoke.texi (Warning Options): -Wenum-compare now
+ supported in C.
+
+2009-04-15 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-pre.c (eliminate): When replacing a PHI node carry
+ out a necessary conversion.
+ * tree-ssa-sccvn.c (run_scc_vn): Also assign value-ids to
+ names we didn't value number.
+ * tree-mudflap.c (mf_build_check_statement_for): Use correct types.
+
2009-04-15 Richard Guenther <rguenther@suse.de>
PR tree-optimization/39764
Add/modify dependencies for plugin.o and files including plugin.h.
(plugin.o): New.
* config.in: Regenerate.
-
+
* opts.c (common_handle_option): Handle OPT_fplugin_ and
OPT_fplugin_arg_.
* plugin.c: New source file.
* plugin.h: New internal header file.
* passes.c (register_one_dump_file): Make it external.
-
+
* c-parser.c (c_parser_declspecs): Call invoke_plugin_callbacks.
2009-04-14 Diego Novillo <dnovillo@google.com>
2009-04-14 Rafael Avila de Espindola <espindola@google.com>
Merge:
-
2008-12-19 Diego Novillo <dnovillo@google.com>
- * cgraph.c (dump_cgraph_node): Show memory address of NODE.
+ * cgraph.c (dump_cgraph_node): Show memory address of NODE.
-2000-04-14 Richard Guenther <rguenther@suse.de>
+2009-04-14 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_gimple_assign_unary): Adjust vector code
verification.
* config/rs6000/rs6000-c.c: generate defines if rs6000_xilinx_fpu:
_XFPU, _XFPU_SP_LITE, _XFPU_SP_FULL, _XFPU_DP_LITE, _XFPU_DP_FULL
* config/rs6000/xilinx.h: New. Spec for powerpc-xilinx-eabi
- * config.gcc (powerpc-xilinx-eabi): add xilinx.h to tm_file,
+ * config.gcc (powerpc-xilinx-eabi): add xilinx.h to tm_file,
remove duplicate config
2009-04-13 Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
* ipa-inline.c (cgraph_decide_inlining_of_small_function): Dump
file_name:line_number type locator of the call site.
-
+
2009-04-13 Vladimir Makarov <vmakarov@redhat.com>
* genautomata.c: Put blank after comma.
correctness correctly.
(main): Don't write automata if error is found. Return correct
exit code.
-
+
* config/m68k/cf.md (cfv4_ds): Remove.
(cfv4_pOEP1, cfv4_sOEP1, cfv4_pOEP2,cfv4_sOEP2, cfv4_pOEP3,
cfv4_sOEP3): Assign to cfv4_oep instead of cfv4_ds.
* config/rs6000/power5.md (iq_power5, fpq_power5, power5-store,
power5-store-update, power5-two, power5-three, power5-lmul,
power5-imul, power5-imul3, power5-sdiv, power5-sqrt): Ditto.
-
+
2009-04-13 Adam Nemet <anemet@caviumnetworks.com>
* except.c (pass_set_nothrow_function_flags): Set name and add
* config.gcc (aix tm_file): Add aix-stdint.h.
(aix tm clause use_gcc_stdint): Set to wrap.
* config/rs6000/aix-stdint.h: New file.
-
+
2009-04-08 Richard Guenther <rguenther@suse.de>
PR middle-end/36291
2009-04-08 Bingfeng Mei <bmei@broadcom.com>
- * fold-const.c (const_binop): Combine two VECTOR_CST under operation
+ * fold-const.c (const_binop): Combine two VECTOR_CST under operation
CODE to produce a new one. Add a prototype to use fold_convert_const
2009-04-08 Danny Smith <dannysmith@users.sourceforge.net>
* dfp.c: Replace type punning assignments with memcpy throughout.
* Makefile.in (dfp.o-warn): Remove.
-
+
2009-04-07 Alan Modra <amodra@bigpond.net.au>
PR target/39634
PR rtl-optimization/39631
Revert:
-
+
2009-03-30 Vladimir Makarov <vmakarov@redhat.com>
* reload.c (push_reload, find_dummy_reload): Use df_get_live_out
instead of DF_LR_OUT.
(EPILOGUE_USES): Change to a function call.
* config/mips/sde.h (MIPS_EPILOGUE_TEMP_REGNUM): For interrupt
handlers, we use K0 as the temporary register.
-
+
* doc/extend.texi (Function Attributes): Document interrupt,
use_shadow_register_set, keep_interrupts_masked,
use_debug_exception_return for MIPS attributes.
(set_input): Use lbasename instead of duplicate code.
(save_temps_prefix): New static for -save-temps=obj.
(save_temps_length): Ditto.
-
+
* doc/invoke.texi (-save-temps=obj): Document new variant to
-save-temps switch.
* config/sh/sh.c (sh_dwarf_register_span): New function.
(TARGET_DWARF_REGISTER_SPAN): Define.
* config/sh/sh-protos.h (sh_dwarf_register_span): Declare.
-
+
2009-04-02 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/39595
- * tree-vect-slp.c (vect_build_slp_tree): Check that the size of
+ * tree-vect-slp.c (vect_build_slp_tree): Check that the size of
interleaved loads group is not greater than the SLP group size.
2009-04-02 Rafael Avila de Espindola <espindola@google.com>
2009-04-02 Dodji Seketeli <dodji@redhat.com>
PR c++/26693
- * c-decl.c: (clone_underlying_type): Move this ...
+ * c-decl.c (clone_underlying_type): Move this ...
* c-common.c (set_underlying_type): ... here.
Also, make sure the function properly sets TYPE_STUB_DECL() on
the newly created typedef variant type.
* loop-iv.c (replace_single_def_regs, replace_in_expr): New static
functions.
- (simplify_using_assignment, simplify_using_initial_values): Call
+ (simplify_using_assignment, simplify_using_initial_values): Call
replace_in_expr to make replacements. Call replace_single_def_regs
once on the initial version of the expression.
PR target/27237
* doc/invoke.texi (ARM Options): Update documentation for -mthumb.
-
+
2009-03-31 Richard Guenther <rguenther@suse.de>
PR middle-end/31029
* ira-build.c (ira_create_allocno): Use
ALLOCNO_LEFT_CONFLICTS_SIZE instead of
ALLOCNO_LEFT_CONFLICTS_NUM.
-
+
2009-03-30 Vladimir Makarov <vmakarov@redhat.com>
* reload.c (push_reload, find_dummy_reload): Use df_get_live_out
c_builtin_function_ext_scope, store_parm_decls_newstyle): Adjust
bind callers.
-2008-03-30 H.J. Lu <hongjiu.lu@intel.com>
+2009-03-30 H.J. Lu <hongjiu.lu@intel.com>
PR target/38781
* config/i386/i386.c (classify_argument): Check total size of
* tree-vectorizer.c: Update documentation and included files.
(vect_loop_location): Make extern.
(rename_use_op): Move to tree-vect-loop-manip.c
- (rename_variables_in_bb, rename_variables_in_loop,
- slpeel_update_phis_for_duplicate_loop,
+ (rename_variables_in_bb, rename_variables_in_loop,
+ slpeel_update_phis_for_duplicate_loop,
slpeel_update_phi_nodes_for_guard1,
slpeel_update_phi_nodes_for_guard2, slpeel_make_loop_iterate_ntimes,
slpeel_tree_duplicate_loop_to_edge_cfg, slpeel_add_loop_guard,
slpeel_can_duplicate_loop_p, slpeel_verify_cfg_after_peeling,
- set_prologue_iterations, slpeel_tree_peel_loop_to_edge,
+ set_prologue_iterations, slpeel_tree_peel_loop_to_edge,
find_loop_location): Likewise.
(new_stmt_vec_info): Move to tree-vect-stmts.c.
(init_stmt_vec_info_vec, free_stmt_vec_info_vec, free_stmt_vec_info,
supportable_widening_operation, supportable_narrowing_operation):
Likewise.
(bb_in_loop_p): Move to tree-vect-loop.c.
- (new_loop_vec_info, destroy_loop_vec_info,
- reduction_code_for_scalar_code, report_vect_op,
+ (new_loop_vec_info, destroy_loop_vec_info,
+ reduction_code_for_scalar_code, report_vect_op,
vect_is_simple_reduction, vect_is_simple_iv_evolution): Likewise.
(vect_can_force_dr_alignment_p): Move to tree-vect-data-refs.c.
(vect_supportable_dr_alignment): Likewise.
(vect_loop_location): Declare.
Reorganize function declarations according to the new file structure.
* tree-vect-loop.c: New file.
- * tree-vect-analyze.c: Remove. Move functions to tree-vect-data-refs.c,
+ * tree-vect-analyze.c: Remove. Move functions to tree-vect-data-refs.c,
tree-vect-stmts.c, tree-vect-slp.c, tree-vect-loop.c.
* tree-vect-data-refs.c: New file.
* tree-vect-patterns.c (timevar.h): Don't include.
* tree-vect-stmts.c: New file.
- * tree-vect-transform.c: Remove. Move functions to tree-vect-stmts.c,
+ * tree-vect-transform.c: Remove. Move functions to tree-vect-stmts.c,
tree-vect-slp.c, tree-vect-loop.c.
- * Makefile.in (OBJS-common): Remove tree-vect-analyze.o and
- tree-vect-transform.o. Add tree-vect-data-refs.o, tree-vect-stmts.o,
+ * Makefile.in (OBJS-common): Remove tree-vect-analyze.o and
+ tree-vect-transform.o. Add tree-vect-data-refs.o, tree-vect-stmts.o,
tree-vect-loop.o, tree-vect-loop-manip.o, tree-vect-slp.o.
(tree-vect-analyze.o): Remove.
(tree-vect-transform.o): Likewise.
(tree-vect-data-refs.o): Add rule.
- (tree-vect-stmts.o, tree-vect-loop.o, tree-vect-loop-manip.o,
+ (tree-vect-stmts.o, tree-vect-loop.o, tree-vect-loop-manip.o,
tree-vect-slp.o): Likewise.
(tree-vect-patterns.o): Remove redundant dependencies.
(tree-vectorizer.o): Likewise.
* c-typeck.c (build_conditional_expr): Emit ObjC warnings
by calling objc_compare_types and surpress warnings about
incompatible C pointers that are compatible ObjC pointers.
-
+
2009-03-29 Adam Nemet <anemet@caviumnetworks.com>
* cgraphbuild.c (build_cgraph_edges, rebuild_cgraph_edges): Don't
2009-03-28 Xinliang David Li <davidxl@google.com>
- * tree-ssa-ccp.c (ccp_finalize): Add dbg_count support.
+ * tree-ssa-ccp.c (ccp_finalize): Add dbg_count support.
(do_dbg_cnt): New function.
2009-03-28 Jan Hubicka <jh@suse.cz>
2009-03-27 Xinliang David Li <davidxl@google.com>
PR tree-optimization/39548
- * tree-ssa-copy.c (copy_prop_visit_phi_node): Add copy
+ * tree-ssa-copy.c (copy_prop_visit_phi_node): Add copy
candidate check.
2009-03-27 H.J. Lu <hongjiu.lu@intel.com>
2009-03-23 Bingfeng Mei <bmei@broadcom.com>
- * config.gcc (need_64bit_hwint): Make clear that need_64bit_hwint
+ * config.gcc (need_64bit_hwint): Make clear that need_64bit_hwint
should be set true if BITS_PER_WORD of target is bigger than 32
2009-03-22 Hans-Peter Nilsson <hp@axis.com>
from out of range shift counts.
(num_sign_bit_copies1) <case ASHIFTRT, case ASHIFT>: Similarly.
-2008-03-13 Catherine Moore <clm@codesourcery.com>
+2009-03-13 Catherine Moore <clm@codesourcery.com>
* gcc/config/i386/x-mingw32 (host-mingw32.o): Replace
diagnostic.h with $(DIAGNOSTIC_H).
-2008-03-12 Jakub Jelinek <jakub@redhat.com>
+2009-03-12 Jakub Jelinek <jakub@redhat.com>
PR target/39431
* config/i386/predicates.md (cmpxchg8b_pic_memory_operand): New
2009-02-27 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/39308
- * graphite.c (graphite_loop_normal_form): Do not call
+ * graphite.c (graphite_loop_normal_form): Do not call
number_of_iterations_exit from a gcc_assert.
2009-02-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
PR c++/38880
* varasm.c (initializer_constant_valid_p) [PLUS_EXPR]: Check
narrowing_initializer_constant_valid_p.
- (narrowing_initializer_constant_valid_p): Don't return
+ (narrowing_initializer_constant_valid_p): Don't return
null_pointer_node for adding a pointer to itself.
2009-02-23 Jan Hubicka <jh@suse.cz>
* c-common.c (handle_tls_model_attribute): Ignore attribute for
non-VAR_DECLs without checking DECL_THREAD_LOCAL_P.
-2009-02-04 Tobias Grosser <grosser@fim.uni-passau.de>
+2009-02-04 Tobias Grosser <grosser@fim.uni-passau.de>
* graphite.c (bb_in_sese_p, sese_build_livein_liveouts_use,
sese_build_livein_liveouts_bb, sese_build_livein_liveouts,
count_spilled_pseudo, find_reg, alter_reg, delete_output_reload):
Remove flag_ira.
(finish_spills): Ditto. Remove code for !flag_ira.
-
+
2009-01-29 Kenneth Zadeck <zadeck@naturalbridge.com>
PR middle-end/35854
"eh-ranges" to "eh_ranges".
* lower-subreg.c (pass_lower_subreg): Renamed pass from "subreg"
to "subreg1".
-
-
+
+
2009-01-29 Andrey Belevantsev <abel@ispras.ru>
Alexander Monakov <amonakov@ispras.ru>
2009-01-20 Sebastian Pop <sebastian.pop@amd.com>
- * common.opt (fgraphite, fgraphite-identity): Add comment for
+ * common.opt (fgraphite, fgraphite-identity): Add comment for
explaining why these options are not documented.
2009-01-20 Sebastian Pop <sebastian.pop@amd.com>
2009-01-16 Sebastian Pop <sebastian.pop@amd.com>
Tobias Grosser <tobi.grosser@amd.com>
- * graphite.c (add_conditions_to_domain): Add the loops to
+ * graphite.c (add_conditions_to_domain): Add the loops to
the dimension of the iteration domain. Do copy the domain
only when it exists.
(build_scop_conditions_1): Do not call add_conditions_to_domain.
* dce.c (delete_unmarked_insns): Reversed the order that insns are
examined before deleting them.
-
+
2009-01-16 Richard Earnshaw <rearnsha@arm.com>
* function.c (aggregate_value_p): Correctly extract the function
2009-01-15 Kenneth Zadeck <zadeck@naturalbridge.com>
* dce.c (find_call_stack_args, delete_unmarked_insns): Fixed comments.
-
+
2009-01-14 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/38245
* graphite.c (get_vdef_before_scop, scop_adjust_vphi): New.
(scop_adjust_phis_for_liveouts): Call scop_adjust_vphi.
(gloog): Do not call cleanup_tree_cfg.
- (graphite_transform_loops): Call cleanup_tree_cfg after all
+ (graphite_transform_loops): Call cleanup_tree_cfg after all
scops have been code generated.
2009-01-14 Basile Starynkevitch <basile@starynkevitch.net>
2009-01-11 Laurent GUERBY <laurent@guerby.net>
* doc/sourcebuild.texi (Source Tree): Move up intl and fixinc.
-
+
2009-01-11 Markus Schoepflin <markus.schoepflin@comsoft.de>
PR debug/7055
PR tree-optimization/37194
* tree-vect-transform.c (vect_estimate_min_profitable_iters):
- Don't add the cost of cost model guard in prologue to scalar
+ Don't add the cost of cost model guard in prologue to scalar
outside cost in case of known number of iterations.
2009-01-07 Nathan Froyd <froydnj@codesourcery.com>
* params.def (ira-max-conflict-table-size): New.
* doc/invoke.texi (ira-max-conflict-table-size): Decribe.
-
+
* ira.h (ira_conflicts_p): New external definition.
-
+
* ira-conflicts.c (build_conflict_bit_table): Do not build too big
table. Report this. Return result of building.
(ira_build_conflicts): Use ira_conflicts_p. Check result of
* ira-color.c (fast_allocation): Use num instead of ira_allocnos_num.
(ira_color): Use ira_conflicts_p.
-
+
* global.c: Include ira.h.
(pseudo_for_reload_consideration_p, build_insn_chain): Use
ira_conflicts_p.
* Makefile.in (global.o): Add ira.h.
-
+
* ira-build.c (mark_all_loops_for_removal,
propagate_some_info_from_allocno): New.
(remove_unnecessary_allocnos): Call
* reload1.c (compute_use_by_pseudos, reload, count_pseudo,
count_spilled_pseudo, find_reg, alter_reg, finish_spills,
emit_input_reload_insns, delete_output_reload): Use ira_conflicts_p.
-
+
2009-01-06 Ben Elliston <bje@au.ibm.com>
* gengtype-lex.l (YY_NO_INPUT): Define.
* df-problems.c (df_lr_finalize): Add recursive call to resolve lr
problem if fast dce is able to remove any instructions.
* dce.c (dce_process_block): Fix dump message.
-
+
2009-01-02 Mark Mitchell <mark@codesourcery.com>
PR 33649
* c-tree.h (process_init_element): Adjust prototype.
* c-parser.c (c_parser_initelt, c_parser_initval): Adjust
process_init_element callers.
+
+\f
+Copyright (C) 2009 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.