+2010-10-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/45913
+ * config/i386/i386.c (ix86_binary_operator_ok): Support
+ "andhi/andsi/anddi" as a zero-extending move.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * builtins.c (fold_call_stmt): Don't copy gimple call arguments
+ into a temporary array.
+
+2010-10-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/45903
+ * simplify-rtx.c (simplify_subreg): Optimize lowpart SUBREG
+ of *SHIFTRT of MEM.
+
+2010-10-08 Richard Guenther <rguenther@suse.de>
+
+ * lto-streamer-in.c (lto_input_ts_decl_minimal_tree_pointers):
+ Re-construct BLOCK_VARS.
+ (lto_input_ts_block_tree_pointers): Do not stream BLOCK_VARS.
+ * lto-streamer-out.c (lto_output_ts_block_tree_pointers): Likewise.
+ * tree.c (free_lang_data_in_block): Remove.
+ (free_lang_data_in_decl): Do not touch DECL_CONTEXT of non-PARM_DECLs.
+ Do not touch the BLOCK tree.
+ * expr.c (expand_expr_real_1): Allow externals.
+
+2010-10-08 Richard Guenther <rguenther@suse.de>
+
+ * lto-streamer-out.c (lto_output_ts_block_tree_pointers):
+ Do not output BLOCK_SUBBLOCKS.
+ * lto-streamer-in.c (lto_input_ts_block_tree_pointers):
+ Reserve exact space needed for BLOCK_NONLOCALIZED_VARS.
+ Re-construct BLOCK_SUBBLOCKS of parent block.
+ (lto_input_ts_binfo_tree_pointers): Reserve exact space needed
+ for BINFO_BASE_ACCESSES.
+
+2010-10-08 Joseph Myers <joseph@codesourcery.com>
+
+ * Makefile.in (TM_H): Include $(FLAGS_H) instead of options.h.
+ (TREE_H): Include $(FLAGS_H) instead of options.h.
+ (opts-common.o): Depend on $(FLAGS_H) instead of options.h.
+ * c-objc-common.h (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
+ * common.opt (flag_complex_method, flag_evaluation_order,
+ flag_ira_algorithm, flag_ira_region, flag_warn_unused_result): New
+ Variable declarations.
+ * configure.ac (tm_include_list): Include flags.h instead of
+ options.h.
+ * configure: Regenerate.
+ * flags.h: Condition out contents for target libraries. Include
+ options.h at end of file.
+ (flag_complex_method, flag_ira_algorithm, flag_ira_region,
+ flag_evaluation_order, flag_warn_unused_result): Remove.
+ * gcc.c (main): Intialize global_options with global_options_init.
+ * langhooks-def.h (lhd_init_options_struct): Declare.
+ (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
+ (LANG_HOOKS_INITIALIZER): Include LANG_HOOKS_INIT_OPTIONS_STRUCT.
+ * langhooks.c (lhd_init_options_struct): New.
+ * langhooks.h (struct lang_hooks): Add init_options_struct.
+ Update comment on init_options.
+ * optc-gen.awk: Generate initializer for global_options_init, not
+ global_options.
+ * opth-gen.awk: Condition out structure declarations for target
+ libraries. Declare global_options_init.
+ * opts-common.c: Include flags.h instead of options.h.
+ * opts.c (flag_warn_unused_result): Remove.
+ (read_cmdline_options): Take gcc_options parameters. Pass them to
+ read_cmdline_option.
+ (initial_lang_mask, initial_min_crossjump_insns,
+ initial_max_fields_for_field_sensitive,
+ initial_loop_invariant_max_bbs_in_loop): Define at file scope.
+ (init_options_once): New. Split out of decode_options.
+ (init_options_struct): New. Split out of decode_options.
+ (decode_cmdline_options_to_array_default_mask): New.
+ (default_options_optimization): New. Split out of decode_options.
+ (decode_options): Move most code to other functions. Update call
+ to read_cmdline_options.
+ (finish_options): New. Split out of decode_options.
+ * opts.h (decode_options): Add gcc_options parameters.
+ (init_options_once, init_options_struct,
+ decode_cmdline_options_to_array_default_mask): New.
+ * toplev.c (flag_complex_method, flag_ira_algorithm,
+ flag_ira_region, flag_evaluation_order): Remove.
+ (general_init): Use global_options_init for initial flag values
+ for global_dc.
+ (toplev_main): Call init_options_once, init_options_struct,
+ lang_hooks.init_options_struct,
+ decode_cmdline_options_to_array_default_mask and
+ lang_hooks.init_option before decode_options. Update arguments to
+ decode_options.
+ * tree.h: Include flags.h instead of options.h.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/rx/rx.c (TARGET_EXCEPT_UNWIND_INFO): Define.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/sparc/sparc-protos.h (function_arg_advance, function-arg):
+ Delete.
+ * config/sparc/sparc.h (FUNCTION_ARG_ADVANCE, FUNCTION_ARG): Delete.
+ (FUNCTION_INCOMING_ARG): Delete.
+ * config/sparc/sparc.c (scan_record_type): Const-ify tree argument.
+ (function_arg_slotno): Likewise. Take bool arguments.
+ (sparc_arg_partial_bytes): Update call to it.
+ (function_arg): Rename to...
+ (sparc_function_arg_1): ...this. Take bool arguments.
+ (sparc_function_arg, sparc_function_incoming_arg): New functions.
+ (function_arg_advance): Rename to...
+ (sparc_function_arg_advance): ...this. Take bool argument.
+ (TARGET_FUNCTION_ARG_ADVANCE, TARGET_FUNCTION_ARG): Define.
+ (TARGET_FUNCTION_INCOMING_ARG): Define.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/bfin/bfin-protos.h (function_arg, function_arg_advance):
+ Delete.
+ * config/bfin/bfin.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
+ * config/bfin/bfin.c (function_arg_advance): Rename to...
+ (bfin_function_arg_advance): ...this. Make static. Take const_tree
+ and bool arguments.
+ (function_arg): Rename to...
+ (bfin_function_arg): ...this. Make static. Take const_tree and bool
+ arguments.
+ (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/score/score-protos.h (score_function_arg): Delete.
+ (score_function_arg_advance): Delete.
+ * config/score/score3.h (score3_function_arg_advance): Take a
+ const_tree and a bool.
+ (score3_function_arg): Likewise.
+ * config/score/score7.h (score7_function_arg_advance): Likewise.
+ (score7_function_arg): Likewise.
+ * config/score/score3.c (score3_classify_arg): Likewise.
+ (score3_function_arg_advance, score3_function_arg): Likewise.
+ * config/score/score7.c (score7_classify_arg): Likewise.
+ (score7_function_arg_advance, score7_function_arg): Likewise.
+ * config/score/score.c (score_function_arg_advance): Likewise.
+ (score_function_arg): Likewise. De-const-ify `cum' argument.
+ (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/s390/s390-protos.h (s390_function_arg_advance): Delete.
+ (s390_function_arg): Delete.
+ * config/s390/s390.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
+ * config/s390/s390.c (s390_function_arg_float): Take a const_tree.
+ (s390_function_arg_integer): Likewise.
+ (s390_function_arg_advance): Make static. Take a const_tree and
+ a bool.
+ (s390_function_arg): Likewise.
+ (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/spu/spu-protos.h (spu_function_arg): Delete.
+ * config/spu/spu.h (FUNCTION_ARG): Delete.
+ (FUNCTION_ARG_ADVANCE): Move code to ...
+ * config/spu/spu.c (spu_function_arg_advance): New function.
+ (spu_function_arg): Make static. Take a const_tree and a bool.
+ (spu_setup_incoming_varargs): Call spu_function_arg_advance.
+ (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/rx/rx.c (TARGET_EXCEPT_UNWIND_INFO): Define.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * tree-ssa-sccvn.c (init_vn_nary_op_from_pieces): New function.
+ (init_vn_nary_op_from_op): New function.
+ (init_vn_nary_op_from_stmt): New function.
+ (vn_nary_op_lookup_1): New function.
+ (sizeof_vn_nary_op): New function.
+ (alloc_vn_nary_op_noinit): New function.
+ (alloc_vn_nary_op): New function.
+ (vn_nary_op_insert_into): New function.
+ (vn_nary_op_lookup_pieces): Rewrite to use new helper functions.
+ (vn_nary_op_lookup): Likewise.
+ (vn_nary_op_lookup_stmt): Likewise.
+ (vn_nary_op_insert_pieces): Likewise.
+ (vn_nary_op_insert): Likewise.
+ (vn_nary_op_insert_stmt): Likewise.
+ (copy_nary): Likewise.
+ (set_value_id_for_result): New function.
+ (set_hashtable_value_ids): Call it.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/fr30/fr30.c (TARGET_EXCEPT_UNWIND_INFO): Define.
+ * config/fr30/fr30.md (leave_func): Rewrite without post_inc.
+
+2010-10-08 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/mcore/mcore.h (INCOMING_RETURN_ADDR_RTX): Define.
+ * config/mcore/mcore.c (TARGET_EXCEPT_UNWIND_INFO): Define.
+
+2010-10-08 Alexandre Oliva <aoliva@redhat.com>
+
+ PR debug/45656
+ * cse.c (cse_extended_basic_block): Preserve cc0 info across
+ debug isnsn. Skip them when searching for cc0 setter.
+ (set_live_p): Skip debug insns when searching for cc0 user.
+
+2010-10-08 Alexandre Oliva <aoliva@redhat.com>
+
+ PR debug/45673
+ PR debug/45604
+ PR debug/45419
+ PR debug/45408
+ * tree-pretty-print.c (dump_generic_node): Explicitly dump the
+ type of MEM_REFs to INTEGER_CSTs.
+
+2010-10-07 Nathan Froyd <froydnj@codesourcery.com>
+
+ * config/m68hc11/m68hc11.c (m68hc11_print_operand): Call
+ m68hc11_print_operand_address.
+
+2010-10-07 Nathan Froyd <froydnj@codesourcery.com>
+
+ * builtins.c (rewrite_call_expr): Move code to...
+ (rewrite_call_expr_valist): ...here. Call
+ build_call_expr_loc_array.
+ (rewrite_call_expr_array): New function.
+ (fold_builtin_sprintf_chk_1): New function.
+ (fold_builtin_sprintf_chk): Call it.
+ (gimple_fold_builtin_sprintf_chk): Likewise.
+ (fold_builtin_snprintf_chk_1): New function.
+ (fold_builtin_snprintf_chk): Call it.
+ (gimple_fold_builtin_snprintf_chk): Likewise.
+ (gimple_rewrite_call_expr): Delete.
+
+2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ * config.host: Update copyright year.
+
+2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ * config.host (host_lto_plugin_soname): New shell variable.
+ * configure.ac (LTOPLUGINSONAME): Add an AC_DEFINE for the above.
+ * config.in: Regenerate.
+ * configure: Regenerate.
+ * gcc.c (main): Use LTOPLUGINSONAME instead of hard-coding name of
+ LTO plugin shared library.
+
+2010-10-07 Richard Henderson <rth@redhat.com>
+
+ * target.h (enum unwind_info_type): Move ...
+ * coretypes.h: ... here.
+
+2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * doc/objc.texi (Fast enumeration protocol): Mention that
+ 'unsigned int' can also be used instead of 'unsigned long' in
+ countByEnumeratingWithState:objects:count:.
+
+2010-10-07 Martin Jambor <mjambor@suse.cz>
+
+ * tree-sra.c (struct access): New field grp_assignment_write.
+ (dump_access): Dump grp_assignment_write.
+ (build_accesses_from_assign): Set grp_assignment_write.
+ (sort_and_splice_var_accesses): Aggregate grp_assignment_write.
+ (mark_read_status): Renamed to mark_rw_status, individual values
+ renamed too.
+ (analyze_access_subtree): Changed type of mark_write to
+ mark_read_status. Fixed propagating of mark_read and
+ mark_write. Changed benefit estimate. Updated comment.
+
+2010-10-07 Tejas Belagod <tejas.belagod@arm.com>
+
+ PR Tree-Vect/45847
+ * tree-vect-patterns.c (vect_recog_widen_mult_pattern): Add NULL
+ check for vectype_out returned by get_vectype_for_scalar_type().
+
+2010-10-07 Tejas Belagod <tejas.belagod@arm.com>
+
+ PR target/45805
+ * config/arm/neon.md (neon_unpack<US>_<mode>): Add 'w' to
+ constraint, add register specifier in instruction template.
+ (neon_vec_pack_trunc_<mode>): Likewise.
+ (neon_vec_<US>mult_<mode>): Add register specifier to
+ instruction template.
+
+2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ * config.gcc (c_target_objs)[i?86-*-pe|i?86-*-cygwin*]: Don't add
+ cygwin2.o.
+ (cxx_target_objs)[i?86-*-pe|i?86-*-cygwin*]: Likewise.
+ (extra_gcc_objs)[i?86-*-pe|i?86-*-cygwin*]: Don't add cygwin1.o.
+ * config/i386/t-cygwin (cygwin1.o): Delete build rule.
+ (cygwin2.o): Likewise.
+ * config/i386/cygwin1.c: Delete file.
+ * config/i386/cygwin2.c: Likewise.
+ * config/i386/cygwin.h (CPP_SPEC): Remove all %{mno-cygwin} specs and
+ make all {%!mno-cygwin} ones unconditional.
+ (STARTFILE_SPEC): Likewise.
+ (REAL_LIBGCC_SPEC): Likewise.
+ (LIB_SPEC): Likewise.
+ (CXX_WRAP_SPEC): Likewise.
+ (LINK_SPEC): Likewise.
+ (CYGWIN_MINGW_SUBDIR): Delete now-unused macro definition.
+ (CYGWIN_MINGW_SUBDIR_LEN): Likewise.
+ (cygwin_gplusplus_include_dir): Delete now-unused array.
+ (GPLUSPLUS_INCLUDE_DIR): Don't redefine to point to it.
+ (cygwin_gplusplus_tool_include_dir): Delete now-unused array.
+ (GPLUSPLUS_TOOL_INCLUDE_DIR): Don't redefine to point to it.
+ (cygwin_gplusplus_backward_include_dir): Delete now-unused array.
+ (GPLUSPLUS_BACKWARD_INCLUDE_DIR): Don't redefine to point to it.
+ (cygwin_local_include_dir): Delete now-unused array.
+ (LOCAL_INCLUDE_DIR): Don't redefine to point to it.
+ (cygwin_cross_include_dir): Delete now-unused array.
+ (CROSS_INCLUDE_DIR): Don't redefine to point to it.
+ (cygwin_tool_include_dir): Delete now-unused array.
+ (TOOL_INCLUDE_DIR): Don't redefine to point to it.
+ (cygwin_standard_include_dir): Delete now-unused array.
+ (STANDARD_INCLUDE_DIR): Don't redefine to point to it.
+ (GEN_CVT_ARRAY): Delete now-unused macro definition.
+ (cvt_to_mingw): Delete now-unused array.
+ (mingw_scan): Remove prototype of deleted function.
+ (GCC_DRIVER_HOST_INITIALIZATION): Don't define now-unused target macro.
+ * config/i386/cygming.opt (mcygwin): Delete target-specific option.
+ * doc/invoke.texi (-mcygwin): Don't document removed option.
+ (-mno-cygwin): Likewise.
+
+2010-10-07 Richard Guenther <rguenther@suse.de>
+
+ * machmode.h (mode_for_vector): Declare.
+ * stor-layout.c (mode_for_vector): New function, split out from ...
+ (layout_type): ... here.
+ * tree-vectorizer.h (current_vector_size): Declare.
+ * tree-vect-stmts.c (perm_mask_for_reverse): Check if the
+ mask vector type is available.
+ (get_vectype_for_scalar_type): Rename to ...
+ (get_vectype_for_scalar_type_and_size): ... this. Get a vector
+ size argument.
+ (get_vectype_for_scalar_type): New wrapper around
+ get_vectype_for_scalar_type_and_size using current_vector_size.
+ (get_same_sized_vectype): Use get_vectype_for_scalar_type_and_size.
+ * tree-vect-loop.c (vect_analyze_loop_2): Split out core part
+ of vect_analyze_loop here.
+ (vect_analyze_loop): Loop over vector sizes calling vect_analyze_loop_3.
+ * tree-vect-slp.c (vect_slp_analyze_bb): Set current_vector_size
+ to autodetect.
+ * config/i386/i386.c (ix86_vectorize_builtin_conversion): Fix
+ V8SF to V8SI conversion builtin.
+
+2010-10-07 Richard Guenther <rguenther@suse.de>
+
+ * target.def (autovectorize_vector_sizes): New target hook.
+ * targhooks.c (default_autovectorize_vector_sizes): New function.
+ * targhooks.h (default_autovectorize_vector_sizes): Declare.
+ * doc/tm.texi.in (TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES):
+ Document.
+ * doc/tm.texi: Update.
+ * config/i386/i386.c (ix86_autovectorize_vector_sizes): New function.
+ (TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES): Define.
+
+2010-10-07 Richard Guenther <rguenther@suse.de>
+
+ * target.def (units_per_simd_word): Rename to ...
+ (preferred_simd_mode): ... this. Return mode instead of size.
+ * targhooks.c (default_units_per_simd_word): Rename to ...
+ (default_preferred_simd_mode): ... this. Return word_mode.
+ * targhooks.h (default_preferred_simd_mode): Declare.
+ * config/arm/arm.c (arm_units_per_simd_word): Rename to ...
+ (arm_preferred_simd_mode): ... this. Re-implement.
+ * config/i386/i386.c (ix86_units_per_simd_word): Rename to ...
+ (ix86_preferred_simd_mode): ... this. Re-implement.
+ * config/sparc/sparc.c (sparc_units_per_simd_word): Rename to ...
+ (sparc_preferred_simd_mode): ... this. Re-implement.
+ * config/mips/mips.c (mips_units_per_simd_word): Rename to ...
+ (mips_preferred_simd_mode): ... this. Re-implement.
+ * config/rs6000/rs6000.c (rs6000_units_per_simd_word): Rename to ...
+ (rs6000_preferred_simd_mode): ... this. Re-implement.
+ * tree-vect-stmts.c (get_vectype_for_scalar_type): Adjust.
+ * doc/tm.texi.in (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD): Remove.
+ (TARGET_VECTORIZE_PREFERRED_SIMD_MODE): Document.
+ * doc/tm.texi: Update.
+
+2010-10-07 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/45869
+ * tree-cfg.c (verify_gimple_assign_binary): Allow vector shifts
+ of pointers.
+
+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
* tree-vect-stmts.c (vectorizable_store): Allow negative steps.
(perm_mask_for_reverse): Removed.
(reverse_vec_elements): Likewise.
- (vectorizable_load): Don't hanle negative steps.
+ (vectorizable_load): Don't handle negative steps.
2010-10-02 Jan Hubicka <jh@suse.cz>
* 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.
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
* 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
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>