+2010-10-07 Alan Modra <amodra@gmail.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_prologue): Use gen_int_mode
+ rather than sign extension by hand.
+
+2010-10-07 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/45926
+ * ipa.c (cgraph_remove_unreachable_nodes): Revert my previous patch.
+
+2010-10-07 Richard Guenther <rguenther@suse.de>
+
+ PR bootstrap/45914
+ * configure.ac: Fix typo.
+ * configure: Regenerated.
+
+2010-10-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * config/spu/spu-c.c (spu_resolve_overloaded_builtin): Don't use
+ define_builtin_std where it's unnecessary.
+ * config/i386/nto.h (TARGET_OS_CPP_BUILTINS): Likewise.
+
+2010-10-06 Anatoly Sokolov <aesok@post.ru>
+
+ * doc/tm.texi.in (CLASS_LIKELY_SPILLED_P): Remove documentation.
+ * doc/tm.texi.in: Regenerate.
+ * system.h (CLASS_LIKELY_SPILLED_P): Poison.
+ * targhooks.c (default_class_likely_spilled_p): Don't use the
+ CLASS_LIKELY_SPILLED_P macro.
+
+ * config/arm/arm.md: Update comment.
+
+2010-10-06 Jan Hubicka <jh@suse.cz>
+
+ * ipa.c (cgraph_remove_unreachable_nodes): External references can
+ always be removed.
+ (cgraph_externally_visible_p): We can not bring local comdats that
+ are known to linker; fix handling of internal visibility.
+ (function_and_variable_visibility): Likewise.
+
+2010-10-06 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR rtl-optimization/45394
+ * combine.c (cleanup_auto_inc_dec): Remove AFTER parameter and adjust.
+ (struct rtx_subst_pair): Remove AFTER field.
+ (propagate_for_debug_subst): Adjust call to cleanup_auto_inc_dec.
+ (propagate_for_debug): Remove MOVE parameter and adjust.
+ (try_combine): In the special case where I2 is a PARALLEL, combine only
+ destinations of SETs and set I2SRC to the I2 source.
+ Adjust calls to propagate_for_debug throughout.
+ * reload1.c (eliminate_regs_1) <ASM_OPERANDS>: Do not abort for debug
+ insns.
+
+2010-10-06 Olivier Hainque <hainque@adacore.com>
+
+ * config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Rewrite
+ switch on insn codes as sequence of ifs.
+
+2010-10-06 Hariharan Sandanagobalane <hariharan@picochip.com>
+
+ * config/picochip/picochip.c (TARGET_EXCEPT_UNWIND_INFO): Define it to
+ be UI_NONE for picochip.
+ (picochip_option_override): Do not disable exception flags.
+ * config/picochip/picochip-protos.h (picochip_except_unwind_info):
+ Declare.
+
+2010-10-06 Richard Guenther <rguenther@suse.de>
+
+ * Makefile.in (regmove.o): Depend on $(TARGET_H).
+
+2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ Implemented fast enumeration for Objective-C.
+ * c-parser.c (objc_could_be_foreach_context): New.
+ (c_lex_one_token): Recognize RID_IN keyword in a potential
+ Objective-C foreach context.
+ (c_parser_declaration_or_fndef): Added parameter. Accept
+ Objective-C RID_IN keyword as terminating a declaration; in that
+ case, return the declaration in the new parameter.
+ (c_parser_extenral_declaration): Updated calls to
+ c_parser_declaration_or_fndef.
+ (c_parser_declaration_or_fndef): Same change.
+ (c_parser_compound_statement_nostart): Same change.
+ (c_parser_label): Same change.
+ (c_parser_objc_methodprotolist): Same change.
+ (c_parser_omp_for_loop): Same change.
+ (c_parser_for_statement): Detect and parse Objective-C foreach
+ statements.
+ (c_parser_omp_for_loop): Updated call to check_for_loop_decls().
+ * c-decl.c (check_for_loop_decls): Added parameter to allow ObjC
+ fast enumeration parsing code to turn off the c99 error but still
+ perform checks on the loop declarations.
+ * c-tree.h (check_for_loop_decls): Updated declaration.
+ * doc/objc.texi: Document fast enumeration.
+
+2010-10-06 Nick Clifton <nickc@redhat.com>
+
+ * config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Increment by
+ one.
+ (MDR_REGNUM): Define.
+ (FIXED_REGISTERS, CALL_USED_REGISTERS): Add MDR as a fixed
+ register.
+ (REG_CLASS_CONTENTS): Add MDR to ALL_REGS.
+ (INCOMING_RETURN_ADDR_RTX): Define in terms of MDR.
+ (REGISTER_NAMES): Add MDR.
+ (DWARF2_DEBUGGING_INFO): Define to 1.
+ * config/mn10300/mn10300.c (TARGET_EXCEPT_UNWIND_INFO): Define.
+ (F): New function. Sets RTX_FRAME_RELATED_P.
+ (mn10300_gen_multiple_store): Use F.
+ (expand_prologue): Use F. Use gen_movsf() to push floating
+ point registers.
+ (expand_epilogue): Use gen_movsf() to pop floating point
+ registers.
+ (mn10300_option_override): Disable combine stack adjust pass.
+
+2010-10-06 Thomas Schwinge <thomas@schwinge.name>
+
+ PR target/45901
+ * config/alpha/gnu.h (TARGET_OS_CPP_BUILTINS): Refer to
+ LINUX_TARGET_OS_CPP_BUILTINS instead of HURD_TARGET_OS_CPP_BUILTINS.
+
+2010-10-06 Jakub Jelinek <jakub@redhat.com>
+
+ * builtins.def (BUILT_IN_CALLOC, BUILT_IN_REALLOC,
+ BUILT_IN_ISALNUM, BUILT_IN_ISALPHA, BUILT_IN_ISASCII,
+ BUILT_IN_ISBLANK, BUILT_IN_ISCNTRL, BUILT_IN_ISDIGIT,
+ BUILT_IN_ISGRAPH, BUILT_IN_ISLOWER, BUILT_IN_ISPRINT,
+ BUILT_IN_ISPUNCT, BUILT_IN_ISSPACE, BUILT_IN_ISUPPER,
+ BUILT_IN_ISXDIGIT, BUILT_IN_TOASCII, BUILT_IN_TOLOWER,
+ BUILT_IN_TOUPPER): Mark as leaf.
+
+ PR middle-end/45838
+ * omp-builtins.def (BUILT_IN_GOMP_PARALLEL_LOOP_STATIC_START,
+ BUILT_IN_GOMP_PARALLEL_LOOP_DYNAMIC_START,
+ BUILT_IN_GOMP_PARALLEL_LOOP_GUIDED_START,
+ BUILT_IN_GOMP_PARALLEL_LOOP_RUNTIME_START,
+ BUILT_IN_GOMP_PARALLEL_START, BUILT_IN_GOMP_TASK,
+ BUILT_IN_GOMP_PARALLEL_SECTIONS_START): Use
+ Revert back to ATTR_NOTHROW_LIST instead of ATTR_NOTHROW_LEAF_LIST.
+
+2010-10-05 Anatoly Sokolov <aesok@post.ru>
+
+ * config/m68hc11/m68hc11.h (CLASS_LIKELY_SPILLED_P): Remove.
+ * config/m68hc11/m68hc11.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
+ (m68hc11_class_likely_spilled_p): New function.
+
+2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * c-parser.c (c_parser_objc_method_definition): Updated comment.
+
+2010-10-05 Jan Hubicka <jh@suse.cz>
+
+ * doc/invoke.texi (-flto-partition, lto-partitions, lto-minpartition):
+ Document.
+ * opts.c (decode_options): Handle lto partitions.
+ * common.opt (flto-partition=1to1, flto-partition=balanced): New.
+ * params.def (PARAM_LTO_PARTITIONS, MIN_PARTITION_SIZE): New.
+
+2010-10-05 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (assemble_function): Output thunks and aliases before
+ the function itself.
+
+2010-09-29 Hariharan Sandanagobalane <hariharan@picochip.com>
+
+ * config/picochip/picochip.c (picochip_option_override): Disable
+ exception flags for picochip.
+
+2010-10-05 Joseph Myers <joseph@codesourcery.com>
+
+ * opts-common.c (handle_option, handle_generated_option,
+ read_cmdline_option, set_option): Add diagnostic_context
+ parameter. Update calls among these functions.
+ (set_option): Don't use global_dc.
+ * opts.c (read_cmdline_options): Pass global_dc to
+ read_cmdline_option.
+ (decode_options): Pass global_dc to enable_warning_as_error.
+ (common_handle_option): Pass global_dc to enable_warning_as_error.
+ (enable_warning_as_error): Add diagnostic_context parameter.
+ Document parameters. Don't use global_dc. Pass
+ diagnostic_context parameter to handle_generated_option.
+ * opts.h (set_option, handle_option, handle_generated_option,
+ read_cmdline_option, enable_warning_as_error): Add
+ diagnostic_context parameter.
+ * Makefile.in (lto-opts.o): Update dependencies.
+ * coretypes.h (struct diagnostic_context, diagnostic_context):
+ Declare here.
+ * diagnostic.h (diagnostic_context): Don't declare typedef here.
+ * gcc.c (process_command): Pass global_dc to read_cmdline_option.
+ * langhooks-def.h (struct diagnostic_context): Don't declare here.
+ (lhd_print_error_function, lhd_initialize_diagnostics): Declare
+ using diagnostic_context typedef.
+ * langhooks.c (lhd_initialize_diagnostics): Declare using
+ diagnostic_context typedef.
+ * langhooks.h (struct diagnostic_context): Don't declare here.
+ (initialize_diagnostics, print_error_function): Declare using
+ diagnostic_context typedef.
+ * lto-opts.c: Include diagnostic.h.
+ (lto_reissue_options): Pass global_dc to set_option. Pass
+ DK_UNSPECIFIED not 0.
+ * plugin.c (plugins_internal_error_function): Declare using
+ diagnostic_context typedef.
+ * plugin.h (struct diagnostic_context): Don't declare here.
+ (plugins_internal_error_function): Declare using
+ diagnostic_context typedef.
+
+2010-10-05 Olivier Hainque <hainque@adacore.com>
+ Nicolas Roche <roche@adacore.com>
+
+ * config/vxworksae.h: Add missing VXWORKS_OS_CPP_BUILTINS.
+ * config/rs6000/vxworks.h: Remove redundant CPP builtin definitions.
+
+2010-10-05 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/45752
+ * tree-vect-slp.c (vect_get_mask_element): Remove static
+ variables, make them function arguments.
+ (vect_transform_slp_perm_load): Pass new arguments to
+ vect_get_mask_element.
+
+2010-10-05 Richard Guenther <rguenther@suse.de>
+
+ * value-prof.c (gimple_divmod_fixed_value): Work on SSA form.
+ (gimple_mod_pow2): Likewise.
+ (gimple_mod_subtract): Likewise.
+ (gimple_ic): Likewise.
+ (gimple_stringop_fixed_value): Likewise.
+ * tree-profile.c (tree_init_edge_profiler): Mark profile
+ functions nothrow and leaf.
+ (add_abnormal_goto_call_edges): Remove.
+ (tree_gen_edge_profiler): Work on SSA form.
+ (tree_gen_ic_profiler): Likewise. Simplify.
+ (do_tree_profiling): Update SSA form.
+ (pass_tree_profile): Remove.
+ (do_tree_profiling): Likewise.
+ (gate_tree_profile_ipa): New function.
+ (pass_ipa_tree_profile): New.
+ (tree_profiling): Re-write as IPA pass. Properly drop const/pure
+ state of instrumented functions.
+ * passes.c (init_optimization_passes): Remove early non-SSA
+ inlining. Move profiling after early optimizations.
+ * ipa-inline.c (cgraph_gate_ipa_early_inlining): Remove.
+ (pass_ipa_early_inline): Likewise.
+ * tree-pass.h (pass_ipa_early_inline): Remove.
+ (pass_tree_profile): Likewise.
+ (pass_ipa_tree_profile): Declare.
+
+2010-10-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
+ Christian Borntraeger <Christian.Borntraeger@de.ibm.com>
+
+ * gcc/config/s390/s390.c (z196_cost): New.
+ (s390_handle_arch_option): Add -march=z196.
+ (s390_option_override): Use the new cost function and use the z10
+ defaults also for z196.
+ (legitimate_reload_constant_p): Adjust comment.
+ (legitimate_reload_fp_constant_p): New function.
+ (s390_preferred_reload_class): Distingiush between FP and Int constants.
+ (preferred_la_operand_p): Avoid la with index on z196.
+ (s390_adjust_priority): Trigger also for z196.
+ (s390_issue_rate): Issue rate for z196 is 3.
+ (s390_z10_fix_long_loop_prediction): Rename to ...
+ (s390_fix_long_loop_prediction): ... this.
+ (s390_reorg): Apply the z10 adjustments also for z196.
+ (s390_loop_unroll_adjust): Do this also for z196.
+ * gcc/config/s390/s390.h (enum processor_type): Add PROCESSOR_2817_Z196.
+ (enum processor_flags): Add PF_Z196.
+ (TARGET_AVOID_CMP_AND_BRANCH): New macro.
+ (TARGET_CPU_Z196, TARGET_Z196): New macros.
+ * gcc/config.gcc: Enable z196 for --with-arch.
+ * gcc/config/s390/2817.md: New file.
+ * gcc/config/s390/2084.md: New type for multiply and add.
+ * gcc/config/s390/2097.md: Likewise.
+ * gcc/config/s390/s390.md (UNSPEC_POPCNT, UNSPEC_COPYSIGN)
+ (UNSPECV_ATOMIC_OP): New constants.
+ (fmadddf, fmaddsf): New values for type attribute.
+ (z196prop): New insn attribute.
+ (cpu, cpu_facility): Add z196.
+ (ATOMIC_Z196): New code iterator.
+ (noxa): New code attribute.
+ (gk): New mode attribute.
+ (*mov<mode>_64, *mov<mode>_31, *mov<mode>_64dfp, mov<mode>):
+ Support load zero for fp constants.
+ (fixuns_truncdddi2, fixuns_trunctddi2)
+ (fixuns_trunc<BFP:mode><GPR:mode>2): Use the standard rtx pattern
+ for z196.
+ (fixuns_trunc<mode>si2, mov<mode>cc, popcountdi2, popcountsi2)
+ (popcounthi2, popcountqi2): New expander.
+ (*fixuns_trunc<FP:mode><GPR:mode>2_z196, floatsi<mode>2)
+ (floatuns<GPR:mode><FP:mode>2, *mov<mode>cc, sync_<atomic><mode>)
+ (sync_old_<atomic><mode>, *popcount<mode>, copysign<mode>3): New
+ insn definition.
+ (add<mode>3, *add<mode>3_carry1_cc, *add<mode>3_carry1_cconly)
+ (*add<mode>3_carry2_cc, *add<mode>3_carry2_cconly, *add<mode>3_cc)
+ (*add<mode>3_cconly, *add<mode>3_cconly2, *add<mode>3_imm_cc, *sub<mode>3)
+ (*sub<mode>3_borrow_cc, *sub<mode>3_borrow_cconly, *sub<mode>3_cc)
+ (*sub<mode>3_cc2, *sub<mode>3_cconly, *sub<mode>3_cconly2)
+ (*anddi3_cc, *anddi3_cconly, *anddi3, *andsi3_cc, *andsi3_cconly)
+ (*andsi3_zarch, *andsi3_esa, *andhi3_zarch, *andqi3_zarch, *iordi3_cc)
+ (*iordi3_cconly, *iordi3, *iorsi3_cc, *iorsi3_cconly, *iorsi3_zarch)
+ (*iorhi3_zarch, *iorqi3_zarch, *xordi3_cc, *xordi3_cconly, *xordi3)
+ (*xorsi3_cc, *xorsi3_cconly, *xorsi3, *xorhi3, *xorqi3, *<shift><mode>3)
+ (*<shift><mode>3_and, *ashr<mode>3_cc, *ashr<mode>3_cconly, *ashr<mode>3)
+ (*ashr<mode>3_cc_and, *ashr<mode>3_cconly_and, *ashr<mode>3_and):
+ Support new z196 instructions.
+
+2010-10-05 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/45877
+ * gimple-fold.c (gimplify_and_update_call_from_tree): Handle
+ case where gimplification optimizes away the stmt.
+
+2010-10-04 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/45849
+ * var-tracking.c (strip_pointer_flags): New function.
+ (emit_note_insn_var_location): If rtx_equal_p check failed,
+ retry on locations simplified with simplify_replace_fn_rtx
+ and strip_pointer_flags as its callback.
+
+2010-10-04 Jan Hubicka <jh@suse.cz>
+
+ * gimple-fold.c (static_object_in_other_unit_p): Rename to...
+ (can_refer_decl_in_current_unit_p): ... this one; reverse return
+ value; handle comdats too.
+ (canonicalize_constructor_val): Use it; handle function_decls
+ correctly.
+ (gimple_fold_obj_type_ref_known_binfo): Likewise.
+ * gimple.c (get_base_address): Accept all kinds of decls.
+
+2010-10-04 Joseph Myers <joseph@codesourcery.com>
+
+ * flags.h (g_switch_value, g_switch_set): Remove.
+ * opts.c (g_switch_value, g_switch_set): Remove.
+ * config/g.opt (G): Add Var(g_switch_value).
+ * config/alpha/alpha.c (alpha_handle_option): Don't handle -G
+ here.
+ (alpha_option_override): Check global_options_set.x_g_switch_value
+ instead of g_switch_set.
+ (alpha_in_small_data_p): Remove cast in comparison with
+ g_switch_value.
+ * config/alpha/elf.h (ASM_OUTPUT_ALIGNED_LOCAL): Cast
+ g_switch_value to unsigned HOST_WIDE_INT.
+ * config/frv/frv.c (frv_const_unspec_p): Remove cast in comparison
+ with g_switch_value.
+ (frv_handle_option): Don't handle -G here.
+ (frv_option_override): Check global_options_set.x_g_switch_value
+ instead of g_switch_set. Don't modify g_switch_set.
+ (frv_in_small_data_p): Remove cast in comparison with
+ g_switch_value.
+ * config/frv/frv.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Cast
+ g_switch_value to unsigned HOST_WIDE_INT.
+ * config/ia64/ia64.c (ia64_handle_option): Don't handle -G here.
+ (ia64_option_override): Check global_options_set.x_g_switch_value
+ instead of g_switch_set.
+ * config/lm32/lm32.c (lm32_handle_option, TARGET_HANDLE_OPTION):
+ Remove.
+ (lm32_in_small_data_p): Remove cast in comparison with
+ g_switch_value.
+ * config/lm32/lm32.h (ASM_OUTPUT_ALIGNED_LOCAL,
+ ASM_OUTPUT_ALIGNED_COMMON): Cast g_switch_value to unsigned
+ HOST_WIDE_INT.
+ * config/m32r/m32r.c (m32r_handle_option): Don't handle -G here.
+ (m32r_init): Check global_options_set.x_g_switch_value instead of
+ g_switch_set.
+ (m32r_in_small_data_p): Remove cast in comparison with
+ g_switch_value.
+ (m32r_file_start): Format g_switch_value with %d.
+ * config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_COMMON,
+ ASM_OUTPUT_ALIGNED_BSS): Cast g_switch_value to unsigned
+ HOST_WIDE_INT.
+ * config/microblaze/microblaze.c (microblaze_handle_option): Don't
+ handle -G here.
+ (microblaze_option_override): Check
+ global_options_set.x_g_switch_value instead of g_switch_set.
+ * config/mips/mips.c (mips_handle_option): Don't handle -G here.
+ (mips_option_override): Check global_options_set.x_g_switch_value
+ instead of g_switch_set.
+ * config/rs6000/rs6000.c (rs6000_handle_option): Don't handle -G
+ here.
+ (rs6000_file_start): Format g_switch_value with %d.
+ (small_data_operand, rs6000_elf_in_small_data_p): Remove casts in
+ comparisons with g_switch_value.
+ * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Check
+ global_options_set.x_g_switch_value instead of g_switch_set.
+ * config/rs6000/vxworks.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Check
+ global_options_set.x_g_switch_value instead of g_switch_set.
+ * config/score/score.c (score_handle_option): Don't handle -G
+ here.
+ * config/score/score3.c (score3_option_override): Check
+ global_options_set.x_g_switch_value instead of g_switch_set.
+ * config/score/score7.c (score7_option_override): Check
+ global_options_set.x_g_switch_value instead of g_switch_set.
+
+2010-10-04 Vladimir Makarov <vmakarov@redhat.com>
+
+ * common.opt (fira-coalesce): Remove.
+
+ * doc/invoke.texi (flag_ira_coalesce): Remove.
+
+ * ira-color.c (allocno_coalesced_p): Move before
+ copy_freq_compare_func.
+ processed_coalesced_allocno_bitmap): Ditto.
+ (update_conflict_hard_regno_costs): Don't use
+ ALLOCNO_FIRST_COALESCED_ALLOCNO.
+ (allocno_cost_compare_func, print_coalesced_allocno): Remove.
+ (assign_hard_reg): Assume no coalesced allocnos.
+ (get_coalesced_allocnos_attributes): Remove.
+ (bucket_allocno_compare_func): Assume no coalesced allocnos.
+ (push_allocno_to_stack): Ditto.
+ (remove_allocno_from_bucket_and_push): Use
+ ira_print_expanded_allocno instead of print_coalesced_allocno.
+ (push_allocnos_to_stack): Assume uncoalesced allocnos.
+ (all_conflicting_hard_regs_coalesced): Ditto. Rename to
+ all_conflicting_hard_regs.
+ (setup_allocno_available_regs_num): Assume uncoalesced allocnos.
+ (setup_allocno_left_conflicts_size): Ditto.
+ (put_allocno_into_bucket): Ditto.
+ (copy_freq_compare_func): Remove.
+ (copy_freq_compare_func, merge_allocnos): Move before
+ coalesced_pseudo_reg_freq_compare.
+ coalesced_allocno_conflict_p): Ditto.
+ (coalesced_allocno_conflict_p, coalesce_allocnos): Ditto. Remove
+ parameter. Assume it true.
+ (color_allocnos): Assume uncoalesced allocnos. Use
+ ira_print_expanded_allocno instead of print_coalesced_allocno.
+ (ira_sort_regnos_for_alter_reg): Call coalesce_allocnos without
+ parameter.
+
+ * ira.c: Remove comment about coalescing.
+
+2010-10-04 Joseph Myers <joseph@codesourcery.com>
+
+ * config/mips/mips.h (target_flags_explicit): Declare for
+ GENERATOR_FILE.
+
+2010-10-04 Andi Kleen <ak@linux.intel.com>
+
+ * Makefile.in (xgcc, cpp, cc1, collect2, lto-wrapper, gcov,
+ gcov-dump, cc1-dummy, genprog, build/gcov-iov): Add + to build rule.
+
+2010-10-04 Matthias Klose <doko@ubuntu.com>
+
+ * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Use ../lib32 as the
+ multilib osdirname if it exists.
+ * config/s390/t-linux64 (MULTILIB_OSDIRNAMES): Likewise.
+
+2010-10-04 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/45876
+ * fold-const.c (fold_binary_loc) <case BIT_AND_EXPR>: Use
+ arg0's type or its unsigned counterpart as utype. Convert
+ arg1 to utype unconditionally.
+
+2010-10-04 Julian Brown <julian@codesourcery.com>
+
+ * expr.c (expand_assignment): Add assertion to prevent emitting
+ null rtx for movmisalign pattern.
+ (expand_expr_real_1): Likewise.
+ * config/arm/arm.c (arm_builtin_support_vector_misalignment): New.
+ (TARGET_VECTORIZE_SUPPORT_VECTOR_MISALIGNMENT): New. Use above.
+ (arm_vector_alignment_reachable): New.
+ (TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): New. Use above.
+ (neon_vector_mem_operand): Disallow PRE_DEC for misaligned loads.
+ (arm_print_operand): Include alignment qualifier in %A.
+ * config/arm/neon.md (UNSPEC_MISALIGNED_ACCESS): New constant.
+ (movmisalign<mode>): New expander.
+ (movmisalign<mode>_neon_store, movmisalign<mode>_neon_load): New
+ insn patterns.
+
+2010-10-04 Joseph Myers <joseph@codesourcery.com>
+
+ * optc-gen.awk: Define global_options_set. Don't define
+ target_flags_explicit.
+ * opth-gen.awk: Declare global_options_set. Define
+ target_flags_explicit as macro.
+ * opts-common.c (handle_option): Take opts_set and generated_p
+ parameters.
+ (handle_generated_option, read_cmdline_option, set_option): Take
+ opts_set parameter.
+ (set_option): Use opts_set instead of hardcoding target_flags and
+ target_flags_explicit.
+ * opts.c (sel_sched_switch_set, profile_arc_flag_set,
+ flag_profile_values_set, flag_unroll_loops_set, flag_tracer_set,
+ flag_value_profile_transformations_set, flag_peel_loops_set,
+ flag_branch_probabilities_set, flag_inline_functions_set,
+ flag_ipa_cp_set, flag_ipa_cp_clone_set,
+ flag_predictive_commoning_set, flag_unswitch_loops_set,
+ flag_gcse_after_reload_set): Remove.
+ (common_handle_option, lang_handle_option, target_handle_option):
+ Take opts_set parameter. Assert that it is &global_options_set.
+ (common_handle_option): Don't set _set variables. Check opts_set
+ instead of such variables.
+ (enable_warning_as_error): Pass &global_options_set to
+ handle_generated_option.
+ * opts.h (cl_option_handler_func.handler, set_option,
+ handle_option, handle_generated_option, read_cmdline_option): Add
+ opts_set parameters.
+ (handle_option): Add generated_p parameter.
+ * config/i386/i386.c (ix86_function_specific_save,
+ ix86_function_specific_restore): Updat for renaming of
+ target_flags_explicit field.
+ * config/i386/i386.opt (target_flags_explicit): Rename to
+ ix86_target_flags_explicit.
+ * config/ia64/ia64.c (ia64_override_options_after_change): Check
+ global_options_set.x_flag_selective_scheduling and
+ global_options_set.x_flag_selective_scheduling2, not
+ sel_sched_switch_set.
+ * flags.h (sel_sched_switch_set,
+ flag_speculative_prefetching_set): Remove.
+ * gcc.c (driver_handle_option): Take opts_set parameter. Assert
+ that it is &global_options_set.
+ (process_command): Pass &global_options_set to
+ read_cmdline_option.
+ * lto-opts.c (lto_reissue_options): Pass &global_options_set to
+ set_option.
+ * toplev.c (target_flags_explicit): Remove.
+
+2010-10-04 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/45871
+ * tree-ssa-ccp.c (get_base_constructor): Take HOST_WIDE_INT offset;
+ use get_ref_base_and_offset to handle references.
+ (fold_const_aggregate_ref): Update.
+
+2010-10-04 Martin Jambor <mjambor@suse.cz>
+
+ PR tree-optimization/45572
+ * ipa-prop.c (ipa_make_edge_direct_to_target): Call
+ ipa_check_create_node_params.
+ * ipa-inline.c (add_new_edges_to_heap): Do not insert inlined edges.
+
+2010-10-04 Yao Qi <yao@codesourcery.com>
+
+ * doc/passes.texi: Clean up.
+
+2010-10-03 Ian Lance Taylor <iant@google.com>
+
+ * c-typeck.c (lookup_field): If -fplan9-extensions, permit
+ referring to a field using a typedef name.
+ (find_anonymous_field_with_type): New static function.
+ (convert_to_anonymous_field): New static function.
+ (convert_for_assignment): If -fplan9-extensions, permit converting
+ pointer to struct to pointer to anonymous field.
+ * c-decl.c (grokfield): If -fplan9-extensions, permit anonymous
+ fields.
+ (is_duplicate_field): New static function.
+ (detect_field_duplicates_hash): If -fplan9-extensions, check for
+ typedef names duplicating field names.
+ (detect_field_duplicates): Likewise.
+ * doc/invoke.texi (Option Summary): Mention -fplan9-extensions.
+ (C Dialect Options): Document -fplan9-extensions.
+ * doc/extend.texi (Unnamed Fields): Document -fplan9-extensions.
+
+2010-10-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * tree-vect-data-refs.c (vect_analyze_data_ref_access): Revert
+ revision 164914.
+ (vect_create_data_ref_ptr): Likewise.
+ * tree-vect-stmts.c (vectorizable_store): Likewise.
+ (perm_mask_for_reverse): Likewise.
+ (reverse_vec_elements): Likewise.
+ (vectorizable_load): Likewise.
+
+2010-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * cppbuiltin.c: New file.
+ * cppbuiltin.h: New file.
+ * Makefile.in: Take into account cppbuiltin.{h,c}.
+
+2010-10-03 Andi Kleen <ak@linux.intel.com>
+
+ * lto-cgraph.c (input_cgraph): Check for missing sections.
+
+2010-10-03 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*ashl<mode>3_mask): Change operand 2 preticate
+ to nonimmediate_operand. Force operand 2 to register when allowed.
+ (*<shiftrt_insn><mode>3_mask): Ditto.
+ (*<rotate_insn><mode>3_mask): Ditto.
+
+2010-10-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR tree-optimization/45720
+ PR tree-optimization/45764
+ * tree-vect-data-refs.c (vect_analyze_data_ref_access):
+ Don't accept backwards consecutive accesses.
+ (vect_create_data_ref_ptr): Disallow negative steps.
+
+ * tree-vect-stmts.c (vectorizable_store): Allow negative steps.
+ (perm_mask_for_reverse): Removed.
+ (reverse_vec_elements): Likewise.
+ (vectorizable_load): Don't handle negative steps.
+
+2010-10-02 Jan Hubicka <jh@suse.cz>
+
+ * tree-ssa-ccp.c (ccp_fold_stmt): Fold away OBJ_TYPE_REF when
+ call destination is known.
+
+2010-10-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/45820
+ * config/pa/pa.c (pa_secondary_reload): Handle symbolic operands
+ earlier.
+
+2010-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * doc/install.texi (Configuration): Document build_configargs,
+ host_configargs, target_configargs.
+
+2010-10-01 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*ashl<mode>3_mask): New insn_and_split pattern.
+ (*<shiftrt_insn><mode>3_mask): Ditto.
+ (*<rotate_insn><mode>3_mask): Ditto.
+
+2010-10-01 Steve Ellcey <sje@cup.hp.com>
+
+ PR tree-optimization/44716
+ * config/ia64/hpux.h (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Define.
+ (HOT_TEXT_SECTION_NAME): Define.
+
+2010-10-01 Nick Clifton <nickc@redhat.com>
+
+ * common.opt: Add -fcombine-stack-adjustments.
+ * opts.c (decode_options): Enable -fcombine-stack-adjustments at -O1.
+ * combine-stack-adj.c (gate_handle_stack_adjustments): Check
+ flag_combine_stack_adjustments.
+ * doc/invoke.texi: Document the new option.
+
+2010-10-01 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/45854
+ * tree-eh.c (cleanup_empty_eh): Avoid degenerate case.
+
+2010-10-01 Anthony Green <green@moxielogic.com>
+
+ * config.gcc: Fix moxie-*-rtems* configuration.
+
+2010-10-01 Richard Guenther <rguenther@suse.de>
+
+ * dwarf2out.c (gen_namespace_die): Use DECL_FILE_SCOPE_P.
+ (gen_decl_die): Likewise.
+
+2010-10-01 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * config/spu/spu.c (spu_init_builtins): No longer add END_BUILTINS
+ to the function code for SPU MD builtins.
+ (spu_expand_builtin): Update.
+ * config/spu/spu-c.c (spu_resolve_overloaded_builtin): Update.
+
+2010-10-01 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * config/spu/spu.c (TARGET_EXCEPT_UNWIND_INFO): Set to
+ sjlj_except_unwind_info.
+
+2010-10-01 Tristan Gingold <gingold@adacore.com>
+
+ * configure.ac: Define the nop insn for avr*-*-*
+ * configure: Regenerate.
+
+2010-10-01 Alan Modra <amodra@gmail.com>
+
+ PR target/45807
+ * config/rs6000/rs6000.c (rs6000_emit_prologue): Properly sign
+ extend toc_restore_insn.
+
+2010-09-30 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/43959
+ * function.c (gimplify_parameters): Use create_tmp_reg instead of
+ create_tmp_var.
+
+2010-09-30 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.c (sh_expand_prologue): Set
+ current_function_static_stack_size.
+
+2010-09-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * configure.ac: Check for Solaris 8 ld with .hidden support.
+ * configure: Regenerate.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ PR middle-end/45758
+ * graphite.c (graphite_initialize): Call scev_reset.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * sese.h (scev_analyzable_p): Return false for real or floating
+ point. Only handle INTEGRAL_TYPE_P and POINTER_TYPE_P.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-clast-to-gimple.c (compute_bounds_for_level): Free le
+ and ps.
+ * graphite-poly.c (pbb_number_of_iterations_at_time): Free le and
+ domain.
+ * graphite-sese-to-poly.c (add_upper_bounds_from_estimated_nit):
+ Do not allocate ub_expr, it is passed in initialized.
+
+2010-09-30 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
+
+ * graphite-clast-to-gimple.c (init_cloog_input_file): New.
+ (build_cloog_prog): Dump CLooG input file when
+ flag_graphite_dump_cloog is set. This is disabled on trunk.
+ * graphite-cloog-compat.h (cloog_program_dump_cloog): New.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-clast-to-gimple.c (graphite_verify): Remove call to
+ verify_dominators for CDI_POST_DOMINATORS.
+ * sese.h: Remove comment about CDI_POST_DOMINATORS.
+ (recompute_all_dominators): Remove call to free_dominance_info
+ for CDI_POST_DOMINATORS. Remove call to calculate_dominance_info
+ for CDI_POST_DOMINATORS.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-poly.c (pbb_number_of_iterations_at_time): Only iterate
+ over pbb_dim_iter_domain.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-flattening.c: Fix comments.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * Makefile.in (OBJS-common): Add graphite-flattening.o.
+ (graphite-flattening.o): New rule.
+ * common.opt (floop-flatten): New flag.
+ * doc/invoke.texi (-floop-flatten): Documented.
+ * graphite-flattening.c: New.
+ * graphite-poly.c (apply_poly_transforms): Call flatten_all_loops.
+ * graphite-poly.h (flatten_all_loops): Declared.
+ (lst_remove_loop_and_inline_stmts_in_loop_father): New.
+ * tree-ssa-loop.c (gate_graphite_transforms): When flag_loop_flatten
+ is set, also set flag_graphite.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-poly.c (cloog_checksum): New.
+ * graphite-poly.h (cloog_checksum): Declared.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-poly.c (pbb_number_of_iterations): Removed.
+ (pbb_number_of_iterations_at_time): Correctly compute the number
+ of iterations in the transformed loop.
+ * graphite-poly.h (pbb_number_of_iterations): Removed.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-poly.h (lst_update_scattering_seq): Removed.
+ (lst_update_scattering): Correctly handle outermost loop dewey
+ renumbering.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-blocking.c (pbb_strip_mine_profitable_p): Renamed
+ lst_strip_mine_profitable_p. Call lst_niter_for_loop.
+ * graphite-poly.h (lst_niter_for_loop): New.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-poly.c (apply_poly_transforms): Do not abort when the
+ transform read from disk is not legal. Call fatal_error instead.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-poly.c (print_pbb_body): Add missing closing parenthesis.
+ (print_scop_header): Removed. Inlined in the only call place...
+ (print_scop): ... here.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-poly.h (lst_dewey_number): Use FOR_EACH_VEC_ELT.
+
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-poly.c (graphite_read_scop_file): Fix uninitialize warning.
+
2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (dot_deps): Avoid set but not used warning.
2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
- * graphite-clast-to-gimple.c (max_signed_precision_type): Remove the call
- to lang_hooks.types.type_for_size. Call build_nonstandard_integer_type.
+ * graphite-clast-to-gimple.c (max_signed_precision_type): Remove
+ the call to lang_hooks.types.type_for_size. Call
+ build_nonstandard_integer_type.
2010-09-30 Riyadh Baghdadi <baghdadi.mr@gmail.com>
(print_pdr_access_layout): Updated to support OpenScop format.
(print_pdr): Same.
(openscop_print_pbb_domain): New.
- (print_pbb_body): Added a parameter to allow indicating that pbb_body is
- not provided.
+ (print_pbb_body): Added a parameter to allow indicating that pbb_body
+ is not provided.
(print_pbb): Updated to call the new print_pbb_body.
(openscop_print_scop_context): New.
(print_scop_header): New.
* Makefile.in (build/gen%$(build_exeext)): Move rule after all
special-casing for generators and turn into ...
((genprog:%=build/gen%$(build_exeext))): ... this static pattern
- rule, for better error messages in case of toplevel dependency
- errors.
+ rule, for better error messages in case of toplevel dependency errors.
(genprog): Add hooks, rename to ...
(genprogerr): ... this, and let genprog also contain check,
checksum, condmd.
(build/genhooks$(build_exeext)): Remove now-unneeded dependency.
2010-09-30 Jonathan Wakely <jwakely.gcc@gmail.com>
- Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+ Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/install.texi: Suggest using LD_LIBRARY_PATH to find libs
for GMP, MPFR and MPC.
2010-09-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config/sparc/sparc.opt (mimpure-text): Move ...
- * config/sol2.opt: ... here.
- Correct description.
+ * config/sol2.opt: ... here. Correct description.
* config.gcc (*-*-solaris2*): Add sol2.opt to extra_options.
* doc/invoke.texi (Option Summary, SPARC Options): Move
-mimpure-text, -mno-impure-text, -threads, -pthreads, -pthread ...
* extend.texi (interrupt_handler): Add MicroBlaze to list.
(save_volatiles): Describe option for MicroBlaze.
* invoke.texi: Add MicroBlaze Options.
- * contrib.texi: Add acknowledgment.
+ * contrib.texi: Add acknowledgment.
* md.texi: Add MicroBlaze d and z constraints.
* install.texi: Add microblaze-*-elf.
* configure.ac: Add microblaze-*-* to target list.
* opts.c (common_handle_option, lang_handle_option,
target_handle_option): Take gcc_options parameter. Assert that it
is &global_options.
- (read_cmdline_options): Pass &global_options to
- read_cmdline_option.
+ (read_cmdline_options): Pass &global_options to read_cmdline_option.
(print_filtered_help): Use option_flag_var. Pass &global_options
to option_enabled.
(common_handle_option): Use option_flag_var.
* c-parser.c (c_lex_one_token): When finding a CPP_AT_NAME
Objective-C token, map RID_CLASS to RID_AT_CLASS and similar.
- (c_parser_external_declaration): Use RID_AT_CLASS
- instead of RID_CLASS.
+ (c_parser_external_declaration): Use RID_AT_CLASS instead of RID_CLASS.
(c_parser_objc_class_declaration): Same change.
(c_parser_objc_try_catch_statement): Use RID_AT_TRY instead of
RID_TRY and RID_AT_CATCH instead of RID_CATCH.
and RID_AT_PUBLIC instead of RID_PUBLIC.
(c_parser_statement_after_labels): Use RID_AT_TRY instead of
RID_TRY and RID_AT_CATCH instead of RID_CATCH.
-
+
2010-09-30 Tom G. Christensen <tgc@jupiterrise.com>
* doc/install.texi (Binaries): Update link to HP-UX porting centre.
Merge from 'apple/trunk' branch on FSF servers.
* c-parser.c: Applied change originally in c-parse.in.
-
+
2005-10-04 Fariborz Jahanian <fjahanian@apple.com>
Radar 4281748
2010-09-29 Bernd Schmidt <bernds@codesourcery.com>
PR target/40457
- * postreload.c (move2add_use_add2_insn): Use full_costs for
- comparison.
+ * postreload.c (move2add_use_add2_insn): Use full_costs for comparison.
(move2add_use_add3_insn): Likewise.
(reload_cse_move2add): Likewise.
* rtlanal.c (get_full_rtx_cost): New function.
2010-09-29 Jack Howarth <howarth@bromo.med.uc.edu>
- * varasm.c (assemble_alias): Add error message for
- unsupported ifunc.
+ * varasm.c (assemble_alias): Add error message for unsupported ifunc.
2010-09-29 Mike Stump <mikestump@comcast.net>
2010-09-29 Nathan Sidwell <nathan@codesourcery.com>
+ PR testsuite/45664
* configure.ac: Add --enable-indirect-function option.
* config.gcc: Add default_gnu_indirect_function.
* config.in (HAVE_GAS_INDIRECT_FUNCTION): Rename to ...
(HAVE_GNU_INDIRECT_FUNCTION): ... this.
- * varasm.c (do_assemble_alias): Adjust for macto name change.
+ * varasm.c (do_assemble_alias): Adjust for macro name change.
* configure: Rebuilt.
* doc/install.texi: Document --enable-indirect-function.
2010-09-29 Joseph Myers <joseph@codesourcery.com>
* optc-gen.awk: Generate global_options initializer instead of
- individual variables. Add x_ prefix to names of structure
- members.
+ individual variables. Add x_ prefix to names of structure members.
* opth-gen.awk: Generate gcc_options structure. Add x_ prefix to
names of structure members.
* doc/tm.texi.in (HARD_FRAME_POINTER_IS_FRAME_POINTER,
* alias.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER
* builtins.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER.
* c-parser.c (disable_extension_diagnostics,
- restore_extension_diagnostics): Update names of cpp_options
- members.
+ restore_extension_diagnostics): Update names of cpp_options members.
* combine.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER
* common.opt (fcompare-debug-second): Don't use Var.
* config/alpha/alpha.h (target_flags): Remove.
* sel-sched.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER
* stmt.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER.
-2010-09-29 Hariharan Sandanagobalane <hariharan@picochip.com>
+2010-09-29 Hariharan Sandanagobalane <hariharan@picochip.com>
* config/picochip/picochip.c (picochip_output_internal_label):
- This function can now be called for debug CFI labels, which can come in
- the middle of a vliw instruction. Postpone until end of vliw.
+ This function can now be called for debug CFI labels, which can come
+ in the middle of a vliw instruction. Postpone until end of vliw.
2010-09-29 Richard Guenther <rguenther@suse.de>
(TARGET_UNWIND_INFO): Remove.
* config/pa/pa.c (pa_option_override): Use targetm.except_unwind_info.
-
+
2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
* c-parser.c (c_parser_objc_class_definition): Adjust prototype.
* toplev.h (save_decoded_options, save_decoded_options_count):
New global variables.
* toplev.c (save_decoded_options, save_decoded_options_count):
- export variables.
+ Export variables.
2010-09-28 Ian Lance Taylor <iant@google.com>
* config/i386/i386.c (ix86_supports_split_stack): Test
- HAVE_GAS_CFI_PERSONALITY_DIRECTIVE rather than
- dwarf2out_do_cfi_asm.
+ HAVE_GAS_CFI_PERSONALITY_DIRECTIVE rather than dwarf2out_do_cfi_asm.
2010-09-28 Ian Lance Taylor <iant@google.com>
Radar 4229905
* c-typeck.c (build_conditional_expr): Call objc_have_common_type when
looking for objective-c common pointer types.
-
+
2005-06-22 Ziemowit Laski <zlaski@apple.com>
Radar 4154928
unconditionally if TODO_rebuild_alias is set, else only when optimizing
if TODO_update_address_taken is set.
->>>>>>> .r164755
2010-09-23 Anatoly Sokolov <aesok@post.ru>
* config/arm/arm.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
2010-07-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
- PR target/43698
+ PR target/43698
* config/arm/arm.md: Split arm_rev into *arm_rev and *thumb1_rev.
Set *arm_rev to be predicable.
* ipa-split.c (split_function): For aggregate values, set the return
slot optimization bit. When passing DECL_BY_REFERENCE, produce
- *<retval> = fncall.part ().
+ *<retval> = fncall.part ().
(execute_split_functions): Do not care about DECL_BY_REFERENCE.
2010-07-02 Sandra Loosemore <sandra@codesourcery.com>