aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8/gcc/ChangeLog-2010
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.8/gcc/ChangeLog-2010')
-rw-r--r--gcc-4.8/gcc/ChangeLog-201040863
1 files changed, 0 insertions, 40863 deletions
diff --git a/gcc-4.8/gcc/ChangeLog-2010 b/gcc-4.8/gcc/ChangeLog-2010
deleted file mode 100644
index 917704a07..000000000
--- a/gcc-4.8/gcc/ChangeLog-2010
+++ /dev/null
@@ -1,40863 +0,0 @@
-2010-12-31 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/install.texi (powerpc-*-darwin*): Update reference to
- Apple Developer Tools.
-
-2010-12-31 Ken Werner <ken.werner@de.ibm.com>
-
- * config/arm/sync.md (sync_clobber, sync_t2_reqd): New code attribute.
- (arm_sync_old_<sync_optab>si, arm_sync_old_<sync_optab><mode>): Use
- the sync_clobber and sync_t2_reqd code attributes.
- * config/arm/arm.c (arm_output_sync_loop): Reverse the operation if
- the t2 argument is NULL.
-
-2010-12-31 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/sourcebuild.texi (Top Level): Adjust link to libgo.
-
-2010-12-31 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/install.texi (Specific): Remove reference to interix.com.
-
-2010-12-31 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.h (PRINT_OPERAND): Delete.
- * config/pdp11/pdp11.c (TARGET_PRINT_OPERAND,
- TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define
- (pdp11_asm_print_operand, pdp11_asm_print_operand_punct_valid_p):
- New function.
- * config/pdp11/pdp11.md (tablejump): Fix generated assembly.
-
-2010-12-31 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/47111
- * config/rtems.h (NO_IMPLICIT_EXTERN_C): Undef before defining.
-
- PR target/47112
- * config/mips/r3900.h: Update Copyright years.
- (MIPS_CPU_STRING_DEFAULT): Undef before defining.
- (MULTILIB_DEFAULTS, MIPS_ABI_DEFAULT, SUBTARGET_CC1_SPEC): Likewise.
-
- PR target/47135
- * config/pdp11/pdp11.c (pdp11_asm_print_operand_punct_valid_p): Change
- type to match target.def .
-
- PR target/47114
- * config/rs6000/rs6000.c (rs6000_elf_asm_out_constructor): Add
- ATTRIBUTE_UNUSED to declaration.
- (rs6000_elf_asm_out_destructor): Likewise.
-
- PR target/47084
- * config/mn10300/linux.h (PRINT_OPERAND): Update for name changes
- to mn10300_print_operand / mn10300_print_operand_address.
-
-2010-12-30 Mingjie Xing <mingjie.xing@gmail.com>
-
- * config/mips/mips.h (SHIFT_COUNT_TRUNCATED): Change
- TARGET_LOONGSON_2EF to TARGET_LOONGSON_VECTORS.
- * config/mips/mips.c (mips_shift_truncation_mask): Likewise.
-
-2010-12-30 Joseph Myers <joseph@codesourcery.com>
-
- * config/openbsd.opt: New.
- * config.gcc (alpha*-*-openbsd*,
- i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123],
- i[34567]86-*-openbsd*, m68k*-*-openbsd*, mips*-*-openbsd*,
- sparc64-*-openbsd*, vax-*-openbsd*): Use openbsd.opt.
-
-2010-12-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config/pa/pa.md: Add ",*" condition to 64-bit add/subtract boolean
- patterns.
-
-2010-12-30 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/47038
- * config/sparc/sparc.c (sparc_file_end): Call resolve_unique_section
- on the GOT helper if USE_HIDDEN_LINKONCE.
-
-2010-12-30 Joseph Myers <joseph@codesourcery.com>
-
- PR c/46889
- * c-decl.c (detect_field_duplicates): Ensure hash is used for
- finding duplicates when first field is anonymous.
-
-2010-12-30 Nathan Froyd <froydnj@codesourcery.com>
-
- PR target/44606
- * reload1.c (choose_reload_regs): Don't look for equivalences for
- output reloads of constant loads.
-
-2010-12-30 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Explicitly derive
- default values from MEM mode if no memory attributes are present.
- Do not use mode alignment, even on STRICT_ALIGNMENT targets, when
- called with an expression (not a type).
-
-2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.c (upper_128bits_state): Remove comments.
- (block_info_def): Add unchanged.
- (move_or_delete_vzeroupper_2): Short circuit if upper 128bits
- are unchanged in the block.
-
-2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/46519
- * config/i386/i386.c (block_info_def): Remove referenced, count
- and rescanned.
- (move_or_delete_vzeroupper_2): Updated.
- (move_or_delete_vzeroupper_1): Rewritten to avoid recursive call.
- (rescan_move_or_delete_vzeroupper): Removed.
- (move_or_delete_vzeroupper): Repeat processing all basic blocks
- until no basic block state is changed to used at exit.
-
-2010-12-30 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md (movmemhi, movmemhi1): Correct
- constraints.
- * config/pdp11/pdp11.c (output_block_move): Rewrite.
-
-2010-12-30 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/47060
- * tree-parloops.c (reduction_phi): Return NULL if PHI is NULL.
-
-2010-12-29 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11-protos.h (pdp11_asm_output_var): Declare.
- * config/pdp11/pdp11.c (pdp11_asm_output_var): New function.
- * config/pdp11/pdp11.h (ASM_OUTPUT_ALIGNED_COMMON,
- ASM_OUTPUT_ALIGNED_LOCAL): New macros.
- (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Delete.
-
-2010-12-30 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/47129
- * config/ia64/ia64.c: Include "dwarf2out.h" .
-
- PR target/47063
- * config/alpha/vms.h (MALLOC_ALIGNMENT): Don't undef / define.
- (MALLOC_ABI_ALIGNMENT): Undef / define.
-
- PR target/47101
- * vmsdbgout.c (vmsdbgout_init): Rename main_input_filename to filename.
- (vmsdbgout_finish): Likewise.
-
- PR target/47097
- * config/i386/lynx.h (DBX_REGISTER_NUMBER): Add cast to avoid
- mixing signed and unsigned types in conditional expression.
-
-2010-12-29 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/47074
- * gimple-fold.c (gimplify_and_update_call_from_tree): Call
- pop_gimplify_context if returning early.
-
-2010-12-28 Sebastian Pop <sebastian.pop@amd.com>
-
- * Makefile.in (graphite.o): Depends on DIAGNOSTIC_CORE_H.
- (graphite-clast-to-gimple.o): Same.
- (graphite-poly.o): Same.
- * graphite-clast-to-gimple.c: Include diagnostic-core.h.
- * graphite-poly.c: Same.
- * graphite.c: Same.
-
-2010-12-28 Richard Guenther <rguenther@suse.de>
-
- PR debug/46931
- * tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): Update
- SSA before removing dead stmts.
-
-2010-12-28 H.J. Lu <hongjiu.lu@intel.com>
- Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386-builtin-types.def (PUSHORT): New.
- (INT_FTYPE_PUSHORT): Likewise.
- (INT_FTYPE_PUNSIGNED): Likewise.
- (INT_FTYPE_PULONGLONG): Likewise.
- Remove "DEF_FUNCTION_TYPE (UINT16)".
-
- * config/i386/i386.c (ix86_builtins): Remove
- IX86_BUILTIN_RDRAND16, IX86_BUILTIN_RDRAND32 and
- IX86_BUILTIN_RDRAND64. Add IX86_BUILTIN_RDRAND16_STEP,
- IX86_BUILTIN_RDRAND32_STEP and IX86_BUILTIN_RDRAND64_STEP.
- (bdesc_special_args): Remove IX86_BUILTIN_RDRAND16,
- IX86_BUILTIN_RDRAND32 and IX86_BUILTIN_RDRAND64.
- (ix86_init_mmx_sse_builtins): Handle IX86_BUILTIN_RDRAND16_STEP,
- IX86_BUILTIN_RDRAND32_STEP and IX86_BUILTIN_RDRAND64_STEP.
- (ix86_expand_builtin): Likewise.
- (ix86_expand_special_args_builtin): Remove UINT16_FTYPE_VOID.
-
- * config/i386/i386.md (UNSPEC_RDRAND): New.
- (UNSPECV_RDRAND): Removed.
- (rdrand<mode>): Likewise.
- (rdrand<mode>_1): Also set FLAGS_REG. Replace UNSPECV_RDRAND
- with UNSPEC_RDRAND.
-
- * config/i386/immintrin.h (_rdrand_u16): Removed.
- (_rdrand_u32): Likewise.
- (_rdrand_u64): Likewise.
- (_rdrand16_step): New.
- (_rdrand32_step): Likewise.
- (_rdrand64_step): Likewise.
-
- * doc/extend.texi (__builtin_ia32_rdrand16): Removed.
- (__builtin_ia32_rdrand32): Likewise.
- (__builtin_ia32_rdrand64): Likewise.
- (__builtin_ia32_rdrand16_step): New.
- (__builtin_ia32_rdrand32_step): Likewise.
- (__builtin_ia32_rdrand64_step): Likewise.
-
-2010-12-28 Sebastian Pop <sebastian.pop@amd.com>
-
- * Makefile.in (graphite.o): Add dependence on DIAGNOSTIC_H.
- * graphite.c: Include diagnostic.h.
-
-2010-12-28 Sebastian Pop <sebastian.pop@amd.com>
-
- * Makefile.in (TREE_VECTORIZER_H): Removed duplicate definition.
- (tree-browser.o): Update dependences.
- (omega.o): Same.
- (tree-chrec.o): Same.
- (tree-scalar-evolution.o): Same.
- (tree-data-ref.o): Same.
- (sese.o): Same.
- (graphite.o): Same.
- (graphite-blocking.o): Same.
- (graphite-clast-to-gimple.o): Same.
- (graphite-cloog-util.o): Same.
- (graphite-dependences.o): Same.
- (graphite-flattening.o): Same.
- (graphite-interchange.o): Same.
- (graphite-poly.o): Same.
- (graphite-ppl.o): Same.
- (graphite-scop-detection.o): Same.
- (graphite-sese-to-poly.o): Same.
- (tree-loop-linear.o): Same.
- (tree-loop-distribution.o): Same.
- (tree-parloops.o): Same.
- (lambda-mat.o): Same.
- (lambda-trans.o): Same.
- (lambda-code.o): Same.
- * tree-browser.o: Do not include unnecessary .h files.
- * omega.o: Same.
- * tree-chrec.o: Same.
- * tree-scalar-evolution.o: Same.
- * tree-data-ref.o: Same.
- * sese.o: Same.
- * graphite.o: Same.
- * graphite-blocking.o: Same.
- * graphite-clast-to-gimple.o: Same.
- * graphite-cloog-util.o: Same.
- * graphite-dependences.o: Same.
- * graphite-flattening.o: Same.
- * graphite-interchange.o: Same.
- * graphite-poly.o: Same.
- * graphite-ppl.o: Same.
- * graphite-scop-detection.o: Same.
- * graphite-sese-to-poly.o: Same.
- * tree-loop-linear.o: Same.
- * tree-loop-distribution.o: Same.
- * tree-parloops.o: Same.
- * lambda-mat.o: Same.
- * lambda-trans.o: Same.
- * lambda-code.o: Same.
- * graphite.h: Removed.
-
-2010-12-28 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md: Correct length attribute for float
- literal case.
-
-2010-12-28 Jie Zhang <jie@codesourcery.com>
-
- * builtins.c (SLOW_UNALIGNED_ACCESS): Remove.
-
-2010-12-27 Joseph Myers <joseph@codesourcery.com>
-
- * config/freebsd.opt (assert=, defsym=, profile, pthread,
- rpath-link=, rpath=, soname=): New Driver options.
-
-2010-12-26 Martin Jambor <mjambor@suse.cz>
-
- * tree.c (get_binfo_at_offset): Use BINFO_TYPE instead of TREE_TYPE,
- compare TYPE_MAIN_VARIANTs of types.
-
-2010-12-26 Andreas Schwab <schwab@linux-m68k.org>
-
- * config/m68k/t-linux (M68K_MLIB_CPU): Only include 680x0 CPUs.
-
-2010-12-24 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/47036
- * sel-sched-ir.c (fallthru_bb_of_jump): Remove special support for
- unconditional jumps.
- * sel-sched.c (moveup_expr): Ditto.
-
-2010-12-23 Sebastian Pop <sebastian.pop@amd.com>
- Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46758
- * graphite-sese-to-poly.c (scan_tree_for_params_right_scev): Use
- tree_int_to_gmp instead of int_cst_value.
- (scan_tree_for_params_int): Same.
- (scan_tree_for_params): Same.
- (pdr_add_data_dimensions): Use ppl_set_inhomogeneous_tree.
-
-2010-12-23 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/47002
- * tree-data-ref.c (compute_data_dependences_for_loop): Pass in a
- pointer to the loop_nest.
- (analyze_all_data_dependences): Initialize and free the loop_nest.
- (free_dependence_relations): Do not free loop_nest.
- (build_rdg): Pass in the loop_nest, datarefs, and dependence_relations.
- (free_rdg): Also free the data on edges.
- * tree-data-ref.h (build_rdg): Update declaration.
- (compute_data_dependences_for_loop): Same.
- * tree-if-conv.c (if_convertible_loop_p_1): Pass in the loop_nest.
- (if_convertible_loop_p): Allocate and free loop_nest.
- * tree-loop-distribution.c (rdg_flag_loop_exits): Free conds.
- (free_rdg_components): VEC_free components.
- (distribute_loop): Update call to build_rdg. Allocate and free
- loop_nest, datarefs, and dependence_relations.
- * tree-loop-linear.c (linear_transform_loops): Allocate and free
- loop_nest.
- * tree-parloops.c (loop_parallel_p): Same.
- * tree-predcom.c (tree_predictive_commoning_loop): Same.
- * tree-vect-data-refs.c (vect_analyze_data_refs): Pass to
- compute_data_dependences_for_loop a pointer to LOOP_VINFO_LOOP_NEST.
- * tree-vect-loop.c (new_loop_vec_info): Initialize LOOP_VINFO_LOOP_NEST.
- (destroy_loop_vec_info): Free LOOP_VINFO_MAY_ALIAS_DDRS and
- LOOP_VINFO_LOOP_NEST.
- * tree-vect-slp.c (destroy_bb_vec_info): Call free_data_refs and
- free_dependence_relations.
- * tree-vectorizer.h (struct _loop_vec_info): Add a field loop_nest.
- (LOOP_VINFO_LOOP_NEST): New.
-
-2010-12-23 Martin Jambor <mjambor@suse.cz>
-
- * ipa.c (cgraph_remove_unreachable_nodes): Update former_clone_of even
- when not checking.
-
-2010-12-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac (gcc_cv_ld_eh_frame_hdr): Only check GNU ld for
- --eh-frame-hdr. Check for working Sun ld version.
- (HAVE_LD_EH_FRAME_HDR): Adapt comment.
- (glibc_header_dir): Set only once. Rename to ...
- (target_header_dir): ... this. Adapt users.
- (gcc_cv_target_dl_iterate_frame_hdr): Check on *-*-solaris2*.
- (TARGET_DL_ITERATE_PHDR): Define if present.
- * configure: Regenerate.
- * config.in: Likewise.
- * config/t-sol2 (LIB2ADDEH, LIB2ADDEHDEP): Define.
- * crtstuff.c (USE_PT_GNU_EH_FRAME): Define for recent Solaris 11
- with linker support and dl_iterate_phdr.
- * unwind-dw2-fde-glibc.c (USE_PT_GNU_EH_FRAME): Likewise.
- (_Unwind_IteratePhdrCallback) [PT_SUNW_UNWIND]: Also accept
- PT_SUNW_UNWIND .eh_frame_hdr sections.
- [CRT_GET_RFIB_DATA && __i386__ && __sun__ && __svr4__]: Add
- load_base to data->dbase.
- [CRT_GET_RFIB_DATA && __x86_64__ && __sun__ && __svr4__]: Handle
- 64-bit Solaris 10+/x86.
- * config/sol2-gld.h [TARGET_DL_ITERATE_PHDR && HAVE_LD_EH_FRAME_HDR]
- (LINK_EH_SPEC): Define.
-
-2010-12-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * doc/extend.texi (Function Attributes, Volatiles): Fix typos.
- * doc/install.texi (Prerequisites, Specific): Likewise.
- * doc/invoke.texi (C Dialect Options, Debugging Options)
- (Optimize Options, MicroBlaze Options)
- (RS/6000 and PowerPC Options, RX Options, Code Gen Options): Likewise.
- * doc/objc.texi (Method signatures)
- (Fast enumeration protocol): Likewise.
- * doc/tm.texi.in (Run-time Target, Register Arguments)
- (Scheduling, Macros for Initialization, Misc): Likewise.
- * doc/tm.texi: Renerate.
-
-2010-12-23 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * doc/objc.texi (Modern GNU Objective-C runtime API): Mention that
- reference documentation for functions in the API is in the header
- files.
- (Messaging with the GNU Objective-C runtime, Dynamically
- registering methods, Forwarding hook): New sections.
-
-2010-12-22 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/47019
- * sese.h (scev_analyzable_p): Parameters of a SCoP are SCEV analyzable.
-
-2010-12-22 Nathan Froyd <froydnj@codesourcery.com>
-
- * c-aux-info.c (gen_formal_list_for_type): Use prototype_p.
- * c-decl.c (diagnose_arglist_conflict): Likewise.
- (diagnose_mismatched_decls, merge_decls): Likewise.
- (c_builtin_function, c_builtin_function_ext_scope): Likewise.
- (start_decl, start_function): Likewise.
- * c-tree.h (C_DECL_ISNT_PROTOTYPED): Likewise.
- * config/ia64/ia64.h (INIT_CUMULATIVE_ARGS): Likewise.
- * config/mep/mep.c (mep_validate_interrupt): Likewise.
- * config/pa/pa.h (INIT_CUMULATIVE_ARGS): Likewise.
- * config/rs6000/rs6000.c (init_cumulative_args): Likewise.
- * config/sh/sh.c (sh_init_cumulative_args): Likewise.
- * config/sparc/sparc.c (init_cumulative_args): Likewise.
- * dwarf2out.c (add_prototyped_attribute): Likewise.
- (gen_subprogram_die): Likewise.
- * ipa-type-escape.c (check_function_parameter_and_return_types):
- Likewise.
- (check_call): Likewise.
- * tree-ssa.c (useless_type_conversion_p): Likewise.
-
-2010-12-22 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/spu/spu.md ("mov<mode>"): Use nonimmediate_operand
- predicate for destination operand.
- * config/spu/spu.c (spu_expand_mov): If move destination is an
- invalid subreg, perform move in the subreg's inner mode instead.
-
-2010-12-22 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/45934
- PR tree-optimization/46302
- PR tree-optimization/46987
- * gimple-fold.c (get_base_binfo_for_type): Removed.
- (gimple_get_relevant_ref_binfo): Likewise.
- (gimple_fold_obj_type_ref_call): Dumb down to 4.5 functionality,
- removed parameter inplace, updated the caller.
- * gimple.h (gimple_get_relevant_ref_binfo): Remove declaration.
- * ipa-cp.c (ipcp_propagate_types): Do not derive types from constants.
- (ipcp_discover_new_direct_edges): Do not do devirtualization based on
- constants.
- * ipa-prop.c (compute_known_type_jump_func): Use
- get_ref_base_and_extent and get_binfo_at_offset instead of
- gimple_get_relevant_ref_binfo.
- (compute_known_type_jump_func): Likewise.
- (update_jump_functions_after_inlining): Do not derive types from
- constants.
- (try_make_edge_direct_virtual_call): Likewise.
- * tree.c (get_binfo_at_offset): Get type from non-artificial fields.
-
-2010-12-22 Joseph Myers <joseph@codesourcery.com>
-
- * config/svr4.h: Remove.
- * system.h (USING_SVR4_H, SVR4_ASM_SPEC): Poison.
- * config.gcc, config/bfin/bfin.h, config/cris/cris.h,
- config/fr30/fr30.h, config/frv/frv.h, config/i386/openbsdelf.h,
- config/i386/vx-common.h, config/ia64/elf.h, config/ia64/ia64.h,
- config/ia64/sysv4.h, config/iq2000/iq2000.h, config/m68k/linux.h,
- config/m68k/m68kelf.h, config/mips/mips.h, config/mips/vxworks.h,
- config/moxie/moxie.h, config/netbsd-aout.h, config/openbsd.h,
- config/rs6000/sysv4.h, config/sh/elf.h, config/sh/sh.h,
- config/sol2.h, config/sparc/sysv4.h, config/stormy16/stormy16.h,
- config/v850/v850.h, config/vxworks.h: Remove or update comments
- referring to svr4.h.
-
-2010-12-22 Andrey Belevantsev <abel@ispras.ru>
-
- PR rtl-optimization/45352
- PR rtl-optimization/46521
- PR rtl-optimization/46522
- * sel-sched.c (reset_sched_cycles_in_current_ebb): Recheck the
- DFA state on the last iteration of the advancing loop.
- (sel_sched_region_1): Propagate the rescheduling bit to the next
- block also for empty blocks.
-
-2010-12-22 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/46724
- * function.c (assign_parms_augmented_arg_list): Name and mark
- DECL of result address as NAMELESS rather than IGNORED.
- (assign_parms): Set DECL_VALUE_EXPR for indirect result.
- * tree.h (tree_decl_common::decl_flag_2): Document RESULT_DECL.
- (DECL_HAS_VALUE_EXPR_P): Accept RESULT_DECL.
- * dwarf2out.c (loc_list_from_tree) <RESULT_DECL>: Use
- DECL_VALUE_EXPR.
- * dbxout.c (dbxout_expand_expr) <RESULT_DECL>: Likewise.
- * var-tracking.c (vt_add_function_parameter): New, split out of...
- (vt_add_function_parameters): ... this. Handle incoming
- pointer to hold result.
-
-2010-12-22 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/arm.c (output_move_double): Update the comment
- above the function to reflect the current implementation.
-
-2010-12-21 Steven Bosscher <steven@gcc.gnu.org>
-
- De-hookize profile infrastructure.
- * value-prof.c (value_prof_hooks): Remove.
- (struct value_prof_hooks): Remove.
- (gimple_value_prof_hooks): Remove.
- (gimple_register_value_prof_hooks): Remove.
- (find_values_to_profile): Remove.
- (value_profile_transformations): Remove.
- (gimple_value_profile_transformations): No longer static.
- (gimple_find_values_to_profile): Likewise.
- * value-prof.h (gimple_register_value_prof_hooks): Remove prototype.
- (find_values_to_profile): Likewise.
- (value_profile_transformations): Likewise.
- (tree_register_profile_hooks): Likewise.
- (struct profile_hooks): Remove.
- (tree_profile_hooks): Remove.
- (gimple_find_values_to_profile): New protoype.
- (gimple_value_profile_transformations): Likewise.
- (gimple_init_edge_profiler): Likewise.
- (gimple_gen_edge_profiler): Likewise.
- (gimple_gen_interval_profiler): Likewise.
- (gimple_gen_pow2_profiler): Likewise.
- (gimple_gen_one_value_profiler): Likewise.
- (gimple_gen_ic_profiler): Likewise.
- (gimple_gen_ic_func_profiler): Likewise.
- (gimple_gen_const_delta_profiler): Likewise.
- (gimple_gen_average_profiler): Likewise.
- (gimple_gen_ior_profiler): Likewise.
- * profile.c (profile_hooks): Remove.
- (instrument_edges): Call profiling functions directly instead
- of through removed profile_hooks.
- (instrument_values): Likewise.
- (branch_prob): Call gimple_find_values_to_profile instead of
- removed find_values_to_profile.
- Call gimple_init_edge_profiler instead of removed hook.
- (tree_register_profile_hooks): Remove.
- * tree-profile.c (tree_init_ic_make_global_vars): Rename to
- init_ic_make_global_vars.
- (tree_init_edge_profiler): Rename to gimple_init_edge_profiler
- and no longer static.
- (tree_gen_edge_profiler, tree_gen_interval_profiler,
- tree_gen_pow2_profiler, tree_gen_one_value_profiler,
- tree_gen_ic_profiler, tree_gen_ic_func_profiler,
- tree_gen_const_delta_profiler, tree_gen_average_profiler,
- tree_gen_ior_profiler): Similarly renamed and no longer static.
- (tree_profiling): Do not initialize tree profiling hooks.
- (tree_profile_hooks): Remove.
-
-2010-12-21 Jakub Jelinek <jakub@redhat.com>
-
- PR target/46880
- * config/i386/sse.md (sse2_loadlpd, sse2_movsd): Fix shufpd source
- operand.
-
-2010-12-21 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/47001
- * tree-vect-slp.c (vect_supported_load_permutation_p): Check that
- the loads in reduction are different and there are no gaps between
- them.
-
-2010-12-21 Steven Bosscher <steven@gcc.gnu.org>
-
- PR middle-end/45310
- * tree-ssa-phiprop.c (propagate_with_phi): Remove statement
- completely from the function, including EH traces.
-
-2010-12-21 Steven Bosscher <steven@gcc.gnu.org>
-
- PR rtl-optimization/46755
- * ira.c (ira): If some dead edges were removed, find and delete
- any blocks that might have become unreachable.
-
-2010-12-21 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/47008
- * postreload.c (reload_combine_note_store): Also handle
- PRE_MODIFY and POST_MODIFY.
-
-2010-12-21 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/arm/arm.c (require_pic_register): Set INSN_LOCATOR for all
- instructions injected into the prologue to prologue_locator.
-
-2010-12-21 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/47000
- * tree-inline.c (estimate_operator_cost): Handle VIEW_CONVERT_EXPR.
-
-2010-12-21 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/arm-ldmstm.ml: Fix a typo in comment.
-
-2010-12-21 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/45852
- * expr.c (store_expr): Ignore alt_rtl if equal to target,
- but has side-effects.
-
-2010-12-21 Anatoly Sokolov <aesok@post.ru>
-
- * config/sh/sh.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/sh/sh-protos.h (secondary_reload_info, sh_secondary_reload):
- Remove forward declaration.
- * config/sh/sh.c (sh_preferred_reload_class): New function.
- (sh_secondary_reload): Make static.
- (TARGET_PREFERRED_RELOAD_CLASS): Define.
-
-2010-12-20 Joseph Myers <joseph@codesourcery.com>
-
- * config/alpha/linux.h (OPTION_GLIBC): Define differently if
- SINGLE_LIBC.
- * config/linux.h (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC):
- Define differently if SINGLE_LIBC.
- * config/rs6000/linux.h (OPTION_GLIBC): Define differently if
- SINGLE_LIBC.
- * config/rs6000/linux64.h (OPTION_GLIBC): Define differently if
- SINGLE_LIBC.
- * config.gcc (*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu |
- *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu): Define
- SINGLE_LIBC instead of OPTION_GLIBC.
- (*-*-uclinux*): Define DEFAULT_LIBC and SINGLE_LIBC.
- (bfin*-uclinux*, moxie-*-uclinux*, m68k-*-uclinux*): Don't define
- DEFAULT_LIBC or use linux.opt.
-
-2010-12-20 Richard Henderson <rth@redhat.com>
-
- * config/mn10300/mn10300.c (mn10300_legitimize_pic_address): Generate
- UNSPEC patterns by hand, with the proper mode; use gen_const_mem.
- * config/mn10300/mn10300.md (call, call_value): Generate UNSPEC_PLT
- by hand, with the proper mode.
- (symGOT2reg, symGOT2reg_i, symGOTOFF2reg): Remove.
- (symGOTOFF2reg_i, sym2PIC, sym2PLT): Remove.
-
-2010-12-20 Sanjin Liu <scliu@faraday-tech.com>
- Mingfeng Wu <mingfeng@faraday-tech.com>
-
- * config/arm/arm-cores.def: Add Faraday CPU support -
- fa526/fa626/fa606te/fa626te/fmp626/fa726te.
- * config/arm/arm-tune.md: Regenerate.
- * config/arm/arm.c (arm_fa726te_tune): New tune_params for fa726te
- (fa726te_sched_adjust_cost): New cost function for fa726te.
- (arm_issue_rate): Add fa726te.
- * config/arm/arm.md (generic_sched): Add Faraday cores to generic_sched
- and include machine description files.
- * config/arm/bpabi.h (TARGET_FIX_V4BX_SPEC): Add fa526 and fa626.
- * config/arm/t-arm (MD_INCLUDES): Include machine description files for
- Faraday cores.
- * config/arm/t-arm-elf: Add multilib option for Faraday cores.
- * config/arm/t-linux-eabi: Add multilib option for Faraday cores except
- fa526 and fa626.
- * doc/invoke.texi: Document -mcpu for Faraday cores.
- * config/arm/fa526.md: New file.
- * config/arm/fa606te.md: New file.
- * config/arm/fa626te.md: New file.
- * config/arm/fmp626.md: New file.
- * config/arm/fa726te.md: New file.
-
-2010-12-20 Yvan Roux <yvan.roux@st.com>
-
- * config/arm/lib1funcs.asm (ARM_DIV_BODY case __OPTIMIZE_SIZE__): Fix
- condition on IT instruction for early termination.
-
-2010-12-20 Joseph Myers <joseph@codesourcery.com>
-
- * config/rs6000/freebsd.h (SVR4_ASM_SPEC): Don't define.
- (DBX_REGISTER_NUMBER): Define.
- * config/rs6000/lynx.h (DBX_REGISTER_NUMBER): Define.
- * config/rs6000/netbsd.h (DBX_REGISTER_NUMBER): Define.
- * config/rs6000/sysv4.h (SIZE_TYPE): Define.
- (ASM_SPEC): Define without using SVR4_ASM_SPEC.
- (DBX_REGISTER_NUMBER): Undefine.
- * config.gcc (powerpc-*-eabispe*, powerpc-*-eabisimaltivec*,
- powerpc-*-eabisim*, powerpc-*-elf*, powerpc-*-eabialtivec*,
- powerpc-xilinx-eabi*, powerpc-*-eabi*, powerpc-*-rtems*,
- powerpc-*-linux* | powerpc64-*-linux*, powerpc64-*-gnu*,
- powerpc-*-gnu-gnualtivec*, powerpc-*-gnu*,
- powerpc-wrs-vxworks|powerpc-wrs-vxworksae, powerpcle-*-elf*,
- powerpcle-*-eabisim*, powerpcle-*-eabi*): Don't use svr4.h.
-
-2010-12-20 Iain Sandoe <iains@gcc.gnu.org>
- Jan Hubicka <jh@suse.cz>
-
- PR middle-end/46916
- * opts.c (finish_options): Enable -freorder-functions
- when -freorder-blocks-and-partition is active.
-
-2010-12-20 Iain Sandoe <iains@gcc.gnu.org>
-
- PR c++/46904
- PR middle-end/46916
- PR target/46950
- * config/darwin.c (generating_for_darwin_version): New var.
- (darwin_text_section): Remove.
- (darwin_rodata_section): Do not check function section here.
- (darwin_emit_unwind_label): Do not emit for Darwin >= 9.
- Emit distinct labels for successive calls for the same decl.
- (darwin_override_options): Set generating_for_darwin_version.
- Add FIXME and disable -freorder-blocks-and-partition.
- Suppress automatic asynchronous unwind tables for m32.
- Switch off -freorder-blocks-and-partition when unwind tables
- will be generated. Update to use generating_for_darwin_version.
- (darwin_function_section): Check for cases that need to be placed
- in coalesced sections.
- * config/darwin-sections.def: Define hot, cold, startup and
- exit sections for both coalesced and regular code.
- * config/darwin.h (USE_SELECT_SECTION_FOR_FUNCTIONS): Delete.
- * config/darwin10.h (TARGET_ASM_EMIT_UNWIND_LABEL): Delete.
-
-2010-12-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * doc/cppopts.texi: Use @var when appropriate.
- * doc/extend.texi (Structure-Packing Pragmas): Likewise.
- * doc/gimple.texi (Logical Operators)
- (Adding a new GIMPLE statement code): Likewise.
- * doc/invoke.texi (Target Options, Precompiled Headers): Likewise.
- * doc/plugins.texi (Plugins): Likewise.
-
- * doc/install.texi (Configuration, Building, Testing, Specific):
- Remove leading whitespace from examples.
-
-2010-12-19 Andi Kleen <ak@linux.intel.com>
-
- PR lto/46905
- * collect2.c (main): Handle -fno-lto.
- * opts.c (common_handle_option): Handle -fno-lto.
-
-2010-12-19 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/46729
- * config/sparc/sparc.h (GLOBAL_OFFSET_TABLE_REGNUM): New macro.
- (PIC_OFFSET_TABLE_REGNUM): Rewrite in terms of above macro.
- * config/sparc/sparc.c (pic_helper_needed): Delete.
- (global_offset_table): Likewise.
- (pic_helper_symbol): Rename to...
- (got_helper_rtx): ...this.
- (global_offset_table_rtx): New global variable.
- (sparc_got_symbol): Likewise.
- (sparc_got): New static function.
- (check_pic): Use local variable and call sparc_got.
- (sparc_tls_symbol): Initialize to NULL_RTX.
- (sparc_tls_got): In non-PIC mode, reload the GOT register for Sun TLS
- and 32-bit ABI and copy the GOT symbol to a new register otherwise.
- (get_pc_thunk_name): Rename local variable.
- (gen_load_pcrel_sym): New wrapper around load_pcrel_sym{si,di}.
- (load_pic_register): Rename to...
- (load_got_register): ...this. Adjust and call gen_load_pcrel_sym.
- (sparc_expand_prologue): Do not test flag_pic.
- (sparc_output_mi_thunk): Use pic_offset_table_rtx directly.
- (sparc_file_end): Test got_helper_rtx instead of pic_helper_needed.
- Rename local variable and do not call get_pc_thunk_name again.
- * config/sparc/sparc.md (load_pcrel_sym): Add operand #3.
-
-2010-12-19 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR middle-end/46674
- PR middle-end/46221
- * varasm.c (symbol_alias_set_t): New typedef for derived pointer_set
- wrapper class.
- (symbol_alias_set_create): New wrapper function.
- (symbol_alias_set_destroy): Likewise.
- (symbol_alias_set_contains): Likewise.
- (symbol_alias_set_insert): Likewise.
- (compute_visible_aliases): Use the above and return symbol_alias_set_t,
- not a pointer_set.
- (remove_unreachable_alias_pairs): Adjust likewise to match.
- (finish_aliases_1): Likewise.
-
-2010-12-19 Chung-Lin Tang <cltang@codesourcery.com>
-
- * config/arm/arm.c (arm_legitimate_index_p): Add VFP load/store
- index range case. Change to SF/DFmode tests to avoid capturing HFmode.
- (thumb2_legitimate_index_p): Same.
-
-2010-12-18 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/46969
- * tree-parloops.c (struct reduction_info): Add reduc_version.
- (reduction_info_hash): Return reduc_version field.
- (reduction_phi): Set reduc_version to gimple_uid (phi).
- (build_new_reduction): Set reduc_version to SSA_NAME_VERSION of
- phi result.
- (set_reduc_phi_uids): New function.
- (gather_scalar_reductions): Call it at the end through htab_traverse.
-
-2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_parser_objc_try_catch_finally_statement): Call
- objc_maybe_warn_exceptions.
- (c_parser_objc_synchronized_statement): Call
- objc_maybe_warn_exceptions.
-
-2010-12-18 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/46985
- * tree-scalar-evolution.c (instantiate_scev_r): If chrec is NULL,
- return it immediately.
-
-2010-12-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/46915
- * config/pa/pa.c (branch_to_delay_slot_p): Use next_active_insn instead
- of next_real_insn. Search forward checking for both ASM_INPUT and
- ASM_OPERANDS asms until exit condition is found.
- (branch_needs_nop_p): Likewise.
- (use_skip_p): New function.
- (output_cbranch): Use use_skip_p.
- (output_bb, output_bvb): Likewise.
-
-2010-12-18 Kai Tietz <kai.tietz@onevision.com>
-
- PR target/36834
- * config/i386/i386.c (ix86_keep_aggregate_return_pointer):
- New local function.
- (ix86_return_pops_args): Use ix86_keep_aggregate_return_pointer
- function instead of KEEP_AGGREGATE_RETURN_POINTER.
- (ix86_handle_callee_pop_aggregate_return): New handler.
- (ix86_attribute_table): Add new attribute
- callee_pop_aggregate_return.
- * doc/extend.texi (callee_pop_aggregate_return): Add
- attribute documentation.
-
-2010-12-18 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS):
- Only set sjlj exceptions for NeXT/m32.
-
-2010-12-18 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.h (GCC_DRIVER_HOST_INITIALIZATION):
- Only expose when not building for target.
-
-2010-12-17 Joseph Myers <joseph@codesourcery.com>
-
- * config/netbsd.opt, config/netbsd-elf.opt: New files.
- * config.gcc (alpha*-*-netbsd*, arm*-*-netbsdelf*, arm*-*-netbsd*,
- i[34567]86-*-netbsdelf*, i[34567]86-*-netbsd*, x86_64-*-netbsd*,
- m68k*-*-netbsdelf*, mips*-*-netbsd*, powerpc-*-netbsd*,
- sh*-*-netbsd*, sparc-*-netbsdelf*, sparc64-*-netbsd*,
- vax-*-netbsdelf*, vax-*-netbsd*): Use these .opt files.
-
-2010-12-17 Richard Henderson <rth@redhat.com>
-
- * regcprop.c (find_oldest_value_reg): Continue search instead of
- failing if an element in the copy chain is of the wrong regclass.
-
-2010-12-17 Paolo Bonzini <bonzini@gnu.org>
-
- PR c/20385
- * function.c (used_types_insert): Handle ERROR_MARK.
- * c-decl.c (grokdeclarator): Handle ERROR_MARK.
- (declspecs_add_type): Leave error_mark_node in specs->type.
- (finish_declspecs): Change it to integer_type_node here.
- * c-parser.c (c_parser_peek_2nd_token): Move earlier.
- (enum c_lookahead_kind): New.
- (c_parser_next_token_starts_typename): New name of
- c_parser_next_tokens_start_typename. Accept lookahead enum
- and handle it here instead of...
- (c_parser_next_tokens_start_declaration): ... here. Call it.
- (c_parser_declspecs): Accept another argument. Do not exit
- on C_ID_ID if it is guessed to be an unknown typename.
- (c_parser_parms_declarator): Use 2nd token to distinguish a K&R
- declaration from an ANSI declaration starting with an unknown
- typename.
- (c_parser_struct_declaration, c_parser_objc_type_name,
- c_parser_typeof_specifier, c_parser_declarator,
- c_parser_direct_declarator_inner): Adjust calls.
- (c_parser_parameter_declaration): Likewise.
- (c_parser_type_name): Pass back an error_mark_node to the caller.
- (c_parser_postfix_expression): Do error recovery when
- c_parser_type_name returns NULL.
-
-2010-12-17 Joseph Myers <joseph@codesourcery.com>
-
- * config/i386/netware.h (ASM_SPEC, SIZE_TYPE, PTRDIFF_TYPE): Define.
- * config/i386/nto.h (LIB_SPEC, ASM_SPEC): Define.
- (DBX_REGISTER_NUMBER): Undefine.
- * config/i386/sol2.h (SIZE_TYPE, PTRDIFF_TYPE): Define.
- * config/i386/vxworksae.h (ASM_SPEC, SIZE_TYPE, PTRDIFF_TYPE):
- Define.
- * config.gcc (i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu |
- i[34567]86-*-knetbsd*-gnu | i[34567]86-*-gnu* |
- i[34567]86-*-kopensolaris*-gnu, x86_64-*-linux* |
- x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu,
- i[3456x]86-*-netware*, i[34567]86-*-nto-qnx*,
- i[34567]86-*-solaris2*,
- i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae): Don't use svr4.h.
-
-2010-12-17 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.c (move_or_delete_vzeroupper_2): Replace
- "BB [%i]" with "[bb %i]" in dump.
- (move_or_delete_vzeroupper_1): Likewise.
- (rescan_move_or_delete_vzeroupper): Likewise. Always dump
- upper 128bit state at exit.
-
-2010-12-17 Joseph Myers <joseph@codesourcery.com>
-
- * config/interix.opt: New.
- * config/interix.h (LINK_SPEC): Don't handle -soname*.
- * config.gcc (i[34567]86-*-interix3*): Use interix.opt.
-
-2010-12-17 Andrew Stubbs <ams@codesourcery.com>
-
- * config/arm/arm.md (maddhisi4, *maddhidi4): Use the canonical
- operand order for plus.
- Drop redundant % from constraints.
-
-2010-12-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/spu/t-spu-elf (LIB2FUNCS_EXCLUDE): Add _floattisf and
- _floatunstisf.
- * config/spu/spu.md ("floattisf2"): New expander.
- ("floatunstisf2"): New insn pattern and splitter.
- ("cgt_ti_m1"): New insn pattern.
-
-2010-12-17 Bernd Schmidt <bernds@codesourcery.com>
-
- * config/arm/arm.c (arm_select_cc_mode): Before calling
- arm_select_dominance_cc_mode for AND or IOR operations, ensure
- that op is NE or EQ.
-
-2010-12-17 Alexander Monakov <amonakov@ispras.ru>
-
- PR middle-end/46761
- * graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Prefer
- to use unadjusted UB.
-
-2010-12-17 Dodji Seketeli <dodji@redhat.com>
-
- * dwarf2out.c (gen_type_die_with_usage): Do not try to emit debug
- info for a redundant typedef that has DECL_ORIGINAL_TYPE set. Use
- that underlying type instead.
-
-2010-12-16 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44563
- * ipa-inline.c: Update doplevel comment.
- (cgraph_estimate_size_after_inlining): Remove times attribute.
- (cgraph_mark_inline_edge): Update.
- (cgraph_mark_inline): Remove.
- (cgraph_estimate_growth): Update.
- (cgraph_check_inline_limits): Remove one only argument.
- (cgraph_edge_badness): Update.
- (cgraph_decide_recursive_inlining): Update.
- (cgraph_decide_inlining_of_small_function): Fix handling of
- tree_can_inline_p and call_stmt_cannot_inline_p.
- (cgraph_flatten): Likewise.
- (cgraph_decide_inlining): Update.
- (cgraph_decide_inlining_incrementally): Fix handling of
- call_stmt_cannot_inline_p.
-
-2010-12-16 Joseph Myers <joseph@codesourcery.com>
-
- * config/darwin.opt (dylinker, headerpad_max_install_names,
- keep_private_externs, nofixprebinding, nomultidefs, noprebind,
- noseglinkedit, object, prebind, prebind_all_twolevel_modules,
- preload, private_bundle, pthread, seglinkedit, twolevel_namespace,
- twolevel_namespace_hints, whatsloaded, whyload, y, Mach, X): New
- Driver options.
- * config/darwin.h (LINK_SPEC): Remove '*' after
- headerpad_max_install_names.
-
-2010-12-16 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/46924
- * graphite-sese-to-poly.c (detect_commutative_reduction): Do not
- detect reductions outside the current SESE region.
- * sese.h (stmt_in_sese_p): New.
- (defined_in_sese_p): Call stmt_in_sese_p.
-
-2010-12-16 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/46966
- * graphite-sese-to-poly.c (build_scop_drs): Call free_gimple_bb for
- for bbs that are removed from SCOP_BBS vector.
-
-2010-12-16 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-ssa-sccvn.c (vn_reference_lookup_3): Always punt if the call to
- get_ref_base_and_extent returns -1 as the max size.
-
-2010-12-16 Konrad Eisele <konrad@gaisler.com>
- Eric Botcazou <ebotcazou@adacore.com>
-
- Support for LEON processor
- * config.gcc (sparc-*-elf*): Deal with sparc-leon specifically.
- (sparc-*-linux*): Likewise.
- (sparc-*-rtems*): Remove Solaris left-overs.
- (sparc*-*-*): Remove obsolete sparc86x setting.
- (sparc-leon*): Default to --with-cpu=v8 and --with-tune=leon.
- * doc/invoke.texi (SPARC Options): Document -mcpu/-mtune=leon.
- * config/sparc/sparc.h (TARGET_CPU_leon): Define.
- (TARGET_CPU_sparc86x): Delete.
- (TARGET_CPU_cypress): Define as alias to TARGET_CPU_v7.
- (TARGET_CPU_f930): Define as alias to TARGET_CPU_sparclite.
- (TARGET_CPU_f934): Likewise.
- (TARGET_CPU_tsc701): Define as alias to TARGET_CPU_sparclet.
- (CPP_CPU_SPEC): Add entry for -mcpu=leon.
- (enum processor_type): Add PROCESSOR_LEON. Reorganize.
- * config/sparc/sparc.c (leon_costs): New cost array.
- (sparc_option_override): Add entry for TARGET_CPU_leon and -mcpu=leon.
- Initialize cost array to leon_costs if -mtune=leon.
- * config/sparc/sparc.md (cpu attribute): Add leon. Reorganize.
- Include leon.md scheduling description.
- * config/sparc/leon.md: New file.
- * config/sparc/t-elf: Do not assemble Solaris startup files.
- * config/sparc/t-leon: New file.
- * config/sparc/t-leon3: Likewise.
-
-2010-12-16 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/43655
- * tree-ssa-ter.c (is_replaceable_p): Don't use
- gimple_references_memory_p for -O0, instead check for load
- by looking at rhs.
-
-2010-12-16 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/46404
- * graphite-clast-to-gimple.c (gloog): Call scev_reset.
-
-2010-12-16 Anatoly Sokolov <aesok@post.ru>
-
- * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
- * config/sh/sh.c (sh_asm_output_addr_const_extra): New function.
- (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
-
-2010-12-16 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/spu/t-spu-elf (LIB2_SIDITI_CONV_FUNC): Define.
- * config/spu/spu.h (MIN_UNITS_PER_WORD): Do not define.
- (LIBGCC2_UNITS_PER_WORD): Define if not already defined.
-
-2010-12-16 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/46893
- * cfgexpand.c (expand_debug_expr): If GET_MODE (op0) is VOIDmode,
- use TYPE_MODE (TREE_TYPE (tem)) instead of mode1.
-
-2010-12-16 Chung-Lin Tang <cltang@codesourcery.com>
-
- PR target/46883
- * config/arm/arm.md
- (zero_extendhisi2 for register input splitter): Change
- "register_operand" to "s_register_operand".
- (zero_extendqisi2 for register input splitter): Same.
-
-2010-12-16 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/46939
- * predic.c (predict_paths_leading_to_edge): New function.
- (apply_return_prediction): Use it.
- (predict_paths_for_bb): Do not special case abnormals.
-
-2010-12-16 Joseph Myers <joseph@codesourcery.com>
-
- * config.gcc (powerpc-*-lynxos*): Don't add lynx.opt to
- extra_options twice.
-
-2010-12-15 Joseph Myers <joseph@codesourcery.com>
-
- * doc/tm.texi.in (US_SOFTWARE_GOFAST): Don't document.
- * doc/tm.texi: Regenerate.
- * system.h (US_SOFTWARE_GOFAST): Poison.
- * config.gcc (enable_gofast): Don't handle.
- * config/gofast.h: Remove.
- * config/mips/t-gofast: Remove.
- * config/fp-bit.c (US_SOFTWARE_GOFAST): Don't handle.
- * config/fp-bit.h (US_SOFTWARE_GOFAST): Don't handle.
- * config/mips/elforion.h: Don't mention GOFAST in comment.
- * config/mips/mips.c: Don't include gofast.h.
- (mips_init_libfuncs): Don't call gofast_maybe_init_libfuncs.
- * config/mips/t-sr71k (dp-bit.c, fp-bit.c): Don't define
- US_SOFTWARE_GOFAST.
- * config/sparc/sparc.c: Don't include gofast.h.
- (sparc_init_libfuncs): Don't call gofast_maybe_init_libfuncs.
- * config/spu/t-spu-elf (dp-bit.c, fp-bit.c): Don't undefine
- US_SOFTWARE_GOFAST.
-
-2010-12-14 Jan Hubicka <jh@suse.cz>
-
- * config/darwin.opt (dylinker, headerpad_max_install_names,
- keep_private_externs, nofixprebinding, nomultidefs, noprebind,
- noseglinkedit, object, prebind, prebind_all_twolevel_modules,
- preload, private_bundle, pthread, seglinkedit, twolevel_namespace,
- twolevel_namespace_hints, whatsloaded, whyload, y, Mach, X): New
- Driver options.
- * config/darwin.h (LINK_SPEC): Remove '*' after
- headerpad_max_install_names.
-
-2010-12-14 Jan Hubicka <jh@suse.cz>
-
- * tree.c (get_file_function_name): Avoid using random seed on
- GLOBAL_sub_I and GLOBAL_sub_D.
-
-2010-12-15 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/46053
- PR middle-end/46287
- PR middle-end/46242
- * cgraph.h (cgraph_indirect_call_info): New field thunk_delta.
- * gimple.h (gimple_fold_obj_type_ref): Declaration removed.
- (gimple_fold_call): Declare.
- (gimple_adjust_this_by_delta): Likewise.
- * cgraph.c (cgraph_make_edge_direct): New parameter delta. Updated
- all users.
- (cgraph_clone_edge): Create a copy of indirect_info also for direct
- edges.
- * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Adjust this
- parameters.
- * gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Renamed to
- gimple_get_virt_mehtod_for_binfo, new parameter delta. Do not search
- through thunks, in fact bail out if we encounter one, check that
- BINFO_VIRTUALS is not NULL.
- (gimple_adjust_this_by_delta): New function.
- (gimple_fold_obj_type_ref): Removed.
- (gimple_fold_obj_type_ref_call): New function.
- (fold_gimple_call): Renamed to gimple_fold_call, made external.
- Updated users. Call gimple_fold_obj_type_ref_call instead of
- gimple_fold_obj_type_ref.
- * ipa-cp.c (ipcp_process_devirtualization_opportunities): Process
- thunk deltas.
- (ipcp_discover_new_direct_edges): Likewise.
- * ipa-prop.c (ipa_make_edge_direct_to_target): New parameter delta.
- Updated callers.
- (ipa_write_indirect_edge_info): Stream thunk_delta.
- (ipa_read_indirect_edge_info): Likewise.
- * tree-ssa-ccp.c (ccp_fold_stmt): Use gimple_fold_call instead of
- gimple_fold_obj_type_ref.
-
-2010-12-15 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/46649
- * sel-sched-ir.c (purge_empty_blocks): Unconditionally skip the first
- basic block in the region.
-
-2010-12-15 Joseph Myers <joseph@codesourcery.com>
-
- * config/stormy16/stormy16.h (LINK_SPEC, WCHAR_TYPE): Define.
- * config.gcc (xstormy16-*-elf): Don't use svr4.h.
-
-2010-12-15 Joseph Myers <joseph@codesourcery.com>
-
- * config/rx/rx.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
- * config.gcc (rx-*-elf*): Don't use svr4.h.
-
-2010-12-14 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/46845
- * sese.c (scalar_evolution_in_region): Handle scop parameters
- before scev analysis.
-
-2010-12-14 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/46928
- * tree-data-ref.c (analyze_overlapping_iterations): Handle A[p] == A[p]
- in data dependence analysis with p a parameter of the loop.
-
-2010-12-14 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/45948
- * tree-loop-distribution.c (ssa_name_has_uses_outside_loop_p): New.
- (stmt_has_scalar_dependences_outside_loop): New.
- (stmt_generated_in_another_partition): New.
- (add_scalar_computations_to_partition): New.
- (rdg_build_partitions): Call add_scalar_computations_to_partition.
-
-2010-12-14 Joseph Myers <joseph@codesourcery.com>
-
- * config/arc/arc.h (LIB_SPEC): Define.
- * config.gcc (arc-*-elf*): Don't use svr4.h.
-
-2010-12-14 Joseph Myers <joseph@codesourcery.com>
-
- * config/sh/elf.h (LIB_SPEC): Define.
- * config.gcc (sh-*-elf* | sh[12346l]*-*-elf* | sh-*-symbianelf* |
- sh[12346l]*-*-symbianelf* | sh-*-linux* | sh[2346lbe]*-*-linux* |
- sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* |
- sh5l*-*-netbsd* | sh64-*-netbsd* | sh64l*-*-netbsd*, sh-*-rtems*,
- sh-wrs-vxworks): Don't use svr4.h.
-
-2010-12-14 Jan Hubicka <jh@suse.cz>
-
- PR lto/46940
- PR lto/44463
- * lto-symtab.c (lto_symtab_merge_cgraph_nodes_1): Construct nodes
- for aliases when they are used.
-
-2010-12-14 Joseph Myers <joseph@codesourcery.com>
-
- * config.gcc (sparc-*-elf*, sparc-*-rtems*, sparc-*-linux*,
- sparc-*-netbsdelf*, sparc*-*-solaris2*, sparc-wrs-vxworks,
- sparc64-*-elf*, sparc64-*-rtems*, sparc64-*-linux*,
- sparc64-*-netbsd*, sparc64-*-openbsd*): Don't use svr4.h.
-
-2010-12-14 Thomas Klein <th.r.klein@web.de>
-
- * config/arm/arm.c (arm_expand_prologue): Report the static stack
- size if -fstack-usage is used.
- (thumb1_expand_prologue): Likewise.
-
-2010-12-14 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/46885
- * tree-ssa-loop-manip.c (canonicalize_loop_ivs): Use gsi_last_bb
- instead of gsi_last_nondebug_bb if bump_in_latch.
-
- PR tree-optimization/46909
- * gimple-fold.c (and_var_with_comparison_1): Save partial
- result even in the is_and case, if both partial results
- are the same, return it.
- (or_var_with_comparison_1): Use is_or predicate instead of
- innercode == TRUTH_OR_EXPR test. Save partial result
- even in the is_or case, if both partial results are the
- same, return it. In the !is_or case when both partial
- results are the same, return the partial result instead
- of boolean_true_node.
-
-2010-12-14 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/46667
- * varasm.c (assemble_start_function): Do not call
- resolve_unique_section.
- * cfgexpand.c (gimple_expand_cfg): Resolve it here.
-
-2010-12-14 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/46875
- * sched-vis.c (print_pattern): Dump "sequence" for ADDR_VECs.
- * sel-sched-ir.c (bb_has_removable_jump_to_p): Forbid table jumps.
-
-2010-12-14 Kaushik Phatak <kaushik.phatak@kpitcummins.com>
-
- * config/h8300/h8300.md (define_split) : Add condition for
- "and with single_zero" splitter to handle 16-bit const operands.
- * config/h8300/h8300.md (define_split) : Add condition for
- "ior with single_one" splitter to handle 16-bit const operands.
- * config/h8300/h8300.md (define_split) : Add condition for
- "xor with single_one" splitter to handle 16-bit const operands.
- * testsuite/gcc.dg/h8300-bit-insn-ice.c: New.
-
-2010-12-13 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/45388
- * ipa.c (cgraph_build_static_cdtor_1): Break out from ... Add FINAL
- parameter.
- (cgraph_build_static_cdtor): ... here.
- (build_cdtor): Use cgraph_build_static_cdtor_1.
-
-2010-12-13 Joseph Myers <joseph@codesourcery.com>
-
- * config/m32c/m32c.h (ENDFILE_SPEC, LINK_SPEC, SIZE_TYPE,
- PTRDIFF_TYPE, WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
- * config.gcc (m32c-*-rtems*, m32c-*-elf*): Don't use svr4.h.
-
-2010-12-14 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/44374
- Reapply patch with fixes.
- * basic-block.h (enum bb_flags): Add BB_MODIFIED.
- * df-core.c (df_set_bb_dirty): Set it.
- * ifcvt.c (find_memory): Remove function.
- (dead_or_predicable): Use can_move_insns_across.
- * df.h (can_move_insns_across): Declare function.
- * cfgcleanup.c (block_was_dirty): New static variable.
- (flow_find_head_matching_sequence): Test for epilogue notes.
- (try_crossjump_bb, try_forward_edges): Test BB_MODIFIED flag rather
- than df_get_bb_dirty.
- (try_head_merge_bb): New static function.
- (try_optimize_cfg): Call it. Call df_analyze if block_was_dirty
- is set.
- * df-problems.c: Include "target.h"
- (df_simulate_find_uses): New static function.
- (MEMREF_NORMAL, MEMREF_VOLATILE): New macros.
- (find_memory, find_memory_store): New static functions.
- (can_move_insns_across): New function.
- * Makefile.in (df-problems.o): Update dependencies.
-
-2010-12-13 Joseph Myers <joseph@codesourcery.com>
-
- * config/xtensa/elf.h (SIZE_TYPE, PTRDIFF_TYPE): Define.
- (DBX_REGISTER_NUMBER): Undefine.
- * config/xtensa/linux.h (SIZE_TYPE, PTRDIFF_TYPE): Define.
- (DBX_REGISTER_NUMBER): Undefine.
- * config.gcc (xtensa*-*-elf*, xtensa*-*-linux*): Don't use svr4.h.
-
-2010-12-13 Jack Howarth <howarth@bromo.med.uc.edu>
- Joseph Myers <joseph@codesourcery.com>
-
- PR bootstrap/46650
- * system.h: Include cstring for cxx bootstrap.
-
-2010-12-13 Jakub Jelinek <jakub@redhat.com>
-
- PR lto/46879
- * lto-streamer-out.c (output_gimple_stmt): Never replace first
- GIMPLE_DEBUG argument with MEM_REF.
-
- PR debug/46867
- * var-tracking.c (emitted_notes, string_pointer_flags): Removed.
- (emit_note_insn_var_location): Remove ENABLE_RTL_CHECKING verification.
- (vt_emit_notes): Don't initialize and destroy emitted_notes.
-
-2010-12-13 Nathan Froyd <froydnj@codesourcery.com>
-
- PR target/46040
- * config.gcc (arm*-*-linux-*eabi): Use bpabi-lib.h.
- (arm*-*-uclinux*eabi, arm*-*-eabi*): Likewise.
-
-2010-12-13 Joseph Myers <joseph@codesourcery.com>
-
- * config/v850/v850.h (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
- WCHAR_TYPE_SIZE): Define.
- * config.gcc (v850e1-*-*, v850e-*-*, v850-*-*): Don't use svr4.h.
-
-2010-12-13 Joseph Myers <joseph@codesourcery.com>
-
- * config.gcc (s390-*-linux*, s390x-*-linux*, s390x-ibm-tpf*):
- Don't use svr4.h.
-
-2010-12-13 Joseph Myers <joseph@codesourcery.com>
-
- * config/mn10300/linux.h (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
- WCHAR_TYPE_SIZE): Undefine.
- * config/mn10300/mn10300.h (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
- WCHAR_TYPE_SIZE): Define.
- * config.gcc (mn10300-*-*): Don't use svr4.h.
-
-2010-12-13 Joseph Myers <joseph@codesourcery.com>
-
- * config/m68k/linux.h (DBX_REGISTER_NUMBER): Undefine and redefine.
- (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
- * config.gcc (m68k-*-uclinux*, m68k-*-linux*): Don't use svr4.h.
-
-2010-12-13 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/46756
- * jump.c (mark_all_labels): Skip debug insns.
-
-2010-12-13 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/46782
- * cfgcleanup.c (try_forward_edges): Skip debug insns.
-
-2010-12-12 Jan Hubicka <jh@suse.cz>
- Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * varasm.c (default_function_section): Check flag_reorder_functions
- and targetm.have_named_sections.
- * config/darwin.c (darwin_function_section): Check
- flag_reorder_functions.
-
-2010-12-12 Finn Thain <fthain@telegraphics.com.au>
-
- PR target/46179
- * config/m68k/m68k.c (handle_move_double): Insert calls to
- m68k_final_prescan_insn to clean up @TLS operand syntax.
-
-2010-12-10 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/43023
- * tree-data-ref.c (mem_write_stride_of_same_size_as_unit_type_p):
- Removed.
- (stores_zero_from_loop): Call stmt_stores_zero.
- * tree-data-ref.h (stmt_stores_zero): New.
- * tree-loop-distribution.c (generate_memset_zero): Do not return a
- boolean. Call gcc_assert on stride_of_unit_type_p.
- (generate_builtin): Call stmt_stores_zero.
- (rdg_flag_all_uses): Removed.
- (rdg_flag_similar_memory_accesses): Removed.
- (build_rdg_partition_for_component): Removed parameter
- other_stores. Removed call to rdg_flag_similar_memory_accesses.
- (can_generate_builtin): New.
- (similar_memory_accesses): New.
- (fuse_partitions_with_similar_memory_accesses): New.
- (rdg_build_partitions): Call
- fuse_partitions_with_similar_memory_accesses.
-
-2010-12-10 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/46804
- * regmove.c (optimize_reg_copy_3): Look for REG_EQUAL note
- on the setter of src_reg rather than on insn. If it is
- equal to the setter's original SET_SRC, replace it with its
- zero or sign extension instead of dropping it.
-
-2010-12-10 Richard Guenther <rguenther@suse.de>
-
- PR lto/46808
- * lto-symtab.c (lto_symtab_merge_decls_2): Avoid type warnings
- after errors.
- (lto_symtab_merge_decls_1): Adjust.
-
-2010-12-10 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR middle-end/46674
- PR lto/43157
- * target.def (mangle_assembler_name): New target asm_out hook.
- * targhooks.c (default_mangle_assembler_name): Add default hook
- implementation.
- * targhooks.h (default_mangle_assembler_name): Add prototype.
- * lto-symtab.c (lto_symtab_register_decl): Use new hook when
- processing DECL_ASSEMBLER_NAMEs for lto symtabs.
- (lto_symtab_get_resolution): Likewise.
- (lto_cgraph_replace_node): Likewise.
- (lto_symtab_prevailing_decl): Likewise.
- * lto-streamer-out.c (write_symbol): Likewise.
- * doc/tm.texi.in (TARGET_MANGLE_ASSEMBLER_NAME): Add @hook directive.
- * doc/tm.texi: Regenerate.
- * config/i386/cygming.h (TARGET_MANGLE_ASSEMBLER_NAME): Define to
- point at i386_pe_mangle_assembler_name.
- * config/i386/winnt.c (i386_pe_mangle_assembler_name): New function.
- * config/i386/i386-protos.h (i386_pe_mangle_assembler_name): Add
- prototype.
-
-2010-12-10 Nathan Froyd <froydnj@codesourcery.com>
-
- * c-typeck.c (readonly_error): Delete.
-
-2010-12-10 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/46865
- * rtl.c (rtx_equal_p_cb, rtx_equal_p): For last operand of
- ASM_OPERANDS and ASM_INPUT if integers are different, call locator_eq.
- * jump.c (rtx_renumbered_equal_p): Likewise.
-
- PR tree-optimization/46864
- * tree-ssa-loop-im.c (loop_suitable_for_sm): Return false even
- when there are EDGE_EH exit edges.
-
-2010-12-10 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/46540
- * configure.ac: Handle --disable-libquadmath-support.
- * doc/install.texi: Document --disable-libquadmath and
- --disable-libquadmath-support
- * configure: Regenerate.
- * config.in: Regenerate.
-
-2010-12-10 Jack Howarth <howarth@bromo.med.uc.edu>
- Iain Sandoe <iains@gcc.gnu.org>
-
- PR 43751/target
- * config/darwin9.h (DSYMUTIL_SPEC): Add fortran source types.
-
-2010-12-10 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/rs6000/rs6000.c
- (rs6000_darwin64_record_arg_advance_recurse): Name register increment
- explicitly. (rs6000_darwin64_record_arg_recurse): Make sure we split
- long doubles when we run out of regs. Also flag that this requires
- stack and therefore cannot be returned by value.
- (rs6000_darwin64_record_arg): Update comment.
- (rs6000_function_value): Likewise.
-
-2010-12-10 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_parser_objc_class_definition): Recognize
- Objective-C 2.0 class extensions.
-
-2010-12-10 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.c: Remove c-tree.h and c-lang.h
- * config/t-darwin: Remove dependencies on c-tree.h and c-lang.h.
-
-2010-12-10 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/46881
- * doc/tm.texi: Regenerate.
- * target.def: Fix "preferred" spelling. Refer to rclass by its
- exact name.
- * config/arm/arm.c (arm_preferred_rename_class): Rename parameter class
- to rclass.
-
-2010-12-09 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11-protos.h (output_move_double,
- output_move_quad): Delete.
- (output_move_multiple, pdp11_expand_operands): New functions.
- (pdp11_action, pdp11_partorder): New enums.
- * config/pdp11/pdp11.md (movdi, movsi, movdf, movsf): Use
- output_move_multiple.
- (adddi3, subdi3, negdi2): New patterns.
- (addsi3, subsi3, negsi2): Use pdp11_expand_operands.
- (abshi2): Delete.
- (neghi2, negqi2): Use PDPint iterator.
- * config/pdp11/pdp11.c (find_addr_reg, output_move_double,
- output_move_quad): Delete.
- (pdp11_expand_operands, output_move_multiple): New functions.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/vax/linux.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
- * config.gcc (vax-*-linux*): Don't use svr4.h.
-
-2010-12-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * c-typeck.c (build_indirect_ref): Call invalid_indirection_error.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * doc/extend.texi (Attribute Syntax): Correct description of
- attributes in pointer declarators.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/mips/vxworks.h (DBX_REGISTER_NUMBER): Undefine.
- * config.gcc (mips64*-*-linux* | mipsisa64*-*-linux*,
- mips*-*-linux*, mips-wrs-vxworks): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/mep/mep.h (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
- WCHAR_TYPE_SIZE): Define.
- * config.gcc (mep-*-*): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/mcore/mcore.h (PTRDIFF_TYPE, WCHAR_TYPE,
- WCHAR_TYPE_SIZE): Define.
- * config/svr3.h (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
- WCHAR_TYPE_SIZE): Don't define.
- * config.gcc (mcore-*-elf): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config.gcc (m32r-*-elf*, m32rle-*-elf*, m32r-*-rtems*,
- m32r-*-linux*, m32rle-*-linux*): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/iq2000/iq2000.h (LINK_SPEC, SIZE_TYPE, PTRDIFF_TYPE,
- WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
- * config.gcc (iq2000*-*-elf*): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config.gcc (ia64*-*-linux*, ia64*-*-hpux*): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/pa/pa32-linux.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
- * config.gcc (hppa*64*-*-linux*, hppa*-*-linux*): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/moxie/moxie.h (LINK_SPEC, SIZE_TYPE, PTRDIFF_TYPE,
- WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
- * config/moxie/rtems.h (LINK_SPEC, SIZE_TYPE, PTRDIFF_TYPE,
- WCHAR_TYPE, WCHAR_TYPE_SIZE): Undefine.
- * config.gcc (moxie-*-elf, moxie-*-uclinux*): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/frv/frv.h (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
- WCHAR_TYPE_SIZE): Define.
- * config.gcc (frv-*-elf, frv-*-*linux*): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/fr30/fr30.h (LIB_SPEC, LINK_SPEC, SIZE_TYPE,
- PTRDIFF_TYPE, WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
- * config.gcc (fr30-*-elf): Don't use svr4.h.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/cris/linux.h (SIZE_TYPE, PTRDIFF_TYPE): Define.
- * config.gcc (crisv32-*-linux* | cris-*-linux*): Don't use svr4.h.
-
-2010-12-09 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/46844
- * gimple-fold.c (canonicalize_constructor_val): Canonicalize addresses.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/i386/netware.h (TARGET_POSIX_IO): Define.
- * config/i386/nto.h (TARGET_POSIX_IO): Define.
- * config/ia64/hpux.h (TARGET_POSIX_IO): Define.
- * config/moxie/moxie.h (TARGET_POSIX_IO): Don't undefine.
- * config/openbsd.h (TARGET_POSIX_IO): Define.
- * config/rtems.h (TARGET_POSIX_IO): Define.
- * config/sh/embed-elf.h (TARGET_POSIX_IO): Don't undefine.
- * config/sol2.h (TARGET_POSIX_IO): Define.
- * config/svr4.h (TARGET_POSIX_IO): Don't define.
- * config/vxworksae.h (TARGET_POSIX_IO): Define.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/i386/nto.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Define.
- * config/ia64/hpux.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Define.
- * config/linux.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Don't
- undefine.
- * config/mips/linux.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Don't
- undefine.
- * config/mips/netbsd.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX):
- Don't undefine.
- * config/rs6000/linux.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX):
- Don't undefine.
- * config/rs6000/linux64.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX):
- Don't undefine.
- * config/sol2.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Define.
- * config/sparc/netbsd-elf.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX):
- Don't undefine.
- * config/sparc/openbsd64.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX):
- Don't undefine.
- * config/sparc/sp64-elf.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX):
- Don't undefine.
- * config/svr4.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Don't define.
- * config/xtensa/elf.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Don't
- undefine.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/ia64/hpux.h (AS_NEEDS_DASH_FOR_PIPED_INPUT): Define for
- non-GNU assembler.
- * config/m68k/netbsd-elf.h (AS_NEEDS_DASH_FOR_PIPED_INPUT): Remove.
- * config/m68k/openbsd.h (AS_NEEDS_DASH_FOR_PIPED_INPUT): Remove.
- * config/mips/openbsd.h (AS_NEEDS_DASH_FOR_PIPED_INPUT): Remove.
- * config/sol2.h (AS_NEEDS_DASH_FOR_PIPED_INPUT): Define for
- non-GNU assembler.
- * config/sparc/sparc.h (AS_NEEDS_DASH_FOR_PIPED_INPUT): Remove.
- * config/svr4.h (AS_NEEDS_DASH_FOR_PIPED_INPUT): Remove.
-
-2010-12-09 Martin Jambor <mjambor@suse.cz>
-
- * ipa-prop.c (compute_complex_ancestor_jump_func): Work also if the
- zero is the first phi parameter.
-
-2010-12-09 Martin Jambor <mjambor@suse.cz>
-
- * ipa-prop.h (struct ipa_parm_adjustment): New field alias_ptr_type.
- * ipa-prop.c (ipa_modify_call_arguments): Use it.
- * tree-sra.c (splice_param_accesses): Test that all accesses have the
- same alias reference type.
- (turn_representatives_into_adjustments): Set alias_ptr_type of the
- adjustment.
-
-2010-12-09 Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/46734
- * tree-sra.c (splice_param_accesses): Check that there are not
- multiple ADDRESSABLE types.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/arc/arc.h (ASM_SPEC): Remove %{v}.
- * config/bfin/bfin.h (ASM_SPEC): Remove %{v}.
- * config/cris/cris.h (ASM_SPEC): Remove %{v:-v}.
- * config/fr30/fr30.h (ASM_SPEC): Remove %{v}.
- * config/frv/frv.h (ASM_SPEC): Remove %{v}.
- * config/i386/linux.h (ASM_SPEC): Remove %{v}.
- * config/i386/linux64.h (ASM_SPEC): Remove %{v}.
- * config/i386/mingw-w64.h (ASM_SPEC): Remove %{v}.
- * config/i386/sol2-10.h (ASM_SPEC): Remove %{v}.
- * config/i386/vxworks.h (ASM_SPEC): Remove %{v}.
- * config/i386/x86-64.h (ASM_SPEC): Remove %{v}.
- * config/lm32/lm32.h (ASM_SPEC): Remove %{v}.
- * config/m32r/m32r.h (ASM_SPEC): Remove %{v}.
- * config/m68k/linux.h (ASM_SPEC): Remove %{v:-V}.
- * config/microblaze/microblaze.h (ASM_SPEC): Remove %{v}.
- * config/mips/mips.h (ASM_SPEC): Remove %{v}.
- * config/mips/vxworks.h (ASM_SPEC): Remove %{v}.
- * config/pa/pa-linux.h (ASM_SPEC): Remove %{v:-V}.
- * config/rs6000/freebsd.h (SVR4_ASM_SPEC): Remove %{v}.
- * config/rs6000/linux64.h (ASM_SPEC): Remove %{v:-V}.
- * config/rs6000/vxworks.h (ASM_SPEC): Remove %{v:-v}.
- * config/sparc/openbsd64.h (ASM_SPEC): Remove %{v:-V}.
- * config/svr4.h (SVR4_ASM_SPEC): Remove %{v:-V}.
- * config/xtensa/elf.h (ASM_SPEC): Remove %{v}.
- * config/xtensa/linux.h (ASM_SPEC): Remove %{v}.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/i386/openbsdelf.h (LINK_SPEC): Use %{r:} not %{r*:}.
- * config/mips/openbsd.h (LINK_SPEC): Use %{r:} not %{r*:}.
- * config/netbsd-aout.h (NETBSD_LINK_SPEC_AOUT): Use %{r:} not %{r*:}.
- * config/netbsd-elf.h (NETBSD_LINK_SPEC_ELF): Use %{r:} not %{r*:}.
- * config/sparc/openbsd64.h (LINK_SPEC): Use %{r:} not %{r*:}.
- * config/vax/netbsd-elf.h (LINK_SPEC): Use %{r:} not %{r*:}.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/alpha/freebsd.h (LINK_SPEC): Don't use %{!dynamic-linker:}.
- * config/alpha/linux-elf.h (LINK_SPEC): Likewise.
- * config/arm/freebsd.h (LINK_SPEC): Likewise.
- * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Likewise.
- * config/bfin/linux.h (LINK_SPEC): Likewise.
- * config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Likewise.
- * config/frv/linux.h (LINK_SPEC): Likewise.
- * config/i386/freebsd.h (LINK_SPEC): Likewise.
- * config/i386/freebsd64.h (LINK_SPEC): Likewise.
- * config/i386/linux.h (LINK_SPEC): Likewise.
- * config/i386/linux64.h (LINK_SPEC): Likewise.
- * config/i386/openbsdelf.h (LINK_SPEC): Likewise.
- * config/ia64/freebsd.h (LINK_SPEC): Likewise.
- * config/ia64/linux.h (LINK_SPEC): Likewise.
- * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
- * config/m32r/linux.h (LINK_SPEC): Likewise.
- * config/m68k/linux.h (LINK_SPEC): Likewise.
- * config/microblaze/linux.h (LINK_SPEC): Likewise.
- * config/mips/linux.h (LINK_SPEC): Likewise.
- * config/mips/linux64.h (LINK_SPEC): Likewise.
- * config/mips/openbsd.h (LINK_SPEC): Likewise.
- * config/mn10300/linux.h (LINK_SPEC): Likewise.
- * config/netbsd-elf.h (LINK_SPEC): Likewise.
- * config/pa/pa-linux.h (LINK_SPEC): Likewise.
- * config/rs6000/linux64.h (LINK_OS_LINUX_SPEC32,
- LINK_OS_LINUX_SPEC64): Likewise.
- * config/rs6000/sysv4.h (LINK_OS_FREEBSD_SPEC,
- LINK_OS_LINUX_SPEC, LINK_OS_GNU_SPEC, LINK_OS_NETBSD_SPEC): Likewise.
- * config/s390/linux.h (LINK_SPEC): Likewise.
- * config/sh/linux.h (SUBTARGET_LINK_SPEC): Likewise.
- * config/sparc/freebsd.h (LINK_SPEC): Likewise.
- * config/sparc/linux.h (LINK_SPEC): Likewise.
- * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
- LINK_SPEC): Likewise.
- * config/sparc/openbsd64.h (LINK_SPEC): Likewise.
- * config/vax/linux.h (LINK_SPEC): Likewise.
- * config/xtensa/linux.h (LINK_SPEC): Likewise.
-
-2010-12-09 Joseph Myers <joseph@codesourcery.com>
-
- * config/bfin/bfin.h (ASM_SPEC): Remove %{n} and %{T}.
- * config/frv/frv.h (ASM_SPEC): Likewise.
- * config/i386/sol2-10.h (ASM_SPEC): Likewise.
- * config/i386/sol2.h (ASM_SPEC): Likewise.
- * config/m68k/linux.h (ASM_SPEC): Likewise.
- * config/pa/pa-linux.h (ASM_SPEC): Likewise.
- * config/rs6000/linux64.h (ASM_SPEC32): Likewise.
- * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
- * config/sol2.h (ASM_SPEC): Likewise.
- * config/sparc/linux.h (ASM_SPEC): Likewise.
- * config/sparc/linux64.h (ASM_SPEC): Likewise.
- * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
- * config/sparc/sysv4.h (ASM_SPEC): Likewise.
- * config/svr4.h (SVR4_ASM_SPEC): Likewise.
-
-2010-12-09 Richard Guenther <rguenther@suse.de>
-
- * reginfo.c (struct subregs_of_mode_node): Remove.
- (subregs_of_mode): Likewise.
- (som_hash): Likewise.
- (som_eq): Likewise.
- (invalid_mode_changes): New bitmap.
- (record_subregs_of_mode): Get subregs_of_mode argument.
- Fill in invalid_mode_changes bitmap.
- (find_subregs_of_mode): Get subregs_of_mode argument and pass
- it through.
- (init_subregs_of_mode): Adjust.
- (finish_subregs_of_mode): Likewise.
- (invalid_mode_change_p): Query invalid_mode_changes bitmap.
-
-2010-12-09 Richard Guenther <rguenther@suse.de>
-
- * ira.c (ira): Do not call finish_subregs_of_mode.
- * ira-costs.c (finish_costs): Call finish_subregs_of_mode.
-
-2010-12-09 Richard Guenther <rguenther@suse.de>
-
- * rtl.h (invalid_mode_change_p): Adjust prototype.
- * reginfo.c (invalid_mode_change_p): Remove from argument.
- * ira-costs.c (print_allocno_costs): Adjust callers.
- (find_costs_and_classes): Likewise.
-
-2010-12-09 Jakub Jelinek <jakub@redhat.com>
-
- * config/s390/s390.md (*mov<mode>cc): Change lgoc and stgoc to
- locg and stocg even in comment.
- (sync_old_<atomic><mode>): Give mode to UNSPEC_VOLATILE.
-
- PR target/41082
- * config/rs6000/rs6000.c (rs6000_expand_vector_extract): Use stvx
- instead of stve*x.
- (altivec_expand_stv_builtin): For op0 use mode of operand 1 instead
- of operand 0.
- * config/rs6000/altivec.md (VI_scalar): New mode attr.
- (altivec_stve<VI_char>x, *altivec_stvesfx): Use scalar instead of
- vector mode for operand 0, put operand 1 into UNSPEC.
-
-2010-12-09 Yao Qi <yao@codesourcery.com>
-
- * config/arm/arm.c (arm_preferred_rename_class): Implement targethook
- PREFERRED_RENAME_CLASS.
-
-2010-12-08 Ian Lance Taylor <iant@google.com>
-
- * doc/sourcebuild.texi (Front End): Remove reference to
- snapshot-README and snapshot-index.html.
-
-2010-12-08 Ian Lance Taylor <iant@google.com>
-
- * doc/sourcebuild.texi (Texinfo Manuals): Change update_web_docs
- to update_web_docs_svn.
- (Front End): Likewise.
-
-2010-12-08 Iain Sandoe <iains@gcc.gnu.org>
-
- * gcc/config.gcc (with_cpu): Default i[34567]86-*-darwin* and
- x86_64-*-darwin* to with_cpu:-core2.
- * gcc/config/i386/mmx.md (*mov<mode>_internal_rex64): Replace movq
- with movd for darwin assembler.
- * gcc/config/i386/sse.md (*vec_concatv2di_rex64_sse4_1): Ditto.
- (*vec_concatv2di_rex64_sse): Ditto.
-
-2010-12-08 Richard Guenther <rguenther@suse.de>
- Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/45230
- PR tree-optimization/45231
- PR tree-optimization/45370
- * sese.c (rename_uses): Returns a bool. Call
- recompute_tree_invariant_for_addr_expr only on the RHS of a
- GIMPLE_ASSIGN.
- (graphite_copy_stmts_from_block): Call fold_stmt_inplace when
- rename_uses returns true.
- * tree-ssa-copy.c (replace_exp): Add a comment about calling
- fold_stmt_inplace after replace_exp.
-
-2010-12-08 Mike Stump <mikestump@comcast.net>
-
- PR debug/46749
- * config/darwin.h (COLLECT_RUN_DSYMUTIL): Add.
- (DSYMUTIL_SPEC): Use `linker' flags instead to handle lto better.
- * config/darwin9.h (COLLECT_RUN_DSYMUTIL): Add.
- (DSYMUTIL_SPEC): Use `linker' flags instead to handle lto better.
- * collect2.c (post_ld_pass): Add.
- (process_args): Add.
- (maybe_run_lto_and_relink): Call post_ld_pass after ld.
- (main): Likewise. Call process_args.
-
-2010-12-08 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/46844
- * regrename.c (check_new_reg_p): Add ATTRIBUTE_UNUSED to reg parameter.
-
-2010-12-08 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/46631
- * arm.c (thumb2_reorg): Also try to reduce <commutative_op> Rd, Rn, Rd
- into a 16-bit instruction.
-
-2010-12-08 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR middle-end/42694
- * builtins.c (expand_builtin_pow_root): Don't optimize pow(x,y)
- where y is 0.25, 1./6., or 0.75 if the target does not have a sqrt
- instruction, but do optimize if y is 0.5 or 1./3. since that
- changes an expensive call into a cheaper one.
-
-2010-12-08 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use a shift
- instead of a division to divide by BITS_PER_UNIT.
-
-2010-12-08 Richard Guenther <rguenther@suse.de>
-
- * gimplify.c (gimple_tree_eq): Assert hashes are equal only
- when checking is enabled.
-
-2010-12-07 Andrey Belevantsev <abel@ispras.ru>
-
- PR target/43603
- * haifa-sched.c (sched_create_recovery_edges): Update
- dominator info.
- * sel-sched-ir.c (maybe_tidy_empty_bb): Update dominator info
- after deleting an empty block.
- (tidy_control_flow): Also verify dominators.
- (sel_remove_bb): Update dominator info after removing a block.
- (sel_redirect_edge_and_branch_force): Assert that no unreachable
- blocks will be created. Update dominator info.
- (sel_redirect_edge_and_branch): Update dominator info when
- basic blocks do not become unreachable.
- (sel_remove_loop_preheader): Update dominator info.
-
-2010-12-07 Richard Guenther <rguenther@suse.de>
-
- * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
- Reset alignment information.
- (bump_vector_ptr): Likewise.
-
-2010-12-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR middle-end/46671
- PR target/46685
- * config/pa/pa.c (pa_function_section): New function.
- (TARGET_ASM_FUNCTION_SECTION): Define.
-
-2010-12-07 Ian Lance Taylor <iant@google.com>
- Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR bootstrap/46810
- * configure.ac: Disable AC_MSG_ERROR while looking for the C++
- preprocessor.
- * configure: Rebuild.
-
-2010-12-07 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (output_addr_const_pdp11): Output negative
- values with sign rather than as unsigned.
-
-2010-12-07 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (TARGET_ASM_FUNCTION_SECTION): Define.
- (pdp11_function_section): New function.
-
-2010-12-07 Joseph Myers <joseph@codesourcery.com>
-
- * config/mcore/mcore.c Don't include assert.h.
- (layout_mcore_frame, handle_structs_in_regs): Use gcc_assert.
- * config/spu/spu.c: Don't include assert.h.
- (spu_sms_res_mii): Use gcc_assert.
-
-2010-12-07 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/42327
- * tree-data-ref.c (omega_setup_subscript): Call build_int_cst
- instead of using integer_minus_one_node.
-
-2010-12-07 Nathan Froyd <froydnj@codesourcery.com>
-
- PR c++/45330
- * params.def (CXX_MAX_NAMESPACES_FOR_DIAGNOSTIC_HELP): New parameter.
- * doc/invoke.texi (cxx-max-namespaces-for-diagnostic-help): Document.
-
-2010-12-07 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46832
- * tree-ssa-math-opts.c (execute_optimize_widening_mul): Check
- that the call has a lhs.
-
-2010-12-07 Yao Qi <yao@codesourcery.com>
-
- * Makefile.in: Add $(TARGET_H) to the regrename.o rule.
- * regrename.c (struct du_head): Add new element length.
- (sort_du_head, get_element, merge, merge_sort_comparison):
- New functions of merge sort implementation to du_head list.
- (regrename_optimize): Sort du_head linked list by length.
- Iterate registers in a preferred-register-first order.
- Move some code to ...
- (check_new_reg_p): here. New function.
- (create_new_chain): Initialize length.
- (scan_rtx_reg): Increase length for non-debug insns.
- * target.def: New hook preferred_rename_class.
- * targhook.c (default_preferred_rename_class): New.
- * targhook.h: Declare it.
- * doc/tm.texi.in: New hook TARGET_PREFERRED_RENAME_CLASS.
- * doc/tm.texi: Regenerate.
-
-2010-12-07 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/46799
- * tree-parloops.c (separate_decls_in_region): Use UNKNOWN_LOCATION
- instead of BUILTINS_LOCATION.
- (create_loop_fn): Add LOC argument, pass it to build_decl instead of
- BUILTINS_LOCATION.
- (create_parallel_loop): Add LOC argument, use it for OMP clauses
- and GIMPLE_*OMP* statements.
- (gen_parallel_loop): Determine locus for the parallel loop, pass it
- to create_loop_fn and create_parallel_loop.
- * cfgexpand.c (gimple_expand_cfg): For builtin functions, call
- set_curr_insn_source_location (UNKNOWN_LOCATION).
-
-2010-12-07 Joern Rennecke <amylaar@spamcop.net>
- Richard Guenther <rguenther@suse.de>
-
- PR target/46737
- * config/bfin/bfin.c (BB_AUX_INDEX): Cast to intptr_t.
- (bfin_reorder_loops): Change type of index to intptr_t.
-
-2010-12-07 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46726
- * tree-inline.c (estimate_num_insns): Special case pow (x, 2.0).
-
-2010-12-07 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-math-opts.c (execute_optimize_widening_mul): Unlink
- virtual operands.
-
-2010-12-07 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_parser_typeof_specifier): Removed special
- treatment of objc_volatilized attribute for Objective-C.
-
-2010-12-06 Vladimir Makarov <vmakarov@redhat.com>
-
- * ira.c (update_equiv_regs): Prohibit move insns if
- pressure-sensitive scheduling was done.
-
-2010-12-06 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_parser_for_statement): Use c_fully_fold() instead
- of c_process_expr_stmt() for the iterating and collection
- expressions of an Objective-C fast enumeration loop.
-
-2010-12-06 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45997
- * dwarf2out.c (modified_type_die): If both is_const_type and
- is_volatile_type is set, start with DW_TAG_const_type or
- DW_TAG_volatile_type depending on where we get qualified type
- in the recursive call.
-
- PR target/43897
- * config/ia64/ia64.c (rtx_needs_barrier): Handle asm CLOBBER
- as a store into that register.
-
- PR tree-optimization/46528
- PR debug/46338
- * profile.c (branch_prob): Make sure last is never set to a debug
- stmt.
-
- PR debug/46771
- * reginfo.c (init_subregs_of_mode): Don't call find_subregs_of_mode
- on DEBUG_INSNs.
-
- PR rtl-optimization/46777
- * cfglayout.c (duplicate_insn_chain): Avoid duplicating
- also barrier after tablejump.
-
-2010-12-06 Joern Rennecke <amylaar@spamcop.net>
- Richard Henderson <rth@redhat.com>
-
- PR target/46740
- * config/vax/vax.c (vax_output_int_move): Fold #if into if.
-
-2010-12-06 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/sparc/sol2.h (PUSHSECTION_FORMAT): Redefine unconditionally.
- * config/sparc/sol2-gas.h (PUSHSECTION_FORMAT): Redefine.
-
-2010-12-06 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/46735
- * config/frv/predicates.md (gpr_or_int12_operand): Use IN_RANGE.
- (gpr_fpr_or_int12_operand, gpr_or_int10_operand): Likewise.
- (int12_operand, int_2word_operand, uint16_operand): Likewise.
- (fpr_or_int6_operand, int6_operand, int5_operand): Likewise.
- (uint5_operand, uint4_operand): Likewise.
- * config/frv/frv.h (IN_RANGE_P): Delete.
- (GPR_P, FPR_P, CC_P, ICC_P, FCC_P, CR_P, ICR_P, FCR_P): Use IN_RANGE.
- (ACC_P, ACCG_P, SPR_P, CONST_OK_FOR_I, CONST_OK_FOR_J): Likewise.
- (CONST_OK_FOR_L, CONST_OK_FOR_M, CONST_OK_FOR_N): Likewise.
- (CONST_OK_FOR_P): Likewise.
- * config/frv/frv.md (*movqicc_internal2_int): Likewise.
- (*movqicc_internal2_float, *movhicc_internal2_int): Likewise.
- (*movhicc_internal2_float, *movsicc_internal2_int): Likewise.
- (*movsicc_internal2_float, casesi): Likewise.
- * config/frv/frv.c (frv_frame_offset_rtx): Likewise.
- (frv_asm_output_mi_thunk, frv_legitimate_address_p_1): Likewise.
- (frv_emit_movsi, output_move_single, frv_emit_cond_move): Likewise.
- (frv_split_cond_move, frv_rtx_costs): Likewise.
-
- PR target/46739
- * config/mmix/mmix.c (mmix_intval): Split shift count.
-
-2010-12-06 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.c (m_COREI7): New.
- (initial_ix86_tune_features): Turn on
- X86_TUNE_SSE_UNALIGNED_LOAD_OPTIMAL and
- X86_TUNE_SSE_UNALIGNED_STORE_OPTIMAL for Core i7.
-
-2010-12-06 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc: Allow corei7-avx for --with-arch/--with-cpu.
-
- * config/i386/driver-i386.c (host_detect_local_cpu): Support
- Sandy Bridge.
-
- * config/i386/i386.c (override_options): Handle "corei7-avx".
-
- * doc/invoke.texi: Document corei7-avx.
-
-2010-12-06 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46806
- * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Do not
- coalesce different types.
-
-2010-12-06 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46785
- * tree-vect-loop.c (vect_is_simple_reduction_1): Also allow
- call statements as operand definition.
-
-2010-12-06 Mingjie Xing <mingjie.xing@gmail.com>
-
- * doc/tm.texi.in: Fix typo.
- * doc/tm.texi: Regenerate.
-
-2010-12-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config.gcc [hppa[12]*-*-hpux10*, hppa[12]*-*-hpux11*]: Fix typo in
- last change.
-
-2010-12-06 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-family/c-common.h: Removed the declarations of all the objc_
- callbacks, and moved them into c-objc.h. Removed
- objc_ivar_visibility_kind and moved it into c-objc.h.
- * c-family/c-objc.h: New file.
- * c-family/c-common.c: Include c-objc.h.
- * c-family/c-format.c: Same change.
- * c-family/stub-objc.c: Same change.
- * c-decl.c: Include c-family/c-objc.h.
- * c-parser.c: Same change.
- * c-typeck.c: Same change.
- * c-config-lang.in (gtfiles): Added c-family/c-objc.h.
- * Makefile.in (c-decl.o): Depend on c-family/c-objc.h.
- (c-parser.o): same change.
- (c-typeck.o): Same change.
- (c-family/c-format.o): Same change.
- (c-family/stub-objc.o): Same change.
- (c-family/c-common.o): Same change.
- (PLUGIN_HEADERS): Added c-family/c-objc.h.
-
-2010-12-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config.gcc [hppa[12]*-*-hpux10*, hppa[12]*-*-hpux11*]: Ignore
- --with-dwarf2 option.
-
-2010-12-03 Jan Hubicka <jh@suse.cz>
-
- * lto-streamer-in.c (input_cfg): Fix pasto.
-
-2010-12-03 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (cgraph_externally_visible_p): Do not localize builtins
- and functions with user asm defined names.
- (varpool_externally_visible_p): Do not localize vars with user
- asm defined names.
-
-2010-12-03 Jan Hubicka <jh@suse.cz>
-
- * dwarf2asm.c (dw2_output_indirect_constant_1): Set DECL_ASSEMBLER_NAME
- to prevent mangling with lto frontend.
-
-2010-12-03 Jan Hubicka <jh@suse.cz>
-
- * Makefile.in (LTO_STREAMER_H): Add GCOV_IO_H.
- * lto-cgraph.c (merge_profile_summaries): Fix thinko.
-
-2010-12-03 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/46760
- * cgraph.c (cgraph_create_node): Initialize count_materialization_scale.
- * cgraph.h (struct cgraph_node): Add count_materialization_scale.
- * lto-cgraph.c (lto_output_edge): Fix assert.
- (lto_output_node): Output count_materialization_scale.
- (output_profile_summary): Output only runs and sum_max.
- (input_node): Input count_materialization_scale.
- (input_profile_summary): Read data into file specific gcov summary.
- (merge_profile_summaries): New function.
- (input_cgraph): Update call of input_profile_summary;
- call merge_profile_summaries.
- * lto-streamer-in.c (input_cfg): Add count_materialization_scale arg;
- rescale counts at read in.
- (intput_bb): Likewise.
- (input_function): Update call of input_bb.
- (lto_read_body): Update call of input_cfg.
- * lto-streamer.h: Inlclude gcov-io.h
- (lto_file_decl_data): Add gcov_ctr_summary.
-
-2010-12-03 Dave Korn <dave.korn.cygwin@gmail.com>
-
- * doc/tm.texi.in (Cond. Exec. Macros): Rename node from this ...
- (Cond Exec Macros): ... to this.
- * doc/tm.texi: Regenerate.
-
-2010-12-03 Jason Merrill <jason@redhat.com>
-
- PR debug/46123
- * dwarf2out.c (gen_tagged_type_die): Don't put local types in
- a declaration DIE.
-
-2010-12-03 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/arm/arm.c (arm_legitimate_index_p): Split
- VALID_NEON_QREG_MODE and VALID_NEON_DREG_MODE cases. Permit
- slightly larger constants in the latter case.
- (thumb2_legitimate_index_p): Likewise.
-
-2010-12-03 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (N, Q, Qn, Qy, Z, n, r, s, t): New options.
- * gcc.c (cc1_options): Add %{Qy:}.
-
-2010-12-03 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c (LINK_COMMAND_SPEC): Don't handle -A, -d or -m.
- * config/darwin.h (LINK_COMMAND_SPEC_A): Likewise.
- * config/i386/djgpp.h (LINK_COMMAND_SPEC): Likewise.
-
-2010-12-03 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/45354
- * sel-sched-ir.c (jump_leads_only_to_bb_p): Rename to ...
- (bb_has_removable_jump_to_p): This. Update all callers. Make static.
- Allow BBs ending with a conditional jump. Forbid EDGE_CROSSING jumps.
- * sel-sched-ir.h (jump_leads_only_to_bb_p): Delete prototype.
-
-2010-12-03 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * basic-block.h (struct edge_prediction): Remove forward declaration.
- * tree-flow.h (struct edge_prediction): Move from here...
- * predict.c (struct edge_prediction): ...to here.
- * cselib.h (struct elt_list): Move from here...
- * cselib.c (struct elt_list): ...to here.
-
-2010-12-02 Ian Lance Taylor <iant@google.com>
-
- * gcc.c (default_compilers): Add entry for ".go".
- * common.opt: Add -static-libgo as a driver option.
- * doc/install.texi (Configuration): Mention libgo as an option for
- --enable-shared. Mention go as an option for --enable-languages.
- * doc/invoke.texi (Overall Options): Mention .go as a file name
- suffix. Mention go as a -x option.
- * doc/frontends.texi (G++ and GCC): Mention Go as a supported language.
- * doc/sourcebuild.texi (Top Level): Mention libgo.
- * doc/standards.texi (Standards): Add section on Go language.
- Move references for other languages into their own section.
- * doc/contrib.texi (Contributors): Mention that I contributed the
- Go frontend.
-
-2010-12-03 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * tree.h (struct call_expr_arg_iterator_d): Remove GTY tag.
- (const_call_expr_arg_iterator_d): Likewise.
- (expanded_location): Likewise.
- * c-tree.h (struct c_arg_tag_d): Likewise.
- * dwarf2out.c (struct cfa_loc): Likewise.
- (struct skeleton_chain_struct): Likewise.
- * except.c (struct ttypes_filter): Likewise.
- * cselib.h (struct cselib_val_struct): Likewise.
- (elt_loc_list): Likewise.
- (elt_list): Likewise.
- * varasm.c (struct addr_const): Likewise.
- * tree-flow.h (struct edge_prediction): Likewise.
- (struct int_tree_map): Likewise.
- (struct _edge_var_map): Likewise.
-
-2010-12-02 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/46768
- * config/i386/i386.c (initial_ix86_tune_features): Turn on
- X86_TUNE_INTER_UNIT_MOVES for Core 2 and Core i7.
-
-2010-12-02 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc: Allow corei7 for --with-arch=/--with-cpu=.
-
-2010-12-02 Ian Lance Taylor <iant@google.com>
-
- * configure.ac: AC_DEFINE ENABLE_BUILD_WITH_CXX. Check for C++
- header files unordered_map, tr1/unordered_map, and ext/hash_map.
- * configure, config.in: Rebuild.
-
-2010-12-02 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/46685
- * config/sparc/sparc.c (can_use_mov_pic_label_ref): New predicate.
- (sparc_expand_move): Call it to decide whether to emit the special
- mov{si,di}_pic_label_ref patterns.
- (sparc_legitimize_pic_address): Call it to decide whether to emit
- the regular PIC sequence for labels. Fix long line.
- (sparc_file_end): Set is_thunk for the PIC helper.
-
-2010-12-02 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree.c (build_range_type_1): Do not SET_TYPE_STRUCTURAL_EQUALITY
- for a non-shared type.
-
-2010-12-02 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/45297
- * tree-scalar-evolution.c (interpret_rhs_expr): Handle ADDR_EXPR
- with MEM_REFs as POINTER_PLUS_EXPR.
-
-2010-12-02 Joseph Myers <joseph@codesourcery.com>
-
- * config/i386/linux.h, config/m32r/linux.h, config/m68k/linux.h,
- config/sparc/linux.h, config/sparc/linux64.h: Remove comments
- mentioning /lib/elf.
-
-2010-12-02 Joseph Myers <joseph@codesourcery.com>
-
- * config/bfin/bfin.h (LINK_SPEC): Remove %{b}.
- * config/frv/frv.h (LINK_SPEC): Remove %{b}.
- * config/i386/netware.h (LINK_SPEC): Remove %{b}.
- * config/i386/nto.h (LINK_SPEC): Remove %{b}.
- * config/lm32/uclinux-elf.h (LINK_SPEC): Remove %{b}.
- * config/sol2.h (LINK_SPEC): Remove %{b}.
- * config/svr4.h (LINK_SPEC): Remove %{b}.
-
-2010-12-02 Joseph Myers <joseph@codesourcery.com>
-
- * config/i386/freebsd.h (LINK_SPEC): Cut long comment.
- * config/i386/linux.h (LINK_SPEC): Cut long comment.
- * config/i386/netware.h (LINK_SPEC): Remove %{V}.
- * config/m32r/linux.h (LINK_SPEC): Cut long comment.
- * config/m68k/linux.h (LINK_SPEC): Cut long comment.
- * config/sparc/linux.h (LINK_SPEC): Cut long comment.
- (ASM_SPEC): Remove %{V} and %{v:%{!V:-V}}.
- * config/sparc/linux64.h (LINK_SPEC): Cut long comment.
- (ASM_SPEC): Remove %{V} and %{v:%{!V:-V}}.
- * config/sparc/netbsd-elf.h (ASM_SPEC): Remove %{V} and %{v:%{!V:-V}}.
-
-2010-12-02 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c (trad_capable_cpp, default_compilers): Don't handle
- -ftraditional.
-
-2010-12-02 Joseph Myers <joseph@codesourcery.com>
-
- * config/alpha/freebsd.h (LINK_SPEC): Don't handle -Wl,.
- * config/bfin/bfin.h (ASM_SPEC): Don't handle -Wa,.
- * config/frv/frv.h (ASM_SPEC): Don't handle -Wa,.
- * config/lm32/uclinux-elf.h (LINK_SPEC): Don't handle -Wl,.
- * config/microblaze/microblaze.h (LINK_SPEC): Don't handle -Wl,.
- * config/mn10300/linux.h (ASM_SPEC): Don't handle -Wa,.
- * config/pa/pa-linux.h (ASM_SPEC): Don't handle -Wa,.
- * config/rs6000/freebsd.h (SVR4_ASM_SPEC): Don't handle -Wa,.
- * config/rs6000/linux64.h (ASM_SPEC_COMMON): Don't handle -Wa,.
- * config/rs6000/sysv4.h (LINK_SPEC): Don't handle -Wl,.
- * config/rs6000/vxworks.h (ASM_SPEC): Don't handle -Wa,.
- * config/sol2.h (ASM_SPEC): Don't handle -Wa,.
- * config/sparc/linux.h (ASM_SPEC): Don't handle -Wa,.
- * config/sparc/linux64.h (ASM_SPEC): Don't handle -Wa,.
- * config/sparc/sp-elf.h (ASM_SPEC): Don't handle -Wa,.
- * config/sparc/sysv4.h (ASM_SPEC): Don't handle -Wa,.
- * config/svr4.h (SVR4_ASM_SPEC): Don't handle -Wa,.
- * config/vxworks.h (VXWORKS_LINK_SPEC): Don't handle -Wl,.
-
-2010-12-02 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (output_jump): Map unsigned to signed
- opcodes if CC_NO_OVERFLOW is set.
- (notice_update_cc_on_set): Correct setting of CC0 as a side
- effect; set CC_NO_OVERFLOW for cases where C flag is not meaningful.
-
-2010-12-02 Ian Lance Taylor <iant@google.com>
-
- * doc/install.texi (Configuration): Update default for
- --with-boot-ldflags.
-
-2010-12-02 Nathan Froyd <froydnj@codesourcery.com>
-
- PR c/45062
- * c-decl.c (grokparms): Set arg_info->parms to NULL_TREE when
- !funcdef_flag.
-
-2010-12-02 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/45199
- * tree-data-ref.c (mem_write_stride_of_same_size_as_unit_type_p): New.
- (stores_zero_from_loop): Call
- mem_write_stride_of_same_size_as_unit_type_p.
- * tree-data-ref.h (stride_of_unit_type_p): New.
- * tree-loop-distribution.c (generate_memset_zero): Simplified.
- Call stride_of_unit_type_p.
- (build_rdg_partition_for_component): Do not call
- rdg_flag_similar_memory_accesses when
- flag_tree_loop_distribute_patterns is set.
-
-2010-12-02 Richard Guenther <rguenther@suse.de>
-
- * tree-vect-loop.c (vect_analyze_scalar_cycles_1): Disregard
- sign-changing conversions for induction detection.
-
-2010-12-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46723
- * tree-vect-loop.c (get_initial_def_for_induction): Strip
- conversions from the induction evolution and apply it to
- the result instead.
- * tree-vect-stmts.c (vect_get_vec_def_for_operand): Handle
- assigns for induction defs.
-
-2010-12-02 Richard Guenther <rguenther@suse.de>
-
- * value-prof.c (gimple_ic): Use stmt_ends_bb_p to detect
- the case we need to split the edge and not the block.
-
-2010-12-02 Bernd Schmidt <bernds@codesourcery.com>
-
- DFA model for Core 2 and Core i7 scheduling.
-
- * config/i386/core2.md: New DFA model for Core 2 and Core i7.
- * config/i386/i386.c (ix86_option_override_internal): Update entries
- for Core 2 and Core i7.
- (ix86_issue_rate): Set issue rate to 3 [be realistic].
- * config/i386/i386.md: Include "core2.md".
- (define_attr cpu): Add "corei7".
-
-2010-12-02 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- Define tuning for Core 2 and Core i7.
-
- * config/i386/i386-c.c (ix86_target_macros_internal): Update.
- * config/i386/i386.c (core2_cost): Delete, use generic costs instead.
- (m_CORE2): Replace with m_CORE2_{32,64}.
- (m_CORE2I7{,_32,_64}): New macros.
- (m_GENERIC32, m_GENERIC64): Update.
- (initial_ix86_tune_features, x86_accumulate_outgoing_args,)
- (x86_arch_always_fancy_math_387): Set m_CORE2I7_32 iff m_GENERIC32 and
- set m_CORE2I7_64 iff m_GENERIC64.
- (processor_target_table): Use generic costs for Core 2 and Core i7.
- (ix86_option_override_internal): Update entries for Core 2 and Core i7.
- (ix86_issue_rate): Remove entry for Core 2.
- (ia32_multipass_dfa_lookahead, ix86_sched_init_global): Update.
- * config/i386/i386.h (TARGET_CORE2_32, TARGET_CORE2_64): New macros.
- (TARGET_CORE2): Update.
- (PROCESSOR_CORE2_32, PROCESSOR_CORE2_64): New constants.
- (PROCESSOR_CORE2): Remove.
-
-2010-12-02 Richard Guenther <rguenther@suse.de>
-
- * lto-streamer.h (LTO_major_version): Bump to 2.
-
-2010-12-02 Richard Guenther <rguenther@suse.de>
-
- PR lto/44871
- * gimple.c (canonical_type_hash_cache): New hashtable.
- (gimple_type_hash): Make a wrapper around ...
- (gimple_type_hash_1): ... this. Take gtc_mode argument.
- (gimple_canonical_type_hash): Likewise.
- (gtc_visit): Take a gtc_mode argument.
- (gimple_types_compatible_p_1): Likewise. Do not compare struct
- tag names or field names when computing canonical types.
- (gimple_types_compatible_p): Adjust.
- (visit): Take a gtc_mode argument.
- (iterative_hash_gimple_type): Likewise. Do not hash struct tag
- names or field names when computing hashes of canonical types.
- (gimple_register_canonical_type): Use gimple_canonical_type_hash
- for the hash.
- (print_gimple_types_stats): Dump stats of canonical_type_hash_cache.
- (free_gimple_type_tables): Free canonical_type_hash_cache.
-
-2010-12-02 Richard Guenther <rguenther@suse.de>
- Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/46663
- * tree-vect-patterns.c (vect_recog_pow_pattern): Check that
- FUNCTION_DECL exists and that it's a builtin.
-
-2010-12-02 Jie Zhang <jie@codesourcery.com>
-
- PR middle-end/46674
- * varasm.c (compute_visible_aliases): Handle user set assembler name.
-
-2010-12-01 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * config/rs6000/rs6000.c (rs6000_option_override_internal): Fix
- thinko regarding setting -mno-<xxx> debug switches.
- (rs6000_rtx_costs): Add FMA. Delete old rtl based FMA costs.
-
-2010-12-01 Joseph Myers <joseph@codesourcery.com>
-
- * intl.c: Don't include tm.h.
- * Makefile.in (intl.o): Don't depend on $(TM_H).
-
-2010-12-01 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (analyze_drs_in_stmts): Fix set but
- unused warning.
- (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
-
-2010-12-01 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (analyze_drs): Removed.
- (build_scop_drs): Do not call analyze_drs.
- (analyze_drs_in_stmts): New.
- (insert_stmts): New.
- (insert_out_of_ssa_copy): Call analyze_drs_in_stmts.
- (insert_out_of_ssa_copy_on_edge): Same.
- (rewrite_close_phi_out_of_ssa): Call insert_stmts.
- (rewrite_phi_out_of_ssa): Same.
- (rewrite_cross_bb_scalar_dependence): Same.
- (split_reduction_stmt): Move data references in the new basic blocks.
- (translate_scalar_reduction_to_array_for_stmt): Call insert_stmts.
-
-2010-12-01 Sebastian Pop <sebastian.pop@amd.com>
-
- * sese.c (rename_uses): Do not handle ADDR_EXPR in LHS of assignments.
-
-2010-12-01 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/45297
- * graphite-poly.c (new_poly_bb): Returns a poly_bb_p. Do not take
- the reduction bool in parameter. Clear PBB_IS_REDUCTION. Set GBB_PBB.
- * graphite-poly.h (new_poly_bb): Update declaration.
- (gbb_from_bb): Moved here...
- (pbb_from_bb): New.
- * graphite-sese-to-poly.c (var_used_in_not_loop_header_phi_node):
- Removed.
- (graphite_stmt_p): Removed.
- (try_generate_gimple_bb): Returns a gimple_bb_p. Do not pass in
- sbitmap reductions. Always build a gimple_bb_p. Do not call
- new_poly_bb.
- (build_scop_bbs_1): Do not pass in sbitmap reductions.
- (build_scop_bbs): Same.
- (gbb_from_bb): ... from here.
- (add_conditions_to_constraints): Moved up.
- (analyze_drs): New.
- (build_scop_drs): Call analyze_drs. Remove all the PBBs that do
- not contain data references.
- (new_pbb_from_pbb): New.
- (insert_out_of_ssa_copy_on_edge): Call new_pbb_from_pbb after a
- block is split.
- (rewrite_close_phi_out_of_ssa): Update call to
- insert_out_of_ssa_copy_on_edge.
- (rewrite_reductions_out_of_ssa): Now static.
- (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
- (split_pbb): New.
- (split_reduction_stmt): Call split_pbb.
- (translate_scalar_reduction_to_array): Pass in the scop, do not
- pass in the sbitmap reductions.
- (rewrite_commutative_reductions_out_of_ssa_close_phi): Same.
- (rewrite_commutative_reductions_out_of_ssa_loop): Same.
- (rewrite_commutative_reductions_out_of_ssa): Same.
- (build_poly_scop): Call build_scop_bbs,
- rewrite_commutative_reductions_out_of_ssa,
- rewrite_reductions_out_of_ssa, and
- rewrite_cross_bb_scalar_deps_out_of_ssa. Move build_scop_drs
- before scop_to_lst.
- * graphite-sese-to-poly.h (rewrite_commutative_reductions_out_of_ssa):
- Removed declaration.
- (rewrite_reductions_out_of_ssa): Same.
- (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
- (build_scop_bbs): Same.
- * graphite.c (graphite_transform_loops): Do not initialize reductions.
- Do not call build_scop_bbs,
- rewrite_commutative_reductions_out_of_ssa,
- rewrite_reductions_out_of_ssa, and
- rewrite_cross_bb_scalar_deps_out_of_ssa.
- * sese.h (struct gimple_bb): Add field pbb.
- (GBB_PBB): New.
-
-2010-12-01 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (handle_scalar_deps_crossing_scop_limits):
- New.
- (rewrite_cross_bb_scalar_deps): Pass in the scop. Call
- handle_scalar_deps_crossing_scop_limits.
- (rewrite_cross_bb_scalar_deps_out_of_ssa): Create an empty BB
- after the scop. Update call to rewrite_cross_bb_scalar_deps.
-
-2010-12-01 Sebastian Pop <sebastian.pop@amd.com>
-
- * sese.c (rename_uses): Call recompute_tree_invariant_for_addr_expr
- when replacing a constant in an ADDR_EXPR.
-
-2010-12-01 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-blocking.c (lst_do_strip_mine_loop): Extra parameter
- for the stride.
- (lst_do_strip_mine): Same.
- (scop_do_strip_mine): Same.
- * graphite-poly.c (apply_poly_transforms): Update call to
- scop_do_strip_mine.
- * graphite-poly.h (scop_do_strip_mine): Update declaration.
-
-2010-12-01 Jan Hubicka <jh@suse.cz>
-
- * tree.c (build_common_builtin_nodes): Do not initialize
- BUILT_IN_PROFILE_FUNC_ENTER and BUILT_IN_PROFILE_FUNC_EXIT.
- * builtins.c (expand_builtin_profile_func): Remove.
- (expand_builtin): Do not handle BUILT_IN_PROFILE_FUNC_ENTER and
- BUILT_IN_PROFILE_FUNC_EXIT.
- * builtins.def (profile_func_enter, profile_func_exit): Remove stubs.
- (__cyg_profile_func_enter, __cyg_profile_func_exit): New.
- * gimplify.c (gimplify_function_tree): Reorganize code calling
- profiling functions.
-
-2010-12-01 Joseph Myers <joseph@codesourcery.com>
-
- * opts.c: Expand comment on tm.h include.
-
-2010-12-01 Yao Qi <yao@codesourcery.com>
-
- * config/arm/predicates.md ("vfp_register_operand"): Return true for
- VFP_D0_D7_REGS classes.
-
-2010-12-01 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (flag_stack_check): New Variable entry.
- (fcompare-debug-second): Use Var.
- * flags.h (flag_compare_debug, flag_stack_check): Remove.
- * opts.c (flag_compare_debug): Remove.
- (common_handle_option): Don't handle OPT_fcompare_debug_second.
- Set opts->x_flag_stack_check for OPT_fstack_check_.
- * toplev.c (flag_stack_check): Remove.
-
-2010-12-01 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (main_input_filename, main_input_basename,
- main_input_baselength): New Variable entries. From toplev.c.
- * final.c (output_quoted_string): Move from toplev.c.
- * output.h (output_quoted_string): Move from toplev.h.
- * opts-global.c (read_cmdline_options): Use gcc_options pointer to
- access main_input_filename, main_input_baselength and
- main_input_basename.
- * targhooks.c: Include intl.h and opts.h.
- (option_affects_pch_p, default_get_pch_validity): Move from toplev.c.
- * targhooks.h (option_affects_pch_p, default_get_pch_validity):
- Move from toplev.h.
- * toplev.c (main_input_filename, main_input_basename,
- main_input_baselength): Move to common.opt.
- (output_quoted_string): Move to final.c.
- (warn_deprecated_use): Move to tree.c.
- (option_affects_pch_p, default_get_pch_validity,
- pch_option_mismatch, default_pch_valid_p): Move to targhooks.c.
- * toplev.h (skip_leading_substring): Move to tree-dump.c.
- (warn_deprecated_use): Move to tree.h.
- (output_quoted_string): Move to output.h.
- (main_input_filename, main_input_basename, main_input_baselength):
- Move to common.opt.
- (default_get_pch_validity, default_pch_valid_p): Move to targhooks.c.
- * tree-dump.c (skip_leading_substring): Move from toplev.h.
- * tree.c (warn_deprecated_use): Move from toplev.c.
- * tree.h (warn_deprecated_use): Move from toplev.h.
- * c-typeck.c, config/alpha/alpha.c, config/arc/arc.c,
- config/arm/arm.c, config/avr/avr.c, config/bfin/bfin.c,
- config/cris/cris.c, config/crx/crx.c, config/fr30/fr30.c,
- config/frv/frv.c, config/h8300/h8300.c, config/ia64/ia64.c,
- config/iq2000/iq2000.c, config/lm32/lm32.c, config/m32c/m32c.c,
- config/m32r/m32r.c, config/m68hc11/m68hc11.c, config/m68k/m68k.c,
- config/mcore/mcore.c, config/mep/mep.c,
- config/microblaze/microblaze.c, config/mips/mips.c,
- config/mmix/mmix.c, config/mn10300/mn10300.c,
- config/moxie/moxie.c, config/pa/pa.c, config/pdp11/pdp11.c,
- config/picochip/picochip.c, config/s390/s390.c,
- config/score/score.c, config/sh/sh.c, config/sparc/sparc.c,
- config/spu/spu.c, config/stormy16/stormy16.c, config/v850/v850.c,
- config/vax/vax.c, config/xtensa/xtensa.c, gimple-low.c,
- graphite-sese-to-poly.c, plugin.c, tree-cfg.c, tree-inline.c,
- varasm.c, xcoffout.c: Don't include toplev.h.
- * Makefile.in (c-typeck.o, tree-inline.o, tree-cfg.o,
- gimple-low.o, graphite-sese-to-poly.o, targhooks.o, plugin.o,
- varasm.o, xcoffout.o): Update dependencies.
- * config/arm/t-arm (arm.o): Update dependencies.
- * config/spu/t-spu-elf (spu.o): Update dependencies.
-
-2010-12-01 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46730
- * value-prof.c (gimple_ic): Always generate a separate merge BB.
-
-2010-11-30 Ian Lance Taylor <iant@google.com>
-
- * config/i386/linux.h (ASM_SPEC): Pass -v as -v, not -V. Remove
- all of %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*}.
- * config/i386/linux64.h (ASM_SPEC): Likewise.
- * config/i386/mingw-w64.h (ASM_SPEC): Likewise.
- * config/i386/sol2-10.h (ASM_SPEC) [USE_GAS]: Likewise.
- * config/i386/vxworks.h (ASM_SPEC): Likewise.
- * config/i386/x86-64.h (ASM_SPEC): Likewise.
- * config/i386/sol2.h (ASM_SPEC): Remove %{Wa,*:%*}.
- * config/i386/sol2-10.h (ASM_SPEC) [!USE_GAS]: Likewise.
-
-2010-11-30 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-decl.c (finish_function): Call objc_finish_function in
- Objective-C.
- * c-typeck.c (convert_for_assignment): Do not call
- objc_type_quals_match().
-
-2010-11-30 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46722
- * tree-ssa-math-opts.c (convert_mult_to_fma): Get multiplication
- operands as arguments.
- (execute_optimize_widening_mul): Also handle power of two as
- multiplication.
-
-2010-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR middle-end/46709
- * cgraphunit.c (process_function_and_variable_attributes): Fix
- cut'n'pasteo.
-
-2010-11-30 Joseph Myers <joseph@codesourcery.com>
-
- * hwint.c: New. Extracted from toplev.c.
- * hwint.h (clz_hwi, ctz_hwi, ffs_hwi, exact_log2, floor_log2):
- Move from toplev.h.
- * toplev.c (clz_hwi, ctz_hwi, ffs_hwi, exact_log2, floor_log2):
- Move to hwint.c.
- * toplev.h (clz_hwi, ctz_hwi, ffs_hwi, exact_log2, floor_log2):
- Move to hwint.h.
- * builtins.c, combine.c, config/i386/winnt.c, double-int.c,
- explow.c, expmed.c, fold-const.c, ggc-page.c, ggc-zone.c, ifcvt.c,
- ipa-struct-reorg.c, ira-color.c, matrix-reorg.c, omp-low.c,
- real.c, recog.c, reload.c, rtlanal.c, simplify-rtx.c,
- stor-layout.c, tree-dfa.c, tree-ssa-alias.c,
- tree-ssa-loop-niter.c, tree-vect-data-refs.c,
- tree-vect-loop-manip.c, tree-vect-loop.c, tree-vect-stmts.c,
- tree-vrp.c: Don't include toplev.h.
- * genattrtab.c, genconditions.c, genemit.c, genextract.c,
- genoutput.c, genpeep.c, genpreds.c, genrecog.c: Don't include
- toplev.h in generated output.
- * Makefile.in (OBJS-common): Add hwint.o.
- Dependencies for above files changed to remove toplev.h.
- (hwint.o): New.
- (insn-attrtab.o, insn-emit.o, insn-extract.o, insn-output.o,
- insn-peep.o, insn-preds.o, insn-recog.o): Don't depend on toplev.h.
- * config/i386/t-cygming (winnt.o): Don't depend on toplev.h.
- * config/i386/t-interix (winnt.o): Don't depend on toplev.h.
-
-2010-11-30 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46717
- * value-prof.c (gimple_ic): Preserve EH edges of the indirect
- call. Manually create EH edges for the direct call and update
- target PHI nodes.
-
-2010-11-30 Joseph Myers <joseph@codesourcery.com>
-
- * diagnostic-core.h: Include bversion.h.
- * toplev.h: Don't include input.h or bversion.h.
- (parse_optimize_options): Don't declare here.
- * alias.c, auto-inc-dec.c, c-aux-info.c, c-convert.c, c-parser.c,
- caller-save.c, cfg.c, cfganal.c, cfgbuild.c, cfgcleanup.c,
- combine-stack-adj.c, config/arm/pe.c, config/darwin-c.c,
- config/host-darwin.c, config/i386/host-cygwin.c,
- config/i386/host-mingw32.c, config/i386/msformat-c.c,
- config/i386/netware.c, config/i386/nwld.c,
- config/i386/winnt-cxx.c, config/i386/winnt-stubs.c,
- config/ia64/ia64-c.c, config/m32c/m32c-pragma.c,
- config/mep/mep-pragma.c, config/microblaze/microblaze-c.c,
- config/rs6000/host-darwin.c, config/rs6000/rs6000-c.c,
- config/score/score3.c, config/score/score7.c,
- config/sh/symbian-base.c, config/sh/symbian-c.c,
- config/sh/symbian-cxx.c, config/sol2-c.c, config/sol2.c,
- config/v850/v850-c.c, config/vxworks.c, convert.c, cppbuiltin.c,
- cselib.c, dbgcnt.c, ddg.c, dfp.c, dominance.c, emit-rtl.c,
- fixed-value.c, fwprop.c, ggc-common.c, gimple.c, gimplify.c,
- graphite-blocking.c, graphite-clast-to-gimple.c,
- graphite-dependences.c, graphite-flattening.c,
- graphite-interchange.c, graphite-poly.c,
- graphite-scop-detection.c, graphite.c, haifa-sched.c,
- implicit-zee.c, integrate.c, ipa-pure-const.c, ipa-reference.c,
- ira-build.c, ira-conflicts.c, ira-costs.c, ira-lives.c, jump.c,
- lists.c, loop-doloop.c, loop-iv.c, lto-cgraph.c, lto-compress.c,
- lto-opts.c, lto-section-in.c, lto-section-out.c,
- lto-streamer-out.c, lto-symtab.c, modulo-sched.c, optabs.c,
- params.c, postreload-gcse.c, postreload.c, predict.c, profile.c,
- regcprop.c, reginfo.c, regmove.c, reorg.c, resource.c,
- sched-deps.c, sched-ebb.c, sched-rgn.c, sdbout.c,
- sel-sched-dump.c, sel-sched-ir.c, sese.c, stmt.c, targhooks.c,
- tree-cfgcleanup.c, tree-mudflap.c, tree-nomudflap.c,
- tree-object-size.c, tree-outof-ssa.c, tree-phinodes.c,
- tree-profile.c, tree-sra.c, tree-ssa-ccp.c, tree-ssa-coalesce.c,
- tree-ssa-live.c, tree-ssa-loop-prefetch.c, tree-ssa-loop.c,
- tree-ssa-operands.c, tree-ssa-structalias.c, tree-ssa-uninit.c,
- tree-vect-patterns.c, value-prof.c, var-tracking.c, web.c: Don't
- include toplev.h.
- * Makefile.in (TOPLEV_H): Remove. All uses changed to use
- toplev.h. Dependencies for above files and c-family files changed
- to remove $(TOPLEV_H) or toplev.h.
- (C_TREE_H): Don't include $(TOPLEV_H).
- (DIAGNOSTIC_CORE_H): Use $(INPUT_H) instead of input.h. Add
- bversion.h.
- * config/arm/t-pe, config/arm/t-wince-pe, config/i386/t-cygming,
- config/ia64/t-ia64, config/mep/t-mep, config/score/t-score-elf,
- config/t-darwin, config/t-sol2,
- config/t-vxworks, config/v850/t-v850, config/v850/t-v850e:
- Dependencies for above files changed to remove $(TOPLEV_H) or
- toplev.h.
-
-2010-11-30 Richard Guenther <rguenther@suse.de>
-
- PR lto/44986
- * gcc.c (main): Use the first input with a compiler as infile
- for link spec processing.
-
-2010-11-30 Richard Guenther <rguenther@suse.de>
-
- PR lto/45949
- * cgraphunit.c (ipa_passes): Stop after errors from small IPA passes.
-
-2010-11-30 Mingjie Xing <mingjie.xing@gmail.com>
-
- * gcc-plugin.h: Include coretypes.h.
- * Makefile.in (FUNCTION_H): Add hard-reg-set.h.
-
-2010-11-30 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * ggc-zone.c (ggc_pch_read): Fix conditional compilation.
- * ggc-none.c (ggc_internal_alloc_zone_stat)
- (ggc_internal_cleared_alloc_zone_stat): New.
-
-2010-11-29 Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
-
- * config/rs6000/rs6000.c (rs6000_reg_live_or_pic_offset_p): Check
- TARGET_SINGLE_PIC_BASE for RS6000_PIC_OFFSET_TABLE_REGNUM.
- (rs6000_emit_prologue): Don't set PIC register if
- TARGET_SINGLE_PIC_BASE.
- * config/rs6000/rs6000.opt (msingle-pic-base): New option.
- * doc/invoke.texi (msingle-pic-base): Document.
-
-2010-11-29 H.J. Lu <hongjiu.lu@intel.com>
-
- PR driver/46712
- * exec-tool.in (id): New.
- Check and export LT_RCU_$id instead of LT_RCU.
-
-2010-11-29 Zdenek Dvorak <rakdver@kam.uniff.cz>
-
- PR tree-optimization/46675
- * tree-ssa-loop-niter.c (split_to_var_and_offset): Avoid overflow
- in offset calculation.
-
-2010-11-29 Jan Hubicka <jh@suse.cz>
-
- * collect2.c (main): Do not imply verbose output with
- LTO and linker plugin.
-
-2010-11-29 Dodji Seketeli <dodji@redhat.com>
-
- * dwarf2out.c (print_die): Print the address of the current DIE or
- of any DIE referenced by the current one.
-
-2010-11-29 Dodji Seketeli <dodji@redhat.com>
-
- PR debug/46101
- * dwarf2out.c (lookup_type_die_strip_naming_typedef): New function.
- (scope_die_for, gen_type_die_for_member): Replace uses of
- lookup_type_die with use of lookup_type_die_strip_naming_typedef.
-
-2010-11-29 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.c (darwin_mergeable_string_section): Remove blank line.
- (darwin_asm_declare_object_name): Correct spelling.
- (darwin_output_aligned_bss): Likewise.
-
-2010-11-29 Iain Sandoe <iains@gcc.gnu.org>
- Mike Stump <mrs@gcc.gnu.org>
-
- PR target/26427
- PR target/33120
- PR testsuite/35710
- * config/i386/darwin.h (ASM_OUTPUT_COMMON): Remove
- (ASM_OUTPUT_LOCAL): Likewise.
- * config/darwin-protos.h (darwin_asm_declare_object_name): New.
- (darwin_output_aligned_bss): Likewise.
- (darwin_asm_output_aligned_decl_local): Likewise.
- (darwin_asm_output_aligned_decl_common): Likewise.
- (darwin_use_anchors_for_symbol_p): Likewise.
- * config/rs6000/darwin.h (ASM_OUTPUT_COMMON): Remove.
- (TARGET_ASM_OUTPUT_ANCHOR): Define.
- (TARGET_USE_ANCHORS_FOR_SYMBOL_P): Define.
- (DARWIN_SECTION_ANCHORS): Set to 1.
- * config/darwin.c (emit_aligned_common): New var.
- (darwin_init_sections): Check that the Darwin private zero-size section
- marker is in range.
- (darwin_text_section): Check for zero-sized objects.
- (darwin_mergeable_string_section): Likewise.
- (darwin_mergeable_constant_section): Likewise.
- (machopic_select_section): Adjust to check for zero-sized objects.
- Assert that OBJC meta data are non-zero sized.
- (darwin_asm_declare_object_name): New.
- (darwin_asm_declare_constant_name): Adjust for zero-sized
- object sections.
- (BYTES_ZFILL): Define.
- (darwin_emit_weak_or_comdat): New.
- (darwin_emit_local_bss): New.
- (darwin_emit_common): New.
- (darwin_output_aligned_bss): New.
- (darwin_asm_output_aligned_decl_common): New.
- (darwin_asm_output_aligned_decl_local): New.
- (darwin_file_end): Disable subsections_via_symbols when section
- anchoring is active.
- (darwin_asm_output_anchor): Re-enable.
- (darwin_use_anchors_for_symbol_p): New.
- (darwin_override_options): Check for versions that can emit
- aligned common. Update usage of flags to current.
- * config/darwin-sections.def: Update comments and flags for
- non-anchor sections. zobj_const_section, zobj_data_section,
- zobj_bss_section, zobj_const_data_section: New.
- * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Redefine.
- (ASM_OUTPUT_ALIGN): Make whitespace output consistent.
- (L2_MAX_OFILE_ALIGNMENT): Define.
- (ASM_OUTPUT_ALIGNED_BSS): Define.
- (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Define.
- (ASM_OUTPUT_ALIGNED_DECL_COMMON): Define.
- (SECTION_NO_ANCHOR): Define.
- (TARGET_ASM_OUTPUT_ANCHOR) Define with a default of NULL.
- (DARWIN_SECTION_ANCHORS): Define with a default of 0.
-
-2010-11-29 Joseph Myers <joseph@codesourcery.com>
-
- * system.h: Include "safe-ctype.h" instead of <safe-ctype.h>.
- Include <signal.h>, <sys/mman.h>, <sys/resource.h> and <sys/times.h>.
- (O_BINARY, SIGCHLD, MAP_FAILED, MAP_ANONYMOUS, kill):
- Conditionally define.
- (GET_ENVIRONMENT): Poison.
- * configure.ac: Don't test for mincore.
- * configure: Regenerate.
- * config.in: Regenerate.
- * collect2-aix.c: Don't include <sys/mman.h>.
- * collect2.c: Don't include <signal.h>.
- (SIGCHLD): Don't define.
- (prefix_from_env): Use getenv instead of GET_ENVIRONMENT.
- * config/alpha/alpha.c: Include "splay-tree.h" instead of
- <splay-tree.h>.
- * config/arm/arm.c (arm_target_help): Use getenv instead of
- GET_ENVIRONMENT.
- * config/avr/driver-avr.c: Don't include <stdlib.h>.
- * config/frv/frv.c: Don't include <ctype.h>.
- * config/host-darwin.c: Don't include <sys/mman.h>.
- * config/host-hpux.c: Don't include <sys/mman.h> or <unistd.h>.
- (MAP_FAILED): Don't define.
- * config/host-linux.c: Don't include <sys/mman.h> or <limits.h>.
- * config/host-solaris.c: Don't include <sys/mman.h>.
- * config/i386/cygming.h: Don't include <stdio.h>.
- * config/i386/driver-i386.c: Don't include <stdlib.h>.
- * config/i386/host-cygwin.c: Don't include <sys/mman.h>.
- * config/iq2000/iq2000.c: Don't include <signal.h>.
- * config/m32c/m32c-pragma.c: Don't include <stdio.h>.
- * config/m68hc11/m68hc11.c: Don't include <stdio.h>.
- * config/mep/mep-pragma.c: Don't include <stdio.h>.
- * config/microblaze/microblaze.c: Don't include <signal.h>.
- * config/mips/mips.c: Don't include <signal.h>.
- * config/rs6000/host-darwin.c: Don't include <signal.h>.
- * cppdefault.c (cpp_relocated): Use getenv instead of GET_ENVIRONMENT.
- * defaults.h (GET_ENVIRONMENT): Don't define.
- * et-forest.h: Don't include <ansidecl.h> or <stddef.h>.
- * gcc.c: Don't include <signal.h>, <sys/mman.h> or <sys/types.h>.
- (SIGCHLD, MAP_FAILED, kill): Don't define.
- (process_command): Use getenv instead of GET_ENVIRONMENT.
- * genhooks.c: Don't include <string.h>.
- * ggc-common.c: Don't include <sys/resource.h>, <sys/mman.h> or
- <sys/types.h>.
- (MAP_FAILED): Don't define.
- * ggc-page.c Don't include <sys/mman.h>.
- (MAP_ANONYMOUS, MAP_FAILED): Don't define.
- * ggc-zone.c: Don't include <sys/mman.h>.
- (MAP_ANONYMOUS, MAP_FAILED): Don't define.
- * graph.c: Include "config.h" instead of <config.h>.
- * incpath.c (add_env_var_paths): Use getenv instead of GET_ENVIRONMENT.
- * lto-wrapper.c: Don't include <errno.h>, <signal.h> or "libiberty.h".
- (SIGCHLD, kill): Don't define.
- * mips-tfile.c: Don't include <signal.h>.
- * opts.c: Don't include <signal.h> or <sys/resource.h>.
- (print_specific_help): Use getenv instead of GET_ENVIRONMENT.
- * passes.c: Don't include <signal.h>, <sys/resource.h> or
- <sys/times.h>.
- * sparseset.h: Don't include <assert.h>.
- * timevar.c: Don't include <sys/times.h> or <sys/resource.h>.
- * tlink.c: Don't include "libiberty.h".
- * toplev.c: Don't include <signal.h> or <sys/times.h>.
- * tree-mudflap.c: Include "demangle.h" instead of <demangle.h>.
- * tree-switch-conversion.c: Don't include <signal.h>.
- * vmsdbgout.c: Don't include <errno.h> or <string.h>.
-
-2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_parser_objc_try_catch_statement): Renamed to
- c_parser_objc_try_catch_finally_statement for consistency with the
- C++ parser. Parse @catch(...) and pass NULL_TREE to
- objc_begin_catch_clause() in that case. Improved error recovery.
- Reorganized code to be almost identical to
- cp_parser_objc_try_catch_finally_statement.
-
-2010-11-29 Joern Rennecke <amylaar@spamcop.net>
-
- PR tree-optimization/46621
- * gimple.h: Don't include tm.h or hard-reg-set.h .
- * Makefile.in (GIMPLE_H): Remove $(TM_H).
-
- PR bootstrap/44756
- * cppbuiltin.c: Include target.h .
- (define_builtin_macros_for_type_sizes):
- Use targetm.float_words_big_endian.
-
-2010-11-27 Jan Hubicka <jh@suse.cz>
-
- * dwarf2out.c (dwarf2out_begin_function): Set cold_text_section
- and output cold_text_section_label.
- (dwarf2out_init): Don't do that there.
- (dwarf2out_finish): Handle cold section end label only if cold
- section was used.
-
-2010-11-27 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-nested.c (remap_vla_decls): Fully expand value expressions of
- VLA variables.
-
-2010-11-27 Richard Guenther <rguenther@suse.de>
-
- * gimple.c (gimple_assign_copy_p): Use gimple_assign_single_p.
- (gimple_assign_ssa_name_copy_p): Likewise.
- (gimple_assign_unary_nop_p): Use is_gimple_assign.
- (is_gimple_cast): Remove.
- (gimple_assign_single_p): Move ...
- * gimple.h (gimple_assign_single_p): ... here.
- (is_gimple_cast): Remove.
- (gimple_assign_rhs_code): Simplify.
- * gimple-fold.c (gimple_fold_builtin): Use CONVERT_EXPR_P
- instead of is_gimple_cast.
- * ipa-type-escape.c (look_for_casts): Likewise.
-
-2010-11-26 Joseph Myers <joseph@codesourcery.com>
-
- * doc/options.texi (Enum, EnumValue): Document new record types.
- (Enum): Document new option flag.
- * opt-functions.awk
- * optc-gen.awk: Handle enumerated option arguments.
- * opth-gen.awk: Handle enumerated option arguments.
- * opts-common.c (enum_arg_ok_for_language, enum_arg_to_value,
- enum_value_to_arg): New.
- (decode_cmdline_option): Handle enumerated arguments.
- (read_cmdline_option): Handle CL_ERR_ENUM_ARG.
- (set_option, option_enabled, get_option_state): Handle CLVC_ENUM.
- * opts.c (print_filtered_help, print_specific_help): Take
- lang_mask arguments.
- (print_filtered_help): Handle printing values of enumerated
- options. Print possible arguments for enumerated options.
- (print_specific_help): Update call to print_filtered_help.
- (common_handle_option): Update calls to print_specific_help. Use
- value rather than arg for OPT_fdiagnostics_show_location_. Don't
- handle OPT_ffp_contract_, OPT_fexcess_precision_,
- OPT_fvisibility_, OPT_ftls_model_, OPT_fira_algorithm_ or
- OPT_fira_region_ here.
- * opts.h (enum cl_var_type): Add CLVC_ENUM.
- (struct cl_option): Add var_enum.
- (CL_ENUM_CANONICAL, CL_ENUM_DRIVER_ONLY, struct cl_enum_arg,
- struct cl_enum, cl_enums, cl_enums_count): New.
- (CL_ERR_ENUM_ARG): Define.
- (CL_ERR_NEGATIVE): Update value.
- (enum_value_to_arg): Declare.
- * common.opt (flag_ira_algorithm, flag_ira_region,
- flag_fp_contract_mode, flag_excess_precision_cmdline,
- default_visibility, flag_tls_default): Remove Variable entries.
- (help_enum_printed): New Variable.
- (fdiagnostics-show-location=): Use Enum. Add associated
- SourceInclude, Enum and EnumValue entries.
- (fexcess-precision=, ffp-contract=, fira-algorithm=, fira-region=,
- ftls-model=, fvisibility=): Use Enum, Var and Init. Add
- associated Enum and EnumValue entries.
-
-2010-11-26 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/46623
- * config/microblaze/microblaze.c (microblaze_block_move_straight):
- Use XALLOCAVEC.
- (microblaze_option_override): Don't use C++ style comments.
- (save_restore_insns): Remove unused variable base_offset.
- (microblaze_expand_prologue): Remove unused variable insn.
- (microblaze_secondary_reload): Adjust type to match target.h .
- (microblaze_elf_in_small_data_p): Move declarations to start of block.
- (microblaze_expand_move): Likewise.
- * config/microblaze/microblaze.h (LARGE_INT):
- Avoid signed / unsigned comparisons.
- (ASM_OUTPUT_ALIGNED_COMMON, ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
- (ASM_FORMAT_PRIVATE_NAME): Make format specifier match printed data.
- (ASM_FINISH_DECLARE_OBJECT): Likewise. Constify name.
-
-2010-11-26 Michael Matz <matz@suse.de>
-
- * tree-ssa-copy.c (fini_copy_prop): Don't DCE when we have loops.
-
- * passes.c (init_optimization_passes): Remove superfluous
- copy-prop pass.
-
-2010-11-26 Richard Guenther <rguenther@suse.de>
-
- PR lto/46648
- * gimple.c (gtc_visit): Do not return true for members of an
- SCC still being processed but the current lattice value of
- the member. Treat SCC members comparison state as lattice,
- starting at equal, eventually dropping to unequal.
- (gimple_types_compatible_p_1): Likewise.
-
-2010-11-26 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/46559
- * dwarf2out.c (dwarf2out_finish): Use comp_unit_die as root
- for location list processing.
-
-2010-11-26 Richard Guenther <rguenther@suse.de>
-
- PR lto/46560
- * cgraph.c (cgraph_clone_edge): Clone call_stmt dependent
- flags manually.
-
-2010-11-26 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.c (print_operand_address): Replace assert with
- error message.
- (print_operand): Replace assertions, gcc_unreachable and
- fatal_insn with error messages.
-
-2010-11-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46665
- * tree-ssa-structalias.c (pt_solution_set_var): Use DECL_PT_UID.
-
-2010-11-26 Ian Bolton <ian.bolton@arm.com>
-
- * config/arm/arm.c (arm_option_override): enable loop array
- prefetching at -O3 for suitable targets, and configure params.
- * config/arm/arm-protos.h (struct tune_params): Add fields for
- configuring loop array prefetching.
-
-2010-11-26 Christian Borntraeger <borntraeger@de.ibm.com>
-
- * config/s390/2817.md (z196_crack): Add z196_g3 as possible slot.
-
-2010-11-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46664
- * tree-affine.c (aff_combination_to_tree): Add rest last.
-
-2010-11-26 Michael Haubenwallner <michael.haubenwallner@salomon.at>
-
- PR target/33637
- * configure.ac: Accept extra arguments for AS_FOR_TARGET,
- LD_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET.
- * configure: Regenerated.
- * exec-tool.in: Not quoting command, may have extra arguments.
-
-2010-11-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46528
- PR debug/46338
- * profile.c (branch_prob): Do not split blocks based on locations
- from debug statements.
-
-2010-11-26 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/46647
- * builtins.c (fold_builtin_memset): Check c is INTEGER_CST instead
- of host_integerp check. Use TREE_INT_CST_LOW instead of tree_low_cst.
-
- PR bootstrap/45700
- * tree.h (build1_stat_loc, build2_stat_loc, build3_stat_loc,
- build4_stat_loc, build5_stat_loc, build6_stat_loc): New inlines.
- (build1_loc, build2_loc, build3_loc, build4_loc, build5_loc,
- build6_loc): Define.
- * fold-const.c (protected_set_expr_location_unshare): New inline.
- (fold_convert_loc, pedantic_non_lvalue_loc): Use it.
- (negate_expr, associate_trees, non_lvalue_loc, omit_one_operand_loc,
- pedantic_omit_one_operand_loc, omit_two_operands_loc,
- fold_truth_not_expr, invert_truthvalue_loc, make_bit_field_ref,
- optimize_bit_field_compare, make_range, fold_range_test, fold_truthop,
- build_fold_addr_expr_with_type_loc, fold_unary_loc, fold_binary_loc,
- fold_indirect_ref_1, build_fold_indirect_ref_loc): Use builN_loc
- instead of buildN followed by SET_EXPR_LOCATION or
- protected_set_expr_location.
- (fold_build1_stat_loc, fold_build2_stat_loc, fold_build3_stat_loc):
- Use buildN_stat_loc instead of buildN_stat followed by
- SET_EXPR_LOCATION.
-
-2010-11-26 Basile Starynkevitch <basile@starynkevitch.net>
-
- * Makefile.in (s-tm-texi): Remove spurous tab.
-
-2010-11-26 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/46258
- * tree-cfg.c (replace_uses_by): Don't mark BBs as altered on
- debug stmts.
-
-2010-11-26 Alexandre Oliva <aoliva@redhat.com>
-
- * toplev.c (finalize): Add no_backend parameter. Don't finish
- passes when preprocessing only. Adjust...
- (do_compile): ... caller.
-
-2010-11-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config/pa/pa.md (negdf2): Condition on !flag_signed_zeros instead of
- flag_unsafe_math_optimizations.
- (negsf2): Likewise.
- Move fnegabs related patterns together. Only use fmpynfadd instruction
- to negate a multiply if !flag_signed_zeros is true.
-
-2010-11-25 Uros Bizjak <ubizjak@gmail.com>
-
- * gengtype-state.c (read_state_structures): Initialize "previous".
-
-2010-11-25 Basile Starynkevitch <basile@starynkevitch.net>
- Jeremie Salvucci <jeremie.salvucci@free.fr>
-
- * gengtype-state.c: Add new file.
-
- * gengtype.c (type count): New variable.
- (new_structure, find_param_structure, create_pointer)
- (create_array): Use it to set state_number in types.
- (dump_everything): Improve comment.
- (main): Call read_state and write_state. Print type_count.
-
- * gengtype.h (type_lineloc): New function.
- (read_state, write_state): New declarations.
-
- * Makefile.in (GENGTYPE_FLAGS): New variable.
- (s-gtype): Run gengtype twice and generate gtype.state.
- (build/gengtype-state.o): New rule.
- (build/gengtype$(build_exeext)): Link gengtype-state.o.
- (mostlyclean): Update comment. Remove gtype.state.
-
-2010-11-25 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/46637
- * combine.c (try_combine): When substing i2dest for i2src, pass
- 1 as last argument even if
- i0_feeds_i1_n && i1_feeds_i2_n && i0dest_in_i0src.
-
-2010-11-25 H.J. Lu <hongjiu.lu@intel.com>
-
- PR middle-end/46647
- * builtins.c (target_char_cast): Check INTEGER_CST instead of
- host_integerp. Replace tree_low_cst with TREE_INT_CST_LOW.
-
-2010-11-25 Joseph Myers <joseph@codesourcery.com>
-
- * target.def (supports_split_stack, except_unwind_info): Take
- gcc_options parameters.
- * targhooks.c (default_except_unwind_info,
- dwarf2_except_unwind_info, sjlj_except_unwind_info): Take
- gcc_options parameters.
- * targhooks.h (default_except_unwind_info,
- dwarf2_except_unwind_info, sjlj_except_unwind_info): Update
- prototypes.
- * doc/tm.texi.in (TARGET_IRA_COVER_CLASSES,
- TARGET_HAVE_NAMED_SECTIONS, TARGET_UNWIND_TABLES_DEFAULT):
- Document that hooks must not be modified.
- (TARGET_EXCEPT_UNWIND_INFO): Refer to opts argument.
- * doc/tm.texi: Regenerate.
- * defaults.h (STACK_OLD_CHECK_PROTECT, STACK_CHECK_PROTECT): Pass
- &global_options to targetm.except_unwind_info.
- * dwarf2out.c (dwarf2out_do_frame, dwarf2out_do_cfi_asm,
- dwarf2out_begin_prologue, dwarf2out_frame_init,
- dwarf2out_frame_finish, dwarf2out_assembly_start): Pass
- &global_options to targetm.except_unwind_info.
- * except.c (init_eh, finish_eh_generation,
- gate_convert_to_eh_region_ranges,
- output_one_function_exception_table): Pass &global_options to
- targetm.except_unwind_info.
- * expr.c (build_personality_function): Pass &global_options to
- targetm.except_unwind_info.
- * function.c (expand_function_end): Pass &global_options to
- targetm.except_unwind_info.
- * hooks.c (hook_bool_bool_gcc_optionsp_false): New.
- * hooks.h (hook_bool_bool_gcc_optionsp_false): Declare.
- * opts.c (finish_options): Pass opts to targetm.except_unwind_info
- and targetm.supports_split_stack. Remove assertions about opts
- and opts_set.
- (common_handle_option): Remove assertions about opts, opts_set and dc.
- * tree-tailcall.c (suitable_for_tail_call_opt_p): Pass
- &global_options to targetm.except_unwind_info.
- * tree.c (build_common_builtin_nodes: Pass &global_options to
- targetm.except_unwind_info.
- * config/arm/arm.c (arm_except_unwind_info): Add gcc_options parameter.
- (arm_compute_func_type, arm_expand_prologue, thumb_pushpop,
- thumb1_expand_prologue, thumb1_output_function_prologue,
- arm_unwind_emit, arm_output_fn_unwind): Update calls to
- arm_except_unwind_info.
- * config/i386/i386.c (ix86_supports_split_stack): Add gcc_options
- parameter.
- * config/ia64/ia64.c (ia64_except_unwind_info): Add gcc_options
- parameter.
- (ia64_output_function_prologue, ia64_add_bundle_selector_before,
- ia64_reorg, ia64_asm_unwind_emit): Update calls to
- ia64_except_unwind_info.
- * config/pa/pa.c (pa_option_override): Pass &global_options to
- targetm.except_unwind_info.
- * config/picochip/picochip-protos.h (picochip_except_unwind_info):
- Remove prototype.
-
-2010-11-25 Kai Tietz <kai.tietz@onevision.com>
-
- * cgraphunit.c (process_function_and_variable_attributes):
- Mark dllexport-ed function/variables as needed.
- * ipa.c (cgraph_externally_visible_p): Make dllexport-ed
- as externally visible.
-
-2010-11-25 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/46585
- * sel-sched-ir.c (return_regset_to_pool): Verify that RS is not NULL.
- (vinsn_init): Skip computation of dependencies for local NOPs.
- (vinsn_delete): Don't try to free regsets for local NOPs.
- (setup_nop_and_exit_insns): Change definition of nop_pattern.
-
-2010-11-25 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/46602
- * sel-sched-ir.c (maybe_tidy_empty_bb): Move checking ...
- (tidy_control_flow): Here.
-
-2010-11-25 Joern Rennecke <amylaar@spamcop.net>
- Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR bootstrap/45888
- * Makefile.in (s-tm-texi): Remove \r occurences from tmp-tm.texi.
- Fix target.def pathname in timestamp comparison.
-
-2010-11-24 Richard Henderson <rth@redhat.com>
-
- * config/ia64/predicates.md (pmpyshr_operand): New.
- * config/ia64/ia64.c (ia64_expand_unpack): New.
- (ia64_expand_widen_mul_v4hi): New.
- (ia64_expand_widen_sum): Update for pattern renames.
- (ia64_expand_dot_prod_v8qi): Likewise.
- * config/ia64/ia64-protos.h: Update.
- * config/ia64/vect.md (vecwider): New mode attribute.
- (vec_widen_umult_lo_v8qi, vec_widen_umult_hi_v8qi): New.
- (vec_widen_smult_lo_v8qi, vec_widen_smult_hi_v8qi): New.
- (pmpyshr2, pmpyshr2_u): New.
- (vec_widen_smult_lo_v4hi, vec_widen_smult_hi_v4hi): New.
- (vec_widen_umult_lo_v4hi, vec_widen_umult_hi_v4hi): New.
- (mulv2si3): New.
- (vec_pack_ssat_v4hi): Rename from pack2_sss.
- (vec_pack_usat_v4hi): Rename from *pack2_uss.
- (vec_pack_ssat_v2si): Rename from pack4_sss.
- (vec_interleave_lowv8qi): Rename from unpack1_l, use the correct
- vec_select operation.
- (vec_interleave_highv8qi): Similarly.
- (mux1_alt): Rename from *mux1_alt.
- (vec_extract_evenv8qi, vec_extract_oddv8qi): New.
- (vec_interleave_lowv4hi): Rename from unpack2_l.
- (vec_interleave_highv4hi): Rename from unpack2_h.
- (mix2_r): Rename from *mix2_r.
- (mix2_l): Similarly.
- (vec_extract_evenodd_helper): New.
- (vec_extract_evenv4hi, vec_extract_oddv4hi): New.
- (vec_interleave_lowv2si): Rename from *unpack4_l.
- (vec_interleave_highv2si): Rename from *unpack4_h.
- (vec_extract_evenv2si, vec_extract_oddv2si): New.
- (vec_interleave_lowv2sf): Rename from fmix_r.
- (vec_interleave_highv2sf): Rename from *fmix_l.
- (vec_extract_evenv2sf, vec_extract_oddv2sf): New.
- (vec_unpacku_lo_<VECINT12>, vec_unpacku_hi_<VECINT12>): New.
- (vec_unpacks_lo_<VECINT12>, vec_unpacks_hi_<VECINT12>): New.
- (vec_pack_trunc_v4hi, vec_pack_trunc_v2si): New.
-
-2010-11-24 Nathan Froyd <froydnj@codesourcery.com>
-
- * targhooks.c (default_except_unwind_info): Remove
- MUST_USE_SJLJ_EXCEPTIONS case.
- * config/h8300/h8300.h (MUST_USE_SJLJ_EXCEPTIONS): Delete.
- * config/h8300/h8300.c (TARGET_EXCEPT_UNWIND_INFO): Define.
- * doc/tm.texi.in (MUST_USE_SJLJ_EXCEPTIONS): Delete.
- * doc/tm.texi: Regenerate.
- * system.h (MUST_USE_SJLJ_EXCEPTIONS): Poison.
-
-2010-11-24 Nathan Froyd <froydnj@codesourcery.com>
-
- * cppbuiltin.c (define_builtin_macros_for_type_sizes): Define
- __FLOAT_WORD_ORDER__ according to FLOAT_WORDS_BIG_ENDIAN.
- * config/dfp-bit.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete.
- * doc/cpp.texi (__FLOAT_WORD_ORDER__): Document.
- * system.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Poison.
-
-2010-11-24 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/46519
- * config/i386/i386.c (ix86_expand_call): Don't check
- TREE_THIS_VOLATILE.
-
-2010-11-24 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/46519
- * config/i386/i386.c (upper_128bits_state): New.
- (block_info_def): Remove upper_128bits_set and done. Add state,
- referenced, count, processed and rescanned.
- (check_avx256_stores): Updated.
- (move_or_delete_vzeroupper_2): Updated. Handle deleted BB_END.
- Call note_stores only if needed. Set referenced and count.
- (move_or_delete_vzeroupper_1): Updated. Set rescan_vzeroupper_p.
- (rescan_move_or_delete_vzeroupper): New.
- (move_or_delete_vzeroupper): Process and rescan all all basic
- blocks instead of predecessor blocks of all exit points.
- (ix86_option_override_internal): Enable vzeroupper optimization
- only for -fexpensive-optimizations and not optimizing for size.
- (use_avx256_p): Removed.
- (init_cumulative_args): Don't set use_avx256_p.
- (ix86_function_arg): Likewise.
- (ix86_expand_move): Likewise.
- (ix86_expand_vector_move_misalign): Likewise.
- (ix86_local_alignment): Likewise.
- (ix86_minimum_alignment): Likewise.
- (ix86_expand_epilogue): Don't check use_avx256_p when generating
- vzeroupper.
- (ix86_expand_call): Likewise.
-
- * config/i386/i386.h (machine_function): Remove use_vzeroupper_p
- and use_avx256_p. Add rescan_vzeroupper_p.
-
-2010-11-24 Joseph Myers <joseph@codesourcery.com>
-
- * toplev.c: Include <signal.h>.
-
-2010-11-24 Richard Guenther <rguenther@suse.de>
-
- PR lto/43218
- * lto-symtab.c (lto_cgraph_replace_node): Mark edges with
- conflicting function signatures as non-inlineable.
-
-2010-11-24 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/46614
- * sched-deps.c (NON_FLUSH_JUMP_KIND, NON_FLUSH_JUMP_P): Define.
- (deps_analyze_insn): Mark JUMP_INSNs in
- last_pending_memory_flush that weren't added through
- flush_pending_lists with NON_FLUSH_JUMP_KIND.
- (sched_analyze_2, sched_analyze_insn): Check NON_FLUSH_JUMP_P
- on INSN_LIST instead of JUMP_P check on its operand.
- * sched-rgn.c (concat_INSN_LIST): Copy over REG_NOTE_KIND.
-
-2010-11-24 Richard Guenther <rguenther@suse.de>
-
- * lto-streamer-in.c (input_gimple_stmt): Use types_compatible_p.
-
-2010-11-24 Richard Guenther <rguenther@suse.de>
-
- PR lto/46606
- * lto-streamer-in.c (input_gimple_stmt): When we cannot find
- a FIELD_DECL that is type correct issue a warning and fixup
- with a VIEW_CONVERT_EXPR.
-
-2010-11-24 Basile Starynkevitch <basile@starynkevitch.net>
-
- * doc/invoke.texi (Options for Debugging Your Program or GCC):
- Explain static numbering of dump files.
-
-2010-11-24 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (user_vect_verbosity_level): New Variable entry.
- (ftree-vectorizer-verbose=): Mark as UInteger.
- * flag-types.h (enum vect_verbosity_levels): Move from enum
- verbosity_levels in tree-vectorizer.h.
- * opts.c: Don't include tree.h.
- (vect_set_verbosity_level): Move from tree-vectorizer.c. Use
- gcc_options parameter; take integer option argument.
- (common_handle_option): Update call to vect_set_verbosity_level.
- * tree-vectorizer.c (user_vect_verbosity_level): Remove.
- (vect_set_verbosity_level): Move to opts.c.
- (vect_verbosity_level, vect_print_dump_info): Update for change of
- enum name.
- * tree-vectorizer.h (enum verbosity_levels): Move to flag-types.h.
- (vect_print_dump_info): Update for change of enum name.
- * tree.h (vect_set_verbosity_level): Remove.
- * Makefile.in (opts.o): Update dependencies.
-
-2010-11-24 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/46629
- * cfgexpand.c (maybe_cleanup_end_of_block): Test NEXT_INSN (insn)
- instead of insn with any_condjump_p.
-
-2010-11-24 Mingjie Xing <mingjie.xing@gmail.com>
-
- * config/mips/loongson.md: Change the description comment of the file
- and update the copyright years.
- (define_insn "<u>div<mode>3): Add loongson3a support.
- (define_insn "<u>mod<mode>3"): Likewise.
- * config/mips/mips.md: Rename mul<mode>3_mul3_ls2ef to
- mul<mode>3_mul3_loongson.
- (define_expand "mul<mode>3"): Add TARGET_LOONGSON_3A.
- (define_insn "mul<mode>3_mul3_loongson"): Add loongson3a support.
-
-2010-11-23 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (initial_max_fld_align, flag_debug_asm,
- flag_dump_rtl_in_asm, flag_dump_all_passed, rtl_dump_and_exit,
- flag_print_asm_name, graph_dump_format, help_printed,
- help_columns, flag_opts_finished): New Variable entries.
- (fdbg-cnt-list, fdbg-cnt=, fdebug-prefix-map=, frandom-seed,
- frandom-seed=): Mark deferred.
- (fsched-verbose=): Use UInteger and Var.
- * flags.h (set_struct_debug_option, flag_print_asm_name,
- rtl_dump_and_exit, flag_debug_asm, flag_dump_rtl_in_asm,
- graph_dump_format): Don't declare here.
- * haifa-sched.c (sched_verbose_param, fix_sched_param): Remove.
- * opts-global.c: Include dbgcnt.h and debug.h.
- (decode_options): Pass location to finish_options.
- (handle_common_deferred_options): Check flag_dump_all_passed.
- Handle OPT_fdbg_cnt_, OPT_fdbg_cnt_list, OPT_fdebug_prefix_map_,
- OPT_frandom_seed and OPT_frandom_seed_. Don't assert on
- OPT_fstack_limit.
- * opts.c: Don't include toplev.h, dbgcnt.h or debug.h.
- (set_struct_debug_option): Add location_t parameter. Update
- recursive call. Use error_at.
- (default_options_optimization): Use error_at.
- (finish_options): Add location_t parameter. Use
- opts->x_flag_opts_finished instead of first_time_p. Use
- opts->x_optimize instead of optimize. Use error_at. Pass
- location to inform.
- (print_filtered_help): Use opts->x_help_printed to track what
- options have been printed.
- (print_specific_help): Use opts->x_help_columns to track number of
- columns.
- (common_handle_option): Pass locations and gcc_options pointers to
- more functions. Use warning_at instead of fnotice and warning.
- Don't handle OPT_fdbg_cnt_, OPT_fdbg_cnt_list or
- OPT_fdebug_prefix_map_. Use error_at. Set
- opts->x_initial_max_fld_align; don't set maximum_field_alignment.
- Don't handle OPT_frandom_seed or OPT_frandom_seed_. Don't handle
- OPT_fsched_verbose_.
- (handle_param): Add location_r parameter. Use error_at.
- (set_debug_level): Add location_r parameter. Use error_at and
- warning_at.
- (setup_core_dumping): Add diagnostic_context parameter.
- (decode_d_option): Add gcc_options, location_t and
- diagnostic_context parameters and use them instead of global
- state. Use warning_at.
- (enable_warning_as_error): Use error_at.
- * opts.h (finish_options): Update prototype.
- (set_struct_debug_option): Declare here.
- * rtl.h (fix_sched_param): Remove.
- * stor-layout.c (initial_max_fld_align): Remove.
- * toplev.c (rtl_dump_and_exit, flag_print_asm_name,
- graph_dump_format, flag_debug_asm, flag_dump_rtl_in_asm): Remove.
- (process_options): Set maximum_field_alignment.
- * tree.h (initial_max_fld_align) Don't declare here.
- * Makefile.in (opts.o, opts-global.o): Update dependencies.
-
-2010-11-23 Joseph Myers <joseph@codesourcery.com>
-
- * flag-types.h (struct visibility_flags): Don't declare here.
- * flags.h (strip_off_ending, fast_math_flags_set_p,
- fast_math_flags_struct_set_p): Declare here.
- (visibility_options): Don't declare here.
- * opts-common.c (option_enabled, get_option_state): Move from
- opts.c.
- * opts-global.c: Include diagnostic.h instead of
- diagnostic-core.h. Include tree.h, langhooks.h, lto-streamer.h
- and toplev.h.
- (const_char_p, ignored_options, in_fnames, num_in_fnames,
- write_langs, complain_wrong_lang, postpone_unknown_option_warning,
- print_ignored_options, unknown_option_callback,
- post_handling_callback, lang_handle_option, add_input_filename,
- read_cmdline_options, initial_lang_mask, init_options_once,
- decode_cmdline_options_to_array_default_mask,
- set_default_handlers, decode_options): Move from opts.c.
- (print_ignored_options): Use warning_at instead of saving and
- restoring input_location.
- * opts.c: Include <signal.h> and <sys/resource.h>. Include rtl.h
- instead of expr.h. Don't include langhooks.h, except.h or
- lto-streamer.h. Add more comments on includes.
- (strip_off_ending, setup_core_dumping, decode_d_option): Move from
- toplev.c.
- (visibility_options): Move to c-family/c-common.c.
- (const_char_p, ignored_options, in_fnames, num_in_fnames,
- write_langs, complain_wrong_lang, postpone_unknown_option_warning,
- print_ignored_options, unknown_option_callback,
- post_handling_callback, lang_handle_option, add_input_filename,
- read_cmdline_options, initial_lang_mask, init_options_once,
- decode_cmdline_options_to_array_default_mask,
- set_default_handlers, decode_options): Move to opts-global.c.
- (target_handle_option, default_options_optimization,
- finish_options, common_handle_option): Remove static.
- (option_enabled, get_option_state): Move to opts-common.c.
- * opts.h (common_handle_option, target_handle_option,
- finish_options, default_options_optimization): Declare.
- * toplev.c: Don't include <signal.h> or <sys/resource.h>.
- (setup_core_dumping, strip_off_ending, decode_d_option): Move to
- opts.c.
- * toplev.h (strip_off_ending, decode_d_option,
- fast_math_flags_set_p, fast_math_flags_struct_set_p): Don't
- declare here.
- * Makefile.in (opts.o, opts-global.o): Update dependencies.
-
-2010-11-23 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR driver/42690
- * gcc.c (LINK_COMMAND_SPEC): Remove hard-coded pass-through plugin
- options, replace by call of pass-through-libs spec function to process
- link_gcc_c_sequence spec.
- (lto_libgcc_spec): Delete variable.
- (static_specs[]): Remove related entry.
- (static_spec_functions[]): Add new entry for pass-through-libs.
- (main): Don't generate deleted lto_libgcc_spec.
- (pass_through_libs_spec_func): New function to implement the new
- pass-through-libs spec function.
- * doc/invoke.texi (pass-through-libs): Document new spec function.
-
-2010-11-23 Joseph Myers <joseph@codesourcery.com>
-
- * doc/options.texi (Warning, Optimization): Document.
-
-2010-11-23 Jan Hubicka <jh@suse.cz>
-
- * tree.h (DECL_HAS_IMPLICIT_SECTION_NAME_P): New macro.
- (tree_decl_with_vis): Add implicit_section_name_p.
- * targhooks.h (default_function_section): Declare.
- * target.def (function_section): New hook.
- * defaults.h (HOT_TEXT_SECTION_NAME,
- UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove.
- * predict.c (choose_function_section): Remove.
- (estimate_bb_frequencies): Do not use choose_function_section.
- * coretypes.h (enum node_frequency): Move here from cgraph.h
- * cgraph.h (enum node_frequency): Remove.
- * varasm.c (initialize_cold_section_name, unlikely_text_section,
- unlikely_text_section_p): Remove.
- (named_subsection_entry): New structure.
- (get_text_section): New function.
- (default_function_section): New function.
- (function_section_1): Break out from ...; handle profile info.
- (function_section): ... here.
- (unlikely_text_section): Remove.
- (unlikely_text_section_p): Use function_section_1.
- (assemble_start_function): Do not initialize cold section.
- (default_section_type_flags): Do not special case cold subsection.
- (switch_to_section): Likewise.
- * output.h (get_text_section): Define.
- * config/i386/winnt.c: Do not special case cold section.
- * config/darwin-protos.h (darwin_function_section): Declare.
- * config/microblaze/microblaze.h (HOT_TEXT_SECTION_NAME,
- UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove.
- * config/ia64/hpux.h (HOT_TEXT_SECTION_NAME,
- UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove.
- (TARGET_ASM_FUNCTION_SECTION): Define to ia64_hpux_function_section.
- * config/ia64/ia64.c (ia64_hpux_function_section): New function.
- * config/darwin.c (machopic_select_section): Use
- darwin_function_section.
- (darwin_function_section): New function.
- * config/darwin.h (HOT_TEXT_SECTION_NAME,
- UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove.
- (TARGET_ASM_FUNCTION_SECTION): Define.
- * system.h (HOT_TEXT_SECTION_NAME,
- UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Poison.
-
-2010-11-23 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.h (LINK_COMMAND_SPEC_A): Use %(link_gcc_c_sequence).
- LINK_GCC_C_SEQUENCE_SPEC: Define new macro.
-
-2010-11-23 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/46499
- * cfgexpand.c (maybe_cleanup_end_of_block): Remove also BARRIERs
- following unconditional jumps.
-
-2010-11-23 Richard Guenther <rguenther@suse.de>
-
- * doc/md.texi (386 constraints): Clarify A constraint documentation.
-
-2010-11-23 Basile Starynkevitch <basile@starynkevitch.net>
- Jeremie Salvucci <jeremie.salvucci@free.fr>
-
- * gengtype.c (enum typekind, struct options)
- (struct nested_ptr_data, struct pair, NUM_PARAM)
- (enum gc_used_num, struct type, UNION_P, UNION_OR_STRUCT_P):
- Move to gengtype.h.
- (string_type, scalar_nonchar, scalar_nonchar, scalar_char):
- Remove static, add zero state_number.
- (typedefs, structures, param_structs, variables): Remove static.
- (create_option): Remove.
- (create_string_option, create_type_option, create_nested_option):
- New functions.
- (create_nested_ptr_option): Use create_nested_option.
- (note_variable, adjust_field_rtx_def, adjust_field_type): Call the
- new create*option functions.
- (process_gc_options): Adjust for discriminated option.
- (output_mangled_typename): Handle TYPE_NONE.
- (walk_type): Test option kinds.
- (write_types_process_field): Handle TYPE_NONE and TYPE_ARRAY.
- (write_func_for_structure, write_type, write_local, write_root)
- (write_roots, note_def_vec, dump_options): Adjust for
- discriminated option.
-
- * gengtype.h (typedefs, structures, param_structs, variables
- enum typekind): Move from gengtype.c
- (enum option_kind): New discriminating enumeration.
- (struct options): Becomes discriminated.
- (struct nested_ptr_data): Nove from gengtype.c
- (create_string_option, create_type_option, create_nested_option)
- (create_nested_ptr_option): New functions
- (struct pair, enum_gc_used_enum, NUM_PARAM, struct type, UNION_P)
- (UNION_OR_STRUCT_P): Move from gengtype.c
-
- * gengtype-parse.c (str_optvalue_opt, type_optvalue, option): Make
- discriminated options.
-
-2010-11-23 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid doing work
- twice. Avoid re-allocating the ops vector all the time.
-
-2010-11-23 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-alias.c (refs_may_alias_p_1): Avoid calls to
- is_gimple_min_invariant, group tree code checks to allow
- combining them.
- (stmt_may_clobber_ref_p_1): Check for SSA_NAME instead
- of is_gimple_reg.
-
-2010-11-23 Eric Botcazou <ebotcazou@adacore.com>
-
- * config.gcc (sparc*-*-*): Reorder.
-
-2010-11-23 Basile Starynkevitch <basile@starynkevitch.net>
-
- * gengtype.c (header_dot_h_frul, source_dot_c_frul):
- Remove ENABLE_CHECKING around DBGPRINTF.
-
-2010-11-22 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (exit_after_options, write_symbols, debug_info_level,
- use_gnu_debug_info_extensions): New Variable entries.
- (fprofile-dir=): Use Var.
- * flag-types.h (enum debug_info_level): Rename to enum
- debug_info_levels.
- * flags.h (write_symbols, debug_info_level,
- use_gnu_debug_info_extensions): Remove declarations.
- * opts.c (exit_after_options, write_symbols, debug_info_level): Remove.
- (set_struct_debug_option): Make static variables const.
- (use_gnu_debug_info_extensions): Remove.
- (set_debug_level, print_filtered_help, print_specific_help,
- fast_math_flags_set_p): Take gcc_options parameters and use them
- in place of global variables.
- (print_filtered_help): Make new_help non-static.
- (print_specific_help): Update call to print_filtered_help.
- (common_handle_option): Update calls to print_specific_help. Use
- gcc_options structure for more settings. Make --help table
- const. Don't handle OPT_fprofile_dir_ here. Update calls to
- set_debug_level.
- * toplev.c (profile_data_prefix): Remove.
- * toplev.h (profile_data_prefix, exit_after_options): Remove
- declarations.
- (fast_math_flags_set_p): Update prototype.
- * cppbuiltin.c (define_builtin_macros_for_compilation_flags):
- Update call to fast_math_flags_set_p.
-
-2010-11-22 Richard Henderson <rth@redhat.com>
-
- PR target/46434
- * config/crx/crx.c (crx_addr_reg): Rename from crx_addr_reg_p;
- return the address register extracted.
- (crx_decompose_address): Update the extracted address register.
-
-2010-11-22 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
-
- PR driver/43335
- * gcc.c (main): Don't crash when lto-wrapper program is not found.
-
-2010-11-22 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/46608
- * config/picochip/picochip.c (picochip_secondary_reload): Make static.
- * config/picochip/picochip-protos.h: Don't include "target.h" .
- (picochip_secondary_reload): Don't declare.
-
- PR target/46613
- * config/m32c/m32c-protos.h (m32c_conditional_register_usage): Declare.
- * config/m32c/m32c.c (m32c_conditional_register_usage): No longer
- static.
-
-2010-11-22 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/46609
- * gengtype.c (header_dot_h_frul): Check ENABLE_CHECKING.
- (source_dot_c_frul): Likewise.
-
-2010-11-22 Basile Starynkevitch <basile@starynkevitch.net>
-
- * gimple-pretty-print.c (dump_bb_header): Add check for cfun.
-
-2010-11-22 Paolo Bonzini <bonzini@gnu.org>
-
- PR bootstrap/44970
- * Makefile.in (fwprop.o) Add sparseset.h.
- * fwprop.c: Include sparseset.h
- (struct find_occurrence_data, find_occurrence_callback,
- find_occurrence): Remove.
- (active_defs, active_defs_check, register_active_defs,
- update_df_init, update_uses): New.
- (update_df): Rewrite.
- (try_fwprop_subst, forward_propagate_asm): Add calls to
- update_df_init and update_df.
- (fwprop_init): Allocate active_defs and active_defs_check.
- (fwprop_done): Free them.
- (fwprop, fwprop_addr): Adjust comments.
- * df.h (df_uses_create): Declare.
- * df-scan.c (df_install_ref_incremental): Break out of df_ref_create.
- (df_ref_create): Return result of df_ref_create_structure directly.
- (df_ref_create_structure): Call df_install_ref_incremental when
- no collection_rec is passed.
- (df_ref_record): Do not create multiword hard reg info when no
- collection_rec is passed.
- (df_uses_create): New.
-
-2010-11-21 Uros Bizjak <ubizjak@gmail.com>
-
- PR middle-end/43057
- * fold-const.c (pedantic_non_lvalue_loc): Unshare x before
- setting location.
-
-2010-11-22 Richard Guenther <rguenther@suse.de>
-
- * gimple-fold.c (maybe_fold_reference): When canonicalizing
- MEM_REFs, preserve volatileness.
- * cgraphbuild.c (mark_address): Properly check for FUNCTION_DECL
- addresses.
-
-2010-11-22 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-ccp.c (get_base_constructor): Remove superfluous breaks.
-
-2010-11-22 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/45652
- * alias.c (get_reg_base_value): New.
- * rtl.h (get_reg_base_value): Add prototype.
- * sel-sched.c (init_regs_for_mode): Use it. Don't use registers with
- non-null REG_BASE_VALUE for renaming.
-
-2010-11-22 Jeremie Salvucci <jeremie.salvucci@free.fr>
- Basile Starynkevitch <basile@starynkevitch.net>
-
- * gengtype.c: Include xregex.h and obstack.h
- Added comments about role of get_output_file_with_visibility and
- our regexpr machinery.
- (frul_actionrout_t, struct file_rule_st): New.
- (hader_dot_h_frul, source_dot_c_frul): New functions.
- (NULL_REGEX, NULL_FRULACT): New.
- (files_rules): New.
- (matching_file_name_substitute): New function.
- (get_output_file_with_visibility): Updated comments and rewritten
- to use the new files_rules machinery.
-
- * Makefile.in (XREGEX_H): Added variable.
- (build/gengtype.o): Added dependencies for xregex.h and obstack.h
-
-2010-11-21 Nathan Froyd <froydnj@codesourcery.com>
-
- * system.h (FUNCTION_ARG_BOUNDARY): Really poison.
-
-2010-11-21 Nathan Froyd <froydnj@codesourcery.com>
-
- * target.def (conditional_register_usage): Define.
- * reginfo.c (init_reg_sets_1): Call
- targetm.conditional_register_usage.
- * system.h (CONDITIONAL_REGISTER_USAGE): Poison.
- * doc/tm.texi.in (CONDITIONAL_REGISTER_USAGE): Adjust language
- for making it a hook.
- * doc/tm.texi: Regenerate.
- * config/alpha/alpha.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/alpha/alpha.c (alpha_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/arc/arc.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/arc/arc.c (arc_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/arm/arm.c (arm_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/bfin/bfin.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/bfin/bfin-protos.h (conditional_register_usage): Delete.
- * config/bfin/bfin.c (conditional_register_usage): Move code into...
- (bfin_conditional_register_usage): ...here. New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/cris/cris.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/cris/cris-protos.h (cris_conditional_register_usage): Delete.
- * config/cris/cris.c (cris_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/fr30/fr30.h (FIXED_REGISTERS): Adjust comment.
- * config/frv/frv.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/frv/frv-protos.h (frv_conditional_register_usage): Delete.
- * config/frv/frv.c (frv_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/h8300/h8300.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/h8300/h8300.c (h8300_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/i386/i386.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/i386/i386-protos.h (ix86_conditional_register_usage): Delete.
- * config/i386/i386.c (ix86_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/m32c/m32c.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/m32c/m32c-protos.h (m32c_conditional_register_usage): Delete.
- * config/m32c/m32c.c (m32c_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/m32r/m32r.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/m32r/m32r.c (m32r_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/m68hc11/m68hc11.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/m68hc11/m68hc11-protos.h (m68hc11_conditional_register_usage):
- Delete.
- * config/m68hc11/m68hc11.c (m68hc11_conditional_register_usage): Make
- static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/mep/mep.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/mep/mep-protos.h (mep_conditional_register_usage): Delete.
- * config/mep/mep.c (mep_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/mips/mips.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/mips/mips-protos.h (mips_conditional_register_usage): Delete.
- * config/mips/mips.c (mips_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/mmix/mmix.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/mmix/mmix-protos.h (mmix_conditional_register_usage): Delete.
- * config/mmix/mmix.c (mmix_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/mn10300/mn10300.c (mn10300_conditional_register_usage):
- ...here. New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/pa/pa32-regs.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/pa/pa64-regs.h (CONDITIONAL_REGISTER_USAGE): ...with this...
- * config/pa/pa.c (pa_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/pdp11/pdp11.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/pdp11/pdp11.c (pdp11_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/rs6000/rs6000-protos.h (rs6000_conditional_register_usage):
- Delete.
- * config/rs6000/rs6000.c (rs6000_conditional_register_usage): Make
- static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/rx/rx.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/rx/rx-protos.h (rx_conditional_register_usage): Delete.
- * config/rx/rx.c (rx_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/s390/s390.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/s390/s390-protos.h (s390_conditional_register_usage): Delete.
- * config/s390/s390.c (s390_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/score/score.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/score/score.c (score_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/sh/sh.c (sh_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/sparc/sparc.c (sparc_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/spu/spu.h (CONDITIONAL_REGISTER_USAGE): Delete.
- * config/spu/spu-protos.h (spu_conditional_register_usage): Delete.
- * config/spu/spu.c (spu_conditional_register_usage): Make static.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
- * config/v850/v850.h (CONDITIONAL_REGISTER_USAGE): Move logic...
- * config/v850/v850.c (v850_conditional_register_usage): ...here.
- New function.
- (TARGET_CONDITIONAL_REGISTER_USAGE): Define.
-
-2010-11-21 Jan Hubicka <jh@suse.cz>
- Dominique d'Humieres <dominiq@lps.ens.ft>
-
- PR target/46510
- * tree-emutls.c (get_emutls_init_templ_addr, new_emutls_decl): Do not
- finalize external decls.
-
-2010-11-21 Joseph Myers <joseph@codesourcery.com>
-
- * system.h (strerror): Poison.
-
-2010-11-21 Richard Henderson <rth@redhat.com>
-
- * config/ia64/ia64.c (ia64_expand_builtin): Use the correct mode
- for infq/huge_valq.
-
-2010-11-21 Richard Henderson <rth@redhat.com>
-
- PR rtl-optimization/46571
- * gcse.c (hash_scan_set): Use next_nonnote_nondebug_insn.
- (compute_hash_table_work): Use NONDEBUG_INSN_P.
-
-2010-11-21 Paul Koning <ni1d@arrl.net>
-
- * config/mips/pdp11.md (negsi2): Fix wrong code.
-
-2010-11-21 Paul Koning <ni1d@arrl.net>
-
- * config/mips/pdp11.c (pdp11_legitimate_address_p): New function.
- * config/mips/pdp11.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
-
-2010-11-21 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/mips/mips.c (machine_function): Rename load_label_length to
- load_label_num_insns.
- (mips_load_label_length): Rename to...
- (mips_load_label_num_insns): ...this. Adjust to first renaming.
- (mips_adjust_insn_length): Adjust to second renaming. Fix thinko.
-
-2010-11-21 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/46533
- * config/alpha/predicates.md (direct_call_operand): Return false
- for !TARGET_SMALL_TEXT targets.
-
-2010-11-20 Joseph Myers <joseph@codesourcery.com>
-
- * doc/tm.texi.in (HANDLE_SYSV_PRAGMA,
- HANDLE_PRAGMA_PACK_PUSH_POP): Remove.
- (HANDLE_PRAGMA_PACK_WITH_EXPANSION): Don't refer to HANDLE_SYSV_PRAGMA.
- * doc/tm.texi: Regenerate.
- * system.h (HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_SYSV_PRAGMA,
- HANDLE_PRAGMA_WEAK): Poison.
- * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/alpha/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/alpha/osf5.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/alpha/vms.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/arm/arm.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/cris/cris.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/darwin.h (HANDLE_SYSV_PRAGMA): Don't define.
- (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/elfos.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/freebsd.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/i386/cygming.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/i386/djgpp.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Don't define.
- (HANDLE_PRAGMA_WEAK): Don't undefine.
- * config/i386/netware.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/i386/vxworks.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/ia64/hpux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/interix.h (HANDLE_SYSV_PRAGMA): Don't define.
- (HANDLE_PRAGMA_WEAK): Don't undefine.
- * config/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/m32r/linux.h (HANDLE_SYSV_PRAGMA): Don't define.
- (HANDLE_PRAGMA_PACK): Don't undefine.
- * config/m32r/m32r.h (HANDLE_SYSV_PRAGMA): Don't undefine.
- * config/mep/mep.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/mips/elf.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/mips/sde.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/netbsd.h (HANDLE_SYSV_PRAGMA): Don't define.
- (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/openbsd.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/pa/pa-hpux.h (HANDLE_SYSV_PRAGMA): Don't define.
- (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/rs6000/sysv4.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/rx/rx.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/score/elf.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/spu/spu.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
- * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Don't define.
- * config/xtensa/elf.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
-
-2010-11-20 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/31100
- * config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP): Move to...
- * config/sparc/sol2.h (ASM_OUTPUT_ALIGN_WITH_NOP): ...here.
- * config/sparc/sol2-gas.h (ASM_OUTPUT_ALIGN_WITH_NOP): Undefine.
-
-2010-11-20 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (ld_plugin_symbol_resolution_names): New.
- (dump_cgraph_node): Dump resolution.
- * cgraph.h (ld_plugin_symbol_resolution_names): Declare.
- (cgraph_comdat_can_be_unshared_p): Dclare.
- * lto-streamer-out.c (produce_symtab): Use
- cgraph_comdat_can_be_unshared_p.
- * ipa.c (cgraph_address_taken_from_non_vtable_p): New function.
- (cgraph_comdat_can_be_unshared_p): New function based on logic
- in cgraph_externally_visible_p.
- (cgraph_externally_visible_p): Use it.
- (varpool_externally_visible_p): Virtual tables can be unshared.
- * varpool.c (dump_varpool_node): Dump resolution.
-
-2010-11-20 Jan Hubicka <jh@suse.cz>
-
- * stmt.c (lshift_cheap_p): Support properly optimize_insn_for_speed_p.
-
-2010-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR other/46202
- * Makefile.in (install_sh, INSTALL_STRIP_PROGRAM): New variables.
- (AR_FOR_TARGET, RANLIB_FOR_TARGET, STRIP_FOR_TARGET): Fix
- shell quoting.
- (STRIP_FOR_TARGET): Look for in-tree strip under name strip-new.
- (install-strip): New target.
- (STRIPPROG): New variable, exported if STRIP is set.
- * doc/install.texi (Final install): Minor markup and code style
- fixes. Document install-strip target.
-
-2010-11-20 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11-protos.h (pdp11_initial_elimination_offset,
- pdp11_regno_reg_class): New functions.
- * config/pdp11/pdp11.md (define_constants): Add register numbers.
- * config/pdp11/pdp11.c (pdp11_regno_reg_class,
- pdp11_sp_frame_offset, pdp11_initial_elimination_offset): New
- functions.
- * config/pdp11/pdp11.h (FIXED_REGISTERS, CALL_USED_REGISTERS): Add
- frame pointer and argument pointer pseudo-registers.
- (ARG_POINTER_REGNUM): Define.
- (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Add frame pointer and
- argument pointer.
- (FIRST_PARM_OFFSET): Update for argument pointer.
- (INITIAL_FRAME_POINTER_OFFSET): Delete.
- (ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET): New macros.
- (REGNO_OK_FOR_BASE_P, REGNO_OK_FOR_INDEX_P, REGISTER_NAMES): Add
- frame pointer and argument pointer.
-
-2010-11-20 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/46561
- * tree-parloops.c (try_create_redunction_list): Ignore debug stmts
- when looking for immediate uses.
-
- PR tree-optimization/45830
- * stmt.c (expand_switch_using_bit_tests_p): New function.
- (expand_case): Use it.
- * tree.h (expand_switch_using_bit_tests_p): New prototype.
- * tree-switch-conversion.c (struct switch_conv_info): Add
- bit_test_uniq, bit_test_count and bit_test_bb fields.
- (check_range): Fix a comment.
- (check_process_case): Compute bit_test_uniq and bit_test_count.
- (create_temp_arrays): Use XCNEWVEC, merge 3 arrays into one
- allocation.
- (free_temp_arrays): Use XDELETEVEC, adjust for the 3 arrays merging.
- (constructor_contains_same_values_p): Use FOR_EACH_VEC_ELT.
- (array_value_type): New function.
- (build_one_array): Use it, if it returned different type,
- fold_convert all constructor fields and convert back to the
- wider type in the generated code.
- (process_switch): Initialize bit_test_uniq, bit_test_count and
- bit_test_bb fields. Don't optimize if expand_switch_using_bit_tests_p
- returned true.
-
-2010-11-19 Michael Matz <matz@suse.de>
-
- PR tree-optimization/46077
- * tree-chrec.c (eq_evolutions_p): Accept some expressions.
-
-2010-11-19 Anatoly Sokolov <aesok@post.ru>
-
- * config/mn10300/mn10300.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
- * config/mn10300/mn10300.c (mn10300_asm_output_addr_const_extra): New
- function.
- (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
-
-2010-11-19 Uros Bizjak <ubizjak@gmail.com>
-
- * mode-switching.c (optimize_mode_switching): Use
- FOR_BB_INSNS instead of open-coded loop.
- * cfgrtl.c (redirect_branch_edge): Ditto.
-
-2010-11-19 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/46436
- * config/m68hc11/m68hc11.c (m68hc11_gen_highpart): Split shift count
- to accomodate 32 bit HOST_WIDE_INT.
- (m68hc11_emit_logical): Remove unused variable insn.
- (m68hc11_check_z_replacement) <CLOBBER>: Set this_insn_uses_ix and
- this_insn_uses_iy before use.
-
- PR target/46434
- * config/crx/crx.c (crx_expand_epilogue): Remove unused variable.
-
-2010-11-19 Joseph Myers <joseph@codesourcery.com>
-
- PR c/46547
- * c-tree.h (in_late_binary_op): Move to c-family/c-common.h.
- * c-typeck.c (in_late_binary_op): Move to c-family/c-common.c.
-
-2010-11-19 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * doc/extend.texi (Function attributes): Document PowerPC target
- attributes that are supported.
- (Pragmas): Document that PowerPC now supports target pragmas.
-
- * doc/options.texi (TargetVariable): Document TargetVariable,
- HeaderInclude, and SourceInclude.
-
- * doc/invoke.texi (-mfused-madd): Document that -mfused-madd is
- mapped to -ffp-contract=fast, and -mno-fused-madd is mapped to
- -ffp-contract=off.
-
- * optc-gen.awk: Add support for TargetVariable, HeaderInclude, and
- SourceInclude directives. Fix a cut+paste error with target save
- enum variables. Sort enums in the structures after ints and
- before shorts.
- * opth-gen.awk: Ditto.
-
- * configure.ac: Add support for HeaderInclude and SourceInclude option
- directives to add the appropriate files to the dependency lists.
- * configure: Regenerate.
- * Makefile.in (OPTIONS_H_EXTRA): New variable for HeaderInclude.
- (OPTIONS_C_EXTRA): New variable for SourceInclude.
- (OPTIONS_H): Add $(OPTIONS_H_EXTRA).
- (options.o): Add $(OPTIONS_C_EXTRA) dependency.
- (gcc-options.o): Ditto.
- * opt-include.awk: New awk script to handle HeaderInclude and
- TargetInclude.
-
- * config/rs6000/aix.opt (-mxl-compat): Mark option as Save so it
- gets saved in the target options.
- * config/rs6000/linux64.opt (-mprofile-kernel): Ditto.
- * config/rs6000/sysv4.opt (-mbit-align): Ditto.
- (-mprototype): Ditto.
- (-mbit-word): ditto.
- (-mregnames): Ditto.
- (-msecure-plt): Ditto.
- (-mbss-plt): Ditto.
- * config/rs6000/rs6000.opt (-mpowerpc-gpopt): Ditto.
- (-mpowerpc-gfxopt): Ditto.
- (-mmfcrf): Ditto.
- (-mpopcntb): Ditto.
- (-mfprnd): Ditto.
- (-mcmpb): Ditto.
- (-mmmfpgpr): Ditto.
- (-maltivec): Ditto.
- (-mhard-dfp): Ditto.
- (-mmulhw): Ditto.
- (-mdlmzb): Ditto.
- (-mmultiple): Ditto.
- (-mstring): Ditto.
- (-mpopcntd): Ditto.
- (-mfriz): Ditto.
- (-mvsx): Ditto.
- (-mno-update): Ditto.
- (-mavoid-indexed-addresses): Ditto.
- (-mtls-markers): Ditto.
- (-msched-epilog): Ditto.
- (-msched-prolog): Ditto.
- (-maix-struct-return): Ditto.
- (-msvr4-struct-return): Ditto.
- (-mxl-compat): Ditto.
- (-mrecip-precision): Ditto.
- (-mfp-in-toc): Ditto.
- (-msum-in-toc): Ditto.
- (-mvrsave): Ditto.
- (-mblock-move-inline-limit=): Ditto.
- (-misel): Ditto.
- (-mpaired): Ditto.
- (-mlongcall): Ditto.
- (-mgen-cell-microcode): Ditto.
- (-mwarn-cell-microcode): Ditto.
- (-mwarn-altivec-long): Ditto.
- (-mprioritize-restricted-insns=): Ditto.
- (-msingle-float): Ditto.
- (-mdouble-float): Ditto.
- (-msimple-fpu): Ditto.
- (-mxilinx-fpu): Ditto.
- * config/rs6000/aix64.opt (-mpe): Ditto.
-
- * config/rs6000/rs6000.opt (HeaderInclude): Include rs6000-opts.h.
- (rs6000_cpu): Move variable to be a target variable. Rename
- cmodel to rs6000_current_cmodel because of macro conflict. Merge
- -mdebug=<xxx> variables into a single int.
- (rs6000_always_hint): Ditto.
- (rs6000_sched_groups): Ditto.
- (rs6000_align_branch_targets): Ditto.
- (rs6000_sched_costly_dep): Ditto.
- (rs6000_sched_insert_nops): Ditto.
- (rs6000_long_double_type_size): Ditto.
- (rs6000_ieeequad): Ditto.
- (rs6000_altivec_abi): Ditto.
- (rs6000_spe): Ditto.
- (rs6000_spe_abi): Ditto.
- (rs6000_float_gprs): Ditto.
- (rs6000_darwin64_abi): Ditto.
- (can_override_loop_align): Ditto.
- (rs6000_sdata): Ditto.
- (rs6000_tls_size): Ditto.
- (rs6000_current_abi): Ditto.
- (rs6000_traceback): Ditto.
- (rs6000_alignment_flags): Ditto.
- (rs6000_current_cmodel): Ditto.
- (rs6000_recip_control): Ditto.
- (rs6000_cpu_index): Ditto.
- (rs6000_tune_index): Ditto.
- (rs6000_debug): Ditto.
- (rs6000_target_flags_explict): Ditto.
-
- * config/rs6000/rs6000-protos.h (rs6000_pragma_target_parse): Add
- declaration.
-
- * config/rs6000/linux64.h (rs6000_current_cmode): Rename from
- cmodel. Change all uses.
-
- * config/rs6000/rs6000.c (rs6000_always_hint): Move to
- rs6000.opt. Combine -mdebug=<xxx> variables into a single int.
- Rename cmodel to rs6000_current_cmodel.
- (rs6000_sched_groups): Ditto.
- (rs6000_align_branch_targets): Ditto.
- (rs6000_sched_costly_dep): Ditto.
- (rs6000_sched_insert_nops): Ditto.
- (rs6000_long_double_type_size): Ditto.
- (rs6000_ieeequad): Ditto.
- (rs6000_altivec_abi): Ditto.
- (rs6000_spe): Ditto.
- (rs6000_spe_abi): Ditto.
- (rs6000_float_gprs): Ditto.
- (rs6000_darwin64_abi): Ditto.
- (can_override_loop_align): Ditto.
- (rs6000_sdata): Ditto.
- (rs6000_tls_size): Ditto.
- (rs6000_current_abi): Ditto.
- (rs6000_traceback): Ditto.
- (rs6000_alignment_flags): Ditto.
- (rs6000_current_cmodel): Ditto.
- (rs6000_recip_control): Ditto.
- (rs6000_cpu_index): Ditto.
- (rs6000_tune_index): Ditto.
- (rs6000_debug): Ditto.
- (rs6000_target_flags_explict): Ditto.
- (rs6000_sched_insert_nops_str): Make static.
- (rs6000_sched_costly_dep_str): Ditto.
- (rs6000_recip_name): Ditto.
- (rs6000_abi_name): Ditto.
- (rs6000_sdata_name): Ditto.
- (enum rs6000_traceback_name): Move to rs6000-opts.h.
- (rs6000_parse_tls_size_option): Delete.
- (rs6000_valid_attribute_p): New function for target attributes and
- pragmas.
- (rs6000_function_specific_save): Ditto.
- (rs6000_function_specific_restore): Ditto.
- (rs6000_function_specific_print): Ditto.
- (rs6000_can_inline_p): Ditto.
- (rs6000_set_current_function): Ditto.
- (rs6000_inner_target_options): Ditto.
- (rs6000_debug_target_options): Ditto.
- (rs6000_pragma_target_parse): Ditto.
- (TARGET_OPTION_VALID_ATTRIBUTE_P): Define target hooks for target
- attributes and pragmas.
- (TARGET_OPTION_SAVE): Ditto.
- (TARGET_OPTION_RESTORE): Ditto.
- (TARGET_OPTION_PRINT): Ditto.
- (TARGET_CAN_INLINE_P): Ditto.
- (TARGET_SET_CURRENT_FUNCTION): Ditto.
- (POWER_MASKS): Move to file level scope from the
- rs6000_option_override_internal function.
- (POWERPC_MASKS): Ditto.
- (ISA_*_MASKS): Ditto.
- (struct rs6000_ptt): Ditto.
- (processor_target_table): Ditto.
- (rs6000_cpu_name_lookup): Map cpu name to an index in
- processor_target_table.
- (rs6000_debug_reg_global): Print more information on processor
- options for -mdebug=reg.
- (rs6000_init_hard_regno_mode_ok): Add support for target
- attributes and pragmas. Merge all -mdebug=<xxx> fields into one.
- Allow -mdebug=val1,val2. Rename cmodel variable.
- (rs6000_option_override_internal): Ditto.
- (rs6000_option_override): Ditto.
- (rs6000_handle_option): Ditto.
- (rs6000_conditional_register_usage): Add debug trace message.
- (struct rs6000_opt_mask): New for target attribute/pragma support.
- (rs6000_opt_masks): Ditto.
- (struct rs6000_opt_var): Ditto.
- (rs6000_opt_vars): Ditto.
- (rs6000_previous_function): Ditto.
-
- * config/rs6000/rs6000.h (top level): Include rs6000-opts.h if it
- wasn't already included.
- (enum rs6000_cmodel): Move to rs6000-opts.h or rs6000.opt.
- (enum processor_type): Ditto.
- (rs6000_cpu): Ditto.
- (enum fpu_type_t): Ditto.
- (fpu_type): Ditto.
- (enum rs6000_dependence_cost): Ditto.
- (enum rs6000_nop_insertion): Ditto.
- (enum group_termination): Ditto.
- (rs6000_long_double_type_size): Ditto.
- (rs6000_ieeequad): Ditto.
- (rs6000_altivec_abi): Ditto.
- (rs6000_spe_abi): Ditto.
- (rs6000_spe): Ditto.
- (rs6000_float_gprs): Ditto.
- (rs6000_alignment_flags): Ditto.
- (rs6000_sched_insert_nops): Ditto.
- (enum rs6000_vector): Ditto.
- (enum rs6000_abi): Ditto.
- (rs6000_current_opt): Ditto.
- (rs6000_debug_*): Delete.
- (MASK_DEBUG*): Combine -mdebug=xxxx into one int.
- (TARGET_DEBUG*): Ditto.
-
- * config/rs6000/rs6000-opts.h: New header file to define the enums
- that are used in target variables that are now defined in rs6000.opt.
-
- * config/rs6000/sysv4.h (enum rs6000_sdata_type): Move to
- rs6000-opts.h.
- (rs6000_sdata): Ditto.
- (rs6000_abi_name): Delete.
- (rs6000_sdata_name): Ditto.
- (rs6000_tls_size_string): Ditto.
-
-2010-11-19 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (debug_struct_ordinary, debug_struct_generic): New
- Variable entries.
- * dwarf2out.c (matches_main_base, dump_struct_debug, DUMP_GSTRUCT,
- should_emit_struct_debug): Move from opts.c.
- * flag-types.h (enum debug_struct_file): Move from opts.c.
- * flags.h (should_emit_struct_debug): Remove.
- (base_of_path): Declare.
- (set_struct_debug_option): Add gcc_options parameter.
- * optc-gen.awk, opth-gen.awk: Handle array variables.
- * opts.c (enum debug_struct_file, debug_struct_ordinary,
- debug_struct_generic): Remove.
- (set_struct_debug_option): Add gcc_options parameter.
- (base_of_path): Remove static.
- (main_input_basename, main_input_baselength, matches_main_base,
- dump_struct_debug, DUMP_GSTRUCT, should_emit_struct_debug):
- Remove.
- * toplev.c (main_input_basename, main_input_baselength): Define
- here.
- * toplev.h (main_input_basename, main_input_baselength): Declare
- here.
-
-2010-11-19 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (flag_instrument_functions_exclude_functions,
- flag_instrument_functions_exclude_files): New Variable definitions.
- * flags.h (flag_instrument_functions_exclude_p): Don't declare.
- * gimplify.c (char_p): Declare type and vectors.
- (flag_instrument_functions_exclude_p): Moved from opts.c. Make static.
- * opts.c (flag_instrument_functions_exclude_functions,
- flag_instrument_functions_exclude_files): Remove.
- (add_comma_separated_to_vector): Take void **.
- (flag_instrument_functions_exclude_p): Move to gimplify.c.
- (common_handle_option): Use options structure for
- -finstrument-functions-exclude- options.
-
-2010-11-19 Joseph Myers <joseph@codesourcery.com>
-
- * doc/options.texi (Var): Document effects of Defer.
- (Defer): Document.
- * opt-functions.awk (var_type, var_set): Handle deferred options.
- * opts-common.c (set_option): Handle CLVC_DEFER.
- * common.opt (fcall-saved-, fcall-used-, fdump-, ffixed-,
- fplugin=, fplugin-arg-, fstack-limit, fstack-limit-register=,
- fstack-limit-symbol=): Mark as deferred.
- * opts.c: Don't include rtl.h, ggc.h, output.h, tree-pass.h or
- plugin.h.
- (print_filtered_help): Don't report state of CLVC_DEFER options.
- (common_handle_option): Move code for OPT_fcall_used_,
- OPT_fcall_saved_, OPT_fdump_, OPT_ffixed_, OPT_fplugin_,
- OPT_fplugin_arg_, OPT_fstack_limit, OPT_fstack_limit_register_ and
- OPT_fstack_limit_symbol_ to opts-global.c.
- (option_enabled, get_option_state): Handle CLVC_DEFER.
- * opts.h: Include vec.h.
- (enum cl_var_type): Add CLVC_DEFER.
- (cl_deferred_option): Define type and vectors.
- (handle_common_deferred_options): Declare.
- * opts-global.c: New.
- * toplev.c (toplev_main): Call handle_common_deferred_options
- * Makefile.in (OPTS_H): Include $(VEC_H).
- (OBJS-common): Include opts-global.o.
- (opts.o): Update dependencies.
- (opts-global.o): Add dependencies.
-
-2010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_parser_objc_protocol_definition): Pass attributes
- to objc_declare_protocols.
-
-2010-11-19 Richard Guenther <rguenther@suse.de>
-
- PR lto/45789
- * lto-streamer-out.c (lto_output_ts_common_tree_pointers): For
- IDENTIFIERs do not stream TREE_TYPE.
- * lto-streamer-in.c (lto_input_ts_common_tree_pointers): Likewise.
-
-2010-11-19 Christian Borntraeger <borntraeger@de.ibm.com>
-
- * config/s390/s390.c (s390_function_arg_integer): Handle NULLPTR_TYPE.
-
-2010-11-19 Jakub Jelinek <jakub@redhat.com>
-
- PR target/45870
- * dwarf2out.c (const_ok_for_output_1): Don't complain about
- non-delegitimized TLS UNSPECs.
-
-2010-11-18 Jack Howarth <howarth@bromo.med.uc.edu>
- Ian Lance Taylor <iant@google.com>
-
- * config/darwin-c.c (darwin_additional_format_types): Export.
-
-2010-11-18 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.h (FIRST_PARM_OFFSET): Fix case of no frame
- pointer.
-
-2010-11-18 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md (abshi2): Delete TARGET_ABSHI_BUILTIN.
- * config/pdp11/pdp11.c (TARGET_DEFAULT_TARGET_FLAGS): Ditto.
- * config/pdp11/pdp11.opt (-mabshi): Delete.
-
-2010-11-19 Mingjie Xing <mingjie.xing@gmail.com>
-
- * resource.h (struct resources): Fix typo in the comment.
-
-2010-11-19 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/46546
- * config/i386/i386.c (ix86_reorg): Call compute_bb_for_insn.
-
-2010-11-18 Richard Henderson <rth@redhat.com>
-
- PR middle-end/46515
- * function.c (maybe_copy_prologue_epilogue_insn): Rename from
- maybe_copy_epilogue_insn; handle prologue insns as well.
- * rtl.h, cfglayout.c: Update for rename.
- * recog.c (peep2_attempt): Copy prologue/epilogue data for
- RTX_FRAME_RELATED_P insns.
-
-2010-11-18 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/46534
- * builtins.c (fold_builtin_printf): Don't copy and modify string
- before build_string_literal, instead modify what
- build_string_literal returned.
-
-2010-11-18 Nathan Froyd <froydnj@codesourcery.com>
-
- PR c/33193
- * c-typeck.c (build_unary_op): Call build_real_imag_expr for
- REALPART_EXPR and IMAGPART_EXPR.
-
-2010-11-18 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46172
- * tree-vect-loop-manip.c (remove_dead_stmts_from_loop): New
- function.
- (slpeel_tree_peel_loop_to_edge): Call it.
-
-2010-11-18 Jeff Law <law@redhat.com>
-
- PR middle-end-optimization/46297
- * postreload.c (reload_combine_note_store): Deal with embedded
- side effects in MEM expressions.
-
-2010-11-18 Richard Guenther <rguenther@suse.de>
-
- PR lto/45089
- * dwarf2out.c (add_AT_die_ref): Work around LTO losing types
- when checking is not enabled.
-
-2010-11-18 Richard Guenther <rguenther@suse.de>
-
- PR lto/46525
- * gimple.c (gimple_register_type): Update TYPE_MAIN_VARIANT of
- type leaders.
- (gimple_register_canonical_type): Also cache the canoncial type
- for non type leaders.
-
-2010-11-18 Richard Guenther <rguenther@suse.de>
-
- * lto-wrapper.c (run_gcc): Fix -flto=N parsing.
-
-2010-11-18 Alexander Monakov <amonakov@ispras.ru>
-
- PR middle-end/46518
- * sel-sched-ir.c (init_expr): Use the correct type for
- target_available.
- * sel-sched.c (fill_vec_av_set): Use explicitly signed char type.
-
-2010-11-17 Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
-
- * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Support -fpic
- as well as -mrelocatable at the same time.
-
-2010-11-17 Quentin Neill <quentin.neill.gnu@gmail.com>
-
- PR target/46422
- * config/i386/bmiintrin.h (__lzcnt_u16, __lzcnt_u32, __lzcnt_u64):
- Call the clz builtin.
-
-2010-11-17 Dinar Temirbulatov <dtemirbulatov@gmail.com>
- Steve Ellcey <sje@cup.hp.com>
-
- PR middle-end/31490
- * varasm.c (categorize_decl_for_section): Ignore reloc_rw_mask
- if section attribute used.
-
-2010-11-17 Jan Hubicka <jh@suse.cz>
-
- * builtins.c (expand_builtin_mathfn_2, expand_builtin_mathfn): Do not
- expand errno setting variant when optimizing for size.
-
-2010-11-17 Eric Botcazou <ebotcazou@adacore.com>
-
- * postreload.c (reload_combine): Call control_flow_insn_p only once.
- Reverse backward loop. Fix formatting issues.
-
-2010-11-17 Paolo Bonzini <bonzini@gnu.org>
-
- * c-parser.c (c_token_is_qualifier,
- c_parser_next_token_is_qualifier): New.
- (c_parser_declaration_or_fndef, c_parser_struct_declaration):
- Improve error message on specs->tagdef_seen_p.
- (c_parser_struct_or_union_specifier): Improve error recovery.
- (c_parser_declspecs): Move exit condition on C_ID_ID early.
- Reorganize exit condition for C_ID_TYPENAME/C_ID_CLASSNAME
- using c_parser_next_token_is_qualifier; extend it to cover
- a ctsk_tagdef typespec and !typespec_ok in general.
-
-2010-11-17 Richard Guenther <rguenther@suse.de>
-
- * value-prof.c (gimple_divmod_fixed_value_transform): Update the stmt.
- (gimple_mod_pow2_value_transform): Likewise.
- (gimple_mod_subtract_transform): Likewise.
-
-2010-11-17 Richard Guenther <rguenther@suse.de>
-
- PR lto/46504
- * gimple.c (gimple_register_canonical_type): Make sure to only
- make type leaders canonical types.
-
-2010-11-17 Michael Matz <matz@suse.de>
-
- * timevar.def (TV_IPA_OPT, TV_EARLY_LOCAL, TV_OPTIMIZE,
- TV_POSTRELOAD, TV_REMOVE_UNUSED, TV_ADDRESS_TAKEN, TV_TODO,
- TV_VERIFY_LOOP_CLOSED, TV_VERIFY_RTL_SHARING,
- TV_REBUILD_FREQUENCIES, TV_REPAIR_LOOPS): New.
- * tree-into-ssa.c (rewrite_into_ssa): Don't push/pop timevar here ...
- (pass_build_ssa): ... but here.
- * cgraphbuild.c (pass_rebuild_cgraph): Use timevar.
- * tree-ssa-loop-manip.c (verify_loop_closed_ssa): Use timevar.
- * tree-emutls.c (pass_ipa_lower_emutls): Ditto.
- * df-core.c (pass_df_initialize_opt, pass_df_initialize_no_opt): Ditto.
- * predict.c (rebuild_frequencies): Ditto.
- * tree-vectorizer.c (pass_ipa_increase_alignment): Ditto.
- * emit-rtl.c (verify_rtl_sharing): Ditto.
- * tree-cfgcleanup.c (repair_loop_structures): Ditto.
- * tree-ssa-live.c (remove_unused_locals): Ditto.
- * cfglayout.c (pass_into_cfg_layout, pass_outof_cfg_layout): Ditto.
- * tree-ssa.c (pass_early_warn_uninitialized,
- execute_update_addresses_taken, pass_update_address_taken): Ditto.
- * tree-optimize.c (pass_all_optimizations, pass_early_local_passes,
- pass_cleanup_cfg_post_optimizing, tree_rest_of_compilation): Ditto.
- * passes.c (pass_postreload, execute_todo): Ditto.
- * tree-ssanames.c (pass_release_ssa_names): Ditto.
-
-2010-11-17 Joseph Myers <joseph@codesourcery.com>
-
- * doc/invoke.texi (-dy): Remove.
- * langhooks-def.h (lhd_do_nothing_i): Don't declare.
- (LANG_HOOKS_PARSE_FILE): Define to lhd_do_nothing.
- * langhooks.c (lhd_do_nothing_i): Remove.
- * langhooks.h (lang_hooks.parse_file): Take no arguments.
- * toplev.c (set_yydebug): Remove.
- (compile_file): Update call to lang_hooks.parse_file.
- (decode_d_option): Don't handle -dy.
-
-2010-11-17 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/46440
- * combine.c (update_cfg_for_uncondjump): When changing
- an indirect jump into unconditional jump, remove BARRIERs
- from bb's footer.
-
-2010-11-17 Joseph Myers <joseph@codesourcery.com>
-
- * opts.c (target_handle_option): Do not assert that loc ==
- UNKNOWN_LOCATION.
-
-2010-11-17 Jakub Jelinek <jakub@redhat.com>
- Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45838
- * tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
- call_may_clobber_ref_p_1): Return true for __sync_* and some
- OpenMP builtins that act as threading barriers.
-
-2010-11-17 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46498
- * tree-ssa-dce.c (perform_tree_ssa_dce): Compute dominator info.
-
-2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/xtensa/xtensa.c (function_arg_boundary): Really rename to...
- (xtensa_function_arg_boundary): ...this.
- * config/picochip/pichochip.c (picochip_function_arg_boundary): Fix
- thinko in declaration.
- (picochip_function_arg, picochip_arg_partial_bytes): Pass proper
- number of parameters to picochip_function_arg_boundary.
- (picochip_arg_advance): Likewise.
-
-2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
-
- PR target/46512
- * config/pa/pa.c (pa_function_arg_boundary): Move TYPE_SIZE accesses
- under check for type.
-
-2010-11-16 Eric Botcazou <ebotcazou@adacore.com>
-
- * ifcvt.c (dead_or_predicable): Fix typo.
-
-2010-11-16 Richard Henderson <rth@redhat.com>
-
- * config.gcc [s390*-*] (extra_options): Add fused-madd.opt.
- * config/s390/s390.opt (mfused-madd): Remove.
- * config/s390/s390.c (s390_rtx_costs): Handle FMA.
- (TARGET_DEFAULT_TARGET_FLAGS): Remove MASK_FUSED_MADD.
- * config/s390/s390.md (fma<DSF>4): Rename from *fmadd<DSF>; use FMA.
- (fms<DSF>4): Rename from *fmsub<DSF>; use FMA.
-
-2010-11-16 Richard Henderson <rth@redhat.com>
-
- * config.gcc [powerpc*, rs6000*] (extra_options): Add fused-madd.opt.
- * config/rs6000/rs6000.opt (mfused-madd): Remove.
- * config/rs6000/altivec.md (altivec_vmaddfp): Remove.
- (*altivec_vmaddfp_1): Remove.
- (*altivec_fmav4sf4): Rename from altivec_vmaddfp_2; use FMA.
- (altivec_mulv4sf3): Expand to FMA directly.
- (*altivec_vnmsubfp): Rename from altivec_vnmsubfp.
- (*altivec_vnmsubfp_1, *altivec_vnmsubfp_2): Remove.
- * config/rs6000/paired.md (paired_madds0): Use FMA.
- (paired_madds1): Likewise.
- (*paired_madd): Rename from paired_madd; use FMA.
- (*paired_msub, *paired_nmadd, *paired_nmsub): Similarly.
- * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Do not
- consider TARGET_FUSED_MADD wrt rs6000_recip_control.
- (bdesc_3arg): Update CODE_FOR_* for pattern renames.
- (rs6000_emit_madd): Use fma_optab.
- (rs6000_emit_msub): Use fms_optab.
- (rs6000_emit_nmsub): Expand the FMA pattern directly.
- * config/rs6000/rs6000.md (FMA_F): New mode iterator.
- (*fmasf4_fpr): Rename from fmasf4_fpr.
- (*nfmasf4_fpr): Rename from *fnmasf4_fpr.
- (*nfmssf4_fpr): Rename from *fnmssf4_fpr.
- (*fmaddsf4_powerpc, *fmaddsf4_power, *fmsubsf4_powerpc): Remove.
- (*fmsubsf4_power, *fnmaddsf4_powerpc_1, *fnmaddsf4_powerpc_2): Remove.
- (*fnmaddsf4_power_1, *fnmaddsf4_power_2, *fnmsubsf4_powerpc_1): Remove.
- (*fnmsubsf4_powerpc_2, *fnmsubsf4_power_1, *fnmsubsf4_power_2): Remove.
- (*fmadf4_fpr): Rename from fmadf4_fpr.
- (*nfmadf4_fpr): Rename from *fnmadf4_fpr.
- (*nfmsdf4_fpr): Rename from *fnmsdf4_fpr.
- (*fmadddf4_fpr, *fmsubdf4_fpr, *fnmadddf4_fpr_1): Remove.
- (*fnmadddf4_fpr_2, *fnmsubdf4_fpr_1, *fnmsubdf4_fpr_2): Remove.
- (fmasf4, fmadf4): Macroize into...
- (fma<FMA_F>4): ... here.
- (fms<FMA_F>4, fnma<FMA_F>4, fnms<FMA_F>4): New.
- (nfma<FMA_F>4, nfms<FMA_F>4): New.
- * config/rs6000/vector.md (mul<VEC_F>3): Do not depend on
- TARGET_FUSED_MADD.
- * config/rs6000/vsx.md (vsx_fmadd<VSX_B>4): Remove.
- (*vsx_fmadd<mode>4_1): Remove.
- (vsx_fmsub<mode>4, *vsx_fmsub<mode>4_1): Remove.
- (vsx_fnmadd<mode>4_1, vsx_fnmadd<mode>4_2): Remove.
- (vsx_fnmsub<mode>4_1, vsx_fnmsub<mode>4_2): Remove.
- (*vsx_fma<mode>4): Rename from vsx_fmadd<mode>4_2.
- (*vsx_fms<mode>4): Rename from vsx_fmsub<mode>4_2.
- (*vsx_nfma<mode>4): Rename from vsx_fnmadd<mode>4.
- (*vsx_nfms<mode>4): Rename from vsx_fnmsub<mode>4.
-
-2010-11-16 Richard Henderson <rth@redhat.com>
-
- * config/pa/pa.md (fmadf4): Rename from unnamed; use FMA.
- (fmasf4, fnmadf4, fnmasf4): Likewise.
- (unnamed plus+mult insns and splitters): Delete.
-
-2010-11-16 Richard Henderson <rth@redhat.com>
-
- * config/spu/spu.md (fma<VSF>4): Rename from fma_<VSF>.
- (fnma<VSF>4): Rename from fnms_<VSF>.
- (fms<VSF>4): Rename from fms_<VSF>.
- (fma<VDF>4): Rename from fma_<VDF>.
- (fms<VDF>4): Rename from fms_<VDF>.
- (nfma<VDF>4): Rename from fnma_<VDF>.
- (nfms<VDF>4): Rename from fnms_<VDF>.
- (fnma<VDF>4, fnms<VDF>4): New expanders.
- (floatunsdisf2): Update for the renames.
- (*div<VSF>3_fast, *div<VSF>3_adjusted): Likewise.
- * config/spu/spu-builtins.def: Update CODE_FOR_* for the renames.
-
-2010-11-16 Eric Botcazou <ebotcazou@adacore.com>
-
- PR rtl-optimization/46490
- * combine.c (expand_compound_operation): Fix thinko.
-
-2010-11-16 Richard Henderson <rth@redhat.com>
-
- PR target/46470
- * recog.c (peep2_attempt): Convert frame-related info when possible.
- (peep2_fill_buffer): Allow frame-related insns into the buffer.
- (peephole2_optimize): Allow peep2_attempt to fail.
-
-2010-11-16 Eric Botcazou <ebotcazou@adacore.com>
-
- PR rtl-optimization/46315
- * rtl.h (remove_reg_equal_equiv_notes_for_regno): Declare.
- * rtlanal.c (remove_reg_equal_equiv_notes_for_regno): New function
- extracted from...
- * dce.c (delete_corresponding_reg_eq_notes): ...here. Rename into...
- (remove_reg_equal_equiv_notes_for_defs): ...this.
- (delete_unmarked_insns): Adjust to above renaming.
- * ifcvt.c (dead_or_predicable): Remove REG_EQUAL and REG_EQUIV notes
- referring to registers set in the insns being moved, if any.
-
- * df-core.c (df_ref_dump): New function extracted from...
- (df_refs_chain_dump): ...here. Call it.
- (df_regs_chain_dump): Likewise.
- * df-problems.c (df_chain_dump): Print 'e' for uses in notes.
- * df-scan.c (df_scan_start_dump): Likewise. Fix long line.
-
-2010-11-16 Andreas Schwab <schwab@linux-m68k.org>
-
- PR rtl-optimization/46395
- * postreload.c (reload_combine): Invalidate register use
- information on all control flow insns.
-
- * config/m68k/m68k.c (m68k_delegitimize_address): Also expect
- LABEL_REF in UNSPEC operand.
-
-2010-11-16 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (+varpool_can_remove_if_no_refs): Move here from ...;
- when !flag_toplevel_reorder do not remove unless variable is
- COMDAT or ARTIFICIAL.
- * ipa.c (varpool_can_remove_if_no_refs): ... here.
- (cgraph_remove_unreachable_nodes): Only analyzed nodes needs to stay.
- * cgraphunit.c (cgraph_analyze_functions): Dump varpool, too.
- * varpool.c (decide_is_variable_needed): Do not handle visibility
- issues.
- (varpool_finalize_decl): Likewise.
- (varpool_remove_unreferenced_decls): Use varpool_mark_needed_node;
- update outdated comment on DECL_RTL_SET_P check.
-
-2010-11-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/sol2.h (NM_FLAGS): Define.
- * doc/tm.texi.in (Macros for Initialization, NM_FLAGS): Document.
- * doc/tm.texi: Update.
-
-2010-11-16 Nick Clifton <nickc@redhat.com>
-
- * config/v850/v850.md (maddsf4): Rename to fmasf4 and use fma rtx_code.
- (msubsf4): Rename to fmssf4, and use fma.
- (nmaddsf4): Rename to fnmasf4 and use fma.
- (nmsubsf4): Rename to fnmssf4 and use fma.
-
-2010-11-16 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/44762
- * config/score/score3.c (score3_return_in_memory): Constify arguments.
- (score3_in_small_data_p, score3_function_value): Likewise.
- (score3_trampoline_init): Use LCT_NORMAL.
- (score3_print_operand): Initialize code as UNKNOWN.
- * config/score/predicates.md (score_load_multiple_operation):
- Remove unused variable.
- (score_store_multiple_operation): Likewise.
- * config/score/score7.c (score7_return_in_memory): Constify arguments.
- (score7_in_small_data_p, score7_function_value): Likewise.
- (score7_trampoline_init): Use LCT_NORMAL.
- (score7_print_operand): Initialize code as UNKNOWN.
- * config/score/score3.h (score3_return_in_memory): Update prototype.
- (score3_in_small_data_p, score3_function_value): Likewise.
- * config/score/score-protos.h (score_function_value): Likewise.
- * config/score/score7.h (score7_return_in_memory): Update prototype.
- (score7_in_small_data_p, score7_function_value): Likewise.
- * config/score/score.c (TARGET_PROMOTE_PROTOTYPES): Constify.
- (score_return_in_memory, score_pass_by_reference): Constify arguments.
- (score_output_mi_thunk, score_function_prologue): Don't return a value.
- (score_function_epilogue, score_in_small_data_p): Likewise.
- (score_option_override, score_asm_trampoline_template): Likewise.
- (score_trampoline_init, score_print_operand): Likewise.
- (score_print_operand_address, score_prologue): Likewise.
- (score_epilogue, score_call, score_call_value): Likewise.
- (score_movsicc, score_movdi, score_zero_extract_andi): Likewise.
- (score_function_arg_advance): Likewise. Make static.
- (score_asm_file_end): Mark parameter value with ATTRIBUTE_UNUSED.
- (score_function_arg, score_legitimate_address_p): Make static.
- (score_function_value): Mark parameter func with ATTRIBUTE_UNUSED.
- * config/score/score.h (REGNO_REG_CLASS): Cast value to enum reg_class.
- * config/score/score-conv.h (UIMM_IN_RANGE, SIMM_IN_RANGE):
- Allow (W) == HOST_BITS_PER_WIDE_INT.
-
- PR java/46386
- * config/pdp11/t-pdp11 (java/constants.o-warn): Remove.
- * config/t-pnt16-warn (java/constants.o-warn): Likewise.
-
-2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/arc/arc.c: Delete pasto.
- * config/pa/pa.c (pa_function_arg_boundary): Add missing comparison.
-
-2010-11-16 Anatoly Sokolov <aesok@post.ru>
-
- * config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS,
- PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
- * config/mn10300/mn10300.c (TARGET_PREFERRED_RELOAD_CLASS,
- TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
- (mn10300_preferred_reload_class,
- mn10300_preferred_output_reload_class): New functions.
-
-2010-11-16 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * gensupport.c (MNEMONIC_ATTR_NAME, MNEMONIC_HTAB_SIZE): New macros.
- (htab_eq_string, add_mnemonic_string, gen_mnemonic_setattr)
- (mnemonic_htab_callback, gen_mnemonic_attr): New functions.
- (init_rtx_reader_args_cb): Invoke gen_mnemonic_attr.
-
-2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * builtins.c (std_gimplify_va_arg_expr): Use
- targetm.calls.function_arg_boundary.
- * function.c (assign_parms, locate_and_pad_parm): Likewise.
- * calls.c (struct arg_data): Update comment.
- * defaults.h (FUNCTION_ARG_BOUNDARY): Delete.
- * target.def (function_arg_boundary): Define.
- * targhooks.h (default_function_arg_boundary): Declare.
- * targhooks.c (default_function_arg_boundary): Define.
- * doc/tm.texi.in (FUNCTION_ARG_PADDING): Use
- TARGET_FUNCTION_ARG_BOUNDARY.
- (FUNCTION_ARG_BOUNDARY): Delete.
- (TARGET_FUNCTION_ARG_BOUNDARY): New.
- * doc/tm.texi: Regenerate.
- * system.h (FUNCTION_ARG_BOUNDARY): Poison.
- * config/arc/arc.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/arc/arc.c (arc_function_arg_boundary): Define.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/arm/arm.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/arm/arm-protos.h (arm_needs_doubleword_align): Delete.
- * config/arm/arm.c (arm_needs_doubleword_align): Make static.
- (arm_function_arg_boundary): Define.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/frv/frv.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/frv/frv-protos.h (frv_function_arg_boundary): Delete.
- * config/frv/frv.c (frv_function_arg_boundary): Make static.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/i386/i386.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/i386/i386-protos.h (ix86_function_arg_boundary): Delete.
- * config/i386/i386.c (ix86_function_arg_boundary): Make static.
- (ix86_compat_function_arg_boundary): Take and return unsigned int.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/ia64/ia64-protos.h (ia64_function_arg_boundary): Delete.
- * config/ia64/ia64.c (ia64_function_arg_boundary): Make static.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/m32c/m32c.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/m32c/m32c.c (m32c_function_arg_boundary): Define.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/m32r/m32r.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/mcore/mcore.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/mcore/mcore.c (mcore_function_arg_boundary): Define.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/mips/mips.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/mips/mips-protos.h (mips_function_arg_boundary): Delete.
- * config/mips/mips.c (mips_function_arg_boundary): Make static.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/pa/pa.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/pa/pa.c (pa_function_arg_boundary): Define.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/picochip/picochip.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/picochip/picochip-protos.h
- (picochip_get_function_arg_boundary): Delete.
- * config/picochip/picochip.c (picochip_get_function_arg_boundary):
- Rename to...
- (picochip_function_arg_boundary): ...this. Make static.
- (picochip_function_arg, picochip_arg_partial_bytes): Adjust.
- (picochip_arg_advance): Adjust.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/rs6000/rs6000.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/rs6000/rs6000-protos.h (function_arg_boundary): Delete.
- * config/rs6000/rs6000.c (function_arg_boundary): Rename to...
- (rs6000_function_arg_boundary): ...this. Make static.
- (rs6000_parm_start, rs6000_gimplify_va_arg): Adjust.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/rx/rx.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/rx/rx.c (rx_function_arg_boundary): Define.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/sparc/sparc.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/sparc/sparc.c (sparc_function_arg_boundary): Define.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
- * config/xtensa/xtensa.h (FUNCTION_ARG_BOUNDARY): Delete.
- * config/xtensa/xtensa-protos.h (function_arg_boundary): Delete.
- * config/xtensa/xtensa.c (function_arg_boundary): Rename to...
- (xtensa_function_arg_boundary): ...this. Make static.
- (TARGET_FUNCTION_ARG_BOUNDARY): Define.
-
-2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * expr.c (alignment_for_piecewise_move): New function.
- (widest_int_mode_for_size): New function.
- (move_by_pieces, move_by_pieces_ninsns): Call them.
- (can_store_by_pieces, store_by_pieces_1): Likewise.
-
-2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * gcc.c (char_p): Define. Define a VEC of it.
- (n_linker_options, n_assembler_options, n_preprocessor_options):
- Delete.
- (linker_options, assembler_options, preprocessor_options): Convert
- to a VEC.
- (add_preprocessor_option): Adjust.
- (add_assembler_option): Adjust.
- (add_linker_option): Adjust.
- (do_specs_vec): New function.
- (do_spec_1): Call it. Adjust for new types.
-
-2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * Makefile.in (bitmap.o, ebitmap.o, et-forest.o): Update dependencies.
- (sreal.o, statistics.o, stringpool.o): Likewise.
-
-2010-11-16 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44545
- * tree-ssa-reassoc.c (linearize_expr_tree): Possibly throwing
- statements are not reassociatable.
- (reassociate_bb): Likewise.
-
-2010-11-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * bitmap.c: Delete unnecessary includes.
- * ebitmap.c: Likewise.
- * et-forest.c: Likewise.
- * sreal.c: Likewise.
- * statistics.c: Likewise.
- * stringpool.c: Likewise.
- * double-int.c: Add comment for inclusion of tm.h.
-
-2010-11-16 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-sccvn.c (visit_unary_op): Rename to ...
- (visit_nary_op): ... this.
- (visit_binary_op): Remove.
- (visit_use): Adjust and handle GIMPLE_TERNARY_RHS.
-
-2010-11-16 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45172
- * tree-eh.c (cleanup_empty_eh_unsplit): Avoid creating duplicate edges.
-
-2010-11-16 Nick Clifton <nickc@redhat.com>
-
- * config/rx/rx.c (rx_is_ms_bitfield_layout): Return false if the
- record is packed.
-
-2010-11-15 Richard Henderson <rth@redhat.com>
-
- * fold-const.c (operand_equal_for_comparison_p): Handle FMA_EXPR,
- WIDEN_MULT_PLUS_EXPR, WIDEN_MULT_MINUS_EXPR, VEC_COND_EXPR and
- DOT_PROD_EXPR.
-
-2010-11-15 Richard Henderson <rth@redhat.com>
-
- * config/mn10300/mn10300.md (fmasf4, fmssf4, fnmasf4, fnmssf4): Rename
- from fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4 respectively. Use
- fma rtx_code.
-
-2010-11-15 Richard Henderson <rth@redhat.com>
-
- * config/frv/frv.md (fmasf4, fmssf4): Rename from *muladdsf4
- and *mulsubsf4 respectively. Use fma rtx_code.
-
-2010-11-15 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c: Include "vec.h".
- (argbuf): Make into a VEC.
- (argbuf_length, argbuf_index): Remove.
- (alloc_args, clear_args, store_arg, execute, insert_wrapper,
- do_spec, do_self_spec, do_spec_1, eval_spec_function, main,
- compare_debug_dump_opt_spec_function: Use VEC interfaces on argbuf.
- * Makefile.in (GCC_OBJS): Add vec.o and ggc-none.o.
- (gcc.o): Depend on $(VEC_H).
-
-2010-11-15 Richard Henderson <rth@redhat.com>
-
- * loop-unroll.c (analyze_insn_to_expand_var): Accept accumulation
- via FMA if unsafe math.
- (insert_var_expansion_initialization): Handle FMA.
- (combine_var_copies_in_loop_exit): Likewise.
-
-2010-11-15 Richard Henderson <rth@redhat.com>
-
- * config.gcc [ia64-*] (extra_options): Add fused-madd.opt.
- * config/ia64/ia64.opt: Remove mfused-madd.
- * config/ia64/ia64.c (ia64_rtx_costs): Handle FP MULT, PLUS, FMA.
- * config/ia64/vms.h (TARGET_DEFAULT): Remove MASK_FUSED_MADD.
- * config/ia64/vms64.h (TARGET_DEFAULT): Likewise.
- * config/ia64/ia64.h (TARGET_DEFAULT): Likewise.
- * config/ia64/hpux.h (TARGET_DEFAULT): Likewise.
- * config/ia64/vect.md (addv2sf3, subv2sf3): Generate FMA.
- (*addv2sf3_1, *addv2sf3_2, *subv2sf3_1, *subv2sf3_2): Remove.
- (fmav2sf4): Rename from fpma; use FMA code.
- (fmsv2sf4): Rename from fpms; use FMA code.
- (fnmav2sf4): Rename from *fpnma; use FMA code.
- * config/ia64/ia64.md (MODE_SDF): New iterator.
- (suffix): New mode attribute.
- (*maddsf4, *msubsf4, *nmaddsf4): Remove.
- (fmssf4): Rename from *fmssf4.
- (fnmasf4): Rename from *nfmasf4.
- (*madddf4, *madddf4_trunc, *msubdf4, *msubdf4_trunc): Remove.
- (*nmadddf4, *nmadddf4_truncsf): Remove.
- (fmsdf4): Rename from *fmsdf4.
- (fnmadf4): Rename from *nfmadf4.
- (*fmadf_trunc_sf, *fmsdf_trunc_sf, *fnmadf_trunc_sf): New.
- (*maddxf4, *maddxf4_truncsf, *maddxf4_truncdf): Remove.
- (*msubxf4, *msubxf4_truncsf, *msubxf4_truncdf): Remove.
- (*nmaddxf4, *nmaddxf4_truncsf, *nmaddxf4_truncdf): Remove.
- (fmsxf4): Rename from *fmsxf4.
- (fnmaxf4): Rename from *nfmaxf4.
- (*fmaxf_trunc_<MODE_SDF>, *fmsxf_trunc_<MODE_SDF>): New.
- (*fnmaxf_trunc_<MODE_SDF>): New.
-
-2010-11-15 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/46461
- * tree-ssa-forwprop.c (simplify_builtin_call): Ensure ptr1 is
- a gimple val.
-
-2010-11-15 Ian Lance Taylor <iant@google.com>
-
- * godump.c: New file.
- * common.opt (fdump-go-spec=): New option.
- * tree.h: Add comments for TYPE_SYMTAB_ADDRESS and friends.
- (TYPE_SYMTAB_IS_ADDRESS, TYPE_SYMTAB_IS_POINTER): Define.
- (TYPE_SYMTAB_IS_DIE): Define.
- (struct tree_type): Change GTY for symtab field to use
- TYPE_SYMTAB_IS_ADDRESS and friends and to use a debug_hooks field
- to pick the union field.
- * debug.h (struct gcc_debug_hooks): Add tree_type_symtab_field.
- (dump_go_spec_init): Declare.
- * toplev.c (process_options): Handle flag_dump_go_spec.
- * debug.c: Include "tree.h".
- (do_nothing_debug_hooks): Set tree_type_symtab_field.
- * dwarf2out.c (dwarf2_debug_hooks): Likewise.
- * dbxout.c (dbx_debug_hooks): Likewise.
- (xcoff_debug_hooks): Likewise.
- * vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
- * sdbout.c (sdb_debug_hooks): Likewise. Do not define if
- SDB_DEBUGGING_INFO is not defined.
- * doc/invoke.texi (Option Summary): Mention -fdump-go-spec.
- (Overall Options): Document -fdump-go-spec.
- * Makefile.in (OBJS-common): Add godump.o.
- (debug.o): Add dependency on $(TREE_H).
- (godump.o): New target.
- (GTFILES): Add $(srcdir)/godump.c.
-
-2010-11-15 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/46095
- * config/i386/i386.c (pro_epilogue_adjust_stack): Instead of
- marking r11 set RTX_FRAME_RELATED_P if offset is too large for
- style < 0, add REG_FRAME_RELATED_EXPR.
-
- PR debug/46387
- * rtl.h (vt_equate_reg_base_value): New prototype.
- * alias.c (vt_equate_reg_base_value): New function.
- * var-tracking.c (vt_init_cfa_base): Use it.
-
-2010-11-15 Jan Hubicka <jh@suse.cz>
- Diego Novillo <dnovillo@google.com>
-
- PR lto/41528
- * doc/lto.texi: Add.
- * doc/gccint.texi: Add reference to lto.texi.
- * doc/invoke.texi: Update user documentation for LTO.
- Move internal flags to lto.texi
-
-2010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-typeck.c (build_unary_op): Use
- objc_build_incr_expr_for_property_ref to build the pre/post
- increment/decrement of an Objective-C property ref, and skip the
- lvalue_or_else check in that case.
-
-2010-11-15 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/46349
- * tree-sra.c (contains_bitfld_comp_ref_p): New function.
- (contains_vce_or_bfcref_p): Likewise.
- (sra_modify_assign): Use them.
-
-2010-11-15 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46467
- * tree-ssa-structalias.c (do_structure_copy): Properly treat
- variables without subvars.
-
-2010-11-15 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.c (file header): Picochip name change.
- * config/picochip/picochip.md (file header): Likewise.
- * config/picochip/predicates.md (file header): Likewise.
- * config/picochip/dfa_space.md (file header): Likewise.
- * config/picochip/dfa_speed.md (file header): Likewise.
- * config/picochip/picochip.h(file header): Likewise.
- * config/picochip/constraints.md (file header): Likewise.
- * config/picochip/picochip-protos.h (file header): Likewise.
- * config/picochip/libgccExtras/setjmp.asm (file header): Likewise.
- * config/picochip/libgccExtras/divmodsi4.asm (file header): Likewise.
- * config/picochip/libgccExtras/ashlsi3.asm (file header): Likewise.
- * config/picochip/libgccExtras/longjmp.asm (file header): Likewise.
- * config/picochip/libgccExtras/ashlsi3.c (file header): Likewise.
- * config/picochip/libgccExtras/popcounthi2.asm (file header): Likewise.
- * config/picochip/libgccExtras/parityhi2.asm (file header): Likewise.
- * config/picochip/libgccExtras/udivmodhi4.asm (file header): Likewise.
- * config/picochip/libgccExtras/ashrsi3.asm (file header): Likewise.
- * config/picochip/libgccExtras/ashrsi3.c (file header): Likewise.
- * config/picochip/libgccExtras/ucmpsi2.asm (file header): Likewise.
- * config/picochip/libgccExtras/divmodhi4.asm (file header): Likewise.
- * config/picochip/libgccExtras/lshrsi3.asm (file header): Likewise.
- * config/picochip/libgccExtras/subdi3.asm (file header): Likewise.
-
-2010-11-15 Richard Guenther <rguenther@suse.de>
-
- PR bootstrap/46474
- * tree-ssa-math-opts.c (convert_mult_to_fma): Disregard debug stmts.
-
-2010-11-15 Nick Clifton <nickc@redhat.com>
-
- * config/stormy16/stormy16.c (direct_return): Do not generate a
- direct return for interrupt handlers.
-
-2010-11-15 Joern Rennecke <amylaar@spamcop.net>
-
- * Makefile.in (tm.texi): Replace with rule for:
- ($(srcdir)/doc/tm.texi).
- (s-tm-texi): Depend on $(srcdir)/doc/../doc/tm.texi instead of on
- $(srcdir)/doc/tm.texi .
- (TEXI_GCCINT_FILES): Depend on $(srcdir)/doc/tm.texi instead of on
- tm.texi .
-
- PR target/46427
- * config/m32r/m32r.c: Remove unused variables frame_size and insn.
-
- PR bootstrap/45444
- * config/arm/arm.c (locate_neon_builtin_icode): Initialize key.
- (arm_output_asm_insn) Add ATTRIBUTE_PRINTF_4.
-
- PR target/46432
- * config/v850/v850.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Delete.
-
-2010-11-15 Richard Guenther <rguenther@suse.de>
-
- PR lto/44150
- * lto-opts.c (lto_write_options): Write -fexceptions even if
- not set by the user.
-
-2010-11-13 Paolo Bonzini <bonzini@gnu.org>
-
- PR c/46462
- * c-decl.c (declspecs_add_type): Make variables with error types
- integers.
- * c-parser.c (c_parser_next_tokens_start_declaration): Two IDs
- do not start a declaration before an Objective-C foreach.
- (c_parser_declaration_or_fndef): Improve recovery after unknown
- type name.
- (c_parser_for_statement): Hoist entrance of "foreach context"
- before ifs, add corresponding reset where it was missing. Do
- not set objc_could_be_foreach_context for C.
-
-2010-11-14 Eric Botcazou <ebotcazou@adacore.com>
-
- PR tree-optimization/45722
- * tree-sra.c (build_ref_for_model): Always build a COMPONENT_REF if
- this is a reference to a component.
- * ipa-prop.c (ipa_get_member_ptr_load_param): Accept COMPONENT_REF.
- (ipa_note_param_call): Adjust comment.
-
-2010-11-14 Richard Sandiford <rdsandiford@googlemail.com>
-
- * config/mips/mips.c (machine_function): Remove
- initialized_mips16_gp_pseudo_p.
- (mips16_gp_pseudo_reg): Use cfun->machine->mips16_gp_pseudo_rtx to
- detect whether a pseudo has already been created. Unconditionally
- create a new one if not.
- (mips_pic_base_register): Only call mips16_gp_pseudo_reg when
- expanding to rtl. Create a new pseudo otherwise, if allowed.
-
-2010-11-13 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/43440
- * tm.texi.in (OVERLAPPING_REGISTER_NAMES): Document new macro.
- * tm.texi: Regenerated.
- * output.h (decode_reg_name_and_count): Declare.
- * varasm.c (decode_reg_name_and_count): New function.
- (decode_reg_name): Reimplement using decode_reg_name_and_count.
- * reginfo.c (fix_register): Use decode_reg_name_and_count and
- iterate over all regs used.
- * stmt.c (expand_asm_operands): Likewise.
- * arm/aout.h (OVERLAPPING_REGISTER_NAMES): Define.
- (ADDITIONAL_REGISTER_NAMES): Remove aliases that overlap
- multiple machine registers.
-
-2010-11-13 Eric Botcazou <ebotcazou@adacore.com>
-
- * stor-layout.c (place_union_field): Do not put location information
- on offset expressions.
- (place_field): Likewise.
- (finalize_record_size): Likewise on size expressions.
- (finalize_type_size): Likewise.
- (layout_type): Likewise.
-
-2010-11-13 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42889
- * df-scan.c (df_insn_rescan): Don't mark BBs upon debug insns.
- * df-core.c (df_set_bb_dirty_nonrl): Remove.
- * df.h (df_set_bb_dirty_nonlr): Likewise.
-
-2010-11-13 Uros Bizjak <ubizjak@gmail.com>
-
- * config/mips/mips.md (call_internal): Pass curr_insn to
- mips_split_call.
- (call_internal_direct): Ditto.
- (call_value_internal): Ditto.
- (call_value_internal_direct): Ditto.
- (call_value_multiple_internal): Ditto.
- * config/mips/mips.c (mips_split_call): Do not copy
- CALL_INSN_FUNCTION_USAGE here.
-
-2010-11-13 Mingming Sun <mingm.sun@gmail.com>
-
- * doc/invoke.texi (MIPS Options): Add loongson3a processor.
- * config/mips/mips.md (define_attr "cpu"): Add loongson_3a.
- (define_insn "prefetch"): Add TARGET_LOONGSON_3A.
- * config/mips/mips.h (TARGET_LOONGSON_3A): Define.
- (TUNE_LOONGSON_3A): Define.
- (TARGET_LOONGSON_VECTORS): Add TARGET_LOONGSON_3A.
- (MIPS_ISA_LEVEL_SPEC): Add loongson3a.
- * config/mips/mips.c (mips_cpu_info_table): Add loongson3a.
- (mips_issue_rate): Add PROCESSOR_LOONGSON_3A.
- (mips_rtx_cost_data): Add Loongson-3A.
-
-2010-11-13 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.h (LINK_COMMAND_SPEC_A): Update for changes to lto
- switches.
-
-2010-11-13 Iain Sandoe <iains@gcc.gnu.org>
-
- * dwarf2out.c (macinfo_entry): New struct.
- (output_comp_unit): Emit the section start label here and flag that we
- will emit an info section.
- (dwarf2out_start_source_file): Save data in a macinfo entry rather than
- emitting directly.
- (dwarf2out_end_source_file): Likewise.
- (dwarf2out_define): Likewise.
- (dwarf2out_undef): Likewise.
- (output_macinfo): New.
- (dwarf2out_init): Do not emit debug section switches here, allocate a
- vec for macinfo, when required.
- (dwarf2out_finish): First switch to debug_abbrev_section here.
- debug_line_section, debug_macinfo_section, Likewise.
- Check that the pubtypes table has at least one unpruned entry before
- trying to emit it.
-
-2010-11-13 Paolo Bonzini <bonzini@gnu.org>
-
- PR c/20385
- * c-parser.c (c_parser_next_token_starts_declaration): Rename to...
- (c_parser_next_tokens_start_declaration): ... this. Handle 2nd
- token lookahead.
- (c_parser_compound_statement_nostart, c_parser_label,
- c_parser_for_statement, c_parser_omp_for_loop): Adjust calls.
- (c_parser_declaration_or_fndef): Detect the case now matched by
- c_parser_next_tokens_start_declaration, give error and correct it.
-
-2010-11-13 Paolo Bonzini <bonzini@gnu.org>
-
- * c-tree.h (enum c_typespec_kind): Add ctsk_none.
- (struct c_declspecs): Replace tagdef_seen_p and type_seen_p
- with typespec_kind.
- * c-decl.c (build_null_declspecs): Initialize typespec_kind.
- (shadow_tag_warned, check_compound_literal_type): Adjust
- uses of tag_defined_p.
- (declspecs_add_type): Set typespec_kind.
- * c-parser.c (c_parser_declaration_or_fndef,
- c_parser_declspecs, c_parser_struct_declaration,
- c_parser_parameter_declaration, c_parser_type_name,
- c_parser_objc_diagnose_bad_element_prefix): Adjust uses
- of type_seen_p.
- * c-typeck.c (c_cast_expr): Use typespec_kind instead of
- tag_defined_p, pass ctsk_firstref through.
-
-2010-11-13 Paolo Bonzini <bonzini@gnu.org>
-
- * c-format.c (enum format_specifier_kind, kind_descriptions): New.
- (struct format_wanted_type): Replace field "name" with "kind", add
- "format_start" and "format_length".
- (check_format_info_main): Fill in new fields. Fill in
- FORMAT_WANTED_TYPES even for missing arguments. Move checks
- after the final NUL outside the while loop. Do not include
- width and precision modifiers in the format_start/format_length
- of the main format.
- (check_format_types): Remove FORMAT_START and FORMAT_LENGTH
- arguments. Compute WANTED_TYPE first so that format_type_warning
- can be called for missing arguments. Adjust calls to
- format_type_warning.
- (format_type_warning): Fetch as much information as possible
- from format_wanted_type. Adjust printing now that every
- warning has a "descr", as well as for missing argument warnings
- and to include % sign for format specifiers.
-
-2010-11-12 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/46204
- * sel-sched-ir.c (maybe_tidy_empty_bb): Remove second argument.
- Update all callers. Do not recompute topological order. Adjust
- fallthrough edges following a degenerate conditional jump.
-
-2010-11-12 Joseph Myers <joseph@codesourcery.com>
-
- * opts-common.c (control_warning_option): New.
- * opts.c (set_default_handlers): New.
- (decode_options): Use set_default_handlers and
- control_warning_option.
- (common_handle_option): Update call to enable_warning_as_error.
- (enable_warning_as_error): Take gcc_options parameters. Use
- control_warning_option.
- * opts.h (set_default_handlers, control_warning_option): Declare.
-
-2010-11-12 Joseph Myers <joseph@codesourcery.com>
-
- * Makefile.in (OPTS_H): Define.
- (c-decl.o, c-family/c-common.o, c-family/c-opts.o,
- c-family/c-pch.o, c-family/c-pragma.o, gcc.o, gccspec.o,
- cppspec.o, options.o, gcc-options.o, lto-opts.o, opts.o,
- opts-common.o, toplev.o, passes.o, matrix-reorg.o,
- ipa-struct-reorg.o, PLUGIN_HEADERS): Use $(OPTS_H).
- * gcc.c (driver_handle_option): Take location_t parameter.
- (process_command, do_self_spec): Update calls to
- read_cmdline_option.
- * langhooks-def.h (lhd_handle_option): Take location_t parameter.
- * langhooks.c (lhd_handle_option): Take location_t parameter.
- * langhooks.h (handle_option): Take location_t parameter.
- * lto-opts.c (lto_reissue_options): Update call to set_option.
- * opts-common.c (handle_option): Make static. Take location_t
- parameter and pass it to other functions.
- (handle_generated_option): Take location_t parameter and pass it
- to other functions.
- (read_cmdline_option): Take location_t parameter and pass it to
- other functions. Use warning_at and error_at.
- (set_option): Take location_t parameter and pass it to other
- functions.
- * opts.c (common_handle_option): Take location_t parameter and
- pass it to other functions.
- (enable_warning_as_error): Make static. Take location_t parameter
- and pass it to other functions.
- (lang_handle_option): Take location_t parameter and pass it to
- other functions.
- (target_handle_option): Take location_t parameter.
- (read_cmdline_options, maybe_default_option,
- maybe_default_options, default_options_optimization,
- decode_options): Take location_t parameter and pass it to other
- functions.
- * opts.h: Include input.h.
- (struct cl_option_handler_func, decode_options, set_option,
- handle_generated_option, read_cmdline_option): Take location_t
- parameters.
- (handle_option, enable_warning_as_error): Remove.
- * toplev.c (toplev_main): Update call to decode_options.
-
-2010-11-12 Tobias Grosser <grosser@fim.uni-passau.de>
-
- * graphite-cloog-util.c (oppose_constraint,
- cloog_matrix_to_ppl_constraint,
- new_Constraint_System_from_Cloog_Matrix): Explicitly cast to int as
- CLooG isl uses unsigned integers. This triggered a warning.
-
-2010-11-12 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/46438
- * config/xtensa/xtensa.c (xtensa_expand_nonlocal_goto): Use LCT_NORMAL.
- (xtensa_setup_frame_addresses, xtensa_trampoline_init): Likewise.
- (xtensa_function_arg_1): De-constify cum.
- (xtensa_expand_prologue): Use add_reg_note.
-
- PR target/46435
- * config/cris/cris.c (saved_regs_mentioned): Delete.
- (cris_reload_address_legitimized): Cast itype to enum reload_type.
- Remove unused variable op0p.
- (cris_rtx_costs): Cast argument 2 to rtx_cost to enum rtx_code.
- (cris_emit_movem_store): Use add_reg_note.
-
- PR bootstrap/46456
- * cppbuiltin.c (define_builtin_macros_for_type_sizes): Split assert.
-
-2010-11-12 Eric Botcazou <ebotcazou@adacore.com>
-
- * function.c (expand_function_end): Set the locator of the prologue on
- the stack checking insns.
-
-2010-11-12 Richard Henderson <rth@redhat.com>
-
- * config.gcc [xtensa] (extra_options): Add fused-madd.opt.
- * config/xtensa/xtensa.opt (mfused-madd): Remove.
- * config/xtensa/xtensa.c (TARGET_DEFAULT_TARGET_FLAGS): Remove
- MASK_FUSED_MADD.
- * config/xtensa/xtensa.md (fmasf4): Rename from muladdsf3; use fma.
- (fnmasf4): Rename from mulsubsf3; use fma.
-
-2010-11-12 Joern Rennecke <amylaar@spamcop.net>
- Richard Henderson <rth@redhat.com>
-
- PR target/46428
- * config/moxie/moxie.c (moxie_expand_prologue): Remove unused variables.
- * config/moxie/moxie.h (HARD_REGNO_OK_FOR_BASE_P): Use unsigned
- comparison.
-
-2010-11-12 Pat Haugen <pthaugen@us.ibm.com>
-
- * opts-common.c (decode_cmdline_option): Initialize separate_args.
-
-2010-11-12 Jan Hubicka <jh@suse.cz>
-
- * doc/invoke.texi (early-inlining-insns): Update default.
- * params.def (early-inlining-insns): Default to 10.
-
-2010-11-12 Olivier Hainque <hainque@adacore.com>
-
- * config/rs6000/aix.h: #undef TARGET_AIX_OS before #define.
-
-2010-11-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/mips/iris6.h [!IRIX_USING_GNU_LD]
- (SUPPORTS_INIT_PRIORITY): Define.
-
-2010-11-12 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/46430
- * config/avr/avr-protos.h (avr_return_addr_rtx): Update prototype.
- * config/avr/driver-avr.c (avr_device_to_arch): Always return value.
- (avr_device_to_data_start, avr_device_to_startfiles): Likewise.
- (avr_device_to_devicelib): Likewise.
- * config/avr/avr.md (zero_extendqihi2): Put variable declarations
- into block.
- (zero_extendqisi2, zero_extendhisi2, zero_extendqidi2): Likewise.
- (zero_extendhidi2, zero_extendsidi2): Likewise.
- * config/avr/avr.c (avr_num_arg_regs): Constify type.
- (avr_return_addr_rtx): De-constify tem.
- (avr_rotate_bytes): Move declarations to start of block.
- Don't use variable length array. Put nested if/else into block.
-
- PR rtl-optimization/46433
- * var-tracking.c: Include tm_p.h .
-
- PR bootstrap/44756
- PR build/44767
- * doc/tm.texi.in (LOCAL_ALIGNMENT): State that the type, if any,
- should be unsigned.
- (STACK_SLOT_ALIGNMENT, LOCAL_DECL_ALIGNMENT, PUSH_ROUNDING): Likewise.
- * doc/tm.texi: Regenerate.
-
- PR target/46412
- * config/bfin/bfin-protos.h (bfin_local_alignment): Update prototype.
- * config/bfin/bfin.c: Include sel-sched.h .
- (bfin_cpus): Use BFIN_CPU_UNKNOWN for last initializer element.
- (expand_interrupt_handler_prologue): Remove unused variable insn.
- (bfin_load_pic_reg): Likewise.
- (bfin_rtx_costs): Make code / outer_code variables of type
- enum rtx_code, copied from re-named parameters.
- (bfin_local_alignment): Change align argument and return type
- to unsigned.
- (bfin_adjust_cost): Remove unused variable insn_type.
- Declare variables at start of block.
- (struct loop_info): Rename to...
- (struct loop_info_d).
- (workaround_rts_anomaly): Change type of icode to int.
- (harmless_null_pointer_p): Cast REGNO (..) to int before comparison
- with int-typed variable.
- (note_np_check_stores): Likewise.
- (trapping_loads_p): Remove unused variable pat.
- (bfin_expand_binop_builtin): Use expand_normal.
- (bfin_expand_unop_builtin): Likewise.
- (bfin_expand_builtin): Likewise. Set tmode before use.
-
- PR middle-end/44769
- * final.c (split_double): Don't use BITS_PER_WORD directly in
- shift count.
-
- PR target/46431
- * config/fr30/fr30.md (*movsf_constant_store): Remove duplicated
- assignment.
-
- PR target/46450
- * config/stormy16/stormy16.c (xstormy16_expand_prologue):
- Use add_reg_note.
- (xstormy16_function_arg): Dereference cum.
- (xstormy16_expand_builtin): Use expand_normal.
- Change type of omode to enum machine_mode.
- (combine_bnp): Rename and to and_insn.
-
- PR target/46437
- * config/mcore/mcore.c (layout_mcore_frame): Remove unused variable
- localreg.
-
-2010-11-12 Eric Botcazou <ebotcazou@adacore.com>
-
- PR debug/46375
- * emit-rtl.c (remove_insn): Do not mark BBs upon debug insns.
-
-2010-11-11 Rodrigo Rivas Costa <rodrigorivascosta@gmail.com>
-
- PR lto/46376
- * lto-symtab.c (lto_symtab_resolve_replaceable_p): Use DECL_ONE_ONLY.
-
-2010-11-11 Nathan Froyd <froydnj@codesourcery.com>
-
- PR c/44782
- * common.opt (fmax-errors=): New option.
- * opts.c (common_handle_option) [OPT_fmax_errors_]: Handle it.
- * diagnostic.h (struct diagnostic_context): Add max_errors field.
- * diagnostic.c (diagnostic_initialize): Initialize it.
- (diagnostic_action_after_output): Exit if more than max_errors
- have been output.
- * doc/invoke.texi (Warning Options): Add -fmax-errors.
- (-fmax-errors): Document.
-
-2010-11-11 Richard Henderson <rth@redhat.com>
-
- * optabs.c (init_optabs): Init {fma,fms,fnma,fnms}_optab properly.
-
-2010-11-11 Richard Henderson <rth@redhat.com>
-
- * config/fused-madd.opt: New file.
- * config.gcc [i386-*, x86_64-*] (extra_options): Use it.
- * config/i386/i386.c (ix86_extra_costs): Handle FMA.
- (TARGET_DEFAULT_TARGET_FLAGS): Remove MASK_FUSED_MADD.
- * config/i386/i386.opt (mfused-madd): Remove.
- * config/i386/sse.md (split_fma): Remove.
- (split_fms, split_fnma, split_fnms): Remove.
-
-2010-11-12 Jakub Jelinek <jakub@redhat.com>
-
- PR target/46088
- * config/i386/i386.md (*ashl<mode>3_cconly,
- *<shiftrt_insn><mode>3_cconly): Don't use ix86_binary_operator_ok,
- change nonimmediate_operand predicate to register_operand.
-
-2010-11-11 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.in (gengtype-lex.c): Include bconfig.h first.
-
-2010-11-11 Jan Hubicka <jh@suse.cz>
-
- * opts.c (finish_options): Do not error on -flto-partition alone.
-
- * doc/invoke.texi (-fwhopr): Merge into -flto section.
- (-flto-partition): Document none.
- * gcc.c (LINK_COMMAND_SPEC): Remove -fwhopr.
- * lto-wrapper.c: Update comment.
- (run_gcc): Update LTO option parsing.
- * opts.c (finish_options): add support -flto-partition=none
- (common_handle_option): Remove fwhopr.
- * common.opt: Turn fwhopr into flto.
- * collect2.c (main): Update option handling.
- * cgraphunit.c (cgraph_decide_is_function_needed): Remove flag_whopr.
- * ipa-split.c (execute_split_functions): Remove flag_whopr.
- * ipa.c (function_and_variable_visibility): Remove flag_whopr.
- * ipa-prop.c (ipa_compute_jump_functions): Remove flag_whopr.
- * varpool.c (decide_is_variable_needed): Remove flag_whopr.
-
-2010-11-11 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimize/40436
- * ipa-inline.c (likely_eliminated_by_inlining_p): Rename to ...
- (eliminated_by_inlining_prob): ... this one; return 50% probability
- for SRA.
- (estimate_function_body_sizes): Update use of
- eliminated_by_inlining_prob; estimate static function size
- for 2 instructions.
-
-2010-11-11 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/44749
- * config/mep/mep-protos.h (mep_legitimize_reload_address): Always
- declare. Change type of argument four to type int.
- (mep_secondary_input_reload_class): Returns enum reg_class.
- (mep_secondary_output_reload_class): Likewise.
- (mep_function_value): Change types of arguments to cont_tree.
- * config/mep/mep.c (mep_legitimize_reload_address): Change type of
- argument four to type int.
- (mep_secondary_input_reload_class): Returns enum reg_class.
- (mep_secondary_output_reload_class): Likewise.
- (mep_function_value): Change types of arguments to cont_tree.
- * config/mep/mep.h (REGNO_REG_CLASS): Cast return value of
- mep_regno_reg_class to enum reg_class.
-
-2010-11-11 Richard Henderson <rth@redhat.com>
-
- * tree-ssa-math-opts.c (convert_mult_to_fma): Do not verify
- that the target has the exact fma operation that we matched.
-
-2010-11-11 Joseph Myers <joseph@codesourcery.com>
-
- * reginfo.c (fix_register): Avoid inserting English word in
- diagnostic sentence. Use %qs for quoting and %'.
-
-2010-11-11 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/driver-i386.c (host_detect_local_cpu): Support
- Intel processor family 6, model 0x2c.
-
-2010-11-11 Joseph Myers <joseph@codesourcery.com>
-
- * opts.c (warning_as_error_callback,
- register_warning_as_error_callback): Remove.
- (enable_warning_as_error): Don't use warning_as_error_callback.
- * opts.h (register_warning_as_error_callback): Remove.
-
-2010-11-11 Richard Henderson <rth@redhat.com>
-
- * tree-ssa-math-opts.c (convert_mult_to_fma): Handle a NEGATE_EXPR
- in between the MULT and the PLUS/MINUS.
-
-2010-11-11 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/46388
- * expr.c (expand_assignment): If to_rtx is a VOIDmode MEM, use
- BLKmode mode for it.
- (expand_expr_real_1): Similarly for op0.
-
-2010-11-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/sourcebuild.texi (LTO Testing, dg-suppress-ld-options):
- Document optional target selector.
-
-2010-11-11 Dave Korn <dave.korn.cygwin@gmail.com>
-
- * lto-streamer-out.c (write_symbol): Use int_size_in_bytes rather than
- assembling high and low parts of size if not using 32-bit HWINT; else
- use DECL_SIZE_UNITS, not DECL_SIZE.
-
-2010-11-11 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/46383
- * ipa-prop.c (compute_complex_assign_jump_func): Ignore negative
- offsets.
- (compute_complex_ancestor_jump_func): Likewise.
- * tree.c (get_binfo_at_offset): Return NULL_TREE if offset is negative.
-
-2010-11-11 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/46150
- * tree-ssa-loop-ivopts.c (htab_inv_expr_eq): Don't return
- true if expr1->hash != expr2->hash.
-
-2010-11-10 Joseph Myers <joseph@codesourcery.com>
-
- * cfgloop.c (verify_loop_structure): Use %' in diagnostics. Start
- diagnostics with lowercase letters.
- * cgraphunit.c (verify_cgraph_node): Start diagnostics with
- lowercase letters.
- * collect2.c (maybe_run_lto_and_relink): Remove trailing '.' from
- diagnostic.
- * config/alpha/freebsd.h (LINK_SPEC): Avoid '`' in diagnostic.
- * config/arm/arm.c (arm_get_pcs_model): Start diagnostics with
- lowercase letters.
- * config/arm/freebsd.h (LINK_SPEC): Avoid '`' in diagnostic.
- Remove trailing ' ' from diagnostic.
- * config/avr/avr.c (print_operand_address): Start diagnostic with
- a lowercase letter and remove trailing '.'.
- * config/avr/avr.opt (mpmem-wrap-around): Fix typo in help text.
- * config/bfin/bfin.c (bfin_option_override): Start diagnostics
- with lowercase letters. Use %' in diagnostics. Remove trailing
- '.' from diagnostics.
- (bfin_handle_longcall_attribute): Use %' in diagnostic.
- * config/cris/cris.c (cris_split_movdx,
- cris_expand_pic_call_address): Start diagnostics with lowercase
- letters.
- (cris_asm_output_label_ref): Use %' in diagnostic.
- * config/cris/cris.h (ASM_SPEC): Start diagnostic with a lowercase
- letter.
- * config/crx/crx.h (FUNCTION_PROFILER): Start diagnostic with a
- lowercase letter.
- * config/darwin-c.c (version_as_macro): Start diagnostic with a
- lowercase letter.
- * config/darwin-driver.c (darwin_default_min_version): Use %' in
- diagnostic.
- * config/host-darwin.c (darwin_gt_pch_use_address): Use %' in
- diagnostic.
- * config/i386/freebsd.h (LINK_SPEC): Avoid '`' in diagnostic.
- * config/i386/host-cygwin.c (cygwin_gt_pch_get_address): Use %' in
- diagnostics.
- * config/i386/i386.c (ix86_option_override_internal): Write
- diagnostic as a single sentence without trailing '.'. Use %' in
- diagnostics.
- (ix86_function_sseregparm, classify_argument): Start diagnostics
- with lowercase letters.
- (ix86_expand_prologue): Use %' in diagnostic.
- * config/i386/i386.h (CC1_CPU_SPEC_1): Remove trailing '.' from
- diagnostic.
- * config/i386/nwld.h (LINK_SPEC): Start diagnostic with a
- lowercase letter.
- * config/i386/winnt.c (i386_pe_determine_dllimport_p): Use %' in
- diagnostic.
- * config/ia64/freebsd.h (LINK_SPEC): Avoid '`' in diagnostic.
- * config/ia64/ia64.opt (msched-max-memory-insns-hard-limit): Avoid
- '`' in help text.
- * config/lm32/lm32.c (lm32_print_operand): Start diagnostic with a
- lowercase letter.
- * config/mep/mep.c (mep_validate_vliw): Start diagnostics with
- lowercase letters.
- * config/microblaze/microblaze.c (microblaze_handle_option):
- Remove trailing '.' from diagnostic.
- (print_operand): Start diagnostic with a lowercase letter.
- * config/pa/pa-hpux10.h (LINK_SPEC): Start diagnostics with
- lowercase letters. Avoid '`' in diagnostics.
- * config/pa/pa-hpux11.h (LINK_SPEC): Start diagnostics with
- lowercase letters. Avoid '`' in diagnostics.
- * config/pa/pa64-hpux.h (LINK_SPEC): Start diagnostics with
- lowercase letters. Avoid '`' in diagnostics.
- * config/picochip/picochip.c (picochip_option_override,
- picochip_emit_save_register, picochip_function_arg,
- picochip_output_label, picochip_output_internal_label,
- picochip_asm_output_opcode, picochip_output_cbranch,
- picochip_output_compare, picochip_output_branch,
- picochip_get_vliw_alu_id): Remove trailing '.' and '\n' from
- diagnostics. Start diagnostics with lowercase letters. Use %' in
- diagnostics.
- * config/rs6000/rs6000.c (rs6000_option_override_internal): Use
- "SPE" capitalization. Start diagnostic with a lowercase letter.
- (rs6000_handle_option): Start diagnostics with lowercase letters.
- (def_builtin): Remove trailing '.' from diagnostic.
- (rs6000_savres_routine_name): Start diagnostic with a lowercase
- letter.
- * config/rs6000/sysv4.h (LINK_OS_FREEBSD_SPEC): Avoid '`' in
- diagnostic.
- * config/rx/rx.c (rx_handle_option): Start diagnostic with a
- lowercase letter.
- * config/s390/s390.c (s390_option_override) Start diagnostics with
- lowercase letters. Use %' in diagnostic.
- * config/sh/sh.c (sh_output_mi_thunk): Start diagnostics with
- lowercase letters.
- * config/sh/symbian-base.c (sh_symbian_mark_dllimport): Use %' in
- diagnostic.
- * config/sh/symbian-c.c (sh_symbian_is_dllimported): Use %' in
- diagnostic.
- * config/sh/symbian-cxx.c (sh_symbian_is_dllimported): Use %' in
- diagnostic.
- * config/sparc/freebsd.h (LINK_SPEC): Avoid '`' in diagnostic.
- * config/spu/spu.c (spu_option_override): Start diagnostics with
- lowercase letters. Use %qs for quoting in diagnostics.
- (spu_check_builtin_parm): Remove trailing '.' from diagnostics.
- Use %wd instead of HOST_WIDE_INT_PRINT_DEC in diagnostic .
- * config/v850/v850.c (construct_save_jarl): Remove trailing '\n'
- from diagnostic.
- * convert.c (convert_to_integer, convert_to_vector): Use %' in
- diagnostics.
- * dbgcnt.c (dbg_cnt_process_opt): Start diagnostic with lowercase
- letter and use "cannot" spelling.
- * expmed.c (extract_fixed_bit_field): Start diagnostic with
- lowercase letter and format as a single sentence without '.'.
- * ggc-common.c (write_pch_globals, gt_pch_save, gt_pch_restore):
- Use %' in diagnostics.
- * ggc-page.c (ggc_pch_write_object, ggc_pch_finish, ggc_pch_read):
- Use %' in diagnostics.
- * ggc-zone.c (ggc_pch_write_object, ggc_pch_finish, ggc_pch_read):
- Use %' in diagnostics.
- * graph.c (clean_graph_dump_file): Use %' in diagnostic.
- * graphite-poly.c (graphite_read_scop_file): Start diagnostics
- with lowercase letters and remove tailing '.' and '\n'.
- * lto-cgraph.c (input_profile_summary): Start diagnostic with
- lowercase letter and remove trailing '.'.
- (input_cgraph): Start diagnostics with lowercase letters and
- remove trailing '\n'.
- * opts.c (finish_options, common_handle_option): Start diagnostics
- with lowercase letters and remove trailing '.'. Fix typo in
- diagnostic.
- * passes.c (position_pass): Start diagnostic with lowercase letter.
- * plugin.c (add_new_plugin, parse_plugin_arg_opt,
- register_callback, try_init_one_plugin): Start diagnostics with
- lowercase letters.
- * reload1.c (spill_failure): Use %' in diagnostic.
- (gen_reload): Start diagnostic with a lowercase letter.
- * stor-layout.c (place_field): Start diagnostic with a lowercase
- letter.
- * toplev.c (open_auxiliary_file): Use %' in diagnostic.
- * tree-cfg.c (verify_expr, verify_types_in_gimple_reference,
- verify_gimple_call, verify_gimple_phi, verify_eh_throw_stmt_node):
- Start diagnostics with lowercase letters, remove trailing '.' and
- use %' in diagnostics.
- * tree-ssa.c (verify_def): Remove trailing '.' from diagnostic.
- (verify_ssa): Don't split diagnostic across two error calls.
- Spell out "number" and use %' in diagnostic.
- * value-prof.c (visit_hist, check_counter): Start diagnostics with
- lowercase letters.
-
-2010-11-10 Uros Bizjak <ubizjak@gmail.com>
-
- PR middle-end/46419
- * config/i386/xmmintrin.h (_mm_cvtpi16_ps): Swap __hisi and __losi.
- (_mm_cvtpu16_ps): Ditto.
-
-2010-11-10 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (flag_excess_precision_cmdline, flag_generate_lto,
- warn_larger_than, larger_than_size, warn_frame_larger_than,
- frame_larger_than_size, flag_gen_aux_info, flag_shlib,
- default_visibility, flag_tls_default): New Variable declarations.
- (aux-info, auxbase, dumpbase, dumpdir, falign-functions=,
- falign-jumps=, falign-labels=, falign-loops=, o, v): Use Var.
- (v): Declare as Common and document here.
- * flags.h (default_visibility, flag_generate_lto,
- warn_larger_than, larger_than_size, warn_frame_larger_than,
- frame_larger_than_size, flag_gen_aux_info, flag_pedantic_errors,
- flag_shlib, flag_excess_precision_cmdline): Remove.
- (set_Wstrict_aliasing): Update prototype.
- * gcc.c (verbose_flag): Remove.
- (driver_handle_option): Add diagnostic_context parameter. Don't
- handle OPT_v explicitly here. Set verbose_flag to 1 rather than
- incrementing it.
- * opts-common.c (handle_option): Pass dc to handler.
- * opts.c (warn_larger_than, larger_than_size,
- warn_frame_larger_than, frame_larger_than_size,
- default_visibility): Remove.
- (common_handle_option): Add diagnostic_context parameter.
- (set_fast_math_flags, set_unsafe_math_optimizations_flags): Add
- gcc_options parameters.
- (lang_handle_option, target_handle_option, read_cmdline_options,
- decode_options): Add diagnostic_context parameters.
- (finish_options): Access option state through opts pointer where
- possible.
- (common_handle_option): Access option state through opts pointer
- where possible. Do not set local static variable verbose. Do not
- explicitly handle OPT_v, OPT_Wstrict_aliasing_,
- OPT_Wstrict_overflow_, OPT_Wunused, OPT_auxbase, OPT_dumpbase,
- OPT_dumpdir, OPT_falign_functions_, OPT_falign_jumps_,
- OPT_falign_labels_, OPT_falign_loops_, OPT_fira_verbose_, OPT_o or
- OPT_fwhopr_. Do not explicitly set .opt file variables for
- OPT_aux_info or OPT_pedantic_errors. Use dc for diagnostic context.
- (set_Wstrict_aliasing): Add gcc_options parameter.
- * opts.h (struct cl_option_handler_func): Add diagnostic_context
- parameter to handler.
- (decode_options): Add diagnostic_context parameter.
- * toplev.c (dump_base_name, dump_dir_name, aux_base_name,
- asm_file_name, flag_generate_lto, flag_gen_aux_info,
- aux_info_file_name, flag_shlib, flag_tls_default,
- flag_excess_precision_cmdline, flag_pedantic_errors): Remove.
- (toplev_main): Pass global_dc to decode_options.
- * toplev.h (dump_base_name, dump_dir_name, aux_base_name,
- aux_info_file_name, asm_file_name): Remove.
- * tree.h (flag_tls_default): Remove.
-
-2010-11-10 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/45986
- * config/sparc/sparc.c (sparc_delegitimize_address): New function.
- (TARGET_DELEGITIMIZE_ADDRESS): Define to above.
-
-2010-11-10 Quentin Neill <quentin.neill.gnu@gmail.com>
-
- * config.gcc (i[34567]86-*-*): Include tbmintrin.h.
- (x86_64-*-*): Likewise.
- * config/i386/cpuid.h: Define TBM bit.
- * config/i386/driver-i386.c (host_detect_local_cpu): Define
- and set has_tbm.
- * config/i386/i386-c.c (ix86_target_macros_internal): Check
- isa_flag for TBM.
- * config/i386/i386.c (OPTION_MASK_ISA_TBM_SET): New.
- (OPTION_MASK_ISA_TBM_UNSET): New.
- (ix86_handle_option): Handle -mtbm.
- (isa_opts): Add -mtbm.
- (enum pta_flags): Add PTA_TBM.
- (ix86_option_override_internal): Add TBM support.
- (ix86_valid_target_attribute_inner_p): Handle -mtbm.
- (IX86_BUILTIN_BEXTRI32): New for TBM intrinsic.
- (IX86_BUILTIN_BEXTRI64): Likewise.
- (bdesc_args): Add TBM intrinsics.
- (ix86_expand_builtin): Add TBM specific case.
- * config/i386/i386.h (TARGET_TBM): New for TBM.
- * config/i386/i386.md (UNSPEC_BEXTRI): New for TBM.
- (tbm_bextri_<mode>): Likewise.
- (*tbm_blcfill_<mode>): Likewise.
- (*tbm_blci_<mode>): Likewise.
- (*tbm_blcic_<mode>): Likewise.
- (*tbm_blcmsk_<mode>): Likewise.
- (*tbm_blcs_<mode>): Likewise.
- (*tbm_blsfill_<mode>): Likewise.
- (*tbm_blsic_<mode>): Likewise.
- (*tbm_t1mskc_<mode>): Likewise.
- (*tbm_tzmsk_<mode>): Likewise.
- * config/i386/i386.opt: Add -mtbm.
- * config/i386/tbmintrin.h (__bextri_u32): New.
- (__blcfill_u32): Likewise.
- (__blci_u32): Likewise.
- (__blcic_u32): Likewise.
- (__blcmsk_u32): Likewise.
- (__blcs_u32): Likewise.
- (__blsfill_u32): Likewise.
- (__blsic_u32): Likewise.
- (__t1mskc_u32): Likewise.
- (__tzmsk_u32): Likewise.
- (__bextri_u64): Likewise.
- (__blcfill_u64): Likewise.
- (__blci_u64): Likewise.
- (__blcic_u64): Likewise.
- (__blcmsk_u64): Likewise.
- (__blcs_u64): Likewise.
- (__blsfill_u64): Likewise.
- (__blsic_u64): Likewise.
- (__t1mskc_u64): Likewise.
- (__tzmsk_u64): Likewise.
- * config/i386/x86intrin.h: Add TBM check and tbmintrin.h.
- * doc/invoke.texi: Document -mtbm.
- * doc/extend.texi: Document TBM built-in functions.
-
-2010-11-10 Quentin Neill <quentin.neill.gnu@gmail.com>
-
- * config.gcc (i[34567]86-*-*): Include bmiintrin.h.
- (x86_64-*-*): Likewise.
- * config/i386/cpuid.h: Define BMI bit.
- * config/i386/driver-i386.c (host_detect_local_cpu): Define
- and set has_bmi.
- * config/i386/i386-c.c (ix86_target_macros_internal): Check
- isa_flag for BMI.
- * config/i386/i386.c (OPTION_MASK_ISA_BMI_SET): New.
- (OPTION_MASK_ISA_BMI_UNSET): New.
- (ix86_handle_option): Handle -mbmi.
- (isa_opts): Add -mbmi.
- (enum pta_flags): Add PTA_BMI.
- (ix86_option_override_internal): Add BMI support.
- (ix86_valid_target_attribute_inner_p): Handle -mbmi.
- (IX86_BUILTIN_BEXTR32): New for BMI intrinsic.
- (IX86_BUILTIN_BEXTR64): Likewise.
- (IX86_BUILTIN_CTZS): Likewise.
- (bdesc_args): Add BMI intrinsics.
- (ix86_expand_args_builtin): Add BMI specific cases.
- * config/i386/i386.h (TARGET_BMI): New for BMI.
- (CTZ_DEFINED_VALUE_AT_ZERO): Likewise.
- (CLZ_DEFINED_VALUE_AT_ZERO): Likewise.
- * config/i386/i386.md (UNSPEC_BEXTR): New for BMI.
- (UNSPEC_TZCNT): Likewise.
- (ctz<mode>2): Add tzcnt, and handle 16 bit operands.
- (bmi_andn_<mode>): New for BMI.
- (bmi_bextr_<mode>): Likewise.
- (bmi_blsi_<mode>): Likewise.
- (bmi_blsmsk_<mode>): Likewise.
- (bmi_blsr_<mode>): Likewise.
- * config/i386/i386.opt: Add -mbmi.
- * config/i386/x86intrin.h: Add BMI check and bmiintrin.h.
- * config/i386/bmiintrin.h (__lzcnt_u16): New.
- (__tzcnt_u16): Likewise.
- (__andn_u32): Likewise.
- (__bextr_u32): Likewise.
- (__blsi_u32): Likewise.
- (__blsmsk_u32): Likewise.
- (__blsr_u32): Likewise.
- (__lzcnt_u32): Likewise.
- (__tzcnt_u32): Likewise.
- (__andn_u64): Likewise.
- (__bextr_u64): Likewise.
- (__blsi_u64): Likewise.
- (__blsmsk_u64): Likewise.
- (__blsr_u64): Likewise.
- (__lzcnt_u64): Likewise.
- (__tzcnt_u64): Likewise.
- * doc/invoke.texi: Document -mbmi and -mno-bmi.
- * doc/extend.texi: Document BMI built-in functions.
-
-2010-11-10 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimize/46228
- * doc/invoke.texi (comdat-sharing-probability): Document.
- * ipa-inline.c (cgraph_estimate_growth): Handle COMDATs
- * params.def (PARAM_COMDAT_SHARING_PROBABILITY): New param.
-
-2010-11-10 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimize/46228
- * cgraph.c (cgraph_propagate_frequency): Fix typo.
-
-2010-11-10 H.J. Lu <hongjiu.lu@intel.com>
-
- PR tree-optimization/46414
- * tree-inline.c (estimate_move_cost): Check preferred vector
- mode for vector type.
-
-2010-11-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/alpha/osf5.h (ASM_SPEC): Remove -nocpp.
-
-2010-11-10 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/45971
- * tree-if-conv.c (predicate_scalar_phi): Do not generate a COND_EXPR
- for phi nodes analyzable by scev.
-
-2010-11-10 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44964
- * ipa-inline.c (cgraph_flatten): Check that SSA form matches.
-
-2010-11-10 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/46351
- PR tree-optimization/46377
- * tree-sra.c (type_internals_preclude_sra_p): Disqualify types with
- aggregate bit-fields.
-
-2010-11-10 Joseph Myers <joseph@codesourcery.com>
-
- * doc/tm.texi.in (TARGET_OPTION_TRANSLATE_TABLE): Remove.
- * doc/tm.texi: Regenerate.
- * opts-common.c (tm.h): Don't include.
- (target_option_translations): Remove.
- (decode_cmdline_options_to_array): Don't handle translating options.
- * system.h (TARGET_OPTION_TRANSLATE_TABLE): Poison.
- * config/darwin-driver.c: Don't condition includes on
- CROSS_DIRECTORY_STRUCTURE.
- (darwin_default_min_version): Make static.
- (darwin_driver_init): New. Call darwin_default_min_version if not
- CROSS_DIRECTORY_STRUCTURE.
- * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Remove.
- (DRIVER_SELF_SPECS, DARWIN_CC1_SPEC): Define.
- (ASM_SPEC): Add %{static}.
- (darwin_default_min_version): Don't declare.
- (darwin_driver_init): Declare.
- (GCC_DRIVER_HOST_INITIALIZATION): Define to call
- darwin_driver_init, independent of CROSS_DIRECTORY_STRUCTURE.
- * config/darwin.opt (all_load, allowable_client,
- arch_errors_fatal, bind_at_load, bundle, bundle_loader,
- dead_strip, dependency-file, dylib_file, dynamic, dynamiclib,
- exported_symbols_list, filelist, findirect-virtual-calls,
- flat_namespace, force_cpusubtype_ALL, force_flat_namespace,
- framework, fterminated-vtables, gfull, gused, image_base, init,
- install_name, multi_module, multiply_defined,
- multiply_defined_unused, no_dead_strip_inits_and_terms,
- seg_addr_table, seg_addr_table_filename, segaddr,
- segs_read_only_addr, segs_read_write_addr, single_module,
- umbrella, unexported_symbols_list, weak_reference_mismatches,
- Zall_load, Zarch_errors_fatal, Zbind_at_load, Zbundle,
- Zdead_strip, Zdynamic, Zdynamiclib, Zflat_namespace,
- Zforce_cpusubtype_ALL, Zforce_flat_namespace, Zmulti_module,
- Zno_dead_strip_inits_and_terms, Zsingle_module): New.
- * config/i386/darwin.h (CC1_SPEC): Add DARWIN_CC1_SPEC.
- (ASM_SPEC): Add %{static}.
- (SUBTARGET_OPTION_TRANSLATE_TABLE): Remove.
- * config/mep/mep.h (TARGET_OPTION_TRANSLATE_TABLE): Remove.
- (DRIVER_SELF_SPECS): Handle options formerly in
- TARGET_OPTION_TRANSLATE_TABLE.
- * config/mep/mep.opt (mfar): New.
- * config/picochip/picochip.h (TARGET_OPTION_TRANSLATE_TABLE): Remove.
- (DRIVER_SELF_SPECS): Define. Handle options formerly in
- TARGET_OPTION_TRANSLATE_TABLE.
- * config/rs6000/darwin.h (CC1_SPEC): Handle -faltivec and -fno-altivec.
- (SUBTARGET_OPTION_TRANSLATE_TABLE): Remove.
- * config/rs6000/darwin.opt (Waltivec-long-deprecated, faltivec,
- ffix-and-continue, findirect-data): New.
- * config/rx/rx.h (TARGET_OPTION_TRANSLATE_TABLE): Remove.
- * config/rx/rx.opt (nofpu): Make into alias of mnofpu.
- (mnofpu): Define mask and use Report here.
-
-2010-11-10 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.c (s390_emit_prologue): Report the stack
- size if -fstack-usage is used.
-
-2010-11-10 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46398
- * tree-ssa-sccvn.c (process_scc): Iterate for all PHIs.
-
-2010-11-10 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/44760
- * config/iq2000/iq2000.h (REGISTER_NAMES): Remove trailing semicolon.
- (REGNO_MODE_OK_FOR_BASE_P): Cast REGNO to int before passing it to
- GP_REG_OR_PSEUDO_STRICT_P.
- * config/iq2000/iq2000.md (andsi3+1): Add gcc_unreachable for
- unexpected alternative.
- (*movsf_internal): Likewise.
- (indirect_jump): Replace call to non-existant function with call to
- internal_error.
- (tablejump): Likewise.
- * config/iq2000/iq2000.c: Include df.h .
- (iq2000_function_arg_advance): Use CONST_CAST2.
- (compute_frame_size, iq2000_expand_prologue): Remove unused variables.
- (iq2000_can_eliminate): Call leaf_function_p instead of testing for
- a non-zero function address.
- (iq2000_initial_elimination_offset): Add gcc_unreachable for
- unexpected value of FROM.
- (symbolic_expression_p): Delete.
- (iq2000_function_value): Constify func.
- (expand_one_builtin): Use expand_normal.
- (iq2000_print_operand): Don't print VALUE if calculating it failed.
-
- PR rtl-optimization/44764
- * addresses.h (ok_for_base_p_1): Mark regno with ATTRIBUTE_UNUSED.
-
- PR target/46407
- * config/rx/rx.h (REGISTER_NAMES): Remove trailing semicolon.
- * config/rx/rx.c (rx_promote_function_mode): Mark punsignedp
- with ATTRIBUTE_UNUSED.
- (valid_psw_flag): Constify parameter which.
- (rx_memory_move_cost): Change type of parameter regclass to reg_class_t.
-
- PR target/46415
- * config/mmix/mmix-protos.h (mmix_local_alignment): Update prototype.
- (mmix_dbx_register_number): Likewise.
- * config/mmix/mmix.c: Include df.h .
- (mmix_local_alignment): Change argument basic_align and return type
- to unsigned.
- (mmix_dbx_register_number): Change argument and return type to
- unsigned.
- (mmix_expand_prologue): Use add_reg_note.
-
- PR target/46417
- * config/spu/spu.c (spu_expand_insv): Remove unused variables.
- (spu_split_store): Use aform.
- (spu_function_profiler): Mark parameter labelno with ATTRIBUTE_UNUSED.
-
-2010-11-10 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- PR/46268
- * doc/gty.texi (GTY Options): Clarify that variable_size produces
- allocators taking size in bytes, compare with length option. Add
- size calculation example.
- (Invoking the garbage collector): Ensure that sentences are
- followed by two spaces. Describe that pointer fields must be
- initialized at ggc_collect call.
- (Troubleshooting): New section.
-
-2010-11-09 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/40436
- * ipa-inline.c (leaf_node_p): Implement using is_inexpensive_builtin.
- * tree-inline.c (estimate_num_insns): Inexpensive builtins are like
- normal instructions; be sure bultin is not implemented in this file;
- compute non-zero return cost.
- (init_inline_once): Reduce builtin_call_cost to 1; set return cost.
- * tree-inline.h (eni_weights_d): Add return cost.
-
-2010-11-09 Joseph Myers <joseph@codesourcery.com>
-
- * c-parser.c (c_parser_struct_declaration): Handle declaration
- specifiers followed by CPP_CLOSE_BRACE.
-
-2010-11-09 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * config/rs6000/rs6000.md (floatsi<mode>2_lfiwax): Rewrite so
- split occurs before reload, and we allocate memory at the time of
- the split, not during expansion. Add attributes.
- (floatsi<mode>2_lfiwax_mem): Ditto.
- (floatunssi<mode>2_lfiwzx): Ditto.
- (floatunssi<mode>2_lfiwzx_mem): Ditto.
- (floatsidf2): Ditto.
- (floatunssisf2): Ditto.
- (floatunssidf2): Ditto.
- (fix_trunc<mode>si2): Ditto.
- (fix_trunc<mode>si2_stfiwx): Ditto.
- (fix_trunc<mode>si2_internal): Ditto.
- (fix_trunc<mode>si2): Ditto.
- (fix_trunc<mode>di2): Ditto.
- (fixuns_trunc<mode>si2_stfiwx): Ditto.
- (floatsisf2): Ditto.
- (floatdidf2_mem): Ditto.
- (floatunsdidf2_mem): Ditto.
- (floatunsdidf2): Ditto.
- (floatdisf2_internal1): Ditto.
- (floatdisf2_mem): Ditto.
- (floatunsdisf2_mem): Ditto.
- (floatsi<mode>2_lfiwax_mem2): Delete.
- (floatunssi<mode>2_lfiwzx_mem2): Ditto.
- (fix_trunc<mode>si2_mem): Ditto.
- (fixuns_trunc<mode>si2_mem): Ditto.
- (round32<mode>2_fprs): New combiner insn to combine (double)(int)
- type operations to reduce copying the values to multiple memory slots.
- (roundu32<mode>2_fprs): Ditto.
-
- * config/rs6000/rs6000.c (rs6000_address_for_fpconvert): Handle
- PRE_INC, PRE_DEC, PRE_MODIFY.
- (rs6000_expand_convert_si_to_sfdf): Delete, no longer used.
-
- * config/rs6000/rs6000-protos.h (rs6000_expand_convert_si_to_sfdf):
- Delete prototype.
-
-2010-11-09 Jakub Jelinek <jakub@redhat.com>
-
- PR target/43808
- * cfgexpand.c (partition_stack_vars): Call
- update_alias_info_with_stack_vars unconditionally.
- (update_alias_info_with_stack_vars): Allow unused
- unreferenced vars when not optimizing.
-
-2010-11-09 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/46036
- * tree-if-conv.c (predicate_bbs): Call unshare_expr before
- add_to_dst_predicate_list.
-
-2010-11-09 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/46171
- * df-problems.c (struct dead_debug_use, struct dead_debug): Move
- earlier.
- (df_set_unused_notes_for_mw, df_create_unused_note): Add DEBUG
- argument, call dead_debug_reset when adding REG_UNUSED note.
- (dead_debug_reset): New function.
- (df_note_bb_compute): Adjust df_set_unused_notes_for_mw and
- df_create_unused_note callers.
-
-2010-11-09 Anatoly Sokolov <aesok@post.ru>
-
- * config/fr30/fr30.c: Include "df.h".
-
-2010-11-09 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46355
- * tree-loop-distribution.c (tree_loop_distribution): Do not
- distribute loops without a single exit.
-
-2010-11-09 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- PR rtl-optimization/46237
- * ira-conflicts.c (ira_build_conflicts): Record conflicts for call
- saved hard regs if they might get partially clobbered.
-
-2010-11-09 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md (lshrsi3, lshrhi3): Use add for decrement.
-
-2010-11-09 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46177
- * tree-loop-distribution.c (prop_phis): Remove.
- (generate_builtin): Re-use the old loop exit edge to avoid
- needing to update PHI nodes.
-
-2010-11-09 Joern Rennecke <amylaar@spamcop.net>
-
- * config/i386/i386.c (ix86_expand_split_stack_prologue): Change
- type of args_size to unsigned HOST_WIDE_INT.
-
- PR target/44755
- * config.gcc (picochip-*): Add t-pnt16-warn to tmake_file.
- * config/t-pnt16-warn: New file.
- * config/picochip/picochip.c (picochip_emit_stack_allocate):
- Use add_reg_note.
- (picochip_emit_save_register): Likewise.
- (picochip_emit_restore_register): Remove variable insn.
- (picochip_legitimize_address): Don't use C++ style comments.
- (picochip_legitimize_reload_address): Likewise.
- (reorder_var_tracking_notes): Remove variable vliw_start.
- (picochip_reorg): Cast first arguemnt to emit_note_after to
- enum insn_note.
- (picochip_expand_builtin_2op): Use EXPAND_NORMAL.
- (picochip_expand_builtin_3op): Likewise.
- (picochip_expand_builtin_2opvoid): Likewise.
- (picochip_expand_array_get, picochip_expand_array_put): Likewise.
- (picochip_expand_array_testport): Likewise.
- (picochip_init_builtins): Remove unused variables.
- * config/picochip/picochip.h (ASM_FORMAT_PRIVATE_NAME): Cast LABELNO
- to unsigned long, and output it as such.
- (ASM_OUTPUT_SKIP): Use HOST_WIDE_INT_PRINT_UNSIGNED.
- * config/picochip/picochip.md (movhicc): Remove nonsense statement.
- (schedType): Cast result of picochip_schedule_type to
- enum attr_schedType.
-
- PR target/44759
- * config/mn10300/mn10300.c (SIZE_FMOV_LIMIT): Promote all arms of
- conditional to type of S.
- (mn10300_function_arg): Remove unused variable align.
- (mn10300_arg_partial_bytes): Likewise.
- * config/mn10300/mn10300.md (attribute cpu): Cast value to
- enum attr_cpu.
-
-2010-11-09 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/46392
- * gengtype-parse.c (type): Call get_input_file_name to get file name.
-
-2010-11-09 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree.h (contains_placeholder_p): Fix comment.
- (type_contains_placeholder_p): Adjust comment.
- * tree.c (contains_placeholder_p): Fix comment.
- (type_contains_placeholder_1): Do not recurse on pointed-to types and
- adjust comment.
- (type_contains_placeholder_p): Add comment.
-
-2010-11-09 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (pdp11_assemble_integer): Clean up fix for
- output of byte values.
-
-2010-11-09 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/46360
- * tree-ssa-propagate.c (update_call_from_tree): Fix for use
- not in SSA mode.
-
-2010-11-09 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/46221
- * varasm.c (compute_visible_aliases): New function.
- (remove_unreachable_alias_pairs): Aliases make a target available
- even though we reclaimed the cgraph node.
- (finish_aliases_1): Likewise.
- * Makefile.in (varasm.o): Add pointer-set.h dependency.
-
-2010-11-09 Nick Clifton <nickc@redhat.com>
-
- * config/mn10300/mn10300-modes.def: New file.
-
-2010-11-09 Basile Starynkevitch <basile@starynkevitch.net>
- Jeremie Salvucci <jeremie.salvucci@free.fr>
-
- * gengtype.c (get_output_file_name): Declaration moved to gengtype.h.
- (plugin_files, get_file_basename, get_file_realbasename)
- (get_file_langdir, error_at_line, gt_files, this_file)
- (system_h_file, read_input_list, create_field_all)
- (get_file_srcdir_relative_path, get_file_basename)
- (get_file_langdir, get_file_gtfilename)
- (get_output_file_with_visibility, get_output_file_name)
- (struct flist, put_mangled_filename, walk_type)
- (put_mangled_filename, finish_root_table, write_roots): Use
- input_file-s.
- (lang_dir_names, num_lang_dirs): Remove static.
- (get_lang_bitmap, set_lang_bitmap): Moved to gengtype.h.
- (main): Use input_file-s.
-
- * gengtype.h: (struct input_file_st, input_file): New type.
- (struct fileloc): Use it.
- (gt_files, num_gt_files, this_file, system_h_file)
- (input_file_by_name, get_file_srcdir_relative_path): Use input_file.
- (get_input_file_name): New function.
- (get_lang_bitmap, set_lang_bitmap): Moved from gengtype.c and
- use input_file.
- (lang_dir_names, num_lang_dirs, get_output_file_with_visibility)
- (get_output_file_name): Ditto.
-
- * gengtype-lex.l (yybegin): Use input_file.
-
- * gengtype-parse.c (parse_error): Use input_file.
-
-2010-11-08 Xinliang David Li <davidxl@google.com>
-
- PR tree-optimization/46316
- * tree-vrp.c (adjust_range_with_scev): Check double_int overflow.
- * double-int.h (double_int_mul_with_sign): New function.
- * double-int.c (double_int_mul_with_sign): New function.
-
-2010-11-08 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md (lshrsi3, lshrhi3): Fix wrong code.
-
-2010-11-08 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md (negsi2): Fix wrong code.
-
-2010-11-08 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (pdp11_assemble_integer): Mask byte values
- to 8 bits.
-
-2010-11-08 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR target/46378
- * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
- turn on ISA 2.04 rounding instructions for power5.
-
- * config/rs6000/rs6000.md (friz): Friz is an ISA 2.04 instruciton,
- not ISA 2.02.
-
- PR target/45585
- * config/rs6000/darwin.md (movdi_low): Allow DImode values to be
- in FPR registers.
- (movdi_low_st): Ditto.
-
-2010-11-08 Joern Rennecke <amylaar@spamcop.net>
- Richard Henderson <rth@redhat.com>
-
- PR target/44758
- * config/frv/frv.md (attribute cpu): Cast value to enum attr_cpu.
- (attribute acc_group): Cast value to enum attr_acc_group.
- (*movdi_nodouble+6): Use gen_int_mode.
- * config/frv/frv-protos.h (frv_trampoline_size): Declare no matter
- if RTX_CODE is defined or not.
- * config/frv/frv.c (enum frv_io_type): New enum, broken out of
- struct frv_io.
- (frv_handle_option): Mark parameter value with ATTRIBUTE_UNUSED.
- (frv_frame_access, frv_expand_prologue): Remove unused variables.
- (frv_expand_block_clear): Likewise.
- (frv_trampoline_init): Use LCT_NORMAL.
- (struct frv_packet_group): New struct, broken out of type of
- frv_packet.
- (frv_start_packet, frv_reorder_packet): Initialize group to GROUP_I,
- use cast in loop counter increment.
- (frv_extract_membar): Cast HOST_WIDE_INT to enum frv_io_type before
- assigning to io->type.
- (bdesc_set): Use rtx_code UNKNOWN in initializer.
- (bdesc_1arg, bdesc_2arg, bdesc_int_void2arg): Likewise.
- (bdesc_prefetches, bdesc_cut, bdesc_2argimm, bdesc_void2arg): Likewise.
- (bdesc_void3arg, bdesc_voidacc, bdesc_loads, bdesc_stores): Likewise.
- (frv_read_argument): Use expand_normal.
-
- PR target/44757
- * config/lm32/lm32.h (LEGITIMATE_CONSTANT_P): Call
- lm32_legitimate_constant_p.
- * config/lm32/lm32.md (ashlsi3): Remove unused variable.
- * config/lm32/lm32.c (gen_int_relational): Make new block for
- LE / LT / LEU / LTU case. Declare variables at start of block.
- (lm32_block_move_inline): Use XALLOCAVEC.
-
-2010-11-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/i386/i386.c (ix86_function_arg_boundary): Fix warning message.
-
-2010-11-08 Basile Starynkevitch <basile@starynkevitch.net>
-
- * gengtype (get_output_file_for_structure): Ensure type is union
- or struct.
- (write_splay_tree_allocator_def): Use
- get_output_file_with_visibility.
-
-2010-11-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.c (s390_handle_arch_option): Set type and flags
- to defined values in case of an error.
- (s390_option_override): Skip further processing if the -march
- parameter wasn't recognized.
-
-2010-11-08 Joern Rennecke <amylaar@spamcop.net>
-
- * caller-save.c (reg_save_code): After HARD_REGNO_MODE_OK check fails,
- assert that REG is a hard register number before using it as an index.
-
- PR bootstrap/46358
- * config/i386/i386.c (ix86_expand_split_stack_prologue):
- Avoid warnings when HOST_WIDE_INT is 32 bit.
-
-2010-11-08 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/46208
- * config/sparc/sparc.c (TARGET_PROMOTE_PROTOTYPES): Delete.
- (sparc_promote_prototypes): Likewise.
- (sparc_promote_function_mode): Promote in 32-bit mode as well.
- (sparc_return_in_memory): Remove superfluous parentheses.
- (sparc_struct_value_rtx): Fix long lines.
- (sparc_function_value_1): Promote in 32-bit mode as well.
-
-2010-11-08 Andrey Belevantsev <abel@ispras.ru>
-
- PR rtl-optimization/45352
- * sel-sched.c (find_best_expr): Do not set pneed_stall when
- the variable_issue hook is not implemented.
- (fill_insns): Remove dead variable stall_iterations.
- (init_seqno_1): Force EBB start for resetting sched cycles on any
- successor blocks of the rescheduled region.
- (sel_sched_region_1): Use bitmap_bit_p instead of bitmap_clear_bit.
- (reset_sched_cycles_in_current_ebb): Add debug printing.
- New variable issued_insns. Advance state when we have issued
- issue_rate insns.
-
-2010-11-08 Basile Starynkevitch <basile@starynkevitch.net>
-
- * gengtype (main): Get here's position using POS_HERE macro for
- do*typedef calls.
-
-2010-11-07 Ian Lance Taylor <iant@google.com>
-
- PR target/46089
- * config/i386/i386.c (split_stack_fn_large): New static variable.
- (ix86_expand_split_stack_prologue): Handle large model.
-
-2010-11-07 Andreas Schwab <schwab@linux-m68k.org>
-
- * config/m68k/m68k.c (m68k_delegitimize_address): Update to handle
- all possible addressing modes.
-
-2010-11-07 Uros Bizjak <ubizjak@gmail.com>
-
- PR tree-optimization/46346
- * tree-ssa-forwprop.c (rhs_to_tree): Handle GIMPLE_TERNARY_RHS.
-
-2010-11-07 Richard Sandiford <rdsandiford@googlemail.com>
-
- * config/mips/mips.c: Revert previous patch.
- * config/mips/mips.md: Likewise.
-
-2010-11-07 Richard Sandiford <rdsandiford@googlemail.com>
-
- * config/mips/mips.c (mips_rtx_costs): Handle FMA.
- * config/mips/mips.md (*madd4<mode>, *madd3<mode>, *msub4<mode>)
- (*msub3<mode>, *nmadd4<mode>_fastmath, *nmadd3<mode>_fastmath)
- (*nmsub4<mode>_fastmath, *nmsub3<mode>_fastmath): Delete.
- (*nmadd4<mode>, *nmadd3<mode>. *nmsub4<mode>, *nmsub3<mode>): Redefine
- to use FMA.
- (fma<mode>4, *fma<mode>4_madd3, *fma<mode>4_madd4): New patterns.
- (fms<mode>4, *fms<mode>4_msub3, *fms<mode>4_msub4): Likewise.
- (fnms<mode>4, *fnms<mode>4_nmadd3, *fnms<mode>4_nmadd4): Likewise.
- (fnma<mode>4, *fnma<mode>4_nmsub3, *fnma<mode>4_nmsub4): Likewise.
-
-2010-11-06 Simon Martin <simartin@users.sourceforge.net>
-
- PR c/43384
- * c-decl.c (lookup_label): Labels can only be referenced in a
- function's scope.
- (store_parm_decls_oldstyle): Skip erroneous parameters.
-
-2010-11-06 Anatoly Sokolov <aesok@post.ru>
-
- * config/fr30/fr30.h (FUNCTION_VALUE_REGNO_P, FUNCTION_VALUE,
- LIBCALL_VALUE): Remove macros.
- * config/fr30/fr30.c (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
- TARGET_FUNCTION_VALUE_REGNO_P): Define.
- (fr30_function_value_regno_p, fr30_function_value,
- fr30_libcall_value): New functions.
-
-2010-11-06 Joern Rennecke <amylaar@spamcop.net>
-
- PR middle-end/46314
- * target.def (generate_internal_label): New asm_out hook.
- * output.h (default_generate_internal_label): Declare.
- * varasm.c (default_generate_internal_label): Define.
-
-2010-11-06 Iain Sandoe <iains@gcc.gnu.org>
-
- PR target/44981
- * doc/extend.tex (format): Document NSString extension.
- (format_arg): Likewise.
- (Darwin Format Checks): New section.
- * doc/tm.texi: Document string object hooks (generated).
- * doc/tm.texi.in (TARGET_OBJC_CONSTRUCT_STRING_OBJECT) Rename.
- (TARGET_STRING_OBJECT_REF_TYPE_P): New.
- (TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): New.
- * target.def (objc_construct_string_object): Rename, amend
- documentation.
- (string_object_ref_type_p): New hook.
- (check_string_object_format_arg): New hook.
- * c-parser.c (c_parser_attributes): Allow objective-c class names as
- attribute identifiers.
- * config/darwin-c.c (darwin_cfstring_ref_p): New.
- (darwin_check_cfstring_format_arg): New.
- (darwin_additional_format_types): New.
- * config/darwin-protos.h (darwin_cfstring_ref_p) New.
- (darwin_check_cfstring_format_arg): New.
- * config/darwin.h (TARGET_OBJC_CONSTRUCT_STRING_OBJECT) Renamed.
- (TARGET_STRING_OBJECT_REF_TYPE_P): New.
- (TARGET_N_FORMAT_TYPES): New.
- (TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): New.
-
-2010-11-06 Eric Botcazou <ebotcazou@adacore.com>
- Pascal Obry <obry@adacore.com>
-
- * config/i386/cygming.h (DWARF_FRAME_REGISTERS): Redefine. Use 33
- in 64-bit mode and 17 otherwise.
-
-2010-11-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- PR debug/45939
- * var-tracking.c (emit_note_insn_var_location): Make sure that
- call related var location notes come before the normal ones.
-
-2010-11-05 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/46326
- * config/i386/i386.c (ix86_delegitimize_address): Fix a typo
- in the last change.
-
-2010-11-05 Ian Lance Taylor <iant@google.com>
-
- * explow.c (allocate_dynamic_stack_space): Check MALLOC_ABI_ALIGNMENT.
-
-2010-11-05 Jakub Jelinek <jakub@redhat.com>
-
- PR c/44772
- * c-decl.c (warn_cxx_compat_finish_struct): Don't call
- pointer_set_contains if DECL_NAME is NULL.
-
-2010-11-05 Ian Lance Taylor <iant@google.com>
-
- PR target/46084
- * explow.c (allocate_dynamic_stack_space): If flag_split_stack,
- request enough additional space for alignment, and force alignment.
-
-2010-11-05 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/i386.c (legitimate_pic_address_disp_p):
- Handle UNSPEC_PCREL.
- (ix86_legitimate_address_p): Likewise.
- (legitimize_pic_address): Likewise.
- (output_pic_addr_const): Likewise.
- (ix86_delegitimize_address): Likewise.
- (ix86_find_base_term): Likewise.
- (memory_address_length): Likewise.
- (x86_output_mi_thunk): Handle special case x64
- for non local binding.
- * config/i386/i386.md (UNSPEC_PCREL): New.
- * config/i386/winnt.c (i386_pe_binds_local_p):
- Allow weak symbol for x64 windows with non-local binding.
-
-2010-11-05 Jakub Jelinek <jakub@redhat.com>
-
- PR target/45670
- * expr.c (expand_expr_real_1) <case MEM_REF>: Use EXPAND_SUM
- instead of EXPAND_NORMAL for base expansion.
-
-2010-11-05 Uros Bizjak <ubizjak@gmail.com>
-
- * config.gcc: Support --with-fpmath=avx for x86.
- * config/i386/avxmath.h: New.
- * doc/install.texi (--with-fpmath=): Document --with-fpmath=avx.
-
-2010-11-05 Ian Lance Taylor <iant@google.com>
-
- * tree.h (struct tree_type): Don't use descbits in GTY annotation.
- * gengtype.c (walk_type): Don't recognize descbits option.
-
-2010-11-05 Joseph Myers <joseph@codesourcery.com>
-
- * defaults.h (DEFAULT_WORD_SWITCH_TAKES_ARG,
- WORD_SWITCH_TAKES_ARG): Remove.
- * doc/options.texi (Args): Document.
- * doc/tm.texi.in (WORD_SWITCH_TAKES_ARG): Remove.
- * doc/tm.texi: Regenerate.
- * opt-functions.awk (switch_flags): Handle Args.
- * opts-common.c: Update comment on tm.h include.
- (decode_cmdline_option): Handle options with multiple arguments.
- Don't check WORD_SWITCH_TAKES_ARG for unknown options.
- * opts.h (CL_SEPARATE_NARGS_SHIFT, CL_SEPARATE_NARGS_MASK): Define.
- (CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER, CL_TARGET,
- CL_COMMON): Update values.
- * system.h (WORD_SWITCH_TAKES_ARG): Poison.
- * config/darwin.h (WORD_SWITCH_TAKES_ARG): Remove.
- * config/darwin.opt (Zsegaddr, sectalign, sectcreate,
- sectobjectsymbols, sectorder, segcreate, segprot): New.
-
-2010-11-05 H.J. Lu <hongjiu.lu@intel.com>
- Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (ix86_expand_move): Set use_avx256_p if
- 256bit AVX register is used.
- (ix86_expand_vector_move_misalign): Likewise.
- (ix86_expand_vector_move): Replace use_avx256_p with
- VALID_AVX256_REG_MODE.
-
-2010-11-05 Joern Rennecke <amylaar@spamcop.net>
-
- PR target/44750
- * config/pdp11/t-pdp11 (dwarf2out.o, java/constants.o): Undo last
- change. Set $@-warn.o to -Wno-error.
-
- PR bootstrap/44756
- * expr.c (emit_push_insn): Cast value of PUSH_ROUNDING before
- comparing it to a signed value.
-
- PR middle-end/44766
- * expr.c (can_store_by_pieces): Add ATTRIBUTE_UNUSED to cst.
- PR bootstrap/44770
- * haifa-sched.c (initiate_bb_reg_pressure_info): Add ATTRIBUTE_UNUSED
- to i.
-
- PR target/44754
- * config/m32c/m32c.c (m32_function_arg): Rename declaration to...
- (m32c_function_arg). Add comma between arguments two and three.
- (m32c_promote_prototypes): Remove declaration.
- (current_function_special_page_vector): Likewise.
- (m32c_regno_reg_class): Change return type to enum reg_class.
- (m32c_pushm_popm): Use add_reg_note.
- (m32c_push_rounding): Change return type to unsigned int.
- (m32c_legitimize_reload_address): Cast argument 11 to push_reload to
- enum reload_type.
- (m32c_insert_attributes): Constify variable name.
- (m32c_output_aligned_common): Add ATTRIBUTE_UNUSED to argument decl.
- (m32c_prepare_shift): Remove variable lref.
- (m32c_expand_movcc): Remove variable cmp.
- (m32c_expand_insv): Fix check of op0 rtx_code to use GET_CODE.
- (m32c_compare_redundant): Remove variable op2.
- * config/m32c/m32c-pragma.c ("c-family/c-common.h"): Include.
- (m32c_pragma_memregs): Assign the number to target_memregs.
- (m32c_pragma_address): Remove variable var_str.
- * config/m32c/m32c.h (REG_CLASS_FROM_CONSTRAINT): Case value to
- enum reg_class.
- (LIMIT_RELOAD_CLASS, SECONDARY_RELOAD_CLASS): Likewise.
- * config/m32c/bitops.md (andsi3): Add default case to switch.
- (iorsi3, xorsi3): Likewise.
- * config/m32c/addsub.md (addsi3_1, subsi3_1): Likewise.
- * config/m32c/jump.md (call, call_value): Likewise.
- * config/m32c/m32c-protos.h (m32c_push_rounding): Update prototype.
- (m32c_regno_reg_class): Likewise.
- (current_function_special_page_vector): Declare.
-
-2010-11-05 Jakub Jelinek <jakub@redhat.com>
-
- * cfgexpand.c (expand_debug_expr): Handle MEM_REF with non-zero offset.
-
- PR tree-optimization/46099
- * tree-parloops.c (take_address_of): Add GSI argument. Return NULL
- if it is NULL and uid wasn't found in the hash table. Just fold the
- result if it is NULL otherwise. Insert other potentially needed
- stmts right before current stmt instead of on the entry edge.
- (struct elv_data): Add gsi and reset fields.
- (eliminate_local_variables_1): Adjust caller. If take_address_of
- failed for debug stmt, set dta->reset and return.
- (eliminate_local_variables_stmt): Change STMT argument for GSI,
- pass GSI through to the callback, handle resetting of debug stmts.
- (eliminate_local_variables): Adjust caller. Process debug stmts
- in second phase.
-
- PR middle-end/43690
- * gimplify.c (gimplify_asm_expr): If a "m" input is a
- {pre,post}{in,de}crement, fail.
-
- PR debug/46307
- * tree-ssa-operands.c (get_expr_operands): Handle FMA_EXPR.
- * tree-pretty-print.c (dump_generic_node): Likewise.
- (op_code_prio): Likewise.
- * cfgexpand.c (expand_debug_expr): Likewise.
-
-2010-11-04 Paul Koning <ni1d@arrl.net>
-
- * doc/md.texi (Machine Constraints): Correct formatting in PDP-11
- constraints.
-
-2010-11-04 Chao-ying Fu <fu@mips.com>
-
- * configure.ac: Test assembler support for DSP Rev1 mult.
- * configure: Regenerate.
- * config.in: Regenerate.
- * config/mips/mips.h (ISA_HAS_DSP_MULT): New define.
- * config/mips/mips.c (CODE_FOR_mips_mult): New define.
- (CODE_FOR_mips_multu): New define.
- (mips_builtins): Move madd, maddu, msub, msubu, mult, multu from
- dspr2_32 to dsp_32.
- (mips_mulsidi3_gen_fn): Test (TARGET_FIX_R4000 && !ISA_HAS_DSP).
- Delete returns when ISA_HAS_DSPR2 because the old patterns are deleted.
- * config/mips/mips-dsp.md (mips_madd<u>, mips_msub<u>):
- New define_expand patterns.
- * config/mips/constraints.md (ka): Update the constraint to test
- ISA_HAS_DSP_MULT instead of ISA_HAS_DSPR2.
- * config/mips/mips-dspr2.md (mips_madd<u>, mips_msub<u>, mips_mult,
- mips_multu): Delete.
- * config/mips/mips.md (<u>mulsidi3_32bit): Add comments.
- Change target constraint to "ka".
- Use (!TARGET_FIX_R4000 || ISA_HAS_DSP), instead of
- (!TARGET_FIX_R4000 && !ISA_HAS_DSPR2).
- Emit the accumulator destination when ISA_HAS_DSP_MULT.
- (<u>msubsidi4): Add comments. Test ISA_HAS_DSP.
- Emit the accumulator destination when ISA_HAS_DSP_MULT.
- (<u>maddsidi4): Likewise.
- * doc/extend.texi (MIPS DSP Built-in Functions): Move madd, maddu,
- msub, msubu, mult, multu built-in functions from DSP r2 to DSP r1.
-
-2010-11-04 Paul Koning <ni1d@arrl.net>
-
- * doc/md.texi (Machine Constraints): Add PDP-11 constraints.
-
-2010-11-04 Paul Koning <ni1d@arrl.net>
-
- * doc/invoke.texi (PDP-11 Options): Delete -msplit, -mno-split.
-
-2010-11-04 Nicola Pero <nicola.pero@meta-innovation.com>
-
- Fixed using the Objective-C 2.0 dot-syntax with class names.
- * c-parser.c (c_parser_next_token_starts_declspecs): In
- Objective-C, detect Objective-C 2.0 dot-syntax with a class name.
- (c_parser_next_token_starts_declaration): Same.
- (c_parser_postfix_expression): Parse the Objective-C 2.0
- dot-syntax with a class name.
-
-2010-11-04 Pat Haugen <pthaugen@us.ibm.com>
-
- * final.c (compute_alignments): Compute/free loop info all the time.
- * config/rs6000/rs6000.h (LOOP_ALIGN): Define.
- * config/rs6000/rs6000-protos.h (rs6000_loop_align): Declare.
- * config/rs6000/t-rs6000 (rs6000.o): Add cfgloop.h.
- * config/rs6000/rs6000.c (cfgloop.h): Include.
- (can_override_loop_align): New.
- (rs6000_option_override_internal): Set it.
- (TARGET_ASM_LOOP_ALIGN_MAX_SKIP): Define target hook.
- (rs6000_loop_align): New function.
- (rs6000_loop_align_max_skip): Likewise.
-
-2010-11-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR driver/45703
- * collect2.c (main): Print --help output to stdout. Do not
- exit right away, so ld --help is appended. Add empty lines
- to separate output suitably.
-
-2010-11-04 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/46233
- * ipa-pure-const.c (local_pure_const): Do noreturn discovery
- after calling analyze_function, not before.
-
- PR target/46234
- * config/rs6000/rs6000.c (rs6000_va_start): Use build_simple_mem_ref
- instead of build_va_arg_indirect_ref.
- * config/spu/spu.c (spu_va_start): Likewise.
- * config/s390/s390.c (s390_va_start): Likewise.
-
-2010-11-03 Uros Bizjak <ubizjak@gmail.com>
-
- PR middle-end/46292
- * lower-subreg.c (simplify_subreg_concatn): For VOIDmode elements,
- if the innermode is not vector mode, determine the mode of a subreg
- by using mode_for_size of inner_size.
-
-2010-11-04 Richard Guenther <rguenther@suse.de>
-
- PR rtl-optimization/46183
- * gcse.c (execute_rtl_cprop): Cleanup the CFG if something changed.
- (execute_rtl_pre): Likewise.
- (execute_rtl_hoist): Likewise.
-
-2010-11-04 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46068
- * ipa-split.c (consider_split): Remove gcc_unreachable.
-
-2010-11-04 Richard Guenther <rguenther@suse.de>
-
- * tree-nested.c (build_addr): Use build_fold_addr_expr.
-
-2010-11-04 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45991
- * gimplify.c (force_gimple_operand_1): Use the provded test
- function in the initial test.
-
-2010-11-04 Jeff Law <law@redhat.com>
-
- * ira.c (validate_equiv_mem): Remove code to avoid invalidation
- of readonly memory equivalances for const/pure calls.
-
-2010-11-04 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45733
- * tree-vect-stmts.c (reverse_vec_elements): Honor the
- permute builtins function return type.
-
-2010-11-04 Joern Rennecke <amylaar@spamcop.net>
-
- PR middle-end/44765
- * emit-rtl.c (gen_rtx_REG): Before using PIC_OFFSET_TABLE_REGNUM
- as an index, check it is not INVALID_REGNUM.
-
- PR bootstrap/44756
- * ifcvt.c (noce_emit_cmove): Add ATTRIBUTE_UNUSED to target and
- unsignedp.
- * reload1.c (set_reload_reg): Add ATTRIBUTE_UNUSED to regno.
-
- PR bootstrap/44756
- * function.c (thread_prologue_and_epilogue_insns): Add
- ATTRIBUTE_UNUSED to seq, epilogue_end and entry_edge.
-
- PR bootstrap/44756
- * varasm.c (asm_output_bss): Add ATTRIBUTE_UNUSED to function.
-
- PR target/44750
- * config/pdp11/pdp11.c: (pdp11_secondary_reload): Now static.
- (pdp11_preferred_reload_class): Rename class to rclass.
- (pdp11_preferred_output_reload_class): Likewise.
- * config/pdp11/t-pdp11 (dwarf2out.o): Add -Wno-error=type-limits to
- ALL_COMPILERFLAGS .
- (java/constants.o): Add -Wno-error to ALL_COMPILERFLAGS.
-
- PR bootstrap/44756
- * genopinit.c (main) [FIXUNS_TRUNC_LIKE_FIX_TRUNC]: Cast
- iteration variables to enum machine_mode.
-
- PR target/44751
- * config/h8300/h8300.c: Include df.h.
- (push, pop): Use add_reg_note.
- (compute_plussi_cc, compute_logical_op_cc): Return enum attr_c.
- (compute_a_shift_cc): Likewise.
- (expand_a_shift): Argument code has type enum rtx_code.
- (struct shift_insn): Member cc_valid has type enum attr_cc.
- (struct shift_info) <cc_inline, cc_special>: Likewise.
- enum attr_cc.
- * config/h8300/h8300-protos.h (compute_plussi_cc): Update prototype.
- (compute_a_shift_cc, compute_logical_op_cc, expand_a_shift): Likewise.
-
-2010-11-04 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/46213
- * tree-vect-loop.c (vect_is_simple_reduction_1): Handle
- MINUS_EXPR only if the first operand is reduction operand.
-
-2010-11-04 Richard Guenther <rguenther@suse.de>
- Richard Henderson <rth@redhat.com>
-
- * tree.def (FMA_EXPR): New tree code.
- * expr.c (expand_expr_real_2): Add FMA_EXPR expansion code.
- * gimple.c (gimple_rhs_class_table): FMA_EXPR is a GIMPLE_TERNARY_RHS.
- * tree-cfg.c (verify_gimple_assign_ternary): Verify FMA_EXPR types.
- * tree-inline.c (estimate_operator_cost): Handle FMA_EXPR.
- * gimple-pretty-print.c (dump_ternary_rhs): Likewise.
- * tree-ssa-math-opts.c (convert_mult_to_fma): New function.
- (execute_optimize_widening_mul): Call it. Reorganize to allow
- dead stmt removal. Move TODO flags ...
- (pass_optimize_widening_mul): ... here.
- * flag-types.h (enum fp_contract_mode): New enum.
- * common.opt (flag_fp_contract_mode): New variable.
- (-ffp-contract): New option.
- * opts.c (common_handle_option): Handle it.
- * doc/invoke.texi (-ffp-contract): Document.
- * tree.h (fold_fma): Declare.
- * builtins.c (fold_fma): New function.
- (fold_builtin_fma): Likewise.
- (fold_builtin_3): Call it for fma.
- * fold-const.c (fold_ternary_loc): Fold FMA_EXPR.
- * optabs.c (optab_for_tree_code): Handle FMA_EXPR.
- * config/i386/sse.md (fms<mode>4, fnma<mode>, fnms<mode>4):
- New expanders.
- * doc/md.texi (fms<mode>4, fnma<mode>, fnms<mode>4): Document new
- named patterns.
- * genopinit.c (optabs): Initialize fms_optab, fnma_optab and fnms_optab.
- * optabs.h (enum optab_index): Add OTI_fms, OTI_fnma and OTI_fnms.
- (fms_optab, fnma_optab, fnms_optab): New defines.
- * gimplify.c (gimplify_expr): Handle binary truth expressions
- explicitly. Handle FMA_EXPR.
- * tree-vect-stmts.c (vectorizable_operation): Handle ternary
- operations.
-
-2010-11-04 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
- Richard Guenther <rguenther@suse.de>
-
- * passes.c (init_optimization_passes): Move veclower after SSA.
- * tree-vect-generic.c (uniform_vector_p): New function.
- (expand_vector_operations_1): Handle conversion.
- (pass_lower_vector): Update SSA form.
-
-2010-11-04 Iain Sandoe <iains@gcc.gnu.org>
-
- * configure.ac: Filter -mdynamic-no-pic from CFLAGS when testing for
- plugin capabilities.
- * configure: Regenerate.
-
-2010-11-03 Xinliang David Li <davidxl@google.com>
-
- PR target/46200
- * tree-ssa-loop-ivopts.c (get_computation_cost_at):
- Adjust cbase if the use stmt is after iv update.
-
-2010-11-03 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config.gcc (sh64*) <tm_file>: Add newlib-stdint.h for newlib targets.
-
-2010-11-03 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.c (sh_expand_prologue): Remove unnecessary
- comment. Pass true to the last argument of output_stack_adjust.
-
-2010-11-03 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/46295
- * config/i386/i386.c (ix86_expand_vector_move): Set use_avx256_p
- if 256bit AVX register is used.
-
-2010-11-03 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_minmax): Add support to use
- xsmindp/xsmaxdp on VSX for single precision min/max.
- * config/rs6000/vsx.md (vsx_smaxsf3): Ditto.
- (vsx_sminsf3): Ditto.
-
-2010-11-03 Eric Botcazou <ebotcazou@adacore.com>
-
- * combine.c (try_combine): Fix formatting issues, improve comments and
- fix a pasto.
-
-2010-11-03 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-tailcall.c (find_tail_calls): Convert the operands to the type
- of the result before building binary expressions.
-
-2010-11-03 H.J. Lu <hongjiu.lu@intel.com>
-
- PR rtl-optimization/45865
- * Makefile.in (df-problems.o): Revert revision 164552.
- * basic-block.h (enum bb_flags): Likewise.
- * cfgcleanup.c (block_was_dirty): Likewise.
- (try_forward_edges): Likewise.
- (try_crossjump_bb): Likewise.
- (try_head_merge_bb): Likewise.
- (try_optimize_cfg): Likewise.
- (cleanup_cfg): Likewise.
- * df-core.c (df_set_bb_dirty): Likewise.
- * df-problems.c: Likewise.
- (df_simulate_find_uses): Likewise.
- (MEMREF_NORMAL, MEMREF_VOLATILE): Likewise.
- (find_memory, find_memory_store): Likewise.
- (can_move_insns_across): Likewise.
- * df.h (can_move_insns_across): Likewise.
- * ifcvt.c (find_memory): Likewise.
- (dead_or_predicable): Likewise.
-
-2010-11-03 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/46288
- * predict.c (strip_predict_hints): Simply DCE builtin expect if
- the result is unused.
-
-2010-11-03 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/46009
- * tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Call
- cond_if_else_store_replacement if bb1 and bb2 have the same
- single successor.
- (cond_store_replacement): Use gimple_assign_single_p, don't
- check if rhs is SSA_NAME or invariant. Call release_defs for
- assign.
- (cond_if_else_store_replacement): New function.
-
-2010-11-03 Richard Guenther <rguenther@suse.de>
-
- * opts.c (finish_options): Properly check for all WHOPR
- flags before complaining about -flto-partition.
-
-2010-11-04 Alan Modra <amodra@gmail.com>
-
- * config/rs6000/rs6000.c (rs6000_pic_labelno): Make static.
- (rs6000_emit_load_toc_table): Don't use rs6000_pic_labelno when
- TARGET_SECURE_PLT.
- * config/rs6000/sysv4.h (rs6000_pic_labelno): Don't declare.
- * config/rs6000/rs6000.md (load_toc_v4_PIC_3b): Use "b" constraint
- on input, "r" on output.
-
-2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
-
- Implemented -fobjc-std=objc1 flag.
- * doc/invoke.texi (Option Summary): Document -fobjc-std=objc1
- option.
- * doc/standards.texi (Standards): Updated the section on
- Objective-C; mention support for Objective-C 2.0 features and the
- new -fstd-objc=objc1 flag to disable them.
-
-2010-11-03 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/46241
- * dwarf2out.c (scope_die_for): Properly detect global scope.
-
-2010-11-03 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46190
- * tree-vect-data-refs.c (vect_enhance_data_refs_alignment):
- Properly compute peel iterations.
-
-2010-11-03 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46286
- * tree-ssa-structalias.c (get_constraint_for_1): Avoid referencing
- re-allocated vector data.
-
-2010-11-03 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/46285
- * config/i386/i386.c (ix86_expand_call): Conditionally decorate
- calls with UNSPEC_CALL_NEEDS_VZEROUPPER unspec before reload
- is completed.
-
-2010-11-03 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46217
- * tree-ssa.c (non_rewritable_mem_ref_base): Check if volatile
- flag matches.
- (execute_update_addresses_taken): Likewise.
-
-2010-11-03 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR bootstrap/44335
- * targhooks.c (targhook_words_big_endian): New function.
- (targhook_float_words_big_endian): Likewise.
- * targhooks.h (targhook_words_big_endian): Declare.
- (targhook_float_words_big_endian): Likewise.
- * target.def (words_big_endian, float_words_big_endian): New hooks.
-
-2010-11-03 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/46165
- * tree-ssa-pre.c (eliminate): Return TODO_cleanup_cfg if changing
- a normal call into noreturn call.
-
-2010-11-03 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/46251
- * builtins.c (expand_builtin_sincos): Properly build MEM_REFs,
- not INDIRECT_REFs.
-
-2010-11-03 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/46107
- * cfgloopmanip.c (loop_version): Set irred_flag back into entry->flags
- if cfg_hook_duplicate_loop_to_header_edge failed.
-
-2010-11-03 Ian Lance Taylor <iant@google.com>
-
- PR lto/46273
- * config.gcc: Don't set lto_binary_reader.
- * doc/install.texi (Prerequisites): Remove libelf paragraphs.
- (Configuration): Mention --disable-lto. Remove --with-libelf
- paragraph.
-
-2010-11-03 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/46252
- * reload1.c (delete_dead_insn): Use prev_active_insn instead of
- prev_real_insn.
- * gcse.c (insert_insn_end_basic_block): Likewise.
-
- PR rtl-optimization/46034
- PR rtl-optimization/46212
- PR rtl-optimization/46248
- * combine.c (try_combine): If added_sets_2 where i0dest_in_i0src
- and i0 feeds i1 and i1 feeds i2 or i0 feeds i2, make a copy of i1src
- before i0dest -> i0src substitution and pass 1 instead of 0 as last
- argument to subst on i2pat.
-
-2010-11-02 Ian Lance Taylor <iant@google.com>
-
- * configure.ac: Use AC_SYS_LARGEFILE.
- * configure: Rebuild.
- * config.in: Rebuild.
-
-2010-11-02 Nathan Froyd <froydnj@codesourcery.com>
-
- * builtins.c (fold_builtin_signbit): Use build_zero_cst instead of
- fold_convert.
- * c-typeck.c (build_function_call_vec): Likewise.
- * cfgexpand.c (expand_debug_expr): Likewise.
- * cgraphunit.c (assemble_thunk): Likewise.
- * config/sparc/sparc.c (sparc_fold_builtin): Likewise.
- * fold-const.c (fold_unary_loc, fold_mult_zconjz): Likewise.
- (fold_binary_loc, fold_ternary_loc): Likewise.
- * gimple-fold.c (get_symbol_constant_value): Likewise.
- * gimple-low.c (lower_builtin_setjmp): Likewise.
- * gimple.c (gimple_cond_get_ops_from_tree): Likewise.
- * gimplify.c (gimplify_init_constructor): Likewise.
- * lambda.h (build_linear_expr): Likewise.
- * omp-low.c (omp_reduction_init): Likewise.
- * tree-inline.c (remap_ssa_name): Likewise.
- * tree-object-size.c (compute_object_sizes): Likewise.
- * tree-sra.c (init_subtree_with_zero): Likewise.
- (sra_ipa_modify_assign): Likewise.
- * tree-ssa-copy.c (propagate_tree_value_into_stmt): Likewise.
- * tree-ssa-reassoc.c (eliminate_duplicate_pair): Likewise.
- (eliminate_plus_minus_pair, eliminate_not_pairs): Likewise.
- (undistribute_ops_list): Likewise.
- * tree-ssa-sccvn.c (vn_reference_lookup_3): Likewise.
- * tree-vect-stmts.c (vectorizable_call): Likewise.
- * tree.c (build_vector_from_ctor, build_one_cst): Likewise.
- (build_zero_cst): Handle more cases directly. Update comment.
-
-2010-11-02 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386-protos.h (ix86_split_call_pop_vzeroupper): Removed.
- * config/i386/i386.c (ix86_split_call_pop_vzeroupper): Likewise.
-
- * config/i386/i386.md (*call_pop_0_vzeroupper): Use parallel
- and call ix86_split_call_vzeroupper instead of
- ix86_split_call_pop_vzeroupper.
- (*call_pop_1_vzeroupper): Likewise.
- (*sibcall_pop_1_vzeroupper): Likewise.
- (*call_value_pop_0_vzeroupper): Likewise.
- (*call_value_pop_1_vzeroupper): Likewise.
- (*sibcall_value_pop_1_vzeroupper): Likewise.
-
-2010-11-02 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.md (*sibcall_1_rex64_vzeroupper): Fix a typo.
-
-2010-11-02 Eric Botcazou <ebotcazou@adacore.com>
-
- * basic-block.h (insert_insn_end_bb_new): Delete.
- * cfgrtl.c (insert_insn_end_bb_new): Likewise.
-
-2010-11-02 Uros Bizjak <ubizjak@gmail.com>
- H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386-protos.h (ix86_split_call_vzeroupper): New.
- (ix86_split_call_pop_vzeroupper): Likewise.
-
- * config/i386/i386.c (move_or_delete_vzeroupper_2): Rewrite the loop.
- (ix86_expand_call): Conditionally decorate calls with
- UNSPEC_CALL_NEEDS_VZEROUPPER unspec.
- (ix86_split_call_vzeroupper): New.
- (ix86_split_call_pop_vzeroupper): Likewise.
-
- * config/i386/i386.md (UNSPEC_CALL_NEEDS_VZEROUPPER): New.
- (*call_pop_0_vzeroupper): New insn_and_split pattern.
- (*call_pop_1_vzeroupper): Likewise.
- (*sibcall_pop_1_vzeroupper): Likewise.
- (*call_0_vzeroupper): Likewise.
- (*call_1_vzeroupper): Likewise.
- (*sibcall_1_vzeroupper): Likewise.
- (*call_1_rex64_vzeroupper): Likewise.
- (*call_1_rex64_ms_sysv_vzeroupper): Likewise.
- (*call_1_rex64_large_vzeroupper): Likewise.
- (*sibcall_1_rex64_vzeroupper): Likewise.
- (*call_value_pop_0_vzeroupper): Likewise.
- (*call_value_pop_1_vzeroupper): Likewise.
- (*sibcall_value_pop_1_vzeroupper): Likewise.
- (*call_value_0_vzeroupper): Likewise.
- (*call_value_0_rex64_vzeroupper): Likewise.
- (*call_value_0_rex64_ms_sysv_vzeroupper): Likewise.
- (*call_value_1_vzeroupper): Likewise.
- (*sibcall_value_1_vzeroupper): Likewise.
- (*call_value_1_rex64_vzeroupper): Likewise.
- (*call_value_1_rex64_ms_sysv_vzeroupper): Likewise.
- (*call_value_1_rex64_large_vzeroupper): Likewise.
- (*sibcall_value_1_rex64_vzeroupper): Likewise.
-
-2010-11-02 Ian Lance Taylor <iant@google.com>
-
- PR lto/46273
- * config.gcc: Revert last patch: set lto_binary_reader.
-
-2010-11-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46149
- * tree-ssa-structalias.c (get_constraint_fop_1): Properly handle
- non-indirect MEM_REF variants.
-
-2010-11-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46216
- * tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars):
- Check if we can propagate from a POINTER_PLUS_EXPR before doing so.
-
-2010-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac (*-*-irix6*): Disable set_have_as_tls.
- (*-*-osf*): Likewise.
- * configure: Regenerate.
-
-2010-11-02 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/driver-i386.c (host_detect_local_cpu): Updated
- for Intel Core 2 and Core i7.
-
-2010-11-02 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- Model decoder of Core 2/i7 for multipass scheduling.
-
- * config/i386/i386-protos.h (struct ix86_first_cycle_multipass_data_):
- New type to hold target-specific data for multipass scheduling.
- (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DATA_T): Define.
- * config/i386/i386.c (ia32_multipass_dfa_lookahead): Update for
- Core 2/i7.
- (core2i7_secondary_decoder_max_insn_size,)
- (core2i7_secondary_ifetch_block_size, core2i7_ifetch_block_max_insns):
- New static variables.
- ([const_]ix86_first_cycle_multipass_data_t): New typedefs.
- ([_]ix86_first_cycle_multipass_data): New static variable.
- (core2i7_first_cycle_multipass_init, core2i7_dfa_poast_advance_cycle):
- Implement targetm.sched hooks.
- (core2i7_first_cycle_multipass_filter_ready_try): New static subroutine
- of ...
- (core2i7_first_cycle_multipass_{begin, issue, backtrack, end, fini}):
- Implement new targetm.sched hooks.
- (ix86_sched_init_global, TARGET_SCHED_INIT_GLOBAL): Define
- targetm.sched hook to install multipass scheduling hooks on demand.
-
- * doc/tm.texi.in: Document new targetm.sched hooks.
- * doc/tm.texi: Regenerate.
-
- * haifa-sched.c (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DATA_T): Define.
- (first_cycle_multipass_data_t): New typedef.
- (struct choice_entry: target_data): New field.
- (max_issue): Add first_cycle_insn_p parameter. Call new target hooks
- to allow target model restrictions not represented in DFA.
- (choose_ready, schedule_block): Update.
- (sched_extend_ready_list, sched_finish_ready_list): Call new target
- hooks to initialize target-specific data for multipass scheduling.
- * sched-int.h (max_issue): Update declaration.
- * sel-sched.c (choose_best_insn): Update.
- * target.def (first_cycle_multipass_{begin, issue, backtrack},)
- (first_cycle_multipass_{init, fini}): Define and document new
- targetm.sched hooks.
-
-2010-11-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46184
- * tree-vect-loop.c (vectorizable_reduction): Try to obtain the
- input vector type from the reduction operand as well.
-
-2010-11-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46177
- * tree-loop-distribution.c (prop_phis): Use
- mark_virtual_phi_result_for_renaming.
-
-2010-11-02 Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/46120
- * tree.c (get_binfo_at_offset): Bail out on artificial
- fields. Identify primary bases according to their offsets.
-
-2010-11-02 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/45875
- * gimple-fold.c (get_first_base_binfo_with_virtuals): Removed.
- (gimple_get_relevant_ref_binfo): Detect primary bases according to
- their field offset.
-
-2010-11-02 Ian Lance Taylor <iant@google.com>
-
- * doc/install.texi (Configuration): Note in two places that Java
- is not enabled by default.
-
-2010-11-02 Ian Lance Taylor <iant@google.com>
-
- * doc/install.texi (Prerequisites): Remove libelf paragraphs.
- (Configuration): Mention --disable-lto. Remove --with-libelf
- paragraph.
-
-2010-11-02 Ian Lance Taylor <iant@google.com>
-
- * configure.ac: Remove elf_getshdrstrndx test. Don't substitute
- LTO_BINARY_READER or LTO_USE_LIBELF. Remove LIBELFLIBS and
- LIBELFINC. Remove HAVE_libelf.
- * config.gcc: Don't set lto_binary_reader.
- * Makefile.in (LIBELFLIBS, LIBELFINC): Remove variables.
- (LTO_BINARY_READER, LTO_USE_LIBELF): Remove variables.
- (LIBS): Remove $(LIBELFLIBS).
- (INCLUDES): Remove $(LIBELFINC).
- * configure: Rebuild.
- * config.in: Rebuild.
-
-2010-11-02 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/microblaze/microblaze-protos.h (function_arg): Delete.
- (function_arg_advance): Delete.
- * config/microblaze/microblaze.h (FUNCTION_ARG_ADVANCE): Delete.
- (FUNCTION_ARG): Delete.
- * config/microblaze/microblaze.c (function_arg_advance): Rename to...
- (microblaze_function_arg_advance): ...this. Make static. Take a
- const_tree and a bool.
- (function-arg): Rename to...
- (microblaze_function_arg): ...this. Make static. Take a const_tree
- and a bool.
- (microblaze_expand_prologue): Call targetm.calls.function_arg and
- targetm.calls.function_arg_advance.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-11-02 Iain Sandoe <iains@gcc.gnu.org>
-
- Merge from FSF "apple/trunk" branch.
-
- * config/rs6000/darwin.opt (mdynamic-no-pic): move from here ...
- * config/darwin.opt: .. to here.
- (matt-stubs): New option.
- * config/i386/darwin.opt: Delete.
- * config/i386/i386.h (MACHOPIC_ATT_STUB): New.
- (MACHO_DYNAMIC_NO_PIC_P): New.
- (MACHOPIC_INDIRECT): New.
- (MACHOPIC_PURE): New.
- * config/i386/darwin.h (DARWIN_X86) Define to 1.
- (MACHOPIC_ATT_STUB): New.
- (CC1_SPEC): Do not remove mdynamic-no-pic.
- Move HOT_TEXT_SECTION_NAME: move to config/darwin.h
- UNLIKELY_EXECUTED_TEXT_SECTION_NAME: Likewise.
- (FUNCTION_PROFILER): Correct over-length line.
- (SUBTARGET_OVERRIDE_OPTIONS): New.
- (MACHOPIC_NL_SYMBOL_PTR_SECTION): New.
- * config/i386/i386.c (config/i386/i386.c): Darwin has no PLT.
- (legitimate_constant_p): Handle mdynamic-no-pic.
- (ix86_legitimate_address_p): Likewise.
- (ix86_legitimize_address): Likewise.
- (ix86_expand_move): Likewise.
- (machopic_output_stub): Update for ATT-style stubs and
- mdynamic-no-pic.
- * config/darwin-protos.h (machopic_symbol_defined_p): New.
- * config/rs6000/darwin.h (DARWIN_PPC): Define to 1.
- TARGET_DYNAMIC_NO_PIC: Remove.
- Move HOT_TEXT_SECTION_NAME: move to config/darwin.h
- UNLIKELY_EXECUTED_TEXT_SECTION_NAME: Likewise.
- * config/rs6000/rs6000.c (darwin_rs6000_override_options):
- Remove handling of mdynamic-no-pic.
- * config/darwin.c (HAVE_lo_sum, gen_macho_high, gen_macho_low):
- Define if required.
- (machopic_symbol_defined_p): Do not try to use current_function_decl
- when generating _get_pc thunks within stubs.
- (machopic_indirect_data_reference): Rework for direct conditionals
- rather than #ifdefs, add x86 mdynamic-no-pic
- (machopic_legitimize_pic_address): Update to use HAVE_lo_sum with a
- defined value.
- (darwin_override_options): Handle mdynamic-no-pic here.
- * config/darwin-sections.def (machopic_lazy_symbol_ptr2_section): New.
- (machopic_lazy_symbol_ptr3_section): New.
- (machopic_picsymbol_stub2_section): New.
- (machopic_picsymbol_stub3_section): New.
- * config/darwin.h (DARWIN_X86, DARWIN_PPC): Define to 0.
- (MACHOPIC_NL_SYMBOL_PTR_SECTION): New.
- (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME):
- Moved common definition from x86 and rs6000.
- (MACHO_DYNAMIC_NO_PIC_P): Override value.
- (MACHOPIC_INDIRECT): Likewise.
- (MACHOPIC_PURE): Likewise.
- * config.gcc (x86-darwin-*): Remove darwin.opt.
-
-2010-11-02 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/46255
- * tree-cfg.c (gimple_flow_call_edges_add): Use gsi_last_nondebug_bb
- instead of gsi_last_bb.
-
-2010-11-02 Bernd Schmidt <bernds@codesourcery.com>
- Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * config/i386/i386.c (cpu_names): Add "corei7".
- * config/i386/i386.h (enum target_cpu_default): Add entry for Core i7.
-
-2010-11-02 Bernd Schmidt <bernds@codesourcery.com>
- Maxim Kuvyrkov <maxim@codesourcery.com>
-
- Tune alignment for Intel Core i7
-
- * config/i386.h (TARGET_COREI7{_32,_64,}): New macros.
- (enum processor_type): Update comment. Add entries for Core i7.
- * config/i386-c.c (ix86_target_macros_internal): Update.
- * config/i386.c (m_COREI7{_32,_64}): New macros.
- (m_GENERIC32, m_GENERIC64): Use generic tuning for Core i7.
- (processor_target_table): Tune alignment for Core i7.
- (ix86_option_override_internal): Use PROCESSOR_COREI7_*.
-
- * doc/invoke.texi: Document "corei7" option value.
-
-2010-11-02 Bernd Schmidt <bernds@codesourcery.com>
- Maxim Kuvyrkov <maxim@codesourcery.com>
- H.J. Lu <hjl.tools@gmail.com>
-
- Basic support for Intel Core i7
-
- * i386.c (ix86_option_override_internal): Add entry for corei7, use
- generic tuning. Use generic32 when compiling for 32-bit ABI.
-
-2010-11-02 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.c (darwin_asm_named_section): Check for __DWARF
- sections and call darwin_asm_dwarf_section() to handle them.
- (darwin_asm_dwarf_section): New.
- (darwin_file_start): Remove code emitting dwarf section symbols.
-
-2010-11-02 Chung-Lin Tang <cltang@codesourcery.com>
-
- * Makefile.in (LIBGCC2_CFLAGS): Add -fno-stack-protector, to
- explicitly disable stack protection when building libgcc.
- (CRTSTUFF_CFLAGS): Same, for crtbegin/end.
-
-2010-11-01 Jason Merrill <jason@redhat.com>
-
- * fold-const.c (fold_indirect_ref_1): Handle folding
- POINTER_PLUS_EXPR to ARRAY_REF.
-
-2010-11-01 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
- (sh_delegitimize_address): New function.
-
-2010-11-01 Joseph Myers <joseph@codesourcery.com>
-
- * config/alpha/alpha.h (WORD_SWITCH_TAKES_ARG): Remove.
- * config/cris/cris.h (WORD_SWITCH_TAKES_ARG): Remove.
- (CC1_SPEC): Don't handle -target.
- * config/darwin.h (WORD_SWITCH_TAKES_ARG): Remove single-argument
- options.
- * config/darwin.opt (Zallowable_client, Zbundle_loader,
- Zdylib_file, Zexported_symbols_list, Zfn_seg_addr_table_filename,
- Zimage_base, Zinit, Zinstall_name, Zmultiply_defined,
- Zmultiplydefinedunused, Zseg_addr_table, Zsegs_read_only_addr,
- Zsegs_read_write_addr, Zumbrella, Zunexported_symbols_list,
- Zweak_reference_mismatches, client_name, compatibility_version,
- current_version, dylinker_install_name, pagezero_size,
- read_only_relocs, seg1addr, segs_read_only_addr,
- segs_read_write_addr, sub_library, sub_umbrella): New.
- * config/freebsd-spec.h (BSD_WORD_SWITCH_TAKES_ARG): Remove.
- * config/freebsd.h (WORD_SWITCH_TAKES_ARG): Remove.
- * config/freebsd.opt: New.
- * config/interix.h (WORD_SWITCH_TAKES_ARG): Remove.
- * config/mips/iris6.h (WORD_SWITCH_TAKES_ARG): Remove.
- * config/rpath.opt: New.
- * config.gcc (*-*-freebsd*): Use rpath.opt and freebsd.opt.
- (alpha*-dec-osf5.1*, i[34567]86-*-interix3*, mips-sgi-irix6.5*):
- Use rpath.opt.
-
-2010-11-01 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (R, T, Tbss, Tdata, Ttext, h, z): New.
- * defaults.h (DEFAULT_SWITCH_TAKES_ARG, SWITCH_TAKES_ARG): Remove.
- (DEFAULT_WORD_SWITCH_TAKES_ARG): Define to 0.
- * doc/tm.texi.in (SWITCH_TAKES_ARG): Remove.
- (WORD_SWITCH_TAKES_ARG): Don't refer to SWITCH_TAKES_ARG.
- Document that options in .opt files do not need to be included.
- * doc/tm.texi: Regenerate.
- * gcc.c (LINK_COMMAND_SPEC): Don't include %{x}.
- * opts-common.c: Update comment on tm.h include.
- (decode_cmdline_option): Don't use SWITCH_TAKES_ARG.
- * system.h (SWITCH_TAKES_ARG): Poison.
- * config/alpha/alpha.h (SWITCH_TAKES_ARG): Remove.
- * config/darwin.h (WORD_SWITCH_TAKES_ARG): Remove options included
- in darwin.opt.
- (LINK_COMMAND_SPEC_A): Don't include %{x}.
- * config/fr30/fr30.h (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
- * config/freebsd-spec.h (FBSD_SWITCH_TAKES_ARG): Remove.
- * config/freebsd.h (SWITCH_TAKES_ARG): Remove.
- * config/frv/frv.h (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
- * config/i386/djgpp.h (LINK_COMMAND_SPEC): Don't include %{x}.
- * config/ia64/ia64.h (SWITCH_TAKES_ARG): Remove.
- * config/interix.h (WORD_SWITCH_TAKES_ARG): Don't handle -T options.
- * config/lm32/lm32.h (SWITCH_TAKES_ARG): Remove.
- * config/m32r/m32r.h (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
- * config/microblaze/microblaze.h (SWITCH_TAKES_ARG): Remove.
- * config/mips/mips.h (SWITCH_TAKES_ARG): Remove.
- * config/mips/netbsd.h (SWITCH_TAKES_ARG): Remove.
- * config/mips/vxworks.h (SWITCH_TAKES_ARG): Remove.
- * config/netbsd-aout.h (SWITCH_TAKES_ARG): Remove.
- * config/netbsd-elf.h (SWITCH_TAKES_ARG): Remove.
- * config/openbsd.h (SWITCH_TAKES_ARG): Remove.
- * config/rs6000/sysv4.h (SWITCH_TAKES_ARG): Remove.
- * config/score/score.h (SWITCH_TAKES_ARG): Remove.
- * config/sol2.h (SWITCH_TAKES_ARG): Remove.
- * config/sparc/sp-elf.h (SWITCH_TAKES_ARG): Remove.
- * config/sparc/sp64-elf.h (SWITCH_TAKES_ARG): Remove.
- * config/sparc/sparc.h (ASM_SPEC): Don't include %{R}.
- * config/svr4.h (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
-
-2010-11-01 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md: Use iterators.
- (addqi3, subqi3, iorsi3, xorsi3): Delete.
-
-2010-11-01 Steve Ellcey <sje@cup.hp.com>
-
- * defaults.h (TARGET_VTABLE_USES_DESCRIPTORS): Move under ifdef
- GCC_INSN_FLAGS_H.
- * libgcov.c (__gcov_indirect_call_profiler): Set
- VTABLE_USES_DESCRIPTORS if TARGET_VTABLE_USES_DESCRIPTORS is
- defined and use in place of TARGET_VTABLE_USES_DESCRIPTORS.
-
-2010-11-01 Nathan Froyd <froydnj@codesourcery.com>
-
- PR tree-optimization/46259
-
- Revert:
- 2010-10-30 Nathan Froyd <froydnj@codesourcery.com>
- * tree-vect-stmts.c (vect_get_vec_def_for_operand): Use
- build_vector_from_val.
-
-2010-11-01 DJ Delorie <dj@redhat.com>
-
- * config/rx/rx.h (TARGET_CPU_CPP_BUILTINS): Add define for RX610
- as well as an assertion.
-
-2010-11-01 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (pdp11_return_in_memory): Return vector and
- complex modes in memory.
-
-2010-11-01 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.c (build_vector_from_val): Use useless_type_conversion_p.
-
-2010-11-01 Jakub Jelinek <jakub@redhat.com>
-
- PR target/45250
- * var-tracking.c (cfa_base_rtx): Move definition earlier in the file.
- (cfa_base_offset): New variable.
- (compute_cfa_pointer): Use cfa_base_rtx and cfa_base_offset.
- (adjust_mems): Don't do any sp or hfp replacements if cfa_base_rtx
- is NULL.
- (vt_init_cfa_base): Initialize cfa_base_offset.
-
-2010-11-01 Alan Modra <amodra@gmail.com>
-
- PR target/46030
- * config/rs6000/rs6000.c (struct rs6000_stack): Add reload_completed
- and savres_strategy.
- (stack_info): New file scope var.
- (rs6000_init_machine_status): Init stack_info.
- (SAVRES_INLINE_FPRS, SAVRES_INLINE_GPRS,
- SAVRES_NOINLINE_GPRS_SAVES_LR, SAVRES_NOINLINE_FPRS_SAVES_LR,
- SAVRES_NOINLINE_FPRS_DOESNT_RESTORE_LR): Replace with..
- (SAVE_INLINE_FPRS, SAVE_INLINE_GPRS, REST_INLINE_FPRS, REST_INLINE_GPRS,
- SAVE_NOINLINE_GPRS_SAVES_LR, SAVE_NOINLINE_FPRS_SAVES_LR
- REST_NOINLINE_FPRS_DOESNT_RESTORE_LR): ..this. Update all refs.
- (rs6000_savres_strategy): Rewrite.
- (rs6000_stack_info): Use "stack_info" in place of local "info".
- Return cached stack info when reload_completed unless ENABLE_CHECKING
- in which case confirm newly calculated stack info matches old info.
- Delay calculation of lr_save_p, set it for out of line gp save/restore
- as well as fp. Call rs6000_savres_strategy from here..
- (rs6000_emit_prologue, rs6000_emit_epilogue): ..rather than here.
- (rs6000_output_function_prologue): Use info->savres_strategy to
- determine whether fp save/restore externs need to be emitted.
-
-2010-10-31 Jason Merrill <jason@redhat.com>
-
- * tree.h (EXPR_LOC_OR_HERE): New macro.
- * builtins.c (c_strlen): Use it.
- * c-decl.c (build_enumerator): Likewise.
- * gimplify.c (internal_get_tmp_var): Likewise.
- (shortcut_cond_expr): Likewise.
- (gimplify_one_sizepos): Likewise.
-
-2010-10-31 Richard Henderson <rth@redhat.com>
-
- * config/i386/cygming.h (TARGET_SEH): New.
- (MAX_STACK_ALIGNMENT): New. Disable alignment for SEH.
- (TARGET_ASM_UNWIND_EMIT, TARGET_ASM_UNWIND_EMIT_BEFORE_INSN,
- TARGET_ASM_FUNCTION_END_PROLOGUE, SUBTARGET_ASM_UNWIND_INIT): New.
- (TARGET_OS_CPP_BUILTINS): Define __SEH__ as needed.
- (ASM_DECLARE_FUNCTION_NAME): Use i386_pe_start_function.
- (ASM_DECLARE_FUNCTION_SIZE): New.
- * config/i386/i386-protos.h: Update.
- * config/i386/i386.c (ix86_option_override_internal): Enable
- flag_unwind_tables with flag_asynchronous_unwind_tables immediately;
- restrict -mpreferred-stack-boundary for SEH; enable flag_fentry.
- (ix86_asm_output_function_label): Use SUBTARGET_ASM_UNWIND_INIT.
- (ix86_compute_frame_layout): For SEH, disable
- use_fast_prologue_epilogue, move frame pointer to the end of
- the frame. Initialize hfp_save_offset.
- (ix86_expand_prologue): Honor hfp_save_offset. Emit blockage
- at end of prologue for SEH.
- (ix86_expand_epilogue): For SEH, use pops, emit a nop if needed,
- emit blockage at beginning of epilogue.
- (ix86_expand_binary_operator): After reload, emit LEA if needed.
- (ix86_output_call_insn): New.
- * config/i386/i386.h (TARGET_SEH): New.
- (struct machine_function): Add member seh.
- * config/i386/i386.md (all call patterns): Use ix86_output_call_insn.
- * config/i386/winnt.c (struct seh_frame_state): New.
- (i386_pe_seh_init, i386_pe_seh_end_prologue, i386_pe_seh_fini,
- seh_emit_push, seh_emit_save, seh_emit_stackalloc, seh_cfa_adjust_cfa,
- seh_cfa_offset, seh_frame_related_expr, i386_pe_seh_unwind_emit,
- i386_pe_start_function, i386_pe_end_function): New.
-
- * dwarf2out.c (dwarf2out_frame_debug_expr): Accept CFA as well
- as CFA_STORE in rules 12 and 13.
-
-2010-10-31 Uros Bizjak <ubizjak@gmail.com>
-
- PR tree-optimization/46142
- * tree-vect-stmts.c (vectorizable_call): Enlarge dt array to
- accommodate third function argument.
-
-2010-10-30 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree-ssa-loop-im.c (rewrite_reciprocal): Use build_one_cst.
-
-2010-10-30 Nathan Froyd <froydnj@codesourcery.com>
-
- * fold-const.c (build_zero_vector): Use build_vector_from_val.
- * tree-vect-loop.c (get_initial_def_for_induction): Likewise.
- (get_initial_def_for_reduction): Likewise.
- * tree-vect-slp.c (vect_get_constant_vectors): Likewise.
- * tree-vect-stmts.c (vect_get_vec_def_for_operand): Likewise.
- * tree.c (build_one_cst): Likewise.
- (build_vector_from_val): Use types_compatible_p for assert.
-
-2010-10-30 Nathan Froyd <froydnj@codesourcery.com>
-
- * emit-rtl.c (mark_used_flags): New function.
- (set_used_flags, reset_used_flags): Call it.
-
-2010-10-30 Uros Bizjak <ubizjak@gmail.com>
-
- PR middle-end/44569
- * lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
- determine the mode of a subreg by GET_MODE_INNER of CONCATN RTX.
-
-2010-10-30 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/46195
- * config/i386/i386.c (contains_aligned_value_p): Renamed to ...
- (ix86_compat_aligned_value_p): This.
- (ix86_old_function_arg_boundary): Renamed to ...
- (ix86_compat_function_arg_boundary): This. Updated.
- (ix86_contains_aligned_value_p): New.
- (ix86_function_arg_boundary): Align long double parameters on
- stack to 4byte in 32bit.
-
-2010-10-30 Nicola Pero <nicola.pero@meta-innovation.com>
-
- Implemented Objective-C 2.0 @property, @synthesize and @dynamic.
- * c-parser.c (c_parser_objc_at_property_declaration): Removed
- parsing of RID_COPIES and RID_IVAR. Updated call to
- objc_add_property_declaration.
- * c-typecheck.c (build_component_ref): Call
- objc_maybe_build_component_ref instead of objc_build_setter_call.
- Use objc_is_property_ref to improve Objective-C checks.
- (cp_build_modify_expr): Call objc_maybe_build_modify_expr instead
- of objc_build_getter_call.
-
-2010-10-29 Paul Koning <ni1d@arrl.net>
-
- * doc/tm.texi.in (REGNO_OK_FOR_BASE_P, REGNO_MODE_OK_FOR_BASE_P,
- REGNO_MODE_OK_FOR_REG_BASE, REGNO_MODE_CODE_OK_FOR_BASE_P,
- REGNO_OK_FOR_INDEX_P): Delete non-strict variant.
- (REG_OK_STRICT): Move description.
-
-2010-10-29 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md (*and<mode>): Rename to *bic<mode>.
-
-2010-10-29 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md (divhi3, modhi3, divmodhi3): Fix ICE.
-
-2010-10-29 Paul Koning <ni1d@arrl.net>
-
- PR/41822
- * config/pdp11/pdp11.md (andhi3, andqi3): Fix wrong code error.
-
-2010-10-29 Richard Henderson <rth@redhat.com>
-
- PR rtl-opt/46226
- * stmt.c (expand_asm_operands): Call do_pending_stack_adjust
- for asm goto.
-
-2010-10-29 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (output_move_quad): Fix ICE for CPU
- register to register move.
-
-2010-10-29 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (print_operand_address): Correct handling
- of integer constant addresses, delete vax-only logic.
-
-2010-10-11 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.c (picochip_is_short_branch): Simplify
- a conditional expression.
-
-2010-10-29 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (pdp11_trampoline_init): Correct
- instruction encoding.
-
-2010-10-29 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
- Andrew Pinski <pinskia@gmail.com>
-
- * tree.h (build_vector_from_val): Declare.
- * tree.c (build_vector_from_val): New function.
- * c-typeck.c (build_binary_op): Handle vector shifting.
- * doc/extend.texi: Description of the vector shifting operation.
-
-2010-10-29 Paul Koning <pkoning@equallogic.com>
-
- * config/pdp11/pdp11-protos.h (pdp11_cannot_change_mode_class,
- pdp11_secondary_memory_needed): Declare.
- * config/pdp11/predicates.md (float_operand): New predicate.
- * config/pdp11/pdp11.md (RETVAL_REGNUM): New constant.
- (cbranchdf4, movdf): Change predicate.
- (movsf): Handle FPU register case.
- (truncdfsf2, extendsfdf2): Add FPU register case.
- * config/pdp11/pdp11.c (TARGET_SECONDARY_RELOAD,
- TARGET_REGISTER_MOVE_COST, TARGET_PREFERRED_RELOAD_CLASS,
- TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
- (pdp11_register_move_cost): Update cost matrix.
- (pdp11_cannot_change_mode_class, pdp11_preferred_reload_class,
- pdp11_preferred_output_reload_class, pdp11_secondary_reload,
- pdp11_secondary_memory_needed): New function.
- (pdp11_return_in_memory): Add other float types.
- * config/pdp11/pdp11.h (HARD_REGNO_MODE_OK): Add other float types.
- (SECONDARY_MEMORY_NEEDED, CANNOT_CHANGE_MODE_CLASS): Define.
- (PREFERRED_RELOAD_CLASS, SECONDARY_RELOAD_CLASS,
- REGISTER_MOVE_COST): Delete.
- (BASE_RETURN_VALUE_REG): Add other float types.
-
-2010-10-29 Nick Clifton <nickc@redhat.com>
-
- * doc/invoke.texi: Document -mam34 and -mtune options.
- * config/mn10300/mn10300.c (mn10300_tune_string): New variable.
- (mn10300_tune_cpu): New variable.
- (mn10300_handle_option): Handle -mam34 and -mtune options.
- (mn10300_option_override): Convert tune string into tune cpu variable.
- (mn10300_legitimate_constant_p): Delete unused local variable.
- (is_load_insn): New function.
- (is_store_insn): New function.
- (mn10300_adjust_schedule_cost): New function.
- (TARGET_SCHED_ADJUST_COST): Define.
- * config/mn10300/mn10300.opt (mam34): New option.
- (mtune): New option.
- * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Add AM34 support.
- (enum processor_type): Add AM34.
- (TARGET_AM34): Define.
- * config/mn10300/mn10300.md (attr cpu): Add am34.
- Add pipeline description.
- (movqi, movhi, movsi, movsf, movdf, movdi): Fix predicates.
- Remove unneeded alternatives. Add timing attribute.
- (pop_pic_reg, am33_addsi3, mn10300_addsi3, am33_subsi3,
- mn10300_subsi3, mulsidi3, umulsidi3, am33_mulsi3,
- mn10300_mulsi3, udivmodsi4_am33, divmodsi4, am33_andsi3,
- mn10300_andsi3, am33_iorsi3, mn10300_iorsi3, am33_xorsi3,
- mn10300_xorsi3, byte_clear, byte_set, bit_clear1, bit_clear2,
- bit_set, am33_iorqi3, mn10300_iorqi3, test_byte_bitfield,
- bit_test, subreg_bit_test, cmpsi, am33_cmpsf, am33_subsi3,
- float_conditional_branch, jump, indirect_jump, tablejump,
- call_internal, call_value_internal, zero_extendqisi2_am33,
- zero_extendqisi2_mn10300, zero_extendhisi2_am33,
- zero_extendhisi2_mn10300, extendqisi2_am33, extendqisi2_mn10300,
- extendhisi2_am33, extendhisi2_mn10300, am33_ashlsi3,
- mn10300_ashlsi3, am33_lshrsi3, mn10300_lshrsi3, am33_ashrisi3,
- mn10300_ashrsi3, abssf2_am33_2, negsf2_am33_2, rsqrtsf2,
- addsf3_internal, subsf3_internal, mulsf3_internal, divsf3,
- fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4, return_internal,
- return_internal_regs, store_movm, return, call_next_insn):
- Add timing attribute.
- (am33_subsi3): Add missing clobber of CC_REG.
- (am33_andsi3, mn10300_andsi3): Fix compile time warnings.
- (udivmodsi4, udivmodsi4_insn, divmodsi4, test_byte_bitfield,
- subreg_bit_test, zero_extendqisi2, zero_extendhisi2,
- extendqisi2): Fix predicates.
- (call_internal, call_internal_value): Separate alternatives.
- * config/mn10300/t-mn10300: Add AM34 multilib.
-
-2010-10-29 Paolo Bonzini <bonzini@gnu.org>
-
- * config/sh/sh.c (sh_promote_function_mode): Use
- default_promote_function_mode if !sh_promote_prototypes.
-
-2010-10-28 Paolo Bonzini <bonzini@gnu.org>
-
- * recog.c (split_all_insns): Remove dead code.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * score.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/cris/cris.h (FUNCTION_ARG, FUNCTION_INCOMING_ARG): Delete.
- (FUNCTION_ARG_ADVANCE): Delete.
- * config/cris/cris.c (cris_function_arg_1, cris_function_arg): New
- functions.
- (cris_function_incoming_arg, cris_function_arg_advance): New functions.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
- (TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/lm32/lm32-protos.h (lm32_function_arg): Delete.
- * config/lm32/lm32.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/mcore/mcore.c (mcore_function_arg): Declare. Make static.
- Take a const_tree and a bool.
- (mcore_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/mcore/mcore-protos.h (mcore_function_arg): Delete.
- * config/mcore/mcore.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/mcore/mcore.c (mcore_function_arg): Declare. Make static.
- Take a const_tree and a bool.
- (mcore_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/h8300/h8300-protos.h (function_arg): Delete.
- * config/h8300/h8300.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/h8300/h8300.c (function_arg): Rename to...
- (h8300_function_arg): ...this. Make static. Take a const_tree and
- a bool.
- (h8300_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/arc/arc.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Move code
- to...
- * config/arc/arc.c (arc_function_arg): ...here and...
- (arc_function_arg_advance): ...here. New functions.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/crx/crx-protos.h (crx_function_arg): Delete.
- (crx_function_arg_advance): Delete.
- * config/crx/crx.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/crx/crx.c (crx_function_arg): Make static. Take a
- const_tree and a bool.
- (crx_function_arg_advance): Make static. Take a const_tree and a bool.
- (enough_regs_for_param): Take a const_tree.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/m68hc11/m68hc11-protos.h (m68hc11_function_arg): Delete.
- (m68hc11_function_arg_advance): Delete.
- * config/m68hc11/m68hc11.h (FUNCTION_ARG): Delete.
- (FUNCTION_ARG_ADVANCE): Delete.
- * config/m68hc11/m68hc11.c (m68hc11_function_arg): Make static.
- Take a const_tree and a bool.
- (m68hc11_function_arg_advance): Likewise.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/stormy16/stormy16-protos.h (xstormy16_function_arg): Delete.
- (xstormy16_function_arg_advance): Delete.
- * config/stormy16/stormy16.h (FUNCTION_ARG): Delete.
- (FUNCTION_ARG_ADVANCE): Delete.
- * config/stormy16/stormy16.c (xstormy16_function_arg): Make static.
- Take a const_tree and a bool.
- (xstormy16_function_arg_advance): Likewise. Return void, updating
- the CUM parameter instead.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/moxie/moxie-protos.h (moxie_function_arg): Delete.
- * config/moxie/moxie.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- (MOXIE_FUNCTION_ARG_SIZE): Move to...
- * config/moxie/moxie.c (MOXIE_FUNCTION_ARG_SIZE): ...here.
- (moxie_function_arg): Make static. Take a const_tree and a bool.
- (moxie_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/mn10300/mn10300-protos.h (function_arg): Delete.
- * config/mn10300/mn10300.h (FUNCTION_ARG): Delete.
- (FUNCTION_ARG_ADVANCE): Delete.
- * config/mn10300/mn10300.c (function_arg): Rename to...
- (mn10300_function_arg): ...this. Make static. Take a const_tree
- and a bool.
- (mn10300_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/iq2000/iq2000-protos.h (function_arg): Delete.
- (function_arg_advance): Delete.
- * config/iq2000/iq2000.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/iq2000/iq2000.c (function_arg): Rename to...
- (iq2000_function_arg): ...this. Make static. Take a const_tree and
- a bool.
- (function_arg_advance): Rename to...
- (iq2000_function_arg_advance): ...this. Make static. Take a
- const_tree and a bool.
- (iq2000_expand_prologue): Call iq2000_function_arg_advance and
- iq2000_function_arg.
- (iq2000_pass_by_reference): Call iq2000_function_arg).
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/fr30/fr30-protos.h (fr30_num_arg_regs): Delete.
- * config/fr30/fr30.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/fr30/fr30.c (fr30_num_arg_regs): Make static. Take a
- const_tree.
- (fr30_function_arg): New function.
- (fr30_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/frv/frv-protos.h (frv_function_arg): Delete.
- (frv_function_arg_advance): Delete.
- * config/frv/frv.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/frv/frv.c (frv_function_arg): Rename to...
- (frv_function_arg_1): Make static. Take const_tree and bool arguments.
- (frv_function_arg, frv_function_incoming_arg): New functions.
- (frv_function_arg_advance): Make static. Take a const_tree and a bool.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
- (TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-28 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/46153
- * config/i386/sse.md (sse_movhlps_exp): Use destination
- returned from ix86_fixup_binary_operands to expand insn.
- (sse_movlhps_exp): Ditto.
- (sse_loadhps_exp): Ditto.
- (sse_loadlps_exp): Ditto.
- (sse2_loadhpd_exp): Ditto.
- (sse2_loadlpd_exp): Ditto.
-
-2010-10-28 Andrew Stubbs <ams@codesourcery.com>
-
- * config/arm/arm.c (const_ok_for_arm): Support 0xXY00XY00 pattern
- constants in thumb2.
-
-2010-10-28 Eric Botcazou <ebotcazou@adacore.com>
-
- * combine.c (set_nonzero_bits_and_sign_copies): Use unsigned
- arithmetics in masking operations.
- (contains_muldiv): Likewise.
- (try_combine): Likewise.
- (find_split_point): Likewise.
- (combine_simplify_rtx): Likewise.
- (simplify_if_then_else): Likewise.
- (simplify_set): Likewise.
- (expand_compound_operation): Likewise.
- (expand_field_assignment): Likewise.
- (make_extraction): Likewise.
- (extract_left_shift): Likewise.
- (make_compound_operation): Likewise.
- (force_to_mode): Likewise.
- (make_field_assignment): Likewise.
- (reg_nonzero_bits_for_combine): Likewise.
- (simplify_shift_const_1): Likewise.
- (simplify_comparison): Likewise.
-
-2010-10-27 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/ia64/ia64-protos.h (ia64_function_arg): Delete.
- (ia64_function_arg_advance): Delete.
- * config/ia64/ia64.h (FUNCTION_ARG, FUNCTION_INCOMING_ARG): Delete.
- (FUNCTION_ARG_ADVANCE): Delete.
- * config/ia64/ia64.c (ia64_function_arg): Rename to...
- (ia64_function_arg_1): ...this. Make static. Take const_tree and
- bool arguments.
- (ia64_function_arg, ia64_function_incoming_arg): New functions.
- (ia64_function_arg_advance): Make static. Take a const_tree and
- a bool.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
- (TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-27 Steve Ellcey <sje@cup.hp.com>
-
- * doc/tm.texi.in (TARGET_GET_RAW_RESULT_MODE): New.
- (TARGET_GET_RAW_ARG_MODE): New.
- * doc/tm.texi: Regenerate.
- * target.def (get_raw_result_mode): New.
- (get_raw_arg_mode): New.
- * targhooks.c (default_get_reg_raw_mode): New.
- * targhooks.h (default_get_reg_raw_mode): New.
- * builtins.c (apply_args_size): Use targetm.calls.get_raw_arg_mode.
- (apply_result_size): Ditto.
- * config/ia64/ia64.c (ia64_get_reg_raw_mode): New.
- (TARGET_GET_RAW_RESULT_MODE): Define.
- (TARGET_GET_RAW_ARG_MODE): Ditto.
-
-2010-10-27 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/sparc/sol2-unwind.h (sparc64_fallback_frame_state): Adjust
- for newer Solaris 10 release.
- (sparc_fallback_frame_state): Likewise.
-
-2010-10-27 Jason Merrill <jason@redhat.com>
-
- * gimplify.c (gimplify_decl_expr): Handle anonymous artificial
- variables sooner.
-
-2010-10-27 Jie Zhang <jie@codesourcery.com>
- Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * haifa-sched.c (ISSUE_POINTS): Remove.
- (max_issue): Don't issue more than issue_rate instructions.
-
-2010-10-27 Ian Lance Taylor <iant@google.com>
-
- PR target/46197
- * config/i386/i386.md (UNSPECV_SPLIT_STACK_RETURN): New.
- (split_stack_return): Replace UNSPEC_STACK_CHECK with
- UNSPECV_SPLIT_STACK_RETURN.
-
-2010-10-27 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386-protos.h (init_cumulative_args): Add an int.
-
- * config/i386/i386.c (block_info): New.
- (BLOCK_INFO): Likewise.
- (call_avx256_state): Likewise.
- (check_avx256_stores): Likewise.
- (move_or_delete_vzeroupper_2): Likewise.
- (move_or_delete_vzeroupper_1): Likewise.
- (move_or_delete_vzeroupper): Likewise.
- (use_avx256_p): Likewise.
- (function_pass_avx256_p): Likewise.
- (flag_opts): Add -mvzeroupper.
- (ix86_option_override_internal): Turn on MASK_VZEROUPPER by
- default for TARGET_AVX. Turn off MASK_VZEROUPPER if TARGET_AVX
- is disabled.
- (ix86_function_ok_for_sibcall): Disable sibcall if we need to
- generate vzeroupper.
- (init_cumulative_args): Add an int to indicate caller. Set
- use_avx256_p, callee_return_avx256_p and caller_use_avx256_p
- based on return type.
- (ix86_function_arg): Set use_avx256_p, callee_pass_avx256_p and
- caller_pass_avx256_p based on argument type.
- (ix86_expand_epilogue): Emit vzeroupper if 256bit AVX register
- is used, but not returned by caller.
- (ix86_expand_call): Emit vzeroupper if 256bit AVX register is used.
- (ix86_local_alignment): Set use_avx256_p if 256bit AVX register
- is used.
- (ix86_minimum_alignment): Likewise.
- (ix86_expand_special_args_builtin): Set target to
- GEN_INT (vzeroupper_intrinsic) for CODE_FOR_avx_vzeroupper.
- (ix86_reorg): Run the vzeroupper optimization if needed.
-
- * config/i386/i386.h (ix86_args): Add caller.
- (INIT_CUMULATIVE_ARGS): Updated.
- (machine_function): Add use_vzeroupper_p, use_avx256_p,
- caller_pass_avx256_p, caller_return_avx256_p,
- callee_pass_avx256_p and callee_return_avx256_p.
-
- * config/i386/i386.opt (-mvzeroupper): New.
-
- * config/i386/predicates.md (vzeroupper_operation): Removed.
-
- * config/i386/sse.md (avx_vzeroupper): Removed.
- (*avx_vzeroupper): Removed.
- (avx_vzeroupper): New.
-
- * doc/invoke.texi: Document -mvzeroupper.
-
-2010-10-27 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/i386/t-mingw32 (SHLIB_LC): Add -lmingwthrd.
- * config/i386/t-mingw-w32 (SHLIB_LC): Likewise.
- * config/i386/t-mingw-w64 (SHLIB_LC): Likewise.
-
-2010-10-27 Eric Botcazou <ebotcazou@adacore.com>
- Olivier Hainque <hainque@adacore.com>
-
- * config/i386/w32-unwind.h (i386_w32_fallback_frame_state): Fix regnum
- of EBP. Do not restore reg #9. Remove +1 adjustment to EIP and set
- fs->signal_frame instead.
-
-2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (cp_parser_objc_at_property_declaration): Removed
- parsing of RID_COPIES and RID_IVAR.
-
-2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_parser_objc_at_property_declaration): Recognize
- RID_ASSIGN, RID_COPY, RID_RETAIN, RID_READWRITE and RID_NONATOMIC.
- Do not use objc_set_property_attr, but use local variables
- instead. Detect repeated usage of setter, getter and ivar
- attributes. Improved error processing when a setter name does not
- end in ':'. Do not check for CPP_CLOSE_PAREN after we determined
- that the token is a keyword. Updated call to
- objc_add_property_declaration.
-
-2010-10-27 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_parser_objc_at_property): Renamed to
- c_parser_objc_at_property_declaration. Updated calls to
- objc_add_property_variable, now objc_add_property_declaration.
- Code rewritten to be much more robust in recovering from syntax
- errors. Added comments.
- (c_parser_objc_property_attrlist): Removed.
- (c_parser_external_declaration): Updated calls to
- c_parser_objc_at_property, now
- c_parser_objc_at_property_declaration.
- (c_parser_objc_methodprotolist): Same change.
-
-2010-10-26 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.md (split_stack_return): Put back unspec_volatile.
-
-2010-10-26 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (process_references): Enqueue all referenced nodes;
- mark as reachable only non-external nodes.
- (cgraph_remove_unreachable_nodes): All referenced nodes should
- be enqueued; remove bogues node->needed check.
-
-2010-10-26 Jan Hubicka <jh@suse.cz>
-
- * cgraphbuild.c (build_cgraph_edges): Use ipa-reference
- to represent OMP.
-
-2010-10-26 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.md (split_stack_return): Replace
- unspec_volatile with unspec.
-
-2010-10-26 Jonathan Wakely <jwakely.gcc@gmail.com>
-
- * doc/install.texi: Fix typo in --with-sysroot description.
-
-2010-10-26 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (cgraph_externally_visible_p, varpool_externally_visible_p):
- Use info provided by linker plugin.
-
-2010-10-26 Jason Merrill <jason@redhat.com>
-
- * varasm.c (constructor_static_from_elts_p): Don't require a
- CONSTRUCTOR to have elements to be suitable for static
- initialization. Allow ARRAY_TYPE as well.
-
-2010-10-26 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/45736
- * cgraph.c (cgraph_set_readonly_flag): Rename to...
- (cgraph_set_const_flags) ... this one; get also looping argument;
- clear constructor/destructor flags.
- (cgraph_set_pure_flag): Likewise.
- (cgraph_set_looping_const_or_pure_flag): Remove.
- (cgraph_can_remove_if_no_direct_calls_and_refs): Do not try
- to optimize away static ctors/dtors; it does not work on inline clones;
- external functions can always be rmeoved.
- (cgraph_will_be_removed_from_program_if_no_direct_calls): Assert on
- inline clones; in LTO external functions always can go.
- (cgraph_used_from_object_file_p): Handle EXTERNAL functions correctly.
- (cgraph_mark_address_taken_node): Assert that we are not taking
- address of inline clone.
- (cgraph_can_remove_if_no_direct_calls_p): We always eventually remove
- external functions.
- * ipa-cp.c (ipcp_cloning_candidate_p): Do not clone functions with
- address taken.
- (ipcp_initialize_node_lattices): Only local functions can be
- handled without cloning.
- * cgraph.h (cgraph_set_readonly_flag,
- cgraph_set_looping_const_or_pure_flag): Remove.
- (cgraph_set_const_flag): Declare.
- (cgraph_set_pure_flag): Update.
- * ipa-pure-const (propagate_pure_const, local_pure_const): Update
- flags setting code.
- * ipa.c (cgraph_remove_unreachable_nodes): Fix formating; do not
- look at inline clones; fix handling of external definitions.
- (cgraph_postorder): Do not look at inline clones in the first pass.
- (function_and_variable_visibility): Drop constructors/destructor
- flags at pure and const functions.
- * tree-profile.c (tree_profiling): Update.
- * ipa-inline.c (cgraph_clone_inlined_nodes): Always clone functions with
- address taken; external functions do not account to whole program size.
- (cgraph_decide_inlining): Likewise; do not try to inline
- functions already inlined.
-
-2010-10-26 Jie Zhang <jie@codesourcery.com>
-
- * doc/invoke.texi: Improve documentation of
- -fstrict-volatile-bitfields.
-
-2010-10-26 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/46167
- * tree-vect-patterns.c (vect_recog_dot_prod_pattern): Check that there
- is basic block for the statement.
-
-2010-10-26 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.c (pdp11_f_format, pdp11_d_format): Update to
- current definition of struct_real_format.
-
-2010-10-26 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44948
- * config/i386/i386.c (ix86_old_function_arg_boundary): New.
- (ix86_function_arg_boundary): Always align parameters on stack
- in 64bit and align parameters with alignment >= 16byte on stack
- in 32bit. Warn alignment change.
-
-2010-10-26 Ian Lance Taylor <iant@google.com>
-
- PR middle-end/45687
- * ipa-prop.c (ipa_modify_call_arguments): Correct type of MEM_REF
- offset.
-
-2010-10-25 Rodrigo Rivas Costa <rodrigorivascosta@gmail.com>
-
- Implement opaque-enum-specifiesr for C++0x
- * tree.h (ENUM_IS_OPAQUE): New.
- * dwarf2out.c (gen_enumeration_type_die): Use ENUM_IS_OPAQUE.
-
-2010-10-26 Jie Zhang <jie@codesourcery.com>
-
- * stor-layout.c (layout_decl): Use the field's type to
- determine the mode and keep DECL_BIT_FIELD for a volatile bit-field.
- * config/arm/arm.c (arm_override_options): Default to
- -fstrict-volatile-bitfields.
-
-2010-10-25 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md: Add define_constants for register
- numbers, branch offset limits.
- * config/pdp11/pdp11.c: Use named constants instead of numbers.
- * config/pdp11.pdp11.h: Ditto.
-
-2010-10-25 Eric Botcazou <ebotcazou@adacore.com>
-
- * configure.ac: Use $cpu_type instead of $target to define the nop.
- * configure: Regenerate.
-
-2010-10-25 Jie Zhang <jie@codesourcery.com>
-
- * combine.c (try_combine): If insns need to be kept around, check that
- they can be copied in the merged instruction.
-
-2010-10-24 Eric Botcazou <ebotcazou@adacore.com>
-
- * reg-stack.c (convert_regs_1): Return boolean value, true if the CFG
- has been modified.
- (convert_regs_2): Likewise. Adjust calls to convert_regs_1.
- (convert_regs): Adjust calls to convert_regs_2. Clean up the CFG if
- it has been modified.
-
-2010-10-24 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/sparc/sparc.c (sparc_type_code) <NULLPTR_TYPE>: New case.
-
-2010-10-24 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md: Change length attribute to be in bytes.
- * config/pdp11/pdp11.c (output_jump): Ditto.
-
-2010-10-24 Ian Lance Taylor <iant@google.com>
-
- * config/i386/i386.c (ix86_va_start): Remove extraneous blank line.
-
-2010-10-24 Eric Botcazou <ebotcazou@adacore.com>
-
- * cfglayout.c (fixup_reorder_chain): When ensuring that there is at
- least one insn with a locus corresponding to an edge's goto_locus,
- disregard non-fallthru edges to the exit block and merge the blocks
- created for the same goto_locus.
-
-2010-10-23 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c (n_switches_alloc_debug_check): New.
- (set_option_handlers): New.
- (process_command): Use set_option_handlers.
- (do_self_spec): Pass spec-generated options through option handlers.
- (main): Also save and restore n_switches_alloc when swapping
- switch arrays.
-
-2010-10-23 Richard Henderson <rth@redhat.com>
-
- PR target/46144
- * config/i386/sse.md (*avx_absneg<AVXMODEF2P>2): New.
- (*sse_absneg<SSEMODEF2P>2): Rename from *absneg<VEC_FLOAT_MODE>2.
- Honor matching operands when splitting to XOR.
-
-2010-10-23 Ian Lance Taylor <iant@google.com>
-
- * tree-vrp.c (extract_range_from_binary_expr): If
- flag_non_call_exceptions don't eliminate division by zero.
- * simplify-rtx.c (simplify_binary_operation_1): Likewise.
-
-2010-10-23 Nathan Froyd <froydnj@codesourcery.com>
-
- * cppbuiltin.c (define_builtin_macros_for_type_sizes): Define
- __BYTE_ORDER__, __ORDER_LITTLE_ENDIAN__, __ORDER_BIG_ENDIAN__, and
- __ORDER_PDP_ENDIAN__.
- * libgcc2.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- (struct DWstruct): Define based on __BYTE_ORDER__.
- * config/fixed-bit.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- (struct INTstruct): Define based on __BYTE_ORDER__.
- * config/dfp-bit.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Test __BYTE_ORDER__.
- * system.h (LIBGCC2_WORDS_BIG_ENDIAN): Poison identifier.
- * config/arc/arc.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/arm/arm.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/ia64/ia64.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/iq2000/iq2000.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/lm32/lm32.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/m32r/m32r.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/mcore/mcore.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/mep/mep.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/mips/mips.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/rs6000/sysv4.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/rx/rx.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/score/score.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/sh/sh.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/sparc/sparc.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * config/xtensa/xtensa.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * doc/tm.texi.in (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
- * doc/tm.texi: Regenerate.
- * doc/cpp.texi (__BYTE_ORDER__, __ORDER_LITTLE_ENDIAN__): Document.
- (__ORDER_BIG_ENDIAN__, __ORDER_PDP_ENDIAN__): Likewise.
-
-2010-10-23 Jie Zhang <jie@codesourcery.com>
-
- PR rtl-optimization/37360
- * config/mips/mips.c (cached_can_issue_more): New local variable.
- (mips_sched_reorder_1): New.
- (mips_sched_reorder): Use mips_sched_reorder_1.
- (mips_sched_reorder2): New.
- (mips_variable_issue): Set cached_can_issue_more.
- (TARGET_SCHED_REORDER2): Define to mips_sched_reorder2
- instead of mips_sched_reorder.
-
- Revert:
- 2008-09-09 Andrey Belevantsev <abel@ispras.ru>
- PR rtl-optimization/37360
- * haifa-sched.c (max_issue): Do not assert that we never issue more
- insns than issue_rate. Add comment.
-
-2010-10-22 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimplify.c (gimplify_variable_sized_compare): Preserve the source
- location info of the expression.
-
-2010-10-22 DJ Delorie <dj@redhat.com>
-
- * doc/extend.texi (Named Address Spaces): Document the M32C named
- address space.
-
- * config/m32c/m32c-pragma.c (m32c_register_pragmas): Register the
- __far address space.
- * config/m32c/m32c.h (ADDR_SPACE_FAR): New. Add support for
- "__far" address space for R8C and M16C processor variants.
- * config/m32c/m32c.c (m32c_addr_space_legitimate_address_p): New.
- (far_addr_space_p): New.
- (encode_pattern_1): Add sign and zero extend support.
- (m32c_hard_regno_nregs_1): Large pointers in A16 mode are SImode.
- (m32c_extra_constraint_p2): Add SF constraint.
- (m32c_legitimate_address_p): Support __far addresses.
- (m32c_addr_space_pointer_mode): New.
- (m32c_addr_space_address_mode): New.
- (m32c_addr_space_legitimate_address_p): New.
- (m32c_addr_space_legitimize_address): New.
- (m32c_addr_space_subset_p): New.
- (m32c_addr_space_convert): New.
- (conversions): Add __far operand patterns.
- (m32c_prepare_move): Force constants into registers for __far moves.
- (m32c_split_move): __far moves are always split.
- * config/m32c/addsub.md (addsi3_1): Support SImode symbols.
- * config/m32c/mov.md (mov<mode>_far_op1): New.
- (mov<mode>_far_op2): New.
- (movqi_op): Add __far (SF) support.
- (movhi_op): Likewise.
- (movsi_splittable): Split A1A0 also.
-
-2010-10-22 Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
- Andrew Pinski <pinskia@gmail.com>
-
- * c-typeck.c (build_array_ref): Handle subscripting of vectors.
- * doc/extend.texi: New paragraph
-
-2010-10-22 Paul Koning <ni1d@arrl.net>
-
- * config.pdp11/pdp11.h (DBX_DEBUGGING_INFO): Define.
-
-2010-10-22 DJ Delorie <dj@redhat.com>
-
- * config/m32c/m32c-lib1.S (m32c_jsri16): Make reentrant.
-
-2010-10-22 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.h (IRA_COVER_CLASSES): Define.
-
-2010-10-22 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_builtin_vectorized_function): Add
- cases for __builtin_fma and __builtin_fmaf.
-
-2010-10-22 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_expand_fp_absneg_operator): Produce
- NEG+USE for vectors as well.
- * config/i386/i386.md (*absneg<VEC_FLOAT_MODE>2): New pattern
- and splitter.
-
-2010-10-22 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c (DEFAULT_SWITCH_CURTAILS_COMPILATION,
- SWITCH_CURTAILS_COMPILATION): Remove.
- * doc/tm.texi.in (SWITCH_CURTAILS_COMPILATION): Remove documentation.
- * doc/tm.texi: Regenerate.
- * system.h (SWITCH_CURTAILS_COMPILATION): Poison.
-
-2010-10-22 Changpeng Fang <changpeng.fang@amd.com>
-
- * config/i386/bdver1.md: New file.
- * config/i386/i386.md (include "bdver1.md"): Invoke the
- pipeline description for bdver1.
- (x86_sahf_1): Add "bdver1_decode" attribute.
- (*cmpfp_i_mixed): Likewise.
- (*cmpfp_i_sse): Likewise.
- (*cmpfp_i_i387): Likewise.
- (*cmpfp_iu_mixed): Likewise.
- (*cmpfp_iu_sse): Likewise.
- (*cmpfp_iu_387): Likewise.
- (*swap<mode>,*swap<mode>_1): Likewise.
- (fixuns_trunc<mode>hi2): Likewise.
- (fix_trunc<mode>si_sse): Likewise.
- (x86_fnstcw_1): Likewise.
- (x86_fldcw_1): Likewise.
- (*floatsi<mode>2_vector_mixed_with_temp): Likewise.
- (*floatsi<mode>2_vector_mixed): Likewise.
- (*float<SSEMODEI24:mode><MODEF:mode>2_mixed_with_temp): Likewise.
- (*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit): Likewise.
- (*float<SSEMODEI24:mode><MODEF:mode>2_mixed_nointerunit): Likewise.
- (*floatsi<mode>2_vector_sse_with_temp): Likewise.
- (*floatsi<mode>2_vector_sse): Likewise.
- (*float<SSEMODEI24:mode><MODEF:mode>2_sse_with_temp): Likewise.
- (*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit): Likewise.
- (*float<SSEMODEI24:mode><MODEF:mode>2_sse_nointerunit): Likewise.
- (*mul<mode>3_1): Likewise.
- (*mulsi3_1_zext): Likewise.
- (*mulhi3_1): Likewise.
- (*mulqi3_1): Likewise.
- (*<u>mul<mode><dwi>3_1): Likewise.
- (*<u>mulqihi3_1): Likewise.
- (*<s>muldi3_highpart_1): Likewise.
- (*<s>mulsi3_highpart_1): Likewise.
- (*<s>mulsi3_highpart_zext): Likewise.
- (x86_64_shld): Likewise.
- (x86_shld): Likewise.
- (x86_64_shrd): Likewise.
- (x86_shrd): Likewise.
- (sqrtxf2): Likewise.
- (sqrt_extend<mode>xf2_i387): Likewise.
- (*sqrt<mode>2_sse): Likewise.
- * config/i386/sse.md (sse_cvtsi2ss): Add "bdver1_decode" attribute.
- (sse_cvtsi2ssq): Likewise.
- (sse_cvtss2si): Likewise.
- (sse_cvtss2si_2): Likewise.
- (sse_cvtss2siq): Likewise.
- (sse_cvtss2siq_2): Likewise.
- (sse_cvttss2si): Likewise.
- (sse_cvttss2siq): Likewise.
- (sse2_cvtpi2pd): Likewise.
- (sse2_cvttpd2pi): Likewise.
- (sse2_cvtsi2sd): Likewise.
- (sse2_cvtsi2sdq): Likewise.
- (sse2_cvtsd2si): Likewise.
- (sse2_cvtsd2si_2): Likewise.
- (sse2_cvtsd2siq): Likewise.
- (sse2_cvtsd2siq_2): Likewise.
- (sse2_cvttsd2si): Likewise.
- (sse2_cvttsd2siq): Likewise.
- (*sse2_cvtpd2dq): Likewise.
- (*sse2_cvttpd2dq): Likewise.
- (sse2_cvtsd2ss): Likewise.
- (sse2_cvtss2sd): Likewise.
- (*sse2_cvtpd2ps): Likewise.
- (sse2_cvtps2pd): Likewise.
-
-2010-10-22 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/46137
- * gimple-fold.c (gimplify_and_update_call_from_tree): Properly
- remove the virtual operands if they are not needed.
-
-2010-10-22 Changpeng Fang <changpeng.fang@amd.com>
-
- * config/i386/i386.c (processor_costs bdver1_cost): Update
- insn costs and architectural parameters for bdver1.
-
-2010-10-22 Richard Guenther <rguenther@suse.de>
-
- * gimple.h (gimple_register_canonical_type): Declare.
- * gimple.c (gimple_canonical_types): New global hashtable.
- (struct gimple_type_leader_entry_s): New type.
- (gimple_type_leader): New global cache.
- (gimple_lookup_type_leader): New function.
- (gtc_visit): Query the proper cache.
- (gimple_types_compatible_p): Likewise.
- (gimple_register_type): Use the new cache instead of TYPE_CANONICAL.
- (gimple_canonical_type_eq): New function.
- (gimple_register_canonical_type): Likewise.
- (print_gimple_types_stats): Adjust for gimple_canonical_types.
- (free_gimple_type_tables): Likewise. Free gimple_type_leader.
- * tree-ssa.c (useless_type_conversion_p): Do not dispatch to
- gimple_types_compatible_p for LTO.
-
-2010-10-22 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/46098
- * config/i386/sse.md (*avx_movu<ssemodesuffix><avxmodesuffix>):
- Rename from avx_movu<ssemodesuffix><avxmodesuffix>.
- (avx_movu<ssemodesuffix><avxmodesuffix>): New expander.
- (*<sse>_movu<ssemodesuffix>): Rename from <sse>_movu<ssemodesuffix>.
- (<sse>_movu<ssemodesuffix>): New expander.
- (*avx_movdqu<avxmodesuffix>): Rename from avx_movdqu<avxmodesuffix>.
- (avx_movdqu<avxmodesuffix>): New expander.
- (*sse2_movdqu): Rename from sse2_movdqu.
- (sse2_movdqu): New expander.
-
-2010-10-22 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45720
- * tree-vect-data-refs.c (vect_update_misalignment_for_peel):
- Handle negative step.
- (vect_enhance_data_refs_alignment): Likewise.
- * tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Likewise.
- (vect_create_cond_for_align_checks): Likewise.
- (vect_create_cond_for_alias_checks): Likewise.
-
-2010-10-22 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/46126
- * tree-vect-stmts.c (vect_analyze_stmt): Pass NODE to
- vectorizable_shift in case of basic block vectorization.
-
-2010-10-22 Joseph Myers <joseph@codesourcery.com>
-
- * target.h (enum opt_levels, struct default_options): New.
- * target.def (handle_ofast): Remove hook.
- (target_option.optimization): Change to
- target_option.optimization_table.
- * doc/tm.texi.in (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- (CAN_DEBUG_WITHOUT_FP): Remove.
- * doc/tm.texi: Regenerate.
- * opts.c (maybe_default_option, maybe_default_options,
- default_options_table): New.
- (default_options_optimization): Take extra parameters. Don't
- assert that global_options and global_options_set are in use. Use
- maybe_default_options.
- (decode_options): Pass extra parameters to
- default_options_optimization.
- * common.opt (falign-loops): Use value 0 with Var.
- (frerun-cse-after-loop, ftree-ter): Remove Init.
- * system.h (CAN_DEBUG_WITHOUT_FP, TARGET_HANDLE_OFAST,
- TARGET_OPTION_OPTIMIZATION): Remove.
- * targhooks.c (empty_optimization_table): New.
- * targhooks.h (empty_optimization_table): Declare.
- * toplev.c (process_options): Don't set flag_rerun_cse_after_loop.
- * config/alpha/alpha.c (alpha_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/alpha/alpha.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/arm/arm.c (arm_option_optimization: Change to
- arm_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/arm/arm.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/avr/avr.c (avr_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/avr/avr.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/cris/cris.c (cris_option_optimization): Change to
- cris_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/crx/crx.c (crx_option_optimization): Change to
- crx_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/crx/crx.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/fr30/fr30.c (fr30_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/fr30/fr30.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/frv/frv.c (frv_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/frv/frv.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/h8300/h8300.c (h8300_option_optimization): Change to
- h8300_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/h8300/h8300.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/i386/i386.c (ix86_option_optimization): Change to
- ix86_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/i386/sol2-10.h (SUBTARGET_OPTIMIZATION_OPTIONS): Define
- as initializer.
- * config/ia64/ia64.c (ia64_option_optimization): Change to
- ia64_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/ia64/ia64.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/ia64/vms.h (SUBTARGET_OPTIMIZATION_OPTIONS): Define as
- initializer.
- * config/iq2000/iq2000.c (iq2000_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/iq2000/iq2000.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/lm32/lm32.c (lm32_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/lm32/lm32.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/m32r/m32r.c (m32r_option_optimization): Change to
- m32r_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/m32r/m32r.h (SUBTARGET_OPTIMIZATION_OPTIONS,
- CAN_DEBUG_WITHOUT_FP): Remove.
- * config/mcore/mcore.c (mcore_option_optimization): Change to
- mcore_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/mep/mep.c (mep_option_optimization): Change to
- mep_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/mep/mep.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/microblaze/microblaze.c
- (microblaze_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/microblaze/microblaze.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/mips/mips.c (mips_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/mips/mips.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/mmix/mmix.c (mmix_option_optimization): Change to
- mmix_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/mmix/mmix.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/mn10300/mn10300.c (mn10300_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/mn10300/mn10300.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/pa/pa.c (pa_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/pa/pa.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/pdp11/pdp11.c (pdp11_option_optimization): Change to
- pdp11_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/picochip/picochip.c (picochip_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/picochip/picochip.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/rs6000/rs6000.c (rs6000_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/rs6000/rs6000.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/rx/rx.c (rx_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/rx/rx.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/s390/s390.c (s390_option_optimization): Change to
- s390_option_optimization_table.
- (s390_option_override): Update comment.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/s390/s390.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/score/score.c (score_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/score/score.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/sh/sh.c (sh_option_optimization): Change to
- sh_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- (sh_option_override): Set MASK_SAVE_ALL_TARGET_REGS here.
- (sh_option_override, expand_block_move, multcosts, find_barrier,
- barrier_align): Use optimize_size instead of TARGET_SMALLCODE.
- * config/sh/sh.h (CAN_DEBUG_WITHOUT_FP): Remove.
- (LOOP_ALIGN, TRAMPOLINE_ALIGNMENT, MOVE_BY_PIECES_P,
- STORE_BY_PIECES_P, SH_DYNAMIC_SHIFT_COST): Use optimize_size
- instead of TARGET_SMALLCODE.
- * config/sh/sh.opt (mspace): Make into an alias for -Os.
- * config/sparc/sparc.c (sparc_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/sparc/sparc.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/stormy16/stormy16.c (xstorym16_option_optimization_table,
- TARGET_OPTION_OPTIMIZATION_TABLE): New.
- * config/stormy16/stormy16.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/v850/v850.c (v850_option_optimization): Change to
- v850_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/v850/v850.h (CAN_DEBUG_WITHOUT_FP): Remove.
- * config/xtensa/xtensa.c (xtensa_option_optimization): Change to
- xtensa_option_optimization_table.
- (TARGET_OPTION_OPTIMIZATION): Change to
- TARGET_OPTION_OPTIMIZATION_TABLE.
- * config/xtensa/xtensa.h (CAN_DEBUG_WITHOUT_FP): Remove.
-
-2010-10-21 Iain Sandoe <iains@gcc.gnu.org>
-
- Based on the CFString implementation in FSF apple/trunk branch.
-
- * target.def (objc_construct_string): New Hook.
- * doc/tm.texi (objc_construct_string): Document.
- * doc/tm.texi.in (TARGET_OBJC_CONSTRUCT_STRING): New.
- * config/t-darwin: Amend build rules for darwin.o.
- * config/darwin.opt: Add cfstrings flags.
- * config/darwin-c.c: Define __CONSTANT_CFSTRINGS__.
- (darwin_objc_construct_string): New.
- * config/i386/darwin.h (SUBTARGET_INIT_BUILTINS): Define.
- * config/i386/i386.c (ix86_init_builtins): Add SUBTARGET_INIT_BUILTINS.
- * config/darwin-protos.h (darwin_init_cfstring_builtins): New prototype.
- (darwin_fold_builtin): Likewise.
- (darwin_build_constant_cfstring): Likewise.
- (darwin_objc_construct_string): Likewise.
- (darwin_cfstring_p): Likewise.
- (darwin_enter_string_into_cfstring_table): Likewise.
- * config/rs6000/darwin.h (SUBTARGET_INIT_BUILTINS) Update for CFString.
- * config/darwin.c (darwin_running_cxx): New var.
- (machopic_select_section): Return cfstring_constant_object_section.
- (darwin_override_options): Set darwin_running_cxx.
- (add_builtin_field_decl): New.
- (darwin_init_cfstring_builtins): New.
- (darwin_build_constant_cfstring): New.
- (darwin_fold_builtin): New.
- (cfstring_hash): New.
- (cfstring_eq): New.
- (darwin_enter_string_into_cfstring_table): New.
- * config/darwin-sections.def (cfstring_constant_object_section): New.
- * config/darwin.h (TARGET_FOLD_BUILTIN): Define.
- (TARGET_OBJC_CONSTRUCT_STRING): Define.
-
-2010-10-21 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/alpha/alpha.c (alpha_build_builtin_va_list): Use
- TYPE_STUB_DECL instead of TREE_CHAIN.
- * config/i386/i386.c (ix86_build_builtin_va_list_abi): Likewise.
- * config/rs6000/rs6000.c (rs6000_build_builtin_va_list): Likewise.
- * config/s390/s390.c (s390_build_builtin_va_list): Likewise.
- * config/sh/sh.c (sh_build_builtin_va_list): Likewise.
- * config/spu/spu.c (spu_build_builtin_va_list): Likewise.
- * config/stormy16/stormy16.c (xstormy16_build_builtin_va_list):
- Likewise.
- * config/xtensa/xtensa.c (xtensa_build_builtin_va_list): Likewise.
-
-2010-10-22 Jie Zhang <jie@codesourcery.com>
-
- * expr.c (emit_group_load_1): Update calls to extract_bit_field.
- (copy_blkmode_from_reg): Likewise.
- (read_complex_part): Likewise.
- (expand_expr_real_1): Calculate packedp and pass it to
- extract_bit_field.
- * expr.h (extract_bit_field): Update declaration.
- * calls.c (store_unaligned_arguments_into_pseudos): Update call
- to extract_bit_field.
- * expmed.c (extract_fixed_bit_field): Update calls to
- extract_fixed_bit_field.
- (store_split_bit_field): Likewise.
- (extract_bit_field_1): Add new argument packedp.
- (extract_bit_field): Add new argument packedp.
- (extract_fixed_bit_field): Add new argument packedp and let
- packed attribute override volatile.
- * stmt.c (expand_return): Update call to extract_bit_field.
-
-2010-10-21 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/spu/spu.c (spu_function_arg): Dereference CUM parameter.
-
-2010-10-21 Nathan Froyd <froydnj@codesourcery.com>
-
- * ddg.c (add_cross_iteration_register_deps): Call gcc_assert instead
- of gcc_checking_assert.
- * sel-sched.c (code_motion_process_successors): Likewise.
-
-2010-10-21 Eric Botcazou <ebotcazou@adacore.com>
-
- * cfgcleanup.c (try_forward_edges): Do not throw away previous steps
- when stopping because of a different locus on edge or insn.
- (try_optimize_cfg): Add comment.
- * cfgrtl.c (rtl_merge_blocks): Tweak log message. If the destination
- block is a forwarder block, propagate locus on the edge.
- (cfg_layout_merge_blocks): Likewise.
-
-2010-10-21 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/45946
- * config/i386/i386.md (*pushti2): New insn pattern.
- (pushti2 splitter): New insn splitter.
- (*push<mode>2): Macroize insn pattern from *push{di,ti}2 using
- DWI mode iterator.
-
-2010-10-21 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11-protos.md (arith_operand,
- const_immediate_operand, expand_shift_operand,
- immediate15_operand): Delete
- * config/pdp11/pdp11.c: Ditto.
- * config/pdp11/pdp11.h (REG_CLASS_FROM_LETTER,
- CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P,
- EXTRA_CONSTRAINT): Delete.
- * config/pdp11/pdp11.md (various): Use standard constraints
- instead of removed ones.
- * config/pdp11/constraints.md: New file.
- * config/pdp11/predicates.md: New file.
-
-2010-10-21 Bingfeng Mei <bmei@broadcom.com>
-
- PR c/45834
- * alias.c (true_dependence_1): Remove obsolete check for QImode.
- (may_alias_p): Ditto.
-
-2010-10-21 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/45875
- * tree.c (get_binfo_at_offset): Remove initial zero offset test.
-
-2010-10-21 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree-into-ssa.c (rewrite_update_enter_block): Remove unused
- variables.
- (create_new_def_for): Likewise.
-
-2010-10-21 Nick Clifton <nickc@redhat.com>
-
- * config/mn10300/mn10300.c: Fold code to 80-character width.
- Replace GET_CODE (foo) == REG with REG_P (foo). Likewise for
- MEM, CONST_INT and CONST_DOUBLE.
- (targetm): Move initialization to end of file.
- (print_operand): Rename to mn10300_print_operand.
- (print_operand_address): Rename to mn10300_print_operand_address.
- (can_use_return_insn): Rename to mn10300_can_use_return_insn.
- (expand_prologue): Rename to mn10300_expand_prologue.
- (expand_epilogue): Rename to mn10300_expand_epilogue.
- (initial_offset): Rename to mn10300_initial_offset.
- (function_arg): Rename to mn10300_function_arg.
- (mask_ok_for_mem_btst): Rename to mn10300_mask_ok_for_mem_btst.
- (symbolic_operand): Rename to mn10300_symbolic_operand.
- (legitimize_pic_address): Rename to mn10300_legitimize_pic_address.
- (legitimate_pic_operand_p): Rename to mn10300_legitimate_pic_operand_p.
- * config/mn10300/mn10300-protos.h: Update prototypes.
- * config/mn10300/mn10300.h: Fold code to 80-character width.
- Replace GET_CODE (foo) == REG with REG_P (foo). Likewise for
- MEM, CONST_INT and CONST_DOUBLE.
- (CPP_SPEC): Move to...
- (TARGET_CPU_CPP_BUILTINS): ... here.
- * config/mn10300/mn10300.md: Fold code to 80-character width.
- Replace GET_CODE (foo) == REG with REG_P (foo). Likewise for
- MEM, CONST_INT and CONST_DOUBLE.
-
-2010-10-21 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/46049
- PR tree-optimization/46052
- * tree-vectorizer.h (enum stmt_vec_info_type): Add new value for shift.
- (vect_get_slp_defs): Add arguments.
- * tree-vect-loop.c (vect_create_epilog_for_reduction): Pass scalar
- operands to vect_get_slp_defs.
- (vectorizable_reduction): Fix comment, pass scalar operands to
- vect_get_slp_defs.
- * tree-vect-stmts.c (vect_get_vec_def_for_operand): Use operand's
- type to determine number of units in the created vector.
- (vect_get_vec_defs): Pass scalar operands to vect_get_slp_defs.
- (vectorizable_conversion): Fix comment.
- (vectorizable_shift): New function.
- (vectorizable_operation): Move code that handles shifts to
- vectorizable_shift.
- (vectorizable_type_demotion): Fix comment, pass scalar operands to
- vect_get_slp_defs.
- (vectorizable_type_promotion, vectorizable_store): Likewise.
- (vectorizable_condition): Fix comment.
- (vect_analyze_stmt): Call vectorizable_shift.
- (vect_transform_stmt): Likewise.
- * tree-vect-slp.c (vect_get_constant_vectors): Add new argument.
- Use it as the operand to create vectors for, except reduction
- initial definition and store. Use operands type.
- (vect_get_slp_defs): Add new arguments. Pass them to
- vect_get_constant_vectors.
-
-2010-10-21 Nathan Froyd <froydnj@codesourcery.com>
-
- * basic-block.h (single_succ_edge): Use gcc_checking_assert.
- (single_pred_edge, ei_container, ei_next, ei_prev): Likewise.
- * cfghooks.c (fixup_reorder_chain): Likewise.
- * cfgrtl.c (cfg_layout_merge_blocks): Likewise.
- * cgraph.c (cgraph_add_thunk): Likewise.
- (cgraph_create_edge_1): Likewise.
- (cgraph_create_virtual_clone): Likewise.
- * ddg.c (add_cross_iteration_register_deps): Likewise.
- * dwarf2out.c (modified_type_die): Likewise.
- * emit-rtl.c (set_mem_alias_set): Likewise.
- * ggc-zone.c (zone_allocate_marks): Likewise.
- * gimple-iterator.c (gsi_move_to_bb_end): Likewise.
- * gimple.c (iterative_hash_gimple_type): Likewise.
- * graphite-scop-detection.c (create_single_entry_edge): Likewise.
- (create_single_exit_edge): Likewise.
- * haifa-sched.c (choose_ready): Likewise.
- * lto-streamer-in.c (input_gimple_stmt): Likewise.
- * passes.c (execute_todo): Likewise.
- * sched-ebb.c (begin_schedule_ready): Likewise.
- * sel-sched.c (code_motion_process_successors): Likewise.
- * tree-call-cdce.c (gen_conditions_for_pow): Likewise.
- * tree-cfg-cleanup.c (tree_forwarder_block_p): Likewise.
- * tree-flow-inline.h (link_imm_use, move_use_after_head): Likewise.
- (phi_arg_index_from_use, phi_ssa_name_p): Likewise.
- * tree-into-ssa.c (insert_updated_phi_nodes_for): Likewise.
- * tree-ssa-coalesce.c (ssa_conflicts_test_p): Likewise.
- (ssa_conflicts_add): Likewise.
- * tree-ssa-copy.c (replace_exp): Likewise.
- * tree-ssa-dom.c (eliminate_redundant_computations): Likewise.
- * tree-ssa-forwprop.c (simple_gimple_switch): Likewise.
- * tree-ssa-math-opts.c (execute_cse_reciprocals): Likewise.
- * tree-ssa-pre.c (bitmap_value_insert_into_set): Likewise.
- (compute_antic): Likewise.
- * tree-ssa-ter.c (add_to_partition_kill_list): Likewise.
- (add_dependence): Likewise.
- (process_replaceable, kill_expr, find_replaceable_exprs): Likewise.
- * tree-vrp.c (supports_overflow_infinity): Likewise.
- (make_overflow_infinity, negative_overflow_infinity): Likewise.
- (avoid_overflow_infinity, register_new_assert_for): Likewise.
- (process_assert_insertions_for): Likewise.
- * var-tracking.c (dv_is_value_p, dv_as_decl, dv_from_decl): Likewise.
- (dv_from_value, variable_union, find_loc_in_1pdv): Likewise.
- (intersect_loc_chains, variable_merge_over_cur): Likewise.
-
-2010-10-21 Nathan Froyd <froydnj@codesourcery.com>
-
- * cfgloop.c (flow_loops_find): Call bb_has_abnormal_pred.
- * reload1.c (has_nonexceptional_receiver): Likewise.
- * tree-into-ssa.c (rewrite_update_enter_block): Likewise.
- (create_new_def_for): Likewise.
- * tree-cfgcleanup.c (remove_forwarder_block): Likewise.
- (merge_phi_nodes): Likewise.
- (has_abnormal_incoming_edge_p): Delete.
-
-2010-10-21 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/sse.md (ssescalarmodesuffix): Add V8SI and V4DI.
-
-2010-10-21 Richard Guenther <rguenther@suse.de>
- Michael Matz <matz@suse.de>
-
- PR tree-optimization/45764
- * tree-vect-data-refs.c (vect_compute_data_ref_alignment):
- Adjust initial misalignment for negative DR_STEP.
- (vect_find_same_alignment_drs): Two DRs with different DR_STEP
- do not have the same alignment over the whole iteration domain.
-
-2010-10-21 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/46111
- * tree-parloops.c (take_address_of): Re-organize for MEM_REF.
-
-2010-10-21 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.md (*xordi3_cc): Mark xgrk as z196 only.
-
-2010-10-21 Tristan Gingold <gingold@adacore.com>
-
- * config/vms/vms-crtl.h (CRTL_NAMES): Add new translations.
- * config/vms/vms-crtl-64.h (CRTL_NAMES): Ditto.
-
-2010-10-21 Tristan Gingold <gingold@adacore.com>
-
- * config/alpha/vms-unwind.h (alpha_vms_fallback_frame_state): Set
- signal_frame.
- * config/alpha/alpha.c (alpha_function_arg): Adjust call.
-
-2010-10-21 Tristan Gingold <gingold@adacore.com>
-
- * config/ia64/vms64.h (TARGET_DEFAULT): Add MASK_FUSED_MADD.
- * config/ia64/vms.h (TARGET_DEFAULT): Ditto.
-
-2010-10-20 Nathan Froyd <froydnj@codesourcery.com>
-
- * basic-block.h (find_fallthru_edge): Define.
- * cfgcleanup.c (merge_blocks_move): Use it.
- (try_crossjump_bb): Likewise.
- * cfglayout.c (fixup_reorder_chains): Likewise.
- (fixup_fallthru_exit_predecessor): Likewise.
- * cfgrtl.c (rtl_split_edge): Likewise.
- (rtl_verify_flow_info): Likewise.
- * function.c (thread_prologue_and_epilogue_insns): Likewise.
- * gimple-pretty-print.c (dump_implicit_edges): Likewise.
- * ifcvt.c (block_fallthru): Likewise.
- * reload1.c (fixup_abnormal_edges): Likewise.
- * sched-ebb.c (being_schedule_ready): Likewise.
- (schedule_ebb): Likwise.
- * sched-rgn.c (find_single_block_region): Likewise.
- * sel-sched-ir.c (bb_ends_ebb_p): Likewise.
- * tree-complex.c (expand_complex_move): Likewise.
- * sched-int.h (find_fallthru_edge): Rename to...
- (find_fallthru_edge_from): ...this.
- * haifa-sched.c (find_fallthru_edge): Rename to...
- (find_fallthru_edge_from): ...this. Use new find_fallthru_edge.
- (init_before_recovery): Call find_fallthru_edge_from.
- * sel-sched-ir.c (merge_fences): Likewise.
- * sel-sched.c (in_fallthru_bb_p): Likewise.
- (move_cond_jump): Likewise.
-
-2010-10-20 Paul Koning <ni1d@arrl.net>
-
- * config/pdp11/pdp11.md (various): Fix conditions on a number of
- insn to check for target 11/40 or higher.
-
-2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * parser.c (c_parser_objc_method_type): Mark inline. Return a
- bool instead of a tree.
- (c_parser_objc_method_decl): Added bool argument. Updated call to
- objc_build_method_signature.
- (c_parser_objc_method_definition): Do not call
- objc_set_method_type. Updated calls to c_parser_objc_method_type,
- c_parser_objc_method_decl and objc_start_method_definition.
- (c_parser_objc_methodproto): Do not call objc_set_method_type.
- Updated calls to c_parser_objc_method_type,
- c_parser_objc_method_decl and objc_add_method_declaration.
-
-2010-10-20 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/45919
- * tree-ssa-ccp.c (fold_nonarray_ctor_reference): Handle flexible
- array members.
-
- PR tree-optimization/46066
- * tree-parloops.c (create_parallel_loop): Use gsi_last_nondebug_bb
- instead of gsi_last_bb.
-
-2010-10-20 DJ Delorie <dj@redhat.com>
-
- * config/m32c/m32c.c (m32c_option_override): Always disable
- function-cse in 16-bit mode. Indirect calls are always worse than
- direct calls as there is no 16-bit indirect call opcode.
- (m32c_override_options_after_change): New, likewise.
-
-2010-10-20 Nathan Froyd <froydnj@codesourcery.com>
-
- * ifcvt.c (noce_emit_cmove): If both of the values are SUBREGs, try
- emitting the conditional move in the inner mode of the SUBREG.
-
-2010-10-20 Anatoly Sokolov <aesok@post.ru>
-
- * config/ia64/ia64.h (PREFERRED_RELOAD_CLASS): Remove macros.
- * config/ia64/ia64-protos.h (ia64_preferred_reload_class): Remove.
- * config/ia64/ia64.c (TARGET_PREFERRED_RELOAD_CLASS): Define.
- (ia64_preferred_reload_class): Make static. Change rclass argument
- and result types from enum reg_class to reg_class_t.
-
-2010-10-20 Pat Haugen <pthaugen@us.ibm.com>
-
- * tree-ssa-ter.c (find_replaceable_in_bb): Allow replacement over
- call for single operand expression.
-
-2010-10-20 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-optimize.c (execute_fixup_cfg): Purge dead abnormal call edges
- if there is a call statement to pure or const function in the block.
-
-2010-10-20 Paul Koning <pkoning@equallogic.com>
-
- Fix several build errors for pdp11 target.
- * config/pdp11/pdp11.md (*cmpdf): Fix tstd operands.
- (cbranchdf4): Conditional on TARGET_FPU.
- (movdf): Ditto; correct alternatives check.
- (movmemhi): Fix predicate and constraint.
- * config/pdp11/pdp11.h (HARD_REGNO_MODE_OK): Handle 64 bit mode.
-
-2010-10-20 Richard Guenther <rguenther@suse.de>
-
- PR lto/45667
- * lto-streamer-out.c (output_gimple_stmt): Fix typo.
- * tree-cfg.c (verify_gimple_call): Properly get the call fndecl.
- (verify_gimple_assign_single): Disable ADDR_EXPR type check
- when in LTO.
-
-2010-10-20 Vladimir Makarov <vmakarov@redhat.com>
-
- PR fortran/42169
- * ira-emit.c (store_can_be_removed_p): Return false instead of
- gcc_unreachable.
-
-2010-10-20 Dmitry Melnik <dm@ispras.ru>
-
- * fold-const.c (fold_binary_loc): New transformation.
-
-2010-10-20 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/46085
- * config/i386/sse.md (reduc_splus_v8sf): Updated.
- (reduc_splus_v4df): Likewise.
-
-2010-10-20 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45860
- * tree-ssa-phiopt.c (cond_store_replacement): Do not do
- conditional store replacement for non-register type stores.
-
-2010-10-20 Eric Botcazou <ebotcazou@adacore.com>
-
- * stor-layout.c (skip_simple_constant_arithmetic): New function.
- (self_referential_size): Use it instead of skip_simple_arithmetic.
-
-2010-10-20 Olivier Hainque <hainque@adacore.com>
-
- * config/rs6000/rs6000.c (rs6000_reg_live_or_pic_offset_p):
- If the current function calls eh_return, claim live all registers
- that we need to check for liveness otherwise.
-
-2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-decl.c (c_write_global_declarations): Call
- objc_write_global_declarations when compiling Objective-C.
- * c-lang.c (finish_file): Removed.
-
-2010-10-19 DJ Delorie <dj@redhat.com>
-
- * doc/tm.texi.in (TARGET_ASM_JUMP_ALIGN_MAX_SKIP): New.
- (TARGET_ASM_LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Change to hook.
- (TARGET_ASM_LOOP_ALIGN_MAX_SKIP): Likewise.
- (TARGET_ASM_LABEL_ALIGN_MAX_SKIP): Likewise.
- * doc/tm.texi: Regenerate.
- * targhooks.h (default_label_align_after_barrier_max_skip,
- default_loop_align_max_skip, default_label_align_max_skip,
- default_jump_align_max_skip): Declare.
- * target.def (label_align_after_barrier_max_skip): New.
- (loop_align_max_skip): New.
- (label_align_max_skip): New.
- (jump_align_max_skip): New.
- * system.h (poison): Add those macros to the list.
- * final.c (LABEL_ALIGN_MAX_SKIP): Remove.
- (LOOP_ALIGN_MAX_SKIP): Remove.
- (LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Remove.
- (JUMP_ALIGN_MAX_SKIP): Remove.
- (default_label_align_after_barrier_max_skip): New.
- (default_loop_align_max_skip): New.
- (default_label_align_max_skip): New.
- (default_jump_align_max_skip): New.
- (compute_alignments): Use the new hooks.
- (shorten_branches): Likewise.
-
-2010-10-19 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (bdesc_multi_arg): Use fma4i_fmadd_<mode>.
- * config/i386/sse.md (fma<mode>4): Enable for FMA & SSE_MATH.
- (fma4i_fmadd_<mode>): New.
- (*split_fma, *split_fms, *split_fnma, *split_fnms): Rename from
- fma4_fm*_<mode> and adjust to be pre-reload splitters to the
- standard fma patterns.
- (fmaddsub_<mode>): Rename from fma4i_fmaddsub_<mode> and
- enable for FMA.
- (*fma_fmadd_<mode>, *fma_fmsub_<mode>): New.
- (*fma_fmadd_<mode>, *fma_fmsub_<mode>): New.
- (*fma_fmaddsub_<mode>, *fma_fmsubadd_<mode>): New.
-
-2010-10-19 Paul Koning <pkoning@equallogic.com>
-
- * lower-subreg.c (resolve_shift_zext): Delete conditional code for
- WORDS_BIG_ENDIAN != BYTES_BIG_ENDIAN.
-
-2010-10-19 Richard Henderson <rth@redhat.com>
-
- * config/ia64/ia64.md (fmasf4, *fmssf4, *nfmasf4): New.
- (fmadf4, *fmsdf4, *nfmadf4): New.
- (fmaxf4, *fmsxf4, *nfmaxf4): New.
-
-2010-10-19 Michael Eager <eager@eagercon.com>
-
- * config/microblaze/microblaze.c (TARGET_EXCEPT_UNWIND_INFO):
- Use sjlj unwind info for exceptions.
-
-2010-10-19 Francois-Xavier Coudert<fxcoudert@gcc.gnu.org>
-
- PR fortran/43414
- * dwarf2out.c (add_calling_convention_attribute): Flag main
- Fortran subroutine with DW_AT_main_subprogram.
-
-2010-10-19 Nick Clifton <nickc@redhat.com>
-
- * config/rx/rx.c (rx_function_value): Small integer types are
- promoted to SImode.
- (rx_promote_function_mode): New function.
- (TARGET_PROMOTE_FUNCTION_MODE): Define.
-
-2010-10-19 Nick Clifton <nickc@redhat.com>
-
- * config/mep/mep.c (mep_print_operand): Use
- targetm.strip_name_encoding.
- (mep_output_aligned_common): Likewise.
-
-2010-10-19 Basile Starynkevitch <basile@starynkevitch.net>
-
- * gengtype.c (new_structure): Remove ad-hoc "location_s" processing.
-
-2010-10-18 Richard Henderson <rth@redhat.com>
-
- * simplify-rtx.c (simplify_ternary_operation) [FMA]: Simplify
- (fma (neg a) (neg b) c) and (fma a (neg b) c).
-
-2010-10-18 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (IX86_BUILTIN_VFMSUBSS, IX86_BUILTIN_VFMSUBSD,
- IX86_BUILTIN_VFMSUBPS, IX86_BUILTIN_VFMSUBPD,
- IX86_BUILTIN_VFMSUBADDPS, IX86_BUILTIN_VFMSUBADDPD,
- IX86_BUILTIN_VFNMADDSS, IX86_BUILTIN_VFNMADDSD,
- IX86_BUILTIN_VFNMADDPS, IX86_BUILTIN_VFNMADDPD,
- IX86_BUILTIN_VFNMSUBSS, IX86_BUILTIN_VFNMSUBSD,
- IX86_BUILTIN_VFNMSUBPS, IX86_BUILTIN_VFNMSUBPD,
- IX86_BUILTIN_VFMSUBADDPS256, IX86_BUILTIN_VFMSUBADDPD256,
- IX86_BUILTIN_VFNMADDPS256, IX86_BUILTIN_VFNMADDPD256,
- IX86_BUILTIN_VFNMSUBPS256, IX86_BUILTIN_VFNMSUBPD256): Remove.
- (bdesc_multi_arg): Remove the corresponding builtins.
- * config/i386/i386.md (UNSPEC_FMA4_INTRINSIC): Remove.
- (UNSPEC_FMA4_FMSUBADD): Remove.
- (UNSPEC_FMADDSUB): Rename from UNSPEC_FMA4_FMADDSUB.
- * config/i386/sse.md (FMA4MODEF4): Remove.
- (FMAMODE): Add.
- (fma<mode>4): New expander.
- (*fma4i_fmadd_<mode>): Macroize from fma4i_fmadd<mode>4 patterns,
- and use FMA rtx code instead of UNSPEC_FMA4_INTRINSIC.
- (*fma4i_fmsub_<mode>): Similarly.
- (*fma4i_fnmadd_<mode>): Similarly.
- (*fma4i_fnmsub_<mode>): Similarly.
- (fma4i_vmfmadd_<mode>): Scalar patterns zero-extend, not merge
- with the first operand.
- (fma4i_fmaddsub_<mode>): Represent with UNSPEC_FMADDSUB instead
- of explicit arithmetic. Macroize with AVXMODEF2P.
- (*fma4i_fmsubadd_<mode>): Represent with UNSPEC_FMADDSUB + NEG.
- (xop_frcz<mode>2): Macroize with FMAMODE.
- (xop_vmfrcz<mode>2): Scalar patterns zero-extend, not merge with
- the first operand.
- * config/i386/fma4intrin.h (_mm_msub_ps): Use vfmadd intrinsic with
- extra negations.
- (_mm_msub_pd, _mm_msub_ss, _mm_msub_sd): Likewise.
- (_mm_nmacc_ps, _mm_nmacc_pd, _mm_nmacc_ss, _mm_nmacc_sd): Likewise.
- (_mm_nmsub_ps, _mm_nmsub_pd, _mm_nmsub_ss, _mm_nmsub_sd): Likewise.
- (_mm256_msub_ps, _mm256_msub_pd): Likewise.
- (_mm256_nmacc_ps, _mm256_nmacc_pd): Likewise.
- (_mm256_nmsub_ps, _mm256_nmsub_pd): Likewise.
- (_mm_msubadd_ps): Use vfmaddsub intrinsic with extra negation.
- (_mm_msubadd_pd, _mm256_msubadd_ps, _mm256_msubadd_pd): Likewise.
-
-2010-10-18 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/45966
- * combine.c (try_combine): If added_sets_2, deal with the case
- where i0 feeds i1 and i1 feeds i2.
-
-2010-10-18 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (cgraph_externally_visible_p): Handle externally visible and
- preserve flags before trying to guess on visibility.
- (varpool_externally_visible_p): New function.
- (function_and_variable_visibility): Use it.
-
-2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
-
- Implemented parsing @synthesize and @dynamic for Objective-C.
- * c-parser.c (c_parser_external_declaration): Recognize
- RID_AT_SYNTHESIZE and RID_AT_DYNAMIC.
- (c_parser_objc_at_synthesize_declaration): New.
- (c_parser_objc_at_dynamic_declaration): New.
-
-2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_parser_objc_class_declaration): After finding an
- error, parse the whole declaration then reset parser->error.
-
-2010-10-18 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR target/46041
- * tree.h (mode_has_fma): Delete, move to c-cppbuiltins.c.
- * builtins.c (mode_has_fma): Ditto.
-
-2010-10-18 Steve Ellcey <sje@cup.hp.com>
-
- PR target/36898
- PR middle-end/43760
- * config/ia64/ia64.c (rws_access_regno): Remove predicate check.
-
-2010-10-18 Joseph Myers <joseph@codesourcery.com>
-
- * config/i386/i386.c (ix86_option_override_internal): Define and
- use USE_X86_64_FRAME_POINTER for 64-bit flag_omit_frame_pointer
- default.
- * config/i386/sol2-10.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
- (USE_IX86_FRAME_POINTER, USE_X86_64_FRAME_POINTER): Define.
-
-2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
-
- Merge from 'apple/trunk' branch on FSF servers.
- * c-parser.c (c_parser_objc_type_name): Adapted to new parser the
- following Objective-C change:
-
- 2005-10-10 Fariborz Jahanian <fjahanian@apple.com>
-
- Radar 4301047
- * c-parse.in (objc_quals): Build objc qualifier list same way
- as gcc-3.3
-
-2010-10-18 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (cgraph_externally_visible_p, varpool_externally_visible_p,
- function_and_variable_visibility): Revert accidental commit.
-
-2010-10-18 Nicola Pero <nicola.pero@meta-innovation.com>
-
- Merge from 'apple/trunk' branch on FSF servers.
- * c-parser.c (c_parser_typeof_specifier): Adapted to new parser
- the following Objective-C change:
-
- 2005-10-07 Fariborz Jahanian <fjahanian@apple.com>
-
- Radar 4204796
- * c-parse.in (typespec_nonreserved_nonattr): Remove volatile from
- 'volatilized' type used in a typeof operator.
-
-2010-10-18 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-flow.h (gimple_purge_all_dead_abnormal_call_edges): Declare.
- * tree-cfg.c (gimple_purge_dead_abnormal_call_edges): Move around and
- rewrite modelled on gimple_purge_dead_eh_edges.
- (gimple_purge_all_dead_abnormal_call_edges): New function.
- * tree-inline.c (expand_call_inline): Call gimple_purge_dead_eh_edges
- directly instead of through gimple_purge_dead_abnormal_call_edges.
- * tree-ssa-pre.c (need_ab_cleanup): New static variable.
- (eliminate): Set bit in need_ab_cleanup for the basic block if we have
- removed AB side-effects from one of its statements.
- (init_pre): Initialize need_ab_cleanup.
- (fini_pre): Purge dead abnormal call edges and clean up the CFG if bits
- are set in need_ab_cleanup. Free need_ab_cleanup afterward.
-
-2010-10-18 Jakub Jelinek <jakub@redhat.com>
-
- PR c/46015
- * c-parser.c (c_parser_statement_after_labels): Call mark_exp_read
- on computed goto argument.
-
-2010-10-18 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45967
- * tree-ssa-structalias.c (type_could_have_pointers): Remove.
- (could_have_pointers): Likewise.
- (handle_rhs_call, handle_const_call, handle_pure_call,
- find_func_aliases, intra_create_variable_infos): Remove calls to them.
- (struct fieldoff): Add must_have_pointers field.
- (type_must_have_pointers): New function.
- (field_must_have_pointers): Likewise.
- (push_fields_onto_fieldstack): Remove must_have_pointers_p argument.
- Adjust field merging.
- (create_function_info_for): May-have-pointers of varinfo is
- almost always true.
- (create_variable_info_for_1): Likewise.
-
-2010-10-18 Tejas Belagod <tejas.belagod@arm.com>
-
- * config/arm/neon.md (neon_move_hi_quad_<mode>): Fix the order
- of operands to vec_concat.
-
-2010-10-18 Richard Guenther <rguenther@suse.de>
-
- PR lto/44950
- * tree.c (free_lang_data_in_decl): As we clear TYPE_METHODS
- also clear references to entries of it.
-
-2010-10-18 Andi Kleen <ak@linux.intel.com>
-
- PR other/43448
- * gccbug.in: Remove.
- * Makefile.in (GCCBUG_INSTALL_NAME, gccbug): Remove
- (doc, distclean, install-common): Remove reference to gccbug.
- * configure: Regenerate.
- * configure.ac (all_outputs): Remove gccbug.
- * doc/configfiles.texi: Remove references to gccbug.
- * doc/sourcebuild.texi: Dito.
-
-2010-10-18 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/46019
- * fold-const.c (fold_binary_loc): If integer_pow2p has
- TREE_INT_CST_LOW zero, look at TREE_INT_CST_HIGH.
-
-2010-10-18 Basile Starynkevitch <basile@starynkevitch.net>
- Jeremie Salvucci <jeremie.salvucci@free.fr>
-
- * gengtype.c (verbosity_level): Add variable.
- (set_gc_used): Count variables for verbosity.
- (close_output_files): Backing up files, counting written ones
- verbosily.
- (write_types): Count emitted functions for verbosity. Added
- debug messages.
- (write_enum_defn): Count structures for verbosity. Added debug
- messages.
- (gengtype_long_options): Add "verbose" & "backupdir".
- (print_usage): Ditto.
- (main): Verbose display of parsed files.
-
- * gengtype.h (verbosity_level): Add declaration.
-
-2010-10-18 Basile Starynkevitch <basile@starynkevitch.net>
-
- * gengtype.c (parse_program_options): Add allocation of
- plugin_files, and correct test on nb_plugin_files.
-
-2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
-
- Merge from 'apple/trunk' branch on FSF servers.
-
- 2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
-
- Radar 4133425
- * c-decl.c (undeclared_variable): Issue diagnostic on
- private 'ivar' access.
-
-2010-10-17 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/46051
- * config/i386/sse.md (vec_interleave_highv4df): Fix third RTX of
- generated sequence to match *avx_vperm2f128<mode>_nozero.
- (vec_interleave_lowv4df): Ditto.
- (vec_interleave_highv8sf): Ditto.
- (vec_interleave_lowv8sf): Ditto.
-
-2010-10-17 Kai Tietz <kai.tietz@onevision.com>
-
- * libgcov.c (create_file_directory): Enable it for win32 case.
- (gcov_exit): De-couple GCOV_PREFIX and GCOV_PREFIX_STRIP.
- * doc/gcov.texi (GCOV_PREFIX): Adjusted.
- (GCOV_PREFIX_SKIP): Likewise.
-
-2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * doc/objc.texi (GNU Objective-C runtime API): New section.
- (Modern GNU Objective-C runtime API): New section.
- (Traditional GNU Objective-C runtime API): New section.
- (Executing code before main): Mention that this section is
- specific to the GNU Objective-C runtime.
- (Garbage Collection): Same.
-
-2010-10-17 Uros Bizjak <ubizjak@gmail.com>
-
- * c-parser.c (c_parser_for_statement): Move initialization of
- cond and incr before if.
-
-2010-10-17 Anatoly Sokolov <aesok@post.ru>
-
- * target.def (preferred_output_reload_class): New hook.
- * doc/tm.texi.in (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Document.
- * doc/tm.texi: Regenerate.
- * targhooks.c (default_preferred_output_reload_class): New function.
- * targhooks.h (default_preferred_output_reload_class): Declare.
- * reload.c (find_dummy_reload): Change rclass argument type from
- enum reg_class to reg_class_t. Change this_alternative array type
- from enum reg_class to reg_class_t.
- Use TARGET_PREFERRED_OUTPUT_RELOAD_CLASS target hook.
- (push_reload): Change preferred_class variable type to reg_class_t.
- Use TARGET_PREFERRED_OUTPUT_RELOAD_CLASS target hook.
- * recog.c (reg_fits_class_p): Change result type to bool. Change cl
- argument type from enum reg_class to reg_class_t. Use
- HARD_REGISTER_NUM_P predicate.
- * recog.h (reg_fits_class_p): Update prototype.
-
- * config/i386/i386.h (PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
- * config/i386/i386-protos.h (ix86_preferred_output_reload_class):
- Remove.
- * config/i386/i386.c (ix86_preferred_output_reload_class): Make
- static. Change regclass argument and result types from enum reg_class
- to reg_class_t.
- (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
-
-2010-10-17 Iain Sandoe <iains@gcc.gnu.org>
-
- * c-parser.c (c_parser_objc_class_instance_variables): Update to use
- visibility enum, and handle @package.
-
-2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * doc/objc.texi (What you can and what you cannot do in +load):
- Document that sending messages to constant string objects in +load
- is not guaranteed to work.
-
-2010-10-16 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44206
- * ipa.c (cgraph_remove_unreachable_nodes): Cleanup; check
- existence of refrences before removing the function.
-
-2010-10-16 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (dump_cgraph_node): Dump same_comdat_group,
- only_called_at_startup and only_called_at_exit.
- (cgraph_propagate_frequency): Compute only_called_at_startup and
- only_called_at_exit.
- * cgraph.h (struct cgraph_node): New fileds only_called_at_startup and
- only_called_at_exit.
- * lto-cgraph.c (lto_output_node, input_overwrite_node): Stream the new
- flags.
- * predict.c (compute_function_frequency): Initialize the new flags.
-
-2010-10-16 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimplify.c (gimplify_type_sizes) <ARRAY_TYPE>: If the type is to be
- ignored for debug info purposes, do not clear the DECL_IGNORED_P flag
- on the bounds of its domain.
- * tree.h (DECL_IGNORED_P): Document effect on TYPE_DECL specifically.
-
-2010-10-16 Anatoly Sokolov <aesok@post.ru>
-
- * config/avr/avr.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/avr/avr-protos.h (preferred_reload_class): Remove.
- * config/avr/avr.c (preferred_reload_class): Remove.
- * config/pa/pa.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/pa/pa.c (emit_move_sequence): Update comment
- * config/arc/arc.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/crx/crx.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/fr30/fr30.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/frv/frv.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/h8300/h8300.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/lm32/lm32.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/m32r/m32r.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/moxie/moxie.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/picochip/picochip.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/rx/rx.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/spu/spu.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/v850/v850.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/vax/vax.h (PREFERRED_RELOAD_CLASS): Remove.
-
-2010-10-16 Joseph Myers <joseph@codesourcery.com>
-
- * opts.c (set_fast_math_flags,
- set_unsafe_math_optimizations_flags): Make static.
- * toplev.h (set_fast_math_flags,
- set_unsafe_math_optimizations_flags): Remove prototypes.
-
-2010-10-16 Joseph Myers <joseph@codesourcery.com>
-
- * config/arm/arm.c (arm_option_optimization): Set
- flag_section_anchors to 1 not 2.
- * config/i386/i386.c (ix86_option_override_internal): Check
- global_options_set.x_flag_zee and
- global_options_set.x_flag_omit_frame_pointer.
- (ix86_option_optimization): Don't set flag_omit_frame_pointer and
- flag_zee to 2.
- * config/i386/sol2-10.h (SUBTARGET_OVERRIDE_OPTIONS): Check
- global_options_set.x_flag_omit_frame_pointer.
- * config/rs6000/rs6000.c (rs6000_option_init_struct): Set
- opts->x_flag_section_anchors to 1 not 2.
- * config/sh/sh.c (sh_option_optimization): Don't set
- flag_schedule_insns to 2.
- (sh_option_override): Check
- global_options_set.x_flag_schedule_insns.
- * opts.c (finish_options): Check opts_set->x_flag_section_anchors.
-
-2010-10-16 Kai Tietz <kai.tietz@onevision.com>
-
- * configure.ac: Make sure inhibit_libc remains false for mingw targets
- as cross.
- * configure: Regenerated.
-
-2010-10-15 Xinliang David Li <davidxl@google.com>
-
- * tree-ssa-uninit.c (prune_uninit_phi_opnds_in_unrealizable_paths): New
- function.
- (use_pred_not_overlap_with_undef_path_pred): Outline phi arg pruning
- into a recursive function.
-
-2010-10-15 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*movdfcc_1_rex64): Correct mode attribute.
- (*movdfcc_1): ditto.
-
-2010-10-15 Joseph Myers <joseph@codesourcery.com>
-
- * target.def (target_option.init_struct): New hook.
- * doc/tm.texi.in (TARGET_OPTION_INIT_STRUCT): New @hook.
- * doc/tm.texi: Regenerate.
- * hooks.c (hook_void_gcc_optionsp): New.
- * hooks.h (hook_void_gcc_optionsp): Declare.
- * langhooks-def.h (lhd_init_options_struct): Remove.
- (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define to hook_void_gcc_optionsp.
- * langhooks.c (lhd_init_options_struct): Remove.
- * opts.c (init_options_struct): Also call
- targetm.target_option.init_struct.
- * config/i386/i386.c (ix86_option_init_struct,
- TARGET_OPTION_INIT_STRUCT): New.
- (ix86_option_optimization): Move some settings to
- ix86_option_init_struct.
- * config/pdp11/pdp11.c (pdp11_option_init_struct,
- TARGET_OPTION_INIT_STRUCT): New.
- (pdp11_option_optimization): Move some settings to
- pdp11_option_init_struct.
- * config/rs6000/rs6000.c (rs6000_option_optimization): Replace by
- rs6000_option_init_struct. Use options structure pointer.
- (TARGET_OPTION_OPTIMIZATION): Replace by TARGET_OPTION_INIT_STRUCT.
- * config/s390/s390.c (s390_option_init_struct,
- TARGET_OPTION_INIT_STRUCT): New.
- (s390_option_optimization): Don't set
- flag_asynchronous_unwind_tables here.
- * config/sh/sh.c (sh_option_init_struct,
- TARGET_OPTION_INIT_STRUCT): New.
- (sh_option_optimization): Don't set flag_finite_math_only here.
- * config/spu/spu.c (spu_option_optimization): Replace by
- spu_option_optimization. Use options structure pointer.
- (TARGET_OPTION_OPTIMIZATION): Replace by TARGET_OPTION_INIT_STRUCT.
-
-2010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * doc/md.texi (Standard Names): Add fma@var{m}4 documentation.
-
- * doc/rtl.texi (RTX_TERNARY): Document FMA is ternary. Add
- SIGN_EXTRACT and ZERO_EXTRACT which were missing.
- (Standard names): Document fma.
-
- * doc/cpp.texi (Common Predefined Macros): Document __FP_FAST_FMA,
- __FP_FAST_FMAF, __FP_FAST_FMAL.
-
- * builitns.c (expand_builtin_mathfn_ternary): New function for
- expanding ternary math functions, like fma.
- (expand_builtin): Call it for the fma builtins.
-
- * simplify-rtx.c (simplify_ternary_operation): Don't simplify FMA
- ops at present.
-
- * tree-vect-stmts.c (vectorizable_call): Allow 3 argument
- vectorizable functions to support vectorizing fma.
-
- * config/rs6000/rs6000.c (rs6000_builtin_vectorized_function):
- Handle fma builtins.
-
- * config/rs6000/vsx.md (UNSPEC_VSX_MADD): Delete.
- (UNSPEC_VSX_MSUB): Ditto.
- (UNSPEC_VSX_NMADD): Ditto.
- (UNSPEC_VSX_NMSUB): Ditto.
- (vsx_fmadd<mode>4*): Rewrite to use FMA rtl in some cases instead
- of UNSPEC. Renumber combiner patterns.
- (vsx_fmsub<mode>4*): Ditto.
- (vsx_fnmadd<mode>4*): Ditto.
- (vsx_fnmsub<mode>4*): Ditto.
-
- * config/rs6000/altivec.md (UNSPEC_VNMSUBFP): Delete.
- (altivec_vmaddfp): Rewrite to use FMA rtl if no fused
- multiply/add. Rename combiner pattern, and add TARGET_FUSED_MADD test.
- (altivec_vmaddfp_1): Ditto.
- (altivec_vmaddfp_2): Ditto.
- (atlivec_mulv4sf3): Ditto.
- (altivec_vnmsubfp): Ditto.
- (altivec_vnmsubfp_1): Ditto.
- (altivec_vnmsubfp_2): Ditto.
- (altivec_vnmsubfp_3): Delete.
-
- * config/rs6000/rs6000.md (fmasf4): New insns for fma builtin support.
- (fmasf4_fpr): Ditto.
- (fmssf4_fpr): Ditto.
- (fnmasf4_fpr): Ditto.
- (fnmssf4_fpr): Ditto.
- (fmadf4): Ditto.
- (fmadf4_fpr): Ditto.
- (fmsdf4_fpr): Ditto.
- (fnmadf4_fpr): Ditto.
- (fnmsdf4_fpr): Ditto.
-
- * optabs.h (OTI_fma): Add fma optab.
- (fma_optab): Ditto.
-
- * genopinit.c (optabs): Set fma optab.
-
- * rtl.def (FMA): Add FMA rtl.
-
- * tree.h (mode_has_fma): New function to return if MODE supports a
- fast multiply and add instruction.
- * builtins.c (mode_has_fma): Ditto.
-
-2010-10-15 Jan Hubicka <jh@suse.cz>
-
- * lto-streamer-out.c (write_symbol): Use pointer set of seen
- objects instead of bitmap.
- (produce_symtab): Likewise; output defined symbols first.
-
-2010-10-15 Jie Zhang <jie@codesourcery.com>
-
- * doc/invoke.texi: Add -fstrict-volatile-bitfields to
- Option Summary and Index.
-
-2010-10-15 Richard Guenther <rguenther@suse.de>
-
- * tree.c (free_lang_data_in_decl): Clear DECL_INITIAL
- for automatic variables again.
-
-2010-10-15 Joseph Myers <joseph@codesourcery.com>
-
- * doc/extend.texi (Variable Length): Don't refer to VLAs not
- conforming to C99.
-
-2010-10-15 Joseph Myers <joseph@codesourcery.com>
-
- * config/rx/rx.c (rx_option_optimization): Change to
- rx_override_options_after_change. Don't change
- flag_lto_compression_level. Don't check for changes to whether
- FPU instructions can be used. Check and set only
- flag_finite_math_only, not other fast-math flags.
- (rx_option_override): Call rx_override_options_after_change.
- (TARGET_OPTION_OPTIMIZATION): Remove.
- (TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): Define.
-
-2010-10-15 Joseph Myers <joseph@codesourcery.com>
-
- * config/rs6000/rs6000.c (rs6000_option_optimization): Don't
- disable section anchors for lang_hooks.name[4] != 'O'.
-
-2010-10-15 Joseph Myers <joseph@codesourcery.com>
-
- * config/frv/frv.c (frv_option_optimization,
- TARGET_OPTION_OPTIMIZATION): Remove.
- * config/frv/frv.h (RCSP_SOFTWARE_PIPELINING): Remove.
-
-2010-10-15 Michael Matz <matz@suse.de>
-
- * cgraphunit.c (clone_of_p): Define unconditionally.
-
-2010-10-15 Richard Guenther <rguenther@suse.de>
-
- PR lto/45957
- * tree.c (free_lang_data_in_decl): Do not clear DECL_INITIAL of vars.
-
-2010-10-15 Chung-Lin Tang <cltang@codesourcery.com>
-
- * ifcvt.c (find_active_insn_before): New function.
- (find_active_insn_after): New function.
- (cond_exec_process_if_block): Use new functions to replace
- prev_active_insn() and next_active_insn().
-
-2010-10-14 Yao Qi <yao@codesourcery.com>
-
- PR target/45447
- * config/arm/arm.c (arm_build_builtin_va_list): Assign
- va_list_name to TYPE_STUB_DECL (va_list_type).
-
-2010-10-14 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/45621
- * cgraph.c (cgraph_update_edges_for_call_stmt_node): When new call is
- redirected to clone, be happy.
- * cgraph.h (cgraph node): Enable former_clone_of unconditinally.
- * cgraphunit.c (verify_cgraph_node, cgraph_materialize_clone): Handle
- former_clone_of unconditionally.
-
-2010-10-14 Iain Sandoe <iains@gcc.gnu.org>
-
- Merge from FSF apple 'trunk' branch.
- 2006 Fariborz Jahanian <fjahanian@apple.com>
-
- Radars 4436866, 4505126, 4506903, 4517826
- * c-parser.c (c_parser, objc_property_attr_context) New flag.
- (c_lex_one_token): Handle property attributes.
- (c_parser_external_declaration): Handle @property.
- (c_parser_declaration_or_fndef): Warn on invalid attributes before
- @alias, @class, @end and @property objc keywords.
- (c_parser_objc_methodprotolist): Handle @property.
- (c_parser_objc_property_attrlist): New.
- (c_parser_objc_at_property): New.
- * c-typeck.c (build_component_ref): Handle CLASS.property syntax.
- (build_modify_expr): Likewise.
-
-2010-10-14 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/46008
- * tree-if-conv.c (predicate_bbs): Try to canonicalize c2 if possible.
-
-2010-10-14 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44913
- * tree-data-ref.c (disjoint_objects_p): Remove.
- (dr_may_alias_p): Simplify. Only hand the base object to
- the alias-oracle.
- * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Handle
- some more trees, bail out instead of asserting.
- (ptr_derefs_may_alias_p): Likewise. Export.
- (refs_may_alias_p_1): Handle STRING_CSTs.
- * tree-ssa-alias.h (ptr_derefs_may_alias_p): Declare.
-
-2010-10-14 Joseph Myers <joseph@codesourcery.com>
-
- PR c/45969
- * c-typeck.c (build_binary_op): Don't try to compute a semantic
- type with excess precision for boolean operations.
-
-2010-10-14 Jeremie Salvucci <jeremie.salvucci@free.fr>
- Basile Starynkevitch <basile@starynkevitch.net>
-
- * gengtype.c: Include getopt.h and version.h.
-
- (lang_bitmap, struct outf, outf_p)
- (get_output_file_with_visibility, oprintf): Definitions moved to
- gengtype.h
- (output_files, header_file, srcdir, srcdir_len, this_file)
- (do_dump): No more static variables.
- (do_debug): New.
- (dbgprint_count_type_at): Added new function.
- (gengtype_long_options): New.
- (print_usage, print_version, parse_program_options): New.
- (main): Call parse_program_options, and removed old option
- handling code. Added some debug output.
-
- * gengtype.h: Updated copyright year.
- (lang_bitmap, struct outf, outf_p, header_file, oprintf)
- (get_output_file_with_visibility, srcdir, srcdir_len, do_dump):
- Moved from gengtype.c to here.
- (do_debug, read_state_filename, write_state_filename): New variables.
- (DBGPRINTF, DBGPRINT_COUNT_TYPE): New macros.
-
- * Makefile.in:
- (REVISION): Always defined.
- (version.o): Removed ifdef REVISION_c.
- (s-gtype): Pass arguments to build/gengtype program.
- (build/version.o): Added building rule.
- (build/gengtype$(build_exeext)): Added build/version.o.
-
-2010-10-14 Iain Sandoe <iains@gcc.gnu.org>
-
- Partial merge of 'ObjC GC' from FSF apple 'trunk' branch.
- * config/darwin-c.c (darwin_cpp_builtins): Define __weak and
- __strong macros.
-
-2010-10-14 Eric Botcazou <ebotcazou@adacore.com>
-
- * sched-deps.c (sched_insn_is_legitimate_for_speculation): Invoke
- may_trap_or_fault_p instead of may_trap_p predicate.
- * tree.c (substitute_in_expr): Propagate the TREE_THIS_NOTRAP flag.
- (substitute_placeholder_in_expr): Likewise.
- * tree-inline.c (remap_gimple_op_r): Propagate the TREE_THIS_NOTRAP
- flag on MEM_REF nodes.
- (copy_tree_body_r): Propagate the TREE_READONLY and TREE_THIS_NOTRAP
- flags on INDIRECT_REF nodes.
-
-2010-10-14 Nathan Froyd <froydnj@codesourcery.com>
-
- * config.gcc (arm*-*-linux-*eabi) <tm_file>: Add bpabi.h from libgcc.
- (arm*-*-uclinux*eabi) <tm_file>: Likewise.
- (arm*-*-eabi*) <tm_file>: Likewise.
- (frv-*-elf) <tm_file>: Add frv-abi.h from libgcc.
- (frv-*-*linux*) <tm_file>: Likewise.
- * config/arm/bpabi.h: Delete DECLARE_LIBRARY_RENAMES stanzas
- and associated helper macros.
- * config/frv/frv-abi.h: Delete.
-
-2010-10-14 Richard Guenther <rguenther@suse.de>
-
- PR lto/44561
- * tree.def (NULLPTR_TYPE): New tree code.
- * dbxout.c (dbxout_type): Handle NULLPTR_TYPE.
- * dwarf2out.c (is_base_type): Likewise.
- (gen_type_die_with_usage): Likewise.
- * sdbout.c (plain_type_1): Likewise.
- * tree.c (build_int_cst_wide): Likewise.
- * gimple.c (gimple_types_compatible_p_1): NULLPTR_TYPE types are equal.
-
-2010-10-14 Joseph Myers <joseph@codesourcery.com>
-
- * params.c (params_finished): New.
- (add_params): Assert !params_finished.
- (finish_params): New.
- (set_param_value_internal): Take params and params_set
- parameters. Assert params_finished.
- (set_param_value, maybe_set_param_value): Take params and
- params_set parameters. Update calls to set_param_value_internal.
- (set_default_param_value): Assert !params_finished. Don't use
- set_param_value_internal.
- (default_param_value, init_param_values): New.
- * params.h (struct param_info): Change value to default_value.
- Remove set.
- (set_param_value, maybe_set_param_value): Add params and
- params_set parameters.
- (PARAM_VALUE): Get parameters from global_options.
- (PARAM_SET_P): Remove.
- (finish_params, default_param_value, init_param_values): New.
- * common.opt (param_values): New Variable.
- * config/arm/arm.c (arm_option_override): Pass extra arguments to
- maybe_set_param_value.
- * config/i386/i386.c (ix86_option_override_internal): Pass extra
- arguments to maybe_set_param_value.
- * config/picochip/picochip.c (picochip_option_override): Pass
- extra arguments to maybe_set_param_value.
- * config/rs6000/rs6000.c (rs6000_option_override_internal): Pass
- extra arguments to maybe_set_param_value.
- * config/s390/s390.c (s390_option_override): Use
- maybe_set_param_value instead of set_param_value. Pass extra
- arguments to maybe_set_param_value.
- * config/sparc/sparc.c (sparc_option_override): Pass extra
- arguments to maybe_set_param_value.
- * config/spu/spu.c (spu_option_override): Pass extra arguments to
- maybe_set_param_value.
- * opts.c (handle_param): Take opts and opts_set parameters.
- Update call to set_param_value.
- (initial_min_crossjump_insns, initial_max_fields_for_field_sensitive,
- initial_loop_invariant_max_bbs_in_loop): Remove.
- (init_options_once): Don't set them.
- (init_options_struct): Initialize parameters structures.
- (default_options_optimization): Use default_param_value when
- restoring defaults. Update calls to maybe_set_param_value.
- (finish_options): Update calls to maybe_set_param_value.
- (common_handle_option): Update calls to handle_param and
- set_param_value.
- * toplev.c (DEFPARAM): Update definition for changes to param_info.
- (general_init): Call finish_params.
-
-2010-10-14 Nick Clifton <nickc@redhat.com>
-
- * config/mn10300/mn10300.h (CONSTANT_ALIGNMENT): Define.
- (DATA_ALIGNMENT, LOCAL_ALIGNMENT): Define.
- (FIRST_PSEUDO_REGISTER): Increase by one.
- (FIXED_REGISTERS, CALL_USED_REGISTERS): Update with CC_REG.
- (HARD_REGNO_MODE_OK): Call mn10300_hard_regno_mode_ok.
- (MODES_TIEABLE): Call mn10300_modes_tieable.
- (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Add CC_REGS.
- (LEGITIMATE_CONSTANT_P): Call mn10300_legitimate_constant_p.
- (CC_OVERFLOW_UNUSABLE, CC_NO_CARRY, NOTICE_UPDATE_CC)
- (SELECT_CC_MODE, REVERSIBLE_CC_MODE): Delete.
- (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Add CC register.
- (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Delete.
- (mn10300_cc_status_mdep): Delete.
- (CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Delete.
- * config/mn10300/mn10300 (mn10300_option_override): Stop disabling
- the combine-stack-adjust pass.
- (print_operand): Use the mode of the comparison operation to
- select the comparison suffix.
- (notice_update_cc): Delete.
- (mn10300_secondary_reload_class): Remove test for stack pointer
- based arithmetic.
- (output_tst): Rename to mn10300_output_cmp.
- (impossible_plus_operand): Move into predicates.md.
- (mn10300_legitimize_address): Make static.
- (mn10300_legitimate_address_p): Make static. Only allow SI sized
- constant pic operands.
- (mn10300_legitimate_constant_p): New function.
- (mn10300_case_values_threshold): Make static.
- (mn10300_hard_regno_mode_ok): New function.
- (mn10300_modes_tieable): New function.
- (mn10300_select_cc_mode): New function.
- * config/mn10300/predicates.md (impossible_plus_operand): Define.
- * config/mn10300/mn10300-protos.h: Tidy.
- (mn10300_legitimate_constant_p, mn10300_modes_tieable)
- (mn10300_hard_regno_mode_ok, mn10300_select_cc_mode): Prototype.
- * config/mn10300/mn10300.md (cc attribute): Delete. Replace
- with clobbers or sets of CC_REG.
- (CC_REG): Define.
- (mov*): Remove use of CLR instruction.
- (cbranch_si4_<code>): New pattern/split.
- (integer_conditional_branch): New pattern.
- (cbranch_sf4_<code>): New pattern/split.
- (float_conditional_branch): New pattern.
- (casesi): Use addsi3 pattern instead of movsi pattern to add and
- move a value at the same time.
- (cc0 peepholes): Remove.
-
-2010-10-14 Andrey Belevantsev <abel@ispras.ru>
-
- * sel-sched-ir.c (init_global_and_expr_for_insn): Set CANT_MOVE
- on RTX_FRAME_RELATED_P insns and the insn to which
- NOTE_INSN_EPILOGUE_BEG is attached.
- * sched-vis.c (print_value): Allow NULL value.
-
-2010-10-14 Andrey Belevantsev <abel@ispras.ru>
-
- PR rtl-optimization/45570
- * sel-sched-ir.c (cfg_preds_1): When walking out of the region,
- assert that we are pipelining outer loops. Allow returning
- zero predecessors.
-
-2010-10-14 Andrey Belevantsev <abel@ispras.ru>
-
- * sel-sched-ir.c (maybe_tidy_empty_bb): Simplify comment.
- (tidy_control_flow): Tidy vertical space.
- (sel_remove_bb): New variable idx. Use it to remember the basic
- block index before deleting the block.
- (sel_remove_empty_bb): Remove dead code, simplify and insert to ...
- (sel_merge_blocks): ... here.
- * sel-sched-ir.h (sel_remove_empty_bb): Remove prototype.
-
-2010-10-14 Jakub Jelinek <jakub@redhat.com>
-
- * cse.c (is_dead_reg): Change into inline function that is not
- called through for_each_rtx.
- (set_live_p): Adjust caller.
- (insn_live_p): Don't reset DEBUG_INSNs here.
- (struct dead_debug_insn_data): New data.
- (count_stores, is_dead_debug_insn, replace_dead_reg): New functions.
- (delete_trivially_dead_insns): If there is just one setter for the
- dead reg that is referenced by some DEBUG_INSNs, create a DEBUG_EXPR
- and add DEBUG_INSN for it right before the removed setter and
- use the DEBUG_EXPR instead of the dead pseudo.
-
-2010-10-14 Zdenek Dvorak <rakdver@kam.uniff.cz>
-
- * et-forest.c (et_nca): Return NULL immediately when
- the dominance forest has disjoint components.
-
-2010-10-13 Vladimir Makarov <vmakarov@redhat.com>
-
- * ira.c (setup_class_hard_regs): Fix typo in indexing
- ira_non_ordered_class_hard_regs and ira_class_hard_reg_index.
-
-2010-10-14 Tijs Wiebe Lefering <twlevo@gmail.com>
-
- * graph.c (inbb): New variable.
- (start_bb): Set inbb to 1 if output is inside of a building block.
- (end_bb): Check if output is inside of a building block.
-
-2010-10-13 Eric Botcazou <ebotcazou@adacore.com>
-
- PR rtl-optimization/45912
- * ira-costs.c (ira_tune_allocno_costs_and_cover_classes): Test the
- regno of registers instead of their index to compute the alignment.
-
-2010-10-13 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.c (ix86_build_const_vector): Check vector
- mode instead of scalar mode.
- (ix86_build_signbit_mask): Likewise.
- (ix86_expand_fp_absneg_operator): Updated.
- (ix86_expand_copysign): Likewise.
- (ix86_expand_int_vcond): Likewise.
- (ix86_emit_swdivsf): Likewise.
- (ix86_sse_copysign_to_positive): Likewise.
- (ix86_expand_sse_fabs): Likewise.
- * config/i386/i386.md (fixuns_trunc<mode>si2): Likewise.
- * config/i386/sse.md (copysign<mode>3): Likewise.
- (sse2_cvtudq2ps): Likewise.
- (vec_unpacku_float_hi_v4si): Likewise.
- (vec_unpacku_float_lo_v4si): Likewise.
-
- * config/i386/i386.c (ix86_builtins): Add
- IX86_BUILTIN_CPYSGNPS256 and IX86_BUILTIN_CPYSGNPD256.
- (bdesc_args): Likewise.
- (ix86_builtin_vectorized_function): Support
- IX86_BUILTIN_CPYSGNPS256, IX86_BUILTIN_CPYSGNPD256,
- IX86_BUILTIN_SQRTPD256, IX86_BUILTIN_SQRTPS_NR256,
- and IX86_BUILTIN_CVTPS2DQ256.
- (ix86_builtin_reciprocal): Support IX86_BUILTIN_SQRTPS_NR256.
-
- * config/i386/sse.md (STORENT_MODE): New.
- (VEC_FLOAT_MODE): Likewise.
- (VEC_EXTRACT_MODE): Likewise.
- (*avx_cvtdq2pd256_2): Likewise.
- (vec_pack_trunc_v4df): Likewise.
- (vec_interleave_highv8sf): Likewise.
- (vec_interleave_lowv8sf): Likewise.
- (storent<mode>): Macroized.
- (<code><mode>2: absneg): Likewise.
- (copysign<mode>3): Likewise.
- (vec_extract<mode>): Likewise.
-
- PR target/44180
- * config/i386/i386.c (expand_vec_perm_even_odd_1): Rewritten
- for V8SFmode.
-
-2010-10-13 Richard Guenther <rguenther@suse.de>
- H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/sse.md (reduc_splus_v8sf): Add.
- (reduc_splus_v4df): Likewise.
- (vec_unpacks_hi_v8sf): Likewise.
- (vec_unpacks_lo_v8sf): Likewise.
- (*avx_cvtps2pd256_2): Likewise.
- (vec_unpacks_float_hi_v8si): Likewise.
- (vec_unpacks_float_lo_v8si): Likewise.
- (vec_interleave_highv4df): Likewise.
- (vec_interleave_lowv4df): Likewise.
-
-2010-10-13 Richard Guenther <rguenther@suse.de>
-
- PR objc/45878
- * gimple-fold.c (gimple_fold_obj_type_ref): Leave OBJ_TYPE_REFs
- alone if there are no virtual methods.
-
-2010-10-13 Richard Henderson <rth@redhat.com>
-
- * expr.c (build_personality_function): Take parameter LANG instead
- of parameter NAME. Build the name based on the lang prefix and the
- unwind method in use.
- * tree.c (lhd_gcc_personality): Update call to
- build_personality_function.
-
-2010-10-13 Richard Guenther <rguenther@suse.de>
-
- PR objc/45878
- * tree-ssa-ccpc (ccp_fold_stmt): Use gimple_fold_obj_type_ref.
-
-2010-10-13 Eric Botcazou <ebotcazou@adacore.com>
-
- * cse.c (cse_insn): Fix thinko in the canonicalization of USE insns.
- Canonicalize input operands of ASM_OPERANDS insns.
-
-2010-10-13 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45788
- * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Delay
- EH update until fixup-cfg.
-
-2010-10-13 Julian Brown <julian@codesourcery.com>
-
- * config/arm/arm.h (REG_CLASS_CONTENTS): Remove soft frame pointer
- from CORE_REGS and GENERAL_REGS classes.
- * config/arm/arm.md (*thumb1_movsi_insn): Ignore all parts of
- final constraint for register preferencing.
-
-2010-10-13 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45970
- * tree-ssa-alias.h (stmt_kills_ref_p): Declare.
- * tree-ssa-alias.c (stmt_kills_ref_p_1): New function.
- (stmt_kills_ref_p): Likewise.
- * tree-ssa-dse.c (dse_optimize_stmt): Use it.
-
-2010-10-13 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45982
- * tree-ssa-structalias.c (make_constraints_to): New function.
- (make_constraint_to): Implement in terms of make_constraints_to.
- (find_func_aliases): Properly make return values of pure/const
- functions escape if they assign to sth that is not a pointer.
-
-2010-10-13 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45874
- * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee):
- Fixup the CFG when EH was fixed up.
-
-2010-10-13 Ira Rosen <irar@il.ibm.com>
-
- * tree-vect-slp.c (vect_get_constant_vectors): Fix comment.
- Use operand's type for POINTER_PLUS_EXPR.
-
-2010-10-13 Alexandre Oliva <aoliva@redhat.com>
-
- * c-parser.c (c_parser_for_statement): Initialize incr.
-
-2010-10-12 Xinliang David Li <davidxl@google.com>
-
- PR tree-optimization/45972
- * tree-ssa-uninit.c (compute_uninit_opnds_pos): Skip phis
- with too many arguments.
-
-2010-10-12 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/45636
- * tree-ssa-forwprop.c: Include expr.h.
- (constant_pointer_difference, simplify_builtin_call): New functions.
- (tree_ssa_forward_propagate_single_use_vars): Call
- simplify_builtin_call on builtin calls.
-
-2010-10-12 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/sparc/sparc.md (*adddi3_insn_sp32): Rename.
- (*adddi3_extend_sp32): Likewise.
- (*subdi3_insn_sp32): Likewise.
- (*subdi3_extend_sp32): Likewise.
- (*negdi2_sp32): Use negative test for consistency.
-
-2010-10-12 Nathan Froyd <froydnj@codesourcery.com>
-
- * libgcc2.h: Use __SIZEOF_DOUBLE__ instead of LIBGCC2_DOUBLE_TYPE_SIZE.
- (LIBGCC2_DOUBLE_TYPE_SIZE): Delete.
- * config/fixed-bit.h: Likewise.
- * config/rx/rx.h (LIBGCC2_DOUBLE_TYPE_SIZE): Delete.
- * config/sh/sh.h (LIBGCC2_DOUBLE_TYPE_SIZE): Delete.
- * system.h (LIBGCC2_DOUBLE_TYPE_SIZE): Poison.
- * doc/tm.texi.in (LIBGCC2_HAS_DF_MODE): Use DOUBLE_TYPE_SIZE.
- (DF_SIZE): Likewise.
- * doc/tm.texi: Regenerate.
-
-2010-10-12 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/rs6000/predicates.md (scc_rev_comparison_operator): New.
- * config/rs6000/rs6000.md (*isel_reversed_signed_<mode>): New.
- (*isel_reversed_unsigned_<mode>): New.
- * config/rs6000/rs6000.c (output_isel): Accept GE/GEU/LE/LEU/NE
- as valid comparisons and adjust operands and output appropriately.
- (rs6000_rtx_costs) <CONST_INT>: Accept NE as a cost-0 outer_code.
-
-2010-10-12 Chung-Lin Tang <cltang@codesourcery.com>
-
- * config/arm/arm.h (ARM_EXPAND_ALIGNMENT): Rename from
- DATA_ALIGNMENT and add COND parameter. Update comments above.
- (DATA_ALIGNMENT): Use ARM_EXPAND_ALIGNMENT, with !optimize_size.
- (LOCAL_ALIGNMENT): Use ARM_EXPAND_ALIGNMENT, with !flag_conserve_stack.
-
-2010-10-12 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/45958
- * exec-tool.in: Support '-plugin' as the second option to the linker.
-
-2010-10-12 Richard Henderson <rth@redhat.com>
-
- PR middle-end/45962
- * cfgexpand.c (add_stack_var): Ensure every variable has 1 byte.
- (expand_stack_vars): Assert large base allocated when used.
-
-2010-10-12 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (get_constraint_for_1): Constants
- only point to nonlocal, not anything.
-
-2010-10-11 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.c (TARGET_EXCEPT_UNWIND_INFO): Use sjlj
- unwind info for exceptions.
-
-2010-10-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR testsuite/45851
- * doc/sourcebuild.texi (LTO Testing, dg-extra-ld-options):
- Document optional target selector.
-
-2010-10-12 Joseph Myers <joseph@codesourcery.com>
-
- * flag-types.h: New.
- * Makefile.in (TH_H): Include $(OPTIONS_H) instead of $(FLAGS_H).
- (FLAGS_H): Include flag-types.h. Include $(OPTIONS_H) instead of
- options.h.
- (OPTIONS_H): Define.
- (c-family/c-opts.o, lto-opts.o, opts.o): Use $(OPTIONS_H) instead
- of options.h.
- * configure.ac (tm_include_list): Include options.h not flags.h.
- * configure: Regenerate.
- * flags.h: Include flag-types.h. Include options.h at top of file
- again.
- (enum debug_info_type, enum debug_info_level, enum
- debug_info_usage, enum symbol_visibility, struct visibility_flags,
- enum ira_algorithm, enum ira_region, enum excess_precision, enum
- graph_dump_types, enum stack_check_type,
- enum warn_strict_overflow_code): Move to flag-types.h
- * opth-gen.awk: Include flag-types.h in options.h.
-
-2010-10-12 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (store_expr): Share code for STRING_CST and
- MEM_REF of &STRING_CST cases. Don't require BLKmode, instead
- check if target is a MEM.
-
- * rtl.h: Include hashtab.h.
- (iterative_hash_rtx): New prototype.
- * rtl.c (iterative_hash_rtx): New function.
- * dwarf2out.c (dw_loc_list_node): Add hash and emitted fields.
- (output_loc_list): Return immediately if emitted is set, set it.
- (hash_loc_operands, hash_locs, hash_loc_list,
- compare_loc_operands, compare_locs, loc_list_hash, loc_list_eq,
- optimize_location_lists_1, optimize_location_lists): New function.
- (dwarf2out_finish): Call optimize_location_lists.
- * Makefile.in (RTL_BASE_H): Depend on $(HASHTAB_H).
-
-2010-10-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR testsuite/45974
- Revert:
- * Makefile.in ($(lang_checks_parallel))
- ($(lang_checks_parallelized)): Use single quotes for
- $(RUNTESTFLAGS), to allow passing quoted content.
-
-2010-10-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config/pa/linux-atomic.c (__sync_val_compare_and_swap_4): Return
- actual_oldval. Use __builtin_expect.
- (SUBWORD_VAL_CAS): Likewise.
-
-2010-10-11 Nathan Froyd <froydnj@codesourcery.com>
-
- * recog.c (nonmemory_operand): Call immediate_operand for
- CONSTANT_P operands.
-
-2010-10-11 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (movmem<mode>): Macroize expander from
- movmem{si,di} using SWI48 mode iterator.
- (*strmovsi_1): Macroize insn pattern from *strmovsi_1 and
- *strmovsi_rex_1 using P mode iterator.
- (*strmovhi_1): Ditto from *strmovhi_1 and *strmovhi_rex_1.
- (*strmovqi_1): Ditto from *strmovqi_1 and *strmovqi_rex_1.
- (*rep_movsi): Ditto from *rep_movsi and *rep_movsi_rex64.
- (*rep_movqi): Ditto from *rep_movqi and *rep_movqi_rex64.
- (setmem<mode>): Macroize expander from setmem{si,di} using
- SWI48 mode iterator.
- (*strsetsi_1): Macroize insn pattern from *strsetsi_1 and
- *strsetsi_rex_1 using P mode iterator.
- (*strsethi_1): Ditto from *strsethi_1 and *strsethi_rex_1.
- (*strsetqi_1): Ditto from *strsetqi_1 and *strsetqi_rex_1.
- (*rep_stossi): Ditto from *rep_stossi and *rep_stossi_rex64.
- (*rep_stosqi): Ditto from *rep_stosqi and *rep_stosqi_rex64.
- (*cmpstrnqi_nz_1): Ditto from *cmpstrnqi_nz_1 and *cmpstrnqi_nz_rex_1.
- (*cmpstrnqi_1): Ditto from *cmpstrnqi_1 and *cmpstrnqi_rex_1.
- (strlen<mode>): Macroize expander from strlen{si,di} using SWI48x
- mode iterator.
- (*strlenqi_1): Macroize insn pattern from *strlenqi_1 and
- *strlenqi_rex_1 using P mode iterator.
-
-2010-10-11 Bernd Schmidt <bernds@codesourcery.com>
-
- PR bootstrap/45445
- * ira-lives.c (mark_pseudo_reg_live, mark_pseudo_reg_dead): New
- static functions.
- (mark_ref_live, mark_ref_dead): Use them.
- (make_pseudo_conflict): New arg ORIG_DREG. All callers changed.
- Save the original reg, and use the new functions.
- (check_and_make_def_use_conflict): New arg ORIG_DREG. All callers
- changed.
- (check_and_make_def_conflict): Save the original reg.
-
-2010-10-11 Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/45699
- * gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Choose among
- thunks.
-
-2010-10-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * Makefile.in ($(lang_checks_parallel))
- ($(lang_checks_parallelized)): Use single quotes for
- $(RUNTESTFLAGS), to allow passing quoted content.
-
- PR bootstrap/35855
- * opt-functions.awk (BEGIN): New section.
- (lower, upper, digit, alnum): New variables.
- (static_var, opt_sanitized_name): Use alnum instead of character
- classes, for non-C locale.
- * optc-gen.awk: Likewise.
- * opth-gen.awk: Likewise.
-
-2010-10-11 Anatoly Sokolov <aesok@post.ru>
-
- * target.def (preferred_reload_class): New hook.
- * doc/tm.texi.in (TARGET_PREFERRED_RELOAD_CLASS): Document.
- * doc/tm.texi: Regenerate.
- * targhooks.c (default_preferred_reload_class): New function.
- * targhooks.h (default_preferred_reload_class): Declare.
- * reload.c (find_dummy_reload): Change preferred_class variable type
- from enum reg_class to reg_class_t. Use TARGET_PREFERRED_RELOAD_CLASS
- target hook.
- (find_reloads): Change goal_alternative array type from int to
- reg_class_t. Use TARGET_PREFERRED_RELOAD_CLASS target hook.
- (push_reload, find_reloads_address_part): Use
- TARGET_PREFERRED_RELOAD_CLASS target hook.
- * reload1.c (emit_input_reload_insns): Ditto.
- * ira-costs.c (copy_cost): Use TARGET_PREFERRED_RELOAD_CLASS target
- hook. Change rclass argument and secondary_class variable types from
- 'enum reg_class' to reg_class_t.
-
- * config/i386/i386.h (PREFERRED_RELOAD_CLASS): Remove.
- * config/i386/i386-protos (ix86_preferred_reload_class): Remove.
- * config/i386/i386.c (ix86_preferred_reload_class): Make static.
- Change regclass argument and result types from enum reg_class to
- reg_class_t.
- (TARGET_PREFERRED_RELOAD_CLASS): Define.
-
-2010-10-11 Eric Botcazou <ebotcazou@adacore.com>
-
- * simplify-rtx.c (simplify_unary_operation_1): Use unsigned arithmetics
- in masking operations.
- (simplify_const_unary_operation): Likewise.
- (simplify_binary_operation_1): Likewise.
- (simplify_const_binary_operation): Likewise.
- (simplify_const_relational_operation): Likewise.
- (simplify_ternary_operation): Likewise.
- (simplify_immed_subreg): Likewise.
-
-2010-10-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR middle-end/45862
- * doc/tm.texi.in (SUPPORTS_WEAK): Update.
- (TARGET_SUPPORTS_WEAK): New.
- * doc/tm.texi: Regenerate.
- * defaults.h (SUPPORTS_WEAK): Update comment.
- (TARGET_SUPPORTS_WEAK): New.
- * dwarf2asm.c (USE_LINKONCE_INDIRECT): Update define.
- * varasm.c (assemble_external): Use TARGET_SUPPORTS_WEAK instead of
- SUPPORTS_WEAK.
- (merge_weak, declare_weak, do_assemble_alias, supports_one_only,
- make_decl_one_only): Likewise.
- * config/pa/som.h (SUPPORTS_WEAK): Rename defines to
- TARGET_SUPPORTS_WEAK.
- (SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY): Use TARGET_SUPPORTS_WEAK
- instead of SUPPORTS_WEAK.
-
-2010-10-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/sparc/gmon-sol2.c: Don't include coretypes.h, tm.h.
-
-2010-10-11 Nathan Froyd <froydnj@codesourcery.com>
-
- * vec.h (VEC_qsort): Define.
- * dbxout.c (output_used_types): Use it.
- * df-scan.c (df_sort_and_compress_refs): Likewise.
- (df_sort_and_compress_mws): Likewise.
- * genautomata.c (uniq_sort_alt_states): Likewise.
- (evaluate_equiv_classes): Likewise.
- (output_trans_table): Likewise.
- (output_state): Likewise.
- * gimplify.c (compare_case_labels): Likewise.
- * graphite-sese-to-poly.c (graphite_sort_dominated_info): Likewise.
- * ipa.c (build_cdtor_fns): Likewise.
- * lto.c (lto_wpa_write_files): Likewise.
- * sel-sched.c (fill_vec_av_set): Likewise.
- * tree-predcom.c (determine_roots_comp): Likewise.
- * tree-sra.c (sort_and_spliace_var_accesses): Likewise.
- (splice_param_accesses): Likewise.
- * tree-ssa-live.c (dump_enumerated_decls): Likewise.
- * tree-ssa-reassoc.c (undistribute_ops_list): Likewise.
- (reassociate_bb): Likewise.
- * tree-ssa-sccvn.c (sort_scc): Likewise.
- * tree-ssa-structalias.c (sort_fieldstack): Likewise.
-
-2010-10-11 Ian Lance Taylor <iant@google.com>
-
- * tree.h (TREE_THIS_NOTRAP): Use TREE_CHECK5.
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Only check
- TREE_THIS_NOTRAP when appropriate.
- (get_spill_slot_decl): Don't set TREE_THIS_NOTRAP on the new VAR_DECL.
- * gimplify.c (gimplify_expr): Copy NOTRAP from INDIRECT_REF to
- newly created MEM_REF.
-
-2010-10-11 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- Nathan Froyds patch to hooks FUNCTION_ARG etc.
- * config/picochip/picochip-protos.h (picochip_function_arg): Delete.
- (picochip_incoming_function_arg): Delete.
- (picochip_arg_advance): Delete.
- * config/picochip/picochip.h (FUNCTION_ARG): Delete.
- (FUNCTION_INCOMING_ARG): Delete.
- (FUNCTION_ARG_ADVANCE): Delete.
- * config/picochip/picochip.c (picochip_function_arg): Take a
- const_tree and a bool.
- (picochip_incoming_function_arg): Likewise.
- (picochip_arg_advance): Likewise.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
- (TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR middle-end/45955
- * ipa.c (build_cdtor): Delete endless loop.
-
-2010-10-07 Andi Kleen <ak@linux.intel.com>
-
- * Makefile.in (MOSTLYCLEANFILES): Remove cc1*dummy, add
- checksum-options.
- (checksum-options): Add.
- (cc1-dummy): Remove.
- (cc1-checksum): Change to run checksum over object files
- and options only.
- * dummy-checksum.c: Remove.
- * genchecksum.c: Update copyright.
- (usage): Allow multiple arguments.
- (BLOCKSIZE): Add.
- (dosum): Change for incremental checksum. Remove C output.
- (main): Iterate over all argument files. Add C output.
-
-2010-10-11 Joseph Myers <joseph@codesourcery.com>
-
- * params.c (set_param_value_internal): New.
- (set_param_value): Use set_param_value_internal.
- (maybe_set_param_value, set_default_param_value): New.
- * params.h (PARAM_VALUE, PARAM_SET_P): Make into rvalues.
- (maybe_set_param_value, set_default_param_value): Declare.
- * config/arm/arm.c (arm_option_override): Use maybe_set_param_value.
- * config/i386/i386.c (ix86_option_override_internal): Use
- maybe_set_param_value.
- * config/ia64/ia64.c (ia64_option_default_params,
- TARGET_OPTION_DEFAULT_PARAMS): New.
- (ia64_option_optimization): Move some code to
- ia64_option_default_params.
- * config/picochip/picochip.c (picochip_option_override): Use
- maybe_set_param_value.
- * config/rs6000/rs6000.c (rs6000_option_default_params,
- TARGET_OPTION_DEFAULT_PARAMS): New.
- (rs6000_option_override_internal): Use maybe_set_param_value.
- (rs6000_option_optimization): Move some code to
- rs6000_option_default_params.
- * config/s390/s390.c (s390_option_override): Use maybe_set_param_value.
- * config/sh/sh.c (sh_option_default_params,
- TARGET_OPTION_DEFAULT_PARAMS): New.
- (sh_option_optimization): Move some code to sh_option_default_params.
- * config/sparc/sparc.c (sparc_option_override): Use
- maybe_set_param_value.
- * config/spu/spu.c (spu_option_default_params,
- TARGET_OPTION_DEFAULT_PARAMS): New.
- (spu_option_optimization): Move some code to spu_option_default_params.
- (spu_option_override): Use maybe_set_param_value.
- * doc/tm.texi.in (TARGET_OPTION_DEFAULT_PARAMS): New @hook.
- * doc/tm.texi: Regenerate.
- * ggc-common.c (init_ggc_heuristics): Use set_default_param_value.
- * opts.c (init_options_once): Use PARAM_VALUE not direct access to
- compiler_params.
- (default_options_optimization): Use maybe_set_param_value.
- (finish_options): Use maybe_set_param_value.
- * target.def (target_option.default_params): New hook.
- * toplev.c (general_init): Call targetm.target_option.default_params.
-
-2010-10-11 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/45902
- * tree-vect-slp.c (vect_get_constant_vectors): Use statement's
- vector type for constants, unless it's a pointer.
-
-2010-10-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.md (*mov<mode>cc): lgoc -> locg and stgoc -> stocg.
-
-2010-10-11 Jakub Jelinek <jakub@redhat.com>
-
- PR target/45870
- * config/i386/i386.c (ix86_delegitimize_tls_address): New function.
- (ix86_delegitimize_address): Use it.
-
-2010-10-10 Eric Botcazou <ebotcazou@adacore.com>
-
- * opt-functions.awk (opt_sanitized_name): Remove gdwarf+ handling.
-
-2010-10-10 Uros Bizjak <ubizjak@gmail.com>
-
- * config/alpha/alpha.c (alpha_setup_incoming_varargs): Pass pointer
- to cum struct in the call to function_arg_advance.
- (alpha_function_arg_advance): Mark named as unused.
-
-2010-10-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * config/mips/mips.c (mips_handle_option): Make "value" with
- ATTRIBUTE_UNUSED.
-
-2010-10-09 Richard Henderson <rth@redhat.com>
-
- PR rtl-opt/33721
- * explow.c (allocate_dynamic_stack_space): Add REQUIRED_ALIGN parm,
- remove TARGET parm, convert KNOWN_ALIGN parm to SIZE_ALIGN. Honor
- required_align, tidy the code a bit. Emit split_stack code in the
- right place. Mark the return value with the alignment properly.
- * expr.h (allocate_dynamic_stack_space): Update decl.
- * builtins.c (expand_builtin_apply): Update call to
- allocate_dynamic_stack_space.
- (expand_builtin_alloca): Likewise. Remove TARGET parameter.
- * calls.c (initialize_argument_information): Update call to
- allocate_dynamic_stack_space.
- (expand_call): Likewise.
-
- * cfgexpand.c (get_decl_align_unit): Don't limit alignment.
- Don't update_stack_alignment here.
- (alloc_stack_frame_space): Make ALIGN unsigned.
- (stack_var_cmp): Sort by alignment too.
- (partition_stack_vars): Don't merge large and small alignment vars.
- (expand_one_stack_var_at): Add BASE and BASE_ALIGN parameters.
- Take care when BASE is not virtual_stack_vars_rtx.
- (expand_stack_vars): Allocate dynamic stack space for large
- alignment variables.
- (expand_one_stack_var): Update all to expand_one_stack_var_at.
- (defer_stack_allocation): True for large alignment vars.
- (update_stack_alignment): Merge into ...
- (expand_one_var): ... here.
- (gimple_expand_cfg): Place code from expand_stack_vars.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/pdp11/pdp11.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/pdp11/pdp11.c (pdp11_function_arg): New function.
- (pdp11_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * libgcc2.h: Use __SIZEOF_LONG_LONG__ instead of LONG_LONG_TYPE_SIZE.
- * libgcc2.c: Likewise.
-
-2010-10-09 Richard Guenther <rguenther@suse.de>
-
- PR lto/45956
- * lto-streamer-in.c (lto_register_var_decl_in_symtab):
- Properly check if a decl is an automatic var.
-
-2010-10-09 Richard Guenther <rguenther@suse.de>
-
- PR lto/45947
- * tree.c (free_lang_data_in_cgraph): Properly walk the varpool.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/mmix/mmix-protos.h (mmix_function_arg): Delete.
- * config/mmix/mmix.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/mmix/mmix.c (mmix_function_arg): Rename to...
- (mmix_function_arg_1): ...this. Make static. Take a const_tree and
- bool arguments.
- (mmix_function_arg): New function.
- (mmix_function_incoming_arg): New function.
- (mmix_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define.
- (TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/vax/vax.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/vax/vax.c (vax_function_arg): New function.
- (vax_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/pa/pa-protos.h (function_arg): Delete.
- * config/pa/pa.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/pa/pa.c (function_arg): Rename to...
- (pa_function_arg): ...this. Make static. Take a const_tree and
- a bool.
- (pa_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/m68k/m68k.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/m68k/m68k.c (m68k_function_arg): New function.
- (m68k_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/avr/avr-protos.h (function_arg): Delete.
- (function_arg_advance): Delete.
- * config/avr/avr.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/avr/avr.c (function_arg): Rename to...
- (avr_function_arg): ...this. Make static. Take a const_tree and
- a bool.
- (function_arg_advance): Rename to...
- (avr_function_arg_advance): ...this. Make static. Take a
- const_tree and a bool.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/alpha/alpha-protos.h (function_arg): Delete.
- * config/alpha/alpha.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/alpha/vms.h (FUNCTION_ARG_ADVANCE): Delete.
- * config/alpha/alpha.c (function_arg): Rename to...
- (alpha_function_arg): ...this. Make static. Take a const_tree and
- a bool. Delete TARGET_ABI_UNICOSMK code.
- (alpha_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/mep/mep-protos.h (mep_function_arg): Delete.
- (mep_function_arg_advance): Delete.
- * config/mep/mep.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/mep/mep.c (mep_function_arg): Make static. Take a
- const_tree and a bool.
- (mep_function_arg_advance): Likewise.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-10-09 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45945
- * tree-ssa.c (execute_update_addresses_taken): Fixup LHS scanning.
-
-2010-10-09 Eric Botcazou <ebotcazou@adacore.com>
-
- PR tree-optimization/45612
- * ipa-split.c (test_nonssa_use): Remove bogus ATTRIBUTE_UNUSED.
- Test LABEL_DECLs as well. Fix formatting issues.
- (verify_non_ssa_vars): Return false for a GIMPLE_LABEL statement
- whose label is present in NON_SSA_VARS.
- (mark_nonssa_use): Remove bogus ATTRIBUTE_UNUSED. Handle LABEL_DECLs
- as well. Fix formatting issues.
- (visit_bb): Fix typos and formatting issue.
-
-2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
-
- PR tree-optimization/45950
- * tree-ssa-sccvn.c (init_vn_nary_op_from_pieces): Consult length
- before initializing vno->op.
-
-2010-10-09 Ralf Corsépius <ralf.corsepius@rtems.org>
-
- * config.gcc (bfin*-rtems*): Add newlib-stdint.h.
- * config.gcc (lm32*-rtems*): Add newlib-stdint.h.
-
-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 {A,L}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>
-
- * 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.
- * 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.
- * config.gcc: Enable z196 for --with-arch.
- * config/s390/2817.md: New file.
- * config/s390/2084.md: New type for multiply and add.
- * config/s390/2097.md: Likewise.
- * 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 predicate
- 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.
- (dot_deps_stmt): Same.
- * graphite-poly.c (dot_lst): Same.
-
-2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-blocking.c (scop_do_strip_mine): Do not call
- graphite_legal_transform.
- (scop_do_block): Same.
-
-2010-09-30 Vladimir Kargov <kargov@gmail.com>
-
- * graphite-scop-detection.c (graphite_can_represent_loop): Correct the
- description.
-
-2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-scalar-evolution.c (instantiate_array_ref): New.
- (instantiate_scev_r): Also handle ARRAY_REFs.
-
-2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-scalar-evolution.c (chrec_contains_symbols_defined_in_loop):
- Do not check for VAR_DECL, PARM_DECL, FUNCTION_DECL, LABEL_DECL,
- RESULT_DECL, and FIELD_DECL. Return false for an
- SSA_NAME_IS_DEFAULT_DEF.
- (compute_scalar_evolution_in_loop): Do not further analyze the
- scalar evolution when no_evolution_in_loop_p returns true.
-
-2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-chrec.h (evolution_function_is_affine_p): Do not check
- whether CHREC_LEFT is invariant. A function is affine when
- CHREC_RIGHT is invariant.
-
-2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (reduction_phi_p): Remove check for
- is_gimple_reg.
- (rewrite_degenerate_phi): Same.
- (rewrite_reductions_out_of_ssa): Add check for is_gimple_reg.
-
-2010-09-30 Vladimir Kargov <kargov@gmail.com>
-
- * graphite-scop-detection.c (graphite_can_represent_scev,
- graphite_can_represent_expr, stmt_has_simple_data_refs_p,
- graphite_can_represent_loop): Remove outermost_loop.
-
-2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/45229
- * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Do not
- handle GIMPLE_CALLs with no LHS.
-
-2010-09-30 Riyadh Baghdadi <baghdadi.mr@gmail.com>
-
- * graphite-poly.c (init_graphite_out_file): New.
- (init_graphite_in_file): New.
- (apply_poly_transforms): Updated to enable reading and writing of
- multiple scop files.
-
-2010-09-30 Tobias Grosser <grosser@fim.uni-passau.de>
-
- * graphite-scop-detection.c (graphite_can_represent_scev): Remove
- redundant checks.
-
-2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (precision_for_value): Adjust
- computation of precision by 1.
-
-2010-09-30 Riyadh Baghdadi <baghdadi.mr@gmail.com>
-
- * graphite-cloog-util.c (openscop_read_cloog_matrix): New.
- (openscop_read_polyhedron_matrix): New.
- * graphite-cloog-util.h (openscop_read_polyhedron_matrix): Declared.
- (openscop_read_N_int): Same.
- * graphite-poly.c (openscop_read_N_int): New.
- (openscop_read_one_int): New.
- (openscop_read_N_string): New.
- (openscop_read_one_string): New.
- (openscop_read_powerset_matrix): New.
- (graphite_read_transforms): Remove.
- (graphite_read_scatt): New.
- (graphite_read_scop_file): New.
- (apply_poly_transforms): Updated to call graphite_read_scop_file.
-
-2010-09-30 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-poly.c: Change include order.
-
-2010-09-30 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-cloog-compat.h (cloog_matrix_ncolumns): New.
- (cloog_matrix_nrows): New.
-
-2010-09-30 Riyadh Baghdadi <baghdadi.mr@gmail.com>
-
- * graphite-cloog-util.c (openscop_print_cloog_matrix): Remove spaces
- from matrix lines.
- * graphite-poly.c (openscop_print_scattering_function_1): Same.
- (print_scattering_function_1): Same.
- (openscop_print_pbb_domain): Same.
- (openscop_print_scop_context): Same.
- (print_scop_context): Same.
-
-2010-09-30 Riyadh Baghdad <baghdadi.mr@gmail.com>
-
- * graphite-poly.c (openscop_print_pdr_polyhedron): Fix indentation.
- (openscop_print_pdr_polyhedron): Print pph.
-
-2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (gcc_type_for_interval): Generate in
- priority signed types.
-
-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.
-
-2010-09-30 Riyadh Baghdadi <baghdadi.mr@gmail.com>
-
- * graphite-cloog-util.c (openscop_print_cloog_matrix): New.
- (openscop_print_polyhedron_matrix): New.
- * graphite-cloog-util.h (openscop_print_polyhedron_matrix): Declared.
- * graphite-poly.c (openscop_print_pdr_polyhedron): Same.
- (openscop_print_pdr_powerset): New.
- (openscop_print_powerset_matrix): New.
- (openscop_print_scattering_function_1): New.
- (print_scattering_function): Add support for scattering names and
- OpenScop format.
- (graphite_write_transforms): Remove.
- (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): Updated to call the new print_pbb_body.
- (openscop_print_scop_context): New.
- (print_scop_header): New.
- (print_scop): Updated to call print_scop_header.
- * graphite-poly.h: Document OpenScop format.
-
-2010-09-30 Anatoly Sokolov <aesok@post.ru>
-
- * config/cris/m32c.c (cris_memory_move_cost): New.
- (cris_register_move_cost): Make static. Change arguments type from
- enum reg_class to reg_class_t.
- (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
- * config/cris/cris.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
- * config/cris/cris-protos.h (cris_register_move_cost): Remove.
-
-2010-09-30 Jakub Jelinek <jakub@redhat.com>
-
- PR target/45843
- * config/i386/i386.c (ix86_gimplify_va_arg): Use
- INTVAL (XEXP (slot, 1)) as prev_size.
-
-2010-09-30 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR target/45837
- * config/rs6000/aix.h (TARGET_AIX_OS): Define to be 1.
- * config/rs6000/rs6000.h (TARGET_AIX_OS): Define to be 0 if not
- defined.
- * config/rs6000/option-defaults.h (toplevel): Change #if
- TARGET_AIX to TARGET_AIX_OS to allow compiler to build after
- global option changes.
-
-2010-09-30 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (mem_loc_descriptor): Handle IF_THEN_ELSE.
-
- PR tree-optimization/31261
- * fold-const.c (fold_binary): Optimize ((A & N) + B) & M
- for constants M and N, M == (1LL << cst) - 1 && (N & M) == M.
-
-2010-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR bootstrap/45796
- * 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.
- (genprog): Add hooks, rename to ...
- (genprogerr): ... this, and let genprog also contain check,
- checksum, condmd.
- ((genprog:%=build/gen%$(build_exeext))): Rename to ...
- ((genprogerr:%=build/gen%$(build_exeext))): ... this.
- (build/genhooks$(build_exeext)): Remove now-unneeded dependency.
-
-2010-09-30 Jonathan Wakely <jwakely.gcc@gmail.com>
- 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.gcc (*-*-solaris2*): Add sol2.opt to extra_options.
- * doc/invoke.texi (Option Summary, SPARC Options): Move
- -mimpure-text, -mno-impure-text, -threads, -pthreads, -pthread ...
- (Option Summary, Solaris 2 Options): ... here.
- (Submodel Options, Solaris 2 Options): New menu entry.
- (SPARC Options): Move -mimpure-text, -threads, -pthreads, -pthread ...
- (Solaris 2 Options): ... here.
-
-2010-09-30 Michael Eager <eager@eagercon.com>
-
- * extend.texi (interrupt_handler): Add MicroBlaze to list.
- (save_volatiles): Describe option for MicroBlaze.
- * invoke.texi: Add MicroBlaze Options.
- * contrib.texi: Add acknowledgment.
- * md.texi: Add MicroBlaze d and z constraints.
- * install.texi: Add microblaze-*-elf.
- * configure.ac: Add microblaze-*-* to target list.
- * configure: Regenerate.
- * config.gcc: Add microblaze*-*-*, microblaze*-linux*.
- * config/microblaze/microblaze-protos.h: New.
- * config/microblaze/crti.s: New.
- * config/microblaze/predicates.md: New.
- * config/microblaze/linux.h: New.
- * config/microblaze/microblaze.md: New.
- * config/microblaze/constraints.md: New.
- * config/microblaze/crtn.s: New.
- * config/microblaze/microblaze.opt: New.
- * config/microblaze/microblaze-c.c: New.
- * config/microblaze/t-microblaze: New.
- * config/microblaze/microblaze.c: New.
- * config/microblaze/microblaze.h: New.
-
-2010-09-30 Iain Sandoe <iains@gcc.gnu.org>
-
- * c-parser.c (c_parser_objc_methodprotolist): Amend preceding comment,
- parse @optional/@required and set the flags as appropriate.
-
-2010-09-30 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/iq2000/t-iq2000 (TARGET_LIBGCC2_CFLAGS): Delete.
-
-2010-09-30 Joseph Myers <joseph@codesourcery.com>
-
- * opt-functions.awk (static_var): Update comment.
- (var_ref): Return offsetof expression or -1, not variable address.
- * optc-gen.awk: Generate structure field initializers instead of
- static variables. Expect -1 for missing variables instead of null
- pointer. Add gcc_options parameters to generated functions.
- * opth-gen.awk: Generate structure fields for static variables.
- Add gcc_options parameters to generated functions.
- * common.opt (optimize, optimize_size): Add variables.
- * config/i386/i386-c.c (ix86_pragma_target_parse): Pass
- &global_options to cl_target_option_restore.
- * config/i386/i386.c (ix86_valid_target_attribute_p): Pass
- &global_options to cl_optimization_restore, cl_target_option_save
- and cl_target_option_restore.
- (ix86_set_current_function): Pass &global_options to
- cl_target_option_restore.
- * config/pdp11/pdp11.h (optimize): Remove.
- * config/rs6000/rs6000.h (optimize): Remove.
- * config/sh/sh.h (optimize): Remove.
- * config/xtensa/xtensa.h (optimize): Remove.
- * coretypes.h (struct gcc_options): Declare.
- * diagnostic.c (diagnostic_initialize): Initialize
- context->option_state.
- (diagnostic_report_diagnostic): Pass option_state to
- option_enabled hook.
- * diagnostic.h (diagnostic_context.option_enabled): Add void *
- parameter.
- (diagnostic_context.option_state): New field.
- * final.c (final_start_function, final, final_scan_insn): Rename
- optimize parameter to optimize_p.
- * flags.h (optimize, optimize_size): Remove.
- * function.c (invoke_set_current_function_hook): Pass
- &global_options to cl_optimization_restore.
- * gcc.c (driver_handle_option): Take gcc_options parameter.
- Assert that it is &global_options.
- (process_command): Pass &global_options to read_cmdline_option.
- * ipa-pure-const.c (suggest_attribute): Pass &global_options to
- option_enabled.
- * lto-opts.c (lto_reissue_options): Use option_flag_var. Pass
- &global_options to set_option.
- * opts-common.c (handle_option, handle_generated_option,
- read_cmdline_option, set_option): Take explicit gcc_options
- parameters. Use option_flag_var.
- (option_flag_var): New.
- * 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.
- (print_filtered_help): Use option_flag_var. Pass &global_options
- to option_enabled.
- (common_handle_option): Use option_flag_var.
- (option_enabled): Take opts parameter. Use option_flag_var.
- (get_option_state): Take gcc_options parameter. Use
- option_flag_var. Pass gcc_options parameter to option_enabled.
- (enable_warning_as_error): Pass &global_options to
- handle_generated_option.
- * opts.h (struct cl_option): Change flag_var to flag_var_offset.
- (cl_option_handler_func.handler): Take gcc_options parameter.
- (option_enabled, get_option_state, set_option, handle_option,
- handle_generated_option, read_cmdline_option): Take gcc_options
- parameters.
- * toplev.c (optimize, optimize_size): Remove.
- (print_switch_values): Pass &global_options to option_enabled.
- (option_affects_pch_p): Use option_flag_var. Pass &global_options
- to get_option_state.
- (general_init): Initialize global_dc->option_state.
- * tree.c (build_optimization_node): Pass &global_options to
- cl_optimization_save.
- (build_target_option_node): Pass &global_options to
- cl_target_option_save.
-
-2010-09-30 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (type_consists_of_records_p): Do not check for trailing
- zero sized bit-fields.
-
-2010-09-30 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * 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_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.
- (c_parser_objc_class_instance_variables): Use RID_AT_PRIVATE
- instead of RID_PRIVATE, RID_AT_PROTECTED instead of RID_PROTECTED
- 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.
- Add links to current providers of packages for Solaris and IRIX.
-
-2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
-
- 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
- * c-decl.c (start_decl): Check for redeclaration of class name.
- * c-parse.in (after_type_declarator): Recognize CLASSNAME.
-
-2010-09-29 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.c (ia64_builtin_decl): New.
- (TARGET_BUILTIN_DECL): Define.
- (ia64_builtins): New.
- (ia64_init_builtins): Save decls in ia64_builtins.
-
-2010-09-29 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/40457
- * 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.
- * rtl.h (struct full_rtx_costs): New.
- (init_costs_to_max, init_costs_to_zero, costs_lt_p,
- costs_add_n_insns): New inline functions.
- (get_full_rtx_cost): Declare.
-
- PR c/45054
- * reload1.c (replace_pseudos_in): Use eliminate_regs_1, allowing
- invariants. Check for reg_equiv_invariant.
- (reload): Assert that spilled_pseudos is empty when returning.
-
-2010-09-29 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/mingw32.h (TARGET_64BIT): replaced by
- TARGET_64BIT_DEFAULT in #if check.
-
-2010-09-29 Jack Howarth <howarth@bromo.med.uc.edu>
-
- * varasm.c (assemble_alias): Add error message for unsupported ifunc.
-
-2010-09-29 Mike Stump <mikestump@comcast.net>
-
- * config/darwin.h (flag_mkernel): Remove.
- (flag_apple_kext): Likewise.
-
-2010-09-29 Joseph Myers <joseph@codesourcery.com>
- Jack Howarth <howarth@bromo.med.uc.edu>
-
- * config/darwin.opt (undefined): Add.
-
-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 macro name change.
- * configure: Rebuilt.
- * doc/install.texi: Document --enable-indirect-function.
-
-2010-09-29 Joseph Myers <joseph@codesourcery.com>
-
- * doc/options.texi (Variable, Var, Init): Update documentation
- without reference to VarExists.
- (VarExists): Remove.
- * common.opt, config/i386/i386.opt, config/linux.opt,
- config/rs6000/rs6000.opt, config/sh/sh.opt, config/spu/spu.opt:
- Don't use VarExists.
-
-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.
- * 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,
- HARD_FRAME_POINTER_IS_ARG_POINTER): Document.
- * doc/tm.texi: Regenerate.
- * 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.
- * 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.
- * config/arm/arm.h (HARD_FRAME_POINTER_IS_FRAME_POINTER,
- HARD_FRAME_POINTER_IS_ARG_POINTER): Define.
- * config/bfin/bfin.h (target_flags): Remove.
- * config/cris/cris.h (target_flags): Remove.
- * config/i386/i386-c.c (ix86_pragma_target_parse): Update names of
- cl_target_option members.
- * config/i386/i386.c (ix86_force_align_arg_pointer): Remove.
- (ix86_function_specific_print, ix86_valid_target_attribute_tree,
- ix86_can_inline_p): Update names of cl_target_option members.
- * config/i386/i386.h (ix86_isa_flags): Remove.
- * config/lm32/lm32.h (target_flags): Remove.
- * config/mcore/mcore.h (mcore_stack_increment): Remove.
- * config/mcore/mcore.md (addsi3): Remove extern declaration of
- flag_omit_frame_pointer.
- * config/mep/mep.h (target_flags): Remove.
- * config/mips/mips.h (HARD_FRAME_POINTER_IS_FRAME_POINTER,
- HARD_FRAME_POINTER_IS_ARG_POINTER): Define.
- * config/mmix/mmix.h (target_flags): Remove.
- * config/rs6000/rs6000.h (rs6000_xilinx_fpu, flag_pic,
- flag_expensive_optimizations): Remove.
- * config/s390/s390.h (flag_pic): Remove.
- * config/score/score-conv.h (target_flags): Remove.
- * config/sh/sh.h (sh_fixed_range_str): Remove.
- * config/spu/spu.h (target_flags, spu_fixed_range_string): Remove.
- * dbxout.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER
- * df-scan.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
- * diagnostic.c (diagnostic_initialize): Update names of
- diagnostic_context members.
- * diagnostic.h (diagnostic_context): Rename inhibit_warnings and
- warn_system_headers.
- (diagnostic_report_warnings_p): Update for new names.
- * dwarf2out.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER
- * emit-rtl.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER and
- HARD_FRAME_POINTER_IS_ARG_POINTER.
- * flags.h (flag_compare_debug): Declare.
- * ira.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER
- * opts.c (flag_compare_debug): Define.
- (common_handle_option): Update names of diagnostic_context
- members. Handle -fcompare-debug-second.
- (fast_math_flags_struct_set_p): Update names of cl_optimization
- members.
- * reginfo.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
- * regrename.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
- * reload.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
- * reload1.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
- * resource.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
- * rtl.h (HARD_FRAME_POINTER_IS_FRAME_POINTER,
- HARD_FRAME_POINTER_IS_ARG_POINTER): Define and use.
- * 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>
-
- * 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.
-
-2010-09-29 Richard Guenther <rguenther@suse.de>
-
- * tree.h (SCOPE_FILE_SCOPE_P): New macro.
- (DECL_FILE_SCOPE_P): Use it.
- (TYPE_FILE_SCOPE_P): New macro.
-
-2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_lex_one_token): In Objective-C, when dealing with
- a CPP_NAME which is a reserved word, clearly separate cases for
- OBJC_IS_PQ_KEYWORD, OBJC_IS_AT_KEYWORD and OBJC_IS_CXX_KEYWORD.
-
-2010-09-29 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-parser.c (c_lex_one_token): In Objective-C, do not replace
- token->value with the canonical spelling. Do exactly like C and
- C++ and leave it as it is.
-
-2010-09-28 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_builtins): New.
- (alpha_builtin_decl, TARGET_BUILTIN_DECL): New.
- (alpha_builtin_function): New.
- (alpha_add_builtins, alpha_init_builtins): Use it.
-
-2010-09-28 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * doc/standards.texi (Standards): Expanded the section on
- Objective-C and Objective-C++.
-
-2010-09-28 DJ Delorie <dj@redhat.com>
-
- PR target/45800
- * config/m32c/m32c.c (m32c_subreg): Force adjustment of subregs of
- volatile MEMs.
-
-2010-09-28 Iain Sandoe <iains@gcc.gnu.org>
-
- * c-parser.c (c_parser_declaration_or_fndef): Diagnose incorrect prefix
- attributes on methods.
- (c_parser_objc_method_definition): Handle attributes.
- (c_parser_objc_methodproto): Likewise.
- (c_parser_objc_maybe_method_attributes): New.
- (c_parser_objc_method_decl): Handle attributes, add a diagnostic for a
- missing definition, similar to that in ObjC++.
-
-2010-09-28 Richard Henderson <rth@redhat.com>
-
- * defaults.h (DWARF2_UNWIND_INFO): Don't depend on TARGET_UNWIND_INFO.
- (MUST_USE_SJLJ_EXCEPTIONS): Remove.
- (CONFIG_SJLJ_EXCEPTIONS): Remove.
- (STACK_OLD_CHECK_PROTECT): Use targetm.except_unwind_info.
- (STACK_CHECK_PROTECT): Likewise.
- * dwarf2out.c (DWARF2_UNWIND_INFO, DWARF2_FRAME_INFO): Poison.
- (dwarf2out_do_frame): Use debug_unwind_info and except_unwind_info.
- (dwarf2out_do_cfi_asm, dwarf2out_begin_prologue): Likewise.
- (dwarf2out_frame_init, dwarf2out_frame_finish): Likewise.
- (dwarf2out_assembly_start): Likewise.
- * except.c (init_eh): Use targetm.except_unwind_info.
- (finish_eh_generation, gate_convert_to_eh_region_ranges): Likewise.
- (output_one_function_exception_table): Likewise.
- * final.c: Unconditionally include dwarf2out.h.
- (final_start_function): Unconditionally call dwarf2out routines.
- (final_end_function, final_scan_insn): Likewise.
- * function.c (expand_function_end): Use targetm.except_unwind_info.
- * opts.c (decode_options): Use targetm.except_unwind_info.
- * system.h (USING_SJLJ_EXCEPTIONS, TARGET_UNWIND_INFO): Poison.
- * target.def (debug_unwind_info, except_unwind_info): New.
- * target.h (enum unwind_info_type): New.
- * targhooks.c (default_debug_unwind_info): New.
- (default_except_unwind_info): New.
- (dwarf2_except_unwind_info, sjlj_except_unwind_info): New.
- * targhooks.h: Declare them.
- * tree-tailcall.c: Include "target.h"
- (suitable_for_tail_call_opt_p): Use targetm.except_unwind_info.
- * Makefile.in (tree-tailcall.o): Update.
- * tree.c (build_common_builtin_nodes): Use targetm.except_unwind_info.
- (lhd_gcc_personality): Likewise.
-
- * doc/tm.texi.in (TARGET_UNWIND_INFO): Remove.
- (TARGET_EXCEPT_UNWIND_INFO): New.
- (DWARF2_UNWIND_INFO): Update.
- (TARGET_DEBUG_UNWIND_INFO): New.
- * doc/tm.texi: Rebuild.
-
- * c-family/c-cppbuiltin.c (c_cpp_builtins): Use
- targetm.except_unwind_info.
-
- * config/arm/arm.c (TARGET_EXCEPT_UNWIND_INFO): New.
- (arm_except_unwind_info): New.
- (arm_compute_func_type): Use it.
- (arm_expand_prologue, thumb_pushpop): Likewise.
- (thumb1_expand_prologue, thumb1_output_function_prologue): Likewise.
- (arm_unwind_emit, arm_output_fn_unwind): Likewise.
- * config/arm/bpabi.h (ARM_UNWIND_INFO): Rename from TARGET_UNWIND_INFO.
- * config/arm/arm.h (ARM_UNWIND_INFO): Likewise.
- (DWARF2_UNWIND_INFO): Remove.
- (MUST_USE_SJLJ_EXCEPTIONS): Remove.
- (ARM_EABI_UNWIND_TABLES): Remove.
-
- * config/ia64/ia64.c (ia64_debug_unwind_info): New.
- (TARGET_DEBUG_UNWIND_INFO, TARGET_EXCEPT_UNWIND_INFO): New.
- (ia64_except_unwind_info): New.
- (ia64_output_function_prologue): Use it.
- (ia64_add_bundle_selector_before): Likewise.
- (ia64_reorg, ia64_asm_unwind_emit): Likewise.
- * config/ia64/ia64.h (DWARF2_FRAME_INFO): Remove.
- (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.
- (c_parser_objc_protocol_definition): Likewise.
- (c_parser_external_declaration): Provide dummy attribute arguments.
- (c_parser_declaration_or_fndef): Parse prefix attributes for ObjC.
- (c_parser_objc_class_definition): Handle attributes.
- (c_parser_objc_protocol_definition): Likewise.
-
-2010-09-28 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/40569
- PR fortran/40568
- * toplev.h (save_decoded_options, save_decoded_options_count):
- New global variables.
- * toplev.c (save_decoded_options, save_decoded_options_count):
- 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.
-
-2010-09-28 Ian Lance Taylor <iant@google.com>
-
- PR target/45815
- * opts.c (decode_options): Don't test whether the target supports
- split stack if flag_split_stack == 0.
-
-2010-09-28 Jan Hubicka <jh@suse.cz>
-
- * builtin-attrs.def (ATTR_LEAF): New attribute.
- (ATTR_NOVOPS_LEAF_LIST, ATTR_LEAF_LIST, ATTR_NOTHROW_LEAF_LIST,
- ATTR_CONST_NOTHROW_LEAF_LIST, ATTR_PURE_NOTHROW_LEAF_LIST,
- ATTR_PURE_NOTHROW_NOVOPS_LEAF_LIST, ATTR_NORETURN_NOTHROW_LEAF_LIST,
- ATTR_MALLOC_NOTHROW_LEAF_LIST, ATTR_SENTINEL_NOTHROW_LEAF_LIST,
- ATTR_NOTHROW_NONNULL_LEAF, ATTR_CONST_NOTHROW_NONNULL_LEAF,
- ATTR_CONST_NOTHROW_TYPEGENERIC_LEAF, ATTR_PURE_NOTHROW_NONNULL_LEAF,
- ATTR_MALLOC_NOTHROW_NONNULL_LEAF): New attribute lists.
- * sync-builtins.def: Annotate all builtins by leaf.
- * omp-builtins.def: Annotate all builtins by leaf.
- * builtins.def: Annotate relevant builtins with leaf attribute.
- (ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
- ATTR_MATHFN_FPROUNDING_ERRNO, ATTR_MATHFN_FPROUNDING_STORE): Make
- leaf.
-
-2010-09-28 Jan Hubicka <jh@suse.cz>
-
- * tree-ssa-ccp.c (fold_ctor_reference): New function.
- (fold_const_aggregate_ref): Use it.
- * fold-const.c (canonicalize_constructor_val): Check that we don't fold
- into external static.
-
-2010-09-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR target/44452
- * config/i386/i386.opt (mvect8-ret-in-mem): Define.
- * config/i386/i386.c (ix86_target_string): Handle -mvect8-ret-in-mem.
- (ix86_solaris_return_in_memory): Remove.
- * config/i386/i386-protos.h (ix86_solaris_return_in_memory): Remove.
- * config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): Remove.
- (TARGET_SUBTARGET_DEFAULT): Redefine.
- * config/i386/sol2-10.h (TARGET_SUBTARGET_DEFAULT): Update comment.
- * config/i386/vx-common.h (SUBTARGET_RETURN_IN_MEMORY): Remove.
- (TARGET_SUBTARGET_DEFAULT): Redefine.
- * doc/invoke.texi (Option Summary, i386 and x86-64 Options): Add
- -mvect8-ret-in-mem.
- (i386 and x86-64 Options): Document -mvect8-ret-in-mem.
-
-2010-09-29 Alan Modra <amodra@gmail.com>
-
- PR target/45807
- * config/rs6000/aix.h (SETUP_FRAME_ADDRESSES): Delete.
- * config/rs6000/linux64.h (SETUP_FRAME_ADDRESSES): Delete.
- * config/rs6000/rs6000-protos.h (rs6000_aix_emit_builtin_unwind_init):
- Delete.
- * config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init): Delete.
- (rs6000_emit_prologue): Don't just create frame save info for r2,
- actually save r2.
-
-2010-09-28 Richard Henderson <rth@redhat.com>
-
- * config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Output 8 bytes
- when 8 bytes are requested.
-
-2010-09-28 Tristan Gingold <gingold@adacore.com>
-
- * config/avr/avr.c (expand_prologue): Set
- current_function_static_stack_size.
-
-2010-09-28 Tristan Gingold <gingold@adacore.com>
-
- * config/alpha/alpha.md: Change the initial condition of the
- probing loop.
-
-2010-09-28 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/sse.md (*avx_<umaxmin:code><mode>3):
- Split from *avx_<maxmin:code><mode>3.
- (*avx_<smaxmin:code><mode>3): Ditto.
- * config/i386/i386.md (maxmin): Remove code iterator.
-
-2010-09-27 Ian Lance Taylor <iant@google.com>
-
- * config/i386/i386.c (ix86_supports_split_stack): -fsplit-stack
- requires assembler support for CFI directives.
-
-2010-09-27 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (dwarf2out_cfi_label): Use ASM_OUTPUT_DEBUG_LABEL.
-
-2010-09-27 Hans-Peter Nilsson <hp@axis.com>
-
- * emit-rtl.c (reorder_insns_nobb) [ENABLE_CHECKING]: Sanity-check
- that AFTER is not in the range FROM..TO, inclusive.
-
-2010-09-27 Hans-Peter Nilsson <hp@axis.com>
- Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/45792
- * cfgcleanup.c (try_head_merge_bb): New rtx vector nextptr.
- If not all insns are to be merged, for each edge, stash the
- next candidate after the to-be-merged insns before doing the
- merge, and use them for the retry at the new insertion point.
- Handle CC0 targets when retrying.
-
-2010-09-27 Ian Lance Taylor <iant@google.com>
-
- * common.opt (fsplit-stack): New option.
- * opts.c (decode_options): Set flag_split_stack to final value.
- * target.def (supports_split_stack): New hook.
- * gcc.c (STACK_SPLIT_SPEC): Define.
- (LINK_COMMAND_SPEC): Use STACK_SPLIT_SPEC.
- * doc/invoke.texi (Option Summary): Mention -fsplit-stack.
- (Code Gen Options): Document -fsplit-stack.
- * doc/extend.texi (Function Attributes): Mention no_split_stack.
- (Function Attributes): Document no_split_stack.
- * doc/tm.texi.in (Stack Smashing Protection): Add @hook
- TARGET_SUPPORTS_SPLIT_STACK.
- * doc/tm.texi: Rebuild.
- * function.c (thread_prologue_and_epilogue_insns): If
- flag_split_stack, add split stack prologue.
- * explow.c (allocate_dynamic_stack_space): Support -fsplit-stack.
- * varasm.c (saw_no_split_stack): New static variable.
- (assemble_start_function): Set saw_no_split_stack if the function
- has the no_split_stack attribute.
- (file_end_indicate_split_stack): New function.
- * output.h (file_end_indicate_split_stack): Declare.
- * libgcc-std.ver (GCC_4.6.0): Add -fsplit-stack support variables
- and function.
- * doc/libgcc.texi (Miscellaneous routines): Document -fsplit-stack
- routines.
- * config/i386/i386.c (ix86_option_override_internal): Don't set
- expand_builtin_va_start to NULL if -fsplit-stack.
- (ix86_function_regparm): Reduce local regparm by 1 for 32-bit
- -fsplit-stack.
- (ix86_va_start): If -fsplit-stack, get overflow pointer from
- scratch register set by prologue.
- (ix86_code_end): If -fsplit-stack, call
- file_end_indicate_split_stack.
- (ix86_supports_split_stack): New static function.
- (SPLIT_STACK_AVAILABLE): Define.
- (split_stack_prologue_scratch_regno): New static function.
- (split_stack_fn): New static variable.
- (ix86_expand_split_stack_prologue): New function.
- (ix86_live_on_entry): New static function.
- (ix86_legitimate_address_p): Handle UNSPEC_STACK_CHECK.
- (output_pic_addr_const): Likewise.
- (i386_asm_output_addr_const_extra): Likewise.
- (ix86_expand_call): Change return type to rtx. Return the new
- call instruction.
- (TARGET_SUPPORTS_SPLIT_STACK): Define.
- (TARGET_EXTRA_LIVE_ON_ENTRY): Define.
- * config/i386/i386.md (UNSPEC_STACK_CHECK): Define.
- (split_stack_prologue, split_stack_return): New insns.
- (split_stack_space_check): New insn.
- * config/i386/i386.h (struct machine_function): Add
- split_stack_varargs_pointer field.
- * config/i386/linux.h (TARGET_CAN_SPLIT_STACK): Define.
- (TARGET_THREAD_SPLIT_STACK_OFFSET): Define.
- * config/i386/linux64.h (TARGET_CAN_SPLIT_STACK): Define.
- (TARGET_THREAD_SPLIT_STACK_OFFSET): Define.
- * config/i386/i386-protos.h (ix86_expand_split_stack_prologue):
- Declare.
- (ix86_expand_call): Update declaration.
-
-2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * doc/objc.texi (Type encoding): Added the new 'long double' (D)
- code. Added byref, which was missing in the list of codes.
- Explain that enumeration values are encoded as the integer type
- that the compiler uses to store them. Explain and make examples
- of how 'const' interacts with pointers, and the complication of
- the encoding of 'const char *'.
- (Legacy type encoding): New subsection, explaining that GCC emits
- incorrect type encodings for the NeXT runtime for compatibility
- reasons.
- (@@encode): New subsection, explaining @encode and particularly
- that protocol qualifiers are not recognized inside an @encode()
- expression.
- (Method signatures): New subsection, explaining how method
- signatures are encoded.
-
-2010-09-27 Nicola Pero <nicola.pero@meta-innovation.com>
-
- Merge from 'apple/trunk' branch on FSF servers. Removed small
- change in build_conditional_expr that had been added when fixing
- PR objc/27377 and which did the same check in a less complete way.
-
- 2005-12-15 Fariborz Jahanian <fjahanian@apple.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
- * c-typeck.c (build_conditional_expr): For two ObjC pointer types,
- use their ObjC common type.
-
-2010-09-27 Richard Guenther <rguenther@suse.de>
-
- * dbxout.c (dbxout_symbol): Use DECL_FILE_SCOPE_P.
-
-2010-09-27 Jie Zhang <jie@codesourcery.com>
-
- * print-tree.c (print_node): Print in-constant-pool.
-
-2010-09-27 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.h (CLASS_MAX_NREGS): Also handle XCmode.
- (UNITS_PER_WORD): Define only when IN_LIBGCC2 is undefined.
- (MOVE_MAX_PIECES): Redefine using UNITS_PER_WORD.
- (ASM_OUTPUT_AVX_PREFIX): Simplify pointer addition.
-
-2010-09-26 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (pro_epilogue_adjust_stack_<mode>_add): Merge
- from pro_epilogue_adjust_stack_<mode>_{1,2}.
- (pro_epilogue_adjust_stack_<mode>_add): Rename from
- pro_epilogue_adjust_stack_<mode>_3.
- * config/i386/i386.c (pro_epilogue_adjust_stack): Update for
- renamed pro_epilogue_adjust_stack_{si,di}_add.
- (ix86_expand_prologue): Use indirect functions. Update for renamed
- pro_epilogue_adjust_stack_{si,di}_sub.
-
-2010-09-26 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (movmsk_df): New insn.
- (signbitdf): Split out of signbit<mode>2. Generate movmsk_df
- sequence for TARGET_SSE_MATH.
-
-2010-09-26 Richard Sandiford <rdsandiford@googlemail.com>
-
- * config/mips/mips.c (mips_builtin_decls): Declare.
- (mips_init_builtins): Store function declarations in
- mips_builtin_decls.
- (mips_builtin_decl): New function.
- (TARGET_BUILTIN_DECL): Define.
-
-2010-09-25 Kai Tietz <kai.tietz@onevision.com>
- Richard Henderson <rth@redhat.com>
-
- * config/i386/cygwin.asm: Include auto-host.h.
- (cfi_startproc, cfi_endproc, cfi_adjust_cfa_offset,
- cfi_def_cfa_register, cfi_register, cfi_push, cfi_pop): New macros.
- (__chkstk, __alloca): Annotate for dwarf2 unwind info. Drop
- alignment code from the 64-bit path. Use gas local labels.
- * config/i386/i386.md (pro_epilogue_adjust_stack_<mode>_2): Macroize
- from _di_2. Remove the useless constant integer argument.
- (pro_epilogue_adjust_stack_<mode>_3): New.
- (allocate_stack_worker_probe_<mode>): Macroize from
- allocate_stack_worker_{32,64}. Use __chkstk_ms. Update all users.
- * config/i386/i386.c (ix86_expand_prologue): Use __chkstk_ms;
- use gen_pro_epilogue_adjust_stack_*_3 and annotate it.
- (__chkstk_ms): New function.
- * config/i386/t-cygming (LIB1ASMFUNCS): Add _chkstk_ms.
- * config/i386/t-interix: Likewise.
- * configure.ac (HAVE_GAS_CFI_DIRECTIVE): Export for target.
- (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): Likewise.
- (HAVE_GAS_CFI_SECTIONS_DIRECTIVE): Likewise.
- * configure, config.in: Rebuild.
-
-2010-09-25 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-inline.c (copy_bb): Use GSI_CONTINUE_LINKING when inserting new
- statements because of the return slot optimization.
-
-2010-09-25 Anatoly Sokolov <aesok@post.ru>
-
- * config/avr/avr.h (CLASS_LIKELY_SPILLED_P): Remove.
- * config/avr/avr-protos.h (class_likely_spilled_p): Remove.
- * config/avr/avr.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
- (class_likely_spilled_p): Rename to...
- (avr_class_likely_spilled_p): ...this. Make static. Change argument
- type to reg_class_t.
-
-2010-09-24 Jan Hubicka <jh@suse.cz>
-
- * lto-symtab.c (lto_symtab_entry_def): Add guessed field.
- (lto_symtab_resolve_symbols): Set it.
- (lto_symtab_merge_decls_1): Do not compute used_from_object_file;
- store resolution field in cgraph/varpool.
- * cgraph.c (cgraph_same_body_alias, cgraph_add_thunk): Return node.
- (cgraph_get_node_or_alias, cgraph_get_node_or_alias): Constify.
- (cgraph_dump_node): Drop used_from_object_file.
- (cgraph_clone_node, cgraph_create_virtual_clone): Likewise.
- (cgraph_function_body_availability): Use decl_replaceable_p.
- (cgraph_make_node_local): Set resolution to LDPR_PREVAILING_DEF_IRONLY.
- (cgraph_can_remove_if_no_direct_calls_and_refs): Use
- cgraph_used_from_object_file_p.
- (cgraph_will_be_removed_from_program_if_no_direct_calls): Use
- cgraph_used_from_object_file_p.
- (resolution_used_from_other_file_p): New functoin.
- (cgraph_used_from_object_file_p): New predicate.
- * cgraph.h: Include plugin-api.h
- (struct cgraph_local_info): Remove used_from_object_file.
- (struct cgraph_node): Add resolution field.
- (struct varpool_node): Likewise; remove used_from_object_file;
- reove const_value_known.
- (cgraph_get_node, cgraph_get_node_or_alias, cgraph_node,
- cgraph_same_body_alias, cgraph_add_thunk): Update prototypes.
- (resolution_used_from_other_file_p, cgraph_used_from_object_file_p,
- varpool_used_from_object_file_p): Declare.
- (varpool_get_node, varpool_extra_name_alias): Update prototype.
- * tree.h (DECL_REPLACEABLE_P): Remove.
- (decl_replaceable_p, decl_binds_to_current_def_p): Declare.
- * final.c (rest_of_clean_state): Use decl_binds_to_current_def_p.
- * lto-cgraph.c (lto_output_node, lto_output_varpool_node,
- input_overwrite_node, input_node, input_varpool_node): Stream
- resolution.
- * expr.c (expand_expr_real_1): Use const_value_known_p
- * ipa.c (ipa_discover_readonly_nonaddressable_var): Do not set
- const_value_known.
- (cgraph_externally_visible_p): Use cgraph_used_from_object_file_p.
- (function_and_variable_visibility): Set resolution for local vars
- and functions; use varpool_used_from_object_file_p.
- * varasm.c (resolution_to_local_definition_p, resolution_local_p): New
- static functions.
- (default_binds_local_p_1): Use resolutoin info.
- (decl_binds_to_current_def_p, decl_replaceable_p): New functions.
- * varpool.c (varpool_get_node): Constify.
- (const_value_known_p): Do not use vnode->const_value_known;
- use decl_replaceable_p.
- (varpool_finalize_decl): Do not set const_value_known.
- (cgraph_variable_initializer_availability): Use decl_replaceable_p
- (varpool_extra_name_alias): Return new node.
- (varpool_used_from_object_file_p): New function.
-
-2010-09-24 Richard Henderson <rth@redhat.com>
-
- * config/ia64/ia64.c (ia64_dwarf_handle_frame_unspec): New.
- (TARGET_DWARF_HANDLE_FRAME_UNSPEC): New.
- (do_spill): Use REG_CFA_OFFSET.
- (ia64_expand_prologue): Use REG_CFA_ADJUST_CFA and REG_CFA_REGISTER
- as appropriate.
- (ia64_expand_epilogue): Likewise.
- (process_set): Split into ...
- (process_cfa_adjust_cfa): this,
- (process_cfa_register): this,
- (process_cfa_offset): and this new function.
- (ia64_asm_unwind_emit): Use them. Expect REG_CFA_* notes
- instead of REG_FRAME_RELATED_EXPR.
-
-2010-09-24 Olivier Hainque <hainque@adacore.com>
-
- * config/i386/vx-common.h (DBX_REGISTER_NUMBER): Reinstate.
-
-2010-09-24 Jan Hubicka <jh@suse.cz>
-
- * doc/extend.texi: (attribute leaf): Document.
- * tree.c (local_define_builtin): Handle ECF_LEAF.
- (build_common_builtin_nodes): Set ECF_LEAF where needed.
- * tree.h (ECF_LEAF): New.
- * ipa-reference.c (propagate_bits): For leaf calls propagate ever
- overwrittable and unavailable functions.
- (ipa_init): Put all_module_statics into optimization_summary_obstack.
- (copy_global_bitmap): Do not copy all_module_statics.
- (read_write_all_from_decl): Use cgraph_node argument; handle ECF_LEAF.
- (propagate): Handle overwritable and unavailable leaf functions;
- initialize global info for overwritable and unavailable leaf functions;
- do not free all module statics.
- (ipa_reference_get_not_{read,written}_global): Leaf calls don't clobber
- local statics.
- * calls.c (flags_from_decl_or_type): Handle leaf.
- * tree-cfg.c (stmt_can_make_abnormal_goto): Leaf functions can't do
- abnormal gotos.
-
-2010-09-24 Basile Starynkevitch <basile@starynkevitch.net>
-
- * gengtype.c: Reindented.
- * gengtype.h: Reindented.
- * gengtype-parse.c: Reindented.
-
-2010-09-24 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/45738
- PR tree-optimization/45741
- * expr.c (string_constant): Allow CONST_DECL too;
- check that DECL_INITIAL is set.
- * varpool.c (const_value_known_p): Only look into VAR_DECL
- and CONST_DECL.
-
-2010-09-24 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (undef): New.
-
-2010-09-24 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/45234
- * rtl.h (enum global_rtl_index): Add
- GR_VIRTUAL_PREFERRED_STACK_BOUNDARY.
- (LAST_VIRTUAL_POINTER_REGISTER): Define.
- (virtual_preferred_stack_boundary_rtx,
- VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM): Define.
- (LAST_VIRTUAL_REGISTER): Increase by one.
- (REGNO_PTR_FRAME_P): Use LAST_VIRTUAL_POINTER_REGISTER
- instead of LAST_VIRTUAL_REGISTER.
- * function.c (instantiate_new_reg): Handle
- virtual_preferred_stack_boundary_rtx.
- * emit-rtl.c (init_virtual_regs): Handle
- VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM.
- (init_emit_regs): Initialize virtual_preferred_stack_boundary_rtx.
- * explow.c (round_push): If crtl->preferred_stack_boundary
- is smaller than MAX_SUPPORTED_STACK_ALIGNMENT, use
- virtual_preferred_stack_boundary_rtx alignment instead of
- crtl->preferred_stack_boundary alignment.
- (allocate_dynamic_stack_space): Use CONST_INT_P and REG_P
- macros. Never decrease crtl->preferred_stack_boundary,
- use crtl->preferred_stack_boundary or MAX_SUPPORTED_STACK_ALIGNMENT
- instead of PREFERRED_STACK_BOUNDARY. Don't modify
- stack_pointer_delta in dynamic allocation, even when size
- is constant.
- (probe_stack_range, anti_adjust_stack_and_probe): Use CONST_INT_P
- macro.
- * print-rtl.c (print_rtx): Handle
- VIRTUAL_PREFERRED_STACK_BOUNDARY_REGNUM.
- * config/alpha/alpha.h (NONSTRICT_REG_OK_FP_BASE_P): Use
- LAST_VIRTUAL_POINTER_REGISTER instead of LAST_VIRTUAL_REGISTER.
- * config/frv/frv.c (frv_emit_movsi): Likewise.
- * config/arm/arm.c (thumb1_legitimate_address_p): Likewise.
- * config/rs6000/rs6000.c (virtual_stack_registers_memory_p):
- Likewise.
-
- Revert:
- 2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
-
- PR middle-end/45234
- * calls.c (expand_call): Make sure that all variable sized
- adjustments are multiple of preferred stack boundary after
- stack alignment.
-
-2010-09-24 Iain Sandoe <iains@gcc.gnu.org>
- Dominique Dhumieres <dominiq@lps.ens.fr>
-
- PR bootstrap/45751
- * config/darwin-driver.c (darwin_default_min_version):
- Adjust size passed to memcpy in two places.
-
-2010-09-24 Richard Guenther <rguenther@suse.de>
-
- * c-decl.c (pop_scope): Always set file-scope DECL_CONTEXT.
- Make sure to not call set_type_context with error_mark_node.
- * langhooks.c (lhd_set_decl_assembler_name): Use DECL_FILE_SCOPE_P.
-
-2010-09-24 Richard Guenther <rguenther@suse.de>
-
- * Makefile.in (OBJS-onestep): Remove.
- (ALL_HOST_BACKEND_OBJS): Remove libbackend.o.
- (libbackend.a): Remove onestep support.
- (libbackend.o): Remove.
- * configure.ac (--enable-intermodule): Remove.
- * configure: Regenerate.
-
-2010-09-24 Bernd Schmidt <bernds@codesourcery.com>
-
- * cfgcleanup.c (flow_find_head_matching_sequence): Terminate when
- reaching the end of a block if it occurs at a DEBUG_INSN.
-
-2010-09-09 Tristan Gingold <gingold@adacore.com>
-
- PR target/44242
- * config/vms/vms-crt0-64.c: Removed.
- * config/vms/vms-crt0.c: Removed.
- * config/vms/vms-psxcrt0-64.c: Removed.
- * config/vms/vms-psxcrt0.c: Removed.
- * config/vms/vms-ucrt0.c: New file.
- * config/vms/t-vms64: Removed.
- * config/vms/t-vms (VMS_EXTRA_PARTS): Uncomment it. Remove DECC.
- Use $(GCC_FOR_TARGET) to build pcrt0.o and vcrt0.o
- * config.gcc (alpha-dec-vms): Use t-vms.
-
-2010-09-24 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * doc/invoke.texi (-fno-nil-receivers): Tidied up line to remove
- underfull hbox in DVI output.
- (-fobjc-class-cxx-cdtors): Same change.
- (-fobjc-exceptions): Tidied up documentation. Explain what the
- option does, but moved the (lenghty) description of the exception
- syntax into objc.texi.
- (-fobjc-gc): Explain that the option is not useful with the GNU
- runtime.
- (-fzero-link): Explain that the GNU runtime always works in
- "zero-link" mode.
- * doc/objc.texi: All sections: simplified @node declarations
- removing specification of next, previous, up node.
- (Objective-C): Updated introduction.
- (Garbage Collection): Updated. The bohem-gc library is now
- included in gcc itself. Mention that this section only applies to
- the GNU Objective-C runtime.
- (compatibility_alias): Small tidy up.
- (Exceptions): New section mostly containing text previously in the
- description of the -fobjc-exception command-line option.
- (Synchronization): Same.
-
-2010-09-24 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (ix86_code_end): Move the initialization of
- xops array near the consumer. Use AX_REG and SP_REG instead of
- numerical constants.
-
-2010-09-24 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-typeck.c (convert_arguments): Use warning 'too many arguments to
- method [methodname]' for an Objective-C method instead of the less
- satisfactory 'too many arguments to function' (with no method name).
-
-2010-09-23 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-flow.h (execute_update_addresses_taken): Remove parameter.
- * tree-ssa.c (maybe_optimize_var): Tweak comment and dump messages.
- (execute_update_addresses_taken): Remove parameter. Execute the
- optimization unconditionally.
- * passes.c (execute_function_todo): Call execute_update_addresses_taken
- unconditionally if TODO_rebuild_alias is set, else only when optimizing
- if TODO_update_address_taken is set.
-
-2010-09-23 Anatoly Sokolov <aesok@post.ru>
-
- * config/arm/arm.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
- * config/arm/arm-protos.h (arm_output_addr_const_extra): Remove.
- * config/arm/arm.c (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
- (arm_output_addr_const_extra): Make static.
-
-2010-09-23 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (UNSPECV_NOPS): Rename from UNSPEC_NOPS and
- define as unspec_volatile.
- ("nops"): Define as unspec_volatile. Use fputs to write to
- asm_out_file directly. Output NOPs on separate lines using while loop.
- * config/i386/i386.c (ix86_code_end): Use fputs to write to
- asm_out_file directly. Output NOPs on separate lines using while loop.
-
-2010-09-23 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45565
- * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee):
- Make sure to adjust the fndecl before replacing the stmt.
-
-2010-09-23 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45750
- * gimplify.c (gimplify_expr): Properly pass on GS_ERROR when
- gimplifying MEM_REF.
-
-2010-09-23 Alan Modra <amodra@gmail.com>
-
- * config/rs6000/rs6000.c (toc_relative_ok): Delete.
- (rs6000_emit_move): Use SYMBOL_REF_LOCAL_P instead.
-
-2010-09-23 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/44374
- * basic-block.h (enum bb_flags): Add BB_MODIFIED.
- * df-core.c (df_set_bb_dirty): Set it.
- * ifcvt.c (find_memory): Remove function.
- (dead_or_predicable): Use can_move_insns_across.
- * df.h (can_move_insns_across): Declare function.
- * cfgcleanup.c (block_was_dirty): New static variable.
- (try_crossjump_bb, try_forward_edges): Test BB_MODIFIED flag rather
- than df_get_bb_dirty.
- (try_head_merge_bb): New static function.
- (try_optimize_cfg): Call it. Call df_analyze if block_was_dirty
- is set.
- * df-problems.c: Include "target.h"
- (df_simulate_find_uses): New static function.
- (MEMREF_NORMAL, MEMREF_VOLATILE): New macros.
- (find_memory, find_memory_store): New static functions.
- (can_move_insns_across): New function.
- * Makefile.in (df-problems.o): Update dependencies.
-
-2010-09-22 Eric Botcazou <ebotcazou@adacore.com>
-
- PR java/44095
- * config/sparc/linux.h (ASM_SPEC): Pass -K PIC if -findirect-dispatch
- is specified and the suffix of the file isn't ".c".
- * config/sparc/linux64.h (ASM_SPEC): Likewise.
-
-2010-09-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * doc/contrib.texi (Contributors): Allow URL to wrap in PDF output.
- * doc/cppopts.texi: Fix markup of index entry.
- * doc/extend.texi (Constructing Calls): Fix markup of
- __builtin_va_arg_pack and __builtin_va_arg_pack_len definition.
- (Conditionals, C++ Comments, Pragmas, Unnamed Fields, Thread-Local)
- (Vague Linkage, C++ Attributes): Fix markup of index entries and
- keywords.
- * doc/invoke.texi (Option Summary): Fix spacing. Rewrap to
- avoid long lines.
- (C Dialect Options, C++ Dialect Options, Warning Options)
- (Debugging Options, Spec Files, Darwin Options)
- (i386 and x86-64 Options, MIPS Options)
- (RS/6000 and PowerPC Options, Code Gen Options): Fix markup of
- index entries, avoid abbreviations, allow URLs to wrap, avoid
- long lines, avoid overlong pages from long @itemx lists.
- * doc/objc.texi (Garbage Collection): Allow URLs to wrap.
- * doc/standards.texi (Standards): Likewise.
- * doc/trouble.texi (Incompatibilities): Fix markup of index entry.
-
-2010-09-22 Joseph Myers <joseph@codesourcery.com>
-
- * opts-common.c (prune_options): Make static. Work with decoded
- options.
- (decode_cmdline_options_to_array): Call prune_options. Don't
- resize option array here.
- * opts.h (prune_options): Remove prototype.
- * gcc.c (process_command): Take decoded options; don't call
- decode_cmdline_options_to_array here. Use decoded options for argv[0].
- (main): Call decode_cmdline_options_to_array here instead of
- prune_options. Update call to process_command.
- * config/darwin-driver.c: Include opts.h.
- (darwin_default_min_version): Work with decoded options. Don't
- handle -b or -V here.
- * config/darwin.h (darwin_default_min_version): Update prototype.
- (GCC_DRIVER_HOST_INITIALIZATION): Update call to
- darwin_default_min_version.
- * config/i386/cygwin.h (mingw_scan): Update prototype.
- (GCC_DRIVER_HOST_INITIALIZATION): Update call to mingw_scan.
- * config/i386/cygwin1.c: Include opts.h.
- (mingw_scan): Work with decoded options.
- * config/i386/t-cygwin (cygwin1.o): Update dependencies.
- * config/t-darwin (darwin-driver.o): Update dependencies.
-
-2010-09-22 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (-assemble, -compile, -coverage, -debug, -dump,
- -dump=, -dumpbase, -dumpdir, -entry, -entry=, -extra-warnings,
- -for-assembler, -for-assembler=, -for-linker, -for-linker=,
- -force-link, -force-link=, -language, -language=,
- -library-directory, -library-directory=, -no-canonical-prefixes,
- -no-standard-libraries, -no-warnings, -optimize, -output,
- -output=, -pass-exit-codes, -pedantic, -pedantic-errors, -pie,
- -pipe, -prefix, -prefix=, -preprocess, -print-file-name,
- -print-file-name=, -print-libgcc-file-name,
- -print-multi-directory, -print-multi-lib,
- -print-multi-os-directory, -print-prog-name, -print-prog-name=,
- -print-search-dirs, -print-sysroot, -print-sysroot-headers-suffix,
- -profile, -save-temps, -shared, -specs, -specs=, -static,
- -symbolic, -time, -verbose, -param=, -sysroot, coverage, e, u,
- symbolic): New.
- (fhelp, fhelp=, ftarget-help, fversion): Make into aliases.
- * gcc.c (A Short Introduction to Adding a Command-Line Option):
- Remove comment.
- (cc1_options): Correct specs for passing down --help,
- --target-help and --help=*. Add spec for passing down --version.
- (struct option_map, option_map, target_option_translations,
- translate_options): Remove.
- (driver_handle_option): Handle OPT__version, OPT__help, OPT__help_
- and OPT__target_help instead of OPT_fversion, OPT_fhelp,
- OPT_fhelp_ and OPT_ftarget_help.
- (process_command): Don't call translate_options. Call
- decode_cmdline_options_to_array before checking for
- -no-canonical-prefixes using decoded options.
- * opts-common.c (tm.h): Update comment on #include.
- (find_opt): Allow abbreviations of long options.
- (struct option_map, option_map): New.
- (decode_cmdline_option): Use them instead of hardcoding -Wno, -fno
- and -mno handling.
- (target_option_translations): New.
- (decode_cmdline_options_to_array): Handle
- TARGET_OPTION_TRANSLATE_TABLE in driver.
- * opts.c (common_handle_option): Don't handle OPT_fhelp,
- OPT_ftarget_help, OPT_fhelp_ or OPT_fversion.
-
-2010-09-22 Richard Guenther <rguenther@suse.de>
-
- * tree-inline.c (optimize_inline_calls): Schedule cleanups
- only if we inlined something. Block compaction and conditional
- folding are done by cfg cleanup. Schedule update-address-taken.
- (tree_function_versioning): Remove redundant call to number_blocks.
- * tree-optimize.c (execute_cleanup_cfg_post_optimizing): Conditional
- folding is done by cfg cleanup.
- * passes.c (init_optimization_passes): Remove update-address-taken
- pass after IPA inlining.
-
-2010-09-22 Chung-Lin Tang <cltang@codesourcery.com>
-
- * postreload.c (move2add_note_store): Add reg_symbol_ref[] checks
- to update conditions. Fix reg_mode[] check.
-
-2010-09-22 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.md (movhicc): Use expand to check whether
- movhicc is available and split it after reload.
-
-2010-09-22 Richard Guenther <rguenther@suse.de>
-
- * tree-ssanames.c (release_dead_ssa_names): Do not remove
- callee edges here.
- * passes.c (init_optimization_passes): Remove early CFG cleanup.
- * tree-optimize.c (execute_cleanup_cfg_pre_ipa): Remove.
- (pass_cleanup_cfg): Likewise.
- (execute_fixup_cfg): Cleanup.
- * tree-pass.h (pass_cleanup_cfg): Remove.
-
-2010-09-22 Martin Jambor <mjambor@suse.cz>
-
- * gimple-fold.c (fold_gimple_call): New parameter inplace, do not fold
- builtins if it is true.
- (fold_stmt_1): Call, fold_gimple_call always, pass inplace as a
- parameter.
-
-2010-09-22 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (struct access): New field grp_no_warning.
- (create_access_replacement): Set TREE_NO_WARNING according to
- grp_no_warning.
- (create_artificial_child_access): Use build_ref_for_model and set
- grp_no_warning if build_user_friendly_ref_for_offset fails.
- (propagate_subaccesses_across_link): Likewise.
-
-2010-09-22 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/35664
- * config/sparc/constraints.md ('e'): Return NO_REGS if !TARGET_FPU.
- ('f'): Likewise.
-
-2010-09-22 Tristan Gingold <gingold@adacore.com>
-
- * config/alpha/alpha.c (alpha_use_linkage): Initialize target field.
-
-2010-09-22 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.h (MAX_STRINGOP_ALGS): Fix typo in the name.
- * config/i386/i386.c (decide_alg): Update for rename.
-
-2010-09-22 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/45739
- * simplify-rtx.c (simplify_binary_operation_1): Optimize even
- vector mode | CONST0_RTX (mode) and ^ CONST0_RTX (mode).
-
-2010-09-21 Anatoly Sokolov <aesok@post.ru>
-
- * config/rs6000/rs6000.h (OUTPUT_ADDR_CONST_EXTRA): Remove macros.
- * config/rs6000/rs6000-protos.h (rs6000_output_addr_const_extra):
- Remove.
- * config/rs6000/rs6000.c (rs6000_output_addr_const_extra): Make static.
- (TTARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
-
-2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
-
- PR objc/23710
- * c-parser.c (c_parser_objc_method_definition): Check the return
- value of objc_start_method_definition and if false is returned,
- parse the method definition but emit no code.
-
-2010-09-21 Nicola Pero <nicola.pero@meta-innovation.com>
-
- PR objc/25965
- * c-decl.c (detect_field_duplicates): If compiling Objective-C,
- call objc_get_interface_ivars ().
-
-2010-09-21 Kai Tietz <kai.tietz@onevision.com>
-
- PR target/45694
- * config/i386/i386.c (ix86_expand_prologue): Save r10 in case that
- static chain-register is used for 64-bit.
-
-2010-09-21 Richard Guenther <rguenther@suse.de>
-
- * dwarf2out.c (is_cu_die): New function.
- (add_pubtype): Use it.
- (gen_subprogram_die): Likewise.
- (gen_struct_or_union_type_die): Likewise.
- (dwarf2out_finish): Likewise.
- (comp_unit_die): Rename to ...
- (single_comp_unit_die): ... this.
- (comp_unit_die): New function lazily constructing and
- returning single_comp_unit_die.
- (is_cxx, is_fortran, is_ada, debug_dwarf, break_out_comdat_types,
- base_type_die, subrange_type_die, modified_type_die,
- lower_bound_default, add_bound_info, add_prototyped_attribute,
- dwarf2out_vms_debug_main_pointer, scope_die_for, retry_incomplete_types,
- dwarf2out_abstract_function, gen_type_die_with_usage, get_context_die,
- force_decl_die, gen_namespace_die, dwarf2out_decl,
- dwarf2out_start_source_file, dwarf2out_end_source_file,
- prune_unused_types, dwarf2out_finish): Use it.
- (gen_compile_unit_die): For GNU GIMPLE derive DW_AT_language from
- the global list of translation-unit decls.
- (dwarf2out_init): Do not create single_comp_unit_die here.
- (force_decl_die): Handle TRANSLATION_UNIT_DECL.
-
-2010-09-21 Richard Guenther <rguenther@suse.de>
-
- * dwarf2out.c (dwarf2out_decl): Do not always generate a DIE
- for bool for C++.
-
-2010-09-21 Bernd Schmidt <bernds@codesourcery.com>
-
- * config/arm/iterators.md (qhs_extenddi_op): New mode_attr.
- (qhs_extenddi_cstr): Likewise.
- * config/arm/arm.md (zero_extend<mode>di2, extend<mode>di2): Use
- them for the source operand.
-
-2010-09-21 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (ix86_split_ashl): Rename single_width variable
- to half_width. Use GET_MODE_BITSIZE to calculate mode size.
- (ix86_split_ashr): Ditto.
- (ix86_split_lshr): Ditto.
-
-2010-09-21 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45580
- * tree-ssa-propagate.c (substitute_and_fold): Always replace
- regular uses.
- * gimple-fold.c (gimple_fold_obj_type_ref): For a BINFO without
- virtuals fold the call into a regular indirect one.
-
-2010-09-20 Eric Botcazou <ebotcazou@adacore.com>
-
- PR rtl-optimization/42775
- * cfgrtl.c (rest_of_pass_free_cfg): Recompute notes if delay slot
- scheduling is enabled.
-
-2010-09-20 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/45728
- * expr.c (expand_expr_real_1): If op0 isn't REG or MEM, try
- gen_lowpart_common first and if that fails, force_reg first
- before calling gen_lowpart.
-
- PR middle-end/45678
- * cfgexpand.c (expand_one_stack_var_at): Use
- crtl->max_used_stack_slot_alignment as max_align, instead
- of maximum of that and PREFERRED_STACK_BOUNDARY.
- Don't call update_stack_alignment.
-
-2010-09-20 Eric Botcazou <ebotcazou@adacore.com>
-
- * langhooks.h (struct lang_hooks_for_types): Remove hash_types field.
- * langhooks-def.h (LANG_HOOKS_HASH_TYPES): Delete.
- (LANG_HOOKS_FOR_TYPES_INITIALIZER): Remove LANG_HOOKS_HASH_TYPES.
- * system.h (LANG_HOOKS_HASH_TYPES): Poison.
- * tree.c (type_hash_canon): Do not test lang_hooks.types.hash_types.
- (build_nonstandard_integer_type): Likewise.
- (build_range_type_1): New function, built from...
- (build_range_type): ...this. Call build_range_type_1.
- (build_nonshared_range_type): New function.
- (build_array_type_1): New function, built from...
- (build_array_type: ...this. Call build_array_type_1.
- (build_nonshared_array_type): New function.
- * tree.h (build_nonshared_range_type): Declare.
- (build_nonshared_array_type): Likewise.
-
-2010-09-20 Anatoly Sokolov <aesok@post.ru>
-
- * config/arm/arm.h (CLASS_LIKELY_SPILLED_P): Remove.
- * config/arm/arm.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
- (arm_class_likely_spilled_p): New function.
-
-2010-09-20 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (ix86_expand_ashl_const): Rewrite using
- indirect functions.
- (ix86_split_ashl): Ditto.
- (ix86_split_ashr): Ditto.
- (ix86_split_lshr): Ditto.
- (ix86_adjust_counter): Ditto.
-
-2010-09-20 Nicola Pero <nicola.pero@meta-innovation.com>
-
- * c-family/c-common.h (constant_string_class): Documented with
- comment identical to the one already in c-common.c.
-
-2010-09-20 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (any_cfis_emitted): New static variable.
- (add_fde_cfi): Set it.
- (dwarf2out_frame_debug): Clear it before processing,
- if it is set afterwards, flush any queued reg saves.
-
- PR debug/45124
- * dwarf2out.c (add_accessibility_attribute): Assume
- DW_ACCESS_private as the default for dwarf_version > 2
- and DW_TAG_class_type parent.
- (gen_inheritance_die): Assume DW_ACCESS_public as the default
- for dwarf_version > 2 and parent other than DW_TAG_class_type.
-
-2010-09-20 Rafael Carre <rafael.carre@gmail.com>
-
- PR target/45726
- * arm.md (arm_movt): Only enable on machines with MOVT.
-
-2010-09-20 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/arm.c (arm_address_offset_is_imm): New.
- (arm_early_store_addr_dep): New.
- (arm_early_load_addr_dep): New.
- * config/arm/arm-protos.h (arm_early_store_addr_dep): Declare.
- (arm_early_load_addr_dep): Declare.
- (arm_address_offset_is_imm): Declare.
- * config/arm/cortex-m4.md: New file.
- * config/arm/cortex-m4-fpu.md: New file.
- * config/arm/arm.md: Include cortex-m4.md and cortex-m4-fpu.md.
- (attr generic_sched): Exclude cortexm4.
- (attr generic_vfp): Exclude cortexm4.
-
-2010-09-20 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45704
- * gimplify.c (gimplify_modify_expr_rhs): Preserve volatileness.
-
-2010-09-20 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimize/45605
- * cgraph.h (const_value_known_p): Declare.
- (varpool_decide_const_value_known): Remove.
- * tree-ssa-ccp.c (get_base_constructor): Use it.
- * lto-cgraph.c (compute_ltrans_boundary): Likewise.
- * expr.c (string_constant): Likewise.
- * tree-ssa-loop-ivcanon.c (constant_after_peeling): Likewise.
- * ipa.c (ipa_discover_readonly_nonaddressable_var,
- function_and_variable_visibility): Likewise.
- * gimplify.c (gimplify_call_expr): Likewise.
- * gimple-fold.c (get_symbol_constant_value): Likewise.
- * varpool.c (varpool_decide_const_value_known): Replace by...
- (const_value_known_p): ... this one; handle other kinds of DECLs
- too and work for automatic vars.
- (varpool_finalize_decl): Use const_value_known_p.
-
-2010-09-20 Rafael Carre <rafael.carre@gmail.com>
-
- PR target/45726
- * arm.md (arm_movtas_ze): Only enable on machine with MOVT.
-
-2010-09-20 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45705
- * tree-ssa-dom.c (optimize_stmt): Perform redundant store elimination.
-
-2010-09-20 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/45695
- * combine.c (try_combine): When splitting a two set pattern,
- make sure the pattern which will be put into i2 doesn't use REGs
- or MEMs set by insns in between i2 and i3.
-
-2010-09-19 Jan Hubicka <jh@suse.cz>
-
- PR lto/44246
- * lto-cgraph.c (input_cgraph_1, input_varpool_1): Avoid
- processing same node twice.
-
-2010-09-19 Anatoly Sokolov <aesok@post.ru>
-
- * config/bfin/bfin.h (CLASS_LIKELY_SPILLED_P): Remove.
- * config/bfin/bfin.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
- (bfin_class_likely_spilled_p): New function
-
-2010-09-19 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/45714
- * tree-vect-stmts.c (vect_transform_stmt): Use a dummy statement
- created in vectorizable_call instead of the original statement in
- def stmt updates.
-
-2010-09-19 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386-protos.h (split_double_mode): New prototype.
- (split_di, split_ti): Remove prototypes.
- * config/i386/i386.c (split_double_mode): New function.
- (split_di, split_ti): Remove.
- (ix86_expand_branch): Use split_double_mode.
- (ix86_split_to_parts): Ditto.
- (ix86_split_ashl): Ditto.
- (ix86_split_ashr): Ditto.
- (ix86_split_lshr): Ditto.
- (ix86_force_to_memory): Ditto.
- * config/i386/i386.md: Use split_double_mode in double-mode splitters.
-
-2010-09-18 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/45453
- * cgraphunit.c (cgraph_finalize_function): Consider comdat & external
- virtual functions are reachable.
- * ipa-inline.c (cgraph_clone_inlined_nodes): Likewise.
- * ipa.c (cgraph_remove_unreachable_nodes): Likewise.
- * ipa-prop.c (ipa_modify_formal_parameters): Clear DECL_VIRTUAL_P
- when modifying function.
-
-2010-09-18 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/45605
- * cgraphunit.c (cgraph_analyze_functions): Allocate bitmap obstack.
- * gimple-fold.c (static_object_in_other_unit_p): New function.
- (canonicalize_constructor_val): Use it.
- (get_symbol_constant_value): Be reaqdy for canonicalize_constructor_val
- returning NULL.
- (gimple_fold_obj_type_ref_known_binfo): Use
- static_object_in_other_unit_p.
-
-2010-09-18 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45709
- * tree-inline.c (copy_phis_for_bb): Delay commit of edge
- insertions until after all PHI nodes of the block are processed.
-
-2010-09-18 Tijl Coosemans <tijl@coosemans.org>
-
- * config/i386/freebsd.h (SUBTARGET32_DEFAULT_CPU): Add.
-
-2010-09-18 Kai Tietz <kai.tietz@onevision.com>
-
- * config.gcc (*-w64-mingw*): Correct typo about t-dfprules.
-
-2010-09-18 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45709
- * tree-inline.c (copy_phis_for_bb): Fixup new_edge when we splitted it.
-
-2010-09-17 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-dependences.c (dot_deps): Add DEBUG_FUNCTION.
- (dot_deps_stmt): Same.
- * graphite-poly.c (dot_lst): Same.
- * graphite-scop-detection.c (dot_all_scops): Same.
- (dot_scop): Same.
-
-2010-09-17 Sebastian Pop <sebastian.pop@amd.com>
-
- Revert:
- 2009-12-16 Ben Elliston <bje@au.ibm.com>
-
- * tree-data-ref.c (dot_rdg_1): Added back.
- (dot_rdg): Same. Added "#if 0" around system call.
-
-2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
- Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (initial_ix86_tune_features): Add
- X86_TUNE_PAD_SHORT_FUNCTION.
- (ix86_code_end): Pad with 8 NOPs for TARGET_PAD_SHORT_FUNCTION.
- (ix86_count_insn): New.
- (ix86_pad_short_function): Likewise.
- (ix86_reorg): Support TARGET_PAD_SHORT_FUNCTION.
-
- * config/i386/i386.h (ix86_tune_indices): Add
- X86_TUNE_PAD_SHORT_FUNCTION.
- (TARGET_PAD_SHORT_FUNCTION): New.
-
- * config/i386/i386.md (UNSPEC_NOPS): New.
- (nops): Likewise.
-
-2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
-
- PR middle-end/45234
- * calls.c (expand_call): Make sure that all variable sized
- adjustments are multiple of preferred stack boundary after
- stack alignment.
-
-2010-09-17 DJ Delorie <dj@redhat.com>
-
- * config/rx/rx.c (rx_print_operand): If __builtin_rx_setpsw() is
- passed an invalid value, print an error instead of ICEing.
- (valid_psw_flag): New.
- (rx_expand_builtin): Call it for setpsw/clrpsw.
- (rx_expand_builtin_mvtipl): Pass an integer to IN_RANGE, not an RTX.
-
- * config/rx/rx.md (bitclr): Don't mark the output as early-clobber.
- (bitclr_in_memory): Likewise.
- (clrspw, setpsw, mvfc, mvtc, mvtipl): Make volatile.
-
-2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
-
- PR middle-end/45678
- * cfgexpand.c (update_stack_alignment): New.
- (get_decl_align_unit): Use it.
- (expand_one_stack_var_at): Call update_stack_alignment.
-
-2010-09-17 Richard Guenther <rguenther@suse.de>
-
- * lto-streamer-in.c (lto_input_ts_translation_unit_decl_tree_pointers):
- Properly copy the read string.
-
-2010-09-17 Joseph Myers <joseph@codesourcery.com>
-
- * doc/options.texi (Variable): Document.
- * optc-gen.awk, opth-gen.awk: Handle Variable records. Don't
- generate target_flags declarations explicitly. Don't define
- VarExists variables for the driver.
- * common.opt (target_flags): New Variable record.
- (flag_dump_unnumbered, flag_dump_unnumbered_links,
- flag_var_tracking, flag_var_tracking_assignments,
- flag_var_tracking_assignments_toggle): Don't mark variables with
- VarExists.
- * config/i386/i386.c (ix86_isa_flags): Don't define here.
- * config/i386/i386.opt (ix86_isa_flags): Define here.
- * config/mcore/mcore.c (mcore_stack_increment): Don't define here.
- * config/mcore/mcore.opt (mcore_stack_increment): Don't mark with
- VarExists.
- * flags.h (flag_dump_unnumbered, flag_var_tracking): Remove.
- * print-rtl.c (flag_dump_unnumbered, flag_dump_unnumbered_links):
- Only define for generator programs.
- * rtlanal.c (target_flags): Remove.
- * toplev.c (flag_var_tracking, flag_var_tracking_assignments,
- flag_var_tracking_assignments_toggle): Remove.
-
-2010-09-17 Michael Matz <matz@suse.de>
-
- PR tree-optimization/43432
- * tree-vect-data-refs.c (vect_analyze_data_ref_access):
- Accept backwards consecutive accesses.
- (vect_create_data_ref_ptr): If step is negative generate
- decreasing IVs.
- * tree-vect-stmts.c (vectorizable_store): Reject negative steps.
- (perm_mask_for_reverse, reverse_vec_elements): New functions.
- (vectorizable_load): Handle loads with negative steps when easily
- possible.
-
-2010-09-03 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (compute_ltrans_boundary): Use const_value_known.
-
-2010-09-03 Naveen H.S <naveen.S@kpitcummins.com>
-
- * config/v850/v850.c (v850_function_value_regno_p): Make static.
- Adjust comments. Declare.
- (TARGET_FUNCTION_VALUE_REGNO_P): Define.
- * config/v850/v850.h (FUNCTION_VALUE_REGNO_P): Delete.
-
-2010-09-17 Richard Guenther <rguenther@suse.de>
-
- * common.opt (combine): Remove.
- * gcc.c (default_compilers): Remove specs testing combine.
- The C compilers no longer can combine.
- (option_map): Remove -combine.
- (display_help): Remove -combine.
- (driver_handle_option): Remove OPT_combine handling.
- (compile_input_file_p): Remove.
- (do_spec): Remove code concerning combine.
- (main): Likewise.
- * doc/invoke.texi: Remove traces of -combine.
- * lto-wrapper.c (run_gcc): Do not pass -combine to the compiler driver.
-
-2010-09-17 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45678
- * builtins.c (fold_builtin_memory_op): Always properly adjust
- alignment of memory accesses.
-
-2010-09-16 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (input_overwrite_node): Do not set DECL_EXTERNAL when
- processing clone.
-
-2010-09-16 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386-protos.h (ix86_split_idivmod): New prototype.
-
- * config/i386/i386.c (predict_jump): Add prototype.
- (flag_opts): Add -m8bit-idiv.
- (ix86_split_idivmod): New.
-
- * config/i386/i386.md (UNSPEC_DIV_ALREADY_SPLIT): New.
- Add 2 splitters for SI/DI mode divide.
- (divmod<mode>4_1): New pattern.
- (udivmod<mode>4_1): Likewise.
- (testdi_ccno_1): Likewise.
-
- * config/i386/i386.opt (m8bit-idiv): New.
-
- * doc/invoke.texi: Document -m8bit-idiv.
-
-2010-09-16 Reza Yazdani <reza.yazdani@amd.com>
-
- PR bootstrap/45680
- * config/i386/i386.c (min_insn_size): Moved out of the
- ASM_OUTPUT_MAX_SKIP_PAD ifdef.
-
-2010-09-16 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (lto_output_node): Fix handling of clones.
- * ipa.c (cgraph_remove_unreachabloe_nodes): Fix handling of
- unreachable clones with reachable clones.
- * tree-inline.c (copy_bb): Fix sanity checking when producing
- unreachable clone.
-
-2010-09-16 Anatoly Sokolov <aesok@post.ru>
-
- * config/m32r/m32r.c (TARGET_MEMORY_MOVE_COSTS): Remove.
- (TARGET_MEMORY_MOVE_COST): Define.
- (m32r_function_arg): Annotate argument 'type' with ATTRIBUTE_UNUSED.
-
-2010-09-16 Alexander Monakov <amonakov@ispras.ru>
-
- * sel-sched.c (move_cond_jump): Use tidy_control_flow instead of
- maybe_tidy_empty_bb.
-
- Revert:
- 2010-09-06 Alexander Monakov <amonakov@ispras.ru>
- * sel-sched-ir.c (maybe_tidy_empty_bb): Export.
-
-2010-09-16 Joseph Myers <joseph@codesourcery.com>
-
- * target.def (target_option.optimization): New hook.
- * doc/tm.texi.in (OPTIMIZATION_OPTIONS): Change to
- TARGET_OPTION_OPTIMIZATION hook.
- * doc/tm.texi: Regenerate.
- * hooks.c (hook_void_int_int): New.
- * hooks.h (hook_void_int_int): Declare.
- * opts.c: Don't include tm_p.h.
- (decode_options): Use targetm.target_option.optimization instead
- of OPTIMIZATION_OPTIONS.
- * system.h (OPTIMIZATION_OPTIONS): Poison.
- * config/arm/arm-protos.h (arm_optimization_options): Remove.
- * config/arm/arm.c (TARGET_OPTION_OPTIMIZATION): Define.
- (arm_optimization_options): Rename to arm_option_optimization.
- Make static.
- * config/arm/arm.h (OPTIMIZATION_OPTIONS): Remove.
- * config/cris/cris.c (TARGET_OPTION_OPTIMIZATION): Define.
- (cris_option_optimization): New.
- * config/cris/cris.h (OPTIMIZATION_OPTIONS): Remove.
- * config/crx/crx.c (TARGET_OPTION_OPTIMIZATION): Define.
- (crx_option_optimization): New.
- * config/crx/crx.h (OPTIMIZATION_OPTIONS): Remove.
- * config/frv/frv-protos.h (frv_optimization_options): Remove.
- * config/frv/frv.c (TARGET_OPTION_OPTIMIZATION): Define.
- (frv_optimization_options): Rename to frv_option_optimization.
- Make static.
- * config/frv/frv.h (OPTIMIZATION_OPTIONS): Remove.
- * config/h8300/h8300.c (h8300_option_optimization): New.
- (TARGET_OPTION_OPTIMIZATION): Define.
- * config/h8300/h8300.h (OPTIMIZATION_OPTIONS): Remove.
- * config/i386/i386-protos.h (optimization_options): Remove.
- * config/i386/i386.c (optimization_options): Rename to
- ix86_option_optimization. Make static.
- (TARGET_OPTION_OPTIMIZATION): Define.
- * config/i386/i386.h (OPTIMIZATION_OPTIONS): Remove.
- * config/ia64/ia64-protos.h (ia64_optimization_options): Remove.
- * config/ia64/ia64.c (TARGET_OPTION_OPTIMIZATION): Define.
- (ia64_optimization_options): Rename to ia64_option_optimization.
- Make static. Call SUBTARGET_OPTIMIZATION_OPTIONS.
- * config/ia64/ia64.h (OPTIMIZATION_OPTIONS): Remove. Remove
- commented-out definition.
- * config/ia64/vms.h (SUBTARGET_OPTIMIZATION_OPTIONS): Define
- instead of OPTIMIZATION_OPTIONS.
- * config/m32r/m32r.c (TARGET_OPTION_OPTIMIZATION): Define.
- (m32r_option_optimization): New.
- * config/m32r/m32r.h (OPTIMIZATION_OPTIONS): Remove.
- * config/m68hc11/m68hc11-protos.h (m68hc11_optimization_options):
- Remove.
- * config/mcore/mcore.c (TARGET_OPTION_OPTIMIZATION): Define.
- (mcore_option_optimization): New.
- * config/mcore/mcore.h (OPTIMIZATION_OPTIONS): Remove.
- * config/mep/mep-protos.h (mep_optimization_options): Remove.
- * config/mep/mep.c (TARGET_OPTION_OPTIMIZATION): Define.
- (mep_optimization_options): Rename to mep_option_optimization.
- Make static. Take unused level and size parameters.
- * config/mep/mep.h (OPTIMIZATION_OPTIONS): Remove.
- * config/mmix/mmix.c (TARGET_OPTION_OPTIMIZATION): Define.
- (mmix_option_optimization): New.
- * config/mmix/mmix.h (OPTIMIZATION_OPTIONS): Remove.
- * config/pdp11/pdp11.c (TARGET_OPTION_OPTIMIZATION): Define.
- (pdp11_option_optimization): New.
- * config/pdp11/pdp11.h (OPTIMIZATION_OPTIONS): Remove.
- * config/rs6000/rs6000-protos.h (optimization_options): Remove.
- * config/rs6000/rs6000.c (TARGET_OPTION_OPTIMIZATION): Define.
- (optimization_options): Rename to rs6000_option_optimization.
- Make static.
- * config/rs6000/rs6000.h (OPTIMIZATION_OPTIONS): Remove.
- * config/rx/rx-protos.h (rx_set_optimization_options): Remove.
- * config/rx/rx.c (rx_set_optimization_options): Rename to
- rx_option_optimization. Make static. Take unused level and size
- parameters.
- (TARGET_OPTION_OPTIMIZATION): Define.
- * config/rx/rx.h (OPTIMIZATION_OPTIONS): Remove.
- * config/s390/s390-protos.h (optimization_options): Remove.
- * config/s390/s390.c (optimization_options): Rename to
- s390_option_optimization. Make static. Don't mark size parameter
- unused.
- (TARGET_OPTION_OPTIMIZATION): Define.
- * config/s390/s390.h (OPTIMIZATION_OPTIONS): Remove.
- * config/sh/sh-protos.h (sh_optimization_options): Remove.
- * config/sh/sh.c (TARGET_OPTION_OPTIMIZATION): Define.
- (sh_optimization_options): Rename to sh_option_optimization. Make
- static. Don't mark parameters unused.
- * config/sh/sh.h (OPTIMIZATION_OPTIONS): Remove.
- * config/spu/spu-protos.h (spu_optimization_options): Remove.
- * config/spu/spu.c (TARGET_OPTION_OPTIMIZATION): Define.
- (spu_optimization_options): Rename to spu_option_optimization.
- Make static.
- * config/spu/spu.h (OPTIMIZATION_OPTIONS): Remove.
- * config/v850/v850.c (TARGET_OPTION_OPTIMIZATION): Define.
- (v850_option_optimization): New.
- * config/v850/v850.h (OPTIMIZATION_OPTIONS): Remove.
- * config/xtensa/xtensa.c (TARGET_OPTION_OPTIMIZATION): Define.
- (xtensa_option_optimization): New.
- * config/xtensa/xtensa.h (OPTIMIZATION_OPTIONS): Remove.
-
-2010-09-16 Joseph Myers <joseph@codesourcery.com>
-
- * doc/tm.texi.in (OVERRIDE_OPTIONS): Remove documentation.
- (C_COMMON_OVERRIDE_OPTIONS): Don't refer to OVERRIDE_OPTIONS.
- * doc/tm.texi: Regenerate.
- * system.h (OVERRIDE_OPTIONS): Poison.
- * target.def (override): Default to hook_void_void.
- * targhooks.c (default_target_option_override): Remove.
- * genmodes.c, machmode.def: Update comments mentioning
- OVERRIDE_OPTIONS.
- * config/alpha/alpha-modes.def: Update comment mentioning
- alpha_override_options.
- * config/alpha/alpha-protos.h (override_options): Remove.
- * config/alpha/alpha.c (override_options): Rename to
- alpha_option_override. Call SUBTARGET_OVERRIDE_OPTIONS. Make static.
- (TARGET_OPTION_OVERRIDE): Define.
- * config/alpha/alpha.h (OVERRIDE_OPTIONS): Remove.
- * config/alpha/vms.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead
- of OVERRIDE_OPTIONS.
- * config/arc/arc-protos.h (arc_init): Remove.
- * config/arc/arc.c (TARGET_OPTION_OVERRIDE): Define.
- (arc_init): Rename to arc_option_override. Make static.
- * config/arc/arc.h (ARC_EXTENSION_CPU): Correct comment.
- (OVERRIDE_OPTIONS): Remove.
- * config/arm/arm-protos.h (arm_override_options): Remove.
- * config/arm/arm.c (TARGET_OPTION_OVERRIDE): Define.
- (arm_override_options): Rename to arm_option_override. Make
- static. Call SUBTARGET_OVERRIDE_OPTIONS.
- * config/arm/arm.h (OVERRIDE_OPTIONS): Remove.
- * config/arm/arm.md: Update comment referring to arm_override_options.
- * config/arm/vxworks.h (SUBTARGET_OVERRIDE_OPTIONS): Define
- instead of OVERRIDE_OPTIONS.
- * config/avr/avr-protos.h (avr_override_options): Remove.
- * config/avr/avr.c (TARGET_OPTION_OVERRIDE): Define.
- (avr_override_options): Rename to avr_option_override. Make static.
- * config/avr/avr.h (OVERRIDE_OPTIONS): Remove.
- * config/bfin/bfin-protos.h (override_options): Remove (twice).
- * config/bfin/bfin.c (override_options): Rename to
- bfin_option_override. Make static.
- (TARGET_OPTION_OVERRIDE): Define.
- * config/bfin/bfin.h (OVERRIDE_OPTIONS): Remove.
- * config/cris/cris-protos.h (cris_override_options): Remove.
- * config/cris/cris.c (TARGET_OPTION_OVERRIDE): Define.
- (cris_override_options): Rename to cris_option_override. Make static.
- * config/cris/cris.h (OVERRIDE_OPTIONS): Remove.
- * config/frv/frv-protos.h (frv_override_options): Remove.
- * config/frv/frv.c (TARGET_OPTION_OVERRIDE): Define.
- (frv_override_options): Rename to frv_option_override. Make static.
- * config/frv/frv.h (OVERRIDE_OPTIONS): Remove.
- * config/h8300/h8300-protos.h (h8300_init_once): Remove.
- * config/h8300/h8300.c (h8300_init_once): Rename to
- h8300_option_override. Make static.
- (TARGET_OPTION_OVERRIDE): Define.
- * config/h8300/h8300.h (OVERRIDE_OPTIONS): Remove.
- * config/i386/i386-protos.h (override_options): Remove.
- * config/i386/i386.c (override_options): Rename to
- ix86_option_override_internal. Make static. Comments referring
- to this function and callers changed.
- (ix86_option_override): New.
- (TARGET_OPTION_OVERRIDE): Define.
- * config/i386/i386.h (OVERRIDE_OPTION): Remove.
- * config/i386/linux64.h (DEFAULT_PCC_STRUCT_RETURN): Update comment.
- * config/ia64/ia64.c (ia64_file_start): Update comment referring
- to ia64_override_options.
- * config/iq2000/iq2000-protos.h (override_options): Remove.
- * config/iq2000/iq2000.c (TARGET_OPTION_OVERRIDE): Define.
- (override_options): Rename to iq2000_option_override. Make static.
- * config/iq2000/iq2000.h (OVERRIDE_OPTIONS): Remove.
- * config/lm32/lm32-protos.h (lm32_override_options): Remove.
- * config/lm32/lm32.c (TARGET_OPTION_OVERRIDE): Define.
- (lm32_override_options): Rename to lm32_option_override. Make static.
- * config/lm32/lm32.h (OVERRIDE_OPTIONS): Remove.
- * config/m32r/m32r.c (TARGET_OPTION_OVERRIDE): Define.
- (m32r_option_override): New.
- (m32r_init): Update comment.
- * config/m32r/m32r.h (OVERRIDE_OPTIONS): Remove.
- * config/m68hc11/m68hc11-protos.h (m68hc11_override_options): Remove.
- * config/m68hc11/m68hc11.c (TARGET_OPTION_OVERRIDE): Define.
- (m68hc11_override_options): Rename to m68hc11_option_override.
- Make static. Return void.
- * config/m68hc11/m68hc11.h (OVERRIDE_OPTIONS): Remove.
- * config/m68k/m68k-protos.h (override_options): Remove.
- * config/m68k/m68k.c (TARGET_OPTION_OVERRIDE): Define.
- (override_options): Rename to m68k_option_override. Make static.
- * config/m68k/m68k.h (OVERRIDE_OPTIONS): Remove.
- * config/mcore/mcore-protos.h (mcore_override_options): Remove.
- * config/mcore/mcore.c (TARGET_OPTION_OVERRIDE): Define.
- (mcore_override_options): Rename to mcore_option_override. Make
- static.
- * config/mcore/mcore.h (OVERRIDE_OPTIONS): Remove.
- * config/mep/mep-protos.h (mep_override_options): Remove.
- * config/mep/mep.c (TARGET_OPTION_OVERRIDE): Define.
- (mep_override_options): Rename to mep_option_override. Make static.
- * config/mep/mep.h (OVERRIDE_OPTIONS): Remove.
- * config/mmix/mmix-protos.h (mmix_override_options): Remove.
- * config/mmix/mmix.c (TARGET_OPTION_OVERRIDE): Define.
- (mmix_override_options): Rename to mmix_option_override. Make static.
- * config/mmix/mmix.h (OVERRIDE_OPTIONS): Remove.
- * config/mn10300/mn10300-protos.h (mn10300_override_options): Remove.
- * config/mn10300/mn10300.c (TARGET_OPTION_OVERRIDE): Define.
- (mn10300_override_options): Rename to mn10300_option_override.
- Make static.
- * config/mn10300/mn10300.h (OVERRIDE_OPTIONS): Remove.
- * config/moxie/moxie-protos.h (moxie_override_options): Remove.
- * config/moxie/moxie.c (moxie_override_options): Rename to
- moxie_option_override. Make static.
- (TARGET_OPTION_OVERRIDE): Define.
- * config/moxie/moxie.h (OVERRIDE_OPTIONS): Remove.
- * config/picochip/picochip-protos.h (picochip_override_options):
- Remove. Update comment referring to picochip_override_options.
- * config/picochip/picochip.c (TARGET_OPTION_OVERRIDE): Define.
- (picochip_override_options): Rename to picochip_option_override.
- Make static. Update comment and definition of
- TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE.
- * config/picochip/picochip.h (OVERRIDE_OPTIONS): Remove.
- * config/rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment.
- * config/rs6000/aix51.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment.
- * config/rs6000/aix52.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment.
- * config/rs6000/aix53.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment.
- * config/rs6000/aix61.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment.
- * config/rs6000/linux64.h (OPTION_TARGET_CPU_DEFAULT): Define
- instead of OVERRIDE_OPTIONS.
- * config/rs6000/rs6000-modes.def: Update comment referring to
- rs6000_override_options.
- * config/rs6000/rs6000-protos.h (rs6000_override_options): Remove.
- * config/rs6000/rs6000.c (TARGET_OPTION_OVERRIDE): Define.
- (rs6000_override_options): Rename to
- rs6000_option_override_internal. Make static. Commented
- referring to rs6000_override_options and OVERRIDE_OPTIONS updated.
- (rs6000_option_override): New.
- * config/rs6000/rs6000.h (OPTION_TARGET_CPU_DEFAULT): Define
- instead of OVERRIDE_OPTIONS.
- * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment.
- * config/s390/s390-protos.h (override_options): Remove.
- * config/s390/s390.c (override_options): Rename to
- s390_option_override. Make static.
- (TARGET_OPTION_OVERRIDE): Define.
- * config/s390/s390.h (OVERRIDE_OPTIONS): Remove.
- * config/score/score-protos.h (score_override_options): Remove.
- * config/score/score.c (TARGET_OPTION_OVERRIDE): Define.
- (score_override_options): Rename to score_option_override. Make
- static.
- * config/score/score.h (OVERRIDE_OPTIONS): Remove.
- Update comment referring to override_options.
- * config/score/score3.c (score3_override_options): Rename to
- score3_option_override.
- * config/score/score3.h (score3_override_options): Rename to
- score3_option_override.
- * config/score/score7.c (score7_override_options): Rename to
- score7_option_override.
- * config/score/score7.h (score7_override_options): Rename to
- score7_option_override.
- * config/sh/sh.c: Update comments referring to OVERRIDE_OPTIONS.
- * config/sparc/sparc.c (TARGET_OPTION_OVERRIDE): Define.
- (sparc_override_options): Rename to sparc_option_override. Make
- static. Call SUBTARGET_OVERRIDE_OPTIONS.
- * config/sparc/sparc.h (OVERRIDE_OPTIONS): Remove.
- * config/sparc/vxworks.h (SUBTARGET_OVERRIDE_OPTIONS): Define
- instead of OVERRIDE_OPTIONS.
- * config/spu/spu-protos.h (spu_override_options): Remove.
- * config/spu/spu.c (TARGET_OPTION_OVERRIDE): Define.
- (spu_override_options): Rename to spu_option_override. Make
- static.
- * config/spu/spu.h (OVERRIDE_OPTIONS): Remove.
- * config/vax/elf.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead of
- OVERRIDE_OPTIONS.
- * config/vax/vax-protos.h (override_options): Remove.
- * config/vax/vax.c (TARGET_OPTION_OVERRIDE): Define.
- (override_options): Rename to vax_option_override. Make static.
- Call SUBTARGET_OVERRIDE_OPTIONS.
- * config/vax/vax.h (OVERRIDE_OPTIONS): Remove.
- * config/vxworks.c: Update comment referring to OVERRIDE_OPTIONS.
- * config/vxworks.h: Update comment referring to OVERRIDE_OPTIONS.
- * config/xtensa/xtensa-protos.h (override_options): Remove.
- * config/xtensa/xtensa.c (TARGET_OPTION_OVERRIDE): Define.
- (override_options): Rename to xtensa_option_override. Make static.
- * config/xtensa/xtensa.h (OVERRIDE_OPTIONS): Remove.
-
-2010-09-16 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45623
- * tree-ssa-structalias.c (get_constraint_for_ptr_offset): Adjust.
- (get_constraint_for_component_ref): If computing a constraint
- for the rhs handle type punning through unions.
- (get_constraint_for_address_of): Adjust.
- (get_constraint_for_1): Likewise.
- (get_constraint_for): Likewise.
- (get_constraint_for_rhs): New function.
- (do_structure_copy): Adjust.
- (make_constraint_to): Likewise.
- (handle_const_call): Likewise.
- (find_func_aliases): Likewise.
- (process_ipa_clobber): Likewise.
- (create_variable_info_for): Likewise.
-
-2010-09-16 Ira Rosen <irar@il.ibm.com>
-
- * tree-vectorizer.c: Fix documentation.
- * tree-vectorizer.h (vinfo_for_stmt): Add documentation.
- (set_vinfo_for_stmt, get_earlier_stmt, get_later_stmt,
- is_pattern_stmt_p, is_loop_header_bb_p,
- stmt_vinfo_set_inside_of_loop_cost,
- stmt_vinfo_set_outside_of_loop_cost, vect_pow2, aligned_access_p,
- known_alignment_for_access_p): Likewise.
- * tree-vect-loop.c: Fix documentation.
- (vect_get_cost): Start function name from new line.
- * tree-vect-data-refs.c: Fix documentation.
- * tree-vect_stmts.c: Likewise.
- (vect_create_vectorized_promotion_stmts): Always free vec_tmp.
- (vectorizable_store): Free vec_oprnds if allocated.
- (vectorizable_condition): Initialize several variables to avoid
- warnings.
- * tree-vect-slp.c: Fix documentation.
-
-2010-09-16 Richard Guenther <rguenther@suse.de>
-
- * tree.c (tree_node_structure_for_code): TRANSLATION_UNIT_DECL
- is TS_TRANSLATION_UNIT_DECL.
- (initialize_tree_contains_struct): Adjust.
- (all_translation_units): New global vector.
- (build_translation_unit_decl): New function.
- * tree.h (TRANSLATION_UNIT_LANGUAGE): New macro.
- (struct tree_translation_unit_decl): New.
- (all_translation_units): Declare.
- (union tree_node): Add translation_unit_decl member.
- (build_translation_unit_decl): Declare.
- * treestruct.def (TS_TRANSLATION_UNIT_DECL): New.
- * lto-streamer-out.c (pack_ts_translation_unit_decl_value_fields):
- New function.
- (pack_value_fields): Call it.
- (lto_output_tree_ref): Handle references to TRANSLATION_UNIT_DECL.
- (lto_output_ts_translation_unit_decl_tree_pointers): New function.
- (lto_output_tree_pointers): Call it.
- * lto-streamer-in.c (lto_input_tree_ref): Handle references
- to TRANSLATION_UNIT_DECL.
- (unpack_ts_translation_unit_decl_value_fields): New function.
- (unpack_value_fields): Call it.
- (lto_input_ts_translation_unit_decl_tree_pointers): New function.
- (lto_input_tree_pointers): Call it.
- * lto-streamer.c (check_handled_ts_structures): Adjust.
- * lto-streamer.h (enum LTO_tags): Add LTO_translation_unit_decl_ref.
- * c-decl.c (all_translation_units): Remove.
- (pop_scope): Use build_translation_unit_decl.
- (collect_all_refs): Adjust.
- (for_each_global_decl): Likewise.
- (c_write_global_declarations): Likewise.
-
-2010-09-16 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/45686
- * fold-const.c (fold_checksum_tree): Change slot from const void **
- to void **, use CONST_CAST_TREE to store into *slot.
-
-2010-09-16 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md: Remove unneeded empty conditions and
- preparation statements from expanders.
- * config/i386/mmx.md: Ditto.
- * config/i386/sse.md: Ditto.
-
-2010-09-16 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.h (PUSH_ROUNDING): Redefine using UNITS_PER_WORD.
-
-2010-09-15 Eric Botcazou <ebotcazou@adacore.com>
-
- PR rtl-optimization/45593
- * reorg.c (relax_delay_slots): Use emit_copy_of_insn_after to re-emit
- insns that were in delay slots as stand-alone insns.
-
-2010-09-15 Ian Lance Taylor <iant@google.com>
-
- * incpath.c (remove_duplicates): If name is not a directory, issue
- a warning rather than an error.
-
-2010-09-15 Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/45644
- * tree-sra.c (create_access): Check for bit-fields directly.
-
-2010-09-15 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/45633
- * tree-cfg.c (verify_gimple_assign_binary): Allow
- MINUS_EXPR with lhs and rhs1 pointer vector and
- rhs2 sizetype vector.
- * expr.c (expand_expr_real_2) <case PLUS_EXPR>: For pointer
- or vector pointer use TER to optimize pointer subtraction.
-
-2010-09-15 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/vfp.md (cmpsf_trap_vfp): Change type from
- fcmpd to fcmps.
-
-2010-09-15 Ian Lance Taylor <iant@google.com>
-
- * config/i386/i386.md (truncxf<mode>2): Fix indentation.
-
-2010-09-15 Ian Lance Taylor <iant@google.com>
-
- * function.c (get_arg_pointer_save_area): Set
- arg_pointer_save_area_init to true.
-
-2010-09-15 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (generate_subtree_copies): Updated comment.
- (handle_unscalarized_data_in_subtree): Removed parameter lhs which is
- obtained from the statement iterator instead.
- (load_assign_lhs_subreplacements): Removed parameters lhs and
- right_offset, which is obtained from top_racc instead. Parameter lacc
- is now expected to be the root of the processed tree rather than root's
- first child. Updated all callers.
-
-2010-09-15 Joseph Myers <joseph@codesourcery.com>
-
- * config/pdp11/pdp11.c (register_move_cost): Rename to
- pdp11_register_move_cost.
- * config/pdp11/pdp11-protos.h (register_move_cost): Rename to
- pdp11_register_move_cost.
- * config/pdp11/pdp11.h (REGISTER_MOVE_COST): Call
- pdp11_register_move_cost instead of register_move_cost.
-
-2010-09-15 Tejas Belagod <tejas.belagod@arm.com>
-
- * config/arm/neon.md (vec_pack_trunc_<mode>): Instruction
- pattern for vmovn. Expansion in case of non
- -mvectorize-with-neon-quad.
- (neon_vec_pack_trunc_<mode>): Instruction pattern for vmovn for
- non- -mvectorize-with-neon-quad case.
- (move_lo_quad_<mode>): New expansion to vmov into low part.
- (move_hi_quad_<mode>): New expansion to vmov into high part.
- (move_lo_quad_v4si): Refactor to move_lo_quad_<mode> expansion.
- (move_lo_quad_v4sf): Likewise.
- (move_lo_quad_v8hi): Likewise.
- (neon_move_lo_quad_<mode>): Instruction pattern for vmov into
- low part.
- (neon_move_hi_quad_<mode>): Instruction pattern for vmov into
- high part.
- * config/arm/iterators.md (ANY128): New mode iterator.
- (V_narrow_pack): New mode attribute.
- (V_HALF): Add attribute.
- (V_DOUBLE): Add attribute.
- (V_mode_nunits): Add attribute.
-
-2010-09-15 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/alpha/alpha.c (alpha_expand_prologue): If stack checking
- is enabled, probe up to frame_size + STACK_CHECK_PROTECT bytes.
-
-2010-09-15 Olivier Hainque <hainque@adacore.com>
- Jose Ruiz <ruiz@adacore.com>
-
- * config/alpha/osf5.h (MD_UNWIND_SUPPORT): Define.
- * config/alpha/osf5-unwind.h: New file.
-
-2010-09-14 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/45672
- * config/mips/mips.c (mips_units_per_simd_word): Correct return type.
- * config/rs6000/rs6000.c (rs6000_units_per_simd_word): Likewise.
- * config/sparc/sparc.c (sparc_units_per_simd_word): Likewise.
-
-2010-09-15 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * c-lang.h (struct lang_type): Add variable_size GTY option.
-
-2010-09-14 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/45672
- * config/rs6000/rs6000.c (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD): New.
-
-2010-09-14 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.c (ix86_lea_for_add_ok): Return false if
- result isn't used in memory address.
-
-2010-09-14 H.J. Lu <hongjiu.lu@intel.com>
-
- * defaults.h (UNITS_PER_SIMD_WORD): Removed.
- * config/arm/arm.h (UNITS_PER_SIMD_WORD): Likewise.
- * config/i386/i386.h (UNITS_PER_SIMD_WORD): Likewise.
- * config/mips/mips.h (UNITS_PER_SIMD_WORD): Likewise.
- * config/rs6000/rs6000.h (UNITS_PER_SIMD_WORD): Likewise.
- * config/sparc/sparc.h (UNITS_PER_SIMD_WORD): Likewise.
-
- * target.def: Add units_per_simd_word to vectorize.
-
- * targhooks.c (default_units_per_simd_word): New.
- * targhooks.h (default_units_per_simd_word): Likewise.
- * config/arm/arm.c (arm_units_per_simd_word): Likewise.
- (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD): Likewise.
- * config/mips/mips.c (mips_units_per_simd_word): Likewise.
- (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD): Likewise.
- * config/rs6000/rs6000.c (rs6000_units_per_simd_word): Likewise.
- (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD): Likewise.
- * config/sparc/sparc.c (sparc_units_per_simd_word): Likewise.
- (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD): Likewise.
-
- * tree-vect-loop.c: Replace UNITS_PER_SIMD_WORD with
- TARGET_VECTORIZE_UNITS_PER_SIMD_WORD in comments.
-
- * tree-vect-stmts.c: Don't include "tm_p.h".
- (get_vectype_for_scalar_type): Replace UNITS_PER_SIMD_WORD
- with targetm.vectorize.units_per_simd_word.
-
- * system.h (UNITS_PER_SIMD_WORD): Poisoned.
-
- * config/i386/i386-protos.h (ix86_units_per_simd_word): Removed.
-
- * config/i386/i386.c (ix86_units_per_simd_word): Make it static.
- (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD): New.
-
- * doc/tm.texi.in: Remove UNITS_PER_SIMD_WORD. Add
- TARGET_VECTORIZE_UNITS_PER_SIMD_WORD.
-
- * doc/tm.texi: Regenerated.
-
-2010-09-14 H.J. Lu <hongjiu.lu@intel.com>
-
- * tree-vect-stmts.c: Include "tm_p.h".
-
- * config/i386/i386-protos.h (ix86_units_per_simd_word): Moved
- out of RTX_CODE.
-
-2010-09-14 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (build_ref_for_offset): Loc made a parameter. Set the
- location of generated statement. Changed all callers.
- (build_ref_for_model): New parameter loc which used to set location of
- all generated expressions. Changed all callers.
- (generate_subtree_copies): Likewise.
- (init_subtree_with_zero): Likewise.
- (sra_modify_expr): Set locations of all generated statements and
- expressions to the location the original statement.
- (handle_unscalarized_data_in_subtree): Likewise.
- (load_assign_lhs_subreplacements): Likewise.
- (sra_modify_constructor_assign): Likewise.
- (sra_modify_assign): Likewise.
-
-2010-09-14 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/45277
- PR target/45363
- PR target/45407
- * doc/install.texi (sparc*-*-*): New section.
- (sparc-sun-solaris2*): Mention MPC alongside GMP and MPFR.
-
-2010-09-14 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/45567
- * builtins.c (expand_builtin_interclass_mathfn, expand_builtin_cexpi,
- expand_builtin_powi): Remove subtarget argument, pass NULL_RTX instead.
- (expand_builtin): Adjust caller.
- (expand_builtin_unop): Only use subtarget if it has the right mode.
-
-2010-09-14 Tristan Gingold <gingold@adacore.com>
-
- * configure.ac (plugins): Fix typos.
- * configure: Regenerate.
-
-2010-09-14 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45660
- * dwarf2out.c (gen_decl_die): Call gen_type_die for origin before
- gen_type_die for function/method return type.
-
-2010-09-14 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/45470
- * tree-vect-data-refs.c (vect_analyze_data_refs): Fail if a statement
- can throw an exception.
- * tree-vect-stmts.c (vectorizable_call): Likewise.
-
-2010-09-14 DJ Delorie <dj@redhat.com>
-
- PR target/44749
- * config/mep/mep-protos.h (mep_save_register_info,
- mep_reinit_regs, mep_init_regs): Declare.
-
- * config/mep/mep.c: Move all target definitions to the end of the
- file to avoid the need for duplicate declarations.
- (mep_save_register_info, mep_reinit_regs, mep_init_regs): New.
- (mep_reorg_erepeat): Remove unused variables.
- (mep_expand_builtin): Likewise.
-
- * config/mep/mep-pragma.c: Don't include rtl.h.
- (INVALID_REGNUM): New.
- (mep_pragma_coprocessor_which): Call mep-specific rtl-layer bridge
- functions.
- (mep_pragma_coprocessor_subclass): Rename "class" to "rclass".
- Avoid enum/integer math.
-
-2010-09-13 Joseph Myers <joseph@codesourcery.com>
-
- PR target/44749
- * config/mep/t-mep (GTM_H): Add insn-constants.h.
- * config/mep/mep.c (mep_conditional_register_usage): Take no
- parameters.
- * config/mep/mep-protos.h (mep_conditional_register_usage): Update
- prototype.
- * config/mep/mep-pragma.c (CONDITIONAL_REGISTER_USAGE): Update
- call to mep_conditional_register_usage.
-
-2010-09-13 Eric Botcazou <ebotcazou@adacore.com>
-
- PR debug/43937
- * varasm.c (output_constant_def_contents): Set TREE_ASM_WRITTEN on
- the DECL as well.
-
-2010-09-13 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/45617
- * combine.c (simplify_comparison): Optimize (X >> N) {>,>=,<,<=} C
- even if low N bits of X aren't known to be zero.
-
-2010-09-13 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386-protos.h (ix86_units_per_simd_word): New.
-
- * config/i386/i386.c (initial_ix86_tune_features): Add
- X86_TUNE_VECTORIZE_DOUBLE.
- (ix86_units_per_simd_word): New.
-
- * config/i386/i386.h (ix86_tune_indices): Add
- X86_TUNE_VECTORIZE_DOUBLE.
- (TARGET_VECTORIZE_DOUBLE): New.
- (UNITS_PER_SIMD_WORD): Defined with ix86_units_per_simd_word.
-
-2010-09-13 Pat Haugen <pthaugen@us.ibm.com>
-
- * tree-ssa-ter.c (temp_expr_table_d): Add call_cnt field.
- (new_temp_expr_table): Allocate call_cnt vector.
- (free_temp_expr_table): Free it.
- (process_replaceable): Add call_cnt parm and set in vector.
- (find_replaceable_in_bb): Skip replacement if def/use span a call.
- (debug_ter): Dump call_cnt value, remove stderr uses.
-
-2010-09-13 Jan Hubicka <jh@suse.cz>
-
- * tree.c (build_zero_cst): New.
- * tree.h (build_zero_cst): Declare.
- * tree-ssa-ccp.c (get_constant_value): Accept general operands.
- (get_base_constructor): Break out from ...
- (fold_const_aggregate_ref): Here; handle empty constructors.
-
-2010-09-13 Marcus Shawcroft <marcus.shawcroft@arm.com>
-
- * config/arm/arm.md: (define_attr "conds"): Update comment.
- * config/arm/sync.md (arm_sync_compare_and_swapsi): Change
- conds attribute to clob.
- (arm_sync_compare_and_swapsi): Likewise.
- (arm_sync_compare_and_swap<mode>): Likewise.
- (arm_sync_lock_test_and_setsi): Likewise.
- (arm_sync_lock_test_and_set<mode>): Likewise.
- (arm_sync_new_<sync_optab>si): Likewise.
- (arm_sync_new_nandsi): Likewise.
- (arm_sync_new_<sync_optab><mode>): Likewise.
- (arm_sync_new_nand<mode>): Likewise.
- (arm_sync_old_<sync_optab>si): Likewise.
- (arm_sync_old_nandsi): Likewise.
- (arm_sync_old_<sync_optab><mode>): Likewise.
- (arm_sync_old_nand<mode>): Likewise.
-
-2010-09-13 Olivier Hainque <hainque@adacore.com>
-
- * fwprop.c (forward_propagate_and_simplify): Only attach a
- REG_EQUAL note to an insn if the destination is a register.
- * gcse.c (try_replace_reg): Likewise.
-
-2010-09-13 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45611
- * tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Fix typo.
- (copy_ref_info): Likewise.
-
-2010-09-13 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/45604
- PR debug/45419
- PR debug/45408
- * tree-pretty-print.c (dump_generic_node): Disregard top-level
- types of MEM_REF pointer types to the same type.
-
-2010-09-13 Hans-Peter Nilsson <hp@axis.com>
-
- PR rtl-optimization/41087
- * ifcvt.c (noce_get_condition): Don't allow conditions with
- side-effects.
-
-2010-09-12 Anatoly Sokolov <aesok@post.ru>
-
- * config/frv/frv.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
- * config/frv/frv-protos.h (frv_register_move_cost): Remove.
- * config/frv/frv.c (frv_register_move_cost): Make static. Change
- arguments type to reg_class_t. Add mode argument.
- (frv_memory_move_cost): New.
- (TARGET_REGISTER_MOVE_COSTS, TARGET_MEMORY_MOVE_COSTS): Define.
-
-2010-09-12 Bernd Schmidt <bernds@codesourcery.com>
-
- * config/arm/arm.md (arm_ashldi3_1bit, arm_ashrdi3_1bit,
- arm_lshrdi3_1bit): Put earlyclobber on the right alternative.
-
-2010-09-10 Jan Hubicka <jh@suse.cz>
-
- * tree-ssa-ccp.c (fold_const_aggregate_ref): Do not check STATIC flag.
-
-2010-09-10 Richard Guenther <rguenther@suse.de>
-
- * tree.c (make_vector_type): Do not set TYPE_DEBUG_REPRESENTATION_TYPE.
- * tree.h (TYPE_DEBUG_REPRESENTATION_TYPE): Remove.
- * lto-streamer-out.c (lto_output_ts_type_tree_pointers): Do
- not stream TYPE_DEBUG_REPRESENTATION_TYPE.
- * lto-streamer-in.c (lto_input_ts_type_tree_pointers): Likewise.
-
-2010-09-10 Richard Guenther <rguenther@suse.de>
-
- * dwarf2out.c (gen_array_type_die): Output DW_TAG_subrange_type
- for VECTOR_TYPEs using TYPE_VECTOR_SUBPARTS.
- * dbxout.c (dbxout_type): Manually deal with VECTOR_TYPE
- using TYPE_VECTOR_SUBPARTS, not TYPE_DEBUG_REPRESENTATION_TYPE.
-
-2010-09-10 H.J. Lu <hongjiu.lu@intel.com>
-
- PR middle-end/45634
- * tree-ssa-ccp.c (fold_const_aggregate_ref): Check that result
- of string folding is of integral type.
-
-2010-09-10 Ryan Mansfield <rmansfield@qnx.com>
-
- * doc/invoke.texi (-x): Fix typo.
-
-2010-09-10 Richard Guenther <rguenther@suse.de>
-
- PR debug/44115
- * tree.c (free_lang_data_in_decl): Do not clear DECL_DEBUG_EXPR.
- * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
- Output DECL_DEBUG_EXPR.
- * lto-streamer-in.c (lto_input_ts_decl_common_tree_pointers):
- Input DECL_DEBUG_EXPR.
-
-2010-09-10 Richard Guenther <rguenther@suse.de>
-
- * tree.c (type_hash_eq): For ARRAY_TYPEs also compare TYPE_SIZE.
- (build_index_type): Implement in terms of build_range_type.
- (build_range_type): Do not allow NULL_TREE type, improve
- hashing to cover more cases. Set TYPE_STRUCTURAL_EQUALITY_P
- if we didn't hash.
- * c-decl.c (grokdeclarator): When modifying TYPE_SIZE manually
- create a distinct copy of the type.
-
-2010-09-10 Kai Tietz <kai.tietz@onevision.com>
-
- * configure: Regenerated.
- * config.gcc: Add for x86_64 and i?86 mingw t-dfprule.
-
-2010-09-10 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * config/arm/neon-schedgen.ml (allCores): Add support for Cortex-A9.
- * config/arm/cortex-a9-neon.md: New and partially generated.
- * config/arm/cortex-a9.md (cortex_a9_dp): Adjust for Neon.
-
-2010-09-10 Richard Guenther <rguenther@suse.de>
-
- * tree.h (build_index_2_type): Remove.
- * tree.c (build_index_2_type): Remove.
-
-2010-09-10 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/45630
- * dwarf2out.c (get_ref_die_offset_label): Use %ld instead of
- HOST_WIDE_INT_PRINT_DEC to print ref->die_offset.
- (implicit_ptr_descriptor): Return NULL if dwarf_strict.
-
-2010-09-10 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/44972
- * tree-sra.c: Include toplev.h.
- (build_ref_for_offset): Entirely reimplemented.
- (build_ref_for_model): New function.
- (build_user_friendly_ref_for_offset): New function.
- (analyze_access_subtree): Removed build_ref_for_offset check.
- (propagate_subaccesses_across_link): Likewise.
- (create_artificial_child_access): Use
- build_user_friendly_ref_for_offset.
- (propagate_subaccesses_across_link): Likewise.
- (ref_expr_for_all_replacements_p): Removed.
- (generate_subtree_copies): Updated comment. Use build_ref_for_model.
- (sra_modify_expr): Use build_ref_for_model.
- (load_assign_lhs_subreplacements): Likewise.
- (sra_modify_assign): Removed ref_expr_for_all_replacements_p checks,
- checks for return values of build_ref_for_offset.
- * ipa-cp.c (ipcp_lattice_from_jfunc): No need to check return value of
- build_ref_for_offset.
- * ipa-prop.h: Include gimple.h
- * ipa-prop.c (ipa_compute_jump_functions): Update to look for MEM_REFs.
- (ipa_analyze_indirect_call_uses): Update comment.
- * Makefile.in (tree-sra.o): Add $(GIMPLE_H) to dependencies.
- (IPA_PROP_H): Likewise.
-
-2010-09-10 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/44972
- * ipa-prop.c (ipa_modify_call_arguments): Build MEM_REF instead of
- calling build_ref_for_offset.
-
-2010-09-09 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * config/arm/bpabi.h (BE8_LINK_SPEC): Handle Cortex-a15.
- * config/arm/arm-cores.def (cortex-a15): New core. Treat it as a v7-a.
- * config/arm/arm-tune.md: Regenerate.
- * doc/invoke.texi (ARM Options): Document it.
-
-2010-09-09 Reza Yazdani <reza.yazdani@amd.com>
-
- * config/i386/i386.c: Include sched-int.h.
- (TARGET_SCHED_DISPATCH): Defined.
- (TARGET_SCHED_DISPATCH_DO): Defined.
- (DISPATCH_WINDOW_SIZE): Defined.
- (MAX_DISPATCH_WINDOWS): Defined.
- (MAX_INSN): Defined.
- (MAX_IMM): Defined.
- (MAX_IMM_SIZE): Defined.
- (MAX_IMM_32): Defined.
- (MAX_IMM_64): Defined.
- (MAX_LOAD): Defined.
- (MAX_STORE): Defined.
- (BIG): Defined.
- (dispatch_group): New.
- (num_allowable_groups): New.
- (group_name): New.
- (sched_insn_info_s): New.
- (dispatch_windows_s): New.
- (imm_info_s): New.
- (dispatch_window_list): New.
- (dispatch_window_list1): New.
- (get_mem_group): New.
- (is_cmp): New.
- (dispatch_violation): New.
- (is_branch): New.
- (is_prefetch): New.
- (init_window): New.
- (allocate_window): New.
- (init_dispatch_sched): New.
- (is_end_basic_block): New.
- (process_end_window): New.
- (allocate_next_window): New.
- (find_constant_1): New.
- (find_constant): New.
- (get_num_immediates): New.
- (has_immediate): New.
- (get_insn_path): New.
- (get_insn_group): New.
- (count_num_restricted): New.
- (fits_dispatch_window): New.
- (add_insn_window): New.
- (add_to_dispatch_window): New.
- (debug_dispatch_window_file): New.
- (debug_dispatch_window): New.
- (debug_insn_dispatch_info_file): New.
- (debug_ready_dispatch): New.
- (do_dispatch): New.
- (has_dispatch): New.
- * config/i386/i386.h (debug_ready_dispatch): Declared.
- (debug_dispatch_window): Declared.
- * config/i386/i386.opt (mdispatch-scheduler): New flag.
- * doc/tm.texi.in (TARGET_SCHED_DISPATCH): New.
- (TARGET_SCHED_DISPATCH_DO): New.
- * doc/tm.texi: Regererated.
- * haifa-sched.c (choose_ready): Call targetm.sched.dispatch and
- ready_remove_first_dispatch
- (schedule_block): Call targetm.sched.dispatch and
- targetm.sched.dispatch_do.
- (sched_init): Call targetm.sched.dispatch and
- targetm.sched.dispatch_do.
- (ready_remove_first_dispatch): New.
- (number_in_ready): New.
- (get_ready_element): New.
- * hooks.c (hook_bool_rtx_int_false): New.
- (hook_void_rtx_int): New.
- * hooks.h (hook_bool_rtx_int_false): Declared.
- (hook_void_rtx_int): Declared.
- * sched-int.h (IS_DISPATCH_ON): Defined.
- (IS_CMP): Defined.
- (DISPATCH_VIOLATION): Defined.
- (FITS_DISPATCH_WINDOW): Defined.
- (DISPATCH_INIT): Defined.
- (ADD_TO_DISPATCH_WINDOW): Defined.
- (get_ready_element): Declared.
- (number_in_ready): Declared.
- * target.def (dispatch): Defined.
- (dispatch_do): Defined.
-
-2010-09-09 Vladimir Makarov <vmakarov@redhat.com>
-
- PR middle-end/45312
- * reload1.c (merge_assigned_reloads): Remove.
- (reload_as_needed): Don't call it.
-
-2010-09-09 Anatoly Sokolov <aesok@post.ru>
-
- * config/m32r/m32r.c (m32r_mode_dependent_address_p): New functions.
- (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
- * config/m32r/m32r.h: (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
-
-2010-09-09 Matthias Klose <doko@ubuntu.com>
-
- PR bootstrap/43847
- * configure.ac (--enable-plugin): Enhance for cross builds.
- * configure: Regenerate.
-
-2010-09-09 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/45598
- * tree-ssa-ccp.c (fold_const_aggregate_ref): Check that result of
- string folding is of integral type.
-
-2010-09-09 Nathan Sidwell <nathan@codesourcery.com>
-
- * configure.ac (gnu_indirect_function): New test.
- * configure: Rebuilt.
- * config.in (HAVE_GAS_INDIRECT_FUNCTION): New.
- * defaults.h (IFUNC_ASM_TYPE): Provide default.
-
- * doc/extend.texi (Function Attributes): Document ifunc.
- * varasm.c (do_assemble_alias): Deal with ifuncs too.
-
-2010-09-09 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.c (picochip_reorg): Check for note_p for
- epilogue instruction move.
-
-2010-09-09 Jan Hubicka <jh@suse.cz>
-
- * collect2.c (maybe_run_lto_and_relink): Rewrite code producing ld
- command line to allow more partitions than input files.
-
-2010-09-09 Vladimir Makarov <vmakarov@redhat.com>
-
- PR middle-end/44554
- * ira.c (ira): Switch off sharing spill slots if setjmp is called.
-
-2010-09-09 Vladimir Makarov <vmakarov@redhat.com>
-
- PR middle-end/40386
- * ira.c (pseudo_for_reload_consideration_p): Don't use
- flag_ira_share_spill_slots.
-
-2010-09-09 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/s390/s390.c (legitimate_reload_constant_p): Accept floating-
- point zero operands that fit into a single GPR.
- (s390_preferred_reload_class): Ensure we only return general-purpose
- register classes.
- * config/s390/s390.md ("*mov<mode>_64dfp"): Use lghi to load
- floating-point zero operands into GPRs.
- ("*mov<mode>_64"): Likewise.
- ("mov<mode>"): Likewise using lhi.
-
-2010-09-09 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/s390/s390.c (s390_symref_operand_p): Return false for
- literal pool references.
- (s390_check_qrst_address): Update caller.
-
-2010-09-09 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/predicates.md (ext_register_operand): Check that
- SUBREG_REG is really a register before looking for REGNO.
- (reg_not_xmm0_operand): Handle SUBREGs correctly.
- (nonimm_not_xmm0_operand): Call reg_not_xmm0_operand.
-
-2010-09-09 Jakub Jelinek <jakub@redhat.com>
-
- * rtl.def (DEBUG_IMPLICIT_PTR): New rtl code.
- * rtl.h (DEBUG_IMPLICIT_PTR_DECL): Define.
- * rtl.c (rtx_equal_p_cb, rtx_equal_p): Handle DEBUG_IMPLICIT_PTR.
- * print-rtl.c (print_rtx): Likewise.
- * cselib.c (rtx_equal_for_cselib_p, cselib_hash_rtx): Likewise.
- * cfgexpand.c (expand_debug_expr): Generate DEBUG_IMPLICIT_PTR
- for ADDR_EXPR with non-addressable object.
- * dwarf2out.c (enum dw_val_class): Add dw_val_class_decl_ref.
- (struct dw_val_struct): Add v.val_decl_ref.
- (dwarf_stack_op_name, output_loc_operands, output_loc_operands_raw):
- Handle DW_OP_GNU_implicit_pointer.
- (size_of_loc_descr): Likewise. Fix up DW_OP_call_ref size.
- (get_ref_die_offset_label): New function.
- (implicit_ptr_descriptor): New function.
- (mem_loc_descriptor): Handle DEBUG_IMPLICIT_PTR.
- (loc_descriptor): Likewise.
- (gen_variable_die): Put even definitions into decl_die_table.
- (resolve_addr_in_expr): Resolve still unresolved
- DW_OP_GNU_implicit_pointer operands, if it can't be resolved
- return false.
- (dwarf2out_finish): Call output_location_lists after outputting
- .debug_info and .debug_abbrev instead of before.
-
-2010-09-09 Roland McGrath <roland@redhat.com>
-
- * dwarf2out.c (DWARF_REF_SIZE): Define.
- (size_of_loc_descr): Use it for DW_OP_call_ref.
-
-2010-09-09 Alan Modra <amodra@gmail.com>
-
- * doc/invoke.text: Reinstate mcmodel=medium.
- * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Set
- CMODEL_MEDIUM as default.
- * config/rs6000/rs6000.h (enum rs6000_cmodel): Add CMODEL_MEDIUM.
- * config/rs6000/rs6000.c (rs6000_handle_option): Add mcmodel=medium.
- (toc_relative_ok, offsettable_ok_by_alignment): New functions.
- (rs6000_emit_move): Reinstate mcmodel=medium optimization.
-
-2010-09-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/45250
- * config/pa/pa.md (nonlocal_goto): Restore hard frame pointer using
- hard_frame_pointer_rtx instead of virtual_stack_vars_rtx.
- (builtin_longjmp): Likewise.
- (allocate_stack): Use hard_frame_pointer_rtx instead of
- frame_pointer_rtx.
- * config/pa/pa-protos.h (pa_initial_elimination_offset): Declare.
- * config/pa/pa.c (pa_internal_arg_pointer): Declare.
- (pa_can_eliminate): Likewise.
- (TARGET_INTERNAL_ARG_POINTER): Define.
- (TARGET_CAN_ELIMINATE): Define.
- (hppa_expand_prologue): Use hard frame pointer instead of soft frame
- pointer.
- (hppa_expand_epilogue, pa_eh_return_handler_rtx): Likewise.
- (pa_internal_arg_pointer, pa_can_eliminate,
- pa_initial_elimination_offset): New.
- * config/pa/pa.h (FRAME_POINTER_REGNUM): Set to new general register.
- (HARD_FRAME_POINTER_REGNUM): Set to register three.
- (INITIAL_FRAME_POINTER_OFFSET): Delete.
- (ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET, DWARF_FRAME_REGISTERS):
- Define.
- (DWARF_ALT_FRAME_RETURN_COLUMN, REGNO_OK_FOR_INDEX_P,
- REGNO_OK_FOR_BASE_P): Update to include soft frame pointer.
- * config/pa/pa32-regs.h (FIRST_PSEUDO_REGISTER): Increase by one.
- (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER,
- REG_CLASS_CONTENTS, REGNO_REG_CLASS, REGISTER_NAMES): Update to include
- new soft frame pointer.
- * config/pa/pa64-regs.h: Likewise.
-
-2010-09-08 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.h (EH_RETURN_DATA_REGNO) Use DX_REG instead of
- numerical constant.
- (EH_RETURN_STACKADJ_RTX): Use CX_REG insted of numerical constant.
-
-2010-09-08 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/45531
- * cfglayout.c (fixup_reorder_chain): Skip debug insns.
-
-2010-09-08 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/45419
- PR debug/45408
- * tree-pretty-print.c (dump_generic_node): Disregard top-level
- qualifiers in otherwise equal MEM_REF pointer types.
- * fold-const.c (operand_equal_p): Compare pointer type of MEM_REFs.
- * tree.c (iterative_hash_expr): Hash the pointer type of MEM_REFs.
-
-2010-09-08 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- PR target/44392
- * config/arm/arm.md (bswapsi2): Handle condition correctly
- for armv6 and optimize_size.
-
-2010-09-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR other/18555
- * doc/cppopts.texi (-isysroot): Document Darwin behaviour.
-
-2010-09-08 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386-protos.h (ix86_can_use_return_insn_p,
- symbolic_reference_mentioned_p, ix86_expand_movmem, ix86_expand_setmem,
- ix86_expand_strlen, legitimate_pic_address_disp_p,
- ix86_binary_operator_ok, ix86_unary_operator_ok, ix86_match_ccmode,
- ix86_expand_int_movcc, ix86_expand_fp_movcc, ix86_expand_int_addcc,
- ix86_check_movabs, ix86_secondary_memory_needed): Change function
- prototype to bool.
- * config/i386/i386.c (return_in_memory_32, return_in_memory_64,
- return_in_memory_ms_64, ix86_check_movabs,
- symbolic_reference_mentioned_p, ix86_can_use_return_insn_p,
- legitimate_pic_address_disp_p, ix86_binary_operator_ok,
- ix86_unary_operator_ok, ix86_match_ccmode, ix86_expand_int_movcc,
- ix86_expand_fp_movcc, ix86_expand_int_addcc, ix86_expand_movmem,
- ix86_expand_setmem, ix86_expand_strlen, inline_secondary_memory_needed,
- ix86_secondary_memory_needed): Change to bool. Return
- "true" and "false" values.
- * config/i386/i386.md: Return "true" and "false" values.
-
-2010-09-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/sourcebuild.texi (Effective-Target Keywords): Document
- run_expensive_tests.
-
-2010-09-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * toplev.c (output_stack_usage): Use lbasename instead of basename.
-
-2010-09-08 Martin Jambor <mjambor@suse.cz>
-
- PR other/45443
- * doc/invoke.texi: Add -fipa-cp-clone to list of switches turned on
- at -O3.
-
-2010-09-08 Richard Guenther <rguenther@suse.de>
-
- * gimple.c (gimple_types, type_hash_cache): Move to GC memory.
- (visit): Adjust.
- (iterative_hash_gimple_type): Likewise.
- (gimple_type_hash): Likewise.
- (gimple_register_type): Likewise.
- (print_gimple_types_stats): Likewise.
- (free_gimple_type_tables): Likewise.
-
-2010-09-08 Michael Matz <matz@suse.de>
-
- PR tree-optimization/43430
- * tree-vect-stmts.c (vectorizable_condition): Support multiple
- copies for conditional statements if it's not part of a reduction.
-
-2010-09-08 Michael Matz <matz@suse.de>
-
- PR tree-optimization/33244
- * tree-ssa-sink.c (statement_sink_location): Don't sink into
- empty loop latches.
-
-2010-09-08 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45578
- * tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr):
- Be more careful when transfering alignment information to
- the new induction variable.
- (copy_ref_info): Likewise.
-
-2010-09-08 Richard Guenther <rguenther@suse.de>
-
- * tree.h (TYPE_ORIG_SIZE_TYPE): Remove.
- * c-typeck.c (comptypes_internal): Remove TYPE_ORIG_SIZE_TYPE checks.
-
-2010-09-08 Arnaud Charlet <charlet@adacore.com>
-
- * c-tree.h, c-decl.c (build_enumerator): Add location parameter.
- * c-parser.c (c_parser_enum_specifier): Adjust call to build_enumerator.
-
-2010-09-08 Kenneth Zadeck <zadeck@naturalbridge.com>
-
- PR doc/45587
- * doc/md.texi: Fixed modes on several standard pattern names.
-
-2010-09-08 Mingjie Xing <mingjie.xing@gmail.com>
-
- * config/mips/loongson.md (loongson_psll<V_suffix>): Rename to...
- (ashl<mode>3): ...this.
- (loongson_psra<V_suffix>): Rename to...
- (ashr<mode>3): ...this.
- (loongson_psrl<V_suffix>): Rename to...
- (lshr<mode>3): ...this.
- * config/mips/mips.c (CODE_FOR_loongson_psllh): Define.
- (CODE_FOR_loongson_psllw): Define.
- (CODE_FOR_loongson_psrlh): Define.
- (CODE_FOR_loongson_psrlw): Define.
- (CODE_FOR_loongson_psrah): Define.
- (CODE_FOR_loongson_psraw): Define.
-
-2010-09-07 Richard Henderson <rth@redhat.com>
-
- * tree-vect-data-refs.c: Include tm_p.h.
- * Makefile.in (tree-vect-data-refs.o): Update deps.
- * config/i386/i386-protos.h (ix86_cfun_abi, ix86_function_type_abi):
- Move delarations outside #ifdef RTX_CODE.
-
-2010-09-07 Richard Henderson <rth@redhat.com>
-
- * final.c (rest_of_handle_final): Unconditionally do
- output_function_exception_table before assemble_end_function.
-
-2010-09-07 Jan Hubicka <jh@suse.cz>
-
- * tree-inline.c (tree_inlinable_function_p): Do not test
- DECL_REPLACEABLE_P.
- * ipa-inline.c (cgraph_default_inline_p, update_caller_keys,
- update_callee_keys, cgraph_decide_inlining): Test function availability.
- * cif-code.def (OVERWRITABLE): New code.
-
-2010-09-07 H.J. Lu <hjl.tools@gmail.com>
- Jack Howarth <howarth@bromo.med.uc.edu>
-
- PR target/36502
- PR target/42313
- PR target/44651
- * config/i386/darwin.h (STACK_BOUNDARY): Redefine as 128 for
- profiling or 64-bit MS_ABI and as BITS_PER_WORD otherwise.
- (PREFERRED_STACK_BOUNDARY): Replace STACK_BOUNDARY with 128 in
- MAX macro.
-
-2010-09-07 H.J. Lu <hongjiu.lu@intel.com>
-
- * unwind-dw2-fde-glibc.c: Include <elf.h> for DT_CONFIG.
- Include <link.h> only if USE_PT_GNU_EH_FRAME is defined.
-
-2010-09-07 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc: Don't append t-android for Android targets.
-
- * config/t-android: Removed.
-
-2010-09-07 Richard Henderson <rth@redhat.com>
-
- * target.def (TARGET_ASM_EMIT_EXCEPT_PERSONALITY): New hook.
- * doc/tm.texi.in: Add doc marker.
- * doc/tm.texi: Rebuild.
- * except.c (switch_to_exception_section): Always build.
- (output_one_function_exception_table): Move section switch,
- personality output, and label output ...
- (output_function_exception_table): ... here. Use the new
- personality hook.
-
- * config/ia64/ia64.c (ia64_asm_emit_except_personality,
- ia64_asm_init_sections, TARGET_ASM_EMIT_EXCEPT_PERSONALITY,
- TARGET_ASM_INIT_SECTIONS): New.
- (ia64_asm_unwind_emit): Rename from process_for_unwind_directive,
- make static.
- (TARGET_ASM_UNWIND_EMIT): Update to match.
- * config/ia64/ia64-protos.h (process_for_unwind_directive): Remove.
-
- * config/arm/arm.c (arm_asm_emit_except_personality): New.
- (arm_asm_init_sections): New.
- (TARGET_ASM_EMIT_EXCEPT_PERSONALITY, TARGET_ASM_INIT_SECTIONS): New.
-
-2010-09-07 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * config/arm/arm.md: Remove unused variable.
-
-2010-09-07 Anatoly Sokolov <aesok@post.ru>
-
- * config/m32r/m32r.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
- * config/m32r/m32r.c (TARGET_MEMORY_MOVE_COSTS): Define.
- (m32r_memory_move_cost): New function.
-
-2010-09-07 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc: Append t-android for Android targets.
-
- * config/t-android: New.
-
-2010-09-07 Richard Henderson <rth@redhat.com>
-
- * target.def (unwind_emit_before_insn): New hook.
- * doc/tm.texi.in: Add @hook marker for it.
- * doc/tm.texi: Rebuild.
- * final.c (final_scan_insn): Respect unwind_emit_before_insn.
-
-2010-09-07 Martin Jambor <mjambor@suse.cz>
-
- PR fortran/43665
- * ipa-cp.c (ipcp_versionable_function_p): Return false if there
- are any type attributes.
-
-2010-09-07 Jan Hubicka <jh@suse.cz>
-
- * tree-ssa-ccp.c (fold_const_aggregate_ref): Fix handling of
- array_ref_low_bound in string access folding.
-
-2010-09-07 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/45206
- * config/i386/i386.c (ix86_expand_epilogue): Mark SP as valid after
- eh_return fixup sequence.
-
-2010-09-07 Jan Hubicka <jh@suse.cz>
-
- * gimple-fold.c (maybe_fold_reference): Verify that operand is
- gimple_min_invariant.
-
-2010-09-07 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45569
- * tree-eh.c (operation_could_trap_helper_p): Neither COMPLEX_EXPR
- nor CONSTRUCTOR can trap.
- * tree-complex.c (update_complex_assignment): Update EH info.
-
-2010-09-07 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45569
- * tree-cfg.c (build_gimple_cfg): Remove redundant stmt verification.
- * passes.c (execute_function_todo): Do not verify anything if
- we saw errors.
-
-2010-09-07 Richard Guenther <rguenther@suse.de>
-
- * tree-pretty-print.c (dump_generic_node): Dump void types as void.
-
-2010-09-07 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/43137
- * config/arm/iterators.md (qhs_zextenddi_cond, qhs_sextenddi_cond):
- New define_mode_attrs.
- * config/arm/arm.md (zero_extendsidi2, arm_zero_extendsidi2,
- arm_exxtendsidi2, arm_extendsidi2): Delete patterns.
- (zero_extend<mode>di2, extend<mode>di2 and related splits): New.
- (thumb1_zero_extendhisi2): Remove code to handle LABEL_REFs.
- Remove pool_range attribute.
- (arm_zero_extendhisi2, arm_zero_extendhisi2_v6, arm_zero_extendqisi2,
- arm_zero_extendqisi2_v6, thumb1_zero_extendqisi2_v6): Remove
- pool_range and neg_pool_range attributes.
- * config/arm/thumb2.md (thumb2_zero_extendsidi2,
- thumb2_zero_extendhidi2, thumb2_zero_extendqidi2, thumb2_extendsidi2,
- thumb2_extendhidi2, thumb2_extendqidi2): Delete.
-
-2010-09-06 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/linux-unwind.h (x86_fallback_frame_state): Properly
- check glibc.
-
-2010-09-06 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/22152
- * config/i386/mmx.md (*mov<mode>_internal_rex64,
- *mov<mode>_internal_avx, *mov<mode>_internal,
- *movv2sf_internal_rex64_avx, *movv2sf_internal_rex64,
- *movv2sf_internal_avx, *movv2sf_internal): Split out !y-!y alternative.
-
-2010-09-06 Mark Mitchell <mark@codesourcery.com>
-
- * c-typeck.c (do_warn_double_promotion): Remove.
- * doc/invoke.texi (-Wdouble-promotion): Note available for C++ and
- Objective-C++ too.
-
-2010-09-06 Anatoly Sokolov <aesok@post.ru>
-
- * config/frv/frv.h (CLASS_LIKELY_SPILLED_P): Remove.
- * config/frv/frv-protos.h (frv_class_likely_spilled_p): Remove.
- * config/frv/frv.c (frv_class_likely_spilled_p): Make static. Change
- argument type to reg_class_t. Change result type to bool.
- (TARGET_CLASS_LIKELY_SPILLED_P): Define.
-
-2010-09-06 Nicola Pero <nicola.pero@meta-innovation.com>
-
- PR libobjc/19850
- * gthr-posix.h (__gthread_objc_thread_detach): Use
- _objc_thread_attribs when detaching a thread.
- * gthr-posix95.h (__gthread_objc_thread_detach): Same change.
-
-2010-09-06 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/45524
- * configure.ac (enable_decimal_float): Set to $default_decimal_float.
- * configure: Regenerated.
-
-2010-09-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * combine.c (try_combine): Set subst_low_luid to i0.
-
-2010-09-06 Richard Guenther <rguenther@suse.de>
-
- * tree.def (MISALIGNED_INDIRECT_REF): Remove.
- * tree.h (INDIRECT_REF_P): Only check for INDIRECT_REF.
- (build_aligned_type): Declare.
- * tree.c (check_qualified_type): Also compare TYPE_ALIGN.
- (check_aligned_type): New function.
- (build_aligned_type): Likewise.
- * expr.c (expand_assignment): Handle misaligned stores via
- TARGET_MEM_REF and MEM_REF using movmisalign_optab.
- (expand_expr_real_1): Likewise.
- (safe_from_p): Remove MISALIGNED_INDIRECT_REF handling.
- * tree-vect-stmts.c (vectorizable_store): Do not build
- MISALIGNED_INDIRECT_REF but initialize alignment information.
- (vectorizable_load): Likewise.
- * builtins.c (get_object_alignment): Remove MISALIGNED_INDIRECT_REF
- handling.
- * cfgexpand.c (expand_debug_expr): Likewise.
- * dwarf2out.c (loc_list_from_tree): Likewise.
- * fold-const.c (maybe_lvalue_p): Likewise.
- (operand_equal_p): Likewise.
- (build_fold_addr_expr_with_type_loc): Likewise.
- * gimplify.c (gimplify_addr_expr): Likewise.
- (gimplify_expr): Likewise.
- * tree-cfg.c (verify_types_in_gimple_min_lval): Likewise.
- (verify_gimple_assign_single): Likewise.
- * tree-dump.c (dequeue_and_dump): Likewise.
- (tree_could_trap_p): Likewise.
- * tree-predcom.c (ref_at_iteration): Likewise.
- * tree-pretty-print.c (dump_generic_node): Likewise.
- (op_code_prio): Likewise.
- (op_symbol_code): Likewise.
- * tree-ssa-ccp.c (get_value_from_alignment): Likewise.
- * tree-ssa-loop-im.c (for_each_index): Likewise.
- (gen_lsm_tmp_name): Likewise.
- * tree-ssa-loop-ivopts.c (idx_find_step): Likewise.
- (find_interesting_uses_address): Likewise.
- * tree-ssa-loop-prefetch.c (idx_analyze_ref): Likewise.
- * tree-ssa-operands.c (get_expr_operands): Likewise.
- * tree-ssa-pre.c (create_component_ref_by_pieces_1): Likewise.
- * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Likewise.
- (ao_ref_init_from_vn_reference): Likewise.
- * tree.c (staticp): Likewise.
- (build1_stat): Likewise.
- (reference_alias_ptr_type): Likewise.
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
- * config/rs6000/rs6000.c (rs6000_check_sdmode): Remove
- MISALIGNED_INDIRECT_REF handling.
-
-2010-09-06 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45534
- * tree-ssa-address.c (create_mem_ref_raw): Add verify parameter.
- (create_mem_ref): Do verify the created TARGET_MEM_REF is valid
- on the target.
- (maybe_fold_tmr): Do not verify the created TARGET_MEM_REF is
- valid on the target.
-
-2010-09-06 Andreas Schwab <schwab@redhat.com>
-
- * configure.ac: Quote argument of AC_MSG_WARN.
- * configure: Regenerate.
-
-2010-09-06 Alexander Monakov <amonakov@ispras.ru>
-
- * sel-sched.c (move_cond_jump): Correct arguments to
- maybe_tidy_empty_bb.
- * sel-sched-ir.c (maybe_tidy_empty_bb): Export.
-
-2010-09-06 Andrey Belevantsev <abel@ispras.ru>
-
- PR rtl-optimization/44919
- * sel-sched.c (move_cond_jump): Remove assert, check that
- the several blocks case can only happen with mutually exclusive
- insns instead. Rewrite the movement code to support moving through
- several basic blocks.
-
-2010-09-06 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (iptrsize): New mode attribute.
- (tp_seg): Ditto.
- (*load_tp_<mode>): Macroize insn from *load_tp_{si,di} using P
- mode iterator.
- (*add_tp_<mode>): Ditto from *add_tp_{si,di}.
- (stack_protect_set_<mode>): Ditto from stack_protect_set_{si,di}.
- (stack_protect_test_<mode>): Ditto from stack_protect_test_{si,di}.
- (stack_tls_protect_set_<mode>): Ditto from
- stack_tls_protect_set_{si,di}. Use %@ to output segment register
- of thread base pointer load.
- (stack_tls_protect_test_<mode>): Ditto from
- stack_tls_protect_test_{si,di}. Use %@ to output segment register
- of thread base pointer load.
- (stack_protect_set): Rewrite using indirect functions.
- (stack_protect_test): Ditto.
- * config/i386/i386.c (ix86_print_operand_punct_valid): Add '@'.
- (ix86_print_operand): Handle '@'.
-
-2010-09-05 Giuseppe Scrivano <gscrivano@gnu.org>
-
- * tree-tailcall.c (process_assignment): Handle NEGATE_EXPR and
- MINUS_EXPR.
-
-2010-09-05 Mark Mitchell <mark@codesourcery.com>
-
- * doc/invoke.texi: Document -Wdouble-promotion.
- * c-typeck.c (convert_arguments): Check for implicit conversions
- from float to double.
- (do_warn_double_promotion): New function.
- (build_conditional_expr): Use it.
- (build_binary_op): Likewise.
-
-2010-09-05 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45535
- * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Properly
- handle TMR_INDEX2. Make sure TMR_INDEX is not NULL before
- dereferencing it.
- (indirect_refs_may_alias_p): Likewise.
-
-2010-09-05 Naveen H.S <naveen.S@kpitcummins.com>
-
- * config/sh/sh.c (sh_option_override): Make static.
- Adjust comments. Declare.
- (sh_function_value_regno_p): Likewise.
- (sh_register_move_cost): Modify the arguments, make static.
- Adjust comments. Declare.
- (TARGET_OPTION_OVERRIDE, TARGET_REGISTER_MOVE_COST
- TARGET_FUNCTION_VALUE_REGNO_P): Define.
- * config/sh/sh.h (OVERRIDE_OPTIONS, FUNCTION_VALUE_REGNO_P
- REGISTER_MOVE_COST): Delete.
- * config/sh/sh-protos.h (sh_override_options): Delete.
- (sh_register_move_cost): Delete.
- (sh_function_value_regno_p): Delete.
-
-2010-09-04 Anatoly Sokolov <aesok@post.ru>
-
- * config/m32r/m32r.c (m32r_function_value, m32r_libcall_value,
- m32r_function_value_regno_p): New functions.
- (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
- TARGET_FUNCTION_VALUE_REGNO_P): Declare.
- * config/m32r/m32r.h: (FUNCTION_VALUE, LIBCALL_VALUE,
- FUNCTION_VALUE_REGNO_P): Remove.
-
-2010-09-04 Jan Hubicka <jh@suse.cz>
-
- * gimple-fold.c (maybe_fold_reference): Use fold_const_aggregate_ref.
- * tree-ssa-ccp.c (fold_const_aggregate_ref): Use
- fold_read_from_constant_string.
-
- * gimple.h (canonicalize_constructor_val): Declare.
- * gimple-fold.c (canonicalize_constructor_val): New function.
- (get_symbol_constant_value):Use it.
- * tree-ssa-ccp.c (fold_const_aggregate_ref): Likewise.
-
-2010-09-04 Jan Hubicka <jh@suse.cz>
-
- * tree-switch-conversion.c (build_one_array): Set constructor to be
- static.
- * varpool.c (varpool_finalize_decl): Compute const_value_known.
-
-2010-09-04 Richard Guenther <rguenther@suse.de>
-
- PR bootstrap/45519
- * tree-flow.h (force_gimple_operand_1): Declare.
- (force_gimple_operand_gsi_1): Likewise.
- * gimplify.c (force_gimple_operand_1): New worker taking a
- gimple predicate for ...
- (force_gimple_operand): ... which now wraps it.
- (force_gimple_operand_gsi_1, force_gimple_operand_gsi): Likewise.
- * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Revert
- last change.
- * tree-ssa-address.c (gimplify_mem_ref_parts): Use
- force_gimple_operand_gsi_1 with is_gimple_mem_ref_addr.
- (create_mem_ref): Likewise.
-
-2010-09-04 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/predicates.md (sse_reg_operand): New predicate.
- * config/i386/i386.md (TFmode push splitter): Use sse_reg_operand
- predicate for operand 1.
- (XFmode push splitter): Use fp_register_operand predicate
- for operand 1.
- (*dummy_extendsfdf2, *dummy_extendsfxf2): Remove disabled patterns.
- (SF-DF float_extend push splitter): Add reload_completed insn
- predicate.
- ({SF,DF}-XF float_extend_push splitter): Macroize splitter using
- MODEF mode macro. Add reload_completed insn predicate.
-
-2010-09-04 Paolo Bonzini <bonzini@gnu.org>
-
- * df.h (enum df_ref_class): Remove DF_REF_EXTRACT.
- (struct df_extract_ref): Remove.
- (union df_ref_d): Remove extract_ref member.
- (df_ref_create): Remove last three arguments.
- (DF_REF_LOC): Remove DF_REF_EXTRACT case.
- * df-scan.c (df_ref_record): Remove last three arguments, do not
- pass them to df_ref_create_structure.
- (df_uses_record): Remove first and last three arguments. Replace
- first argument with DF_REF_REGULAR, adjust calls to remove the
- width, offset and mode. Always call recursively on the second
- and third argument of ZERO_EXTRACT and SIGN_EXTRACT.
- (df_ref_create_structure): Remove first argument.
- (struct df_scan_problem_data): Remove ref_extract_pool.
- (df_scan_free_internal): Do not free it.
- (df_scan_alloc): Do not allocate it.
- (df_ref_create): Remove last three arguments, do not pass them to
- df_ref_create_structure.
- (df_free_ref): Remove DF_REF_EXTRACT case.
- (df_notes_rescan): Adjust call to df_uses_record.
- (df_ref_equal_p, df_ref_compare, df_ref_create_structure):
- Remove DF_REF_EXTRACT case.
- (df_def_record_1): Do not special case class for a ZERO_EXTRACT lhs.
- Adjust calls to df_ref_record, using DF_REF_REGULAR for all REG
- and SUBREG definitions.
- (df_get_conditional_uses): Remove references to width/offset/mode,
- adjust call to df_ref_create_structure.
- (df_get_call_refs, df_insn_refs_collect, df_bb_refs_collect,
- df_entry_block_defs_collect, df_exit_block_uses_collect): Adjust
- calls to df_uses_record and df_ref_record.
- * fwprop.c (update_df): Remove references to width/offset/mode,
- adjust call to df_ref_create.
-
-2010-09-03 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (build_cdtor): Take VECtor as argument; fix array walk.
- (build_cdtor_fns): Update use of build_cdtor.
-
-2010-09-03 Joseph Myers <joseph@codesourcery.com>
-
- * doc/options.texi (SeparateAlias): Document.
- * opt-functions.awk (switch_flags): Handle SeparateAlias.
- * opth-gen.awk: Generate enumeration names for options marked
- SeparateAlias, but not for those marked Ignore.
- * opts-common.c (generate_canonical_option): Don't output separate
- argument for options marked CL_SEPARATE_ALIAS.
- (decode_cmdline_option): Handle CL_SEPARATE_ALIAS.
- * opts.h (CL_SEPARATE_ALIAS): New.
- (CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER, CL_TARGET,
- CL_COMMON): Adjust definitions.
- * config/i386/darwin.opt, config/mips/sde.opt: New.
- * common.opt (fdump-final-insns): New.
- * config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
- i386/darwin.opt.
- (mips*-sde-elf*): Add mips/sde.opt.
- * config/mips/sde.h (DRIVER_SELF_SPECS): Don't handle
- -mno-data-in-code and -mcode-xonly here.
- * defaults.h (DEFAULT_SWITCH_TAKES_ARG): Add 'd'.
- * gcc.c (option_map): Add "j" to --dump entry.
- (translate_options): Don't translate -d to -foutput-class-dir= here.
-
-2010-09-03 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-data-ref.c (dr_may_alias_p): Replace !DR_IS_READ with
- DR_IS_WRITE.
- (compute_all_dependences): Same.
- (create_rdg_edge_for_ddr): Same.
- * tree-data-ref.h (DR_IS_WRITE): New.
- (ddr_is_anti_dependent): Replace !DR_IS_READ with DR_IS_WRITE.
- * tree-if-conv.c (write_memrefs_written_at_least_once): Same.
- (write_memrefs_written_at_least_once): Same.
- * tree-predcom.c (suitable_component_p): Same.
- (determine_roots_comp): Same.
- (execute_load_motion): Same.
- * tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Same.
- (vect_enhance_data_refs_alignment): Same.
- (vect_analyze_group_access): Same.
-
-2010-09-03 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR testsuite/42843
- * Makefile.in (PLUGINCC): Define in terms of @CC@ / @CXX@
- (PLUGINCFLAGS): Define in terms of @CFLAGS@ / @CXXFLAGS@
-
-2010-09-03 Marcin Baczynski <marbacz@gmail.com>
-
- * dwarf2out.c (file scope): Remove #if0'd code.
- (gen_subprogram_die): Same.
-
-2010-09-03 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/45484
- * dwarf2out.c (flush_queued_reg_saves): Rename to...
- (dwarf2out_flush_queued_reg_saves): ... this. No longer static.
- (dwarf2out_frame_debug_expr, dwarf2out_frame_debug): Adjust callers.
- * dwarf2out.h (dwarf2out_flush_queued_reg_saves): New prototype.
- * config/i386/i386.c (output_set_got): Call it.
-
-2010-09-03 Michael Matz <matz@suse.de>
-
- PR middle-end/45415
- * tree-sra.c (sra_modify_assign): If we modify the statement,
- say so.
-
- * tree-ssa.c (verify_ssa): Check number of operands and links
- per statement to agree.
-
-2010-09-03 Uros Bizjak <ubizjak@gmail.com>
- Iain Sandoe <iains@gcc.gnu.org>
-
- PR target/45476
- * config/i386/t-darwin (LIB2FUNCS_EXCLUDE): New.
- * config/i386/darwin.h (LIBGCC2_HAS_TF_MODE,
- LIBGCC2_TF_CEXT, TF_SIZE): New defines.
-
-2010-09-03 Richard Guenther <rguenther@suse.de>
-
- * lto-streamer-out.c (output_function): Output function
- start and end loci.
- * lto-streamer-in.c (input_function): Input function start
- and end loci.
-
-2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * configure.ac: Use the GCC_AC_ENABLE_DECIMAL_FLOAT macro.
- * Makefile.in: Add aclocal.m4 dependency to dfp.m4.
- * configure: Regenerate.
- * aclocal.m4: Regenerate.
-
-2010-09-03 Jan Hubicka <jh@suse.cz>
-
- PR lto/44812
- * lto-cgraph.c (intput_node, input_varpool_node): Set DECL_EXTERNAL
- on functions/variables in other partition.
-
-2010-09-03 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (struct varpool_node): Add const_value_known.
- (varpool_decide_const_value_known): Declare.
- * tree-ssa-ccp.c (fold_const_aggregate_ref): Update initializer folding.
- * lto-cgraph.c (lto_output_varpool_node): Store const_value_known.
- (input_varpool_node): Restore const_value_known.
- * tree-ssa-loop-ivcanon (constant_after_peeling): Check varpool for
- initializer folding.
- * ipa.c (ipa_discover_readonly_nonaddressable_var,
- function_and_variable_visibility): Compute const_value_known.
- * gimple-fold.c (get_symbol_constant_value): Use varpool for
- initializer folding.
- * varpool.c (varpool_decide_const_value_known): New function.
-
-2010-09-03 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md: Remove empty preparation statements
- from splitters.
-
-2010-09-03 Jan Hubicka <jh@suse.cz>
-
- * passes.c (rest_of_decl_compilation): Do not add local vars into
- varpool.
- * varpool.c (varpool_get_node, varpool_node): Sanity check that only
- static or extern vars are in varpool.
- (varpool_finalize_decl): Sanity check that only static vars are
- finalized.
-
-2010-09-03 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45500
- * dwarf2out.c (rtl_for_decl_init): Give up for all generic vectors,
- not just generic vectors with BLKmode.
-
-2010-09-03 Richard Guenther <rguenther@suse.de>
-
- * tree.def (TARGET_MEM_REF): Merge TMR_SYMBOL and TMR_BASE.
- Move TMR_OFFSET to second operand. Add TMR_INDEX2.
- * tree.h (TMR_SYMBOL): Remove.
- (TMR_BASE, TMR_OFFSET): Adjust.
- (TMR_INDEX2): New.
- * alias.c (ao_ref_from_mem): Use TMR_BASE.
- * builtins.c (get_object_alignment): Merge TMR_BASE and
- TMR_SYMBOL handling.
- * cfgexpand.c (expand_debug_expr): Use TMR_BASE.
- * gimple.c (get_base_address): Merge MEM_REF and TARGET_MEM_REF
- handling. Also allow TARGET_MEM_REF as base address.
- (walk_stmt_load_store_addr_ops): TMR_BASE is always non-NULL.
- * gimplify.c (gimplify_expr): Gimplify TMR_BASE like MEM_REF
- base. Gimplify TMR_INDEX2.
- * tree-cfg.c (verify_types_in_gimple_reference): Adjust.
- * tree-dfa.c (get_ref_base_and_extent): Likewise.
- (get_addr_base_and_unit_offset): Likewise.
- * tree-eh.c (tree_could_trap_p): Likewise.
- * tree-pretty-print.c (dump_generic_node): Likewise.
- * tree-ssa-address.c (tree_mem_ref_addr): Simplify. Handle TMR_INDEX2.
- (create_mem_ref_raw): Merge symbol and base. Move 2ndary
- base to index2.
- (get_address_description): Reconstruct addres description
- from merged TMR_BASE and TMR_INDEX2.
- (maybe_fold_tmr): Fold propagated addresses.
- * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Merge
- MEM_REF and TARGET_MEM_REF paths.
- (indirect_refs_may_alias_p): Likewise.
- * tree-ssa-live.c (mark_all_vars_used_1): Handle TMR_INDEX2
- instead of TMR_SYMBOL.
- * tree-ssa-operands.c (get_tmr_operands): Simplify.
- * tree-ssa-pre.c (create_component_ref_by_pieces_1): Adjust
- according to changes ...
- * tree-ssa-sccvn.c (copy_reference_ops_from_ref): ... here.
- Split TARGET_MEM_REF into two fields plus the base.
- * tree.c (mem_ref_offset): Simplify.
- * tree-ssa-loop-im.c (for_each_index): Handle TMR_INDEX2.
- * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Likewise.
- Strip NOPs when folding MEM_REF addresses.
- * tree-ssa-sink.c (is_hidden_global_store): Handle TARGET_MEM_REF.
- * gimple-fold.c (maybe_fold_reference): Fold TARGET_MEM_REF here ...
- (fold_gimple_assign): ... not here.
-
-2010-09-03 Mingjie Xing <mingjie.xing@gmail.com>
-
- * config/mips/mips.h (SHIFT_COUNT_TRUNCATED): Change the definition.
- * config/mips/mips.c (mips_shift_truncation_mask): New function.
- (TARGET_SHIFT_TRUNCATION_MASK): Define.
-
-2010-09-02 Richard Henderson <rth@redhat.com>
-
- * configure.ac (gcc_cv_as_cfi_advance_working): Use objdump
- instead of readelf in the test.
- (gcc_cv_as_cfi_sections_directive): Check for correct relocation
- in the .debug_frame section for coff targets.
- * configure: Rebuild.
-
-2010-09-02 Anatoly Sokolov <aesok@post.ru>
-
- * config/m32c/m32c.h (CLASS_LIKELY_SPILLED_P): Remove.
- * config/m32c/m32c-protos.h (m32c_class_likely_spilled_p): Remove.
- * config/m32c/m32c.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
- (m32c_class_likely_spilled_p): Make static. Change argument type to
- reg_class_t. Change result type to bool.
-
-2010-09-02 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * config/rs6000/rs6000.opt (-mfriz): New switch to control whether
- to convert (double)(long) into a single FRIZ instruction or not
- when -ffast-math is used.
-
- * config/rs6000/vsx.md (VSX_DF): New iterator for DF/V2DF modes.
- (vsx_float_fix_<mode>2): Optimize (double)(long) into X{S,V}RDPIZ
- or FRIZ instruction if -ffast-math.
- * config/rs6000/rs6000.md (friz): Ditto.
-
- * doc/invoke.texi (RS/6000 and PowerPC Options): Document -mfriz.
-
-2010-09-02 Joseph Myers <joseph@codesourcery.com>
-
- * opth-gen.awk (quote, comma): Remove unused variables.
-
-2010-09-02 Ryan Mansfield <rmansfield@qnx.com>
-
- * arm.c (arm_override_options): Correct fall-back code to use
- SUBTARGET_CPU_DEFAULT.
-
-2010-09-02 Julian Brown <julian@codesourcery.com>
-
- * config/arm/neon.md (UNSPEC_VCLE, UNSPEC_VCLT): New constants for
- unspecs.
- (vcond<mode>, vcondu<mode>): New expanders.
- (neon_vceq<mode>, neon_vcge<mode>, neon_vcgt<mode>): Support
- comparisons with zero.
- (neon_vcle<mode>, neon_vclt<mode>): New patterns.
- * config/arm/constraints.md (Dz): New constraint.
-
-2010-09-02 Anatoly Sokolov <aesok@post.ru>
-
- * target.def (class_likely_spilled_p): New hook.
- * doc/tm.texi.in (TARGET_CLASS_LIKELY_SPILLED_P): Document.
- * doc/tm.texi: Regenerate.
- * targhooks.c (default_class_likely_spilled_p): New function.
- * targhooks.h (default_class_likely_spilled_p): Declare.
- * regs.h (CLASS_LIKELY_SPILLED_P): Remove.
- * combine.c (cant_combine_insn_p, likely_spilled_retval_p): Use
- TARGET_CLASS_LIKELY_SPILLED_P target hook. Use HARD_REGISTER_P macro.
- Use fixed_reg_set instead of fixed_regs.
- * cse.c (hash_rtx_cb): Use TARGET_CLASS_LIKELY_SPILLED_P target hook.
- * calls.c (avoid_likely_spilled_reg): Ditto.
- * ira-conflicts.c (ira_build_conflicts): Ditto.
- * ira.c (update_equiv_regs): Ditto.
- * mode-switching.c (create_pre_exit): Ditto.
- * regmove.c (find_matches): Ditto.
- (regclass_compatible_p): Use TARGET_CLASS_LIKELY_SPILLED_P target hook.
- * reload.c (SMALL_REGISTER_CLASS_P): Remove macro.
- (small_register_class_p): New inline function.
- (push_secondary_reload, find_reusable_reload, find_reloads): Use
- small_register_class_p instead of SMALL_REGISTER_CLASS_P.
-
- * config/i386/i386.h (CLASS_LIKELY_SPILLED_P): Remove.
- * config/i386/i386.c (ix86_class_likely_spilled_p): New.
- (TARGET_CLASS_LIKELY_SPILLED_P): Define.
-
-2010-09-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44937
- PR tree-optimization/45412
- * ipa-split.c (split_function): Properly remove PHI nodes.
-
-2010-09-02 Joseph Myers <joseph@codesourcery.com>
-
- * opts.h (struct cl_option): Add warn_message field.
- (struct cl_decoded_option): Add warn_message field.
- * doc/options.texi (Ignore, Warn): Document.
- * opt-functions.awk (needs_state_p): Don't consider aliases or
- ignored options to need state saved.
- * optc-gen.awk: Handle Warn and Ignore.
- * opth-gen.awk: Output OPT_SPECIAL_ignore.
- * opts-common.c (decode_cmdline_option): Set warn_message field.
- Handle ignored options.
- (decode_cmdline_options_to_array, generate_option,
- generate_option_input_file): Set warn_message field.
- (read_cmdline_option): Generate warnings from warn_message field.
- Handle ignored options.
- * common.opt (Wunreachable-code, fargument-alias,
- fargument-noalias, fargument-noalias-global,
- fargument-noalias-anything, fcse-skip-blocks, fforce-addr,
- floop-optimize, frerun-loop-opt, fsched2-use-traces, fsee,
- fstrength-reduce, ftree-store-ccp, ftree-store-copy-prop,
- ftree-salias): Mark Ignore.
- * config/i386/i386.h (CC1_CPU_SPEC_1): Don't handle -mcpu,
- -mintel-syntax and -mno-intel-syntax here.
- * config/i386/i386.opt (mcpu=, mintel-syntax): Define as aliases
- using Warn.
- * opts.c (common_handle_option): Don't handle options marked as
- ignored.
- (enable_warning_as_error): Handle ignored options.
-
-2010-09-02 Joseph Myers <joseph@codesourcery.com>
-
- PR driver/44076
- * opts.h (struct cl_option): Add alias_arg, neg_alias_arg and
- alias_target fields.
- * opt-functions.awk (opt_sanitized_name): Don't handle
- finline-limit=, Wlarger-than= and ftemplate-depth= specially.
- * optc-gen.awk: Generate alias fields.
- * opth-gen.awk: Explicitly give values for OPT_* enum constants.
- Don't generate such constants for aliases.
- * opts-common.c (generate_canonical_option): New.
- (decode_cmdline_option): Handle aliases. Use
- generate_canonical_option for known options instead of copying the
- input option text.
- * doc/options.texi (Alias): Document.
- * common.opt (W, Wlarger-than-, aux-info=, finline-limit-,
- fstack-check, specs): Mark as aliases.
- * gcc.c (driver_handle_option): Canonicalize -L options to joined
- arguments.
- (driver_handle_option): Don't handle OPT_specs.
- * opts.c (common_handle_option): Don't handle options marked as
- aliases.
- (enable_warning_as_error): Handle aliases.
- * stor-layout.c (layout_decl): Use OPT_Wlarger_than_ instead of
- OPT_Wlarger_than_eq.
- * tree-optimize.c (tree_rest_of_compilation): Use
- OPT_Wlarger_than_ instead of OPT_Wlarger_than_eq.
-
-2010-09-02 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (nonmemory_operand): New mode attribute.
- (push memory peephole2): Macroize peepholes using SWI mode iterator.
- (move immediate to memory peephole2): Macroize peepholes using
- SWI124 mode iterator.
- (non-pairable NOT peephole2): Macroize peepholes using SWI124
- mode iterator.
- (simple lea add peephole2): Macroize peepholes using SWI48
- mode iterator.
- (simple lea mult peephole2): Ditto.
- (imul by 3,5,9 to lea peephole2): Ditto.
- (mov $-1, reg peephole2): Macroize peepholes using SWI248
- mode iterator.
- (imul $32bit_imm,mem,reg peephole2): Ditto.
- (imul $8/16bit_imm,regmem,reg peephole2): Ditto.
-
-2010-09-02 Ian Bolton <ian.bolton@arm.com>
-
- * tree-ssa-loop-prefetch.c: Fix comment at head of file.
-
-2010-09-02 Olivier Hainque <hainque@adacore.com>
-
- PR middle-end/44763
- * ira-color.c (SORTGT): New macro, helper for qsort callbacks.
- (allocno_priority_compare_func): Use it instead of a straight
- difference computation over priorities.
-
-2010-09-02 Andi Kleen <ak@linux.intel.com>
-
- * opts.c (common_handle_option): Fix OPT_fwhopr/fwhopr_ handling.
-
-2010-09-02 Ira Rosen <irar@il.ibm.com>
-
- * tree-vectorizer.h (get_later_stmt): New function.
- (vect_analyze_data_ref_dependences): Add argument.
- * tree-vect-loop.c (vect_analyze_loop): Update call to
- vect_analyze_data_ref_dependences.
- * tree-vect-data-refs.c (vect_drs_dependent_in_basic_block):
- New function.
- (vect_analyze_data_ref_dependence): Add argument for basic block
- dependencies. Check dependencies in basic block vectorization.
- (vect_analyze_data_ref_dependences): Add argument and update call to
- vect_analyze_data_ref_dependences.
- * tree-vect-slp.c (vect_find_last_store_in_slp_instance): New.
- (vect_bb_vectorizable_with_dependencies): New.
- (vect_slp_analyze_bb): Check dependencies in basic block.
- (vect_schedule_slp_instance): Insert stores before the last store in
- SLP instance.
-
-2010-09-02 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/45476
- * config/i386/freebsd.h (LIBGCC2_HAS_TF_MODE,
- LIBGCC2_TF_CEXT, TF_SIZE): New defines.
-
-2010-09-01 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/45458
- * bb-reorder.c (add_labels_and_missing_jumps): Treat
- bbs ending with throwing insns like blocks ending with a call.
- (fix_up_fall_thru_edges): Likewise.
-
-2010-09-01 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/m32c/m32c-protos.h (m32c_function_arg): Delete.
- (m32c_function_arg_advance): Delete.
- * config/m32c/m32c.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/m32c/m32c.c (m32c_function_arg): Make static. Adjust
- comments. Take a const_tree and a bool. Declare.
- (m32c_function_arg_advance): Likewise.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-09-01 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/45476
- * config/i386/cygming.h (LIBGCC2_HAS_TF_MODE,
- LIBGCC2_TF_CEXT, TF_SIZE): Move from ...
- * config/i386/mingw32.h: ... here.
-
-2010-09-01 Andi Kleen <ak@linux.intel.com>
-
- PR lto/45475
- * lto-streamer-in.c (lto_input_ts_target_option): Add.
- (lto_input_tree_pointers): Call lto_input_ts_target_option.
- * lto-streamer-out (lto_output_ts_target_option): Add.
- (lto_output_tree_pointers): Call lto_output_ts_target_option.
-
-2010-09-01 Kai Tietz <kai.tietz@onevision.com>
-
- PR/target 45452
- * config/i386/cygwin.h: Change order of specified import libraries.
- * config/i386/mingw32.h: Likewise.
- * config/i386/t-cygwin: Likewise.
- * config/i386/t-mingw32: Likewise.
- * config/i386/t-mingw-w32: Likewise.
- * config/i386/t-mingw-w64: Likewise.
-
-2010-09-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * config/arm/neon-schedgen.ml (core): New type.
- (allCores): List of supported cores.
- (availability_table): Add supported cores.
- (collate_bypasses): Accept core as a parameter.
- (worst_case_latencies_and_bypasses): Accept core as a parameter.
- (emit_insn_reservations): Accept core as a parameter. Use tuneStr
- and coreStr to get tune attribute and prefix for functional units.
- (emit_bypasses): Accept core name and use it.
- (calculate_per_core_availability_table): New.
- (filter_core): New.
- (calculate_core_availability_table): New.
- (main): Use calculate_core_availablity_table.
- * config/arm/cortex-a8-neon.md: Update copyright year.
- Regenerated from ml file and merged in.
- (neon_mrrc, neon_mrc): Rename to cortex_a8_neon_mrrc and
- cortex_a8_neon_mrc.
-
-2010-09-01 Ian Bolton <ian.bolton@arm.com>
-
- * Makefile.in (tree-switch-conversion.o): Update dependencies.
-
-2010-09-01 Richard Guenther <rguenther@suse.de>
-
- * alias.c (ao_ref_from_mem): Adjust.
- * builtins.c (get_object_alignment): Likewise.
- * cfgexpand.c (expand_debug_expr): Likewise.
- * gimple.c (get_base_address): Likewise.
- * tree-dfa.c (get_ref_base_and_extent): Likewise.
- (get_addr_base_and_unit_offset): Likewise. Fix for
- both TMR_SYMBOL and TMR_BASE being set.
- * tree-eh.c (tree_could_trap_p): Likewise.
- * gimplify.c (gimplify_expr): Do not attempt to gimplify
- TMR_SYMBOL. Always gimplify TMR_BASE.
- * tree-cfg.c (verify_types_in_gimple_reference): Verify
- TMR_BASE if there is a TMR_SYMBOL.
- * tree-pretty-print.c (dump_generic_node): Adjust.
- * tree-ssa-address.c (addr_for_mem_ref): Likewise.
- (tree_mem_ref_addr): Likewise.
- (create_mem_ref_raw): Likewise.
- (move_fixed_address_to_symbol): Likewise.
- (create_mem_ref): Likewise.
- (dump_mem_address): Likewise.
- * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Adjust.
- Fix for both TMR_SYMBOL and TMR_BASE being set.
- (indirect_refs_may_alias_p): Likewise.
- * tree-ssa-operands.c (get_tmr_operands): Adjust.
- * tree.def (TARGET_MEM_REF): Adjust documentation.
-
-2010-09-01 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.h (enum ix86_tune_indices) <X86_TUNE_SINGLE_POP>:
- Rename from X86_TUNE_ADD_ESP_4.
- <IX86_TUNE_DOUBLE_POP>: Rename from X86_TUNE_ADD_ESP_8.
- <IX86_TUNE_SINGLE_PUSH>: Rename from X86_TUNE_SUB_ESP_4.
- <IX86_TUNE_DOUBLE_PUSH>: Rename from X86_TUNE_SUB_ESP_8.
- (TARGET_SINGLE_POP): Rename from TARGET_ADD_ESP_4.
- (TARGET_DOUBLE_POP): Rename from TARGET_ADD_ESP_8.
- (TARGET_SINGLE_PUSH): Rename from TARGET_SUB_ESP_4.
- (TARGET_DOUBLE_POP): Rename from TARGET_SUB_ESP_8.
- * config/i386/i386.c (initial_ix86_tune_features)
- <X86_TUNE_SINGLE_POP>: Invert members.
- <X86_TUNE_DOUBLE_POP>: Ditto.
- <X86_TUNE_SINGLE_PUSH>: Ditto.
- <X86_TUNE_DOUBLE_PUSH>: Ditto.
- * config/i386/i386.md (*pop<mode>1): Rename from pop<mode>1.
- No longer exported.
- (push peephole2 patterns): Macroize peepholes using P mode iterator.
- Adjust for renamed TARGET_{SINGLE,DOUBLE}_PUSH defines.
- (pop peephole2 patterns): Macroize peepholes using P mode iterator.
- Adjust for renamed TARGET_{SINGLE,DOUBLE}_POP defines.
-
-2010-09-01 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimplify.c (gimplify_init_constructor): Do not create a temporary for
- a volatile LHS if the constructor has only one element.
-
-2010-09-01 Mikael Pettersson <mikpe@it.uu.se>
-
- PR bootstrap/45321
- * tree.c (stdarg_p): Make fntype parameter const.
- * tree.h (stdarg_p): Likewise.
- (function_args_iterator): Remove unused fntype field.
- (function_args_iter_init): Do not initialize fntype
- field. Make fntype parameter const.
-
-2010-09-01 Richard Guenther <rguenther@suse.de>
-
- * tree-vrp.c (adjust_range_with_scev): Use number of iteration
- estimate.
- (vrp_visit_phi_node): Delay using SCEV till we balloon the range.
- (execute_vrp): Compute number of iteration estimates.
- * cfgloop.h (estimate_numbers_of_iterations_loop): Adjust prototype.
- * tree-flow.h (estimate_numbers_of_iterations): Likewise.
- * tree-data-ref.c (estimated_loop_iterations): Adjust.
- * tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop):
- Infer loop bounds from undefined behavior based on a new parameter.
- (estimate_numbers_of_iterations): Likewise.
- (scev_probably_wraps_p): Adjust.
- * tree-ssa-loop.c (tree_ssa_loop_bounds): Likewise.
-
-2010-09-01 Nick Clifton <nickc@redhat.com>
-
- * config/stormy16/stormy16.c: Use REG_P, MEM_P and CONST_INT_P
- where appropriate.
- (xstormy16_legitimate_address_p): Use true and false instead of 1
- and 0.
- (xstormy16_expand_prologue): Delete unused local variable 'insn'.
- (xstormy16_function_arg): Use FIRST_ARGUMENT_REGNUM in place of
- magic constant 2.
- (xstormy16_expand_call): Fix comment at start of function.
-
-2010-09-01 Nick Clifton <nickc@redhat.com>
-
- * config/rx/rx.c (rx_expand_prologue): Do not adjust frame size
- when pushing accumulator register.
- (rx_get_stack_layout): Always save call clobbered registers inside
- interrupt handlers.
- * config/rx/rx-modes.def: Fix descriptive comment at start of file.
-
-2010-09-01 Uros Bizjak <ubizjak@gmail.com>
-
- * config.gcc (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add
- i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file.
-
- * libgcc-std.ver (GCC_4.6.0): Define version.
-
-2010-08-31 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-nested.c (convert_all_function_calls): Iterate until after the
- sum of static chains in the nest doesn't change.
-
-2010-08-31 Anatoly Sokolov <aesok@post.ru>
-
- * config/m32c/m32c.c (classes_intersect): Remove.
- (m32c_preferred_reload_class, m32c_secondary_reload_class): Use
- reg_classes_intersect_p instead of classes_intersect.
- (class_can_hold_mode): Change arguments type from enum reg_class to
- reg_class_t. Use reg_class_contents instead of class_contents.
- (m32c_register_move_cost): Make static. Change arguments type from
- enum reg_class to reg_class_t. Use reg_classes_intersect_p instead of
- classes_intersect. Use reg_class_contents instead of class_contents.
- (m32c_memory_move_cost): Make static. Change arguments type from
- enum reg_class to reg_class_t.
- (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
- * config/m32c/m32c.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
- * config/m32c/m32c-protos.h (m32c_register_move_cost,
- m32c_memory_move_cost): Remove.
-
-2010-08-31 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/arm/arm-protos.h (arm_function_arg_advance): Delete.
- (arm_function_arg): Delete.
- (arm_needs_doubleword_align): Take a const_tree.
- * config/arm/arm.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/arm/arm.c (aapcs_select_call_coproc): Take a const_tree.
- (aapcs_layout_arg, arm_needs_doubleword_align): Likewise.
- (arm_function_arg): Make static. Take a const_tree and a bool.
- (arm_function_arg_advance): Likewise.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-08-31 Andi Kleen <ak@linux.intel.com>
-
- * common.opt (fwhopr=): Update for -fwhopr=jobserver
- * doc/invoke.texi (fwhopr): Document -fwhopr=jobserver.
- * lto-wrapper.c (run_gcc): Add jobserver mode.
- * opts.c (common_handle_option): Fix OPT_fwhopr for non numeric
- argument.
-
-2010-08-31 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (popdi1): Rewrite using POST_INC memory operand.
- (popsi1): Ditto.
- (*popdi1_epilogue): Ditto.
- (*popsi1_epilogue): Ditto.
- (popsi, popdi peephole2 patterns): Update peepholes for changed
- pop{si,di}1 and *pop{si,di}1_epilogue patterns.
-
- (pop<mode>1): Macroize insn from pop{si,di}1 using P code iterator.
- (*pop<mode>1_epilogue): Ditto from *pop{si,di}1_epilogue.
-
- * config/i386/i386.c (*ix86_gen_pop1): Remove indirect function.
- (override_options): Do not initialize removed ix86_gen_pop1.
- (gen_pop): New static function.
- (ix86_expand_prologue): Use gen_pop instead of ix86_gen_pop1.
- (release_scratch_register_on_entry): Ditto.
- (ix86_restore_reg_using_pop): Ditto.
- (ix86_expand_epilogue): Ditto.
-
-2010-08-31 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/45461
- * builtins.c (dummy_object): Return a MEM_REF instead of INDIRECT_REF.
-
-2010-08-31 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/fr30/fr30.c (fr30_move_double): Delete `dregno' and extra
- semicolons.
-
-2010-08-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * doc/extend.texi: Fix documentation of the return value of
- __builtin_choose_expr.
-
-2010-08-31 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/v850/v850-protos.h (function_arg): Delete.
- * config/v850/v850.h (FUNCTION_ARG): Delete.
- (FUNCTION_ARG_ADVANCE): Move code to...
- * config/v850/v850.c (v850_function_arg_advance): ...here.
- (v850_function_arg): Make static. Take a const_tree and a bool.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-08-31 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/m32r/m32r.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Move
- these...
- (ROUND_ADVANCE, ROUND_ADVANCE_ARG, ROUND_ADVANCE_CUM, PASS_IN_REG_P):
- ...and these...
- * config/m32r/m32r.c (m32r_function_arg, m32r_function_arg_advance):
- ..to here..
- (ROUND_ADVANCE, ROUND_ADVANCE_ARG, ROUND_ADVANCE_CUM, PASS_IN_REG_P):
- ...and here.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-08-31 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/rx/rx-protos.h (rx_function_arg, rx_function_arg_size):
- Delete.
- * config/rx/rx.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/rx/rx.c (rx_function_arg_size): Make static.
- (rx_function_arg): Likewise.
- (rx_function_arg_advance): New function.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-08-31 John Tytgat <John.Tytgat@aaug.net>
-
- * config/arm/arm.c (arm_override_options): Remove superfluous test.
- Fix indentation.
-
-2010-08-31 Eric Botcazou <ebotcazou@adacore.com>
-
- * dwarf2out.c (gen_decl_die) <CONST_DECL>: Do not skip in Ada.
- (dwarf2out_decl) <CONST_DECL>: Likewise.
-
-2010-08-30 Eric Botcazou <ebotcazou@adacore.com>
-
- Stack usage support
- * common.opt (-fstack-usage): New option.
- * doc/invoke.texi (Debugging options): Document it.
- * builtins.c (expand_builtin_apply): Pass TRUE as 4th argument to
- allocate_dynamic_stack_space.
- (expand_builtin_alloca): Add 4th bool parameter CANNOT_ACCUMULATE
- and propagate it to allocate_dynamic_stack_space.
- (expand_builtin) <BUILT_IN_ALLOCA>: Adjust for above change.
- * calls.c (initialize_argument_information): Pass TRUE as 4th
- argument to allocate_dynamic_stack_space.
- (expand_call): Set current_function_has_unbounded_dynamic_stack_size
- to 1 when pushing a variable-sized argument onto the stack. Pass
- TRUE as 4th argument to allocate_dynamic_stack_space.
- Update current_function_pushed_stack_size.
- (emit_library_call_value_1): Likewise.
- * explow.c (allocate_dynamic_stack_space): Add 4th bool parameter
- CANNOT_ACCUMULATE. If flag_stack_usage, look into the size and
- attempt to find an upper bound. Remove redundant code for the
- SETJMP_VIA_SAVE_AREA case.
- * expr.h (allocate_dynamic_stack_space): Add 4th bool parameter.
- * function.h (struct stack_usage): New structure.
- (current_function_static_stack_size): New macro.
- (current_function_dynamic_stack_size): Likewise.
- (current_function_pushed_stack_size): Likewise.
- (current_function_dynamic_alloc_count): Likewise.
- (current_function_has_unbounded_dynamic_stack_size): Likewise.
- (current_function_allocates_dynamic_stack_space): Likewise.
- (struct function): Add new field 'su'.
- * function.c (instantiate_virtual_regs): If SETJMP_VIA_SAVE_AREA,
- add the value of the dynamic offset to the dynamic stack usage.
- (gimplify_parameters): Set ALLOCA_FOR_VAR_P on call to BUILT_IN_ALLOCA
- for variable-sized objects.
- (prepare_function_start): Allocate cfun->su if flag_stack_usage.
- (rest_of_handle_thread_prologue_and_epilogue): Call output_stack_usage.
- * gimplify.c (gimplify_decl_expr): Set ALLOCA_FOR_VAR_P on call to
- BUILT_IN_ALLOCA for variable-sized objects.
- * output.h (output_stack_usage): Declare.
- * toplev.c (stack_usage_file): New file pointer.
- (output_stack_usage): New function.
- (open_auxiliary_file): Likewise.
- (lang_dependent_init): Open file if flag_stack_usage is set.
- (finalize): Close file if stack_usage_file is not null.
- * tree.h (ALLOCA_FOR_VAR_P): New macro.
- * config/alpha/alpha.c (compute_frame_size): New function.
- (alpha_expand_prologue): Use it.
- (alpha_start_function): Likewise.
- (alpha_expand_epilogue): Likewise. Set stack usage info.
- * config/i386/i386.c (ix86_expand_prologue): Likewise.
- * config/ia64/ia64.c (ia64_expand_prologue): Likewise.
- * config/mips/mips.c (mips_expand_prologue): Likewise.
- * config/pa/pa.c (hppa_expand_prologue): Likewise.
- * config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise.
- * config/sparc/sparc.c (sparc_expand_prologue): Likewise.
-
-2010-08-30 Zdenek Dvorak <ook@ucw.cz>
-
- PR tree-optimization/45427
- * tree-ssa-loop-niter.c (number_of_iterations_ne_max): Rewritten.
- Handle the case that the exit is never taken correctly.
- (number_of_iterations_ne): Pass exit_must_be_taken to
- number_of_iterations_ne_max.
-
-2010-08-30 Catherine Moore <clm@codesourcery.com>
-
- * config/mips/mips.h (BASE_DRIVER_SELF_SPECS):
- Infer -mdspr2 for the the 74K.
-
-2010-08-30 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45419
- * tree-ssa-live.c (dump_enumerated_decls): Clear the whole wi variable.
-
- PR middle-end/45423
- * gimplify.c (goa_stabilize_expr): Handle TRUTH_NOT_EXPR
- and TRUTH_{AND,OR,XOR}_EXPR.
- * c-parser.c (c_parser_omp_atomic): Handle boolean
- {PRE,POST}_{INC,DEC}REMENT.
-
-2010-08-30 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/xtensa/xtensa-protos.h (function_arg_advance): Delete.
- (function_arg): Delete.
- * config/xtensa/xtensa.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- (FUNCTION_INCOMING_ARG): Delete.
- * config/xtensa/xtensa.c (function_arg_advance): Rename to...
- (xtensa_function_arg_advance): ...this. Make static. Take a const_tree
- and a bool.
- (function_arg): Rename to...
- (xtensa_function_arg_1): ...this. Make static. Take a const_tree and
- a bool.
- (xtensa_function_arg, xtensa_function_incoming_arg): Nex functions.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
- (TARGET_FUNCTION_INCOMING_ARG): Define.
-
-2010-08-30 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/21602
- * builtins.c (fold_builtin_memory_op): Fold memmove to memcpy
- using points-to information.
-
-2010-08-30 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/linux.h (TARGET_HAS_SINCOS): Replace | with ||.
-
-2010-08-30 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45449
- * tree-ssa-live.c (remove_unused_locals): Also remove address-taken
- variables.
-
-2010-08-30 Joseph Myers <joseph@codesourcery.com>
-
- * opts.h (CL_ERR_NEGATIVE): Define.
- * opts.c (unknown_option_callback): Don't postpone warnings for
- options marked with CL_ERR_NEGATIVE.
- * opts-common.c (decode_cmdline_option): Set CL_ERR_NEGATIVE error
- for negative versions of CL_REJECT_NEGATIVE options.
-
-2010-08-30 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (zero_extendsidi2_1): Rename from
- zero_extendsidi2_32.
- (zero_extend<mode>di2): Macroize insn from zero_extend{qi,hi}di2
- using SWI12 mode iterator.
- (zero_extendhisi2_and): Merge insn pattern and corresponding spliter
- to define_insn_and_split pattern.
- (zero_extendqi<mode>2): Macroize expander from zero_extendqi{hi,si}2
- using SWI24 mode iterator.
- (*zero_extendqi<mode>2_and): Macroize insn from
- *zero_extendqi{hi,si}2_and using SWI24 mode iterator.
- (*zero_extendqi<mode>2_movzbl_and): Macroize insn from
- *zero_extendqihi2_movzbw_and and *zero_extendqisi2_movzbl_and using
- SWI24 mode iterator.
- (*zero_extendqi<mode>2_movzbl): Ditto from
- *zero_extendqi{hi,si}2_movzbl.
- (extendsidi2_1): Rename from extendsidi2_32.
- (extend<mode>di2): Macroize insn from extend{qi,hi}di2 using
- SWI12 mode iterator.
-
-2010-08-29 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/ia64/ia64.h (HARD_REGNO_NREGS): Return 1 for CCImode in
- general purpose registers.
- (HARD_REGNO_MODE_OK): Accept CCImode in general purpose registers.
- * config/ia64/ia64.md (*movcci): Change to named pattern. Deal
- with general purpose registers and memory operands. Add associated
- CCImode post-reload splitter.
- * config/ia64/div.md: Change BImode to CCImode throughout.
-
-2010-08-28 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/ia64/ia64.md (cstorebi4): Fix thinko.
-
-2010-08-28 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.c (reorder_var_tracking_notes): This
- function was dropping debug insns which caused PR45299.
-
-2010-08-28 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/sse.md (extsuffix): New code attribute.
- (sse4_1_<code>v8qiv8hi2): Macroize insn from sse4_1_extendv8qiv8hi2
- and sse4_1_zero_extendv8qiv8hi2 using any_extend code iterator.
- (sse4_1_<code>v4qiv4si2): Ditto from sse4_1_extendv4qiv4si2
- and sse4_1_zero_extendv4qiv4si2.
- (sse4_1_<code>v2qiv2di2): Ditto from sse4_1_extendv2qiv2di2
- and sse4_1_zero_extendv2qiv2di2.
- (sse4_1_<code>v4hiv4si2): Ditto from sse4_1_extendv4hiv4si2
- and sse4_1_zero_extendv4hiv4si2.
- (sse4_1_<code>v2hiv2di2): Ditto from sse4_1_extendv2hiv2di2
- and sse4_1_zero_extendv2hiv2di2.
- (sse4_1_extendv2siv2di2): Ditto from sse4_1_extendv2siv2di2
- and sse4_1_zero_extendv2siv2di2
-
- (<s>mulv8hi3_highpart): Macroize expander from {u,s}mulv8hi3_highpart
- using any_extend code iterator.
- (*avx_<s>mulv8hi3_highpart): Macroize insn from
- *avx_{u,s}mulv8hi3_highpart using any_extend code iterator.
- (*<s>mulv8hi3_highpart): Ditto from *{u,s}mulv8hi3_highpart.
-
- * config/i386/i386.c (ix86_expand_sse4_unpack): Update for renamed
- gen_sse4_1_sign_extend* functions.
- (struct builtin_description bdesc_args): Ditto.
-
-2010-08-27 Xinliang David Li <davidxl@google.com>
-
- PR/45422
- * tree-ssa-loop-ivopts.c (iv_ca_get_num_inv_exprs): Remove.
- (iv_ca_set_no_cp): Update used inv expr count.
- (iv_ca_set_cp): Ditto.
- (iv_ca_new): Initialize new member.
- (iv_ca_free): Free memory.
-
-2010-08-27 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/sh/sh-protos.h (sh_function_arg): Delete.
- (sh_function_arg_advance): Delete.
- * config/sh/sh.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- (PASS_IN_REG_P): Eliminate cast.
- * config/sh/sh.c (sh_function_arg_advance): Make static. Take a
- const_tree and a bool.
- (sh_function_arg): Likewise.
- (sh_output_mi_thunk): Call sh_function_arg_advance) and
- sh_function_arg.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-08-27 Naveen H.S <naveen.S@kpitcummins.com>
- Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.c (push_regs): Emit movml for interrupt handler
- when possible.
- (sh_expand_epilogue): Likewise.
- * config/sh/sh.md (movml_push_banked): New insn.
- (movml_pop_banked): Likewise.
-
-2010-08-28 Bernd Schmidt <bernds@codesourcery.com>
-
- * genautomata.c (gen_regexp_repeat, gen_regexp_allof,
- gen_regexp_oneof, gen_regexp_sequence): Use the string found
- in vector element 0 rather than the original string when there's
- only one element.
- (gen_regexp): Remove extra semicolon.
-
- * config/arm/vfp.md (arm_movsi_vfp, thumb2_movsi_vfp, movsf_vfp,
- thumb2_movsf_vfp): Set attribute "insn".
- * config/arm/arm.md (arm_ashrdi3_1bit, arm_lshrdi3_1bit, not_shiftsi,
- not_shiftsi_compare0, not_shiftsi_compare0_scratch, arm_one_cmplsi2,
- thumb1_one_cmplsi2, notsi_compare0, notsi_compare0_scratch,
- arm_zero_extendsidi2, arm_extendsidi2, thumb1_movdi_insn,
- arm_movsi_insn, movhi_insn_arch4, movhi_bytes, arm_movqi_insn,
- thumb1_movqi_insn arm32_movhf, thumb1_movhf, arm_movsf_soft_insn,
- thumb1_movsf_insn, thumb_movdf_insn, mov_scc, mov_negscc, mov_notscc,
- movsicc_insn, movsfcc_soft_insn, and_scc, cond_move, if_move_not,
- if_not_move, if_shift_move, if_move_shift, if_shift_shift,
- if_not_arith, if_arith_not, cond_move_not): Likewise.
-
-2010-08-23 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * config/rs6000/rs6000-protos.h (rs6000_address_for_fpconvert):
- New declaration.
- (rs6000_allocate_stack_temp): Ditto.
- (rs6000_expand_convert_si_to_sfdf): Ditto.
-
- * config/rs6000/rs6000.c (rs6000_override_options): Adjust long
- line. Update the options set if power6 or power7 server/embedded
- type options are used. If we give a warning for no vsx under
- -mcpu=power7 -mno-altivec, mark -mvsx as an explicit option.
- (rs6000_allocate_stack_temp): New function to allocate a stack
- tempoary and adjust the address so it meets either REG+OFFSET or
- REG+REG addressing requirements.
- (rs6000_address_for_fpconvert): Adjust REG+OFFSET addresses so
- that they can be used with the LFIWAX/LFIWZX instrucitons.
- (rs6000_expand_convert_si_to_sfdf): New helper funciton for
- converting signed/unsigned SImode to either SFmode/DFmode.
-
- * config/rs6000/rs6000.h (TARGET_FCFID): New macros to determine
- whether certain instructions can be generated.
- (TARGET_FCTIDZ): Ditto.
- (TARGET_STFIWX): Ditto.
- (TARGET_LFIWAX): Ditto.
- (TARGET_LFIWZX): Ditto.
- (TARGET_FCFIDS): Ditto.
- (TARGET_FCFIDU): Ditto.
- (TARGET_FCFIDUS): Ditto.
- (TARGET_FCTIDUZ): Ditto.
- (TARGET_FCTIWUZ): Ditto.
-
- * config/rs6000/rs6000.md (UNSPEC_FCTIW): New unspec constants.
- (UNSPEC_FCTID): Ditto.
- (UNSPEC_LFIWAX): Ditto.
- (UNSPEC_LFIWZX): Ditto.
- (UNSPEC_FCTIWUZ): Ditto.
- (rreg): Use correct constraints.
- (SI_CONVERT_FP): New mode attribute for floating point conversion
- tests.
- (E500_CONVERT): Ditto.
- (lfiwax): New insns for converting from integer to floating point
- utilizing newer instructions. Attempt to optimize conversions
- that come from memory so that we don't load the value into a GPR,
- spill it to the stack and reload it into a FPR.
- (floatsi<mode>2_lfiwax): Ditto.
- (floatsi<mode>2_lfiwax_mem): Ditto.
- (floatsi<mode>2_lfiwax_mem2): Ditto.
- (lfiwzx): Ditto.
- (floatunssi<mode>2_lfiwzx): Ditto.
- (floatunssi<mode>2_lfiwzx_mem): Ditto.
- (floatunssi<mode>2_lfiwzx_mem2): Ditto.
- (floatdidf2_mem): Ditto.
- (floatunsdidf2_fcfidu): Ditto.
- (floatunsdidf2_mem): Ditto.
- (floatunsdisf2): Ditto.
- (floatunsdisf2_fcfidus): Ditto.
- (floatunsdisf2_mem): Ditto.
- (floatsidf2): Add support for LFIWAX/LFIWZX/FCFIDS/FCFIDU/FCFIDUS.
- Use FCFID on 32-bit hosts that support it.
- (floatsidf2_internal): Ditto.
- (floatunssisf2): Ditto.
- (floatunssidf2): Ditto.
- (floatunssidf2_internal): Ditto.
- (floatsisf2): Ditto.
- (floatdidf2): Ditto.
- (floatdidf2_fpr): Ditto.
- (floatunsdidf2): Ditto.
- (floatdisf2): Ditto.
- (floatdisf2_fcfids): Ditto.
- (floatdisf2_internal1): Ditto.
- (fixuns_truncsfsi2): Delete, merge into common pattern for both
- SF/DF. Add power7 support.
- (fix_truncsfsi2): Ditto.
- (fixuns_truncdfsi2): Ditto.
- (fixuns_truncdfdi2): Ditto.
- (fix_truncdfsi2): Ditto.
- (fix_truncdfsi2_internal): Ditto.
- (fix_truncdfsi2_internal_gfxopt): Ditto.
- (fix_truncdfsi2_mfpgpr): Ditto.
- (fctiwz): Ditto.
- (btruncdf2): Ditto.
- (btruncdf2_fpr): Ditto.
- (btructsf2): Ditto.
- (ceildf2): Ditto.
- (ceildf2_fpr): Ditto.
- (ceilsf2): Ditto.
- (floordf2): Ditto.
- (floordf2_fpr): Ditto.
- (floorsf2): Ditto.
- (rounddf2): Ditto.
- (rounddf2_fpr): Ditto.
- (roundsf2): Ditto.
- (fix_trunc<mode>si2): Combine SF/DF conversion into one insn.
- (fix_trunc<mode>di2): Ditto.
- (fixuns_trunc<mode>si2): Ditto.
- (fixuns_trunc<mode>di2): Ditto.
- (fctiwz_<mode>): Ditto.
- (btrunc<mode>2): Ditto.
- (btrunc<mode>2_fpr): Ditto.
- (ceil<mode>2): Ditto.
- (ceil<mode>2_fpr): Ditto.
- (floor<mode>2): Ditto.
- (float<mode>2_fpr): Ditto.
- (round<mode>2): Ditto.
- (round<mode>2_fpr): Ditto.
- (fix_trunc<mode>si2_stfiwx): New insn for machines with STFIWX.
- (fixuns_trunc<mode>si2_stfiwx): Ditto.
- (fix_truncdfsi2_internal): Ditto.
- (fix_trunc<mode>si2_mem): Combiner pattern to eliminate storing
- converted value on stack, loaded into GPR, and then stored into
- the final destination.
- (fix_trunc<mode>di2_fctidz): New pattern for targets supporting
- FCTIDZ.
- (lrint<mode>di2): New insn, provide the lrint builtin functions.
- (ftruncdf2): Delete, unused.
- (fix_trunctfsi2_internal): Use gen_fctiwz_df, not gen_fctiwz.
-
- * config/rs6000/vsx.md (toplevel): Update copyright year.
- (VSr2): Use "ws" contraint for DFmode, not "!r#r".
- (VSr3): Ditto.
-
-2010-08-27 Basile Starynkevitch <basile@starynkevitch.net>
- Jeremie Salvucci <jeremie.salvucci@free.fr>
-
- * gengtype.c (output_type_enum): Test the right union member.
-
-2010-08-27 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/41484
- * config/i386/sse.md (sse4_1_extendv8qiv8hi2): Also accept memory
- operands for operand 1.
- (sse4_1_extendv4qiv4si2): Ditto.
- (sse4_1_extendv2qiv2di2): Ditto.
- (sse4_1_extendv4hiv4si2): Ditto.
- (sse4_1_extendv2hiv2di2): Ditto.
- (sse4_1_extendv2siv2di2): Ditto.
- (sse4_1_zero_extendv8qiv8hi2): Ditto.
- (sse4_1_zero_extendv4qiv4si2): Ditto.
- (sse4_1_zero_extendv2qiv2di2): Ditto.
- (sse4_1_zero_extendv4hiv4si2): Ditto.
- (sse4_1_zero_extendv2hiv2di2): Ditto.
- (sse4_1_zero_extendv2siv2di2): Ditto.
- (*sse4_1_extendv8qiv8hi2): Remove insn pattern.
- (*sse4_1_extendv4qiv4si2): Ditto.
- (*sse4_1_extendv2qiv2di2): Ditto.
- (*sse4_1_extendv4hiv4si2): Ditto.
- (*sse4_1_extendv2hiv2di2): Ditto.
- (*sse4_1_extendv2siv2di2): Ditto.
- (*sse4_1_zero_extendv8qiv8hi2): Ditto.
- (*sse4_1_zero_extendv4qiv4si2): Ditto.
- (*sse4_1_zero_extendv2qiv2di2): Ditto.
- (*sse4_1_zero_extendv4hiv4si2): Ditto.
- (*sse4_1_zero_extendv2hiv2di2): Ditto.
- (*sse4_1_zero_extendv2siv2di2): Ditto.
-
-2010-08-27 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/mips/mips-protos.h (mips_function_arg_advance): Delete
- (mips_function_arg): Delete.
- (mips_function_arg_boundary): Take a const_tree.
- * config/mips/mips.c (mips_function_arg_boundary): Likewise.
- (mips_arg_info): Likewise.
- (mips_setup_incoming_varargs): Call mips_function_arg_advance
- instead of FUNCTION_ARG_ADVANCE.
- (mips_function_arg_advance): Adjust prototype. Make static.
- (mips_function_arg): Likewise.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
- * config/mips/mips.h (FUNCTION_ARG_ADVANCE, FUNCTION_ARG): Delete.
-
-2010-08-27 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/rs6000/rs6000.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
- * config/rs6000/rs6000-protos.h (function_arg_advance): Delete.
- (function_arg): Delete.
- (function_arg_boundary): Take a const_tree.
- * config/rs6000/rs6000.c (function_arg_boundary): Likewise.
- (rs6000_spe_function_arg): Likewise.
- (rs6000_parm_start): Likewise.
- (rs6000_arg_size): Likewise.
- (rs6000_darwin64_record_arg_advance_recurse): Likewise.
- (rs6000_darwin64_record_arg): Likewise. Take a bool instead of an int.
- (rs6000_mixed_function_arg): Likewise.
- (function_arg): Rename to...
- (rs6000_function_arg): ...this.
- (function_arg_advance): Rename to...
- (rs6000_function_arg_advance_1): ...this
- (rs6000_function_arg_advance): New function. Call it.
- (setup_incoming_varargs): Call rs6000_function_arg_advance_1.
- (rs6000_return_in_memory): Adjust call to rs6000_darwin64_record_arg.
- (rs6000_function_value): Likewise.
- (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
-
-2010-08-27 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * config/arm/arm.md (enabled): Test the value of arch_enabled
- rather than just using it.
-
-2010-08-27 Olivier Hainque <hainque@adacore.com>
- Eric Botcazou <ebotcazou@adacore.com>
-
- * dse.c (group_info.base_mem, get_group_info): Use BLKmode to
- cover all the possible offsets from this base.
- (scan_reads_nospill): Pass base_mem's mode to canon_true_dependence.
-
-2010-08-26 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/44485
- * calls.c (flags_from_decl_or_type): For const or pure
- noreturn functions return ECF_LOOPING_CONST_OR_PURE|ECF_NORETURN
- together with ECF_CONST resp. ECF_PURE.
- * builtins.c (expand_builtin): Use flags_from_decl_or_type
- instead of querying flags directly.
- * tree-ssa-loop-niter.c (finite_loop_p): Likewise.
- * tree-ssa-dce.c (find_obviously_necessary_stmts): Likewise.
-
-2010-08-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45255
- * tree.c (decl_address_invariant_p): DECL_DLLIMPORT_P statics
- and externals are also invariant.
-
-2010-08-25 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/44858
- * combine.c (try_combine): If recog_for_combine added CLOBBERs to
- newi2pat, make sure they don't affect newpat.
-
- PR rtl-optimization/45400
- * combine.c (simplify_shift_const_1) <case SUBREG>: Only use
- SUBREG_REG if both modes are of MODE_INT class.
-
-2010-08-25 Julian Brown <julian@codesourcery.com>
-
- * config/arm/arm.c (arm_issue_rate): Return 2 for Cortex-A5.
- * config/arm/arm.md (generic_sched): No for Cortex-A5.
- (generic_vfp): Likewise.
- (cortex-a5.md): Include.
- * config/arm/cortex-a5.md: New.
-
-2010-08-25 Richard Guenther <rguenther@suse.de>
-
- * alias.c (get_alias_set): Assign a single alias-set to all pointers.
- * gimple.c (gimple_get_alias_set): Remove special handling
- for pointers.
-
-2010-08-25 Bernd Schmidt <bernds@codesourcery.com>
-
- PR middle-end/45355
- * combine.c (try_combine): Use reg_overlap_mentioned_p rather than
- dead_or_set_p when computing i0_feeds_i2_n.
-
- * combine.c (find_split_point): Undo canonicalization of multiply-add
- to (minus x (mult)) when it seems likely that this will increase the
- chances of a split.
-
-2010-08-25 Richard Guenther <rguenther@suse.de>
-
- PR lto/44562
- * lto-streamer.c (lto_record_common_node): Do not mess with
- TYPE_CANONICAL when not in lto.
- * gimple.c (gimple_register_type): Likewise.
-
-2010-08-25 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45316
- * tree-ssa-pre.c (eliminate): Properly clean EH info.
-
-2010-08-25 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45393
- * tree-ssa-math-opts.c (execute_cse_sincos_1): Properly transfer
- and clean EH info. Avoid SSA update.
- (execute_cse_sincos): Cleanup the CFG if it has changed.
-
-2010-08-25 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45379
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Handle
- TARGET_MEM_REF in alignment computation.
-
-2010-08-25 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/45059
- * tree-ssa-reassoc.c (eliminate_redundant_comparison): Strip useless
- type conversions from newop{1,2}. Assert t is a comparison and
- newop{1,2} after the stripping are gimple vals.
-
-2010-08-25 Tejas Belagod <tejas.belagod@arm.com>
-
- * config/arm/iterators.md (VU, SE, V_widen_l): New.
- (V_unpack, US): New.
- * config/arm/neon.md (vec_unpack<US>_hi_<mode>): Expansion for vmovl.
- (vec_unpack<US>_lo_<mode>): Likewise.
- (neon_vec_unpack<US>_hi_<mode>): Instruction pattern for vmovl.
- (neon_vec_unpack<US>_lo_<mode>): Likewise.
- (vec_widen_<US>mult_lo_<mode>): Expansion for vmull.
- (vec_widen_<US>mult_hi_<mode>): Likewise.
- (neon_vec_<US>mult_lo_<mode>"): Instruction pattern for vmull.
- (neon_vec_<US>mult_hi_<mode>"): Likewise.
- (neon_unpack<US>_<mode>): Widening move intermediate step for
- vectorizing without -mvectorize-with-neon-quad.
- (neon_vec_<US>mult_<mode>): Widening multiply intermediate step
- for vectorizing without -mvectorize-with-neon-quad.
- * config/arm/predicates.md (vect_par_constant_high): Check for
- high-half lanes of a vector.
- (vect_par_constant_low): Check for low-half lanes of a vector.
-
-2010-08-24 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (struct ifc_dr): New.
- (IFC_DR): New.
- (DR_WRITTEN_AT_LEAST_ONCE): New.
- (DR_RW_UNCONDITIONALLY): New.
- (memref_read_or_written_unconditionally): Use the cached values
- when possible.
- (write_memref_written_at_least_once): Same.
- (if_convertible_loop_p): Initialize and free DR->aux fields.
-
-2010-08-24 Sebastian Pop <sebastian.pop@amd.com>
-
- * gimple.c (gimple_could_trap_p_1): Not static anymore.
- Pass an extra bool parameter include_mem.
- (gimple_could_trap_p): Adjust call to gimple_could_trap_p_1.
- (gimple_assign_rhs_could_trap_p): Same.
- * gimple.h (gimple_could_trap_p_1): Declared.
- * tree-data-ref.h (same_data_refs_base_objects): New.
- (same_data_refs): New.
- * tree-if-conv.c (memrefs_read_or_written_unconditionally): New.
- (write_memrefs_written_at_least_once): New.
- (ifcvt_memrefs_wont_trap): New.
- (operations_could_trap): New.
- (ifcvt_could_trap_p): New.
- (if_convertible_gimple_assign_stmt_p): Call ifcvt_could_trap_p.
- Gets a vector of data refs.
- (if_convertible_stmt_p): Same.
- (if_convertible_loop_p_1): New.
- (if_convertible_loop_p): Call if_convertible_loop_p_1.
-
-2010-08-24 Sebastian Pop <sebastian.pop@amd.com>
-
- * common.opt (ftree-loop-if-convert-stores): New flag.
- * doc/invoke.texi (ftree-loop-if-convert-stores): Documented.
- * tree-if-conv.c (ifc_temp_var): Pass an extra parameter GSI. Insert
- the created statement before GSI.
- (if_convertible_phi_p): Allow virtual phi nodes when
- flag_loop_if_convert_stores is set.
- (if_convertible_gimple_assign_stmt_p): Allow memory reads and writes
- Do not handle types that do not match is_gimple_reg_type.
- Remove loop and bb parameters. Call gimple_could_trap_p instead of
- when flag_loop_if_convert_stores is set, as LHS can contain
- memory refs.
- (if_convertible_stmt_p): Remove loop and bb parameters. Update calls
- to if_convertible_gimple_assign_stmt_p.
- (if_convertible_loop_p): Update call to if_convertible_stmt_p.
- (replace_phi_with_cond_gimple_assign_stmt): Renamed
- predicate_scalar_phi. Do not handle virtual phi nodes.
- (ifconvert_phi_nodes): Renamed predicate_all_scalar_phis.
- Call predicate_scalar_phi.
- (insert_gimplified_predicates): Insert the gimplified predicate of a BB
- just after the labels for flag_loop_if_convert_stores, otherwise
- insert the predicate in the end of the BB.
- (predicate_mem_writes): New.
- (combine_blocks): Call predicate_all_scalar_phis. When
- flag_loop_if_convert_stores is set, call predicate_mem_writes.
- (tree_if_conversion): Call mark_sym_for_renaming when
- flag_loop_if_convert_stores is set.
- (main_tree_if_conversion): Return TODO_update_ssa_only_virtuals when
- flag_loop_if_convert_stores is set.
-
-2010-08-24 Anatoly Sokolov <aesok@post.ru>
-
- * config/pa/pa.c (hppa_register_move_cost, pa_libcall_value,
- pa_function_value_regno_p, pa_print_operand_punct_valid_p): New.
- (pa_function_value): Make static.
- (override_options): Rename to...
- (pa_option_override): ...this. Make static.
- (TARGET_PRINT_OPERAND_PUNCT_VALID_P, TARGET_REGISTER_MOVE_COST,
- TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P,
- TARGET_OPTION_OVERRIDE): Define.
- * config/pa/pa.h (OVERRIDE_OPTIONS, FUNCTION_VALUE_REGNO_P,
- LIBCALL_VALUE, REGISTER_MOVE_COST, PRINT_OPERAND_PUNCT_VALID_P):
- Remove.
- * config/pa/pa-protos.h (override_options): Remove.
-
-2010-08-24 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45379
- * tree-ssa-address.c (create_mem_ref_raw): Drop to MEM_REF
- if addr->index is NULL or zero.
- * tree-ssa-alias.c (indirect_refs_may_alias_p): Handle
- TARGET_MEM_REF more properly.
- (indirect_ref_may_alias_decl_p): Likewise.
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Keep TARGET_MEM_REFs.
- * alias.c (ao_ref_from_mem): Handle TARGET_MEM_REF more properly.
-
-2010-08-23 Anatoly Sokolov <aesok@post.ru>
-
- * config/m32c/m32c.c (m32c_function_value_regno_p): Make static.
- (m32c_override_options): Rename to...
- (m32c_option_override): ...this. Make static.
- (TARGET_FUNCTION_VALUE_REGNO_P, TARGET_OPTION_OVERRIDE): Define.
- * config/m32c/m32c.h (OVERRIDE_OPTIONS, FUNCTION_VALUE_REGNO_P):
- Remove.
- * config/m32c/m32c-protos.h (m32c_override_options,
- m32c_function_value_regno_p): Remove.
-
-2010-08-23 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (gather_memory_references_ref) :
- Fix a typo in a previous commit.
-
-2010-08-23 Kai Tietz <kai.tietz@onevision.com>
-
- * tree-vect-loop.c (vect_get_single_scalar_iteraion_cost):
- Pre-initialize innerloop_iters to one.
-
-2010-08-23 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-flow.h (may_be_nonaddressable_p): New definition. Make the
- existing static function global.
-
- * tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): This function
- is changed to global.
-
- * tree-ssa-loop-prefetch.c (gather_memory_references_ref): Call
- may_be_nonaddressable_p on base, and don't collect this reference
- if the address of the base could not be taken.
-
-2010-08-23 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * config/rs6000/rs6000.opt (-mveclibabi=mass): New option to
- enable the compiler to autovectorize mathmetical functions for
- power7 using the Mathematical Acceleration Subsystem library.
-
- * config/rs6000/rs6000.c (rs6000_veclib_handler): New variable to
- handle which vector math library we have.
- (rs6000_override_options): Add -mveclibabi=mass support.
- (rs6000_builtin_vectorized_libmass): New function to handle auto
- vectorizing math functions that are in the MASS library.
- (rs6000_builtin_vectorized_function): Call it.
-
- * doc/invoke.texi (RS/6000 and PowerPC Options): Document
- -mveclibabi=mass.
-
-2010-08-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR boehm-gc/34544
- * gthr-posix.h (__gthread_active_init): Delete.
- (__gthread_active_p): Do activity check here.
- Don't include errno.h on hppa-hpux. Update comment.
- * gthr-posix95.h (__gthread_active_init): Delete.
- (__gthread_active_p): Do activity check here.
- Don't include errno.h on hppa-hpux. Update comment.
- * config.gcc (hppa[12]*-*-hpux11*): Define extra_parts.
- * config/pa/pa64-hpux.h (LIB_SPEC): When -static is specified, only
- add -lpthread when -mt or -pthread is specified.
- * config/pa/pa-hpux11.h (LIB_SPEC): likewise.
- (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/pa/t-pa-hpux11 (LIBGCCSTUB_OBJS): Define.
- (stublib.c, pthread_default_stacksize_np-stub.o,
- pthread_mutex_lock-stub.o, pthread_mutex_unlock-stub.o,
- $(T)libgcc_stub.a): Add methods.
- * config/pa/t-pa64 (LIBGCCSTUB_OBJS): Add pthread stubs.
- (stublib.c, pthread_default_stacksize_np-stub.o,
- pthread_mutex_lock-stub.o, pthread_mutex_unlock-stub.o): Add methods.
- * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
- pthread_mutex_unlock): New stubs.
-
-2010-08-22 Joseph Myers <joseph@codesourcery.com>
-
- * Makefile.in (gccspec.o, cppspec.o): Update dependencies.
- * common.opt (L, nodefaultlibs, nostdlib, pg, static): New
- options.
- * config/avr/avr.h (LIBSTDCXX): Remove initial "-l".
- * config/freebsd.h (MATH_LIBRARY_PROFILE): Remove initial "-l".
- * config/i386/djgpp.h (LIBSTDCXX): Remove initial "-l".
- * config/rs6000/aix.h (LIBSTDCXX_STATIC): Remove initial "-l".
- * config/s390/tpf.h (MATH_LIBRARY, LIBSTDCXX): Remove initial
- "-l".
- * cppspec.c: Include opts.h.
- (lang_specific_driver): Use cl_decoded_option structures.
- * doc/tm.texi.in (MATH_LIBRARY): Update documentation.
- * doc/tm.texi: Regenerate.
- * gcc.c (translate_options): Translate -d to -foutput-class-dir=.
- (driver_handle_option): Allow driver options needing no special
- processing.
- (process_command): Decode options before call to
- lang_specific_driver. Pass decoded options to
- lang_specific_driver.
- * gcc.h (lang_specific_driver): Update prototype.
- * gccspec.c: Include opts.h.
- (lang_specific_driver): Use cl_decoded_option structures.
- * opts-common.c (option_ok_for_language, generate_option,
- generate_option_input_file): New.
- (decode_cmdline_option): Use option_ok_for_language.
- (decode_cmdline_options_to_array): Use generate_option_input_file.
- (handle_generated_option): Use generate_option.
- * opts.h (generate_option, generate_option_input_file): Declare.
-
-2010-08-22 Anatoly Sokolov <aesok@post.ru>
-
- * config/mips/mips.c (mips_override_options): Rename to...
- (mips_option_override): ...this. Make static.
- (TARGET_OPTION_OVERRIDE): Define.
- (mips_in_small_data_p): Update comment.
- * config/mips/mips.h (OVERRIDE_OPTIONS): Remove.
- (FIXED_REGISTERS): Update comment.
- * config/mips/mips-protos.h (mips_override_options): Remove.
-
-2010-08-21 Olivier Hainque <hainque@adacore.com>
-
- * config/rs6000/vxworks.h (TARGET_OS_CPP_BUILTINS): Define __PPC__.
-
-2010-08-21 Olivier Hainque <hainque@adacore.com>
-
- * config/rs6000/vxworks.h (PREFERRED_STACK_BOUNDARY,
- ABI_STACK_BOUNDARY): Ensure STACK_BOUNDARY is honored despite EABI.
-
-2010-08-20 Jan Hubicka <jh@suse.cz>
-
- * tree-pass.h (pass_ipa_cdtor_merge): New function.
- * cgraphunit.c (static_ctors, static_dtors): Move to ipa.c; make
- heap allocated.
- (record_cdtor_fn): Move to ipa.c; do not test for
- have_ctors_dtors.
- (build_cdtor): Move to ipa.c; add code avoiding construction
- when target have ctors/dtors and there is only one ctor/dtor at given
- priority.
- (compare_ctor, compare_dtor): Move to ipa.c; use DECL_UID to stabilize
- sort; reverse order of constructors.
- (cgraph_build_cdtor_fns): Move to ipa.c; rename to build_cdtor_fns.
- (cgraph_finalize_function): Do not call record_cdtor_fn.
- (cgraph_finalize_compilation_unit): Do not call cgraph_build_cdtor_fns.
- (cgraph_build_static_cdtor): Move to ipa.c.
- * ipa.c: Include target.h and tree-iterator.h.
- (cgraph_build_static_cdtor, static_ctors, static_dtors,
- record_cdtor_fn, build_cdtor, compare_ctor, compare_dtor,
- build_cdtor_fns, ipa_cdtor_merge, gate_ipa_cdtor_merge,
- pass_ipa_cdtor_merge): New.
- * passes.c (init_optimization_passes): Enqueue pass_ipa_cdtor_merge.
- * ipa-prop.c (update_indirect_edges_after_inlining): Avoid out of
- bounds access.
-
-2010-08-20 Jan Hubicka <jh@suse.cz>
-
- PR c++/45307
- PR c++/17736
- * cgraph.h (cgraph_only_called_directly_p,
- cgraph_can_remove_if_no_direct_calls_and_refs_p): Handle
- static cdtors.
- * cgraphunit.c (cgraph_decide_is_function_needed): Static cdtors
- are not needed.
- (cgraph_finalize_function): Static cdtors are reachable.
- (cgraph_mark_functions_to_output): Use cgraph_only_called_directly_p.
-
-2010-08-20 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (lto_output_edge): Use gimple_has_body_p instead of
- flag_wpa.
- * lto-streamer-out.c (lto_output): Likewise.
- * passes.c (ipa_write_optimization_summaries): Initialize statement
- uids.
-
-2010-08-20 Olivier Hainque <hainque@adacore.com>
-
- * tree.h (alias_diag_flags): New enum.
- (alias_pair): Add an 'emitted_diags' field.
- * varasm.c (finish_aliases_1): Honor and update p->emitted_diags.
- (assemble_alias): Initialize emitted_diags of new pairs.
-
-2010-08-20 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/rs6000/aix.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.
- * config/rs6000/linux.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
- * config/rs6000/linux64.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
- (STACK_CHECK_PROTECT): Define.
- * config/rs6000/rs6000.c (rs6000_emit_probe_stack_range): New function.
- (output_probe_stack_range): Likewise.
- (rs6000_emit_prologue): Invoke rs6000_emit_probe_stack_range if static
- builtin stack checking is enabled.
- * config/rs6000/rs6000-protos.h (output_probe_stack_range): Declare.
- * config/rs6000/rs6000.md (UNSPECV_PROBE_STACK_RANGE): New constant.
- (probe_stack_range): New insn.
-
-2010-08-20 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/45336
- * config/i386/emmintrin.h (_mm_extract_epi16): Cast to unsigned
- short first.
-
- * config/i386/smmintrin.h (_mm_extract_epi8): Cast to unsigned
- char first.
-
-2010-08-20 Jakub Jelinek <jakub@redhat.com>
-
- PR target/45336
- * config/i386/sse.md (*sse4_1_pextrb): Add SWI48 mode iterator
- to cover zero extension into 64-bit register.
- (*sse2_pextrw): Likewise.
- (*sse4_1_pextrd_zext): New insn.
-
-2010-08-20 Iain Sandoe <iains@gcc.gnu.org>
-
- revert r163410, partially revert r163267.
- * config/rs6000/darwin.h (LIB_SPEC): Remove.
- * config/darwin.h (REAL_LIBGCC_SPEC): Link lgcc for all
- Darwin versions.
-
-2010-08-20 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/44974
- * builtins.c (expand_builtin): Don't optimize away
- calls to DECL_LOOPING_CONST_OR_PURE_P builtins.
-
-2010-08-20 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (ashift %rsp splitter): Remove splitter.
- (pro_epilogue_adjust_stack_di_2): Use "l" constraint for
- alternative 1 of operand 2.
-
-2010-08-20 Jakub Jelinek <jakub@redhat.com>
- Paolo Bonzini <bonzini@gnu.org>
-
- * simplify-rtx.c (simplify_unary_operation_1): Optimize
- (sign_extend (zero_extend (...)) and
- ({sign,zero}_extend (lshiftrt (ashift X (const_int I)) (const_int I))).
-
-2010-08-20 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/45353
- * sel-sched-ir.c (sel_bb_head): Return NULL even if next_nonnote_insn
- after bb_note is a BARRIER.
-
-2010-08-20 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/rs6000/darwin.h (LIB_SPEC): New. Provide saveFP/restFP by
- linking libgcc.a.
-
-2010-08-20 Jakub Jelinek <jakub@redhat.com>
- Michael Matz <matz@suse.de>
-
- * tree-ssa-address.c (tree_mem_ref_addr): Convert offset to sizetype.
-
-2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
-
- * ggc-common.c (ggc_mark_root_tab): New function, split out from...
- (ggc_mark_roots): ...here.
-
-2010-08-20 Nathan Froyd <froydnj@codesourcery.com>
-
- * vec.h (FOR_EACH_VEC_ELT): Define.
- * c-decl.c: Use it.
- * cfgloop.c: Likewise.
- * cfgloopmanip.c: Likewise.
- * cgraph.c: Likewise.
- * cgraphunit.c: Likewise.
- * combine.c: Likewise.
- * config/bfin/bfin.c: Likewise.
- * config/mips/mips.c: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * dbxout.c: Likewise.
- * df-scan.c: Likewise.
- * dominance.c: Likewise.
- * dse.c: Likewise.
- * dwarf2out.c: Likewise.
- * except.c: Likewise.
- * expr.c: Likewise.
- * function.c: Likewise.
- * gcse.c: Likewise.
- * genattr.c: Likewise.
- * ggc-common.c: Likewise.
- * gimplify.c: Likewise.
- * graphite-blocking.c: Likewise.
- * graphite-clast-to-gimple.c: Likewise.
- * graphite-dependences.c: Likewise.
- * graphite-interchange.c: Likewise.
- * graphite-poly.c: Likewise.
- * graphite-scop-detection.c: Likewise.
- * graphite-sese-to-poly.c: Likewise.
- * graphite.c: Likewise.
- * haifa-sched.c: Likewise.
- * ifcvt.c: Likewise.
- * implicit-zee.c: Likewise.
- * ipa-prop.c: Likewise.
- * ipa-struct-reorg.c: Likewise.
- * ipa.c: Likewise.
- * ira-build.c: Likewise.
- * ira-color.c: Likewise.
- * ira-emit.c: Likewise.
- * lambda-code.c: Likewise.
- * loop-invariant.c: Likewise.
- * loop-unroll.c: Likewise.
- * lower-subreg.c: Likewise.
- * lto-cgraph.c: Likewise.
- * lto-opts.c: Likewise.
- * lto-streamer-in.c: Likewise.
- * lto-streamer-out.c: Likewise.
- * lto-streamer.c: Likewise.
- * lto-symtab.c: Likewise.
- * matrix-reorg.c: Likewise.
- * opts.c: Likewise.
- * predict.c: Likewise.
- * print-tree.c: Likewise.
- * sdbout.c: Likewise.
- * sel-sched-dump.c: Likewise.
- * sel-sched-ir.c: Likewise.
- * sel-sched.c: Likewise.
- * sese.c: Likewise.
- * stor-layout.c: Likewise.
- * tree-cfg.c: Likewise.
- * tree-cfgcleanup.c: Likewise.
- * tree-chrec.c: Likewise.
- * tree-data-ref.c: Likewise.
- * tree-emutls.c: Likewise.
- * tree-inline.c: Likewise.
- * tree-into-ssa.c: Likewise.
- * tree-loop-distribution.c: Likewise.
- * tree-loop-linear.c: Likewise.
- * tree-mudflap.c: Likewise.
- * tree-outof-ssa.c: Likewise.
- * tree-parloops.c: Likewise.
- * tree-predcom.c: Likewise.
- * tree-pretty-print.c: Likewise.
- * tree-scalar-evolution.c: Likewise.
- * tree-ssa-live.c: Likewise.
- * tree-ssa-loop-im.c: Likewise.
- * tree-ssa-loop-ivcanon.c: Likewise.
- * tree-ssa-loop-ivopts.c: Likewise.
- * tree-ssa-loop-manip.c: Likewise.
- * tree-ssa-loop-niter.c: Likewise.
- * tree-ssa-loop-prefetch.c: Likewise.
- * tree-ssa-phiprop.c: Likewise.
- * tree-ssa-pre.c: Likewise.
- * tree-ssa-reassoc.c: Likewise.
- * tree-ssa-sccvn.c: Likewise.
- * tree-ssa-structalias.c: Likewise.
- * tree-ssa.c: Likewise.
- * tree-vect-data-refs.c: Likewise.
- * tree-vect-loop-manip.c: Likewise.
- * tree-vect-loop.c: Likewise.
- * tree-vect-patterns.c: Likewise.
- * tree-vect-slp.c: Likewise.
- * tree-vect-stmts.c: Likewise.
- * tree-vrp.c: Likewise.
- * tree.c: Likewise.
- * value-prof.c: Likewise.
- * var-tracking.c: Likewise.
- * varasm.c: Likewise.
- * vmsdbgout.c: Likewise.
-
-2010-08-19 Nathan Sidwell <nathan@codesourcery.com>
- Richard Guenther <richard.guenther@gmail.com>
-
- * gimplify.c (gimplify_modify_expr): When assigning to volatiles,
- copy the src value and return a copy.
- * doc/extend.texi (Volatiles): Move from C++ to C and expand.
- (C++ Volatiles): Adjust to describe C++ semantics only.
-
-2010-08-20 Joseph Myers <joseph@codesourcery.com>
-
- * doc/tm.texi.in (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Document to
- be zero or nonzero.
- * doc/tm.texi: Regenerate.
- * defaults.h (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Define.
- * df-scan.c (df_get_exit_block_use_set), reginfo.c
- (init_reg_sets_1), rtlanal.c (rtx_unstable_p, rtx_varies_p):
- Handle new PIC_OFFSET_TABLE_REG_CALL_CLOBBERED semantics.
- * config/ia64/ia64.h (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Define
- to 1.
-
-2010-08-20 Olivier Hainque <hainque@adacore.com>
-
- * config/sparc/sparc.c (sparc_asm_function_epilogue): Don't output
- an extra nop past a sibling call at the very end.
-
-2010-08-19 Bernd Schmidt <bernds@codesourcery.com>
-
- PR bootstrap/45350
- * combine.c (try_combine): Initialize i1_is_used and i2_is_used. Fix
- a comment.
-
-2010-08-19 Nathan Froyd <froydnj@codesourcery.com>
-
- * target.def (function_arg, function_incoming_arg): Remove const
- qualifier on CUMULATIVE_ARGS parameter.
- * targhooks.h (default_function_arg, default_function_incoming_arg):
- Likewise.
- * targhooks.c (default_function_arg, default_function_incoming_arg):
- Likewise.
- * config/i386/i386.c (ix86_function_arg): Likewise.
-
-2010-08-19 Jakub Jelinek <jakub@redhat.com>
-
- PR target/45336
- * simplify-rtx.c (simplify_unary_operation_1): Optimize nested
- SIGN_EXTENDs or ZERO_EXTENDs.
-
-2010-08-19 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/42172
- * combine.c (combine_validate_cost): New arg I0. All callers changed.
- Take its cost into account if nonnull.
- (insn_a_feeds_b): New static function.
- (combine_instructions): Look for four-insn combinations.
- (can_combine_p): New args PRED2, SUCC2. All callers changed. Take
- them into account when computing all_adjacent and looking for other
- uses.
- (combinable_i3pat): New args I0DEST, I0_NOT_IN_SRC. All callers
- changed. Treat them like I1DEST and I1_NOT_IN_SRC.
- (try_combine): New arg I0. Handle four-insn combinations.
- (distribute_notes): New arg ELIM_I0. All callers changed. Treat it
- like ELIM_I1.
-
-2010-08-19 Jason Merrill <jason@redhat.com>
-
- PR c++/45307
- * gimplify.c (gimplify_init_constructor): Just return GS_UNHANDLED
- if ctor is empty.
- (gimplify_modify_expr_rhs): Adjust.
-
-2010-08-19 Nathan Froyd <froydnj@codesourcery.com>
-
- * cfgloop.c (get_loop_body_in_bfs_order): Avoid redundant call to
- bitmap_bit_p.
- * config/bfin/bifn.c (bfin_discover_loop): Likewise.
- * dominance.c (iterate_fix_dominators): Likewise.
- * dse.c (set_usage_bits): Likewise.
- (set_position_unneeded, record_store): Likewise.
- * gimple-fold.c (get_maxval_strlen): Likewise.
- * haifa-sched.c (fix_inter_tick, fix_recovery_deps): Likewise.
- * ipa-inline.c (update_caller_keys): Likewise.
- * ipa-split.c (verify_non_ssa_vars): Likewise.
- * ipa-type-escape.c (mark_type, close_type_seen): Likewise.
- (close_type_exposed_parameter, close_type_full_escape): Likewise.
- (close_addressof_down): Likewise.
- * ira-color.c (assign_hard_reg, push_allocno_to_stack): Likewise.
- (setup_allocno_left_conflicts_size): Likewise.
- (ira_reassign_conflict_allocnos): Likewise.
- (ira_reassign_pseudos): Likewise.
- * ira-emit.c (change_loop): Likewise.
- * loop-invariant.c (mark_regno_live, mark_regno_death): Likewise.
- * lto-streamer-out.c (write_symbol): Likewise.
- * predict.c (expr_expected_value_1): Likewise.
- * regstat.c (regstat_bb_compute_ri): Likewise.
- * sel-sched.c (create_block_for_bookkeeping): Likewise.
- (track_scheduled_insns_and_blocks, sel_sched_region_1): Likewise.
- * stmt.c (expand_case): Likewise.
- * tree-eh.c (emit_eh_dispatch): Likewise.
- * tree-into-ssa.c (prune_unused_phi_nodes): Likewise.
- * tree-loop-distribution.c (make_nodes_having_upstream_mem_writes):
- Likewise.
- (rdg_flag_vertex, rdg_flag_loop_exits): Likewise.
- (rdg_build_components): Likewise.
- * tree-object-size.c (collect_object_sizes_for): Likewise.
- * tree-sra.c (convert_callers): Likewise.
- * tree-ssa-coalesce.c (live_track_add_partition): Likewise.
- * tree-ssa-live.c (mark_all_vars_used_1): Likewise.
- * tree-ssa-pre.c (bitmap_set_replace_value): Likewise.
-
-2010-08-19 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*lea_1): Use P mode iterator.
- (lea add splitter): Also handle DImode operands.
- (DImode lea add splitter): Use x86_64_immediate_operand for operand 2
- predicate. Do not use ix86_lea_for_add_ok.
- (zext DImode lea add splitter): Use ix86_lea_for_add_ok.
- (lea ashift splitter): Also handle DImode operands.
- (DImode lea ashift splitter): Remove splitter.
-
-2010-08-19 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*add<SWI:mode>3_cconly_overflow): Do not use
- ix86_binary_operator_ok.
-
-2010-08-19 Andrey Belevantsev <abel@ispras.ru>
-
- PR rtl-optimization/44691
- * sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
- is not a register.
-
-2010-08-19 Ian Bolton <ian.bolton@arm.com>
-
- PR target/45070
- * config/arm/arm.c (arm_output_epilogue): Ensure that return
- value of size 1-3 is handled correctly.
-
-2010-08-19 Ian Bolton <ian.bolton@arm.com>
-
- * tree-switch-conversion.c (gen_inbound_check): Ensure that the
- type for the conditional has wide enough range.
-
-2010-08-18 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/45327
- * config/i386/i386.md (<any_or:code><SWI:mode>_3): Do not use
- ix86_binary_operator_ok.
-
-2010-08-18 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*add<mode>_1) <TYPE_LEA>: Split insn to lea.
- <default>: Swap operands 1 and 2 for alternative 2 to use existing
- code to output insn mnemonic. Fix comment.
- (*addsi_1_zext): Add r-r-0 alternative 1.
- <TYPE_LEA>: Split insn to lea.
- <default>: Handle alternative 1.
- (*addhi_1_lea): Add r-r-0 alternative 2. Use cond RTX instead of
- multi-level if_then_else RTX to set "type" attribute.
- <default>: Handle alternative 2.
- (*addqi_1_lea): Add q-q-0 alternative 2 and r-r-0 alternative 4.
- Use cond RTX instead of multi-level if_then_else RTX to set
- "type" attribute.
- <default>: Handle alternatives 2 and 4.
- (lea splitters): Update calls to ix86_lea_for_add_ok.
-
- * config/i386/i386.c (ix86_lea_for_add_ok): Remove unused "code"
- argument.
- * config/i386/i386-protos.h (ix86_lea_for_add_ok): Update prototype.
-
-2010-08-18 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-uninit.c (find_uninit_use): Disregard debug stmts,
- use operand helpers.
-
-2010-08-18 Paolo Bonzini <bonzini@gnu.org>
-
- PR middle-end/45292
- * optabs.c (expand_bool_compare_and_swap): Expand pending
- pops before trying the optab.
-
-2010-08-18 Yao Qi <yao@codesourcery.com>
-
- PR target/45094
- * config/arm/arm.c (output_move_double): Fix typo generating
- instructions ('ldr'->'str').
-
-2010-08-18 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR rtl-optimization/42575
- * optabs.c (expand_doubleword_mult): Generate new pseudos to shorten
- live ranges.
-
-2010-08-18 Marcus Shawcroft <marcus.shawcroft@arm.com>
-
- * config/arm/arm-protos.h (arm_expand_sync): New.
- (arm_output_memory_barrier, arm_output_sync_insn): New.
- (arm_sync_loop_insns): New.
- * config/arm/arm.c (FL_ARCH7): New.
- (FL_FOR_ARCH7): Include FL_ARCH7.
- (arm_arch7): New.
- (arm_print_operand): Support %C markup.
- (arm_legitimize_sync_memory): New.
- (arm_emit, arm_insn_count, arm_count, arm_output_asm_insn): New.
- (arm_process_output_memory_barrier, arm_output_memory_barrier): New.
- (arm_ldrex_suffix, arm_output_ldrex, arm_output_strex): New.
- (arm_output_op2, arm_output_op3, arm_output_sync_loop): New.
- (arm_get_sync_operand, FETCH_SYNC_OPERAND): New.
- (arm_process_output_sync_insn, arm_output_sync_insn): New.
- (arm_sync_loop_insns,arm_call_generator, arm_expand_sync): New.
- * config/arm/arm.h (struct arm_sync_generator): New.
- (TARGET_HAVE_DMB, TARGET_HAVE_DMB_MCR): New.
- (TARGET_HAVE_MEMORY_BARRIER): New.
- (TARGET_HAVE_LDREX, TARGET_HAVE_LDREXBHD): New.
- * config/arm/arm.md: Include sync.md.
- (UNSPEC_MEMORY_BARRIER): New.
- (VUNSPEC_SYNC_COMPARE_AND_SWAP, VUNSPEC_SYNC_LOCK): New.
- (VUNSPEC_SYNC_OP):New.
- (VUNSPEC_SYNC_NEW_OP, VUNSPEC_SYNC_OLD_OP): New.
- (sync_result, sync_memory, sync_required_value): New attributes.
- (sync_new_value, sync_t1, sync_t2): Likewise.
- (sync_release_barrier, sync_op): Likewise.
- (length): Add logic to length attribute defintion to call
- arm_sync_loop_insns when appropriate.
- * config/arm/sync.md: New file.
-
-2010-08-17 Jakub Jelinek <jakub@redhat.com>
-
- * tree.h (host_integerp): Add ATTRIBUTE_PURE when not
- ENABLE_TREE_CHECKING.
- (tree_low_cst): Add inline version for !ENABLE_TREE_CHECKING
- and GCC >= 4.3.
-
-2010-08-17 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.c (ix86_lea_for_add_ok): For !TARGET_OPT_AGU
- or optimizing for size, always avoid lea if possible.
-
- * config/i386/i386.md (*add<mode>_1): Always avoid lea if possible.
-
-2010-08-17 Iain Sandoe <iains@gcc.gnu.org>
-
- * unwind-dw2-fde-darwin.c (_darwin10_Unwind_FindEnclosingFunction):
- Dunmmy function with NULL return unless the target is
- OSX >= 10.6 (Darwin10).
-
-2010-08-17 Jack Howarth <howarth@bromo.med.uc.edu>
-
- PR target/45258
- * gcc.c (spec_function): Add remove-outfile.
- (remove_outfile_spec_function): New function.
- * config/darwin.h (LINK_SPEC): Add removal of -ldl, -lm and -lpthread.
- * invoke.texi (replace-outfile): Document.
-
-2010-08-17 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/45296
- * reginfo.c (globalize_reg): Reject stack registers.
-
-2010-08-17 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-dom.c (struct edge_info): Use a VEC for the
- list of conditional equivalences.
- (free_all_edge_infos): Adjust.
- (record_equivalences_from_incoming_edge): Likewise.
- (record_cond): Likewise.
- (build_and_record_new_cond): Likewise.
- (record_conditions): Likewise.
- (dom_opt_leave_block): Likewise.
-
-2010-08-17 Kai Tietz <kai.tietz@onevision.com>
-
- * doc/invoke.texi (ms-extension): Add documentation.
-
-2010-08-17 Richard Guenther <rguenther@suse.de>
-
- * fold-const.c (fold_comparison): Strip nops inside POINTER_PLUS_EXPR.
-
-2010-08-17 Shujing Zhao <pearly.zhao@oracle.com>
-
- PR c/40563
- * c-decl.c (diagnose_uninitialized_cst_member): New function.
- (finish_decl): Use it to issue a -Wc++-compat warning about
- uninitialized const field in struct or union.
-
- (finish_struct): Use strip_array_types.
-
-2010-08-17 Jakub Jelinek <jakub@redhat.com>
-
- * function.c (block_fragments_nreverse, blocks_nreverse_all): New
- functions.
- (reorder_blocks): Use blocks_nreverse_all instead of blocks_nreverse.
- (reorder_blocks_1): Assert BLOCK_FRAGMENT_ORIGIN is NULL. Don't
- call block_nreverse here.
- (blocks_nreverse): Rename decl temporary to block.
-
-2010-08-16 Bernd Schmidt <bernds@codesourcery.com>
-
- * config/arm/thumb2.md (thumb2_notsi_shiftsi,
- thumbsi_notsi_shiftsi_compare0, thumb2_not_shiftsi_compare0_scratch,
- thumb2_cmpsi_shiftsi, thumb2_cmpsi_shiftsi_swp, thumb2_arith_shiftsi,
- thumb2_arith_shiftsi splitter, thumb2_arith_shiftsi_compare0,
- thumb2_arith_shiftsi_compare0_scratch, thumb2_sub_shiftsi,
- thumb2_sub_shiftsi_compare0, thumb2_sub_shiftsi_compare0_scratch,
- thumb2_iorsi3): Delete.
- (orsi_notsi_si): No longer a named pattern.
- (orsi_not_shiftsi_si): Renamed from thumb_orsi_not_shiftsi_si.
- * config/arm/predicates.md (shift_amount_operand): New.
- (mult_operator): New.
- * config/arm/arm.md (attr arch, attr arch_enabled, attr insn_enabled,
- attr enabled): New.
- (iorsi3_insn): Renamed from arm_iorsi3. Handle a new alternative if
- arch matches t2.
- (not_shiftsi): Renamed from arm_notsi_shiftsi. Handle Thumb2 variant.
- (not_shiftsi_compare0): Likewise, renamed from
- arm_notsi_shiftsi_compare0.
- (not_shiftsi_compare0_scratch): Likweise, renamed from
- arm_notsi_shiftsi_compare0_scratch.
- (cmpsi_shiftsi): Likewise, renamed from arm_cmpsi_shiftsi.
- (cmpsi_shiftsi_swp): Likewise, renamed from arm_cmpsi_shiftsi_swp.
- (arith_shiftsi): Handle Thumb2 variant. Set insn_enabled attribute
- so that the register alternative is disabled when the shift_operator
- is MULT. Use "M" as the constraint for constants.
- (arith_shiftsi splitter): Enable for TARGET_32BIT.
- (arith_shiftsi_compare0): Handle Thumb2 variant. Use "M" as the
- constraint for constants.
- (arith_shiftsi_compare0_scratch): Likewise.
- (sub_shiftsi, sub_shiftsi_compare0, sub_shiftsi_compare0_scratch):
- Handle Thumb2 alternative.
-
-2010-08-16 Joseph Myers <joseph@codesourcery.com>
-
- * doc/options.texi (NoDriverArg): Document.
- * gcc.c (cpp_unique_options): Generate -MD and -MMD instead of
- -MDX and -MMDX.
- * opt-functions.awk (switch_flags): Handle NoDriverArg.
- * opts-common.c (decode_cmdline_option): Ignore CL_SEPARATE
- marking for CL_NO_DRIVER_ARG options when in the driver.
- * opts.h (CL_NO_DRIVER_ARG): Define.
- (CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER, CL_TARGET,
- CL_COMMON): Update values.
-
-2010-08-16 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt: Add driver options.
- (auxbase, auxbase-strip, quiet, version): Mark RejectDriver.
- * doc/options.texi (Driver, RejectDriver): Document.
- * gcc.c (pass_exit_codes, print_search_dirs, print_file_name,
- print_prog_name, print_multi_directory, print_sysroot,
- print_multi_os_directory, print_multi_lib,
- print_sysroot_headers_suffix, report_times, combine_flag,
- use_pipes, wrapper_string): Remove.
- (save_switch, driver_unknown_option_callback,
- driver_wrong_lang_callback, driver_post_handling_callback,
- driver_handle_option): New.
- (spec_lang, last_language_n_infiles): Make file-scope static
- instead of local to process_command.
- (process_command): Use decode_cmdline_options_to_array and
- read_cmdline_option for option processing. Compute have_c in
- prescan of decoded options.
- * opt-functions.awk (switch_flags): Handle Driver and
- RejectDriver.
- (var_type, var_type_struct): Handle Separate options as generating
- const char * variables.
- * opts-common.c (decode_cmdline_option): Expect CL_COMMON and
- CL_TARGET to be passed by caller if required.
- (decode_cmdline_options_to_array): Update comment.
- * opts.c (complain_wrong_lang): Handle options only valid for the
- driver.
- (decode_options): Update call to decode_cmdline_options_to_array.
- (print_filtered_help): Ignore driver-only options.
- (print_specific_help): Ignore CL_DRIVER.
- (common_handle_option): Don't call print_specific_help for CL_DRIVER.
- * opts.h (CL_DRIVER, CL_REJECT_DRIVER): Define.
- (CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_TARGET, CL_COMMON):
- Update values.
-
-2010-08-16 Richard Guenther <rguenther@suse.de>
-
- * tree-cfg.c (verify_types_in_gimple_reference): Verify
- TARGET_MEM_REF a bit.
- * tree-ssa-address.c (addr_for_mem_ref): Adjust.
- (create_mem_ref_raw): Always create TMR_OFFSET, store the
- alias pointer type via it.
- (copy_mem_ref_info): Adjust.
- (maybe_fold_tmr): Likewise.
- * tree.c (mem_ref_offset): Also handle TARGET_MEM_REF.
- (reference_alias_ptr_type): Likewise.
- * tree.def (TARGET_MEM_REF): Remove TMR_ORIGINAL operand,
- adjust documentation of TMR_OFFSET operand.
- * alias.c (get_alias_set): Do not look at TMR_ORIGINAL but
- use the alias pointer type.
- * expr.c (expand_expr_real_1): Do not use TMR_ORIGINAL to
- initialize mem attrs but the TMR itself.
- * tree-eh.c (tree_could_trap_p): Handle TARGET_MEM_REF
- similar to MEM_REF.
- * tree-pretty-print.c (dump_generic_node): Do not dump TMR_ORIGINAL.
- * tree-ssa-loop-ivopts.c (idx_remove_ssa_names): Remove.
- (unshare_and_remove_ssa_names): Likewise.
- (copy_ref_info): Adjust.
- * tree-ssa-pre.c (create_component_ref_by_pieces_1): Simplify
- TARGET_MEM_REF case.
- * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Do not look
- at TMR_ORIGINAL.
- * tree.h (TMR_ORIGINAL): Remove.
- * gimple.c (get_base_address): For TARGET_MEM_REF with a
- symbol return that.
- * tree-dfa.c (get_ref_base_and_extent): Handle TARGET_MEM_REF
- with a symbol.
- (get_addr_base_and_unit_offset): Likewise.
- * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Handle
- TARGET_MEM_REFs.
- (indirect_ref_may_alias_decl_p): Likewise.
- (refs_may_alias_p_1): Do not bail out for TARGET_MEM_REFs.
-
-2010-08-15 Uros Bizjak <ubizjak@gmail.com>
-
- * doc/invoke.texi (-fomit-frame-pointer): Document that starting
- with GCC version 4.6, the default setting (when not optimizing
- for size) for 32-bit Linux x86 and 32-bit Darwin x86 targets has
- been changed to -fomit-frame-pointer.
-
-2010-08-15 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.h (REAL_LIBGCC_SPEC): Remove libgcc_s.10.5 stub for
- Darwin10. Do not link libgcc.a for Darwin >= 9.
-
-2010-08-15 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/invoke.texi (Warning Options): Fix terminology and markup
- in the description of how unknown warning options are handled.
-
-2010-08-15 Ira Rosen <irar@il.ibm.com>
-
- * tree-vect-data-refs.c (vect_setup_realignment): Support realignment
- in basic blocks.
- (vect_supportable_dr_alignment): Check alignment for basic blocks.
- * tree-vect-slp.c (vect_build_slp_tree): Allow different codes for
- data references.
- (vect_bb_vectorization_profitable_p): New function.
- (vect_slp_analyze_bb): Call vect_bb_vectorization_profitable_p() to
- check if it's worthwhile to vectorize the basic block.
-
-2010-08-14 Anatoly Sokolov <aesok@post.ru>
-
- * reload.h (register_move_cost, memory_move_secondary_cost,
- secondary_reload_class): Adjust prototype.
- * rtl.h (reg_class_subset_p): Adjust prototype.
- * reload.c (secondary_reload_class): Change arguments type from
- enum reg_class to reg_class_t. Change result type to reg_class_t.
- * reginfo.c (register_move_cost, reg_class_subset_p): Change
- arguments type from enum reg_class to reg_class_t.
- (memory_move_secondary_cost): Change arguments type from
- enum reg_class to reg_class_t. Change type of saved_flags to
- reg_class_t.
-
- * config/mips/mips.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
- Remove macros.
- (mips_cost): Remove.
- (struct mips_rtx_cost_data): Moved to mips.c.
- * config/mips/mips-protos.h (mips_register_move_cost): Remove.
- * config/mips/mips.c (struct mips_rtx_cost_data): Moved from mips.h.
- (mips_cost): Make static.
- (mips_canonicalize_move_class): Change argument type to reg_class_t.
- Change result type to reg_class_t.
- (mips_move_to_gpr_cost, mips_move_from_gpr_cost): Change arguments
- type from enum reg_class to reg_class_t.
- (mips_register_move_cost): Make static. Change arguments
- type from enum reg_class to reg_class_t.
- (mips_memory_move_cost): New function.
- (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
-
-2010-08-14 Richard Sandiford <rdsandiford@googlemail.com>
-
- PR rtl-optimization/43358
- * ira-lives.c (process_single_reg_class_operands): Adjust the costs
- of a single hard register, using simplify_subreg_regno to decide
- what that register should be.
-
-2010-08-14 Mingjie Xing <mingjie.xing@gmail.com>
-
- * config/mips/mips.c (CODE_FOR_loongson_pmullh): Define.
- * config/mips/loongson.md (UNSPEC_LOONGSON_PMULL): Delete.
- (loongson_pmull<V_suffix>): Rename to...
- (mul<mode>3): ...this and use MULT instead of an UNSPEC.
-
-2010-08-13 Jack Howarth <howarth@bromo.med.uc.edu>
-
- * configure.ac: Enable -fomit-frame-pointer on darwin
- which support dwarf2.
- * config/i386/i386.c (override_options): Same.
-
-2010-08-13 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/arm.md (cstoredf4): Only valid when !TARGET_VFP_SINGLE.
-
-2010-08-12 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c (cpp_unique_options): Generate -MDX and -MMDX from -MD and
- -MMD.
-
-2010-08-12 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-vect-patterns.c (vect_recog_dot_prod_pattern): Give
- up dot_prod pattern searching if a stmt is outside the loop.
-
-2010-08-12 H.J. Lu <hongjiu.lu@intel.com>
- Uros Bizjak <ubizjak@gmail.com>
-
- * config.gcc: Handle --enable-frame-pointer.
-
- * configure.ac: Add --enable-frame-pointer.
- * configure: Regenerated.
-
- * config/i386/i386.c (USE_IX86_FRAME_POINTER): Default to 0.
- (override_options): If not configured with --enable-frame-pointer,
- enable -fomit-frame-pointer (but not for TARGET_MACHO or when
- optimizing for size), -fasynchronous-unwind-tables and
- -maccumulate-outgoing-args by default.
-
-2010-08-12 Jakub Jelinek <jakub@redhat.com>
-
- * builtins.c (fold_builtin_memory_op): Avoid -Wsign-compare warning.
-
- PR middle-end/45262
- * fold-const.c (make_range) <case NEGATE_EXPR>: Punt if
- -a overflows. Normalize the range.
-
-2010-08-12 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45232
- * tree-ssa-reassoc.c (can_reassociate_p): Disable re-association
- for types with undefined overflow.
- (reassociate_bb): Allow re-associating of bit and min/max
- operations for types with undefined overflow.
- * tree-ssa-forwprop.c (associate_plusminus): New function.
- (tree_ssa_forward_propagate_single_use_vars): Call it.
-
-2010-08-12 Richard Guenther <rguenther@suse.de>
-
- * tree-flow.h (struct ptr_info_def): Add align and misalign fields.
- * tree-ssa-alias.c (get_ptr_info): Move ...
- * tree-ssanames.c (get_ptr_info): ... here. Initialize
- align and misalign fields conservatively.
- * tree-ssa-ccp.c (ccp_finalize): From partially constant pointers
- derive alignment information.
- (evaluate_stmt): Derive alignment information from memory
- allocation functions.
- * tree.h (get_pointer_alignment): Make unsigned.
- * builtins.c (get_object_alignment): Use alignment information we
- have computed for pointers.
- (get_pointer_alignment): Likewise. Make conservative, return
- and unsigned value.
- (expand_builtin_strlen): Adjust.
- (expand_builtin_memcmp): Likewise.
- (expand_builtin_strcmp): Likewise.
- (expand_builtin_strncmp): Likewise.
- (get_builtin_sync_mem): Use at least mode alignment.
- (fold_builtin_memset): Adjust.
- (fold_builtin_memory_op): Likewise.
- * gimple-pretty-print.c (dump_gimple_phi): Alongside alias
- information also dump pointer alignment knowledge.
- (dump_gimple_stmt): Likewise.
-
-2010-08-12 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (LONG_TYPE_SIZE): Remove.
- (EMPTY_FIELD_BOUNDARY): Remove.
- * config/i386/i386-interix.h (PCC_BITFIELD_TYPE_MATTERS): Remove.
-
-2010-08-12 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45259
- * caller-save.c (save_call_clobbered_regs): Only swap notes with
- DEBUG_INSNs if n_regs_saved.
-
-2010-08-12 Wei Guozhi <carrot@google.com>
-
- PR target/44999
- * config/arm/arm.md (andsi3): Change to zero extension if possible.
- * config/arm/thumb2.md (thumb2_zero_extendqisi2_v6): Change the name.
-
-2010-08-11 Vladimir Makarov <vmakarov@redhat.com>
-
- * ira-int.h (ira_remove_allocno_copy_from_list): Remove.
-
- * ira-build.c (ira_remove_allocno_copy_from_list): Remove.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Add back
- the case removed in the previous patch, when the only phi argument
- is defined in the same loop as the phi node itself. Handle it
- separately from the invariant case by both propagating it outside
- the region and replacing the phi node with an assign.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): The only
- constant phi nodes with one argument are is_gimple_min_invariant
- and SSA_NAME_IS_DEFAULT_DEF.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-cloog-util.c (oppose_constraint):
- Extend loop counter's value range (CLOOG_ORG).
- (cloog_matrix_to_ppl_constraint): Same.
- (new_Constraint_System_from_Cloog_matrix): Same.
- * graphite-cloog-compat.h (matrix_num_type): New.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite.c (graphite_initialize): Do not initialize
- CLooG and initialize the Parma Polyhedra Library
- manually when using CLOOG_ORG.
- (graphite_finalize): Do not finalize CLooG and finalize
- the Parma Polyhedra Library manually when using CLOOG_ORG.
- * graphite-cloog-compat.h (cloog_initialize): Hide function
- when using CLOOG_ORG.
- (cloog_finalize): Same.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-clast-to-gimple.c (free_scattering): Change
- CloogDomainList/CloogDomain to CloogScatteringList/CloogScattering
- (CLOOG_ORG).
- (build_cloog_prog): Same.
- * graphite-cloog-compat.h (cloog_domain): Removed.
- (cloog_scattering): New.
- (cloog_set_domain): Removed.
- (cloog_set_scattering): New.
- (cloog_next_domain): Removed.
- (cloog_next_scattering): New.
- (cloog_set_next_domain): Removed.
- (cloog_set_next_scattering): New.
- (CloogScatteringList): New.
- (CloogScattering): New.
- (cloog_scattering_free): New.
- (new_Cloog_Scattering_from_ppl_Polyhedron): New.
- * graphite-cloog-util.c (new_Cloog_Scattering_from_ppl_Polyhedron):
- New.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-clast-to-gimple.c (build_cloog_prog): Extend with
- CloogState.
- (set_cloog_options): Same.
- (print_clast_stmt): Same.
- (scop_to_clast): Same.
- (print_generated_program): Same.
- (gloog): Same.
- * graphite-clast-to-gimple.h: Include graphite-cloog-util.h.
- (scop_to_clast): Extend with CloogState.
- * graphite-cloog-util.c: Include graphite-cloog-compat.h
- (new_Cloog_Domain_from_ppl_Polyhedron):
- Extend with CloogState. Use cloog_domain_from_cloog_matrix (CLOOG_ORG).
- (new_Cloog_Domain_from_ppl_Pointset_Powerset): Extend with CloogState.
- (new_Cloog_Domain_from_ppl_Polyhedron): Same.
- * graphite-cloog-util.h (build_cloog_prog): Same.
- * graphite-cloog-copat.h (build_cloog_prog): New.
- (CloogState): New.
- (cloog_state_malloc): New.
- (cloog_state_free): New.
- (cloog_loop_malloc): New.
- (cloog_options_malloc): New.
- (cloog_statement_alloc): New.
- (cloog_domain_from_cloog_matrix): New.
- (new_Cloog_Domain_from_ppl_Pointset_Powerset): New.
- (new_Cloog_Domain_from_ppl_Polyhedron): New.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-clast-to-gimple.c (clast_name_to_gcc): Parameter
- type of NAME now depends on used CLooG version.
- (clast_to_gcc_expression): Replace expr_* with clast_expr_*.
- (gcc_type_for_clast_expr): Same.
- (print_clast_stmt): Replace pprint with clast_pprint.
- * graphite-cloog-compat.h: Provide compatibility macros for
- CLooG Legacy.
- (clast_name_p): New.
- (clast_expr_term): New.
- (clast_expr_red): New.
- (clast_expr_bin): New.
- (clast_pprint): New.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-clast-to-gimple.c (set_cloog_options): Make CLooG options
- compatible to newer CLooG releases (CLOOG_ORG).
- (build_cloog_prog): Pass CloogOptions to more functions (CLOOG_ORG).
- (scop_to_clast): Pass CloogOptions to build_cloog_prog (CLOOG_ORG).
- * graphite-cloog-compat.h: Add compatibility macros for CLooG Legacy.
- (build_cloog_prog) : New.
- (cloog_program_extract_scalars): New.
- (cloog_program_scatter): New.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-clast-to-gimple.c: Include graphite-cloog-compat.h
- conditionally (CLOOG_ORG).
- * graphite-cloog-compat.h: New. Include graphite-cloog-compat.h.
- (cloog_statement_usr): New.
- (cloog_domain): Same.
- (cloog_set_domain): Same.
- (cloog_next_domain): Same.
- (cloog_set_next_domain): Same.
- (cloog_program_nb_scattdims): Same.
- (cloog_program_set_nb_scattdims): Same.
- (cloog_program_names): Same.
- (cloog_program_set_names): Same.
- (cloog_program_set_context): Same.
- (cloog_program_set_loop): Same.
- (cloog_program_blocklist): Same.
- (cloog_program_set_blocklist): Same.
- (cloog_program_scaldims): Same.
- (cloog_program_set_scaldims): Same.
- (cloog_names_nb_parameters): Same.
- (cloog_names_set_nb_parameters): Same.
- (cloog_names_parameters): Same.
- (cloog_names_set_parameters): Same.
- (cloog_names_set_nb_iterators): Same.
- (cloog_names_set_iterators): Same.
- (cloog_names_set_nb_scattering): Same.
- (cloog_names_set_scattering): Same.
- (cloog_statement_set_usr): Same.
- (cloog_loop_set_next): Same.
- (cloog_loop_set_domain): Same.
- (cloog_loop_set_block): Same.
- (cloog_block_list_next): Same.
- (cloog_block_list_set_next):
- (cloog_block_list_set_block): Same.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Returns
- a bool.
- (rewrite_commutative_reductions_out_of_ssa_close_phi): Same.
- (rewrite_commutative_reductions_out_of_ssa_loop): Same.
- (rewrite_cross_bb_scalar_deps_out_of_ssa): Call scev_reset_htab
- when something has been changed.
- (rewrite_commutative_reductions_out_of_ssa): Same.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (propagate_expr_outside_region): Also
- handle the case when def is in the sese region.
- (rewrite_close_phi_out_of_ssa): Call propagate_expr_outside_region
- for invariant expressions.
- (rewrite_cross_bb_phi_deps): Removed.
- (rewrite_cross_bb_scalar_deps): Also handle GIMPLE_PHI nodes.
- (rewrite_cross_bb_scalar_deps_out_of_ssa): Do not call
- rewrite_cross_bb_phi_deps.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c
- (rewrite_commutative_reductions_out_of_ssa_loop): Call
- scev_analyzable_p only on is_gimple_reg
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (propagate_expr_outside_region): New.
- (rewrite_close_phi_out_of_ssa): Propagate constant values or
- parametric expressions outside the scop region.
- (rewrite_cross_bb_scalar_deps): Same.
- * sese.c (rename_uses): Use NULL_TREE instead of NULL for trees.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Use
- SSA_NAME_DEF_STMT only on SSA_NAMEs.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-scalar-evolution.c (instantiate_scev_name): Do not
- instantiate default definitions.
-
-2010-08-11 Vladimir Kargov <kargov@gmail.com>
- Sebastian Pop <sebastian.pop@amd.com>
-
- * cfgloop.c (is_loop_exit): Renamed loop_exits_to_bb_p.
- (loop_exits_from_bb_p): New.
- * cfgloop.h (is_loop_exit): Renamed loop_exits_to_bb_p.
- (loop_exits_from_bb_p): Declared.
- * graphite-scop-detection.c (scopdet_basic_block_info): Call
- loop_exits_to_bb_p.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Add an
- extra parameter for the region. Call scev_analyzable_p.
- (rewrite_reductions_out_of_ssa): Update call to
- rewrite_close_phi_out_of_ssa.
- (rewrite_cross_bb_phi_deps): Same.
- (rewrite_commutative_reductions_out_of_ssa_loop): Add an extra
- parameter for the region. Call scev_analyzable_p.
- (rewrite_commutative_reductions_out_of_ssa): Update call to
- rewrite_commutative_reductions_out_of_ssa_loop.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * sese.c (rename_uses): Call unshare_expr before force_gimple_operand.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (reduction_phi_p): Do not rewrite out of
- SSA scalar phi nodes that can be scev_analyzable_p.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Correctly
- handle SSA_NAME_IS_DEFAULT_DEF.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * sese.c (rename_uses): Handl unconditionally gimple_debug statements.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Special
- case non close-phi nodes with one argument.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * sese.h (scev_analyzable_p): Scevs could be expressions without
- chrecs and still be scev_analyzable_p.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * cfgloop.c (alloc_loop): Remove initialization of loop->single_iv.
- * cfgloop.h (struct loop): Remove single_iv field.
- * graphite-sese-to-poly.c (graphite_loop_normal_form): Removed.
- (scop_canonicalize_loops): Removed.
- (scop_ivs_can_be_represented): Do not use loop->single_iv. Iterate
- over all the loop phi nodes in loop->header.
- (build_poly_scop): Remove use of scop_canonicalize_loops.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Also
- handle GIMPLE_CALL.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-chrec.c (chrec_apply): Should only apply to the specified
- variable. Also handle multivariate chains of recurrences that
- satisfy evolution_function_is_affine_p. Also handle CASE_CONVERT.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (debug_clast_name_index): Removed.
- (debug_clast_name_indexes_1): Removed.
- (debug_clast_name_indexes): Removed.
- (pbb_to_depth_to_oldiv): Removed.
- (build_iv_mapping): Replace the use of rename_map with iv_map.
- (translate_clast_user): Remove uses of rename_map. Allocate and
- free iv_map.
- (translate_clast_for_loop): Remove uses of rename_map.
- (translate_clast_for): Same.
- (translate_clast_guard): Same.
- (translate_clast): Same.
- (gloog): Same.
- * graphite-clast-to-gimple.h (debug_clast_name_indexes): Removed.
- * graphite-sese-to-poly.c (scev_analyzable_p): Moved...
- * sese.c (set_rename): Now static.
- (rename_variables_in_stmt): Removed.
- (rename_uses): New.
- (is_parameter): Removed.
- (is_iv): Removed.
- (expand_scalar_variables_call): Removed.
- (expand_scalar_variables_ssa_name): Removed.
- (expand_scalar_variables_expr): Removed.
- (expand_scalar_variables_stmt): Removed.
- (expand_scalar_variables): Removed.
- (rename_variables): Removed.
- (remove_condition): Removed.
- (get_true_edge_from_guard_bb): Removed.
- (get_false_edge_from_guard_bb): Removed.
- (struct igp): Removed.
- (default_before_guard): Removed.
- (convert_for_phi_arg): Removed.
- (add_guard_exit_phis): Removed.
- (insert_guard_phis): Removed.
- (graphite_copy_stmts_from_block): Now also uses iv_map and a
- region. Do not copy conditions. Do not copy induction variables.
- Call rename_uses.
- (copy_bb_and_scalar_dependences): Allocate a local rename_map for
- the translated statement. Use the iv_map for the induction
- variable renaming.
- * sese.h (copy_bb_and_scalar_dependences): Update declaration.
- (set_rename): Removed declaration.
- (scev_analyzable_p): ...here.
- * tree-chrec.c (chrec_apply_map): New.
- * tree-chrec.h (chrec_apply_map): Declared.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (translate_clast_for_loop): Do not call
- insert_loop_close_phis.
- * sese.c (name_defined_in_loop_p): Removed.
- (expr_defined_in_loop_p): Removed.
- (alive_after_loop): Removed.
- (close_phi_not_yet_inserted_p): Removed.
- (struct alep): Removed.
- (add_loop_exit_phis): Removed.
- (insert_loop_close_phis): Removed.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-cloog-util.c
- (cloog_matrix_to_ppl_constraint): Fix flipped condition.
- * graphite-poly.c
- (psct_scattering_dim_for_loop_depth): Same.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-cloog-util.h: Added cloog.h.
- * graphite-blocking.c: Removed cloog.h.
- * graphite-dependences.c: Same.
- * graphite-interchange.c: Same.
- * graphite-poly.c: Same.
- * graphite-ppl.c: Same.
- * graphite-scop-detection.c: Same.
- * graphite-sese-to-poly.c:
- Removed cloog.h.
- Removed graphite-clast-to-gimple.h.
- (check_poly_representation): Removed (unused).
- * graphite-sese-to-poly.h
- (check_poly_representation): Removed (unused).
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * Makefile.in (OBJS-common): Added graphite-cloog-util.o.
- (graphite-clast-to-gimple.o): Added graphite-cloog-util.h.
- (graphite-cloog-util.o): New.
- (graphite-ppl.o): Added graphite-cloog-util.h.
- * graphite-clast-to-gimple.c:
- Added graphite-cloog-util.h to include statements.
- * graphite-cloog-util.c: New.
- (new_Cloog_Matrix_from_ppl_Polyhedron): Moved from graphite-ppl.c.
- (new_Cloog_Domain_from_ppl_Polyhedron): Same.
- (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
- (new_C_Polyhedron_from_Cloog_Matrix): Same.
- (insert_constraint_into_matrix): Same.
- (ppl_Constrain_System_number_of_constraints): Same.
- (new_Cloog_Matrix_from_ppl_Constraint_System): Same.
- (oppose_constraint): Same.
- (cloog_matrix_to_ppl_constraint): Same.
- (new_Constraint_System_from_Cloog_Matrix): Same.
- * graphite-cloog-util.h: New.
- (new_Cloog_Matrix_from_ppl_Polyhedron): Moved from graphite-ppl.h.
- (new_Cloog_Domain_from_ppl_Polyhedron): Same.
- (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
- (new_C_Polyhedron_from_Cloog_Matrix): Same.
- (insert_constraint_into_matrix): Same.
- * graphite-ppl.c:
- Added graphite-cloog-util.h to include statements.
- (new_Cloog_Matrix_from_ppl_Polyhedron): Moved to graphite-cloog-util.c.
- (new_Cloog_Domain_from_ppl_Polyhedron): Same.
- (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
- (new_C_Polyhedron_from_Cloog_Matrix): Same.
- (insert_constraint_into_matrix): Same.
- (ppl_Constrain_System_number_of_constraints): Same.
- (new_Cloog_Matrix_from_ppl_Constraint_System): Same.
- (oppose_constraint): Same.
- (cloog_matrix_to_ppl_constraint): Same.
- (new_Constraint_System_from_Cloog_Matrix): Same.
- * graphite-ppl.h:
- (new_Cloog_Matrix_from_ppl_Polyhedron): Moved to
- graphite-cloog-util.h.
- (new_Cloog_Domain_from_ppl_Polyhedron): Same.
- (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
- (new_C_Polyhedron_from_Cloog_Matrix): Same.
- (insert_constraint_into_matrix): Same.
-
-2010-08-11 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-clast-to-gimple.c
- (precision_for_value): Resolve value_* calls to matching mpz_* calls.
- (precision_for_interval): Same.
- (gcc_type_for_interval): Same.
- (compute_type_for_level): Same.
- * graphite-interchange.c
- (lst_interchange_profitable_p): Same.
- * graphite-poly.c
- (psct_scattering_dim_for_loop_depth): Same.
- * graphite-ppl.c
- (ppl_max_for_le_pointset): Same.
- (ppl_min_for_le_pointset): Same.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_degenerate_phi): New.
- (rewrite_reductions_out_of_ssa): Call it for degenerate_phi_result.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_cross_bb_phi_deps): Call
- rewrite_close_phi_out_of_ssa.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_cross_bb_phi_deps): Remove dead code.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (build_iv_mapping): Rename map with
- rename_map.
- * sese.c (debug_rename_map): Same.
- (get_rename): Same.
- (set_rename): Same.
- (rename_variables_in_stmt): Same.
- (expand_scalar_variables_call): Same.
- (expand_scalar_variables_ssa_name): Same.
- (expand_scalar_variables_expr): Same.
- (expand_scalar_variables_stmt): Same.
- (expand_scalar_variables): Same.
- (rename_variables): Same.
- (graphite_copy_stmts_from_block): Same.
- (copy_bb_and_scalar_dependences): Same.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (copy_renames): Removed.
- (translate_clast_for): Do not call copy_renames.
- (translate_clast_guard): Same.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa): Moved up.
- (rewrite_cross_bb_phi_deps): Split out of rewrite_cross_bb_scalar_deps.
- (rewrite_cross_bb_scalar_deps_out_of_ssa): Run rewrite_cross_bb_phi_deps
- before rewrite_cross_bb_scalar_deps.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_commutative_reductions_out_of_ssa):
- Early return in when flag_associative_math is not set.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Always insert out
- of SSA copies on edges except for loop->latch.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps_out_of_ssa):
- Split out of rewrite_reductions_out_of_ssa.
- * graphite-sese-to-poly.h (rewrite_cross_bb_scalar_deps_out_of_ssa):
- Declared.
- * graphite.c (graphite_transform_loops): Call it.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite.c (graphite_transform_loops): Add two more dbg_cnt calls.
-
-2010-08-11 Alexander Monakov <amonakov@ispras.ru>
-
- * dbgcnt.def (graphite_scop): New counter.
- * graphite.c: Include dbgcnt.h.
- (graphite_transform_loops): Use new counter to limit transformations.
- * Makefile.in (graphite.o): Depend on DBGCNT_H.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * passes.c (init_optimization_passes): Add pass_graphite.
- Schedule a pass_copy_prop before pass_graphite_transforms.
- * timevar.def (TV_GRAPHITE): Declared.
- * tree-pass.h (pass_graphite): Declared.
- * tree-ssa-loop.c (pass_graphite): New.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (gloog): Do not pass scops in parameter.
- Remove calls to rename_nb_iterations and rename_sese_parameters.
- * graphite-clast-to-gimple.h (gloog): Update declaration.
- * graphite.c (graphite_transform_loops): Update call to gloog.
- * sese.c (rename_variables_in_expr): Removed.
- (rename_nb_iterations): Removed.
- (rename_sese_parameters): Removed.
- * sese.h (rename_nb_iterations): Removed.
- (rename_sese_parameters): Removed.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (gloog): Remove call to
- sese_adjust_liveout_phis.
- * graphite-sese-to-poly.c (scev_analyzable_p): When scev returns an
- SSA_NAME, allow it to be handled by rewrite_cross_bb_scalar_deps.
- (rewrite_cross_bb_scalar_deps): Handle GIMPLE_PHI nodes: call
- rewrite_phi_out_of_ssa.
- * sese.c (get_vdef_before_sese): Removed.
- (sese_adjust_vphi): Removed.
- (sese_adjust_liveout_phis): Removed.
- * sese.h (sese_adjust_liveout_phis): Removed.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Pass an extra
- argument for the place after which to insert the out of SSA copy.
- (rewrite_close_phi_out_of_ssa): Update calls to insert_out_of_ssa_copy.
- (rewrite_phi_out_of_ssa): Same.
- (rewrite_cross_bb_scalar_deps): Same.
- (insert_copyout): Removed.
- (insert_copyin): Removed.
- (translate_scalar_reduction_to_array): Call insert_out_of_ssa_copy and
- insert_out_of_ssa_copy_on_edge instead of insert_copyout and
- insert_copyin.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (build_scop_bbs): Not static anymore.
- (rewrite_reductions_out_of_ssa): Same.
- (rewrite_commutative_reductions_out_of_ssa): Same.
- (build_poly_scop): Do not call these functions.
- * graphite-sese-to-poly.h (build_poly_scop): Declared.
- (rewrite_reductions_out_of_ssa): Declared.
- (rewrite_commutative_reductions_out_of_ssa): Declared.
- * graphite.c (graphite_transform_loops): Call on every scop
- rewrite_commutative_reductions_out_of_ssa before calling
- rewrite_reductions_out_of_ssa and build_scop_bbs.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-dependences.c (dot_deps): Make system call to dotty run
- in background.
- (dot_deps_stmt): Same.
- * graphite-poly.c (dot_lst): Same.
-
-2010-08-11 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (loop_entry_phi_arg): Renamed
- phi_arg_in_outermost_loop.
- (remove_simple_copy_phi): Call phi_arg_in_outermost_loop.
- (remove_invariant_phi): Same.
-
-2010-08-11 Anatoly Sokolov <aesok@post.ru>
-
- * target.def (output_addr_const_extra): New hook.
- * doc/tm.texi.in (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Document.
- * doc/tm.texi: Regenerate.
- * targhooks.c (default_asm_output_addr_const_extra): New function.
- * targhooks.h (default_asm_output_addr_const_extra): Declare.
- * final.c (output_addr_const): Use TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA
- target hook.
-
- * config/i386/i386.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
- * config/i386/i386-protos.h (output_addr_const_extra): Remove.
- * config/i386/i386.h (output_addr_const_extra): Rename to...
- (i386_asm_output_addr_const_extra): ...this. Make static.
- (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
-
-2010-08-11 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.h (HARD_REGNO_CALL_PART_CLOBBERED): New.
-
-2010-08-11 Nick Clifton <nickc@redhat.com>
-
- * config/stormy16/stormy16-lib2.c (__cmpsi2): New function.
- * config/stormy16/stormy16-lib2-cmpsi2.c: New file.
- * config/stormy16/t-stormy16 (LIB2FUNCS_EXTRA): Add
- stormy16-lib2-cmpsi.c.
-
- * config/stormy16/t-stormy16 (TARGET_LIBGCC2_CFLAGS): Change to
- -O2.
-
-2010-08-11 Joseph Myers <joseph@codesourcery.com>
-
- * opts.h (struct cl_option_handler_func): Make handler take
- cl_decoded_option structure as parameter, not individual elements.
- (struct cl_option_handlers): Make callbacks take cl_decoded_option
- structure as parameter, not individual elements.
- (handle_option): Take cl_decoded_option structure as parameter,
- not individual elements.
- (handle_generated_option): Declare.
- * opts-common.c (handle_option): Take cl_decoded_option structure
- as parameter, not individual elements. Update calls to callback
- and handler functions.
- (handle_generated_option): New.
- (read_cmdline_option): Update calls to callback functions and
- handle_option.
- * opts.c (common_handle_option, complain_wrong_lang,
- unknown_option_callback, post_handling_callback,
- lang_handle_option, target_handle_option): Take cl_decoded_option
- structure as parameter, not individual elements.
- (lang_handle_option, target_handle_option, common_handle_option):
- Assert option has at most one argument.
- (enable_warning_as_error): Call handle_generated_option instead of
- handle_option. Do not pass -Werror argument as argument of
- generated option.
-
-2010-08-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config/pa/linux-atomic.c (SUBWORD_VAL_CAS): Instantiate with
- 'unsigned short' and 'unsigned char' instead of 'short' and 'char'.
- (SUBWORD_BOOL_CAS): Likewise.
- (SUBWORD_SYNC_OP): Likewise.
- (SUBWORD_TEST_AND_SET): Likewise.
- (FETCH_AND_OP_WORD): Parenthesise INF_OP
- (SUBWORD_SYNC_OP): Likewise.
- (OP_AND_FETCH_WORD): Likewise.
-
-2010-08-10 Xinliang David Li <davidxl@google.com>
-
- * tree-ssa-loop-ivopts.c (get_address_cost): Properly
- compute max/min offset in address.
-
-2010-08-10 Vladimir Makarov <vmakarov@redhat.com>
-
- * ira-live.c: Include sbitmap.h.
- (remove_some_program_points_and_update_live_ranges): Use sbitmaps.
- Compress live ranges even more.
-
-2010-08-10 Nathan Froyd <froydnj@codesourcery.com>
-
- * coverage.c (ctr_labels): Delete.
-
-2010-08-10 Bernd Schmidt <bernds@codesourcery.com>
-
- PR bootstrap/45177
- * config/arm/arm.c (multiple_operation_profitable_p): Move xscale
- test here from arm_gen_load_multiple_1.
- (arm_gen_load_multiple_1, arm_gen_store_multiple_1): Use
- multiple_operation_profitable_p.
-
-2010-08-10 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree-ssa-pre.c (init_pre): Call alloc_aux_for_blocks.
- (fini_pre): Call free_aux_for_blocks. Delete unused bb variable.
-
-2010-08-10 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_compute_frame_layout): Re-align stack
- after saving registers. Assert that SSE registers are only saved
- with a sufficiently aligned frame.
- (ix86_emit_save_reg_using_mov): Assert realigned only with DRAP;
- remove stack_realign_fp handling.
- (ix86_expand_prologue): Save int registers before stack_realign_fp,
- and do not mark the stack alignment as frame related.
- (ix86_expand_epilogue): SP is now invalid with stack_realign_fp.
-
- * dwarf2out.c (dwarf2out_frame_debug_expr): Flush queued register
- saves when re-aligning the stack.
-
-2010-08-10 Nathan Froyd <froydnj@codesourcery.com>
-
- * basic-block.h (alloc_aux_for_block, alloc_aux_for_edge): Delete.
- * cfg.c (alloc_aux_for_block, alloc_aux_for_edge): Make static.
- (alloc_aux_for_blocks, clear_aux_for_blocks): Use FOR_ALL_BB.
-
-2010-08-10 Nathan Froyd <froydnj@codesourcery.com>
-
- * dwarf2out.c (struct die_struct): Move die_tag to the end.
-
-2010-08-09 Sofiane Naci <sofiane.naci@arm.com>
-
- * config/arm/iterators.md: New file.
- * config/arm/arm.md: Include iterators.md.
- (QHSI): Move to new file.
- (LTUGEU, cnb, optab, ior_xor): Likewise.
- * config/arm/iwmmxt.md (VMMX): Move to new file.
- (VSHFT, MMX_char): Likewise.
- * config/arm/neon.md (VD): Move to new file.
- (VDX, VDI, VQ, VQX, VQI, VQXMOV, VSTRUCT, VTAB, V_TAB_n, VW): Likewise.
- (VN, VDQ, VDQW, VDQIW, VCVTF, VCVTI, VMD, VMQ, VMDQ, VMDI): Likewise.
- (VMDQI, VX, VE, V64, V32, V_CVTTO, V_elem, V_ext): Likewise.
- (V_two_elem, V_three_elem, V_four_elem, V_req, V_widen): Likewise.
- (V_narrow, V_HALF, V_half,V_DOUBLE, V_double): Likewise.
- (V_double_width, V_cmp_result, V_if_elem, V_s_elem): Likewise.
- (V_u_elem, V_uf_sclr, V_sz_elem, VD_dup): Likewise.
- (V_PAIR, vqh_ops, vqhs_ops, VQH_mnem, VQH_sign, V_suf64): Likewise.
- (scalar_mul_constraint,Is_float_mode, Scalar_mul_8_16): Likewise.
- (Is_d_reg, V_mode_nunits): Likewise.
- * config/arm/vec-common.md (VALL): Move to new file.
- (VALLW, VINT, VINTW): Likewise.
-
-2010-08-10 Bernd Schmidt <bernds@codesourcery.com>
-
- PR middle-end/45182
- * combine.c (make_compound_operation): Don't try to convert
- shifts into multiplications for modes that aren't SCALAR_INT_MODE_P.
-
-2010-08-10 Richard Guenther <rguenther@suse.de>
-
- * tree.h (get_object_alignment): Adjust prototype.
- * builtins.c (get_object_alignment): Return unsigned int,
- drop the align parameter. Handle MEM_REF, MISALIGNED_INDIRECT_REF
- and TARGET_MEM_REF properly.
- (get_pointer_alignment): Adjust.
- * emit-rtl.c (get_mem_align_offset): Adjust comment.
- (set_mem_attributes_minus_bitpos): Adjust.
- * tree-ssa-ccp.c (get_value_from_alignment): Adjust.
-
-2010-08-10 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-copy.c (set_copy_of_val): Use operand_equal_p.
- (copy_prop_visit_assignment): Simplify.
- (copy_prop_visit_stmt): Also visit assignments from
- constants.
- (copy_prop_visit_phi_node): Use operand_equal_p.
-
-2010-08-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * ipa-split.c (find_split_points): Free stack.
-
-2010-08-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (tree_node_kind) [perm_list_kind,temp_list_kind]: Delete.
- * tree.c (tree_node_kind): Delete corresponding entries.
-
-2010-08-09 H.J. Lu <hongjiu.lu@intel.com>
-
- * alias.c (may_alias_p): Remove unused ret.
-
-2010-08-09 Bingfeng Mei <bmei@broadcom.com>
-
- * ddg.c (walk_mems_2): Moved from alias.c, use may_alias_p instead of
- alias_sets_conflict_p.
- (walk_mems_1): Moved from alias.c.
- (insns_may_alias_p): New function, originally insn_alias_sets_conflict_p
- in alias.c.
- (add_inter_loop_mem_dep): Use insns_may_alias_p now.
- * cse.c (cse_insn): New argument in calling nonoverlapping_memrefs_p.
- * alias.c (walk_mems_2): Moved to ddg.c.
- (walk_mems_1): Ditto.
- (insn_alias_sets_conflict_p): Renamed to insns_may_alias_p and moved
- to ddg.c.
- (nonoverlapping_memrefs_p): Add flag to guard offset-based memory
- disambiguation.
- *(may_alias_p): New function to check whether two memory expression
- may alias or not. Currently used in buidling inter-iteration memory
- dependence.
- *alias.h (nonoverlapping_memrefs_p): New flag as third argument.
- (insn_alias_sets_conflict_p): Removed
- *rtl.h (may_alias_p): New function prototype.
-
-2010-08-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.c (nreverse): Assert that we don't have a BLOCK.
-
-2010-08-09 Nathan Froyd <froydnj@codesourcery.com>
-
- * builtins.c (fold_builtin_next_arg): Use stdarg_p.
- * config/arm/arm.c (arm_get_pcs_model): Likewise.
- * config/avr/avr.c (init_cumulative_args): Likewise.
- * config/iq2000/iq2000.c (iq2000_expand_prologue): Likewise.
- * config/lm32/lm32.c (lm32_setup_incoming_varargs): Likewise.
- * config/m68k/m68k.c (m68k_return_pops_args): Likewise.
- * config/mn10300/mn10300.c (mn10300_builtin_saveregs): Likewise.
- * config/pa/pa.c (hppa_builtin_saveregs): Likewise.
- * config/pa/som.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
- * config/rs6000/rs6000.c (init_cumulative_args): Likewise.
- * dwarf2out.c (gen_subprogram_die): Likewise.
- * function.c (allocate_struct_function): Likewise.
- * c-aux-info.c (gen_formal_list_for_func_dec): Likewise.
- (deserves_ellipsis): Delete.
-
-2010-08-09 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-copy.c (cached_last_copy_of): Remove.
- (valueize_val): New function.
- (get_last_copy_of): Remove.
- (set_copy_of_val): Simplify.
- (dump_copy_of): Likewise.
- (copy_prop_visit_cond_stmt): Use valueize_val.
- (copy_prop_visit_phi_node): Properly handle unvisited names.
- Drop code managing copy-of chains.
- (init_copy_prop): Adjust.
- (fini_copy_prop): Likewise.
- (execute_copy_prop): Remove obsolete comment.
-
-2010-08-09 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44632
- * function.c (gimplify_parameters): Do not clear addressable
- bit of the original parameter.
-
-2010-08-09 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45212
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust
- alignment from MEM_REF offset only if we took it from the
- base object.
-
-2010-08-09 Eric Fisher <joefoxreal@gmail.com>
-
- * doc/sourcebuild.texi (vect_int_mult): Remove duplicate entry.
-
-2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
-
- * c-tree.h (build_arg_info): Declare.
- * c-decl.c (build_arg_info): Define.
- (get_parm_info): Call it. Delete initialization code.
- * c-parser.c (c_parser_parms_declarator): Likewise.
- (c_parser_parms_list_declaractor): Likewise.
-
-2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
-
- * c-tree.h (c_arg_tag): Define. Define a VEC containing it.
- (struct c_arg_info): Change type of tags field.
- * c-decl.c (grokdeclarator): Update for changed type of tags field.
- (get_parm_info): Likewise.
- (store_parm_decls_newstyle): Likewise.
-
-2010-08-08 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/rs6000/rs6000.c (branch_island): Define. Define a VEC of it.
- (branch_island_list): Delete.
- (branch_islands): Declare.
- (add_compiler_branch_island): Adjust for branch_islands instead of
- branch_island_list.
- (macho_branch_islands): Likewise.
- (no_previous_def): Likewise.
- (get_prev_label): Likewise.
-
-2010-08-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR boehm-gc/34544
- * gthr-posix.h (__gthread_start): Delete.
- (__gthread_active_init): Use pthread_default_stacksize_np instead of
- pthread_create to determine if hpux pthreads are active.
- * gthr-posix95.h (__gthread_start): Delete.
- (__gthread_active_init): Likewise use pthread_default_stacksize_np.
-
-2010-08-08 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/mingw32.h ((EXTRA_OS_CPP_BUILTINS): Define
- _WIN64 not expanded.
-
-2010-08-07 Uros Bizjak <ubizjak@gmail.com>
- H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/45213
- * config/i386/i386.c (ix86_print_operand): Handle 'q' operand modifier
- to output 32bit SFmode immediate as 8 byte sign extended value.
-
-2010-08-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
-
- * config/arm/linux-atomic.c (SUBWORD_VAL_CAS): Instantiate with
- 'unsigned short' and 'unsigned char' instead of 'short' and 'char'.
- (SUBWORD_BOOL_CAS): Likewise.
- (SUBWORD_SYNC_OP): Likewise.
- (SUBWORD_TEST_AND_SET): Likewise.
- (FETCH_AND_OP_WORD): Parenthesise INF_OP
- (SUBWORD_SYNC_OP): Likewise.
- (OP_AND_FETCH_WORD): Likewise.
-
-2010-08-07 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * config/arm/cortex-a9.md: Rewrite VFP Pipeline description.
- * config/arm/arm.c (arm_xscale_tune): Initialize sched_adjust_cost.
- (arm_fastmul_tune,arm_slowmul_tune, arm_9e_tune): Likewise.
- (arm_adjust_cost): Split into xscale_sched_adjust_cost and a
- generic part.
- (cortex_a9_sched_adjust_cost): New function.
- (xscale_sched_adjust_cost): New function.
- * config/arm/arm-protos.h (struct tune_params): New field
- sched_adjust_cost.
- * config/arm/arm-cores.def: Adjust costs for cortex-a9.
-
-2010-08-06 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/44942
- * config/sparc/sparc.c (function_arg_advance): Always take into account
- the padding, if any.
-
-2010-08-06 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-ccp.c (struct prop_value_d): Add mask member.
- (dump_lattice_value): Dump it.
- (get_default_value): Adjust.
- (get_constant_value): Likewise.
- (set_value_varying): Likewise.
- (set_lattice_value): Make sure to not go up the lattice
- with bitwise constant values.
- (get_value_for_expr): Handle ADDR_EXPRs.
- (value_to_double_int): New function.
- (get_value_from_alignment): Likewise.
- (do_dbg_cnt): Adjust.
- (ccp_lattice_meet): Handle partially constant values.
- (bit_value_unop_1): New function.
- (bit_value_binop_1): Likewise.
- (bit_value_unop): Likewise.
- (bit_value_binop): Likewise.
- (evaluate_stmt): Track partially constant values if
- flag_tree_bit_ccp is set.
- (ccp_fold_stmt): Dump if we folded a predicate.
- (ccp_visit_stmt): Adjust.
- * common.opt (ftree-bit-ccp): New flag.
- * doc/invoke.texi (ftree-bit-ccp): Document.
- * opts.c (decode_options): Enable bit-CCP at -O1.
-
-2010-08-06 Alan Modra <amodra@gmail.com>
-
- * doc/invoke.texi (RS/6000 and PowerPC Options): Rewrite -mrelocatable
- and -mrelocatable-lib description.
-
-2010-08-05 Bernd Schmidt <bernds@codesourcery.com>
-
- From Martin Thuresson <martint@google.com>
- * postreload.c (reload_cse_simplify_operands): Use
- SET_REGNO_RAW instead of SET_REGNO.
- * caller-save.c (reg_save_code): Use SET_REGNO_RAW instead of
- SET_REGNO.
- * ira.c (setup_prohibited_mode_move_regs): Use SET_REGNO_RAW
- instead of SET_REGNO.
- * rtl.h (SET_REGNO_RAW): New macro.
-
-2010-08-05 Eric Botcazou <ebotcazou@adacore.com>
-
- * rtlanal.c (nonzero_bits1): Use unsigned HOST_WIDE_INT in all mask
- computations. Fix formatting issues.
- (num_sign_bit_copies1): Likewise.
- (canonicalize_condition): Likewise.
-
-2010-08-05 Richard Henderson <rth@redhat.com>
-
- * toplev.h (ctz_hwi, clz_hwi, ffs_hwi): New.
- (floor_log2): Use clz_hwi.
- (exact_log2): Use ctz_hwi.
- * toplev.c (ctz_hwi, clz_hwi, ffs_hwi): New.
- * builtins.c (fold_builtin_bitop): Use them.
- * simplify-rtx.c (simplify_const_unary_operation): Likewise.
- * combine.c (get_pos_from_mask): Use ctz_hwi.
- * double-int.c (double_int_ctz): Likewise.
- * explow.c (force_reg): Likewise.
- * tree.h (SET_DECL_OFFSET_ALIGN): Use ffs_hwi.
-
-2010-08-05 Richard Henderson <rth@redhat.com>
-
- PR target/45189
- * config/i386/i386.c (ix86_emit_save_reg_using_mov): Make sure
- the alignment constant is properly sign-extended.
-
-2010-08-05 Richard Guenther <rguenther@suse.de>
-
- * expr.c (store_expr): Use emit_block_move only if both
- source and target are MEMs. Use store_bit_field if only
- the target is a MEM.
-
-2010-08-05 Richard Henderson <rth@redhat.com>
-
- PR debug/45188
- * dwarf2out.c (DWARF2_UNWIND_INFO): Provide default definition.
- (INCOMING_RETURN_ADDR_RTX): Likewise.
- (dwarf2out_do_frame): Remove conditional compilation.
- (dwarf2out_frame_init): Likewise.
-
-2010-08-05 Nicolas Setton <setton@adacore.com>
-
- * gcov.c (flag_display_progress): New static variable.
- (main): Display progress info on standard output if requested.
- (options): Add -d/--display-progress.
- (print_usage): Print them.
- (process_args): Handle them.
- * doc/gcov.texi: Document them.
-
-2010-08-05 Martin Jambor <mjambor@suse.cz>
-
- * ipa-cp.c (ipcp_discover_new_direct_edges): New function.
- (ipcp_insert_stage): Redirect only edges not flagged with
- indirect_inlining_edge. Call ipcp_discover_new_direct_edges for all
- discovered constants.
-
-2010-08-05 Martin Jambor <mjambor@suse.cz>
-
- * ipa-prop.h (enum ipa_lattice_type): Changed comments.
- (struct ipa_param_descriptor): New fields types and
- cannot_devirtualize.
- (ipa_param_cannot_devirtualize_p): New function.
- (ipa_param_types_vec_empty): Likewise.
- (ipa_make_edge_direct_to_target): Declare.
- * ipa-cp.c: Fixed first stage driver name in initial comment,
- described devirtualization there too.
- (ipcp_analyze_node): Call ipa_analyze_params_uses.
- (ipcp_print_all_lattices): Print devirtualization info.
- (ipa_set_param_cannot_devirtualize): New function.
- (ipcp_initialize_node_lattices): Set cannot_devirtualize when setting
- lattice to BOTTOM.
- (ipcp_init_stage): Merged into...
- (ipcp_generate_summary): ...its caller.
- (ipcp_change_tops_to_bottom): Also process type lists.
- (ipcp_add_param_type): New function.
- (ipcp_copy_types): Likewise.
- (ipcp_propagate_types): Likewise.
- (ipcp_propagate_stage): Also propagate types.
- (ipcp_need_redirect_p): Variable jump_func moved to its scope block.
- Also return true if propagated types require it.
- (ipcp_update_callgraph): Dump redirection info.
- (ipcp_process_devirtualization_opportunities): New function.
- (ipcp_const_param_count): Include known type information.
- (ipcp_insert_stage): Call ipcp_process_devirtualization_opportunities
- on new node. Fixed formatting.
- * ipa-prop.c (make_edge_direct_to_target): Renamed to
- ipa_make_edge_direct_to_target and changed all callers. Made
- externally visible.
- (ipa_node_duplication_hook): Duplicate types vector.
- * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Also try to
- redirect outgoing calls for which we can't get a decl from the
- statement. Check that we can get a decl from the call statement.
- * ipa-inline.c (inline_indirect_intraprocedural_analysis): Call
- ipa_analyze_params_uses only when ipa-cp is disabled.
- * tree-inline.c (get_indirect_callee_fndecl): Removed.
- (expand_call_inline): Do not call get_indirect_callee_fndecl.
- * params.def (PARAM_DEVIRT_TYPE_LIST_SIZE): New parameter.
- * Makefile.in (ipa-cp.o): Add gimple.h to dependencies.
-
-2010-08-05 Uros Bizjak <ubizjak@gmail.com>
-
- * expmed.c (expand_mult_const) <case alg_shift>: Expand shift into
- temporary. Emit move from temporary to accum, so REG_EQUAL note will
- be attached to this insn in correct mode.
-
-2010-08-05 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (ix86_decompose_address): Check for SI_REG
- using REGNO of base_reg directly.
-
-2010-08-05 Jie Zhang <jie@codesourcery.com>
-
- PR tree-optimization/45144
- * tree-sra.c (type_consists_of_records_p): Return false
- if the record contains bit-field.
-
-2010-08-04 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (struct ix86_frame): Remove padding and
- to_allocate members.
- (ix86_compute_frame_layout): Don't store them.
- (ix86_can_use_return_insn_p): Use a more direct and more obviously
- correct condition for the position of the stack pointer.
- (ix86_expand_prologue): Compute remaining stack allocation based
- on the ultimate stack pointer offset.
- (ix86_expand_epilogue): Use more obvious expressions testing for
- the stack pointer already pointing to the saved registers.
-
- * config/i386/i386.c (ix86_expand_epilogue): Eliminate code
- duplication deconstructing the frame pointer. Simplify
- deallocation of the local stack frame.
-
- * reg-notes.def (CFA_EXPRESSION): New.
- * dwarf2out.c (dwarf2out_frame_debug): Handle it.
- (dwarf2out_frame_debug_cfa_expression): New.
- (dwarf2out_frame_debug_def_cfa): Handle simple MEMs.
-
- * config/i386/i386.h (struct machine_frame_state): Add realigned flag.
- * config/i386/i386.c (ix86_expand_prologue): Set it.
- (ix86_expand_epilogue): Clear it.
- (ix86_emit_save_reg_using_mov): For registers saved in a realigned
- context, add REG_CFA_EXPRESSION notes.
-
- * config/i386/i386.h (struct machine_frame_state): Rename from
- machine_cfa_state. Add members tracking SP and FP regardless
- of the current CFA register.
- (ix86_cfa_state): Remove.
- * config/i386/i386.c (struct ix86_frame): Add reg_save_offset
- and sse_reg_save_offset members.
- (ix86_compute_frame_layout): Set them.
- (gen_push): Increment sp_offset too.
- (choose_baseaddr_len, choose_baseaddr): New.
- (ix86_emit_save_reg_using_mov): New.
- (ix86_emit_save_regs_using_mov): Use it.
- (ix86_emit_save_sse_regs_using_mov): Likewise.
- (ix86_add_cfa_restore_note): Take cfa_offset not red_offset argument;
- compare vs the saved red_zone_offset.
- (pro_epilogue_adjust_stack): Adjust sp_offset.
- (ix86_adjust_stack_and_probe): Likewise.
- (ix86_expand_prologue): Set up, use, and validate the new
- frame_state_info members. Use gen_frame_mem.
- (ix86_emit_restore_regs_using_pop): Remove red_offset parameter.
- (ix86_emit_restore_reg_using_pop): Likewise. Use and update the
- new frame_state_info members.
- (ix86_emit_leave): Likewise.
- (ix86_emit_restore_regs_using_mov): Likewise. Don't check for
- out-of-range stack pointer offsets here.
- (ix86_emit_restore_sse_regs_using_mov): Likewise.
- (ix86_expand_epilogue): Use and validate the new frame_state_info
- members. Break up and simplify the logic selecting the
- restore_regs_via_mov code path. Ensure that there will be no
- out-of-range stack pointer offsets.
-
- * config/i386/cygming.h (TARGET_64BIT_MS_ABI): Remove.
-
- * config/i386/i386.c (ix86_function_ms_hook_prologue): Fix
- argument name to reflect the expected tree; fix indentation.
- (ix86_asm_output_function_label): Output the entire 32-bit
- ms_hook here as bytes ...
- (ix86_expand_prologue): ... not here as insns. Attach the
- unwind info for the ms_hook to a blockage insn.
- (ix86_handle_fndecl_attribute): Don't check HAVE_AS_IX86_SWAP.
- (ix86_ms_bitfield_layout_p): Fix indentation.
- * config/i386/i386.md (UNSPECV_VSWAPMOV, vswapmov): Remove.
-
- * config/i386/i386.c (ix86_using_red_zone): New.
- (ix86_compute_frame_layout, ix86_add_cfa_restore_note,
- ix86_expand_prologue, ix86_force_to_memory): Use it.
-
- * config/i386/i386.c (ix86_expand_prologue): Simplify logic
- saving the int registers.
-
- * dwarf2out.c: Remove most of the DWARF2_DEBUGGING_INFO
- and DWARF2_UNWIND_INFO conditional compilation.
-
-2010-08-04 Richard Henderson <rth@redhat.com>
-
- PR debug/45171
- * dwarf2out.c (gen_typedef_die): Don't re-generate the die of
- an is_naming_typedef_decl.
-
-2010-08-04 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/45162
- * df-problems.c (df_word_lr_bb_local_compute): Ignore DEBUG_INSNs.
- * dce.c (word_dce_process_block): Likewise.
-
-2010-08-04 Steve Ellcey <sje@cup.hp.com>
-
- PR target/44583
- * config/ia64/constraints.md (Z): New.
- * config/ia64/predicates.md (fr_reg_or_signed_fp01_operand): New.
- (xfreg_or_signed_fp01_operand): New.
- * config/ia64/ia64.md (addsf3): Replace fr_reg_or_fp01_operand
- with fr_reg_or_signed_fp01_operand and constraint G with Z.
- (subsf3): Ditto.
- (*maddsf4): Ditto.
- (*msubsf4): Ditto.
- (adddf3): Ditto.
- (adddf3_trunc): Ditto.
- (subdf3): Ditto.
- (*subdf3_trunc): Ditto.
- (*madddf4): Ditto.
- (*madddf4_trunc): Ditto.
- (*msubdf4): Ditto.
- (*msubdf4_trunc): Ditto.
- (addxf3): Replace xfreg_or_fp01_operand with
- xfreg_or_signed_fp01_operand and constraint G with Z.
- (*addxf3_truncsf): Ditto.
- (*addxf3_truncdf): Ditto.
- (subxf3): Ditto.
- (*subxf3_truncsf): Ditto.
- (*subxf3_truncdf): Ditto.
- (*maddxf4): Ditto.
- (*maddxf4_truncsf): Ditto.
- (*maddxf4_truncdf): Ditto.
- (*msubxf4): Ditto.
- (*msubxf4_truncsf): Ditto.
- (*msubxf4_truncdf): Ditto.
-
-2010-08-04 Richard Guenther <rguenther@suse.de>
-
- * alias.c (rtx_refs_may_alias_p): Do not resort to TBAA
- if either alias-set is zero.
-
-2010-08-04 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-propagate.h (struct prop_value_d, prop_value_t): Move ...
- * tree-ssa-ccp.c: ... here.
- * tree-ssa-copy.c: ... and here.
- * tree-ssa-propagate.h (enum value_range_type, struct value_range_d,
- value_range_t): Move ...
- * tree-vrp.c: ... here.
- * tree-ssa-propagate.h (ssa_prop_get_value_fn): New typedef.
- (substitute_and_fold): Adjust prototype.
- * tree-ssa-propagate.c (replace_uses_in): Adjust.
- (replace_phi_args_in): Likewise.
- (substitute_and_fold): Take callback to query lattice instead
- of pointer to lattice. Replace SSA name defs with lattice
- values first.
- * tree-ssa-ccp.c (ccp_finalize): Adjust.
- * tree-ssa-copy.c (copy_prop_visit_phi_node): Adjust.
- (get_value): New function.
- (fini_copy_prop): Adjust.
- * tree-vrp.c (vrp_finalize): Adjust.
-
-2010-08-04 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45176
- * expr.c (expand_expr_real_1): Also preserve TARGET_MEM_REF
- points-to set for original MEM_REF.
-
-2010-08-04 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-ccp.c (get_constant_value): New function.
- (get_rhs_assign_op_for_ccp): Remove.
- (valueize_op): New function.
- (ccp_fold): Use get_constant_value and valueize_op.
- (fold_const_aggregate_ref): Likewise.
- (ccp_fold_stmt): Likewise.
- (visit_assignment): Simplify.
-
-2010-08-04 Richard Guenther <rguenther@suse.de>
-
- * Makefile.in (double-int.o): Add $(TOPLEV_H) dependency.
- * double-int.h (double_int_ctz): Declare.
- * double-int.c (double_int_ctz): New function.
-
-2010-08-04 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.c (TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE):
- Define.
- picochip_expand_movmemhi : Expand movmem pattern.
- * config/picochip/picochip-protos.h (picochip_expand_movmemhi) :
- Declare.
- * config/picochip/picochip.md (movmemhi) : New pattern.
-
-2010-08-03 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/unix.h (GLOBAL_ASM_OPS): Add tabs around .globl.
-
-2010-08-03 Bernd Schmidt <bernds@codesourcery.com>
-
- * simplify-rtx.c (simplify_binary_operation_1): Try to simplify away
- NEG as operand of a MULT by merging it with the other operand.
- * combine.c (make_compound_operation): Use trunc_int_for_mode when
- generating a MULT with constant. Canonicalize PLUS and MINUS involving
- MULT.
- * config/arm/constraints.md (M): Examine only 32 bits of a
- HOST_WIDE_INT.
- * config/arm/predicates.md (power_of_two_operand): Likewise.
-
-2010-08-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/spu/spu.c (spu_emit_branch_hint): Do not access NOTE_KIND of
- non-NOTE insns.
-
-2010-08-03 Jan Hubicka <jh@suse.cz>
-
- * ipa-split.c (struct split_point): Add split_part_set_retval.
- (find_retval): Forward declare.
- (test_nonssa_use, mark_nonssa_use): Special case return by reference.
- (consider_split): Compute current->split_part_set_retval.
- (visit_bb): Do not look into return value.
- (split_function): Handle !split_part_set_retval
-
-2010-08-03 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (completely_scalarize_record): New parameter REF, create
- its own access->expr intead of using build_ref_for_offset.
-
-2010-08-03 Joseph Myers <joseph@codesourcery.com>
-
- * config/alpha/alpha.h (SWITCH_TAKES_ARG): Define.
- * config/alpha/osf5.h (LIB_SPEC): Don't handle -a.
- * config/bfin/bfin.h (ASM_SPEC, LINK_SPEC): Don't pass -G* options.
- * config/darwin.h (WORD_SWITCH_TAKES_ARG): Handle -iframework.
- * config/ia64/ia64.h (SWITCH_TAKES_ARG): Define.
- * config/iq2000/iq2000.h (SWITCH_TAKES_ARG): Remove.
- * config/rs6000/sysv4.h (SWITCH_TAKES_ARG): Define using
- DEFAULT_SWITCH_TAKES_ARG.
- * config/rx/rx.opt (-patch=): Remove option.
- * config/rx/rx.c (rx_handle_option): Don't handle OPT_patch_.
- * defaults.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Handle -imultilib.
- * doc/invoke.texi (RX Options): Remove -patch=.
- * gcc.c (cc1_options): Pass -aux-info* instead of -a* options.
- (option_map): Remove --profile-blocks, --quiet and --silent.
-
-2010-08-03 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.h (ix86_compare_op0, ix86_compare_op1): Remove.
- * config/i386/i386.c (ix86_compare_op0, ix86_compare_op1): Remove.
- (ix86_expand_branch): Add op0 and op1 arguments. Do not access
- ix86_compare_op0 and ix86_compare_op1, use op0 and op1 instead.
- Update calls to ix86_expand_compare and ix86_expand_branch.
- (ix86_expand_setcc): Add op0 and op1 arguments. Update calls to
- ix86_expand_compare.
- (ix86_expand_compare): Add op0 and op1 arguments. Do not access
- ix86_compare_op0 and ix86_compare_op1, use op0 and op1 instead.
- Make static.
- (ix86_expand_carry_flag_compare): Do not set ix86_compare_op0
- and ix86_compare_op1. Update calls to ix86_expand_compare.
- (ix86_expand_int_movcc): Ditto.
- (ix86_expand_fp_movcc): Ditto. Update calls to ix86_expand_setcc.
- * config/i386/i386-protos.h (ix86_expand_branch): Update prototype.
- (ix86_expand_setcc): Ditto.
- (ix86_expand_compare): Remove prototype.
- * config/i386/i386.md (cbranch<SDWIM:mode>4): Do not set
- ix86_compare_op0 and ix86_compare_op1. Update calls
- to ix86_expand_branch to directly pass operands[1] and operands[2].
- (cbranchxf4): Ditto.
- (cbranch<MODEF:mode>4): Ditto.
- (cbranchcc4): Ditto.
- (cstore<SWIM:mode>4): Do not set ix86_compare_op0 and ix86_compare_op1.
- Update calls to ix86_expand_setcc to directly pass operands[2] and
- operands[3].
- (cstorexf4): Ditto.
- (cstore<MODEF:mode>4): Ditto.
- (cstorecc4): Ditto.
-
-2010-08-02 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/45063
- * caller-save.c (save_call_clobbered_regs): Remove regs from
- hard_regs_saved when they are set.
-
-2010-08-02 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/41089
- * config/alpha/alpha.c (alpha_build_builtin_va_list): Mark __offset
- as volatile.
-
-2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
-
- * common.opt (ftree-loop-distribute-patterns): New.
- * invoke.texi (-ftree-loop-distribute-patterns): Documented.
- * opts.c (decode_options): Enable flag_tree_loop_distribute_patterns
- at -O3.
- * tree-data-ref.c (stores_zero_from_loop): New.
- * tree-data-ref.h (stores_zero_from_loop): Declared.
- * tree-loop-distribution.c (tree_loop_distribution): Call
- stores_zero_from_loop.
- (tree_loop_distribution): Check flag_tree_loop_distribute_patterns.
-
-2010-08-02 Bernd Schmidt <bernds@codesourcery.com>
-
- * postreload.c (reload_cse_simplify_operands): Take attribute enabled
- into account.
-
- * final.c (final_scan_insn): Call CC_STATUS_INIT unconditionally.
- * config/arm/arm.c (thumb1_code): New variable.
- (arm_override_options): Set it.
- (thumb1_final_prescan_insn): Keep track of condition code status.
- (arm_adjust_cost): For Thumb, try to keep cc-setting insns next to
- jumps that depend on them.
- * config/arm/arm.h (thumb1_code): Declare variable.
- (struct machine_function): Guard with #ifndef GENERATOR_FILE. Add
- members thumb1_cc_insn, thumb1_cc_op0, thumb1_cc_op1 and
- thumb1_cc_mode.
- (CC_STATUS_INIT): New macro.
- * config/arm/constraints.md (Pd): New constraint.
- * config/arm/predicates.md (noov_comparison_operator): New predicate.
- * config/arm/arm.md (is_thumb1): New define_attr.
- (conds): Set default to "clob" when generating Thumb1 code.
- (thumb1_bicsi3): Renamed from bicsi3. All uses changed. Condition
- code are set. Use two-operand assembly syntax.
- (thumb1_subsi3_insn): Condition codes are set. Now a properly named
- pattern.
- (thumb1_andsi3_insn, thumb1_iorsi3_insn, thumb1_xorsi3_insn): Condition
- codes are set. Use two-operand assembly syntax.
- (zero_extendhisi splitter): Remove constraints.
- (thumb1_movsi_insn, thumb1_movhi_insn, thumb1_movqi_insn, thumb1_movhf,
- thumb1_movsf_insn): Set conds attribute as appropriate.
- (cbranchsi4_insn): Use condition code status from struct
- machine_function to determine whether the comparison can be eliminated.
- Discourage the alternative using high registers.
- (movsi_cbranchsi4, andsi3_cbranch, orrsi3_cbranch_scratch,
- orrsi3_cbranch, xorsi3_cbranch_scratch, xorsi3_cbranch,
- bicsi3_cbranch_scratch, bicsi3_cbranch, subsi3_cbranch_scratch,
- subsi3_cbranch): Delete.
- (movsi_cbranchsi4 peepholes): Rewrite to generate a sequence of
- one subtract and one cbranch insn.
-
- * config/arm/thumb2.md (thumb2_movdi, thumb2_movsf_soft_insn,
- thumb2_movdf_soft_insn): Delete patterns.
- * config/arm/arm.md (arm_pool_range, thumb2_pool_range,
- arm_neg_pool_range, thumb2_neg_pool_range): New attributes.
- (pool_range, neg_pool_range): Use them to define defaults.
- (movdi, arm_movsf_soft_insn, arm_movdf_soft_insn): Define them
- and allow for TARGET_32BIT.
-
- PR target/40457
- * config/arm/arm.h (arm_regs_in_sequence): Declare.
- * config/arm/arm-protos.h (emit_ldm_seq, emit_stm_seq,
- load_multiple_sequence, store_multiple_sequence): Delete
- declarations.
- (arm_gen_load_multiple, arm_gen_store_multiple): Adjust
- declarations.
- * config/arm/ldmstm.md: New file.
- * config/arm/arm.c (arm_regs_in_sequence): New array.
- (load_multiple_sequence): Now static. New args SAVED_ORDER,
- CHECK_REGS. All callers changed.
- If SAVED_ORDER is nonnull, copy the computed order into it.
- If CHECK_REGS is false, don't sort REGS. Handle Thumb mode.
- (store_multiple_sequence): Now static. New args NOPS_TOTAL,
- SAVED_ORDER, REG_RTXS and CHECK_REGS. All callers changed.
- If SAVED_ORDER is nonnull, copy the computed order into it.
- If CHECK_REGS is false, don't sort REGS. Set up REG_RTXS just
- like REGS. Handle Thumb mode.
- (arm_gen_load_multiple_1): New function, broken out of
- arm_gen_load_multiple.
- (arm_gen_store_multiple_1): New function, broken out of
- arm_gen_store_multiple.
- (arm_gen_multiple_op): New function, with code from
- arm_gen_load_multiple and arm_gen_store_multiple moved here.
- (arm_gen_load_multiple, arm_gen_store_multiple): Now just
- wrappers around arm_gen_multiple_op. Remove argument UP, all callers
- changed.
- (gen_ldm_seq, gen_stm_seq, gen_const_stm_seq): New functions.
- * config/arm/predicates.md (commutative_binary_operator): New.
- (load_multiple_operation, store_multiple_operation): Handle more
- variants of these patterns with different starting offsets. Handle
- Thumb-1.
- * config/arm/arm.md: Include "ldmstm.md".
- (ldmsi_postinc4, ldmsi_postinc4_thumb1, ldmsi_postinc3, ldmsi_postinc2,
- ldmsi4, ldmsi3, ldmsi2, stmsi_postinc4, stmsi_postinc4_thumb1,
- stmsi_postinc3, stmsi_postinc2, stmsi4, stmsi3, stmsi2 and related
- peepholes): Delete.
- * config/arm/ldmstm.md: New file.
- * config/arm/arm-ldmstm.ml: New file.
-
- * config/arm/arm.c (arm_rtx_costs_1): Remove second clause from the
- if statement which adds extra costs to frame-related expressions.
-
-2010-08-02 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * config/arm/arm.c (COSTS_N_INSNS): Remove definition.
-
-2010-08-01 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/45142
- * config/i386/sse.md (vec_set<mode>_0): Do not set mode attribute for
- alternative 2.
- (vec_set<mode>_0 splitter): Use SSEMODE4S mode iterator to also
- split V4SI operands.
-
-2010-08-01 Anatoly Sokolov <aesok@post.ru>
-
- * config/mmix/mmix.h (ASM_OUTPUT_SOURCE_FILENAME): Remove macro.
- * config/mmix/mmix-protos.h (mmix_asm_output_source_filename): Remove.
- * config/mmix/mmix.c (mmix_asm_output_source_filename): Make static.
- (TARGET_ASM_OUTPUT_SOURCE_FILENAME): Define.
-
-2010-07-31 Kai Tietz <kai.tietz@onevision.com>
-
- * cppdefault.c (cpp_include_defaults): Move GCC_INCLUDE_DIR before
- LOCAL_INCLUDE_DIR.
-
-2010-07-31 Richard Sandiford <rdsandiford@googlemail.com>
-
- * tree-ssa-math-opts.c (convert_plusminus_to_widen): Fix type
- used in the call to optab_for_tree_code. Fix the second
- is_widening_mult_p call. Check that both unwidened operands
- have the same sign.
-
-2010-07-31 John Tytgat <John.Tytgat@aaug.net>
-
- * config/arm/arm.c (arm_function_arg): Remove superfluous test.
-
-2010-07-31 Anatoly Sokolov <aesok@post.ru>
-
- * config/spu/spu.h (ASM_OUTPUT_SOURCE_FILENAME): Remove macro.
-
-2010-07-30 DJ Delorie <dj@redhat.com>
-
- * config/rx/predicates.md (rx_constshift_operand): New.
- * config/rx/rx.md (zs_cond): New.
- (cbranchsi4): Remove mode.
- (*cbranchsi4_<code>): Likewise.
- (*tstbranchsi4_<code>): New.
- (*tstbranchsi4r_<code>): New.
- (*tstbranchsi4m_eq): New.
- (*tstbranchsi4m_ne): New.
- (cbranchsf4): Remove mode.
- (*cbranchsf4_<code>): Likewise.
-
-2010-07-30 Bernd Schmidt <bernds@codesourcery.com>
-
- * rtlanal.c (simplify_subreg_regno): Don't treat
- HARD_FRAME_POINTER_REGNUM specially.
-
-2010-07-30 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (-G): Don't define option here.
- * config/g.opt: New.
- * config.gcc: Use g.opt for alpha, frv, ia64, lm32, m32r, mips,
- rs6000/powerpc and score targets.
- * opts.c (common_handle_option): Don't handle -G here.
- * config/alpha/alpha.c (alpha_handle_option): Handle -G.
- * config/frv/frv.c (frv_handle_option): Handle -G.
- * config/ia64/ia64.c (ia64_handle_option): Handle -G.
- * config/lm32/lm32.c (lm32_handle_option, TARGET_HANDLE_OPTION): New.
- * config/m32r/m32r.c (m32r_handle_option): Handle -G.
- * config/mips/mips.c (mips_handle_option): Handle -G.
- * config/rs6000/rs6000.c (rs6000_handle_option) Handle -G.
- * config/score/score.c (score_handle_option): Handle -G.
-
-2010-07-30 Anatoly Sokolov <aesok@post.ru>
-
- * config/mmix/mmix.c: Include basic-block.h.
-
-2010-07-30 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45055
- PR rtl-optimization/45137
- * rtl.h (prev_nonnote_nondebug_insn, next_nonnote_nondebug_insn): New
- prototypes.
- * emit-rtl.c (prev_nonnote_nondebug_insn, next_nonnote_nondebug_insn):
- New functions.
- * combine.c (next_nonnote_nondebug_insn): Removed.
- * ifcvt.c (noce_process_if_block): Use prev_nonnote_nondebug_insn.
- * haifa-sched.c (queue_to_ready): Use next_nonnote_nondebug_insn.
- * sched-deps.c (sched_analyze_insn): Likewise.
- (fixup_sched_groups, deps_start_bb): Use prev_nonnote_nondebug_insn.
- * rtlanal.c (canonicalize_condition): Likewise.
- * postreload.c (reload_combine_recognize_pattern): Likewise.
- (reload_cse_move2add): Use next_nonnote_nondebug_insn.
-
-2010-07-29 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (int_cond): Remove code iterator.
- (fp_cond): Ditto.
- (cbranch<mode>4): Use ordered_comparison_operator predicate
- for operator0.
- (cstore<mode>4): Ditto for operator1.
- (mov<SWIM:mode>cc and corresponding splitter): Ditto.
- (add<mode>cc): ditto.
-
-2010-07-30 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45141
- * expr.c (expand_expr_real_1): Check for not handled base address.
-
-2010-07-30 Richard Guenther <rguenther@suse.de>
-
- * ipa-prop.c (ipa_modify_formal_parameters): Use
- build_distinct_type_copy.
-
-2010-07-30 Anthony Green <green@moxielogic.com>
-
- * config/moxie/rtems.h: New file.
- * config.gcc: Add moxie-rtems support.
-
-2010-07-29 Bernd Schmidt <bernds@codesourcery.com>
-
- * dce.c (run_word_dce): Take flag_dce into account. Clear and restore
- df flags as in run_fast_df_dce.
-
-2010-07-29 Jakub Jelinek <jakub@redhat.com>
-
- Revert:
- 2010-07-27 Bernd Schmidt <bernds@codesourcery.com>
-
- * rtl.def (NOTE): Swap operands 4 and 5.
- * rtl.h (NOTE_DATA, NOTE_DELETED_LABEL_NAME, NOTE_BLOCK,
- NOTE_EH_HANDLER, NOTE_BASIC_BLOCK, NOTE_VAR_LOCATION, NOTE_KIND):
- Adjust accordingly.
- * gengtype.c (adjust_field_rtx_def): Swap operands 4 and 5 of NOTEs.
-
-2010-07-29 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45110
- * dwarf2out.c (dwarf_attr_name): Handle DW_AT_object_pointer.
- (gen_formal_types_die): Add DW_AT_object_pointer in methods.
- (gen_subprogram_die): Likewise. Remove it when removing declaration's
- formal parameters.
- (gen_decl_die): Change return type to dw_die_ref, return what
- gen_formal_parameter_die returned.
-
-2010-07-29 Martin Jambor <mjambor@suse.cz>
-
- * dbgcnt.def (eipa_sra): New counter.
- * tree-sra.c (ipa_early_sra_gate): Also check eipa_sra debug counter.
-
-2010-07-29 Xinliang David Li <davidxl@google.com>
-
- PR bootstrap/45119
- * tree-ssa-loop-ivopts.c (get_address_cost): Revert change
- in revision 162652.
-
-2010-07-29 Richard Guenther <rguenther@suse.de>
-
- * timevar.def (TV_TREE_STORE_COPY_PROP): Remove.
- (TV_TREE_STORE_CCP): Likewise.
- (TV_TREE_REDPHI): Likewise.
-
-2010-07-29 Richard Guenther <rguenther@suse.de>
-
- * double-int.h (double_int_and_not): New function.
- * combine.c (try_combine): Use it.
- * tree-vrp.c (simplify_bit_ops_using_ranges): Likewise.
-
-2010-07-29 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/42575
- * dce.c (word_dce_process_block): Renamed from byte_dce_process_block.
- Argument AU removed. All callers changed. Ignore artificial refs.
- Use return value of df_word_lr_simulate_defs to decide whether an insn
- is necessary.
- (fast_dce): Rename arg to WORD_LEVEL.
- (run_word_dce): Renamed from rest_of_handle_fast_byte_dce. No longer
- static.
- (pass_fast_rtl_byte_dce): Delete.
- * dce.h (run_word_dce): Declare.
- * df-core.c (df_print_word_regset): Renamed from df_print_byteregset.
- All callers changed. Simplify code to only deal with two-word regs.
- * df.h (DF_WORD_LR): Renamed from DF_BYTE_LR.
- (DF_WORD_LR_BB_INFO): Renamed from DF_BYTE_LR_BB_INFO.
- (DF_WORD_LR_IN): Renamed from DF_BYTE_LR_IN.
- (DF_WORD_LR_OUT): Renamed from DF_BYTE_LR_OUT.
- (struct df_word_lr_bb_info): Renamed from df_byte_lr_bb_info.
- (df_word_lr_mark_ref): Declare.
- (df_word_lr_add_problem, df_word_lr_mark_ref, df_word_lr_simulate_defs,
- df_word_lr_simulate_uses): Declare or rename from byte variants.
- (df_byte_lr_simulate_artificial_refs_at_top,
- df_byte_lr_simulate_artificial_refs_at_end, df_byte_lr_get_regno_start,
- df_byte_lr_get_regno_len, df_compute_accessed_bytes): Delete
- declarations.
- (df_word_lr_get_bb_info): Rename from df_byte_lr_get_bb_info.
- (enum df_mm): Delete.
- * df-byte-scan.c: Delete file.
- * df-problems.c (df_word_lr_problem_data): Renamed from
- df_byte_lr_problem_data, all members deleted except for
- WORD_LR_BITMAPS, which is renamed from BYTE_LR_BITMAPS. Uses changed.
- (df_word_lr_expand_bitmap, df_byte_lr_simulate_artificial_refs_at_top,
- df_byte_lr_simulate_artificial_refs_at_end, df_byte_lr_get_regno_start,
- df_byte_lr_get_regno_len, df_byte_lr_check_regs,
- df_byte_lr_confluence_0): Delete functions.
- (df_word_lr_free_bb_info): Renamed from df_byte_lr_free_bb_info; all
- callers changed.
- (df_word_lr_alloc): Renamed from df_byte_lr_alloc; all callers changed.
- Don't initialize members that were deleted, don't try to discover data
- about registers. Ignore hard regs.
- (df_word_lr_reset): Renamed from df_byte_lr_reset; all callers changed.
- (df_word_lr_mark_ref): New function.
- (df_word_lr_bb_local_compute): Renamed from
- df_byte_bb_lr_local_compute; all callers changed. Use
- df_word_lr_mark_ref. Assert that artificial refs don't include
- pseudos. Ignore hard registers.
- (df_word_lr_local_compute): Renamed from df_byte_lr_local_compute.
- Assert that exit block uses don't contain pseudos.
- (df_word_lr_init): Renamed from df_byte_lr_init; all callers changed.
- (df_word_lr_confluence_n): Renamed from df_byte_lr_confluence_n; all
- callers changed. Ignore hard regs.
- (df_word_lr_transfer_function): Renamed from
- df_byte_lr_transfer_function; all callers changed.
- (df_word_lr_free): Renamed from df_byte_lr_free; all callers changed.
- (df_word_lr_top_dump): Renamed from df_byte_lr_top_dump; all callers
- changed.
- (df_word_lr_bottom_dump): Renamed from df_byte_lr_bottom_dump; all
- callers changed.
- (problem_WORD_LR): Renamed from problem_BYTE_LR; uses changed;
- confluence operator 0 set to NULL.
- (df_word_lr_add_problem): Renamed from df_byte_lr_add_problem; all
- callers changed.
- (df_word_lr_simulate_defs): Renamed from df_byte_lr_simulate_defs.
- Return bool, true if bitmap changed or insn otherwise necessary.
- All callers changed. Simplify using df_word_lr_mark_ref.
- (df_word_lr_simulate_uses): Renamed from df_byte_lr_simulate_uses;
- all callers changed. Simplify using df_word_lr_mark_ref.
- * lower-subreg.c: Include "dce.h"
- (decompose_multiword_subregs): Call run_word_dce if df available.
- * Makefile.in (lower-subreg.o): Adjust dependencies.
- (df-byte-scan.o): Delete.
- * timevar.def (TV_DF_WORD_LR): Renamed from TV_DF_BYTE_LR.
-
-2010-07-29 Richard Guenther <rguenther@suse.de>
-
- * tree.c (build_vector): Assert that the vector constant
- has enough elements.
- (build_vector_from_ctor): Pad with trailing zeros.
-
-2010-07-29 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45120
- * tree-ssa-structalias.c (get_constraint_for_component_ref):
- Handle offset in DEREFs properly.
- (get_constraint_for_1): Handle MEM_REF offset properly.
-
-2010-07-29 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45034
- * convert.c (convert_to_integer): Always use an unsigned
- type for narrowed negate and bitwise not.
-
-2010-07-29 Ira Rosen <irar@il.ibm.com>
-
- * tree-vect-loop.c (vect_create_epilog_for_reduction): Switch
- to outer loop when creating reduction epilogue for double reduction,
- and switch back to the inner loop when updating the phi nodes.
- Update uses of outer loop exit phi nodes in double reduction (instead
- of uses of reduction).
-
-2010-07-28 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * config/rs6000/rs6000.c (rs6000_rtx_costs): Update costs for
- popcount on power7 and parity on power6 systems.
- (rs6000_emit_popcount): Rename gen_popcntwsi2 to gen_popcntddi2.
- (rs6000_emit_parity): Add support for power6 prtyd/prtyw
- instructions.
-
- * config/rs6000/rs6000.md (UNSPEC_COPYSIGN): New unspec.
- (UNSPEC_PARITY): Ditto.
- (SFDF): New iterator for SF/DF.
- (rreg2): New mode attribute for floating register constraint.
- (TARGET_FLOAT): New mode attribute for whether single/double float
- is supported.
- (popcntd<mode>2): Combine popcntwsi2 and popcntddi2 into one
- pattern.
- (parity<mode>2_cmpb): New insn for parity on power6 and newer
- machines.
- (copysign<mode>3): Combine copysignsf3, copysigndf3 into one
- pattern. Add support for fcpsgn instruction added in power6.
- (copysignsf3): Delete.
- (copysigndf3): Delete.
- (copysign<mode>3_fcpsgn): New insn to generate fcpsgn. Use UNSPEC
- instead of if_then_else in RTL to avoid problems with -0.
-
- * config/rs6000/vsx.md (vsx_copysign<mode>3): Use UNSPEC instead
- of if_then_else to mirror scalar code.
- (vsx_copysignsf3): Delete, use copysign<mode>3_fcpsgn in
- rs6000.md.
-
- * config/rs6000/vector.md (vector_copysign<mode>3): Use UNSPEC
- instead of if_then_else.
-
-2010-07-28 Xinliang David Li <davidxl@google.com>
-
- * tree-ssa-loop-ivopts.c (avg_loop_niter): New function.
- (dump_cand): Dump var_before/after.
- (htab_inv_expr_eq): New function.
- (htab_inv_expr_hash): New function.
- (tree_ssa_iv_optimize_init): Support pseudo invariants.
- (add_candidate_1): consider base type precision.
- (set_use_iv_cost): New parameter.
- (adjust_setup_cost): Use profile information.
- (get_address_cost): Do not hard code width in computing address
- offset limits.
- (compare_aff_trees): New function.
- (get_loop_invariant_expr_id): New function.
- (get_computation_cost_at): New parameter and use profile information.
- (get_computation_cost): New parameter.
- (determine_use_iv_cost_generic): Pass new parameter.
- (determine_use_iv_cost_address): Ditto.
- (determine_use_iv_cost_condition): Ditto.
- (autoinc_possible_for_pair): Ditto.
- (determine_use_iv_costs): More dumps.
- (iv_ca_get_num_inv_exprs): New function.
- (iv_ca_recount_cost): Consider loop invariants in register pressure
- cost.
- (iv_ca_add_use): New parameter.
- (iv_ca_dump): Better dumping.
- (iv_ca_extend): New parameter.
- (try_add_cand_for): Attempt to get better partial solution.
- (try_improve_iv_set): Pass new parameter to iv_ca_extend.
- (create_new-ivs): More dumps.
- (rewrite_use_compare): Ditto.
- (free_loop_data): More cleanup.
- (treee_ssa_iv_optimize_finalize): Ditto.
-
-2010-07-28 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/i386.h (MCOUNT_NAME_BEFORE_PROLOGUE): New.
- * config/i386/i386.c (ix86_profile_before_prologue): New.
- (override_options): Add special handling for -mfentry.
- (ix86_function_regparm): Likewise.
- (ix86_function_sseregparm): Likewise.
- (ix86_frame_pointer_required): Likewise.
- (ix86_expand_prologue): Check for ms_hook_prologue.
- (x86_function_profiler): Adjust mcount output.
- (TARGET_PROFILE_BEFORE_PROLOGUE): Define hook.
- * config/i386/i386.opt (mfentry): New.
- * doc/invoke.texi (mfentry): Add documentation.
- * doc/tm.texi: Regenerated..
- * doc/tm.texi.in (TARGET_PROFILE_BEFORE_PROLOGUE): New.
- * final.c (final_start_function): Replace macro
- PROFILE_BEFORE_PROLOGUE by target hook.
- * function.c (thread_prologue_and_epilogue_insns): Likewise.
- * target.def (profile_before_prologue): New hook.
- * targhooks.c (default_profile_before_prologue): New.
- * targhooks.h (default_profile_before_prologue): New.
-
-2010-07-28 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45105
- * gcse.c (hoist_code): Use FOR_BB_INSNS macro.
-
- PR debug/45103
- * dwarf2out.c (dwarf2out_var_location): Always consider
- NOTE_DURING_CALL_P notes, even when not followed by real instructions.
-
-2010-07-28 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR rtl-optimization/45107
- * gcse.c (hash_scan_set): Use max_distance for gcse-las.
-
-2010-07-28 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-ccp.c: Remove comment regarding STORE-CCP.
- (set_lattice_value): Do not query an old default value.
- (get_value_for_expr): New function. Properly canonicalize
- float values.
- (ccp_visit_phi_node): Use it.
-
-2010-07-28 Chung-Lin Tang <cltang@codesourcery.com>
-
- * config/arm/arm.c (arm_pcs_default): Remove static.
- * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_PCS or
- __ARM_PCS_VFP to indicate soft/hard-float calling convention.
- (arm_pcs_default): Declare.
-
-2010-07-28 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_override_options):
- Use TARGET_MACHO inline, move darwin_one_byte_bool from here...
- ... to darwin_rs6000_override_options.
- (rs6000_return_in_memory): Update preceding comment for darwin
- 64 bit ABI. Use TARGET_MACHO inline.
- (rs6000_darwin64_struct_check_p): New.
- (function_arg_advance): Use rs6000_darwin64_struct_check_p.
- (function_arg): Likewise.
- (rs6000_arg_partial_bytes): Likewise.
- (rs6000_function_value): Likewise.
-
-2010-07-28 Andi Kleen <ak@linux.intel.com>
-
- * lto-opts.c (lto_file_read_options): Add loop over all inputs.
-
-2010-07-28 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44903
- * builtins.c (fold_builtin_memory_op): On STRICT_ALIGNMENT
- targets try harder to not generate unaligned accesses.
-
-2010-07-28 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR rtl-optimization/45101
- * gcse.c (hash_scan_set): Fix argument ordering of insert_expr_in_table
- for gcse-las.
-
-2010-07-28 Eric Botcazou <ebotcazou@adacore.com>
-
- PR tree-optimization/44885
- * tree-sra.c (find_param_candidates): Skip pointer types to arrays
- with non-aliased component.
-
-2010-07-28 Joseph Myers <joseph@codesourcery.com>
-
- * config/darwin-driver.c (SWITCH_TAKES_ARG,
- WORD_SWITCH_TAKES_ARG): Remove.
- * cppspec.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
- * defaults.h (DEFAULT_SWITCH_TAKES_ARG,
- DEFAULT_WORD_SWITCH_TAKES_ARG): Move from gcc.h.
- (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Move default
- definitions from gcc.c.
- * gcc.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Move to
- defaults.h.
- * gcc.h (DEFAULT_SWITCH_TAKES_ARG, DEFAULT_WORD_SWITCH_TAKES_ARG):
- Move to defaults.h.
- * opts-common.c: Include tm.h.
- (decode_cmdline_option): Use SWITCH_TAKES_ARG and
- WORD_SWITCH_TAKES_ARG to count arguments to unknown options.
- Handle more than one argument. Set canonical_option_num_elements.
- (decode_cmdline_options_to_array): Set
- canonical_option_num_elements and trailing elements of
- canonical_option.
- * opts.h (struct cl_decoded_option): Allow four elements in
- canonical_option. Add field canonical_option_num_elements.
- * Makefile.in (opts-common.o): Update dependencies.
-
-2010-07-28 Eric Botcazou <ebotcazou@adacore.com>
-
- PR middle-end/44790
- PR middle-end/44993
- * expr.c (expand_expr_real_1) <MEM_REF>: Revert latest change. Make
- sure the base has address_mode before adding the offset.
-
-2010-07-27 Xinliang David Li <davidxl@google.com>
-
- * tree-flow.h (create_mem_ref): Add one new parameter.
- * tree-ssa-address.c (create_mem_ref): New parameter.
- (addr_to_parts): Ditto.
- (move_variant_to_index): New function.
- * tree-ssa-loop-ivopts.c (rewrite_use_address): Pass new argument.
-
-2010-07-27 Bernd Schmidt <bernds@codesourcery.com>
-
- * rtl.def (DEBUG_INSN, INSN, JUMP_INSN, CALL_INSN, NOTE): Swap operands
- 4 and 5.
- * rtl.h (PATTERN, INSN_LOCATOR, NOTE_DATA, NOTE_DELETED_LABEL_NAME,
- NOTE_BLOCK, NOTE_EH_HANDLER, NOTE_BASIC_BLOCK, NOTE_VAR_LOCATION,
- NOTE_KIND, LABEL_NUSES, LABEL_REFS): Adjust accordingly.
- * gengtype.c (adjust_field_rtx_def): Swap operands 4 and 5 of
- CODE_LABELs and NOTEs.
- * caller-save.c (init_caller_save): Fix up gen_rtx_INSN call.
- * combine.c (try_combine): Likewise.
- * ira.c (setup_prohibited_mode_move_regs): Likewise.
- * print-rtl.c (print_rtx): Start REG_NOTES on a new line.
-
-2010-07-27 Joseph Myers <joseph@codesourcery.com>
-
- * coretypes.h (struct cl_option_handlers): Declare.
- * hooks.c (hook_int_size_t_constcharptr_int_0): Remove.
- * hooks.h (hook_int_size_t_constcharptr_int_0): Remove.
- * langhooks-def.h (lhd_handle_option): Declare.
- (LANG_HOOKS_HANDLE_OPTION): Use lhd_handle_option.
- * langhooks.c (lhd_handle_option): New.
- * langhooks.h (struct lang_hooks): Update prototype and return
- value type of handle_option hook.
- * optc-gen.awk: Generate target_flags_explicit definition for the
- driver.
- * opts-common.c: Include diagnostic.h.
- (handle_option): Move from opts.c. Update prototype and return
- value type. Use handlers structure.
- (read_cmdline_option): Move from opts.c. Update prototype. Use
- handlers structure.
- (set_option): Move from opts.c.
- * opts.c (common_handle_option): Update prototype and return value
- type. Update calls to handle_option and enable_warning_as_error.
- (unknown_option_callback, post_handling_callback,
- lang_handle_option, target_handle_option): New.
- (handle_option, read_cmdline_option): Move to opts-common.c.
- (read_cmdline_options): Update prototype. Update call to
- read_cmdline_option.
- (decode_options): Initialize and use handlers structure.
- (set_option): Move to opts-common.c.
- (enable_warning_as_error): Update prototype. Update call to
- handle_option.
- * opts.h (struct cl_option_handler_func, struct
- cl_option_handlers): New.
- (handle_option, enable_warning_as_error): Update prototypes.
- (read_cmdline_option): Declare.
- * Makefile.in (opts-common.o): Update dependencies.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * config/arm/arm.c (params.h): Include.
- (arm_override_options): Tune gcse-unrestricted-cost.
- * config/arm/t-arm (arm.o): Define dependencies.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR target/42495
- PR middle-end/42574
- * basic-block.h (get_dominated_to_depth): Declare.
- * dominance.c (get_dominated_to_depth): New function, use
- get_all_dominated_blocks as a base.
- (get_all_dominated_blocks): Use get_dominated_to_depth.
-
- * gcse.c (occr_t, VEC (occr_t, heap)): Define.
- (hoist_exprs): Remove.
- (alloc_code_hoist_mem, free_code_hoist_mem): Update.
- (compute_code_hoist_vbeinout): Add debug print outs.
- (hoist_code): Partially rewrite, simplify. Use get_dominated_to_depth.
-
- * params.def (PARAM_MAX_HOIST_DEPTH): New parameter to avoid
- quadratic behavior.
- * params.h (MAX_HOIST_DEPTH): New macro.
- * doc/invoke.texi (max-hoist-depth): Document.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR rtl-optimization/40956
- * config/arm/arm.c (thumb1_size_rtx_costs): Fix cost of simple
- constants.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR target/42495
- PR middle-end/42574
- * config/arm/arm.c (legitimize_pic_address): Use
- gen_calculate_pic_address pattern to emit calculation of PIC address.
- (will_be_in_index_register): New function.
- (arm_legitimate_address_outer_p, thumb2_legitimate_address_p,)
- (thumb1_legitimate_address_p): Use it provided !strict_p.
- * config/arm/arm.md (calculate_pic_address): New expand and split.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR target/42495
- PR middle-end/42574
- * config/arm/arm.c (thumb1_size_rtx_costs): Add cost for "J" constants.
- * config/arm/arm.md (define_split "J", define_split "K"): Make
- IRA/reload friendly.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * gcse.c (insert_insn_end_basic_block): Update signature, remove
- unused checks.
- (pre_edge_insert, hoist_code): Update.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR target/42495
- PR middle-end/42574
- * gcse.c (hoist_expr_reaches_here_p): Remove excessive check.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * gcse.c (hoist_code): Generate new pseudo for every new set insn.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR rtl-optimization/40956
- PR target/42495
- PR middle-end/42574
- * gcse.c (compute_code_hoist_vbeinout): Consider more expressions
- for hoisting.
- (hoist_code): Count occurences in current block too.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * gcse.c (struct expr:max_distance): New field.
- (doing_code_hoisting_p): New static variable.
- (want_to_gcse_p): Change signature. Allow constrained hoisting of
- simple expressions, don't change behavior for PRE. Set max_distance.
- (insert_expr_in_table): Set new max_distance field.
- (hash_scan_set): Update.
- (hoist_expr_reaches_here_p): Stop search after max_distance
- instructions.
- (find_occr_in_bb): New static function. Use it in ...
- (hoist_code): Calculate sizes of basic block before any changes are
- done. Pass max_distance to hoist_expr_reaches_here_p.
- (one_code_hoisting_pass): Set doing_code_hoisting_p.
-
- * params.def (PARAM_GCSE_COST_DISTANCE_RATIO,)
- (PARAM_GCSE_UNRESTRICTED_COST): New parameters.
- * params.h (GCSE_COST_DISTANCE_RATIO, GCSE_UNRESTRICTED_COST): New
- macros.
- * doc/invoke.texi (gcse-cost-distance-ratio, gcse-unrestricted-cost):
- Document.
-
-2010-07-27 Jeff Law <law@redhat.com>
- Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * gcse.c (compute_transpout, transpout): Remove, move logic
- to prune_expressions.
- (compute_pre_data): Move pruning of trapping expressions ...
- (prune_expressions): ... here. New static function.
- (compute_code_hoist_data): Use it.
- (alloc_code_hoist_mem, free_code_hoist_mem, hoist_code): Update.
-
-2010-07-27 Xinliang David Li <davidxl@google.com>
-
- * tree-ssa-loop-ivopts.c (adjust_iv_update_pos): New function.
- (rewrite_use_address): Adjust iv update position when needed.
-
-2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * dbgcnt.def (hoist_insn): New debug counter.
- * gcse.c (hoist_code): Use it.
-
-2010-07-27 Xinliang David Li <davidxl@google.com>
-
- * tree-ssa-loop-ivopts.c (niter_for_exit): New parameter.
- (niter_for_single_dom_exit): Passes additional parameter.
- (iv_period): Fix comments.
- (may_eliminate_iv): Handles multiple exit loops properly.
- (free_tree_niter_desc): New function.
- (free_loop_data): Frees up loop iteration descriptors.
-
-2010-07-27 Jakub Jelinek <jakub@redhat.com>
-
- PR target/44542
- * cfgexpand.c (expand_one_stack_var_at): Limit align to maximum
- of max_used_stack_slot_alignment and PREFERRED_STACK_BOUNDARY
- instead of MAX_SUPPORTED_STACK_ALIGNMENT.
- (expand_one_var): Don't consider DECL_ALIGN for variables for
- which expand_one_stack_var_at has been already called.
-
- PR testsuite/44701
- * doc/md.texi: Clarify m and es constraints on PowerPC and m and S
- constraints on IA-64.
-
-2010-07-27 Jie Zhang <jie@codesourcery.com>
-
- PR target/44290
- Revert:
- 2010-07-23 Jie Zhang <jie@codesourcery.com>
-
- * tree-sra.c (ipa_sra_preliminary_function_checks): Return
- false if ! tree_versionable_function_p.
-
-2010-07-27 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (add_data_member_location_attribute): Use
- add_AT_unsigned instead of add_AT_int if offset is non-negative.
-
-2010-07-27 Bernd Schmidt <bernds@codesourcery.com>
-
- * postreload.c (try_replace_in_use): New static function.
- (reload_combine_recognize_const_pattern): Use it here. Allow
- substituting into a final add insn, and substituting into a memory
- reference in an insn that sets the reg.
-
-2010-07-27 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (o): Add MissingArgError.
- * doc/options.texi (MissingArgError): Document.
- * hooks.c (hook_bool_constcharptr_size_t_false): Remove.
- * hooks.h (hook_bool_constcharptr_size_t_false): Remove.
- * langhooks-def.h (LANG_HOOKS_MISSING_ARGUMENT): Remove.
- (LANG_HOOKS_INITIALIZER): Remove missing_argument hook initializer.
- * langhooks.h (struct lang_hooks): Remove missing_argument.
- * optc-gen.awk: Handle MissingArgError and output new structure
- field initializers.
- * opts.c (read_cmdline_option): Use missing_argument_error field
- instead of missing_argument langhook.
- * opts.h (struct cl_option): Add missing_argument_error field.
- * system.h (LANG_HOOKS_MISSING_ARGUMENT): Poison.
-
-2010-07-27 Iain Sandoe <iains@gcc.gnu.org>
-
- PR target/29090
- * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Special-case the
- Darwin64 ABI, for zero-sized objects.
-
-2010-07-27 Iain Sandoe <iains@gcc.gnu.org>
-
- PR target/35491
- PR target/29090
-
- Merge from Apple local 4.2.1.
- 2005-05-11 Stan Shebs <shebs@apple.com>
- Fix 64-bit varargs for Darwin (Radar 4028089).
- * config/rs6000/rs6000.h (rs6000_args): New field floats_in_gpr.
- * config/rs6000/rs6000.c (rs6000_darwin64_record_arg_advance_flush):
- Add argument, add case for 8-byte register half-filled with a float.
- (rs6000_darwin64_record_arg_advance_recurse): Detect and handle
- single-precision floats specially.
-
-2010-07-27 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/44152
- * tree-vect-slp.c (vect_build_slp_tree): Collect nodes with
- complex numbers for further check.
- (vect_supported_load_permutation_p): Check nodes with
- complex numbers.
-
-2010-07-27 Joseph Myers <joseph@codesourcery.com>
-
- * langhooks-def.h (lhd_init_options, LANG_HOOKS_OPTION_LANG_MASK,
- LANG_HOOKS_COMPLAIN_WRONG_LANG_P): New.
- (LANG_HOOKS_INIT_OPTIONS): Update default definition.
- (LANG_HOOKS_INITIALIZER): Add new hooks.
- * langhooks.c (lhd_init_options, lhd_complain_wrong_lang_p): New.
- * langhooks.h (struct lang_hooks): Add new hooks option_lang_mask
- and complain_wrong_lang_p. Update init_options prototype.
- * c-objc-common.c (c_initialize_diagnostics): First call
- c_common_initialize_diagnostics.
- * c-objc-common.h (LANG_HOOKS_OPTION_LANG_MASK,
- LANG_HOOKS_COMPLAIN_WRONG_LANG_P): Define.
- * coretypes.h (struct cl_option, struct cl_decoded_option): Declare.
- * hooks.c (hook_uint_uint_constcharptrptr_0): Remove.
- (hook_uint_void_0): New.
- * hooks.h (hook_uint_uint_constcharptrptr_0): Remove.
- (hook_uint_void_0): New.
- * opts-common.c (decode_cmdline_option,
- decode_cmdline_options_to_array): Also fill in canonical_option field.
- * opts.c (complain_wrong_lang): Use langhook to determine whether
- to complain instead of special-casing LTO.
- (decode_options): Separate lang_mask determination with
- option_lang_mask hook from call of init_options hook.
- * opts.h (struct cl_decoded_option): Add canonical_option.
-
-2010-07-27 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/45083
- * tree-inline.c (add_local_variables): Also remap DECL_DEBUG_EXPR.
-
-2010-07-27 Bernd Schmidt <bernds@codesourcery.com>
-
- * postreload.c (reload_combine_recognize_const_pattern): Move test
- for limiting the insn movement to the right scope.
-
- PR rtl-optimization/45051
- * reload1.c (delete_output_reload): Use refers_to_regno_p rather
- than reg_mentioned_p.
-
-2010-07-26 Richard Henderson <rth@redhat.com>
-
- PR target/44132
- * tree-emutls.c: New file.
- * Makefile.in (OBJS-common): Add it.
- * tree-pass.h (pass_ipa_lower_emutls): Declare.
- * passes.c (init_optimization_passes): Add it.
-
- * dwarf2out.c (loc_list_from_tree): If emutls.debug_form_tls_address,
- pull the control variable from DECL_VALUE_EXPR, not emutls_decl.
- * expr.c (emutls_var_address): Delete.
- (expand_expr_addr_expr_1, expand_expr_real_1): Don't use it.
- * output.h (SECCAT_EMUTLS_VAR, SECCAT_EMUTLS_TMPL): Delete.
- (emutls_finish): Delete.
- * toplev.c (compile_file): Don't call it.
- * tree.h (emutls_decl): Delete.
- * varasm.c (emutls_htab, DECL_EMUTLS_VAR_P): Delete.
- (emutls_finish, emutls_finalize_control_var): Delete.
- (emutls_object_type): Move to tree-emutls.c.
- (EMUTLS_SEPARATOR, prefix_name, get_emutls_object_name,
- default_emutls_var_fields, get_emutls_object_type,
- get_emutls_init_templ_addr, emutls_decl, emutls_common_1
- default_emutls_var_init): Likewise.
- (get_variable_section): Don't special case emutls.
- (assemble_variable, do_assemble_alias, categorize_decl_for_section,
- default_elf_select_section, default_unique_section,
- default_encode_section_info): Likewise.
- * varpool.c (decide_is_variable_needed): Likewise.
- * gimple-iterator.c (update_call_edge_frequencies): New
- (gsi_insert_on_edge_immediate): Use it.
- (gsi_insert_seq_on_edge_immediate): Likewise.
- (gsi_commit_one_edge_insert): Likewise.
-
- * config/i386/i386.c (x86_64_elf_select_section): Don't handle
- SECCAT_EMUTLS_VAR, SECCAT_EMUTLS_TMPL.
- (x86_64_elf_unique_section): Likewise.
-
-2010-07-26 Jan Hubicka <jh@suse.cz>
-
- * lto-streamer.h (struct lto_file_decl_data): Mark resolutions with
- GTY((skip)).
-
-2010-07-26 Anatoly Sokolov <aesok@post.ru>
-
- * target.def (output_source_filename): New hook.
- * doc/tm.texi.in (TARGET_ASM_OUTPUT_SOURCE_FILENAME): Document.
- * doc/tm.texi: Regenerate.
- * toplev.c (output_file_directive) Remove function.
- * toplev.h (output_file_directive) Remove.
- * output.h (default_asm_output_source_filename,
- output_file_directive): Declare.
- * varasm.h (default_asm_output_source_filename,
- output_file_directive): New functions.
-
- * config/mips/mips.h (ASM_OUTPUT_SOURCE_FILENAME): Remove macro.
- * config/mips/mips-protos.h (mips_output_filename): Remove.
- * config/mips/mips.c (mips_output_filename): Make Static.
- (TARGET_ASM_OUTPUT_SOURCE_FILENAME): Define.
-
-2010-07-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43784
- * tree-nrv.c (dest_safe_for_nrv_p): It's not safe to NRV
- if the destination is used by the call.
-
-2010-07-26 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45073
- * gimple-fold.c (gimplify_and_update_call_from_tree): Conditionalize
- SSA updating on being in SSA form.
-
-2010-07-26 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45056
- * gimple-fold.c (fold_stmt_1): Also fold references in debug stmts.
-
-2010-07-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45071
- * tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Always
- adjust op->opcode.
-
-2010-07-26 Naveen.H.S <naveen.S@kpitcummins.com>
-
- * config/v850/lib1funcs.asm (save_r2_r31, return_r2_r31,
- save_r20_r31, return_r20_r31, save_r21_r31, return_r21_r31,
- save_r22_r31, return_r22_r31, save_r23_r31, return_r23_r31,
- save_r24_r31, return_r24_r31, save_r25_r31, return_r25_r31,
- save_r26_r31, return_r26_r31, save_r27_r31, return_r27_r31,
- save_r28_r31, return_r28_r31, save_r29_r31, return_r29_r31,
- save_r31, return_r31, save_interrupt, return_interrupt,
- save_all_interrupt, return_all_interrupt, L_save_r2_r31,
- L_return_interrupt, callt_return_interrupt, L_restore_all_interrupt,
- L_save_##START##_r31c, L_callt_save_r31c): Updated as per the
- new ABI requirements.
- (save_r6_r9, L_callt_save_r6_r9): Remove.
- * config/v850/predicates.md (even_reg_operand, disp23_operand,
- const_float_1_operand const_float_0_operand): New Predicates.
- (pattern_is_ok_for_prepare, pattern_is_ok_for_prologue,
- pattern_is_ok_for_epilogue): Update as per the ABI requirements.
- * config/v850/t-v850: Update multilibs for new target variants.
- (save_varargs, callt_save_varargs, callt_save_r6_r9): Remove.
- * config/v850/t-v850e: Likewise.
- * config/v850/v850.c (v850_issue_rate): New.
- (v850_strict_argument_naming): New.
- (function_arg): Modify to generate a different ABI.
- (print_operand): Update case 'z' to support float modes.
- (output_move_single): Modify to generate appropriate and better
- assembly.
- (v850_float_z_comparison_operator, v850_select_cc_mode,
- v850_float_nz_comparison_operator, v850_gen_float_compare,
- v850_gen_compare): New functions to support comparison of float values.
- (ep_memory_offset): Add support for V850E2 targets.
- (INTERRUPT_FIXED_NUM, INTERRUPT_ALL_SAVE_NUM): Update.
- (INTERRUPT_REGPARM_NUM): Remove.
- (compute_register_save_size): Add extra case to save/restore long call.
- (use_prolog_function): New function to support prologue.
- (expand_prologue): Add support for V850E2 targets and modified
- as per the current ABI requirements.
- (expand_epilogue): Likewise.
- (construct_restore_jr): Modify based on TARGET_LONG_CALLS.
- (construct_save_jarl): Likewise.
- (construct_dispose_instruction): Update as per the current ABI
- requirements.
- (construct_prepare_instruction): Likewise.
- * config/v850/v850.h (TARGET_CPU_DEFAULT): Add target predefines.
- (TARGET_CPU_v850e2, TARGET_CPU_v850e2v3): Define
- (CPP_SPEC): Updated to support v850e2 targets.
- (STRICT_ALIGNMENT): Modified.
- (FIRST_PSEUDO_REGISTER): Updated to add even registers.
- (FIXED_REGISTERS): Likewise.
- (CALL_USED_REGISTERS): Likewise.
- (CONDITIONAL_REGISTER_USAGE): Updated.
- (HARD_REGNO_MODE_OK): Updated.
- (reg_class): Updated to add even registers.
- (REG_CLASS_NAMES): Likewise.
- (REG_CLASS_CONTENTS): Likewise.
- (REGNO_REG_CLASS): Updated for CC registers.
- (REG_CLASS_FROM_LETTER): Added support for even registers.
- (REGNO_OK_FOR_BASE_P): Updated for CC registers.
- (STACK_POINTER_REGNUM, FRAME_POINTER_REGNUM, LINK_POINTER_REGNUM,
- ARG_POINTER_REGNUM): Updated.
- (FUNCTION_ARG_ADVANCE): Define.
- (REG_PARM_STACK_SPACE): Update as per the current ABI requirements.
- (OUTGOING_REG_PARM_STACK_SPACE): Remove.
- (EXTRA_CONSTRAINT): Add new constraint 'W' for 23-bit displacement.
- (GO_IF_LEGITIMATE_ADDRESS): Updated.
- (SELECT_CC_MODE): Define.
- (REGISTER_NAMES): Updated to add psw and fcc registers.
- (ADDITIONAL_REGISTER_NAMES): Updated.
- (ASM_OUTPUT_ADDR_DIFF_ELT): Updated to support new targets.
- (JUMP_TABLES_IN_TEXT_SECTION): Updated.
- * config/v850/v850.md (define_constants): Define new constants.
- (type): Update store,bit1,macc,div,fpu and single attributes.
- (cpu): New attribute.
- (cc): Add set_z attribute.
- (unsign23byte_load, sign23byte_load, unsign23hword_load,
- sign23hword_load, 23word_load, 23byte_store, 23hword_store,
- 23word_store): New instructions for 23-bit displacement load and store.
- (movqi_internal, movhi_internal): Update the attributes.
- (movsi, movsi_internal_v850e): Updated to support v850e2 targets.
- (movsi_internal_v850e, movsi_internal, movsf_internal): Update
- the attributes.
- (v850_tst1): Modified using CC_REGNUM.
- (tstsi): Remove.
- (cmpsi): Modified as define_expand from define_insn.
- (cmpsi_insn, cmpsf, cmpdf): New instructions.
- (addsi3, subsi3, negsi2, divmodsi4, udivmodsi4, divmodhi4,
- udivmodhi4, v850_clr1_1, v850_clr1_2, v850_clr1_3, andsi3,
- v850_set1_1, v850_set1_3, iorsi3, v850_not1_1, v850_not1_3, xorsi3,
- one_cmplsi2): Clobber the CC_REGNUM register.
- (v850_clr1_1, v850_clr1_2, v850_clr1_3, andsi3, v850_set1_1,
- v850_set1_2, v850_set1_3, iorsi3, v850_not1_1, v850_not1_2,
- v850_not1_3, xorsi3, one_cmplsi2): Update the attributes accordingly.
- (setf_insn, set_z_insn, set_nz_insn): New instructions for
- v850e2v3 target.
- (movsicc_normal_cc, movsicc_reversed_cc): New instructions.
- (movsicc, movsicc_normal, movsicc_reversed): Add support for V850E2
- targets.
- (sasf_1, sasf_2): Remove.
- (sasf): New instruction.
- (rotlhi3, rotlhi3_8, rotlsi3, rotlsi3_16): Update to support V850E2
- targets. CC_REGNUM register is clobbered and attributes are
- updated.
- (branch_z_normal, branch_z_invert, branch_nz_normal,
- branch_nz_invert): New branch related instructions.
- (jump): Updated the attributes.
- (switch): Update to support new targets. CC_REGNUM register is
- clobbered and attributes are updated.
- (call_internal_short, call_internal_long, call_value_internal_short,
- call_value_internal_long): Updated the attributes.
- (zero_extendhisi2, zero_extendqisi2): CC_REGNUM register is
- clobbered and attributes are updated.
- (extendhisi_insn, extendhisi2, extendqisi_insn, extendqisi2):
- Update to support new targets. CC_REGNUM register is clobbered.
- (ashlsi3_v850e2, lshrsi3_v850e2, ashrsi3_v850e2): New shift
- instructions.
- (lshrsi3, ashrsi3): CC_REGNUM register is clobbered and attributes
- are updated.
- (ffssi2, addsf3, adddf3, subsf3, subdf3, mulsf3, muldf3, divsf3,
- divdf3, minsf3, mindf3, maxsf3, maxdf3, abssf2, absdf2, negsf2,
- negdf2, sqrtsf2, sqrtdf2, truncsfsi2, truncdfsi2, floatsisf2,
- floatsidf2, extendsfdf2, extenddfsf2, recipsf2, recipdf2,
- rsqrtsf2, rsqrtdf2, maddsf4, msubsf4, nmaddsf4, nmsubsf4,
- cmpsf_le_insn, cmpsf_lt_insn, cmpsf_ge_insn, cmpsf_gt_insn,
- cmpsf_eq_insn, cmpsf_ne_insn, cmpdf_le_insn, cmpdf_lt_insn,
- cmpdf_ge_insn, cmpdf_gt_insn, cmpdf_eq_insn, cmpdf_ne_insn, trfsr,
- movsfcc, movdfcc, movsfcc_z_insn, movsfcc_nz_insn, movdfcc_z_insn,
- movdfcc_nz_insn, movedfcc_z_zero, movedfcc_nz_zero): New floating
- point instructions defined for V850e2v3 target.
- (callt_save_interrupt, callt_return_interrupt, return_interrupt):
- Add support for V850E2 targets and CC_REGNUM register is clobbered.
- (callt_save_all_interrupt, callt_restore_all_interrupt): Add
- support for new targets.
- * config/v850/v850-modes.def: New file.
- * config/v850/v850.opt(mstrict-align): Remove.
- (mno-strict-align, mjump-tables-in-data-section, mv850e2,
- mv850e2v3): New command line options for V850.
- * config.gcc: Update the newly added files.
- * doc/invoke.texi: Update the newly added command line options for
- V850 target.
-
-2010-07-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45052
- * ipa-pure-const.c (check_stmt): Check volatileness.
-
-2010-07-25 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/44707
- * config/sparc/sparc-protos.h (sparc_legitimize_reload_address): New.
- * config/sparc/sparc.c: Include reload.h.
- (legitimize_tls_address): Rename into...
- (sparc_legitimize_tls_address): ...this.
- (legitimize_pic_address): Rename into...
- (sparc_legitimize_pic_address): ...this.
- (sparc_expand_move): Adjust to above renaming.
- (sparc_tls_referenced_p): Likewise.
- (sparc_legitimize_tls_address): Likewise.
- (sparc_legitimize_pic_address): Likewise.
- (sparc_legitimize_address): Likewise.
- (sparc_output_mi_thunk): Likewise.
- (sparc_legitimize_reload_address): New global function. Recognize
- (lo_sum (high ...) ...) patterns generated by earlier passes.
- * config/sparc/sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Use above function.
-
-2010-07-25 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/44484
- * config/sparc/predicates.md (memory_reg_operand): Delete.
- * config/sparc/sync.md (sync_compare_and_swap): Minor tweaks.
- (*sync_compare_and_swap): Encode the address form in the pattern.
- (*sync_compare_and_swapdi_v8plus): Likewise.
-
-2010-07-24 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/install.texi (Specific, *-*-freebsd*): Adjust to recent changes.
- Streamline paragraph on compatibility with the system compiler.
-
-2010-07-24 Steven Bosscher <steven@gcc.gnu.org>
-
- PR middle-end/45035
- * alias.c (true_dependence_1): Fix thinko in merge of old
- true_dependence and canon_true_dependence.
-
-2010-07-23 Jan Hubicka <jh@suse.cz>
-
- * lto-streamer-out.c (write_symbol): Fix visibilities of external
- references.
-
-2010-07-23 Le-Chun Wu <lcwu@google.com>
-
- * omega.c (omega_eliminate_redundant): Remove a self-assign statement.
- * tree-ssa-ccp.c (ccp_lattice_meet): Remove a self-assign statement
- and an unnecessary assignment.
- * dbxout.c (DEBUGGER_ARG_OFFSET): Change OFFSET to OFFSET+0 to avoid
- self-assign warning.
- * config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Remove
- unnecessary self-init.
-
-2010-07-23 Richard Guenther <rguenther@suse.de>
-
- PR lto/43071
- * gcc.c (LINK_COMMAND_SPEC): Filter out -fcompare-debug
- for -flto and -fwhopr.
-
-2010-07-23 Kai Tietz <kai.tietz@onevision.com>
-
- PR target/41943
- * Makefile.in (USER_H_INC_NEXT_PRE, USER_H_INC_NEXT_POST): New.
- (stmp-int-hdrs): Prefix/postfix headers by include_next.
- * config.gcc (user_headers_inc_next_pre): New.
- (user_headers_inc_next_post): Likewise.
- (*-w64-mingw*): Use for float.h post-fixing, and for
- stddef.h/stdarg.h pre-fixing by include_next.
- * configure.ac (user_headers_inc_next_post): New.
- (user_headers_inc_next_pre): New.
- * configure: Regenerated.
-
-2010-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac: Don't disable TLS on Solaris 8/9 by default
- Set tga_func for Solaris 2/x86 resp. SPARC.
- Remove duplicate parts of sparc*-sun-solaris2.* TLS check.
- (LIB_THREAD_LDFLAGS_SPEC): Define.
- (LIB_TLS_SPEC): Define. Check for required Sun ld version.
- * configure: Regenerate.
- * config.in: Regenerate.
- * config/sol2.h (LIB_SPEC): Use LIB_THREAD_LDFLAGS_SPEC with
- -pthread, -threads, LIB_TLS_SPEC with -pthread.
- * doc/install.texi (Specific, *-*-solaris2*): Document use of
- alternate thread libraries on Solaris 8.
- Document TLS patch requirements.
- * doc/sourcebuild.texi (Add Options): Sort alphabetically.
- Document tls.
-
- PR target/18788
- * config/sol2.h (LIB_SPEC): Link with thread libraries even with
- -shared.
-
-2010-07-23 Jakub Jelinek <jakub@redhat.com>
-
- * tree.h (struct tree_base): Add nameless_flag bitfield.
- (TYPE_NAMELESS, DECL_NAMELESS): Define.
- * omp-low.c (create_omp_child_function, scan_omp_parallel,
- scan_omp_task, lower_omp_taskreg): Set DECL_NAMELESS and/or
- DECL_ARTIFICIAL where needed.
- * dwarf2out.c (dwarf2_name): Return NULL if DECL_NAMELESS.
- (type_tag): Return NULL if TYPE_NAMELESS or if TYPE_DECL
- has DECL_NAMELESS set.
-
-2010-07-23 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/44915
- * ipa-cp.c (cgraph_gate_cp): Also check that optimize is true.
- * ipa-inline.c (cgraph_mark_inline_edge): Likewise.
- (analyze_function): Likewise.
-
-2010-07-23 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/44914
- * tree-sra.c (sra_modify_function_body): Return true if CFG was
- changed, add purging dead eh edges.
- (ipa_sra_modify_function_body): Return true if CFG was changed,
- simplify purging dead eh edges.
- (modify_function): Return true if CFG was changed.
- (perform_intra_sra): Add TODO_cleanup_cfg to the return value if CFG
- was changed.
- (ipa_early_sra): Likewise.
-
-2010-07-23 Jie Zhang <jie@codesourcery.com>
-
- PR target/44290
- * attribs.c (decl_attributes): Insert "noinline" and "noclone"
- if "naked".
- * tree-sra.c (ipa_sra_preliminary_function_checks): Return
- false if ! tree_versionable_function_p.
-
-2010-07-23 Nathan Froyd <froydnj@codesourcery.com>
-
- * builtins.def (BUILT_IN_ARGS_INFO): Remove.
- * ipa-pure-const.c (special_builtlin_state): Remove
- BUILT_IN_ARGS_INFO case.
- * tree-stdarg.c (execute_optimize_stdarg): Likewise.
- * builtins.c (expand_builtin): Likewise.
- (expand_builtin_args_info): Remove.
- * doc/tm.texi (__builtin_args_info): Remove.
- (__builtin_next_arg): Adjust to not refer to __builtin_args_info.
- * doc/tm.text.in: Likewise.
-
-2010-07-23 Richard Guenther <rguenther@suse.de>
-
- * lto-symtab.c (lto_symtab_merge): Use gtc_mode enum values.
- (lto_symtab_merge_decls_2): Likewise.
- * tree-ssa.c (useless_type_conversion_p): Likewise.
- * lto-streamer-in.c (input_gimple_stmt): Likewise.
- * gimple.c (gtc_visited2, gtc_ob2): Remove.
- (struct type_pair_d): Make same_p an array indexed by mode.
- Update comment.
- (lookup_type_pair): Update initialization.
- (struct sccs): Adjust same_p type.
- (gimple_types_compatible_p_1, gtc_visit, gimple_types_compatible_p):
- Adjust.
- (print_gimple_types_stats): Likewise.
- * gimple.h (enum gtc_mode): New.
- (gimple_types_compatible_p): Adjust prototype.
-
-2010-07-23 Daniel Jacobowitz <dan@codesourcery.com>
-
- * dwarf2out.c (dwarf2out_frame_debug): Check for queued saves
- again after processing insn.
-
-2010-07-23 Jie Zhang <jie@codesourcery.com>
-
- * tree-sra.c (ipa_sra_preliminary_function_checks): Dump
- proper words when !tree_versionable_function_p.
-
-2010-07-23 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45037
- * tree-ssa-loop-ivopts.c (copy_ref_info): Handle NULL base.
-
-2010-07-23 Jie Zhang <jie@codesourcery.com>
-
- * doc/extend.texi: Remove IP2K from the description of naked attribute.
- Add MCORE instead.
-
-2010-07-10 Andi Kleen <ak@linux.intel.com>
-
- PR lto/44992
- * lto-opts.c (lto_write_options): Add NULL file_data argument to
- lto_get_section_name.
- * lto-section-out.c (lto_destroy_simple_output_block): Likewise.
- * lto-streamer-out.c (produce_asm): Likewise.
- (copy_function): Likewise.
- (produce_symtab): Likewise.
- (produce_asm_for_decls): Likewise.
- * lto-streamer.c (lto_get_section_name): Add file_data argument.
- Rewrite to add random postfix to LTO sections.
- * lto-streamer.h (lto_file_decl_data): Add next, id, resolutions.
- (lto_get_section_name): Add file_data argument to prototype.
-
-2010-07-10 Andi Kleen <ak@linux.intel.com>
-
- * lto-section-in.c (lto_section_name): Synchronize names
- with lto_get_section_name.
-
-2010-07-10 Andi Kleen <ak@linux.intel.com>
-
- * lto-opts.c (lto_read_file_options): Check for missing section.
-
-2010-07-22 Bernd Schmidt <bernds@codesourcery.com>
-
- * ira.c (check_allocation): Correctly handle the case where an allocno
- with two objects was allocated to a single reg.
-
-2010-07-22 Richard Sandiford <rdsandiford@googlemail.com>
-
- * tree-ssa-math-opts.c (is_widening_mult_rhs_p): New function.
- (is_widening_mult_p): Likewise.
- (convert_to_widen): Use them.
- (convert_plusminus_to_widen): Likewise. Handle fixed-point types as
- well as integer ones.
-
-2010-07-22 Steven Bosscher <steven@gcc.gnu.org>
-
- * alias.c (true_dependence_1): New function, merged version of
- true_dependence and canon_true_dependence.
- (true_dependence): Simplify.
- (canon_true_dependence): Simplify.
-
-2010-07-22 Richard Henderson <rth@redhat.com>
-
- PR target/45027
- * config/i386/i386.c (setup_incoming_varargs_64): Force the use
- of V4SFmode for the SSE saves; increase stack alignment if needed.
- (ix86_gimplify_va_arg): Don't increase stack alignment here.
-
-2010-07-22 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/45028
- * recgprop.c (copyprop_hardreg_forward_1): If changed is true,
- call cprop_find_used_regs again via note_uses.
-
-2010-07-22 Eric Botcazou <ebotcazou@adacore.com>
-
- * alias.c (get_alias_set): Fix formatting issues.
-
-2010-07-22 Steve Ellcey <sje@cup.hp.com>
-
- PR middle-end/44878
- * stmt.c (expand_value_return): Call promote_function_mode with
- a for_return argument of 2 when returning by reference.
-
-2010-07-22 Dodji Seketeli <dodji@redhat.com>
-
- PR debug/45024
- * dwarf2out.c (scope_die_for): Don't fall back to the compilation
- unit DIE if we can find the scope DIE.
-
-2010-07-22 Bernd Schmidt <bernds@codesourcery.com>
-
- * ira-build.c (ira_create_object): New arg SUBWORD; all callers
- changed. Initialize OBJECT_SUBWORD.
- (ira_create_allocno): Clear ALLOCNO_NUM_OBJECTS.
- (ira_create_allocno_objects): Renamed from ira_create_allocno_object;
- all callers changed.
- (merge_hard_reg_conflicts): Iterate over allocno subobjects.
- (finish_allocno): Likewise.
- (move_allocno_live_ranges, copy_allocno_live_ranges): Likewise.
- (remove_low_level_allocnos): Likewise.
- (update_bad_spill_attribute): Likewise.
- (setup_min_max_allocno_live_range_point): Likewise.
- (sort_conflict_id_map): Likewise.
- (ira_flattening): Likewise. Use ior_hard_reg_conflicts.
- (ior_hard_reg_conflicts): New function.
- (ior_allocate_object_conflicts): Renamed first argument to OBJ.
- (compress_conflict_vecs): Iterate over objects, not allocnos.
- (ira_add_live_range_to_object): New function.
- (object_range_compare_func): Renamed from allocno_range_compare_func.
- All callers changed.
- (setup_min_max_conflict_allocno_ids): For allocnos with multiple
- subobjects, widen the min/max range of the lowest-order object to
- potentially include all other such low-order objects.
- * ira.c (ira_bad_reload_regno_1): Iterate over allocno subobjects.
- (check_allocation): Likewise. Use more fine-grained tests for register
- conflicts.
- * ira-color.c (allocnos_have_intersected_live_ranges_p): Iterate over
- allocno subobjects.
- (assign_hard_reg): Keep multiple sets of conflicts. Make finer-grained
- choices about which bits to set in each set. Don't use
- ira_hard_reg_not_in_set_p, perform a more elaborate test for conflicts
- using the multiple sets we computed.
- (push_allocno_to_stack): Iterate over allocno subobjects.
- (all_conflicting_hard_regs_coalesced): New static function.
- (setup_allocno_available_regs_num): Use it.
- (setup_allocno_left_conflicts_size): Likewise. Iterate over allocno
- subobjects.
- (coalesced_allocno_conflict): Test subobject 0 in each allocno.
- (setup_allocno_priorities): Divide ALLOCNO_EXCESS_PRESSURE_POINTS_NUM
- by ALLOCNO_NUM_OBJECTS.
- (calculate_spill_cost): Likewise.
- (color_pass): Express if statement in a more normal way.
- (ira_reassign_conflict_allocnos): Iterate over allocno subobjects.
- (slot_coalesced_allocno_live_ranges_intersect_p): Likewise.
- (setup_slot_coalesced_allocno_live_ranges): Likewise.
- (allocno_reload_assign): Likewise.
- (ira_reassign_pseudos): Likewise.
- (fast_allocation): Likewise.
- * ira-conflicts.c (build_conflict_bit_table): Likewise.
- (print_allocno_conflicts): Likewise.
- (ira_build_conflicts): Likewise.
- (allocnos_conflict_for_copy_p): Renamed from allocnos_conflict_p. All
- callers changed. Test subword 0 of each allocno for conflicts.
- (build_object_conflicts): Renamed from build_allocno_conflicts. All
- callers changed. Iterate over allocno subobjects.
- * ira-emit.c (modify_move_list): Iterate over allocno subobjects.
- * ira-int.h (struct ira_allocno): New member: num_objects.
- Rename object to objects and change it into an array.
- (ALLOCNO_OBJECT): Add new argument N.
- (ALLOCNO_NUM_OBJECTS, OBJECT_SUBWORD): New macros.
- (ira_create_allocno_objects): Renamed from ira_create_allocno_object.
- (ior_hard_reg_conflicts): Declare.
- (ira_add_live_range_to_object): Declare.
- (ira_allocno_object_iterator): New.
- (ira_allocno_object_iter_init, ira_allocno_object_iter_cond): New.
- (FOR_EACH_ALLOCNO_OBJECT): New macro.
- * ira-lives.c (objects_live): Renamed from allocnos_live; all
- uses changed.
- (allocnos_processed): New sparseset.
- (make_object_born): Renamed from make_allocno_born; take an
- ira_object_t argument. All callers changed.
- (make_object_dead): Renamed from make_allocno_dead; take an
- ira_object_t argument. All callers changed.
- (update_allocno_pressure_excess_length): Take an ira_obejct_t argument.
- All callers changed.
- (mark_pseudo_regno_live): Iterate over allocno subobjects.
- (mark_pseudo_regno_dead): Likewise.
- (mark_pseudo_regno_subword_live, mark_pseudo_regno_subword_dead): New
- functions.
- (mark_ref_live): Detect subword accesses and call
- mark_pseudo_regno_subword_live as appropriate.
- (mark_ref_dead): Likewise for mark_pseudo_regno_subword_dead.
- (process_bb_nodes_live): Deal with object-related updates first; set
- and test bits in allocnos_processed to avoid computing allocno
- statistics more than once.
- (create_start_finish_chains): Iterate over objects, not allocnos.
- (print_object_live_ranges): New function.
- (print_allocno_live_ranges): Use it.
- (ira_create_allocno_live_ranges): Allocate and free allocnos_processed
- and objects_live.
-
-2010-07-22 Richard Guenther <rguenther@suse.de>
-
- PR lto/42451
- * gimple.c (gtc_next_dfs_num): New global.
- (struct sccs): Make value a union, add integer same_p member.
- (gtc_visit): New function.
- (gimple_types_compatible_p_1): New function, split out from ...
- (gimple_types_compatible_p): ... here. Start a DFS walk here.
- (iterative_hash_gimple_type): Adjust for sccs change.
-
-2010-07-22 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/44891
- * tree-sra.c: Include gimple-pretty-print.h.
- (replace_uses_with_default_def_ssa_name): Renamed to
- get_repl_default_def_ssa_name, return the new SSA name instead of
- replacing the old one.
- (sra_modify_assign): Dump a message when removing a load, if the LHS
- is an SSA_NAME, do not do any propagation, just set the RHS to a
- default definition SSA NAME, type convert if necessary.
- * Makefile.in (tree-sra.o): Add gimple-pretty-print.h to dependencies.
-
-2010-07-22 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/45017
- * tree-ssa-sccvn.c (vn_reference_eq): Make sure we honor
- TYPE_PRECISION of integral types in addition to size.
-
-2010-07-22 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * config/rs6000/sysv4.h (CHOOSE_DYNAMIC_LINKER): Default to GLIBC
- when no C library is specified.
-
-2010-07-22 Martin Jambor <mjambor@suse.cz>
-
- * ipa-prop.h (struct ipa_node_params): Updated comment.
- (struct ipa_edge_args): Likewise.
- * Makefile.in (ipa-prop.o): Remove bogus $(GIMPLE_FOLD_H) dependency.
-
-2010-07-22 Martin Jambor <mjambor@suse.cz>
-
- * cgraphunit.c (verify_edge_count_and_frequency): New function.
- (verify_cgraph_node): Verify frequencies of indirect edges.
- * tree-inline.c (tree_function_versioning): Update frequencies of
- indirect edges.
-
-2010-07-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- PR target/43698
- * config/arm/arm.md: Split arm_rev into *arm_rev and *thumb1_rev.
- Set *arm_rev to be predicable.
-
-2010-07-22 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.h (LINK_COMMAND_SPEC): Split into...
- (LINK_COMMAND_SPEC_A): New.
- (DSYMUTIL): New.
- (DSYMUTIL_SPEC): New.
- * config/darwin9.h (LINK_COMMAND_SPEC): Remove.
- (DSYMUTIL_SPEC): Update for darwin >= 9 requirements.
-
-2010-07-22 Iain Sandoe <iains@gcc.gnu.org>
-
- * calls.c (load_register_parameters): Move check for zero
- sized items so that only the call to
- mem_overlaps_already_clobbered_arg_p () is protected.
-
-2010-07-22 Jan Hubicka <jh@suse.cz>
-
- * ipa-pure-const.c (varying_state): Break out from ...
- (get_function_state): ... here; always return varying_state
- when state would be NULL otherwise.
- (remove_node_data): Do not free varying state.
-
-2010-07-22 Bernd Schmidt <bernds@codesourcery.com>
-
- PR bootstrap/44970
- PR middle-end/45009
- * postreload.c: Include "target.h".
- (reload_combine_closest_single_use): Don't take DEBUG_INSNs
- into account.
- (fixup_debug_insns): Don't copy the rtx.
- (reload_combine_recognize_const_pattern): DEBUG_INSNs can't have uses.
- Don't copy when replacing. Call fixup_debug_insns in the case where
- we merged one add with another.
- (reload_combine_recognize_pattern): Fail if there aren't any uses.
- Try harder to determine whether we're picking a valid index register.
- Don't set store_ruid for an insn we're going to scan in the
- next iteration.
- (reload_combine): Remove unused code.
- (reload_combine_note_use): When updating use information for
- an old insn, ignore a use that occurs after store_ruid.
- * Makefile.in (postreload.o): Update dependencies.
-
- * function.c (record_hard_reg_sets): Restrict the previous change
- to cases where the incoming nominal mode is the same as the
- incoming promoted mode and everything happens in MODE_INT.
-
-2010-07-21 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45015
- * var-tracking.c (adjust_mems): Ignore ASM_OPERANDS with non-zero
- ASM_OPERANDS_OUTPUT_IDX.
- (adjust_insn): For inline asm with multiple sets ensure first
- ASM_OPERANDS vectors are used by all following ASM_OPERANDS in
- the insn.
-
-2010-07-21 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (setup_incoming_varargs_64): Emit a simple
- comparison for avoiding xmm register saves. Emit the xmm register
- saves explicitly.
- * config/i386/i386.md (UNSPEC_SSE_PROLOGUE_SAVE): Remove.
- (UNSPEC_SSE_PROLOGUE_SAVE_LOW): Remove.
- (sse_prologue_save, sse_prologue_save_insn1, sse_prologue_save_insn):
- Remove patterns and the associated splitters.
-
-2010-07-21 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (analyze_ref): Strip off the real
- and imagine parts of a complex, so that they can have the same
- base and fall into the same group.
-
-2010-07-21 Richard Guenther <rguenther@suse.de>
-
- PR lto/45018
- * tree.c (find_decls_types_r): Do not follow TREE_CHAIN
- of TYPE_DECLs. Do not follow TYPE_NEXT_VARIANT,
- TYPE_NEXT_PTR_TO, nor TYPE_NEXT_REF_TO or TYPE_CANONICAL.
-
-2010-07-21 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/44900
- * tree-sra.c (load_assign_lhs_subreplacements): Updated comments.
- (sra_modify_assign): Move gsi to the next statmenent unconditionally.
-
-2010-07-21 Bernd Schmidt <bernds@codesourcery.com>
-
- PR middle-end/44738
- * tree-ssa.c (warn_uninit): Avoid emitting an unnecessary message.
-
-2010-07-21 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/45013
- * tree-ssa.c (useless_type_conversion_p): Dispatch to
- gimple_types_compatible_p only when in lto.
- * gimple.c (gimple_types_compatible_p): Use canonical types
- to speed up comparison.
-
-2010-07-21 Richard Guenther <rguenther@suse.de>
-
- * tree-flow.h (referenced_var): Move define ...
- * tree-flow-inline.h (referenced_var): ... here as an inline
- function. Assert here ...
- * tree-dfa.c (referenced_var_lookup): ... instead of here.
- * tree-ssa.c (maybe_optimize_var): Check if the variable
- is in referenced vars.
- (execute_update_addresses_taken): Remove old broken check.
- * gimple-pretty-print.c (pp_points_to_solution): Use
- referenced_var_lookup.
- * tree-into-ssa.c (dump_decl_set): Likewise.
-
-2010-07-21 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45003
- * var-tracking.c (reverse_op): Also handle {SIGN,ZERO}_EXTEND of a MEM.
- * dwarf2out.c (loc_descriptor): Don't handle SIGN_EXTEND nor
- ZERO_EXTEND here.
-
-2010-07-20 Richard Henderson <rth@redhat.com>
-
- * vxworks.c (vxworks_emutls_var_fields): Pass locus to build_decls.
-
-2010-07-20 Bernd Schmidt <bernds@codesourcery.com>
-
- * config/arm/arm.md (thumb1_addsi3): Add alternative and split for
- computing the sum of the stack pointer and a large constant.
- * config/arm/constraints.md (M): Remove superfluous parentheses.
- (Pc): New constraint.
-
-2010-07-20 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/45006
- * cfgexpand.c (expand_debug_expr): Only look at TYPE_UNSIGNED of
- operand's type if exp is tcc_unary class tree.
-
-2010-07-20 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/rs6000/rs6000.md (abs<mode>2_isel, nabs<mode>2_isel):
- Reverse sense of if_then_else condition.
-
-2010-07-20 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/rs6000/rs6000.opt (mblock-move-inline-limit): New option.
- * config/rs6000/rs6000.c (rs6000_override_options): Set
- rs6000_block_move_inline_limit appropriately.
- (expand_block_move): Use rs6000_block_move_inline_limit.
- * doc/invoke.texi (mblock-move-inline-limit): Document.
-
-2010-07-20 Bernd Schmidt <bernds@codesourcery.com>
-
- * postreload.c (fixup_debug_insns): Remove arg REGNO. New args
- FROM and TO. All callers changed. Don't look for tracked uses,
- just scan the RTL for DEBUG_INSNs and substitute.
- (reload_combine_recognize_pattern): Call fixup_debug_insns.
- (reload_combine): Ignore DEBUG_INSNs.
-
-2010-07-20 Jakub Jelinek <jakub@redhat.com>
-
- * var-tracking.c (vt_expand_loc, vt_expand_loc_dummy): Bump maximum
- depth to 8 from 5.
-
- PR debug/45003
- * cfgexpand.c (expand_debug_expr) <case NOP_EXPR>: Use ZERO_EXTEND
- or SIGN_EXTEND depending on TYPE_UNSIGNED of the operand's type
- instead of the result's type.
-
-2010-07-20 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44977
- * tree-ssa-dom.c (propagate_rhs_into_lhs): Do not create invalid
- SSA form.
-
-2010-07-20 Richard Guenther <rguenther@suse.de>
-
- * lto-symtab.c (lto_symtab_merge): Use gimple_types_compatible_p.
- (lto_symtab_merge_decls_2): Likewise.
- * gimple.h (gimple_types_compatible_p): Declare.
- * gimple.c (gimple_queue_type_fixup): Remove.
- (gimple_fixup_complete_and_incomplete_subtype_p): Likewise.
- (gimple_compatible_complete_and_incomplete_type_p): New function.
- (gimple_types_compatible_p): Adjust.
- (gimple_register_type): Remove type fixup code.
- (print_gimple_types_stats): Adjust.
- (free_gimple_type_tables): Likewise.
- * lto-streamer-in.c (input_gimple_stmt): Use gimple_types_compatible_p.
- * tree-ssa.c (useless_type_conversion_p): Likewise.
-
-2010-07-20 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44971
- PR middle-end/44988
- * tree-ssa.c (maybe_optimize_var): New function split out from ...
- (execute_update_addresses_taken): ... here.
- (non_rewritable_mem_ref_base): Likewise.
- (execute_update_addresses_taken): Do not iterate over all referenced
- vars but just all local decls and parms.
- Properly check call and asm arguments and rewrite call arguments.
-
-2010-07-20 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * config.gcc (LIBC_GLIBC, LIBC_UCLIBC, LIBC_BIONIC): Move constants
- to top level.
- * config/linux.h (LINUX_TARGET_OS_CPP_BUILTINS): Move Android-specific
- definitions ...
- * config/linux-android.h (ANDROID_TARGET_OS_CPP_BUILTINS): ... here.
- New macro.
- * config/arm/linux-eabi.h (TARGET_OS_CPP_BUILTINS): Use it.
-
-2010-07-19 Richard Sandiford <rdsandiford@googlemail.com>
-
- * gengtype.c (start_root_entry): New function, split out from
- write_root. Check whether V is null and raise an error if so.
- (write_field_root): Check for V being null. Don't raise an error here;
- set V to null instead.
- (write_root): Update comment above function. Use start_root_entry.
-
-2010-07-19 Xinliang David Li <davidxl@google.com>
-
- PR testsuite/44932
- * tree-ssa-uninit.c (collect_phi_def_edges): Fix bug collecting
- def edges.
- (find_uninit_use): Add dump.
- (is_use_properly_guarded): Ditto.
- (warn_uninitialized_phi): Ditto.
- (execute_late_warn_uninitialized): Ditto.
-
-2010-07-19 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44941
- * expr.c (emit_block_move_hints): Move zero size check first.
- Move asserts to more useful places.
- * calls.c (load_register_parameters): Check for zero size.
-
-2010-07-19 Richard Henderson <rth@redhat.com>
-
- * tree-optimize.c (execute_all_early_local_passes): New. Change
- cgraph_state here ...
- (execute_early_local_optimizations): ... not here. Remove.
- (pass_early_local_passes, pass_all_early_optimizations): Update.
-
-2010-07-19 Bernd Schmidt <bernds@codesourcery.com>
-
- * postreload.c (reload_combine_closest_single_use): Ignore the
- number of uses for DEBUG_INSNs.
- (fixup_debug_insns): New static function.
- (reload_combine_recognize_const_pattern): Use it. Don't let the
- main loop be affected by DEBUG_INSNs.
- Really disallow moving adds past a jump insn.
- (reload_combine_recognize_pattern): Don't update use_ruid here.
- (reload_combine_note_use): Do it here.
- (reload_combine): Use control_flow_insn_p rather than JUMP_P.
-
-2010-07-19 Bingfeng Mei <bmei@broadcom.com>
-
- * ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes
- of a loop.
- * loop-doloop.c (doloop_condition_get): Skip possible debug_insn.
-
-2010-07-19 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/i386/darwin.h: Define darwin_emit_branch_islands.
- (TARGET_MACHO_BRANCH_ISLANDS): New.
- (FUNCTION_PROFILER): Use TARGET_MACHO_BRANCH_ISLANDS.
- * config/i386/i386.h (TARGET_MACHO_BRANCH_ISLANDS): Define a
- default value.
- * config/i386/i386.c (output_pic_addr_const): Do not emit
- branch islands unless TARGET_MACHO_BRANCH_ISLANDS is set.
- (x86_output_mi_thunk): Adjust symbol creation.
- * config/rs6000/darwin.h: Define darwin_emit_branch_islands.
- Remove out of date comment.
- * config/rs6000/rs6000.c (print_operand): Adjust symbol.
- (DARWIN_LINKER_GENERATES_ISLANDS): Remove.
- (DARWIN_GENERATE_ISLANDS): Ditto.
- (output_call): Do not emit branch islands unless
- darwin_emit_branch_islands is set.
- * config/darwin.c: Declare darwin_emit_branch_islands.
- (machopic_indirect_data_reference): Do not emit unless
- darwin_emit_branch_islands is set.
- (darwin_override_options): Set darwin_emit_branch_islands
- where it is needed.
- * config/darwin9.h (DARWIN_LINKER_GENERATES_ISLANDS): Remove.
-
-2010-07-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/sourcebuild.texi (Effective-Target Keywords): Document
- sse_runtime, sse2_runtime.
-
-2010-07-18 Richard Sandiford <rdsandiford@googlemail.com>
-
- * config/mips/mips.c (mips16_build_call_stub): Zero-extend the
- low half of a single-register SCmode return value before ORing
- it with the high half.
- * config/mips/mips16.S (MERGE_GPRf): Likewise.
-
-2010-07-17 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/44805
- * config/pa/pa.h (CONSTANT_ALIGNMENT): Align strings to BITS_PER_WORD
- on all targets.
-
-2010-07-17 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/42235
- * postreload.c (reload_cse_move2add): Return bool, true if anything.
- changed. All callers changed.
- (move2add_use_add2_insn): Likewise.
- (move2add_use_add3_insn): Likewise.
- (reload_cse_regs): If reload_cse_move2add changed anything, rerun
- reload_combine.
- (RELOAD_COMBINE_MAX_USES): Bump to 16.
- (last_jump_ruid): New static variable.
- (struct reg_use): New members CONTAINING_MEM and RUID.
- (reg_state): New members ALL_OFFSETS_MATCH and REAL_STORE_RUID.
- (reload_combine_split_one_ruid, reload_combine_split_ruids,
- reload_combine_purge_insn_uses, reload_combine_closest_single_use
- reload_combine_purge_reg_uses_after_ruid,
- reload_combine_recognize_const_pattern): New static functions.
- (reload_combine_recognize_pattern): Verify that ALL_OFFSETS_MATCH
- is true for our reg and that we have available index regs.
- (reload_combine_note_use): New args RUID and CONTAINING_MEM. All
- callers changed. Use them to initialize fields in struct reg_use.
- (reload_combine): Initialize last_jump_ruid. Be careful when to
- take PREV_INSN of the scanned insn. Update REAL_STORE_RUID fields.
- Call reload_combine_recognize_const_pattern.
- (reload_combine_note_store): Update REAL_STORE_RUID field.
-
-2010-07-16 Jason Merrill <jason@redhat.com>
-
- * Makefile.in (opts-common.o): Depend on options.h.
-
-2010-07-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.c (build_common_builtin_nodes): Use build_function_type_list
- instead of build_function_type.
- * tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Likewise.
- * cgraphunit.c (cgraph_build_static_cdtor): Likewise.
-
-2010-07-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_sISEL): Let rs6000_emit_int_cmove
- do all the work.
- (rs6000_emit_int_cmove): Use function pointers for insn generation.
- Don't force values into registers unnecessarily.
- (output_isel): Assert that we're not given conditions we can't handle.
- Delete corresponding code.
- * config/rs6000/rs6000.md (isel_signed_<mode>): Use
- scc_comparison_operator constraint. Permit 0 for the consequent
- operand. Permit any GPR for the alternative operand.
- (isel_unsigned_<mode>): Likewise.
-
-2010-07-16 Jakub Jelinek <jakub@redhat.com>
-
- PR target/44942
- * config/i386/i386-protos.h (ix86_function_arg_boundary): Change second
- argument to const_tree.
- * config/i386/i386.c (function_arg_advance): If padding needs to be
- inserted before argument, increment cum->words by number of padding
- words as well.
- (contains_aligned_value_p): Change argument to const_tree.
- (ix86_function_arg_boundary): Change second argument to const_tree.
-
-2010-07-16 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/42235
- * function.c (record_hard_reg_sets): New static function.
- (assign_parm_setup_reg): If an optab for extending exists and the
- generated code clobbbers no hard regs, emit the insn directly and
- create a REG_EQUIV note.
-
-2010-07-15 Nathan Froyd <froydnj@codesourcery.com>
-
- * c-decl.c (detect_field_duplicates): Use DECL_CHAIN insted of
- TREE_CHAIN.
- * c-typeck.c (push_init_level): Likewise.
- (process_init_element): Likewise.
-
-2010-07-15 Anatoly Sokolov <aesok@post.ru>
-
- * tree.h (enum tree_index): Add TI_INTEGER_THREE.
- (integer_three_node): Add.
- * tree.c (build_common_tree_nodes_2): Use integer_type_node insead of
- NULL_TREE in build_int_cst calls. Initialize the integer_three_node.
- * builtins.c (expand_builtin_prefetch): Use common tree nodes instead
- of call build_int_cst.
- * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Ditto.
- * tree-ssa-loop-ivopts.c (idx_find_step): Ditto.
- (find_interesting_uses_address): Ditto.
- * tree-ssa-alias.c (ao_ref_init_from_ptr_and_size): Ditto.
- * tree-eh.c (lower_eh_constructs_2): Ditto.
- * tree-vect-loop.c (get_initial_def_for_induction): Ditto.
- * c-typeck.c (really_start_incremental_init, push_init_level): Ditto.
- * expmed.c (expand_divmod): Ditto.
- * tree-mudflap.c (mx_register_decls): Ditto.
- * varasm.c (array_size_for_constructor): Ditto.
- * tree-ssa-loop-prefetch.c (issue_prefetch_ref): Ditto.
- * c-parser.c (c_parser_postfix_expression): Ditto.
-
-2010-07-15 Bernd Schmidt <bernds@codesourcery.com>
-
- * postreload.c (last_label_ruid, first_index_reg, last_index_reg):
- New static variables.
- (reload_combine_recognize_pattern): New static function, broken out
- of reload_combine.
- (reload_combine): Use it. Only initialize first_index_reg and
- last_index_reg once.
-
-2010-07-15 Richard Henderson <rth@redhat.com>
-
- * cgraphunit.c (cgraph_build_static_cdtor): Clear current_function_decl
- when done.
-
-2010-07-15 Jan Hubicka <jh@suse.cz>
-
- * lto-symtab.c (lto_symtab_resolve_symbols): Remove hack handling
- comdats for broken gold.
- (lto_sy mtab_merge_decls_1): Set used_from_object_file correctly.
-
-2010-07-15 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (TREE_RTL_OPERAND_CHECK): Delete.
-
-2010-07-15 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (DECL_CHAIN): Define.
- * alias.c: Carefully replace TREE_CHAIN with DECL_CHAIN.
- * c-decl.c: Likewise.
- * c-parser.c: Likewise.
- * c-typeck.c: Likewise.
- * cfgexpand.c: Likewise.
- * cgraph.c: Likewise.
- * cgraphunit.c: Likewise.
- * combine.c: Likewise.
- * config/alpha/alpha.c: Likewise.
- * config/arm/arm.c: Likewise.
- * config/frv/frv.c: Likewise.
- * config/i386/i386.c: Likewise.
- * config/i386/winnt-cxx.c: Likewise.
- * config/ia64/ia64.c: Likewise.
- * config/iq2000/iq2000.c: Likewise.
- * config/mep/mep.c: Likewise.
- * config/mips/mips.c: Likewise.
- * config/pa/som.h: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/s390/s390.c: Likewise.
- * config/sh/sh.c: Likewise.
- * config/sh/symbian-cxx.c: Likewise.
- * config/sparc/sparc.c: Likewise.
- * config/spu/spu.c: Likewise.
- * config/stormy16/stormy16.c: Likewise.
- * config/vxworks.c: Likewise.
- * config/xtensa/xtensa.c: Likewise.
- * coverage.c: Likewise.
- * dbxout.c: Likewise.
- * dwarf2out.c: Likewise.
- * emit-rtl.c: Likewise.
- * expr.c: Likewise.
- * function.c: Likewise.
- * gimple-low.c: Likewise.
- * gimple-pretty-print.c: Likewise.
- * gimplify.c: Likewise.
- * integrate.c: Likewise.
- * ipa-inline.c: Likewise.
- * ipa-prop.c: Likewise.
- * ipa-split.c: Likewise.
- * ipa-struct-reorg.c: Likewise.
- * ipa-type-escape.c: Likewise.
- * langhooks.c: Likewise.
- * lto-cgraph.c: Likewise.
- * omp-low.c: Likewise.
- * stor-layout.c: Likewise.
- * tree-cfg.c: Likewise.
- * tree-complex.c: Likewise.
- * tree-dfa.c: Likewise.
- * tree-dump.c: Likewise.
- * tree-inline.c: Likewise.
- * tree-mudflap.c: Likewise.
- * tree-nested.c: Likewise.
- * tree-object-size.c: Likewise.
- * tree-pretty-print.c: Likewise.
- * tree-sra.c: Likewise.
- * tree-ssa-live.c: Likewise.
- * tree-ssa-loop-niter.c: Likewise.
- * tree-ssa-math-opts.c: Likewise.
- * tree-ssa-reassoc.c: Likewise.
- * tree-ssa-sccvn.c: Likewise.
- * tree-ssa-structalias.c: Likewise.
- * tree-tailcall.c: Likewise.
- * tree-vrp.c: Likewise.
- * tree.c: Likewise.
- * var-tracking.c: Likewise.
- * varasm.c: Likewise.
-
-2010-07-15 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- PR target/44877
- * config/spu/spu.c (spu_expand_builtin_1): Allow references
- (as well as pointers) as argument to mask_for_load builtins.
-
-2010-07-15 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44946
- * tree-ssa-structalias.c (get_constraint_for_component_ref): Deal
- with accessing only padding properly.
-
-2010-07-15 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (function_and_variable_visibility): Variables marked as used
- should not be localized.
-
-2010-07-15 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c: Include lto-streamer.h
- (change_decl_assembler_name): Work when assembler name hash is at place.
- (cgraph_make_decl_local): When localizing COMDAT symbol at WPA stage,
- be sure to rename it to avoid name clash.
- * ipa.c (cgraph_externally_visible_p, function_and_variable_visibility):
- Localize hidden symbols only when locally defined.
-
-2010-07-15 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.h (SHIFT_COUNT_TRUNCATED): Expand comment.
-
-2010-07-15 Magnus Granberg <zorry@gentoo.org>
- Kevin F. Quinn <kevquinn@gentoo.org>
-
- * builtins.c (expand_builtin_init_trampoline): Warn for -Wtrampolines.
- * common.opt: Add -Wtrampolines.
- * doc/invoke.texi: Add -Wtrampolines.
-
-2010-07-15 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/cortex-a8.md (cortex_a8_load_store_2): Reserve
- cortex_a8_issue_ls.
-
-2010-07-15 Dave Korn <dave.korn.cygwin@gmail.com>
-
- * config/i386/cygwin.h (LIBGCJ_SONAME): Update.
- * config/i386/mingw32.h (LIBGCJ_SONAME): Likewise.
-
-2010-07-14 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/spu/spu.c (reg_names): Remove prototype.
- (call_used_regs): Likewise.
-
-2010-07-14 Dave Korn <dave.korn.cygwin@gmail.com>
-
- * config/i386/cygming-crtend.c (__FRAME_END__): Replace attribute
- "unused" with attribute "used".
- (__JCR_END__): Likewise.
- * config/i386/cygming-crtbegin.c (__EH_FRAME_BEGIN__): Add missing
- "used" attribute.
- (__JCR_LIST__): Replace attribute "unused" with attribute "used".
-
-2010-07-14 Richard Guenther <rguenther@suse.de>
-
- * lto-streamer-in.c (maybe_fixup_handled_component): Remove.
- (maybe_fixup_decls): Likewise.
- (input_gimple_stmt): Do not fixup anything.
- * lto-streamer-out.c (output_gimple_stmt): Make sure all
- non-automatic variable uses are wrapped inside a MEM_REF.
-
-2010-07-14 Richard Henderson <rth@redhat.com>
-
- * passes.c (rest_of_decl_compilation): Do not call assemble_variable
- for functions.
- * varasm.c (assemble_variable): Remove early exit for functions;
- assert that we're given a variable.
-
-2010-07-14 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/cortex-a8.md (cortex_a8_alu): Don't use
- cortex_a8_default when neon_type is not none.
-
-2010-07-14 Bernd Schmidt <bernds@codesourcery.com>
-
- * lower-subreg.c (subreg_context): New static bitmap.
- (decompose_multiword_subregs): Allocate and free it.
- (find_decomposable_subregs): Set a bit in it for a register that
- occurs in a subreg that changes mode but not size.
- (can_decompose_p): Test it instead of non_decomposable_context.
-
-2010-07-14 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44824
- * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Use
- is_gimple_mem_ref_addr.
- (tree_ssa_forward_propagate_single_use_vars): Do not propagate
- non-decl_address_invariant_p addresses.
-
-2010-07-14 Bernd Schmidt <bernds@codesourcery.com>
-
- * reload.c (find_reloads): Revert code to penalize small register
- classes that was brought in with the IRA merge.
-
-2010-07-14 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-ccp.c (fold_const_aggregate_ref): Handle MEM_REF
- as base of ARRAY_REFs.
-
-2010-07-14 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44930
- * tree-pretty-print.c (do_niy): Do not print a newline.
-
-2010-07-14 Bernd Schmidt <bernds@codesourcery.com>
-
- * ira-int.h (struct ira_object): New.
- (ira_object_t): New typedef. Add DEF_VEC_P and DEF_VEC_ALLOC_P for it.
- (struct ira_allocno): Remove members min, max,
- conflict_allocno_array, conflict_id, conflict_allocno_array_size,
- conflict_allocnos_num and conflict_vec_p. Add new member object.
- (OBJECT_CONFLICT_ARRAY, OBJECT_CONFLICT_VEC_P,
- OBJECT_NUM_CONFLICTS, OBJECT_CONFLICT_ARRAY_SIZE,
- OBJECT_CONFLICT_HARD_REGS, OBJECT_TOTAL_CONFLICT_HARD_REGS,
- OBJECT_MIN, OBJECT_MAX, OBJECT_CONFLICT_ID): Renamed from
- ALLOCNO_CONFLICT_ALLOCNO_ARRAY, ALLOCNO_CONFLICT_VEC_P,
- ALLOCNO_CONFLICT_ALLOCNOS_NUM, ALLOCNO_CONFLICT_ALLOCNO_ARRAY_SIZE,
- ALLOCNO_CONFLICT_HARD_REGS, ALLOCNO_TOTAL_CONFLICT_HARD_REGS)
- ALLOCNO_MIN, ALLOCNO_MAX, and ALLOCNO_CONFLICT_ID; now operate on
- an ira_object_t rather than ira_allocno_t. All uses changed.
- (ira_object_id_map): Renamed from ira_conflict_id_allocno_map; now
- contains a vector of ira_object_t; all uses changed.
- (ira_objects_num): Declare variable.
- (ira_create_allocno_object): Declare function.
- (ira_conflict_vector_profitable_p): Adjust prototype.
- (ira_allocate_conflict_vec): Renamed from
- ira_allocate_allocno_conflict_vec; first arg now ira_object_t.
- (ira_allocate_object_conflicts): Renamed from
- ira_allocate_allocno_conflicts; first arg now ira_object_t.
- (struct ira_object_iterator): New.
- (ira_object_iter_init, ira_object_iter_cond, FOR_EACH_OBJECT): New.
- (ira_allocno_conflict_iterator): Renamed member allocno_conflict_vec_p
- to conflict_vec_p. All uses changed.
- (ira_allocno_conflict_iter_init, ira_allocno_conflict_iter_cond):
- Changed to take into account that conflicts are now tracked for
- objects.
- * ira-conflicts.c (OBJECTS_CONFLICT_P): Renamed from CONFLICT_ALLOCNO_P.
- Args changed to accept ira_object_t. All uses changed.
- (allocnos_conflict_p): New static function.
- (collected_conflict_objects): Renamed from collected_allocno_objects;
- now a vector of ira_object_t. All uses changed.
- (build_conflict_bit_table): Changed to take into account that
- conflicts are now tracked for objects.
- (process_regs_for_copy, propagate_copies, build_allocno_conflicts)
- (print_allocno_conflicts, ira_build_conflicts): Likewise.
- * ira-color.c (assign_hard_reg, setup_allocno_available_regs_num)
- setup_allocno_left_conflicts_size, allocno_reload_assign,
- fast_allocation): Likewise.
- * ira-lives.c (make_hard_regno_born, make_allocno_born)
- process_single_reg_class_operands, process_bb_node_lives): Likewise.
- * ira-emit.c (modify_move_list, add_range_and_copies_from_move_list):
- Likewise.
- * ira-build.c (ira_objects_num): New variable.
- (ira_object_id_map): Renamed from ira_conflict_id_allocno_map; now
- contains a vector of ira_object_t; all uses changed.
- (ira_object_id_map_vec): Corresponding change.
- (object_pool): New static variable.
- (initiate_allocnos): Initialize it.
- (finish_allocnos): Free it.
- (ira_create_object, ira_create_allocno_object, create_allocno_objects):
- New functions.
- (ira_create_allocno): Don't set members that were removed.
- (ira_set_allocno_cover_class): Don't change conflict hard regs.
- (merge_hard_reg_conflicts): Changed to take into account that
- conflicts are now tracked for objects.
- (ira_conflict_vector_profitable_p, ira_allocate_conflict_vec,
- allocate_conflict_bit_vec, ira_allocate_object_conflicts,
- compress_conflict_vecs, remove_low_level_allocnos, ira_flattening,
- setup_min_max_allocno_live_range_point, allocno_range_compare_func,
- setup_min_max_conflict_allocno_ids, ): Likewise.
- (add_to_conflicts): Renamed from add_to_allocno_conflicts, args changed
- to ira_object_t; all callers changed.
- (ira_add_conflict): Renamed from ira_add_allocno_conflict, args changed
- to ira_object_t, all callers changed.
- (clear_conflicts): Renamed from clear_allocno_conflicts, arg changed
- to ira_object_t, all callers changed.
- (conflict_check, curr_conflict_check_tick): Renamed from
- allocno_conflict_check and curr_allocno_conflict_check_tick; all uses
- changed.
- (compress_conflict_vec): Renamed from compress_allocno_conflict_vec,
- arg changed to ira_object_t, all callers changed.
- (create_cap_allocno): Call ira_create_allocno_object.
- (finish_allocno): Free the corresponding object.
- (sort_conflict_id_map): Renamed from sort_conflict_id_allocno_map; all
- callers changed. Adjusted for dealing with objects.
- (ira_build): Call create_allocno_objects after ira_costs. Adjusted for
- dealing with objects.
- * ira.c (ira_bad_reload_regno_1): Adjusted for dealing with objects.
-
- * ira-int.h (struct live_range): Rename allocno member to object
- and change type to ira_object_t.
- (struct ira_object): New member live_ranges.
- (struct ira_allocno): Remove member live_ranges.
- (ALLOCNO_LIVE_RANGES): Remove.
- (OBJECT_LIVE_RANGES): New macro.
- (ira_create_live_range, ira_copy_live_range_list,
- ira_merge_live_range_list, ira_live_ranges_intersect_p,
- ira_finish_live_range, ira_finish_live_range_list): Adjust declarations.
- * ira-build.c (ira_create_object): Initialize live ranges here.
- (ira_create_allocno): Not here.
- (ira_create_live_range): Rename from ira_create_allocno_live_range, arg
- changed to ira_object_t, all callers changed.
- (copy_live_range): Rename from copy_allocno_live_range, all callers
- changed.
- (ira_copy_live_range_list): Rename from
- ira_copy_allocno_live_range_list, all callers changed.
- (ira_merge_live_ranges): Rename from ira_merge_allocno_live_range_list,
- all callers changed.
- (ira_live_ranges_intersect_p): Rename from
- ira_allocno_live_ranges_intersect_p, all callers changed.
- (ira_finish_live_range): Rename from ira_finish_allocno_live_range, all
- callers changed.
- (ira_finish_live_range_list): Rename from
- ira_finish_allocno_live_range_list, all callers changed.
- (change_object_in_range_list): Rename from change_allocno_in_range_list,
- last arg changed to ira_object_t, all callers changed.
- (finish_allocno): Changed to expect live ranges in the allocno's object.
- (move_allocno_live_ranges, copy_allocno_live_ranges,
- update_bad_spill_attribute, setup_min_max_allocno_live_range_point,
- ira_flattening, ira_build): Likewise.
- * ira-color.c (allocnos_have_intersected_live_ranges_p,
- slot_coalesced_allocno_live_ranges_intersect,
- setup_slot_coalesced_allocno_live_ranges, fast_allocation): Likewise.
- * ira-conflicts.c (build_conflict_bit_table): Likewise.
- * ira-emit.c (add_range_and_copies_from_move_list): Likewise.
- * ira-lives.c (make_allocno_born, update_allocno_pressure_excess_length,
- make_allocno_dead, create_start_finish_chains,
- remove_some_program_points_and_update_live_ranges,
- ira_debug_live_range_list): Likewise.
-
- * ira-int.h (ira_object_conflict_iterator): Rename from
- ira_allocno_conflict_iterator.
- (ira_object_conflict_iter_init): Rename from
- ira_allocno_conflict_iter_init, second arg changed to
- * ira.c (check_allocation): Use FOR_EACH_OBJECT_CONFLICT rather than
- FOR_EACH_ALLOCNO_CONFLICT.
- * ira-color.c (assign_hard_reg, push_allocno_to_stack)
- setup_allocno_left_conflicts_size, coalesced_allocno_conflict_p,
- ira_reassign_conflict_allocnos, ira_reassign_pseudos): Likewise.
- * ira-conflicts.c (print_allocno_conflicts): Likewise.
-
-2010-07-13 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR other/44874
- * tree-dump.c (dump_options): Add enumerate_locals entry.
- Add TDF_NOID exclusion to all entry.
- * tree-dump.h (dump_enumerated_decls): Declare.
- * tree-pretty-print.c (dump_generic_node): For TDF_NOID,
- Don't display type uid.
- (print_declaration): Don't crash on TREE_TYPE (t) == 0.
- * tree-pass.h (TDF_ENUMERATE_LOCALS): Define.
- * tree-ssa-live.c: Include gimple.h.
- (numbered_tree_d): New struct.
- (numbered_tree): New typedef.
- (DEF_VEC_O (numbered_tree): New.
- (DEF_VEC_ALLOC_O (numbered_tree, heap)): Likewise.
- (compare_decls_by_uid, dump_enumerated_decls_push): New functions.
- (dump_enumerated_decls): Likewise.
- * tree-optimize.c (execute_cleanup_cfg_post_optimizing): If comparing
- debug info and flag_dump_final_insns, call dump_enumerated_decls.
- * tree-cfg.c (dump_function_to_file): Call dump_enumerated_decls.
- * Makefile.in (tree-ssa-live.o): Depend on $(GIMPLE_H).
-
-2010-07-13 Richard Sandiford <rdsandiford@googlemail.com>
-
- * expmed.h (MAX_BITS_PER_WORD): Move to...
- * defaults.h (MAX_BITS_PER_WORD): ...here.
-
-2010-07-13 DJ Delorie <dj@redhat.com>
-
- * config/h8300/h8300.c (h8300_init_once): Default to
- -fstrict_volatile_bitfields.
-
- * config/sh/sh.c (sh_override_options): Default to
- -fstrict_volatile_bitfields.
-
- * config/rx/rx.c (rx_option_override): New.
-
- * config/m32c/m32c.c (m32c_override_options): Default to
- -fstrict_volatile_bitfields.
-
-2010-07-13 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (build_function_call_expr): Delete.
- (build_call_expr_loc_array): New function.
- (build_call_expr_loc_vec): New function.
- * tree-flow.h (struct omp_region): Change type of ws_args field
- to a VEC.
- * builtins.c (build_function_call_expr): Delete.
- (build_call_expr_loc_array): New function.
- (build_call_expr_loc): Call it. Use XALLOCAVEC.
- (build_call_expr): Likewise.
- (build_call_expr_loc_vec): New function.
- * cgraphunit.c (build_cdtor): Call build_call_expr instead of
- build_function_call_expr.
- * expr.c (emutls_var_address): Likewise.
- * varasm.c (emutls_common_1): Likewise.
- * omp-low.c (expand_omp_atomic_mutex): Likewise.
- (expand_omp_taskreg): Adjust for new type of region->ws_args.
- (get_ws_args_for): Return a VEC instead of a tree.
- (expand_parallel_call): Call build_call_expr_loc_vec instead of
- build_function_call_expr.
- * stor-layout.c (self_referential_size): Likewise.
-
-2010-07-13 Jakub Jelinek <jakub@redhat.com>
-
- PR testsuite/44701
- * recog.c (constrain_operands): Allow side-effects in memory
- operands if either < or > constraint is used, rather than if
- both < and > is used.
-
-2010-07-13 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44911
- * tree-pretty-print.c (dump_generic_node): Use TDF_SLIM for
- MEM_REF pointer type dumping. Avoid recursing for TYPE_DECLs
- without name.
-
-2010-07-13 Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR target/44761
- * mode-switching.c (optimize_mode_switching): Add ATTRIBUTE_UNUSED
- to variable emited.
- * config/sh/sh.c (sh_expand_epilogue): Remove unused variable.
- * config/sh/sh.md (symGOT_load): Likewise.
- (symDTPOFF2reg): Likewise.
- (symTPOFF2reg): Likewise.
-
-2010-07-13 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * expmed.c (MAX_BITS_PER_WORD): Moved to expmed.h.
- * expmed.h (MAX_BITS_PER_WORD): Moved from expmed.c.
-
-2010-07-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/i386/sol2-unwind.h (x86_64_fallback_frame_state): Correct
- explanation.
- Find ucontext_t * on Solaris 11.
- (x86_fallback_frame_state): Handle Solaris 9 multi-threaded pattern.
- Handle new Solaris 11 __sighndlr patterns.
-
-2010-07-13 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44901
- * vec.h (VEC_block_remove): Fix comment.
- * tree-ssa-live.c (remove_unused_locals): Don't use
- VEC_unordered_remove on local_decls, instead replace a single
- vector element in each iteration if at least one element had
- to be removed and VEC_truncate at the end.
- * omp-low.c (expand_omp_taskreg): Likewise.
-
-2010-07-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * c-decl.c (finish_function): Fix typo in comment.
-
-2010-07-12 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/44921
- * postreload.c (move2add_use_add3_insn): Silence gcc warning
- on min_regno.
-
-2010-07-12 Jakub Jelinek <jakub@redhat.com>
-
- * tree-vrp.c (simplify_bit_ops_using_ranges): New function.
- (simplify_stmt_using_ranges): Use it.
-
-2010-07-12 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/spu/spu.h (struct spu_builtin_description): Remove FNDECL
- member. Do not mark as GTY(()).
- * config/spu/spu.c (spu_builtins): Remove FNDECL initializer elements.
- (spu_builtin_decls): New static variable.
- (spu_builtin_decl): Use it instead of spu_builtins[].fndecl.
- (spu_init_builtins): Likewise.
- (spu_builtin_mul_widen_even): Likewise.
- (spu_builtin_mul_widen_odd): Likewise.
- (spu_builtin_mask_for_load): Likewise.
- (spu_builtin_vec_perm): Likewise.
- * config/spu/spu-c.c: Include "target.h".
- (spu_resolve_overloaded_builtin): Call targetm.builtin_decl instead
- of using spu_builtins[].fndecl.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * config/mips/mips.c (mips_override_options): Make -mflip-mips16
- imply -minterlink-mips16.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * config/mips/mips.h (mips16_globals): Declare.
- (SWITCHABLE_TARGET): Define.
- * config/mips/mips.c: Include target-globals.h.
- (mips16_globals): New variable.
- (mips_set_mips16_mode): Use save_target_globals and
- restore_target_globals instead of target_reinit.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * reginfo.c (init_reg_sets): Don't zero globals here. Update comment
- to say that the function can be called more than once.
- * target-globals.c (save_target_globals): Call init_reg_sets.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (bb-reorder.o, target-globals.o): Depend on bb-reorder.h
- * bb-reorder.h: New file.
- * bb-reorder.c (default_target_bb_reorder): New variable.
- (this_target_bb_reorder): New conditional variable.
- (uncond_jump_length): Redefine as a macro.
- * target-globals.h (this_target_bb_reorder): Declare.
- (target_globals): Add a bb_reorder field.
- (restore_target_globals): Copy the bb_reorder field to
- this_target_bb-reorder.
- * target-globals.c: Include bb-reorder.h.
- (default_target_globals): Initialize the bb_reorder field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (gcse.o, target-globals.o): Depend on gcse.h..
- * gcse.h: New file.
- * gcse.c: Include gcse.h.
- (default_target_gcse): New variable.
- (this_target_gcse): New conditional variable.
- (can_copy): Redefine as a macro.
- (can_copy_init_p): New macro.
- (can_copy_p): Remove can_copy_init_p.
- * target-globals.h (this_target_gcse): Declare.
- (target_globals): Add a gcse field.
- (restore_target_globals): Copy the gcse field to this_target_gcse.
- * target-globals.c: Include gcse.h.
- (default_target_globals): Initialize the gcse field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * ira-int.h (target_ira_int): Add x_ira_prohibited_mode_move_regs
- and x_ira_prohibited_mode_move_regs_initialized_p.
- (ira_prohibited_mode_move_regs): Redefine as a macro.
- * ira.c (ira_prohibited_mode_move_regs): Delete.
- (ira_prohibited_mode_move_regs_initialized_p): Redefine as a macro.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * reload.h (target_reload): Add x_cached_reg_save_code and
- x_cached_reg_restore_code.
- * caller-save.c (cached_reg_save_code, cached_reg_restore_code):
- Redefine as macros.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (target-globals.o): Depend on builtins.h.
- * builtins.h: New file.
- * builtins.c: Include builtins.h.
- (default_target_builtins): New variable.
- (this_target_builtins): New conditional variable.
- (apply_args_mode, apply_result_mode): Redefine as macros.
- * target-globals.h (this_target_builtins): Declare.
- (target_globals): Add a builtins field.
- (restore_target_globals): Copy the builtins field to
- this_target_builtins.
- * target-globals.c: Include builtins.h.
- (default_target_globals): Initialize the builtins field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * expmed.h (alg_code, mult_cost, MULT_COST_LESS, CHEAPER_MULT_COST)
- (algorithm, alg_hash_entry, NUM_ALG_HASH_ENTRIES, alg_hash): Moved
- from expmed.c.
- (target_expmed): Add x_alg_hash and x_alg_hash_used_p.
- (alg_hash, alg_hash_used_p): New macros.
- * expmed.c (init_expmed): Clear alg_hash if reinitializing.
- (alg_code, mult_cost, MULT_COST_LESS, CHEAPER_MULT_COST, algorithm)
- (alg_hash_entry, NUM_ALG_HASH_ENTRIES, alg_hash): Moved to expmed.h.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * ira-int.h (target_ira_int): Add x_max_struct_costs_size, x_init_cost,
- x_temp_costs, x_op_costs, x_this_op_costs and x_cost_classes.
- * ira-costs.c (max_struct_costs_size, init_cost, temp_costs, op_costs)
- (this_op_costs, costs_classes): Redefine as macros.
- (record_reg_classes): Don't take op_costs as a parameter.
- (record_operand_costs): Likewise. Update calls to record_reg_classes.
- (scan_one_insn): Update call to record_operand_costs.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (target-globals.o): Depend on $(IRA_INT_H).
- * ira-int.h (ira_max_nregs, ira_important_class_nums): Delete.
- (target_ira_int): New structure.
- (default_target_ira_int): Declare.
- (this_target_ira_int): Declare as a variable or define as a macro.
- (ira_reg_mode_hard_regset, ira_register_move_cost)
- (ira_may_move_in_cost, ira_may_move_out_cost, ira_class_subset_p)
- (ira_non_ordered_class_hard_regs, ira_class_hard_reg_index)
- (prohibited_class_mode_regs, ira_important_classes_num)
- (ira_important_classes, ira_reg_class_intersect)
- (ira_reg_classes_intersect_p, ira_reg_class_super_classes)
- (ira_reg_class_union): Redefine as macros.
- * ira.h (target_ira): New structure.
- (default_target_ira): Declare.
- (this_target_ira): Declare as a variable or define as a macro.
- (ira_available_class_regs, ira_hard_regno_cover_class)
- (ira_reg_class_cover_size, ira_reg_class_cover, ira_class_translate)
- (ira_reg_class_nregs, ira_memory_move_cost, ira_class_hard_regs)
- (ira_class_hard_regs_num): Redefine as macros.
- * ira.c (default_target_ira, default_target_ira_int): New variables.
- (this_target_ira, this_target_ira_int): New conditional variables.
- (ira_reg_mode_hard_regset, ira_memory_move_cost)
- (ira_register_move_cost, ira_may_move_in_cost, ira_may_move_out_cost)
- (ira_class_subset_p): Delete.
- (no_unit_alloc_regs): Redefine as a macro.
- (ira_class_hard_regs, ira_non_ordered_class_hard_regs)
- (ira_class_hard_regs_num, ira_class_hard_reg_index)
- (ira_available_class_regs): Delete.
- (alloc_reg_class_subclasses): Redefine as a macro.
- (ira_reg_class_cover_size, ira_reg_class_cover)
- (ira_important_classes_num, ira_important_classes)
- (ira_important_class_nums, ira_class_translate): Delete.
- (cover_class_order): Document the variable's lifetime.
- (reorder_important_classes): Don't set ira_important_class_nums.
- (ira_reg_class_intersect, ira_reg_classes_intersect_p)
- (ira_reg_class_super_classes, ira_reg_class_union)
- (ira_hard_regno_cover_class, ira_reg_class_nregs, ira_max_nregs):
- Delete.
- (setup_reg_class_nregs): Don't set ira_max_regs.
- (prohibited_class_mode_regs): Delete.
- * target-globals.h (this_target_ira, this_target_ira_int): Declare.
- (target_globals): Add ira and ira_int fields.
- (restore_target_globals): Copy the ira field to this_target_ira
- and the ira_int field to this_target_ira_int.
- * target-globals.c: Include ira-int.h.
- (default_target_globals): Initialize the ira and ira_int fields.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (target-globals.o): Depend on $(CFGLOOP_H).
- * cfgloop.h (target_cfgloop): New structure.
- (default_target_cfgloop): Declare.
- (this_target_cfgloop): Declare as a variable or define as a macro.
- (target_avail_regs, target_clobbered_regs, target_res_regs)
- (target_reg_cost, target_spill_cost): Redefine as macros.
- * cfgloopanal.c (default_target_cfgloop): New variable.
- (this_target_cfgloop): New conditional variable.
- (target_avail_regs, target_clobbered_regs, target_res_regs)
- (target_reg_cost, target_spill_cost): Delete.
- * target-globals.h (this_target_cfgloop): Declare.
- (target_globals): Add a cfgloop field.
- (restore_target_globals): Copy the cfgloop field to
- this_target_cfgloop.
- * target-globals.c: Include cfgloop.h.
- (default_target_globals): Initialize the cfgloop field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * regs.h (target_regs): Add x_direct_load, x_direct_store and
- x_float_extend_from_mem.
- (direct_load, direct_store, float_extend_from_mem): New macros.
- * expr.c (direct_load, direct_store, float_extend_from_mem): Delete.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (LIBFUNCS_H): Add $(HASHTAB_H).
- (target-globals.o): Depend on $(LIBFUNCS_H).
- * libfuncs.h: Include hashtab.h.
- (libfunc_entry): Moved from optabs.c.
- (target_libfuncs): New structure.
- (default_target_libfuncs): Declare.
- (this_target_libfuncs): Declare as a variable or define as a macro.
- (libfunc_table): Redefine as a macro.
- * optabs.c (default_target_libfuncs): New variable.
- (this_target_libfuncs): New conditional variable.
- (libfunc_table): Delete.
- (libfunc_entry): Moved to optabs.h.
- (libfunc_hash): Redefine as a macro.
- (hash_libfunc, eq_libfunc): Fix comments.
- (init_optabs): Use libfunc_hash to detect cases where the function
- has already been called. Clear the hash table instead of
- recreating it.
- * target-globals.h (this_target_libfuncs): Declare.
- (target_globals): Add a libfuncs field.
- (restore_target_globals): Copy the libfuncs field to
- this_target_libfuncs.
- * target-globals.c: Include libfuncs.h.
- (default_target_globals): Initialize the libfuncs field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (LIBFUNCS_H): New variable. Use instead of libfuncs.h
- in all dependency lists.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (target-globals.o): Depend on $(EXPR_H) and $(OPTABS_H).
- * optabs.h (target_optabs): New structure.
- (default_target_optabs): Declare.
- (this_target_optabs): Declare as a variable or define as a macro.
- (optab_table, convert_optab_table, direct_optab_table): Redefine
- as macros.
- * optabs.c (default_target_optabs): New variable.
- (this_target_optabs): New conditional variable.
- (optab_table, convert_optab_table, direct_optab_table): Delete.
- * target-globals.h (this_target_optabs): Declare.
- (target_globals): Add a optabs field.
- (restore_target_globals): Copy the optabs field to
- this_target_optabs.
- * target-globals.c: Include expr.h and optabs.h.
- (default_target_globals): Initialize the optabs field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * flags.h (target_flagstate): Add x_flag_excess_precision.
- (flag_excess_precision): Redefine as a macro.
- * toplev.c (flag_excess_precision): Delete.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * defaults.h (MAX_MOVE_MAX, MIN_UNITS_PER_WORD): Define if not defined.
- * libgcc2.c (MIN_UNITS_PER_WORD): Delete.
- * hard-reg-set.h (target_hard_regs): Add x_no_caller_save_reg_set.
- (no_caller_save_reg_set): Redefine as a macro.
- * reload.h (target_reload): Add x_caller_save_initialized_p and
- x_regno_save_mode.
- (caller_save_initialized_p): Redefine as a macro.
- * caller-save.c (caller_save_initialized_p, no_caller_save_reg_set)
- (MAX_MOVE_MAX, MIN_UNITS_PER_WORD): Delete.
- (regno_save_mode): Redefine as a macro.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (expmed.o, target-globals.o): Depend on expmed.h.
- * expmed.h: New file.
- * expmed.c (default_target_costs): New variable.
- (this_target_costs): New conditional variable.
- (sdiv_pow2_cheap, smod_pow2_cheap, zero_cost, add_cost, neg_cost)
- (shift_cost, shiftadd_cost, shiftsub0_cost, shiftsub1_cost, mul_cost)
- (sdiv_cost, udiv_cost, mul_widen_cost, mul_highpart_cost): Delete.
- * target-globals.h (this_target_expmed): Declare.
- (target_globals): Add a expmed field.
- (restore_target_globals): Copy the expmed field to
- this_target_expmed.
- * target-globals.c: Include expmed.h.
- (default_target_globals): Initialize the expmed field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (target-globals.o): Depend on reload.h.
- * reload.h (target_reload): New structure.
- (default_target_reload): Declare.
- (this_target_reload): Declare as a variable or define as a macro.
- (indirect_symref_ok, double_reg_address_ok): Redefine as macros.
- * reload1.c (default_target_reload): New variable
- (this_target_reload): New conditional variable.
- (indirect_symref_ok, double_reg_address_ok): Delete.
- (spill_indirect_levels): Redefine as a macro.
- * target-globals.h (this_target_reload): Declare.
- (target_globals): Add a reload field.
- (restore_target_globals): Copy the reload field to
- this_target_reload.
- * target-globals.c: Include hard-reg-set.h.
- (default_target_globals): Initialize the reload field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * rtl.h (target_rtl): Add x_static_reg_base_value.
- * alias.c (static_reg_base_value): Redefine as a macro.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (reginfo.o): Don't depend on $(GGC_H) or gt-reginfo.h.
- (GTFILES): Remove reginfo.c.
- * rtl.h (target_rtl): Add x_top_of_stack.
- (top_of_stack): New macro.
- * reginfo.c: Don't include ggc.h or gt-reginfo.h.
- (top_of_stack): Delete.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * regs.h (target_regs): Add x_hard_regs_of_mode,
- x_contains_reg_of_mode, x_move_cost, x_may_move_in_cost,
- x_may_move_out_cost and x_last_mode_for_init_move_cost.
- (have_regs_of_mode, contains_reg_of_mode, move_cost)
- (may_move_in_cost, may_move_out_cost): Redefine as macros.
- * reginfo.c (have_regs_of_mode, contains_reg_of_mode, move_cost)
- (may_move_in_cost, may_move_out_cost): Delete.
- (last_mode_for_init_move_cost): Redefine as a macro.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * hard-reg-set.h (target_hard_regs): New structure.
- (default_target_hard_regs): Declare.
- (this_target_hard_regs): Declare as a variable or define as a macro.
- (fixed_regs, fixed_reg_set, call_used_regs, call_really_used_regs)
- (call_used_reg_set, call_fixed_reg_set, regs_invalidated_by_call)
- (reg_alloc_order, inv_reg_alloc_order, reg_class_contents)
- (reg_class_size, reg_class_subclasses, reg_class_subunion)
- (reg_class_superunion, reg_names): Redefine as macros.
- * reginfo.c (fixed_regs, fixed_reg_set, call_used_regs)
- (call_used_reg_set, call_really_used_regs, call_fixed_reg_set)
- (regs_invalidated_by_call, reg_alloc_order, inv_reg_alloc_order)
- (reg_class_contents, reg_class_size, reg_class_subclasses)
- (reg_class_subunion, reg_class_superunion, reg_names): Delete.
- (default_target_hard_regs): New variable
- (this_target_hard_regs, initial_call_really_used_regs)
- (initial_reg_alloc_order): New conditional variables.
- (initial_reg_names): New variable.
- (init_reg_sets): Assert that initial_call_really_used_regs,
- initial_reg_alloc_order and initial_reg_names
- are all the same size as their variable counterparts. Use them to
- initialize those counterparts.
- * target-globals.h (this_target_hard_regs): Declare.
- (target_globals): Add a hard_regs field.
- (restore_target_globals): Copy the hard_regs field to
- this_target_hard_regs.
- * target-globals.c: Include hard-reg-set.h.
- (default_target_globals): Initialize the hard_regs field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (target-globals.o): Depend on $(RTL_H).
- * rtl.h (target_rtl): New structure.
- (default_target_rtl): Declare.
- (this_target_rtl): Declare as a variable or define as a macro.
- (global_rtl, pic_offset_table_rtx, return_address_pointer_rtx):
- Redefine as macros.
- * emit-rtl.c (default_target_rtl): New variable.
- (this_target_rtl): New conditional variable.
- (global_rtl, static_regno_reg_rtx, pic_offset_table_rtx)
- (return_address_pointer_rtx): Delete.
- (initial_regno_reg_rtx): New macro.
- (init_emit): Use initial_regno_reg_rtx instead of static_regno_reg_rtx.
- (init_emit_regs): Likewise.
- * target-globals.h (this_target_rtl): Declare.
- (target_globals): Add a rtl field.
- (restore_target_globals): Copy the rtl field to this_target_rtl.
- * target-globals.c: Include rtl.h.
- (default_target_globals): Initialize the rtl field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (target-globals.o): Depend on $(REGS_H).
- * regs.h (target_reg_modes): New structure.
- (default_target_reg_modes): Declare.
- (this_target_reg_modes): Declare as a variable or define as a macro.
- (hard_regno_nregs, reg_raw_mode): Redefine as macros.
- * reginfo.c (default_target_reg_modes): New variable.
- (this_target_reg_modes): New conditional variable.
- (hard_regno_nregs, reg_raw_mode): Delete.
- * target-globals.h (this_target_regs): Declare.
- (target_globals): Add a regs field.
- (restore_target_globals): Copy the regs field to this_target_regs.
- * target-globals.c: Include regs.h.
- (default_target_globals): Initialize the regs field.
- (save_target_globals): Likewise.
-
-2010-07-12 Richard Sandiford <rdsandiford@googlemail.com>
-
- * doc/tm.texi.in (SWITCHABLE_TARGET): Document.
- * doc/tm.texi: Regenerate.
- * Makefile.in (OBJS-common): Add target-globals.o.
- (gtype-desc.o): Depend on $(IPA_PROP_H), $(LTO_STREAMER_H)
- and target-globals.h.
- (target-globals.o): New rule.
- (GTFILES): Include $(srcdir)/target-globals.h.
- * defaults.h (SWITCHABLE_TARGET): Define.
- * gengtype.c (open_base_files): Add target-globals.h to the
- list of includes.
- * target-globals.h: New file.
- * target-globals.c: Likewise.
-
- * Makefile.in (target-globals.o): Depend on $(FLAGS_H).
- * flags.h (target_flag_state): New structure.
- (default_target_flag_state): Declare.
- (this_target_flag_state): Declare as a variable or define as a macro.
- (align_loops_log): Redefine as a macro.
- (align_loops_max_skip, align_jumps_log): Likewise.
- (align_jumps_max_skip, align_labels_log): Likewise.
- (align_labels_max_skip, align_functions_log): Likewise.
- * toplev.c (default_target_flag_state): New variable.
- (this_target_flag_state): New conditional variable.
- (align_loops_log): Delete.
- (align_loops_max_skip, align_jumps_log): Likewise.
- (align_jumps_max_skip, align_labels_log): Likewise.
- (align_labels_max_skip, align_functions_log): Likewise.
- * target-globals.h (this_target_flag_state): Declare.
- (target_globals): Add a flag_state field.
- (restore_target_globals): Copy the flag_state field to
- this_target_flag_state.
- * target-globals.c: Include flags.h.
- (default_target_globals): Initialize the flag_state field.
- (save_target_globals): Likewise.
-
-2010-07-12 Jie Zhang <jie@codesourcery.com>
-
- * postreload.c (reg_symbol_ref[]): New.
- (move2add_use_add2_insn): New.
- (move2add_use_add3_insn): New.
- (reload_cse_move2add): Handle SYMBOL + OFFSET case.
- (move2add_note_store): Likewise.
-
-2010-07-12 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR rtl-optimization/44752
- * genautomata.c (main): Don't emit an empty file even if there
- is no automaton.
-
-2010-07-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/i386/i386.c (ix86_sol10_return_in_memory): Rename to
- ix86_solaris_return_in_memory.
- * config/i386-protos.h: Reflect this.
- * config/i386/vx-common.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
- * config/i386/sol2-10.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
- Move ...
- * config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): ... here.
-
-2010-07-12 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/arm.c (arm_get_frame_offsets): Don't use r3 to
- align the stack when it's going to be saved.
-
-2010-07-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR pch/14940
- * config/host-solaris.c (mmap_fixed): New function.
- (sol_gt_pch_get_address): Use it.
- (sol_gt_pch_use_address): Likewise.
-
-2010-07-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
- pentiumpro on Solaris 8 and 9/x86.
- * doc/install.texi (Specific, i?86-*-solaris2.[89]): Recommend GNU as.
- Document SSE/SSE2 support.
- * doc/sourcebuild.texi (Effective-Target Keywords): Document sse.
-
-2010-07-12 Andi Kleen <ak@linux.intel.com>
-
- * lto-symtab.c (lto_symtab_merge_decls_1): Use fatal_error
- instead of gcc_assert to print better error message for multiple
- prevailing defs.
-
-2010-07-12 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (ix86_asm_output_function_label): Change format
- string placeholder from 0x%x to %#x.
- (ix86_code_end): Use putc to output '\n'.
- (ix86_print_operand) <case ';'>: Use putc to output ';'.
-
-2010-07-11 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/winnt.c (i386_pe_file_end): Quote symbol name
- in directive -export.
-
-2010-07-10 Anatoly Sokolov <aesok@post.ru>
-
- * reginfo.h (reg_classes_intersect_p): Change arguments type to
- reg_class_t.
- * rtl.h (reg_classes_intersect_p): Adjust prototype.
-
- * config/rs6000/rs6000.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
- Remove macros.
- * config/rs6000/rs6000-protos.h (rs6000_register_move_cost,
- rs6000_memory_move_cost): Remove
- * config/rs6000/rs6000.c (TARGET_REGISTER_MOVE_COST,
- TARGET_MEMORY_MOVE_COST): Define.
- (rs6000_register_move_cost): Make static. Change arguments type from
- enum reg_class to reg_class_t. Adjust rs6000_memory_move_cost calls.
- (rs6000_memory_move_cost): Make static. Change arguments type from
- 'enum reg_class' to reg_class_t.
-
-2010-07-10 Sandra Loosemore <sandra@codesourcery.com>
-
- PR middle-end/42505
- * tree-inline.c (estimate_num_insns): Refactor builtin complexity
- lookup code into....
- * builtins.c (is_simple_builtin, is_inexpensive_builtin): ...these
- new functions.
- * tree.h (is_simple_builtin, is_inexpensive_builtin): Declare.
- * cfgloopanal.c (target_clobbered_regs): Define.
- (init_set_costs): Initialize target_clobbered_regs.
- (estimate_reg_pressure_cost): Add call_p argument. When true,
- adjust the number of available registers to exclude the
- call-clobbered registers.
- * cfgloop.h (target_clobbered_regs): Declare.
- (estimate_reg_pressure_cost): Adjust declaration.
- * tree-ssa-loop-ivopts.c (struct ivopts_data): Add body_includes_call.
- (ivopts_global_cost_for_size): Pass it to estimate_reg_pressure_cost.
- (determine_set_costs): Dump target_clobbered_regs.
- (loop_body_includes_call): New function.
- (tree_ssa_iv_optimize_loop): Use it to initialize new field.
- * loop-invariant.c (gain_for_invariant): Adjust arguments to pass
- call_p flag through.
- (best_gain_for_invariant): Likewise.
- (find_invariants_to_move): Likewise.
- (move_single_loop_invariants): Likewise, using already-computed
- has_call field.
-
-2010-07-10 Richard Guenther <rguenther@suse.de>
- Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR debug/44832
- * tree-ssa-live.c (mark_all_vars_used_1): Set TREE_USED for LABEL_DECL.
- (remove_unused_scope_block_p): Don't drop TREE_USED LABEL_DECLs
- unless they have DECL_IGNORED_P set.
-
-2010-07-10 Richard Guenther <rguenther@suse.de>
-
- PR lto/44889
- * gimple.c (gimple_fixup_complete_and_incomplete_subtype_p): New
- helper function.
- (gimple_types_compatible_p): Similar to pointed-to
- types allow and merge a mix of complete and incomplete aggregate.
- Use gimple_fixup_complete_and_incomplete_subtype_p for that.
- (iterative_hash_gimple_type): Adjust for that.
-
-2010-07-10 Richard Sandiford <r.sandiford@uk.ibm.com>
-
- * tree.h (DECL_REPLACEABLE_P): Strengthen check for weak symbols.
-
-2010-07-10 Iain Sandoe <iains@gcc.gnu.org>
-
- PR objc/44140
- * config/darwin.c (output_objc_section_asm_op): Save and restore
- section when outputting ObjC section list.
-
-2010-07-09 Jan Hubicka <jh@suse.cz>
-
- * lto-streamer-out.c (produce_symtab): Do not write alias
- cgraph/varpool nodes.
-
-2010-07-09 Jan Hubicka <jh@suse.cz>
-
- * tree-inline.c (declare_return_variable): Fix ICE while
- inlining DECL_BY_VALUE function not in SSA form
-
-2010-07-09 Changpeng Fang <changpeng.fang@amd.com>
-
- PR tree-optimization/44576
- * tree-ssa-loop-prefetch.c (trip_count_to_ahead_ratio_too_small_p):
- New. Pull out from is_loop_prefetching_profitable to implement
- the trip count to ahead ratio heuristic.
- (mem_ref_count_reasonable_p): New. Pull out from
- is_loop_prefetching_profitable to implement the instruction to
- memory reference ratio heuristic. Also consider not reasonable if
- the memory reference count is above a threshold (to avoid
- explosive compilation time.
- (insn_to_prefetch_ratio_too_small_p): New. Pull out from
- is_loop_prefetching_profitable to implement the instruction to
- prefetch ratio heuristic.
- (is_loop_prefetching_profitable): Removed.
- (loop_prefetch_arrays): Distribute the cost analysis across the
- function to allow early exit of the prefetch analysis.
- is_loop_prefetching_profitable is splitted into three functions,
- with each one called as early as possible.
- (PREFETCH_MAX_MEM_REFS_PER_LOOP): New. Threshold above which the
- number of memory references in a loop is considered too many.
-
-2010-07-09 Bernd Schmidt <bernds@codesourcery.com>
-
- * reload.c (find_reloads): Don't clear badop if we have a winreg
- alternative, but not win, and the class only has fixed regs.
- * hard-reg-set.h (class_only_fixed_regs): Declare.
- * reginfo.c (class_only_fixed_regs): New array.
- (init_reg_sets_1): Initialize it.
- * config/arm/arm.md (arm_addsi3, thumb1_addsi3, arm_subsi3_insn): Don't
- discourage alternatives using the stack pointer.
-
- * config/arm/arm.md (addsi3_cbranch): Switch alternatives 0 and 1.
-
- * config/arm/arm.md (Thumb-1 ldrsb peephole): New.
-
- * config/arm/arm.md (cbranchqi4): Fix array size.
- (addsi3_cbranch): Also andle alternative 2 like alternative 3 when
- calculating length.
-
-2010-07-09 Richard Guenther <rguenther@suse.de>
-
- * gimple.c (struct type_fixup_s): New struct and VEC type.
- (gimple_register_type_fixups): New static global.
- (gimple_queue_type_fixup): New function.
- (gimple_types_compatible_p): Queue type fixups instead of
- applying them here.
- (gimple_register_type): Apply queued fixups for the
- canonical type. Empty the type fixup queue.
-
-2010-07-09 Uros Bizjak <ubizjak@gmail.com>
-
- * configure.ac (gcc_cv_as_ix86_rep_lock_prefix): Fix test.
- * configure: Regenerate.
- * config.in: Ditto.
-
-2010-07-09 Jakub Jelinek <jakub@redhat.com>
- Denys Vlasenko <dvlasenk@redhat.com>
- Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
-
- PR tree-optimization/28632
- * tree-vrp.c (zero_nonzero_bits_from_vr): New function.
- (extract_range_from_binary_expr): Further optimize
- BIT_AND_EXPR and BIT_IOR_EXPR.
-
-2010-07-09 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (fold_or_predicates): New.
- (add_to_predicate_list): Call it.
-
-2010-07-09 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44890
- * tree-ssa-address.c (create_mem_ref_raw): Only build a MEM_REF
- if base is a pointer.
- * tree-cfg.c (verify_expr): Update MEM_REF checking.
-
-2010-07-08 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR target/44877
- * config/rs6000/rs6000.c (rs6000_expand_builtin): Use
- POINTER_TYPE_P instead of checking only for POINTER_TYPE for the
- builtin mask for load/store builtins.
-
-2010-07-09 Uros Bizjak <ubizjak@gmail.com>
-
- * configure.ac (gcc_cv_as_ix86_rep_lock_prefix): Also check
- for "lock addl".
- * configure: Regenerate.
- * config/i386/i386.c (ix86_print_operand) <case ';'>:
- Remove TARGET_MACHO.
-
-2010-07-09 Peter Bergner <bergner@vnet.ibm.com>
-
- * config/rs6000/rs6000.c (rs6000_override_options): Fix setting of
- default ISA flags.
- * config/rs6000/rs6000.h (ASM_CPU_SPEC): Add -mvsx.
-
-2010-07-09 Tom de Vries <tjvries@xs4all.nl>
-
- * tree.c (type_hash_if_marked_p): Removed non-ggc_marked_p clause.
-
-2010-07-09 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.md (commsTestPort): Emit more
- efficient sequence for tstport instruction.
-
-2010-07-09 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (ix86_veclib_handler): Make static.
-
-2010-07-09 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44852
- * tree-ssa-alias.c: Include toplev.h for exact_log2.
- (indirect_ref_may_alias_decl_p): Properly handle negative offsets
- in MEM_REF.
- (indirect_refs_may_alias_p): Likewise.
- * Makefile.in (tree-ssa-alias.o): Add $(TOPLEV_H).
-
-2010-07-09 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44882
- * tree-vect-stmts.c (vectorizable_store): Do not assert alias
- sets do conflict.
- (vectorizable_load): Likewise.
-
-2010-07-09 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/40657
- * config/arm/arm.c (thumb1_extra_regs_pushed): New arg FOR_PROLOGUE.
- All callers changed.
- Handle the case when we're called for the epilogue.
- (thumb_unexpanded_epilogue): Use it.
- (thumb1_expand_epilogue): Likewise.
-
-2010-07-09 Jakub Jelinek <jakub@redhat.com>
-
- * tree-vrp.c (extract_range_from_binary_expr) <BIT_AND_EXPR>: If
- both ranges are range_int_cst_p with non-negative minimum,
- try harder to derive smaller range.
-
-2010-07-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * genrecog.c: Include diagnostic-core.h before toplev.h.
- * genoutput.c: Likewise.
- * genextract.c: Likewise.
- * genautomata.c: Likewise.
- * genemit.c: Likewise.
- * genpeep.c: Likewise.
- * genattrtab.c: Likewise.
- * genconditions.c: Likewise.
- * genpreds.c: Likewise.
-
-2010-07-08 Andi Kleen <ak@linux.intel.com>
-
- * lto-section-in.c (lto_section_name): Add missing comma.
-
-2010-07-08 Anatoly Sokolov <aesok@post.ru>
-
- * config/ia64/ia64.h (OVERRIDE_OPTIONS): Remove macros.
- * config/ia64/ia64-protos.h (ia64_override_options): Remove.
- * config/ia64/ia64.c (TARGET_OPTION_OVERRIDE): Define.
- (ia64_override_options): Rename to...
- (ia64_option_override): ... this one. Make static.
-
-2010-07-08 Eric Botcazou <ebotcazou@adacore.com>
-
- PR middle-end/44843
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not rely on the
- pointed-to type of the offset in a MEM_REF to compute the alignment.
-
-2010-07-08 Kai Tietz <kai.tietz@onevision.com>
-
- * final.c (final_scan_insn): Replace
- TARGET_UNWIND_INFO macro check by unwind_emit
- hook NULL check.
- * targhooks.c (default_unwind_emit): Removed.
- * targhooks.h (default_unwind_emit): Likewise.
- * target.def (unwind_emit): Set default value to NULL.
-
- * config/i386/i386-protos.h (ix86_asm_output_function_label):
- New prototype.
- * config/i386/i386.c (ix86_function_ms_hook_prologue): Check
- for NULL fntype argument and allow 64-bit targets.
- (ix86_asm_output_function_label): New function.
- (ix86_expand_prologue): Handle 64-bit ms hook prologue.
- (ix86_handle_fndecl_attribute): Likewise.
- * doc/extend.texi (ms_hook_prologue): Adjust documentation.
- * doc/doc/tm.texi: Regenerated.
- * doc/doc/doc/tm.texi.in (ASM_OUTPUT_FUNCTION_LABEL): New.
- (ASM_DECLARE_FUNCTION_NAME): Adjust documentation.
- * defaults.h (ASM_OUTPUT_FUNCTION_LABEL): New macro.
- * config/darwin.h (ASM_DECLARE_FUNCTION_NAME): Use
- ASM_OUTPUT_FUNCTION_LABEL instead of ASM_OUTPUT_LABEL.
- * config/elfos.h: Likewise.
- * config/i386/cygming.h: Likewise.
- * config/netbsd-aout.h: Likewise.
- * config/openbsd.h: Likewise.
- * config/i386/i386.h (ASM_OUTPUT_FUNCTION_LABEL): Override
- by ix86_asm_output_function_label function call.
- * varasm.c (assemble_start_function): Use
- ASM_OUTPUT_FUNCTION_LABEL instead of ASM_OUTPUT_LABEL.
-
-2010-07-08 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_will_be_removed_from_program_if_no_direct_calls):
- New function.
- * cgraph.h (cgraph_will_be_removed_from_program_if_no_direct_calls):
- Declare.
- * ipa-cp.c (ipcp_estimate_growth): Use it.
- * ipa-inline.c (cgraph_estimate_growth, cgraph_decide_inlining):
- Likewise.
-
-2010-07-08 Jan Hubicka <jh@suse.cz>
-
- * tree-inline.c (declare_return_variable): Allocate annotation for new
- temporary.
-
-2010-07-08 Sebastian Pop <sebastian.pop@amd.com>
-
- PR tree-optimization/44710
- * tree-if-conv.c (parse_predicate): New.
- (add_to_predicate_list): Call it, call maybe_fold_or_comparisons.
- Make sure that the predicates are either SSA_NAMEs or gimple_condexpr.
-
-2010-07-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * common.opt (ftree-loop-if-convert): New flag.
- * doc/invoke.texi (ftree-loop-if-convert): Documented.
- * tree-if-conv.c (gate_tree_if_conversion): Enable if-conversion
- when flag_tree_loop_if_convert is set.
-
-2010-07-08 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c: Use short syntax for function calls
- through function pointers.
- * config/i386/i386.md: Ditto.
-
-2010-07-08 Eric Botcazou <ebotcazou@adacore.com>
-
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Fix formatting issues.
-
-2010-07-08 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Fix
- stmt check for POINTER_PLUS_EXPRs, fix the pointer assignment.
-
-2010-07-08 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (mem_loc_descriptor): Use DW_OP_const[48]u
- instead of DW_OP_addr for DW_OP_GNU_push_tls_address operand.
- (loc_list_from_tree): Likewise.
- (output_loc_operands): Handle outputting DW_OP_const[48]u
- with loc->dtprel set.
- (resolve_addr_in_expr): Handle loc->dtprel like DW_OP_addr.
-
-2010-07-08 Jan Hubicka <jh@suse.cz>
-
- * ipa.c: Include pointer-set.h
- (cgraph_externally_visible_p): New attribute ALIASED;
- when in LTO, hidden symbols are local unless they are aliased.
- (function_and_variable_visibility): Compute aliased nodes;
- handle LTO and hidden symbol on functions and vars.
- * cgraph.c (cgraph_make_decl_local): Clear NAMED_SECTION
- for COMDAT symbols; handle COMDAT_GROUPS also at vars.
-
-2010-07-08 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/i386/cygming.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.
- * config/i386/freebsd.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
- * config/i386/linux.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
- * config/i386/linux64.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
- * config/i386/sol2.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
- * config/i386/i386.c (ix86_gen_adjust_stack_and_probe): New variable.
- (ix86_gen_probe_stack_range): Likewise.
- (override_options): Set them.
- (ix86_target_stack_probe): New function.
- (ix86_compute_frame_layout): Force use of push instructions to
- save registers if stack checking with probes is enabled.
- (get_scratch_register_on_entry): New function.
- (release_scratch_register_on_entry): Likewise.
- (ix86_adjust_stack_and_probe): Likewise.
- (output_adjust_stack_and_probe): Likewise.
- (ix86_emit_probe_stack_range): Likewise.
- (output_probe_stack_range): Likewise.
- (ix86_expand_prologue): Emit stack checking code if static built-in
- stack checking is enabled.
- Test ix86_target_stack_probe instead of TARGET_STACK_PROBE.
- * config/i386/i386-protos.h (ix86_target_stack_probe): Declare.
- (output_adjust_stack_and_probe): Likewise.
- (output_probe_stack_range): Likewise.
- * config/i386/i386.md (UNSPECV_PROBE_STACK_RANGE): New constant.
- (allocate_stack_worker_32): Test ix86_target_stack_probe instead of
- TARGET_STACK_PROBE.
- (allocate_stack_worker_64): Likewise.
- (allocate_stack): Likewise.
- (adjust_stack_and_probe): New insn.
- (probe_stack_range): Likewise.
-
-2010-07-08 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44831
- * tree-ssa-phiprop.c (phiprop_insert_phi): Properly build
- a MEM_REF preserving TBAA info of the original dereference.
- Dereference the original pointer if the address is not invariant.
- (propagate_with_phi): Fixup type checks wrt MEM_REFs. Require
- at least one invariant address that we are going to dereference.
-
-2010-07-08 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44861
- * tree-vect-stmts.c (vectorizable_store): Preserve TBAA
- information when building MEM_REFs.
- (vectorizable_load): Likewise.
- * tree-vect-data-refs.c (vect_setup_realignment): Likewise.
-
-2010-07-08 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/sol2-c.c: Do not include diagnostic-core.h.
-
-2010-07-08 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- PR bootstrap/44768
- * cfgexpand.c (estimated_stack_frame_size): Make self-contained
- with respect to current_function_decl. Pass decl of the function.
- * tree-inline.h (estimated_stack_frame_size): Adjust prototype.
- * ipa-inline.c (compute_inline_parameters): Pass decl to
- estimated_stack_frame_size.
-
-2010-07-08 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address):
- New function.
- (valueize_refs): Call it.
-
-2010-07-08 Richard Guenther <rguenther@suse.de>
-
- PR rtl-optimization/44838
- * tree-ssa-alias.c (indirect_refs_may_alias_p): When not in
- SSA form do not use pointer equivalence.
-
-2010-07-08 Eric Botcazou <ebotcazou@adacore.com>
-
- * dwarf2out.c (AT_linkage_name): Delete.
- (add_linkage_attr): New function.
- (add_linkage_name): Call it to emit the linkage attribute.
- (dwarf2out_finish): Likewise.
- (move_linkage_attr): Explicitly accept both attribute variants.
-
-2010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * toplev.h: Do not include diagnostic-core.h.
- Include diagnostic-core.h in every file that includes toplev.h.
- * c-tree.h: Do not include toplev.h.
- * pretty-print.h: Update comment.
- * Makefile.in: Update dependencies.
- * alias.c: Include diagnostic-core.h in every file that includes
- toplev.h.
- * attribs.c: Likewise.
- * auto-inc-dec.c: Likewise.
- * bb-reorder.c: Likewise.
- * bt-load.c: Likewise.
- * caller-save.c: Likewise.
- * calls.c: Likewise.
- * cfg.c: Likewise.
- * cfganal.c: Likewise.
- * cfgbuild.c: Likewise.
- * cfgcleanup.c: Likewise.
- * cfghooks.c: Likewise.
- * cfgloop.c: Likewise.
- * combine.c: Likewise.
- * config/alpha/alpha.c: Likewise.
- * config/arc/arc.c: Likewise.
- * config/arm/arm.c: Likewise.
- * config/arm/pe.c: Likewise.
- * config/avr/avr.c: Likewise.
- * config/bfin/bfin.c: Likewise.
- * config/cris/cris.c: Likewise.
- * config/crx/crx.c: Likewise.
- * config/darwin-c.c: Likewise.
- * config/darwin.c: Likewise.
- * config/fr30/fr30.c: Likewise.
- * config/frv/frv.c: Likewise.
- * config/h8300/h8300.c: Likewise.
- * config/host-darwin.c: Likewise.
- * config/i386/i386.c: Likewise.
- * config/i386/netware.c: Likewise.
- * config/i386/nwld.c: Likewise.
- * config/i386/winnt-cxx.c: Likewise.
- * config/i386/winnt-stubs.c: Likewise.
- * config/i386/winnt.c: Likewise.
- * config/ia64/ia64-c.c: Likewise.
- * config/ia64/ia64.c: Likewise.
- * config/iq2000/iq2000.c: Likewise.
- * config/lm32/lm32.c: Likewise.
- * config/m32c/m32c-pragma.c: Likewise.
- * config/m32c/m32c.c: Likewise.
- * config/m32r/m32r.c: Likewise.
- * config/m68hc11/m68hc11.c: Likewise.
- * config/m68k/m68k.c: Likewise.
- * config/mcore/mcore.c: Likewise.
- * config/mep/mep-pragma.c: Likewise.
- * config/mep/mep.c: Likewise.
- * config/mmix/mmix.c: Likewise.
- * config/mn10300/mn10300.c: Likewise.
- * config/moxie/moxie.c: Likewise.
- * config/pa/pa.c: Likewise.
- * config/pdp11/pdp11.c: Likewise.
- * config/picochip/picochip.c: Likewise.
- * config/rs6000/rs6000-c.c: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/rx/rx.c: Likewise.
- * config/s390/s390.c: Likewise.
- * config/score/score.c: Likewise.
- * config/score/score3.c: Likewise.
- * config/score/score7.c: Likewise.
- * config/sh/sh.c: Likewise.
- * config/sh/symbian-base.c: Likewise.
- * config/sh/symbian-c.c: Likewise.
- * config/sh/symbian-cxx.c: Likewise.
- * config/sol2-c.c: Likewise.
- * config/sol2.c: Likewise.
- * config/sparc/sparc.c: Likewise.
- * config/spu/spu.c: Likewise.
- * config/stormy16/stormy16.c: Likewise.
- * config/v850/v850-c.c: Likewise.
- * config/v850/v850.c: Likewise.
- * config/vax/vax.c: Likewise.
- * config/vxworks.c: Likewise.
- * config/xtensa/xtensa.c: Likewise.
- * convert.c: Likewise.
- * cse.c: Likewise.
- * cselib.c: Likewise.
- * dbgcnt.c: Likewise.
- * dbxout.c: Likewise.
- * ddg.c: Likewise.
- * dominance.c: Likewise.
- * emit-rtl.c: Likewise.
- * explow.c: Likewise.
- * expmed.c: Likewise.
- * fixed-value.c: Likewise.
- * fold-const.c: Likewise.
- * fwprop.c: Likewise.
- * gcse.c: Likewise.
- * ggc-common.c: Likewise.
- * ggc-page.c: Likewise.
- * ggc-zone.c: Likewise.
- * gimple-low.c: Likewise.
- * gimplify.c: Likewise.
- * graph.c: Likewise.
- * haifa-sched.c: Likewise.
- * ifcvt.c: Likewise.
- * implicit-zee.c: Likewise.
- * integrate.c: Likewise.
- * ira-build.c: Likewise.
- * ira-color.c: Likewise.
- * ira-conflicts.c: Likewise.
- * ira-costs.c: Likewise.
- * ira-lives.c: Likewise.
- * ira.c: Likewise.
- * lists.c: Likewise.
- * loop-doloop.c: Likewise.
- * loop-iv.c: Likewise.
- * lto-opts.c: Likewise.
- * lto-symtab.c: Likewise.
- * main.c: Likewise.
- * modulo-sched.c: Likewise.
- * optabs.c: Likewise.
- * params.c: Likewise.
- * plugin.c: Likewise.
- * postreload-gcse.c: Likewise.
- * postreload.c: Likewise.
- * predict.c: Likewise.
- * profile.c: Likewise.
- * real.c: Likewise.
- * regcprop.c: Likewise.
- * reginfo.c: Likewise.
- * regmove.c: Likewise.
- * reorg.c: Likewise.
- * resource.c: Likewise.
- * rtl.c: Likewise.
- * rtlanal.c: Likewise.
- * sched-deps.c: Likewise.
- * sched-ebb.c: Likewise.
- * sched-rgn.c: Likewise.
- * sdbout.c: Likewise.
- * sel-sched-dump.c: Likewise.
- * sel-sched-ir.c: Likewise.
- * simplify-rtx.c: Likewise.
- * stmt.c: Likewise.
- * stor-layout.c: Likewise.
- * store-motion.c: Likewise.
- * targhooks.c: Likewise.
- * tree-cfg.c: Likewise.
- * tree-cfgcleanup.c: Likewise.
- * tree-dump.c: Likewise.
- * tree-eh.c: Likewise.
- * tree-inline.c: Likewise.
- * tree-nomudflap.c: Likewise.
- * tree-object-size.c: Likewise.
- * tree-optimize.c: Likewise.
- * tree-outof-ssa.c: Likewise.
- * tree-phinodes.c: Likewise.
- * tree-profile.c: Likewise.
- * tree-ssa-ccp.c: Likewise.
- * tree-ssa-coalesce.c: Likewise.
- * tree-ssa-live.c: Likewise.
- * tree-ssa-loop-niter.c: Likewise.
- * tree-ssa-loop-prefetch.c: Likewise.
- * tree-ssa-loop.c: Likewise.
- * tree-ssa-structalias.c: Likewise.
- * tree-ssa-uninit.c: Likewise.
- * tree-ssa.c: Likewise.
- * tree-vect-data-refs.c: Likewise.
- * tree-vect-loop-manip.c: Likewise.
- * tree-vect-loop.c: Likewise.
- * tree-vect-patterns.c: Likewise.
- * tree-vect-stmts.c: Likewise.
- * tree-vrp.c: Likewise.
- * varasm.c: Likewise.
- * vec.c: Likewise.
- * web.c: Likewise.
- * xcoffout.c: Likewise.
-
-2010-07-07 Richard Sandiford <rdsandiford@googlemail.com>
-
- * gengtype.c (write_field_root): New function.
- (write_root): Use it.
-
-2010-07-07 Wei Guozhi <carrot@google.com>
-
- * config/arm/thumb2.md (peephole2 to convert zero_extract/compare
- of lowest bits to lshift/compare): Add a missing line.
-
-2010-07-07 Wei Guozhi <carrot@google.com>
-
- * config/arm/thumb2.md (peephole2 to convert zero_extract/compare
- of lowest bits to lshift/compare): New.
-
-2010-07-07 Tom Tromey <tromey@redhat.com>
-
- * doc/tm.texi: Update.
- * doc/tm.texi.in (SDB and DWARF) <TARGET_WANT_DEBUG_PUB_SECTIONS>:
- Add @hook.
- * target.def (want_debug_pub_sections): New hook.
- * config/darwin.h (TARGET_WANT_DEBUG_PUB_SECTIONS): Define.
- * dwarf2out.c (add_pubname_string): Check
- targetm.want_debug_pub_sections.
- (add_pubname): Likewise.
- (add_pubtype): Likewise.
-
-2010-07-07 Jie Zhang <jie@codesourcery.com>
-
- * genautomata.c (output_automata_list_min_issue_delay_code):
- Correctly decompress min_issue_delay.
-
-2010-07-07 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/44404
- * auto-inc-dec.c (find_inc): Avoid calling count_occurrences if
- possible, use reg_overlap_mentioned_p instead.
-
-2010-07-07 Duncan Sands <baldrick@free.fr>
-
- PR middle-end/41355
- * tree.c (build_function_type_skip_args): Copy the original type using
- build_distinct_type_copy rather than copy_node.
-
-2010-07-07 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44850
- * config/i386/i386.c (ix86_function_ms_hook_prologue): Revert
- revision 161876.
- (ix86_expand_prologue): Likewise.
- (ix86_handle_fndecl_attribute): Likewise.
- (ix86_asm_declare_function_name): Likewise.
- * config/i386/i386.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
- * config/i386/cygming.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
- (SUBTARGET_ASM_DECLARE_FUNCTION_NAME): Likewise.
- * config/i386/i386-protos.h (ix86_asm_declare_function_name): Likewise.
- * doc/extend.texi: Likewise.
-
-2010-07-07 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44844
- * config/i386/i386.md (rdrand<mode>): Changed to expand to
- retry if the carry flag isn't valid.
- (rdrand<mode>_1): New.
-
-2010-07-07 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44790
- * expr.c (expand_expr_real_1): Go the POINTER_PLUS_EXPR path
- for expanding the constant offset for MEM_REFs.
-
-2010-07-07 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-propagate.h (valid_gimple_call_p): Remove.
- * tree-ssa-propagate.c (valid_gimple_call_p): Make static. Fix.
- * gimple.h (is_gimple_operand): Remove.
- * gimple.c (is_gimple_operand): Likewise.
- (walk_gimple_op): Fix wi->val_only setting for calls.
- * tree-cfg.c (verify_gimple_call): Fix argument validation.
- * tree-profile.c (tree_gen_ic_func_profiler): Do not create
- invalid gimple calls.
-
-2010-07-06 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (output_cgraph): Add missing declaration.
-
-2010-07-06 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (output_cgraph): Output toplevel asms only into first
- partition.
-
-2010-07-06 Alexandre Oliva <aoliva@redhat.com>
-
- * doc/gimple.texi (GIMPLE_DEBUG): Document.
- * doc/rtl.texi (Debug Information): New node.
- (NOTE_INSN_VAR_LOCATION): Document.
- (debug_insn): Likewise.
- * doc/generic.texi (DEBUG_EXPR_DECL): Document.
-
-2010-07-07 Jan Hubicka <jh@suse.cz>
-
- With parts by Richard Guenther.
-
- PR middle-end/44813
- * tree-ssa-uninit.c (ssa_undefined_value_p): Result decl is defined
- for functions passed by reference.
- * tree.c (needs_to_live_in_memory): RESULT_DECL don't need to live
- in memory when passed by reference.
- * tree-ssa-ccp.c (get_default_value): Only VAR_DECL is undefined at
- beggining.
- * ipa-split.c (split_function): Cleanup way return value is passed;
- handle SSA DECL_BY_REFERENCE retvals.
- * tree-ssa.c (verify_def): Verify that RESULT_DECL is read only when
- DECL_BY_REFERENCE is set.
- * tree-ssa-structalias.c (get_constraint_for_ssa_var, get_fi_for_callee,
- find_what_p_points_to): Handle RESULT_DECL.
- * tree-inline.c (declare_return_variable): Get new entry_block argument;
- when passing by reference ensure that RESULT_DECL is gimple_val.
- (remap_gimple_op_r): Remap RESULT_DECL ssa name.
- (remap_gimple_stmt): Handle SSA DECL_BY_REFERENCE returns.
-
-2010-07-07 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/44787
- * config/arm/arm.md (arith_shiftsi): Allow stack pointer in operand 2.
- * config/arm/thumb2.md (thumb2_arith_shiftsi): Likewise.
-
-2010-07-06 Jan Hubicka <jh@suse.cz>
-
- * lto-symtab.c (lto_cgraph_replace_node): Handle aliases.
- (lto_symtab_resolve_can_prevail_p): Also alias of cgraph node
- with body can prevail.
- (lto_symtab_resolve_symbols): Use cgraph_get_node_or_alias.
- (lto_symtab_merge_cgraph_nodes_1): Do not remove nodes from aliases.
- * cgraph.c (cgraph_get_node_or_alias): New function.
- * cgraph.h (cgraph_get_node_or_alias): Declare.
-
-2010-07-06 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/i386.c (ix86_function_ms_hook_prologue): Enable x64
- support.
- (ix86_expand_prologue): Likewise.
- (ix86_handle_fndecl_attribute): Likewise.
- (ix86_asm_declare_function_name): New function for
- ASM_DECLARE_FUNCTION_NAME.
- * config/i386/i386.h (ASM_DECLARE_FUNCTION_NAME): New macro.
- * config/i386/cygming.h (ASM_DECLARE_FUNCTION_NAME): Removed.
- (SUBTARGET_ASM_DECLARE_FUNCTION_NAME): New macro.
- * config/i386/i386-protos.h (ix86_asm_declare_function_name): New.
- * doc/extend.texi: Adjust documentation about ms_hook_prologue
- attribute.
-
-2010-07-06 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (immediate_operand): New mode attribute.
-
- (pro_epilogue_adjust_stack_<mode>_1): Macroize insn from
- pro_epilogue_adjust_stack and pro_epilogue_adjust_stack_rex64
- using P mode iterator.
- (pro_epilogue_adjust_stack_di_2): Rename from
- pro_epilogue_adjust_stack_rex64_2.
-
- * config/i386/i386.c (pro_epilogue_adjust_stack): Update for rename.
-
-2010-07-06 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (insv): Call gen_movdi_insv1 or gen_movsi_insv1
- through gen_mov_insv_1 function pointer.
- (fmod<mode>3): Call gen_truncxf<mode>2_i387_noop_unspec or
- gen_truncxf<mode>2 through gen_truncxf function pointer.
- (remainder<mode>3): Ditto.
- (cmpstrnsi): Rename cmp_insn function pointer to gen_cmp.
- (allocate_stack): Call gen_allocate_stack_worker_64 or
- gen_allocate_stack_worker_32 through gen_allocate_stack_worker
- function pointer.
- (probe_stack): Call gen_iordi3 or gen_iorsi3 through gen_ior3
- function pointer.
-
-2010-07-06 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*add<mode>3_cconly_overflow): Use <g>
- operand constraint instead of <r><i>m.
-
-2010-07-06 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44828
- * convert.c (convert_to_integer): Watch out for overflowing
- MULT_EXPR as well.
-
-2010-07-05 Jan Hubicka <jh@suse.cz>
-
- * lto-streamer.c (write_symbol_vec): Rename to ...
- (write_symbol) ... this one; write only symbol given and when
- present in cache. Sanity check that what is defined is present
- in cgraph/varpool with body/finalized decl.
- (write_symbols_of_kind): Remove.
- (produce_symtab): Take outputblock and sets; use cgraph/varpool/alias
- pairs to produce symtab.
- (produce_asm_for_decls): Update call of produce_symtab; don't do so
- when doing WPA streaming.
-
-2010-07-05 Jan Hubicka <jh@suse.cz>
-
- * gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Check that
- function is still available to fold into.
-
-2010-07-05 Nathan Froyd <froydnj@codesourcery.com>
-
- * vec.h (FOR_EACH_VEC_ELT_REVERSE): New macro.
- * function.h (struct_function): Change type of local_decls field
- to a VEC.
- (add_local_decl): New function.
- (FOR_EACH_LOCAL_DECL): New macro.
- * cfgexpand.c (init_vars_expansion): Adjust for new type of
- cfun->local_decls.
- (estimated_stack_frame_size): Likewise.
- (expand_used_vars): Likewise.
- * cgraphbuild.c (build_cgraph_edges): Likewise.
- * function.c (instantiate_decls_1): Likewise.
- * ipa-struct-reorg.c (build_data_structure): Likewise.
- * ipa-type-escape.c (analyze_function): Likewise.
- * lto-streamer-in.c (input_function): Likewise.
- * lto-streamer-out.c (output_function): Likewise.
- * tree-ssa-live.c (remove_unused_locals): Likewise.
- * tree.c (free_lang_data_in_decl): Likewise.
- (find_decls_types_in_node): Likewise.
- * omp-low.c (remove_exit_barrier): Likewise.
- (expand_omp_taskreg): Likewise.
- (list2chain): Rename to...
- (vec2chain): ...this. Adjust.
- * cgraphunit.c (assemble_thunk): Call add_local_decl.
- * tree-cfg.c (replace_by_duplicate_decl): Likewise.
- * gimple-low.c (record_vars_into): Likewise.
- * tree-inline.c (remap_decls): Likewise.
- (declare_return_variable): Likewise.
- (declare_inline_vars): Likewise.
- (copy_forbidden): Adjust for new type of cfun->local_decls.
- (add_local_variables): New function.
- (expand_call_inline): Call it.
- (tree_function_versioning): Likewise.
-
-2010-07-05 H.J. Lu <hongjiu.lu@intel.com>
-
- AVX Programming Reference (June, 2010)
- * config/i386/cpuid.h (bit_F16C): New.
- (bit_RDRND): Likewise.
- (bit_FSGSBASE): Likewise.
-
- * config/i386/i386-builtin-types.def: Add
- "DEF_FUNCTION_TYPE (UINT16)", function types for
- float16 <-> float conversions and
- "DEF_FUNCTION_TYPE (VOID, UINT64)".
-
- * config/i386/i386-c.c (ix86_target_macros_internal): Support
- OPTION_MASK_ISA_FSGSBASE, OPTION_MASK_ISA_RDRND and
- OPTION_MASK_ISA_F16C.
-
- * config/i386/i386.c (OPTION_MASK_ISA_FSGSBASE_SET): New.
- (OPTION_MASK_ISA_RDRND_SET): Likewise.
- (OPTION_MASK_ISA_F16C_SET): Likewise.
- (OPTION_MASK_ISA_FSGSBASE_UNSET): Likewise.
- (OPTION_MASK_ISA_RDRND_UNSET): Likewise.
- (OPTION_MASK_ISA_F16C_UNSET): Likewise.
- (OPTION_MASK_ISA_AVX_UNSET): Add OPTION_MASK_ISA_F16C_UNSET.
- (ix86_handle_option): Handle OPT_mfsgsbase, OPT_mrdrnd and OPT_mf16c.
- (ix86_target_string): Support -mfsgsbase, -mrdrnd and -mf16c.
- (pta_flags): Add PTA_FSGSBASE, PTA_RDRND and PTA_F16C.
- (override_options): Handle them.
- (ix86_valid_target_attribute_inner_p): Handle fsgsbase, rdrnd and f16c.
- (ix86_builtins): Add IX86_BUILTIN_RDFSBASE32,
- IX86_BUILTIN_RDFSBASE64, IX86_BUILTIN_RDGSBASE32,
- IX86_BUILTIN_RDGSBASE64, IX86_BUILTIN_WRFSBASE32,
- IX86_BUILTIN_WRFSBASE64, IX86_BUILTIN_WRGSBASE32,
- IX86_BUILTIN_WRGSBASE64, IX86_BUILTIN_RDRAND16,
- IX86_BUILTIN_RDRAND32, IX86_BUILTIN_RDRAND64,
- IX86_BUILTIN_CVTPH2PS, IX86_BUILTIN_CVTPH2PS256,
- IX86_BUILTIN_CVTPS2PH and IX86_BUILTIN_CVTPS2PH256.
- (bdesc_args): Likewise.
- (ix86_expand_args_builtin): Handle V8SF_FTYPE_V8HI,
- V4SF_FTYPE_V8HI, V8HI_FTYPE_V8SF_INT and V8HI_FTYPE_V4SF_INT.
- (ix86_expand_special_args_builtin): Handle VOID_FTYPE_UINT64,
- VOID_FTYPE_UNSIGNED, UNSIGNED_FTYPE_VOID and UINT16_FTYPE_VOID.
- Handle non-memory store.
-
- * config/i386/i386.h (TARGET_FSGSBASE): New.
- (TARGET_RDRND): Likewise.
- (TARGET_F12C): Likewise.
-
- * config/i386/i386.md (UNSPEC_VCVTPH2PS): New.
- (UNSPEC_VCVTPS2PH): Likewise.
- (UNSPECV_RDFSBASE): Likewise.
- (UNSPECV_RDGSBASE): Likewise.
- (UNSPECV_WRFSBASE): Likewise.
- (UNSPECV_WRGSBASE): Likewise.
- (UNSPECV_RDRAND): Likewise.
- (rdfsbase<mode>): Likewise.
- (rdgsbase<mode>): Likewise.
- (wrfsbase<mode>): Likewise.
- (wrgsbase<mode>): Likewise.
- (rdrand<mode>): Likewise.
-
- * config/i386/i386.opt: Add -mfsgsbase, -mrdrnd and -mf16c.
-
- * config/i386/immintrin.h (_rdrand_u16): New.
- (_rdrand_u32): Likewise.
- (_readfsbase_u32): Likewise.
- (_readfsbase_u64): Likewise.
- (_readgsbase_u32): Likewise.
- (_readgsbase_u64): Likewise.
- (_writefsbase_u32): Likewise.
- (_writefsbase_u64): Likewise.
- (_writegsbase_u32): Likewise.
- (_writegsbase_u64): Likewise.
- (_rdrand_u64): Likewise.
- (_cvtsh_ss): Likewise.
- (_mm_cvtph_ps): Likewise.
- (_mm256_cvtph_ps): Likewise.
- (_cvtss_sh): Likewise.
- (_mm_cvtps_ph): Likewise.
- (_mm256_cvtps_ph): Likewise.
-
- * config/i386/sse.md (vcvtph2ps): New.
- (*vcvtph2ps_load): Likewise.
- (vcvtph2ps256): Likewise.
- (vcvtps2ph): Likewise.
- (*vcvtps2ph): Likewise.
- (*vcvtps2ph_store): Likewise.
- (vcvtps2ph256): Likewise.
-
- * doc/extend.texi: Document FSGSBASE and RDRND built-in functions.
-
- * doc/invoke.texi: Document -mfsgsbase, -mrdrnd and -mf16c.
-
-2010-07-05 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR bootstrap/44512
- * genenums.c (main): Output include of insn-constants.h
- * Makefile.in (insn-enums.o): Depend on insn-constants.h.
-
-2010-07-05 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (ix86_gen_allocate_stack_worker): New.
- (override_options): Initialize it.
- (ix86_expand_prologue): Use it.
-
-2010-07-05 Jakub Jelinek <jakub@redhat.com>
-
- * tree-nrv.c (tree_nrv): Set DECL_VALUE_EXPR on found to result.
-
-2010-07-05 Anatoly Sokolov <aesok@post.ru>
-
- * double-int.h (fit_double_type): Remove declaration.
- * double-int.c (fit_double_type): Remove function.
- * tree.h (int_fits_type_p): Adjust prototype.
- * tree.c (int_fits_type_p): Return bool. Use double_int_fits_to_tree_p
- instead of fit_double_type.
- (build_int_cst_type): Use double_int_to_tree and shwi_to_double_int
- instead of fit_double_type and build_int_cst_wide.
- * builtins.c (): Use double_int_fits_to_tree_p and double_int_to_tree
- instead of fit_double_type and build_int_cst_wide.
- (fold_builtin_object_size): Use double_int_fits_to_tree_p instead
- of fit_double_type.
-
-2010-07-05 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (cgraph_node, cgraph_varpool_node): Update docmentation of
- in_other_partition.
- * lto-cgraph.c (referenced_from_other_partition_p,
- reachable_from_other_partition_p): Use in_other_partition flags.
- (output_node, output_varpool_node): COMDAT nodes always have private
- copies and thus are never used from other partition.
-
-2010-07-05 Anatoly Sokolov <aesok@post.ru>
-
- * config/ia64/ia64.h (MEMORY_MOVE_COST): Remove macro.
- * config/ia64/t-ia64 (ia64.o): Depend on reload.h.
- * config/ia64/ia64.c Include reload.h.
- (ia64_memory_move_cost): New function.
- (TARGET_MEMORY_MOVE_COST): Define.
- (ia64_register_move_cost): Replace MEMORY_MOVE_COST with
- memory_move_cost.
-
-2010-07-05 Sandra Loosemore <sandra@codesourcery.com>
-
- PR middle-end/42505
- * tree-ssa-loop-ivopts.c (determine_set_costs): Delete obsolete
- comments about cost model.
- (try_add_cand_for): Add second strategy for choosing initial set
- based on original IVs, controlled by ORIGINALP argument.
- (get_initial_solution): Add ORIGINALP argument.
- (find_optimal_iv_set_1): New function, split from find_optimal_iv_set.
- (find_optimal_iv_set): Try two different strategies for choosing
- the IV set, and return the one with lower cost.
-
-2010-07-05 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Copy alias info.
-
-2010-07-05 Richard Guenther <rguenther@suse.de>
-
- * tree.c (reference_alias_ptr_type): New function.
- * tree.h (reference_alias_ptr_type): Declare.
- * tree-ssa-loop-ivopts.c (copy_ref_info): Restructure to
- allow non-TARGET_MEM_REF new refs.
- (rewrite_use_address): Pass old alias pointer type to create_mem_ref.
- * tree-ssa-address.c (create_mem_ref_raw): Get alias pointer type.
- Build a MEM_REF instead of a TARGET_MEM_REF if possible.
- (create_mem_ref): Get alias pointer type. Adjust calls to
- create_mem_ref_raw.
- (maybe_fold_tmr): Likewise.
- * tree-flow.h (create_mem_ref): Adjust prototype.
-
-2010-07-05 Jakub Jelinek <jakub@redhat.com>
-
- PR c++/44808
- * gimplify.c (gimplify_modify_expr): Only SET_DECL_DEBUG_EXPR if
- *from_p is VAR_DECL.
-
-2010-07-05 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (build_call_list): Remove.
- * tree.c (build_call_list): Remove.
-
-2010-07-05 Richard Guenther <rguenther@suse.de>
-
- * double-int.h (double_int_sub): Declare.
- * double-int.c (double_int_sub): New function.
- * dwarf2out.c (field_byte_offset): Use it.
- * fixed-value.c (do_fixed_add): Likewise.
- (do_fixed_multiply): Likewise.
- (do_fixed_divide): Likewise.
- * tree-predcom.c (add_ref_to_chain): Likewise.
- (determine_roots_comp): Likewise.
- * tree-ssa-loop-niter.c (derive_constant_upper_bound_ops): Likewise.
-
-2010-07-05 Nathan Froyd <froydnj@codesourcery.com>
-
- * vec.h (VEC_splice, VEC_safe_splice): New macros. Add function
- implementations.
-
-2010-07-05 Bernd Schmidt <bernds@codesourcery.com>
-
- * config/arm/arm.c (get_arm_condition_code): Remove CC_NOTBmode case.
- * arm-modes.def (CC_NOTB): Don't define.
- * config/arm/arm.md (arm_adddi3): Generate canonical RTL.
- (adddi_sesidi_di, adddi_zesidi_di): Likewise.
- (LTUGEU): New code_iterator.
- (cnb, optab): New corresponding code_attrs.
- (addsi3_carryin_<optab>): Renamed from addsi3_carryin. Change pattern
- to canonical form. Operands 1 and 2 are commutative. Parametrize
- using LTUGEU.
- (addsi3_carryin_shift_<optab>): Likewise.
- (addsi3_carryin_alt2_<optab>): Renamed from addsi3_carryin_alt2.
- Operands 1 and 2 are commutative. Parametrize using LTUGEU.
- (addsi3_carryin_alt1, addsi3_carryin_alt3): Remove.
- (subsi3_compare): Renamed from subsi3_compare0_c.
- Change CC_NOTB to CC.
- (arm_subsi3_insn): Allow constants for operand 0.
- (compare_scc peephole for eq case): New.
- (compare_scc splitters): Change CC_NOTB to CC.
-
-2010-07-05 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-loop-im.c (for_each_index): Do not handle
- ALIGN_INDIRECT_REF.
- (gen_lsm_tmp_name): Likewise.
- * tree-dump.c (dequeue_and_dump): Likewise.
- * tree-pretty-print.c (dump_generic_node): Likewise.
- (op_code_prio): Likewise.
- (op_symbol_code): Likewise.
- * tree.c (staticp): Likewise.
- (build1_stat): Likewise.
- * tree.h (INDIRECT_REF_P): Likewise.
- * fold-const.c (maybe_lvalue_p): Likewise.
- (operand_equal_p): Likewise.
- * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Likewise.
- (ao_ref_init_from_vn_reference): Likewise.
- * tree-ssa-loop-ivopts.c (idx_find_step): Likewise.
- (find_interesting_uses_address): Likewise.
- * dwarf2out.c (loc_list_from_tree): Likewise.
- * gimplify.c (gimplify_expr): Likewise.
- * tree-eh.c (tree_could_trap_p): Likewise.
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
- * cfgexpand.c (expand_debug_expr): Likewise.
- * tree-ssa-pre.c (create_component_ref_by_pieces_1): Likewise.
- * tree-ssa-loop-prefetch.c (idx_analyze_ref): Likewise.
- * tree-cfg.c (verify_types_in_gimple_min_lval): Likewise.
- * config/rs6000/rs6000 (rs6000_check_sdmode): Likewise.
- * tree-ssa-operands.c (get_expr_operands): Likewise.
- * expr.c (safe_from_p): Likewise.
- (expand_expr_real_1): Likewise. TER BIT_AND_EXPRs into MEM_REFs.
- * tree-vect-data-refs.c (vect_setup_realignment): Build
- BIT_AND_EXPR and MEM_REF instead of ALIGN_INDIRECT_REF.
- * tree-vect-stmts.c (vectorizable_load): Likewise.
- * tree.def (ALIGN_INDIRECT_REF): Remove.
-
-2010-07-05 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44784
- * tree-ssa-pre.c (bitmap_find_leader): Fix dominance check
- for inserted stmts.
- (find_or_generate_expression): Fix SCCVN insertion check.
-
-2010-07-05 Nathan Sidwell <nathan@codesourcery.com>
-
- * config/rs6000/e500crtsavg64gprctr.asm: Correct done label name.
- * config/rs6000/e500crtsav64gprctr.asm: Likewise.
- * config/rs6000/e500crtres64gprctr.asm: Likewise. Add FUNC_END
- directives.
-
-2010-07-05 Ira Rosen <irar@il.ibm.com>
-
- * tree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Skip
- statements that are not vectorized.
- * tree-vect-stmts.c (vect_get_load_cost): Update the value stored
- in INSIDE_COST.
-
-2010-07-05 Mikael Pettersson <mikpe@it.uu.se>
-
- PR bootstrap/44820
- * config/arm/arm.c (arm_attr_length_move_neon): Delete regno.
-
-2010-07-05 Richard Guenther <rguenther@suse.de>
-
- * tree-cfg.c (verify_gimple_return): Handle DECL_BY_REFERENCE
- RESULT_DECLs properly.
-
-2010-07-04 H.J. Lu <hongjiu.lu@intel.com>
-
- PR rtl-optimization/44695
- * config/i386/i386.md (extract_code): Removed.
- (<u>divmodqi4): Likewise.
- (divmodqi4): New.
- (udivmodqi4): Likewise.
- (divmodhiqi3): Change div/mod to HImode and extend operand 2 to HImode.
- (udivmodhiqi3): Likewise.
-
-2010-07-04 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (input_edge): Do not care about resolution decisions.
-
-2010-07-04 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (init_cgraph): Only initialize dump file if it
- is not already initialized.
-
-2010-07-04 Richard Sandiford <rdsandiford@googlemail.com>
-
- * optabs.h (reload_in_optab, reload_out_optab, code_to_optab)
- (vcond_gen_code, vcondu_gen_code, movmem_optab, setmem_optab)
- (cmpstr_optab, cmpstrn_optab, cmpmem_optab, sync_add_optab)
- (sync_sub_optab, sync_ior_optab, sync_and_optab, sync_xor_optab)
- (sync_nand_optab, sync_old_add_optab, sync_old_sub_optab)
- (sync_old_ior_optab, sync_old_and_optab, sync_old_xor_optab)
- (sync_old_nand_optab, sync_new_add_optab, sync_new_sub_optab)
- (sync_new_ior_optab, sync_new_and_optab, sync_new_xor_optab)
- (sync_new_nand_optab): Redefine as macros.
- (sync_compare_and_swap, sync_lock_test_and_set, sync_lock_release):
- Delete.
- (direct_optab_index): New enum.
- (direct_optab_d): New structure.
- (direct_optab): New typedef.
- (direct_optab_table): Declare.
- (direct_optab_handler, set_direct_optab_handler): New functions.
- (sync_compare_and_swap_optab, sync_lock_test_and_set_optab)
- (sync_lock_release_optab): New macros.
- * optabs.c (direct_optab_table): New variable.
- (movcc_gen_code, vcond_gen_code, vcondu_gen_code): Delete.
- (prepare_cmp_insn): Use direct_optab_handler for cmpmem_optab,
- cmpstr_optab and cmpstrn_optab.
- (emit_conditional_move): Likewise for movcc_optab.
- (can_conditionally_move_p): Likewise for movcc_gen_code.
- (init_insn_codes): Clear direct_optab_table.
- (init_optabs): Don't initialize the new "direct optabs" here.
- (get_vcond_icode): Use direct_optab_handler for vcondu_gen_code and
- vcond_gen_code.
- (expand_val_compare_and_swap): Likewise sync_compare_and_swap_optab.
- (expand_bool_compare_and_swap): Likewise sync_compare_and_swap_optab.
- (expand_compare_and_swap_loop): Likewise sync_compare_and_swap_optab.
- (expand_sync_operation): Likewise other sync_*_optabs.
- (expand_sync_fetch_operation): Likewise. Rename sync_compare_and_swap
- to sync_compare_and_swap_optab.
- (expand_sync_lock_test_and_set): Use direct_optab_handler for
- sync_lock_test_and_set and sync_compare_and_swap, adding "_optab"
- to the names of both.
- * builtins.c (expand_builtin_strcmp): Use direct_optab_handler for
- cmpstr_optab and cmpstrn_optab.
- (expand_builtin_lock_release): Likewise sync_lock_release.
- * expr.c (movmem_optab, setmem_optab, cmpstr_optab, cmpstrn_optab)
- (cmpmem_optab, sync_add_optab, sync_sub_optab, sync_ior_optab)
- (sync_and_optab, sync_xor_optab, sync_nand_optab, sync_old_add_optab)
- (sync_old_sub_optab, sync_old_ior_optab, sync_old_and_optab)
- (sync_old_xor_optab, sync_old_nand_optab, sync_new_add_optab)
- (sync_new_sub_optab, sync_new_ior_optab, sync_new_and_optab)
- (sync_new_xor_optab, sync_new_nand_optab, sync_compare_and_swap)
- (sync_lock_test_and_set, sync_lock_release): Delete.
- (emit_block_move_via_movmem): Use direct_optab_handler for movmem_optab.
- (emit_block_move_via_setmem): Use direct_optab_handler for setmem_optab.
- * genopinit.c (optabs): Use set_direct_optab_handler for the new
- macro optabs.
- * omp-low.c (expand_omp_atomic_fetch_op): Update the type of
- the "optab" local variable. Use direct_optab_handler for optab and
- sync_compare_and_swap_optab.
- * reload1.c (reload_in_optab, reload_out_optab): Delete.
- * targhooks.c (default_secondary_reload): Use direct_optab_handler for
- reload_in_optab and reload_out_optab.
- * config/alpha/alpha.c (alpha_secondary_reload): Likewise.
- * config/frv/frv.c (frv_alloc_temp_reg): Likewise.
- * config/pa/pa.c (pa_secondary_reload): Likewise.
- * java/builtins.c (compareAndSwapInt_builtin): Use direct_optab_handler
- for sync_compare_and_swap, renaming it to sync_compare_and_swap_optab.
- (compareAndSwapLong_builtin, compareAndSwapObject_builtin): Likewise.
- (VMSupportsCS8_builtin): Likewise.
-
-2010-07-04 Richard Sandiford <rdsandiford@googlemail.com>
-
- * optabs.h (optab_handlers): Change type of insn_code to int.
- (optab_handler, set_optab_handler, convert_optab_handler)
- (set_convert_optab_handler): Treat the insn_code field as "insn_code -
- CODE_FOR_nothing".
- * optabs.c (optab_table, convert_optab_table): Always zero-initialize.
- (init_insn_codes): Zero both the above arrays.
- (init_optabs): Never call init_insn_codes first time around.
-
-2010-07-04 Richard Sandiford <rdsandiford@googlemail.com>
-
- * optabs.h (optab_handler, convert_optab_handler): Turn into
- inline functions that return an insn code.
- (set_optab_handler, set_convert_optab_handler): New functions.
- * builtins.c: Replace optab_handler(X)->insn_code with
- optab_handler or set_optab_handler thoughout. Likewise
- convert_optab_handler(X)->insn_code with convert_optab_handler
- and set_convert_optab_handler.
- * expmed.c, expr.c, genopinit.c, ifcvt.c, optabs.c, reload.c,
- reload1.c, stmt.c, targhooks.c, tree-ssa-loop-prefetch.c,
- tree-ssa-math-opts.c, tree-vect-data-refs.c, tree-vect-generic.c,
- tree-vect-loop.c, tree-vect-patterns.c, tree-vect-slp.c,
- tree-vect-stmts.c, config/m32c/m32c.c, config/rs6000/rs6000.c,
- config/spu/spu.c: Likewise.
-
-2010-07-04 Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR target/44531
- * config.gcc (sh*-*-*): Use regular expressions instead of
- the 'i' modifier for sed substitutions.
-
-2010-07-04 Jeremie Salvucci <jeremie.salvucci@free.fr>
-
- * gimple.c (gimple_body): Comments added.
-
-2010-07-04 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44809
- * gimplify.c (gimplify_expr): Properly build a MEM_REF instead
- of an INDIRECT_REF.
-
-2010-07-04 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44479
- * tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Avoid
- extra SSA name copy statements which preserves points-to
- information.
- * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
- Copy points-to information for all pointers. Properly handle
- MEM_REFs.
- (vect_create_data_ref_ptr): Likewise. Avoid extra SSA name
- copy statements.
- * Makefile.in (tree-ssa-loop-ivopts.o): Add tree-ssa-propagate.h
- dependency.
-
-2010-07-04 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44785
- * tree-inline.c (initialize_inlined_parameters): Do not
- re-use pointer-map slot over remap_type call.
-
-2010-07-04 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-sccvn.c (vn_reference_lookup_3): Fix last commit.
-
-2010-07-04 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44656
- * tree-ssa-sccvn.c (vn_reference_lookup_3): Try disambiguation
- again after value-replacing in the defintions lhs.
-
-2010-07-04 Ira Rosen <irar@il.ibm.com>
- Revital Eres <eres@il.ibm.com>
-
- * doc/tm.texi.in (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST):
- Document new arguments.
- * doc/tm.texi: Regenerate.
- * targhooks.c (default_builtin_vectorization_cost): Add new arguments.
- Handle unaligned store.
- * targhooks.h (default_builtin_vectorization_cost): Add new arguments.
- * target.def (builtin_vectorization_cost): Add new arguments.
- * target.h (enum vect_cost_for_stmt): Add unaligned_store.
- * tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Take number
- of iterations of prolog loop directly from LOOP_PEELING_FOR_ALIGNMENT.
- (vect_vfa_segment_size): Fix indentation.
- * tree-vectorizer.h (struct _vect_peel_info): New.
- (struct _vect_peel_extended_info): New.
- (struct _loop_vec_info): Add new field for peeling hash table and a
- macro for its access.
- (VECT_MAX_COST): Define.
- (vect_get_load_cost): Declare.
- (vect_get_store_cost, vect_get_known_peeling_cost,
- vect_get_single_scalar_iteraion_cost): Likewise.
- (vect_supportable_dr_alignment): Add new argument.
- * tree-vect-loop.c (new_loop_vec_info): Initialize peeling hash table
- field.
- (destroy_loop_vec_info): Free peeling hash table.
- (vect_analyze_loop_form): Update call to builtin_vectorization_cost.
- (vect_analyze_loop): Move vect_enhance_data_refs_alignment before
- vect_analyze_slp. Fix indentation.
- (vect_get_single_scalar_iteraion_cost): New function.
- (vect_get_known_peeling_cost): Likewise.
- (vect_estimate_min_profitable_iters): Rename byte_misalign to npeel.
- Call vect_get_single_scalar_iteraion_cost instead of cost_for_stmt per
- statement. Move outside cost calculation inside unknown peeling case.
- Call vect_get_known_peeling_cost for known amount of peeling.
- * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Add data
- reference to the print message of forced alignment.
- (vect_verify_datarefs_alignment): Update call to
- vect_supportable_dr_alignment.
- (vect_get_data_access_cost): New function.
- (vect_peeling_hash, vect_peeling_hash_eq, vect_peeling_hash_insert,
- vect_peeling_hash_get_most_frequent, vect_peeling_hash_get_lowest_cost,
- vect_peeling_hash_choose_best_peeling): Likewise.
- (vect_enhance_data_refs_alignment): Fix documentation. Use hash table
- to store all the accesses in the loop and find best possible access to
- align using peeling for known alignment case. For unknown alignment
- check if stores are preferred or if peeling is worthy.
- (vect_find_same_alignment_drs): Analyze pairs of loads too.
- (vect_supportable_dr_alignment): Add new argument and check aligned
- accesses according to it.
- * tree-vect-stmts.c (vect_get_stmt_cost): New function.
- (cost_for_stmt): Call vect_get_stmt_cost.
- (vect_model_simple_cost): Likewise.
- (vect_model_store_cost): Call vect_get_stmt_cost. Call
- vect_get_store_cost to calculate the cost of the statement.
- (vect_get_store_cost): New function.
- (vect_model_load_cost): Call vect_get_stmt_cost. Call
- vect_get_load_cost to calculate the cost of the statement.
- (vect_get_load_cost): New function.
- (vectorizable_store): Update call to vect_supportable_dr_alignment.
- (vectorizable_load): Likewise.
- * config/spu/spu.c (spu_builtin_vectorization_cost): Add new arguments.
- * config/i386/i386.c (ix86_builtin_vectorization_cost): Add new
- arguments. Handle unaligned store.
- * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): New.
- (rs6000_builtin_support_vector_misalignment): Return true for word and
- double word alignments for VSX.
- * tree-vect-slp.c (vect_build_slp_tree): Update calls to
- vect_supportable_dr_alignment and builtin_vectorization_cost.
-
-2010-07-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/44597
- * config/pa/predicates.md (prefetch_cc_operand): Remove.
- (prefetch_nocc_operand): Likewise.
- * config/pa/pa.md (prefetch): Revise expander to use prefetch_20.
- (prefetch_20): New insn.
- (prefetch_cc): Remove.
- (prefetch_nocc): Likewise.
-
-2010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * expr.c (vector_mode_valid_p): Move to c-common.c.
- * expr.h (vector_mode_valid_p): Do not declare here.
- * system.h: Poison GCC_EXPR_H in front-ends.
- * Makefile.in: Update dependencies.
-
-2010-07-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/44705
- * config/pa/pa.h (GO_IF_LEGITIMATE_ADDRESS): Reject LABEL_REF.
-
-2010-07-03 Jan Hubicka <jh@suse.cz>
-
- * timevar.def (TV_OUT_OF_SSA, TV_VAR_EXPAND, TV_POST_EXPAND,
- TV_VAR_TRACKING_DATAFLOW, TV_VAR_TRACKING_EMIT): New timevars.
- * cfgexpand.c (gimple_expand_cfg): Use new timevars.
- * var-tracking.c (vt_find_locations, variable_tracking_main_1):
- Likewise.
-
- * lto-stramer-out.c (pass_ipa_lto_gimple_out, pass_ipa_lto_finish_out):
- Update timevars.V
- * timevar.def (TV_IPA_LTO_GIMPLE_IO, TV_IPA_LTO_DECL_IO): Remove.
- (TV_IPA_LTO_GIMPLE_IN, TV_IPA_LTO_GIMPLE_OUT, TV_IPA_LTO_DECL_IN,
- TV_IPA_LTO_DECL_OUT): New.
- * lto.c (read_cgraph_and_symbols, materialize_cgraph): Update timevars.
-
-2010-07-03 Jan Hubicka <jh@suse.cz>
-
- * ipa-inline.c (update_edge_key): Break out from ...
- update_callers_keys): ... here;
- (update_callee_keys): Update only the edges from caller to callee.
- (update_all_calle_keys): Do what update_calle_keys did.
- (decide_inlining_of_small_functions): Avoid recomputing of all
- callees when badness increase.
-
-2010-07-03 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/arm.c (arm_attr_length_move_neon): New.
- * config/arm/arm-protos.h (arm_attr_length_move_neon): Declare.
- * config/arm/neon.md (define_mode_attr V_slen): Remove.
- (neon_mov<mode> for VSTRUCT): Use arm_attr_length_move_neon
- to compute length attribute.
-
-2010-07-03 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/vfp.md (*push_multi_vfp): Use vfp_register_operand
- as predicate for operand 1 and remove its constraint.
- * config/arm/predicates.md (vfp_register_operand): New.
- * config/arm/arm.md (*push_multi): Remove the constraint of operand 1.
- (*push_fp_multi): Likewise.
-
-2010-07-03 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimplify.c (mostly_copy_tree_r): Deal with BIND_EXPR.
-
-2010-07-03 Jan Hubicka <jh@suse.cz>
-
- * config/i386/i386.c (override_options): Revert accidental commit.
-
-2010-07-02 Le-Chun Wu <lcwu@google.com>
-
- PR c++/44128
- * doc/invoke.texi: Update documentation of -Wshadow.
-
-2010-07-02 Daniel Jacobowitz <dan@codesourcery.com>
- Julian Brown <julian@codesourcery.com>
- Sandra Loosemore <sandra@codesourcery.com>
-
- * config/arm/arm.c (arm_canonicalize_comparison): Canonicalize DImode
- comparisons. Adjust to take both operands.
- (arm_select_cc_mode): Handle DImode comparisons.
- (arm_gen_compare_reg): Generate a scratch register for DImode
- comparisons which require one. Use xor for Thumb equality checks.
- (arm_const_double_by_immediates): New.
- (arm_print_operand): Allow 'Q' and 'R' for constants.
- (get_arm_condition_code): Handle new CC_CZmode and CC_NCVmode.
- * config/arm/arm.h (CANONICALIZE_COMPARISON): Always use
- arm_canonicalize_comparison.
- * config/arm/arm-modes.def: Add CC_CZmode and CC_NCVmode.
- * config/arm/arm-protos.h (arm_canonicalize_comparison): Update
- prototype.
- (arm_const_double_by_immediates): Declare.
- * config/arm/constraints.md (Di): New constraint.
- * config/arm/predicates.md (arm_immediate_di_operand)
- (arm_di_operand, cmpdi_operand): New.
- * config/arm/arm.md (cbranchdi4): Handle non-Cirrus also.
- (*arm_cmpdi_insn, *arm_cmpdi_unsigned)
- (*arm_cmpdi_zero, *thumb_cmpdi_zero): New insns.
- (cstoredi4): Handle non-Cirrus also.
-
-2010-07-02 Julian Brown <julian@codesourcery.com>
- Sandra Loosemore <sandra@codesourcery.com>
-
- PR target/43703
- * config/arm/vec-common.md (add<mode>3, sub<mode>3, smin<mode>3)
- (smax<mode>3): Disable for NEON float modes when
- flag_unsafe_math_optimizations is false.
- * config/arm/neon.md (*add<mode>3_neon, *sub<mode>3_neon)
- (*mul<mode>3_neon)
- (mul<mode>3add<mode>_neon, mul<mode>3neg<mode>add<mode>_neon)
- (reduc_splus_<mode>, reduc_smin_<mode>, reduc_smax_<mode>): Disable
- for NEON float modes when flag_unsafe_math_optimizations is false.
- (quad_halves_<code>v4sf): Only enable if
- flag_unsafe_math_optimizations is true.
- * doc/invoke.texi (ARM Options): Add note about floating point
- vectorization requiring -funsafe-math-optimizations.
-
-2010-07-02 Sandra Loosemore <sandra@codesourcery.com>
- Julian Brown <julian@codesourcery.com>
-
- * config/arm/neon.md (UNSPEC_VABA): Delete.
- (UNSPEC_VABAL): Delete.
- (UNSPEC_VABS): Delete.
- (UNSPEC_VMUL_N): Delete.
- (adddi3_neon): New.
- (subdi3_neon): New.
- (mul<mode>3add<mode>_neon): Make the pattern named.
- (mul<mode>3neg<mode>add<mode>_neon): Likewise.
- (neon_vadd<mode>): Replace with define_expand, and move the remaining
- unspec parts...
- (neon_vadd<mode>_unspec): ...to this.
- (neon_vmla<mode>, neon_vmla<mode>_unspec): Likewise.
- (neon_vlms<mode>, neon_vmls<mode>_unspec): Likewise.
- (neon_vsub<mode>, neon_vsub<mode>_unspec): Likewise.
- (neon_vaba<mode>): Rewrite in terms of vabd.
- (neon_vabal<mode>): Rewrite in terms of vabdl.
- (neon_vabs<mode>): Rewrite without unspec.
- * config/arm/arm.md (*arm_adddi3): Disable for TARGET_NEON.
- (*arm_subdi3): Likewise.
- * config/arm/neon.ml (Vadd, Vsub): Split out 64-bit variants and add
- No_op attribute to disable assembly output checks.
- * config/arm/arm_neon.h: Regenerated.
- * doc/arm-neon-intrinsics.texi: Regenerated.
-
-2010-07-02 Jan Hubicka <jh@suse.cz>
-
- * ipa-split.c (split_function): For aggregate values, set the return
- slot optimization bit. When passing DECL_BY_REFERENCE, produce
- *<retval> = fncall.part ().
- (execute_split_functions): Do not care about DECL_BY_REFERENCE.
-
-2010-07-02 Sandra Loosemore <sandra@codesourcery.com>
-
- * config/arm/neon.md (UNSPEC_VAND): Delete.
- (UNSPEC_VBIC): Delete.
- (UNSPEC_VCLZ): Delete.
- (UNSPEC_VCNT): Delete.
- (UNSPEC_VEOR): Delete.
- (UNSPEC_VORN): Delete.
- (UNSPEC_VORR): Delete.
- (iordi3_neon): Rewrite RTL without unspec. Add alternatives to handle
- core registers too.
- (anddi3_neon): Likewise.
- (orndi3_neon): Likewise.
- (bicdi3_neon): Likewise.
- (xordi3_neon): Likewise.
- (neon_vclz<mode>): Rewrite as define_expand and clz<mode>2 to get
- rid of unspec and handle unused operand.
- (neon_vcnt<mode>): Similarly, with popcount<mode>2.
- * config/arm/predicates.md (imm_for_neon_logic_operand):
- Require TARGET_NEON.
- (imm_for_neon_inv_logic_operand): Likewise.
- * config/arm/arm.md (define_split for logical_binary_operator):
- Disable for NEON registers.
- (anddi3): Add new define_expand, and rename the insn. Disable
- this insn for NEON, where anddi3_neon now applies.
- (*anddi_notdi_di): Disable for TARGET_NEON, where bicdi3_neon applies.
- (iordi3): As for anddi3.
- (xordi3): Likewise.
- * config/arm/neon.ml (Vand): Split DImode variants and mark them
- as No_op to disable testing for exact instruction match.
- (Vorr): Likewise.
- (Veor): Likewise.
- (Vbic): Likewise.
- (Vorn): Likewise.
- * config/arm/arm_neon.h: Regenerated.
- * doc/arm-neon-intrinsics.texi: Regenerated.
-
-2010-07-02 Eric Botcazou <ebotcazou@adacore.com>
-
- * expr.h (emit_stack_probe): Declare.
- * explow.c (emit_stack_probe): Make global.
- (anti_adjust_stack_and_probe): Fix comments.
- * config/sparc/linux.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.
- * config/sparc/linux64.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
- * config/sparc/sol2.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
- * config/sparc/sparc.c: Include except.h.
- (sparc_emit_probe_stack_range): New function.
- (output_probe_stack_range): Likewise.
- (sparc_expand_prologue): Invoke sparc_emit_probe_stack_range if static
- built-in stack checking is enabled.
- * config/sparc/sparc-protos.h (output_probe_stack_range): Declare.
- * config/sparc/sparc.md (UNSPECV_PROBE_STACK_RANGE): New constant.
- (probe_stack_range): New insn.
-
-2010-07-02 Richard Guenther <rguenther@suse.de>
-
- PR target/43958
- * config/pa/pa.c (hppa_gimplify_va_arg_expr): Use pointer arithmetic
- for argument alignment.
-
-2010-07-02 Jan Hubicka <jh@suse.cz>
-
- * ipa-split.c (verify_non_ssa_vars): Break out from ...; perform DFS
- walk backwards from entry_bb to check only those basic block of header
- that might lead to execution of split part.
- (consider_split) ... here.
- (find_return_bb): Allow assignment in return BB.
- (find_retval): New.
- (split_function): Fix name of cloned function; take care of updating
- return value in return_bb containing move.
-
-2010-07-02 Andreas Schwab <schwab@linux-m68k.org>
-
- PR target/44771
- * config/m68k/m68k.c (m68k_expand_prologue): Remove set but not
- used variable insn.
-
-2010-07-02 Eric Botcazou <ebotcazou@adacore.com>
-
- * implicit-zee.c (combine_reaching_defs): Fix long lines.
- (is_set_with_extension_DI): Delete.
- (struct zero_extend_info): New structure.
- (add_removable_zero_extend): New function.
- (find_removable_zero_extends): Use note_stores to find SETs.
- (find_and_remove_ze): Fix long line, remove superfluous parentheses.
-
-2010-07-02 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (compute_miss_rate): Rename to
- is_miss_rate_acceptable. Pull total_positions computation
- out of the loops. Early return if miss_positions exceeds
- the acceptable threshold.
- * tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Call
- is_miss_rate_acceptable after renaming of compute_miss_rate.
-
-2010-07-02 Changpeng Fang <changpeng.fang@amd.com>
-
- PR middle-end/44576
- * tree-ssa-loop-prefetch.c (compute_miss_rate): Return 1000 (out
- of 1000) for miss rate if the address diference is greater than or
- equal to the cache line size (the two reference will never hit the
- same cache line).
-
-2010-07-02 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/42835
- * config/arm/arm-modes.def (CC_NOTB): New mode.
- * config/arm/arm.c (get_arm_condition_code): Handle it.
- * config/arm/thumb2.md (thumb2_compare_scc): Delete pattern.
- * config/arm/arm.md (subsi3_compare0_c): New pattern.
- (compare_scc): Now a define_and_split. Add a number of extra
- splitters before it.
-
- PR target/42172
- * config/arm/arm.c (thumb1_rtx_costs): Improve support for SIGN_EXTEND
- and ZERO_EXTEND.
- (arm_rtx_costs_1): Likewise.
- (arm_size_rtx_costs): Use arm_rtx_costs_1 for these codes.
- * config/arm/arm.md (is_arch6): New attribute.
- (zero_extendhisi2, zero_extendqisi2, extendhisi2,
- extendqisi2): Tighten the code somewhat, avoiding invalid
- RTL to occur in the expander patterns.
- (thumb1_zero_extendhisi2): Merge with thumb1_zero_extendhisi2_v6.
- (thumb1_zero_extendhisi2_v6): Delete.
- (thumb1_extendhisi2): Merge with thumb1_extendhisi2_v6.
- (thumb1_extendhisi2_v6): Delete.
- (thumb1_extendqisi2): Merge with thumb1_extendhisi2_v6.
- (thumb1_extendqisi2_v6): Delete.
- (zero_extendhisi2 for register input splitter): New.
- (zero_extendqisi2 for register input splitter): New.
- (thumb1_extendhisi2 for register input splitter): New.
- (extendhisi2 for register input splitter): New.
- (extendqisi2 for register input splitter): New.
- (TARGET_THUMB1 extendqisi2 for memory input splitter): New.
- (arm_zero_extendhisi2): Allow nonimmediate_operand for operand 1,
- and add support for a register alternative requiring a split.
- (thumb1_zero_extendqisi2): Likewise.
- (arm_zero_extendqisi2): Likewise.
- (arm_extendhisi2): Likewise.
- (arm_extendqisi2): Likewise.
-
-2010-07-02 Sandra Loosemore <sandra@codesourcery.com>
-
- * config/arm/arm.c (neon_vdup_constant): Expand into canonical RTL
- instead of an unspec.
- (neon_expand_vector_init): Likewise.
- * config/arm/neon.md (UNSPEC_VCOMBINE): Delete.
- (UNSPEC_VDUP_LANE): Delete.
- (UNSPEC VDUP_N): Delete.
- (UNSPEC_VGET_HIGH): Delete.
- (UNSPEC_VGET_LANE): Delete.
- (UNSPEC_VGET_LOW): Delete.
- (UNSPEC_VMVN): Delete.
- (UNSPEC_VSET_LANE): Delete.
- (V_double_vector_mode): New.
- (vec_set<mode>_internal): Make code emitted match that for the
- corresponding intrinsics.
- (vec_setv2di_internal): Likewise.
- (neon_vget_lanedi): Rewrite to expand into emit_move_insn.
- (neon_vget_lanev2di): Rewrite to expand into vec_extractv2di.
- (neon_vset_lane<mode>): Combine double and quad patterns and
- expand into vec_set<mode>_internal instead of UNSPEC_VSET_LANE.
- (neon_vset_lanedi): Rewrite to expand into emit_move_insn.
- (neon_vdup_n<mode>): Rewrite RTL without unspec.
- (neon_vdup_ndi): Rewrite as define_expand and use emit_move_insn.
- (neon_vdup_nv2di): Rewrite RTL without unspec and merge with
- with neon_vdup_lanev2di, adjusting the pattern from the latter
- to be predicable for consistency.
- (neon_vdup_lane<mode>_internal): New.
- (neon_vdup_lane<mode>): Turn into a define_expand and rewrite
- to avoid using an unspec.
- (neon_vdup_lanedi): Rewrite RTL pattern to avoid unspec.
- (neon_vdup_lanev2di): Turn into a define_expand.
- (neon_vcombine): Rewrite pattern to eliminate UNPSEC_VCOMBINE.
- (neon_vget_high<mode>): Replace with....
- (neon_vget_highv16qi): New pattern using canonical RTL.
- (neon_vget_highv8hi): Likewise.
- (neon_vget_highv4si): Likewise.
- (neon_vget_highv4sf): Likewise.
- (neon_vget_highv2di): Likewise.
- (neon_vget_low<mode>): Replace with....
- (neon_vget_lowv16qi): New pattern using canonical RTL.
- (neon_vget_lowv8hi): Likewise.
- (neon_vget_lowv4si): Likewise.
- (neon_vget_lowv4sf): Likewise.
- (neon_vget_lowv2di): Likewise.
-
- * config/arm/neon.ml (Vget_lane): Add No_op attribute to suppress
- test for this emitting vmov.
- (Vset_lane): Likewise.
- (Vdup_n): Likewise.
- (Vmov_n): Likewise.
-
- * doc/arm-neon-intrinsics.texi: Regenerated.
-
-2010-07-02 Sandra Loosemore <sandra@codesourcery.com>
-
- * config/arm/neon.md (vec_extractv2di): Correct error in register
- numbering to reconcile with neon_vget_lanev2di.
-
-2010-07-02 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (pt_solution_set_var): New function.
- * tree-ssa-alias.h (pt_solution_set_var): Declare.
- * tree-ssa-loop-ivopts.c (copy_ref_info): Also copy or create
- points-to information.
-
-2010-07-02 Christian Borntraeger <borntraeger@de.ibm.com>
-
- * config/s390/s390.c (override_options): Adopt prefetching
- at -O3 to handle flag_prefetch_loop_arrays as a tristate.
-
-2010-07-02 Jan Hubicka <jh@suse.cz>
-
- * df-problems.c (df_kill_notes): Do not collect dead notes.
- (df_set_note): Just call add_reg_note.
- (df_set_unused_notes_for_mw, df_set_dead_notes_for_mw,
- df_create_unused_note): Do not deal with lists of old notes.
- (df_note_bb_compute): Likewise.
-
-2010-07-02 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (find_func_aliases): Handle
- pointer alignment via BIT_AND_EXPR.
- * tree-vrp.c (extract_range_from_binary_expr): Likewise.
-
-2010-07-02 Richard Guenther <rguenther@suse.de>
-
- * tree-data-ref.c (initialize_data_dependence_relation): Handle
- mismatching number of dimensions properly.
-
-2010-07-02 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- PR target/44707
- * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Recognize
- (lo_sum (high ...) ...) patterns generated by earlier passes.
-
-2010-07-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/install.texi (Prerequisites): Document Perl requirement on
- Solaris 2.
- (Specific, *-*-solaris2*): Document GNU c++filt requirement.
-
-2010-07-02 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44777
- * tree-cfg.c (gimple_block_ends_with_call_p): Handle empty BBs.
-
-2010-07-02 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44706
- * predict.c (predict_paths_for_bb): Handle case when control dependence
- BB has only abnormal edges.
-
-2010-07-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44748
- * tree-ssa-ccp.c (fold_const_aggregate_ref): Properly handle
- the embedded conversion in MEM_REFs.
-
-2010-07-01 López-Ibáñez <manu@gcc.gnu.org>
-
- * reload.c: Include toplev.h.
- * recog.c: Likewise.
- * Makefile.in: Adjust dependencies.
-
-2010-07-01 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44694
- * dwarf2out.c (reg_loc_descriptor): For eliminated arg_pointer_rtx
- or frame_pointer_rtx use DW_OP_fbreg offset DW_OP_stack_value.
-
-2010-07-01 Richard Guenther <rguenther@suse.de>
-
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Use unsigned
- types for offsets.
-
-2010-07-01 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR target/44732
- * config/ia64/ia64.c (ia64_register_move_cost): Remove stray '{'.
- Fix argument types.
-
-2010-07-01 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/44727
- * config/i386/i386.md (peephole2 for arithmetic ops with memory):
- Make sure operand 0 dies.
-
-2010-07-01 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42834
- PR middle-end/44468
- * doc/gimple.texi (is_gimple_mem_ref_addr): Document.
- * doc/generic.texi (References to storage): Document MEM_REF.
- * tree-pretty-print.c (dump_generic_node): Handle MEM_REF.
- (print_call_name): Likewise.
- * tree.c (recompute_tree_invariant_for_addr_expr): Handle MEM_REF.
- (build_simple_mem_ref_loc): New function.
- (mem_ref_offset): Likewise.
- * tree.h (build_simple_mem_ref_loc): Declare.
- (build_simple_mem_ref): Define.
- (mem_ref_offset): Declare.
- * fold-const.c: Include tree-flow.h.
- (operand_equal_p): Handle MEM_REF.
- (build_fold_addr_expr_with_type_loc): Likewise.
- (fold_comparison): Likewise.
- (fold_unary_loc): Fold
- VIEW_CONVERT_EXPR <T1, MEM_REF <T2, ...>> to MEM_REF <T1, ...>.
- (fold_binary_loc): Fold MEM[&MEM[p, CST1], CST2] to MEM[p, CST1 + CST2],
- fold MEM[&a.b, CST2] to MEM[&a, offsetof (a, b) + CST2].
- * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Handle MEM_REF.
- (ptr_deref_may_alias_ref_p_1): Likewise.
- (ao_ref_base_alias_set): Properly differentiate base object for
- offset and TBAA.
- (ao_ref_init_from_ptr_and_size): Use MEM_REF.
- (indirect_ref_may_alias_decl_p): Handle MEM_REFs properly.
- (indirect_refs_may_alias_p): Likewise.
- (refs_may_alias_p_1): Likewise. Remove pointer SSA name def
- chasing code.
- (ref_maybe_used_by_call_p_1): Handle MEM_REF.
- (call_may_clobber_ref_p_1): Likewise.
- * dwarf2out.c (loc_list_from_tree): Handle MEM_REF.
- * expr.c (expand_assignment): Handle MEM_REF.
- (store_expr): Handle MEM_REFs from STRING_CSTs.
- (store_field): If expanding a MEM_REF of a non-addressable
- decl use bitfield operations.
- (get_inner_reference): Handle MEM_REF.
- (expand_expr_addr_expr_1): Likewise.
- (expand_expr_real_1): Likewise.
- * tree-eh.c (tree_could_trap_p): Handle MEM_REF.
- * alias.c (ao_ref_from_mem): Handle MEM_REF.
- (get_alias_set): Likewise. Properly handle VIEW_CONVERT_EXPRs.
- * tree-data-ref.c (dr_analyze_innermost): Handle MEM_REF.
- (dr_analyze_indices): Likewise.
- (dr_analyze_alias): Likewise.
- (object_address_invariant_in_loop_p): Likewise.
- * gimplify.c (mark_addressable): Handle MEM_REF.
- (gimplify_cond_expr): Build MEM_REFs.
- (gimplify_modify_expr_to_memcpy): Likewise.
- (gimplify_init_ctor_preeval_1): Handle MEM_REF.
- (gimple_fold_indirect_ref): Adjust.
- (gimplify_expr): Handle MEM_REF. Gimplify INDIRECT_REF to MEM_REF.
- * tree.def (MEM_REF): New tree code.
- * tree-dfa.c: Include toplev.h.
- (get_ref_base_and_extent): Handle MEM_REF.
- (get_addr_base_and_unit_offset): New function.
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Handle MEM_REF.
- * gimple-fold.c (may_propagate_address_into_dereference): Handle
- MEM_REF.
- (maybe_fold_offset_to_array_ref): Allow possibly out-of bounds
- accesses if the array has just one dimension. Remove always true
- parameter. Do not require type compatibility here.
- (maybe_fold_offset_to_component_ref): Remove.
- (maybe_fold_stmt_indirect): Remove.
- (maybe_fold_reference): Remove INDIRECT_REF handling.
- Fold back to non-MEM_REF.
- (maybe_fold_offset_to_address): Simplify. Deal with type
- mismatches here.
- (maybe_fold_reference): Likewise.
- (maybe_fold_stmt_addition): Likewise. Also handle
- &ARRAY + I in addition to &ARRAY[0] + I.
- (fold_gimple_assign): Handle ADDR_EXPR of MEM_REFs.
- (gimple_get_relevant_ref_binfo): Handle MEM_REF.
- * cfgexpand.c (expand_debug_expr): Handle MEM_REF.
- * tree-ssa.c (useless_type_conversion_p): Make most pointer
- conversions useless.
- (warn_uninitialized_var): Handle MEM_REF.
- (maybe_rewrite_mem_ref_base): New function.
- (execute_update_addresses_taken): Implement re-writing of MEM_REFs
- to SSA form.
- * tree-inline.c (remap_gimple_op_r): Handle MEM_REF, remove
- INDIRECT_REF handling.
- (copy_tree_body_r): Handle MEM_REF.
- * gimple.c (is_gimple_addressable): Adjust.
- (is_gimple_address): Likewise.
- (is_gimple_invariant_address): ADDR_EXPRs of MEM_REFs with
- invariant base are invariant.
- (is_gimple_min_lval): Adjust.
- (is_gimple_mem_ref_addr): New function.
- (get_base_address): Handle MEM_REF.
- (count_ptr_derefs): Likewise.
- (get_base_loadstore): Likewise.
- * gimple.h (is_gimple_mem_ref_addr): Declare.
- (gimple_call_fndecl): Handle invariant MEM_REF addresses.
- * tree-cfg.c (verify_address): New function, split out from ...
- (verify_expr): ... here. Use for verifying ADDR_EXPRs and
- the address operand of MEM_REFs. Verify MEM_REFs. Reject
- INDIRECT_REFs.
- (verify_types_in_gimple_min_lval): Handle MEM_REF. Disallow
- INDIRECT_REF. Allow conversions.
- (verify_types_in_gimple_reference): Verify VIEW_CONVERT_EXPR of
- a register does not change its size.
- (verify_types_in_gimple_reference): Verify MEM_REF.
- (verify_gimple_assign_single): Disallow INDIRECT_REF.
- Handle MEM_REF.
- * tree-ssa-operands.c (opf_non_addressable, opf_not_non_addressable):
- New.
- (mark_address_taken): Handle MEM_REF.
- (get_indirect_ref_operands): Pass through opf_not_non_addressable.
- (get_asm_expr_operands): Pass opf_not_non_addressable.
- (get_expr_operands): Handle opf_[not_]non_addressable.
- Handle MEM_REF. Remove INDIRECT_REF handling.
- * tree-vrp.c (check_array_ref): Handle MEM_REF.
- (search_for_addr_array): Likewise.
- (check_array_bounds): Likewise.
- (vrp_stmt_computes_nonzero): Adjust for MEM_REF.
- * tree-ssa-loop-im.c (for_each_index): Handle MEM_REF.
- (ref_always_accessed_p): Likewise.
- (gen_lsm_tmp_name): Likewise. Handle ADDR_EXPR.
- * tree-complex.c (extract_component): Do not handle INDIRECT_REF.
- Handle MEM_REF.
- * cgraphbuild.c (mark_load): Properly check for NULL result
- from get_base_address.
- (mark_store): Likewise.
- * tree-ssa-loop-niter.c (array_at_struct_end_p): Handle MEM_REF.
- * tree-loop-distribution.c (generate_builtin): Exchange INDIRECT_REF
- handling for MEM_REF.
- * tree-scalar-evolution.c (follow_ssa_edge_expr): Handle
- &MEM[ptr + CST] similar to POINTER_PLUS_EXPR.
- * builtins.c (stabilize_va_list_loc): Use the function ABI
- valist type if we couldn't canonicalize the argument type.
- Always dereference with the canonical va-list type.
- (maybe_emit_free_warning): Handle MEM_REF.
- (fold_builtin_memory_op): Simplify and handle MEM_REFs in folding
- memmove to memcpy.
- * builtins.c (fold_builtin_memory_op): Use ref-all types
- for all memcpy foldings.
- * omp-low.c (build_receiver_ref): Adjust for MEM_REF.
- (build_outer_var_ref): Likewise.
- (scan_omp_1_op): Likewise.
- (lower_rec_input_clauses): Likewise.
- (lower_lastprivate_clauses): Likewise.
- (lower_reduction_clauses): Likewise.
- (lower_copyprivate_clauses): Likewise.
- (expand_omp_atomic_pipeline): Likewise.
- (expand_omp_atomic_mutex): Likewise.
- (create_task_copyfn): Likewise.
- * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Handle MEM_REF.
- Remove old union trick. Initialize constant offsets.
- (ao_ref_init_from_vn_reference): Likewise. Do not handle
- INDIRECT_REF. Init base_alias_set properly.
- (vn_reference_lookup_3): Replace INDIRECT_REF handling with MEM_REF.
- (vn_reference_fold_indirect): Adjust for MEM_REFs.
- (valueize_refs): Fold MEM_REFs. Re-evaluate constant offset
- for ARRAY_REFs.
- (may_insert): Remove.
- (visit_reference_op_load): Do not test may_insert.
- (run_scc_vn): Remove parameter, do not fiddle with may_insert.
- * tree-ssa-sccvn.h (struct vn_reference_op_struct): Add
- a field to store the constant offset this op applies.
- (run_scc_vn): Adjust prototype.
- * cgraphunit.c (thunk_adjust): Adjust for MEM_REF.
- * tree-ssa-ccp.c (ccp_fold): Replace INDIRECT_REF folding with
- MEM_REF. Propagate &foo + CST as &MEM[&foo, CST]. Do not
- bother about volatile qualifiers on pointers.
- (fold_const_aggregate_ref): Handle MEM_REF, do not handle INDIRECT_REF.
- * tree-ssa-loop-ivopts.c
- * tree-ssa-loop-ivopts.c (determine_base_object): Adjust for MEM_REF.
- (strip_offset_1): Likewise.
- (find_interesting_uses_address): Replace INDIRECT_REF handling with
- MEM_REF handling.
- (get_computation_cost_at): Likewise.
- * ipa-pure-const.c (check_op): Handle MEM_REF.
- * tree-stdarg.c (check_all_va_list_escapes): Adjust for MEM_REF.
- * tree-ssa-sink.c (is_hidden_global_store): Handle MEM_REF
- and constants.
- * ipa-inline.c (likely_eliminated_by_inlining_p): Handle MEM_REF.
- * tree-parloops.c (take_address_of): Adjust for MEM_REF.
- (eliminate_local_variables_1): Likewise.
- (create_call_for_reduction_1): Likewise.
- (create_loads_for_reductions): Likewise.
- (create_loads_and_stores_for_name): Likewise.
- * matrix-reorg.c (may_flatten_matrices_1): Sanitize.
- (ssa_accessed_in_tree): Handle MEM_REF.
- (ssa_accessed_in_assign_rhs): Likewise.
- (update_type_size): Likewise.
- (analyze_accesses_for_call_stmt): Likewise.
- (analyze_accesses_for_assign_stmt): Likewise.
- (transform_access_sites): Likewise.
- (transform_allocation_sites): Likewise.
- * tree-affine.c (tree_to_aff_combination): Handle MEM_REF.
- * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Do
- not handle INDIRECT_REF.
- * tree-ssa-phiopt.c (add_or_mark_expr): Handle MEM_REF.
- (cond_store_replacement): Likewise.
- * tree-ssa-pre.c (create_component_ref_by_pieces_1): Handle
- MEM_REF, no not handle INDIRECT_REFs.
- (insert_into_preds_of_block): Properly initialize avail.
- (phi_translate_1): Fold MEM_REFs. Re-evaluate constant offset
- for ARRAY_REFs. Properly handle reference lookups that
- require a bit re-interpretation.
- (can_PRE_operation): Do not handle INDIRECT_REF. Handle MEM_REF.
- * tree-sra.c (build_access_from_expr_1): Handle MEM_REF.
- (build_ref_for_offset_1): Remove.
- (build_ref_for_offset): Build MEM_REFs.
- (gate_intra_sra): Disable for now.
- (sra_ipa_modify_expr): Handle MEM_REF.
- (ipa_early_sra_gate): Disable for now.
- * tree-sra.c (create_access): Swap INDIRECT_REF handling for
- MEM_REF handling.
- (disqualify_base_of_expr): Likewise.
- (ptr_parm_has_direct_uses): Swap INDIRECT_REF handling for
- MEM_REF handling.
- (sra_ipa_modify_expr): Remove INDIRECT_REF handling.
- Use mem_ref_offset. Remove bogus folding.
- (build_access_from_expr_1): Properly handle MEM_REF for non IPA-SRA.
- (make_fancy_name_1): Add support for MEM_REF.
- * tree-predcom.c (ref_at_iteration): Handle MEM_REFs.
- * tree-mudflap.c (mf_xform_derefs_1): Adjust for MEM_REF.
- * ipa-prop.c (compute_complex_assign_jump_func): Handle MEM_REF.
- (compute_complex_ancestor_jump_func): Likewise.
- (ipa_analyze_virtual_call_uses): Likewise.
- * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Replace
- INDIRECT_REF folding with more generalized MEM_REF folding.
- (tree_ssa_forward_propagate_single_use_vars): Adjust accordingly.
- (forward_propagate_addr_into_variable_array_index): Also handle
- &ARRAY + I in addition to &ARRAY[0] + I.
- * tree-ssa-dce.c (ref_may_be_aliased): Handle MEM_REF.
- * tree-ssa-ter.c (find_replaceable_in_bb): Avoid TER if that
- creates assignments with overlap.
- * tree-nested.c (get_static_chain): Adjust for MEM_REF.
- (get_frame_field): Likewise.
- (get_nonlocal_debug_decl): Likewise.
- (convert_nonlocal_reference_op): Likewise.
- (struct nesting_info): Add mem_refs pointer-set.
- (create_nesting_tree): Allocate it.
- (convert_local_reference_op): Insert to be folded mem-refs.
- (fold_mem_refs): New function.
- (finalize_nesting_tree_1): Perform defered folding of mem-refs
- (free_nesting_tree): Free the pointer-set.
- * tree-vect-stmts.c (vectorizable_store): Adjust for MEM_REF.
- (vectorizable_load): Likewise.
- * tree-ssa-phiprop.c (phiprop_insert_phi): Adjust for MEM_REF.
- (propagate_with_phi): Likewise.
- * tree-object-size.c (addr_object_size): Handle MEM_REFs
- instead of INDIRECT_REFs.
- (compute_object_offset): Handle MEM_REF.
- (plus_stmt_object_size): Handle MEM_REF.
- (collect_object_sizes_for): Dispatch to plus_stmt_object_size
- for &MEM_REF.
- * tree-flow.h (get_addr_base_and_unit_offset): Declare.
- (symbol_marked_for_renaming): Likewise.
- * Makefile.in (tree-dfa.o): Add $(TOPLEV_H).
- (fold-const.o): Add $(TREE_FLOW_H).
- * tree-ssa-structalias.c (get_constraint_for_1): Handle MEM_REF.
- (find_func_clobbers): Likewise.
- * ipa-struct-reorg.c (decompose_indirect_ref_acc): Handle MEM_REF.
- (decompose_access): Likewise.
- (replace_field_acc): Likewise.
- (replace_field_access_stmt): Likewise.
- (insert_new_var_in_stmt): Likewise.
- (get_stmt_accesses): Likewise.
- (reorg_structs_drive): Disable.
- * config/i386/i386.c (ix86_va_start): Adjust for MEM_REF.
- (ix86_canonical_va_list_type): Likewise.
-
-2010-06-30 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR other/44566
- * coretypes.h [!USED_FOR_TARGET] (reg_class_t): Define.
- * target.def (struct gcc_target): Replace enum reg_class with
- reg_class_t in hook argument / return types.
- * doc/tm.texi.in (TARGET_SECONDARY_RELOAD): Likewise.
- (TARGET_IRA_COVER_CLASSES, TARGET_MEMORY_MOVE_COST): Likewise.
- (TARGET_BRANCH_TARGET_REGISTER_CLASS): Likewise.
- * targhooks.h (default_branch_target_register_class): Likewise.
- (default_ira_cover_classes, default_secondary_reload): Likewise.
- (default_memory_move_cost, default_register_move_cost): Likewise.
- * targhooks.c (default_branch_target_register_class): Likewise.
- (default_ira_cover_classes, default_secondary_reload): Likewise.
- (default_memory_move_cost, default_register_move_cost): Likewise.
- * reload.c (push_secondary_reload, secondary_reload_class): Likewise.
- * bt-load.c (branch_target_load_optimize): Likewise.
- * ira.c (setup_cover_and_important_classes): Likewise.
- * ira-costs.c (copy_cost): Likewise.
- * reload1.c (emit_input_reload_insns): Likewise.
- * config/alpha/alpha.c (alpha_secondary_reload): Likewise.
- * config/frv/frv.c (frv_secondary_reload): Likewise.
- * config/s390/s390.c (s390_secondary_reload): Likewise.
- * config/i386/i386.c (i386_ira_cover_classes): Likewise.
- (ix86_secondary_reload, ix86_memory_move_cost): Likewise.
- (ix86_register_move_cost): Likewise.
- * config/sh/sh-protos.h (sh_secondary_reload): Likewise.
- * config/sh/sh.c (sh_target_reg_class, sh_secondary_reload): Likewise.
- * config/xtensa/xtensa.c (xtensa_secondary_reload): Likewise.
- * config/xtensa/xtensa-protos.h (xtensa_secondary_reload): Likewise.
- * config/rs6000/rs6000.c (rs6000_secondary_reload): Likewise.
- (rs6000_ira_cover_classes): Likewise.
- * config/picochip/picochip.c (picochip_secondary_reload): Likewise.
- * config/picochip/picochip-protos.h (picochip_secondary_reload):
- Likewise.
- * config/pa/pa.c (pa_secondary_reload): Likewise.
- * config/mips/mips.c (mips_ira_cover_classes): Likewise.
- * config/bfin/bfin.c (bfin_secondary_reload): Likewise.
- * config/ia64/ia64.c (ia64_register_move_cost): Likewise.
- * doc/tm.texi: Regenerate.
-
-2010-06-30 Sebastian Pop <sebastian.pop@amd.com>
-
- PR bootstrrap/44726
- * graphite-sese-to-poly.c (build_poly_dr): Avoid uninitialized
- use.
- (build_alias_set_optimal_p): Likewise.
- (build_base_obj_set_for_drs): Likewise.
-
-2010-06-30 Joern Rennecke <joern.rennecke@embecosm.com>
-
- * target.def: Remove comment about licensing problems of function
- declarations.
-
- * target.def (declare_constant_name): Change exp to expr. Use DEFHOOK.
- * doc/tm.texi.in (TARGET_ASM_DECLARE_CONSTANT_NAME): Use @hook.
- * doc/tm.texi: Regenerate.
-
- * target.def (builtin_reciprocal): Change tm_fn to md_fn. Use DEFHOOK.
- * doc/tm.texi.in (TARGET_BUILTIN_RECIPROCAL): Use @hook.
-
- * target.def (enum_va_list_p): Use DEFHOOK.
- * doc/tm.texi.in (TARGET_ENUM_VA_LIST_P): Use @hook.
- Rename ptype to ptree.
- * doc/tm.texi: Regenerate.
-
- * target.def (fold_builtin): Rename nargs to n_args. Use DEFHOOK.
- * doc/tm.texi.in (TARGET_FOLD_BUILTIN): Use @hook.
- * doc/tm.texi: Regenerate.
-
- * target.def (memory_move_cost): Use DEFHOOK.
- * doc/tm.texi.in (TARGET_MEMORY_MOVE_COST): Use @hook.
- Rename regclass AKA class to rclass.
- * doc/tm.texi: Regenerate.
-
- * target.def (pragma_parse): Use DEFHOOK.
- * doc/tm.texi.in (TARGET_OPTION_PRAGMA_PARSE): Use @hook.
- s/TARGET_VALID_OPTION_ATTRIBUTE_P/TARGET_OPTION_VALID_ATRIBUTE_P/ .
- * doc/tm.texi: Regenerate.
-
- * target.def (pass_by_reference): Use DEFHOOK.
- * doc/tm.texi.in (TARGET_PASS_BY_REFERENCE): Use @hook.
- * doc/tm.texi: Regenerate.
-
- * target.def (resolve_overloaded_builtin): Rename params to arglist.
- Use DEFHOOK.
- * doc/tm.texi.in (TARGET_RESOLVE_OVERLOADED_BUILTIN): Use @hook.
- * doc/tm.texi: Regenerate.
-
- * target.def (return_pops_args): Use DEFHOOK.
- * doc/tm.texi.in (TARGET_RETURN_POPS_ARGS): Use @hook.
- Rename stack-size to size.
- * doc/tm.texi: Regenerate.
-
- * target.def (dfa_new_cycle): Use DEFHOOK. Rename dump_file to dump,
- last-sched_cycle to last_clock, cur_cycle to clock.
- * doc/tm.texi.in: Use @hook.
- * doc/tm.texi: Regenerate.
-
- * target.def (print_operand, print_operand_address): Update comment.
- (print_operand_punct_valid_p): Likewise.
-
-2010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * toplev.h (_fatal_insn_not_found, _fatal_insn): Move declarations
- to rtl.h.
- (error_for_asm, warning_for_asm): Move declarations to rtl-error.h.
- * rtl.h (_fatal_insn_not_found, _fatal_insn): Move declarations here.
- * rtl-error.h: New.
- * regrename.c: Do not include toplev.h. Include rtl-error.h.
- * rtl-error.c: Likewise.
- * reload.c: Likewise.
- * recog.c: Likewise.
- * sel-sched.c: Likewise.
- * function.c: Likewise.
- * reg-stack.c: Likewise.
- * cfgrtl.c: Likewise.
- * reload1.c: Likewise.
- * final.c: Include rtl-error.
- * Makefile.in: Adjust dependencies.
-
-2010-06-30 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/PR44706
- * ipa-split (split_function): Refine conditions when to use DECL_RESULT
- to return the value.
-
-2010-06-30 Michael Matz <matz@suse.de>
-
- PR bootstrap/44699
- * tree-vrp.c (vrp_finalize): Deal with changing num_ssa_names.
- * gimple-fold.c (gimplify_and_update_call_from_tree): If LHS is
- a gimple reg, attach the original VDEF to the last store in the
- sequence.
-
-2010-06-30 Iain Sandoe <iains@gcc.gnu.org>
-
- PR other/44034
- * config/darwin.c (darwin_override_options): Use renamed
- targetm.asm_out.emit_unwind_label.
-
-2010-06-30 Bernd Schmidt <bernds@codesourcery.com>
-
- PR tree-optimization/39799
- * tree-inline.c (remap_ssa_name): Initialize variable only if
- SSA_NAME_OCCURS_IN_ABNORMAL_PHI.
-
-2010-06-30 Nathan Froyd <froydnj@codesourcery.com>
-
- * c-parser.c (c_parser_omp_for_loop): Use a VEC for for_block.
-
-2010-06-30 Richard Guenther <rguenther@suse.de>
-
- PR target/44722
- * config/i386/i386.md (peephole2 for fix:SSEMODEI24): Guard
- against oscillation with reverse peephole2.
-
-2010-06-30 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44721
- * config/i386/i386.md (peephole2 for arithmetic ops with memory):
- Fix last commit.
-
-2010-06-30 Nick Clifton <nickc@redhat.com>
-
- * config/rx/rx-modes.def: New file.
- * config/rx/rx.h (FIRST_PSEUDO_REGISTER): Increase to 17.
- (CC_REGNUM): Define.
- (FIXED_REGISTERS, CALL_USED_REGISTERS, REGISTER_NAMES): Add cc
- register.
- (CC_NO_CARRY, NOTICE_UPDATE_CC): Delete.
- (SELECT_CC_MODE): Define.
- * config/rx/rx.md (CC_REG): Define. Update all patterns to use
- (reg:CC CC_REG) instead of (cc0).
- (attr "cc"): Delete.
- (cbranchsi4): Do not split compare and branch here. Instead move
- it to...
- (cbranchsi4_<code>): ... here. New patterns.
- (cmpsi): Call rx-compare_redundant to find out if it is necessary
- to emit the compare instruction.
- * config/rx/rx.c (rx_gen-cond_branch_template): Remove tests of
- cc_status flags.
- (rx_get_stack_layout): Iterate up to before CC_REGNUM not
- FIRST_PSEUDO_REGNUM.
- (rx_expand_prologue, rx_expand_epilogue): Likewise.
- (rx_notice_update_cc): Delete.
- (rx_cc_modes_compatible): New function.
- (flags_needed_for_conditional): New function.
- (flags_from_mode): New function.
- (rx_compare_redundant): New function - scans backwards through
- insn list to find out if condition flags are already set correctly.
- (TARGET_CC_MODES_COMPATIBLE): Define.
- * config/rx/rx-protos.h (rx_compare_redundant): Prototype.
-
- * config/rx/rx.h (BRANCH_COST): Define.
- (REGISTER_MOVE_COST): Define.
- * config/rx/predicates (rx_source_operand): Allow all constant types.
- * config/rx/rx.md (addsi3): Add alternative for swapped operands.
- (tstsi4): New pattern.
- * config/rx/rx.c (rx_memory_move_cost): Define.
- (TARGET_MEMORY_MOVE_COST): Define.
-
-2010-06-30 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * tree.h (block_may_fallthru): Declare here.
- * tree-flow.h (block_may_fallthru): Do not declare here.
- * c-typeck.c: Do not include tree-flow.h. Include gimple.h and
- bitmap.h
- * Makefile.in (c-typeck.o): Update dependencies.
-
-2010-06-30 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44694
- * cselib.h (cselib_preserve_cfa_base_value): Add regno argument.
- * cselib.c (cfa_base_preserved_regno): New static variable.
- (cselib_reset_table): Don't reset cfa_base_preserved_regno instead
- of REGNO (cfa_base_preserved_val->locs->loc).
- (cselib_preserve_cfa_base_value): Add regno argument, set
- cfa_base_preserved_regno to it.
- (cselib_invalidate_regno): Allow removal of registers other than
- cfa_base_preserved_regno from cfa_base_preserved_val.
- (cselib_finish): Set cfa_base_preserved_regno to INVALID_REGNUM.
- * var-tracking.c (adjust_mems): Replace sp or hfp even outside
- of MEM addresses, if not on LHS.
- (reverse_op): Don't add reverse ops for cfa_base_rtx.
- (vt_init_cfa_base): Adjust cselib_preserve_cfa_base_value caller.
-
-2010-06-30 Bernd Schmidt <bernds@codesourcery.com>
-
- * recog.c (peep2_do_rebuild_jump_labels, peep2_do_cleanup_cfg): New
- static variables.
- (peep2_buf_position): New static function.
- (peep2_regno_dead_p, peep2_reg_dead_p, peep2_find_free_register,
- peephole2_optimize): Use it.
- (peep2_attempt, peep2_update_life): New static functions, broken out
- of peephole2_optimize.
- (peep2_fill_buffer): New static function.
- (peephole2_optimize): Change the main loop to try to fill the buffer
- with the maximum number of insns before matching them against
- peepholes. Use a forward scan. Remove special case for targets with
- conditional execution.
- * genrecog.c (change_state): Delete dead code.
- * config/i386/i386.md (peephole2 for arithmetic ops with memory):
- Rewrite so as not to expect the second insn to have had a peephole
- applied yet.
-
-2010-06-29 Nathan Froyd <froydnj@codesourcery.com>
-
- * genhooks.c (emit_findices): Cast field precision to int.
- (emit_documentation): Likewise.
-
-2010-06-29 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/43801
- * cgraph.c (cgraph_create_virtual_clone): Clear DECL_SECTION_NAME
- if old_decl was DECL_ONE_ONLY.
-
- PR debug/44668
- * dwarf2out.c (add_accessibility_attribute): New function.
- (gen_subprogram_die, gen_variable_die, gen_field_die): Use it
- instead of adding DW_AT_accessibility manually.
- (gen_enumeration_type_die, gen_struct_or_union_type_die,
- gen_typedef_die): Use it.
-
-2010-06-29 Douglas B Rupp <rupp@gnat.com>
-
- * vmsdbgout.c (full_name): Just output the file name if not native.
-
-2010-06-29 Douglas B Rupp <rupp@gnat.com>
-
- * vmsdbgout.c (func_table): Replace with VEC func{nam,num}_tables.
- (funcnam_table): New static table.
- (funcnum_table): New static table.
- (write_rtnbeg): Write value saved in funcnum_table.
- (write_rtnend): Write value saved in funcnum_table.
- (vmsdbgout_begin_function): Save current function info in
- (vmsdbgout_init): Initialize func{nam,num}_tables. Minor reformatting.
- (vmsdbgout_finish): Iterate over funcnum_table.
-
-2010-06-29 Douglas B Rupp <rupp@gnat.com>
-
- * vmsdbgout.c (vmsdbgout_begin_epilogue): Declare
- (vmsdbgout_type_decl): Declare
- (vmsdbg_debug_hooks): Add entry for type_decl and begin_epilogue.
- (FUNC_EPILOGUE_LABEL): New macro
- (vmsdbgout_begin_epilogue): New function.
- (vmsdbgout_type_decl): New function.
-
-2010-06-29 Douglas B Rupp <rupp@gnat.com>
-
- * vmsdbg.h: Update copyright.
-
-2010-06-29 Douglas B Rupp <rupp@gnat.com>
-
- * vmsdbg.h (DST_K_TBG): New DST constant.
- * vmsdbgout.c (addr_const_to_string): Removed, not referenced.
- (write_modbeg): Cast module_language to avoid warning.
- (write_rtnbeg): Use DST_K_TBG vice magic mystery number.
-
-2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR other/44034
- * target.def, doc/tm.texi.in, genhooks.c: New files.
- * target.h: Instead of defining individual hook members,
- define DEFHOOKPOD / DEFHOOK / DEFHOOK_UNDOC / HOOKSTRUCT and
- include target.def.
- * target-def.h: Instead of defining individual hook initializers,
- include target-hooks-def.h.
- * df-scan.c, haifa-sched.c, sel-sched.c: Rename targetm members:
- targetm.live_on_entry -> targetm.extra_live_on_entry
- targetm.sched.md_finish ->targetm.sched.finish
- targetm.sched.md_init -> targetm.sched.init
- targetm.sched.md_init_global -> targetm.sched.init_global
- targetm.asm_out.unwind_label -> targetm.asm_out.emit_unwind_label
- targetm.asm_out.except_table_label ->
- targetm.asm_out.emit_except_table_label
- targetm.asm_out.visibility -> targetm.asm_out.assemble_visibility
- targetm.target_help -> targetm.help
- targetm.vectorize.builtin_support_vector_misalignment ->
- targetm.vectorize.support_vector_misalignment
- targetm.file_start_app_off -> targetm.asm_file_start_app_off
- targetm.file_start_file_directive ->
- targetm.asm_file_start_file_directive
- * dwarf2out.c, opts.c, tree-vect-data-refs.c, except.c: Likewise.
- * varasm.c, config/alpha/alpha.c, config/cris/cris.c: Likewise.
- * config/spu/spu.c, config/ia64/ia64.c: Rename target macros:
- TARGET_VECTOR_ALIGNMENT_REACHABLE ->
- TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE
- TARGET_SUPPORT_VECTOR_MISALIGNMENT ->
- TARGET_VECTORIZE_SUPPORT_VECTOR_MISALIGNMENT
- TARGET_UNWIND_EMIT -> TARGET_ASM_UNWIND_EMIT
- * config/rs6000/rs6000.c, config/arm/arm.c: Likewise.
- * Makefile.in (TARGET_H): Depend on target.def.
- (TARGET_DEF_H): Depend on target-hooks-def.h.
- (target-hooks-def.h, tm.texi, s-target-hooks-def-h): New rules.
- (s-tm-texi, build/genhooks.o, build/genhooks): Likewise.
- * doc/tm.texi: Regenerate.
-
- * Makefile.in (s-tm-texi): Remove stray tab / rule.
-
- * config/m68k/m68k.c (targetm.sched.init_global): Update comment.
- (targetm.sched.init): Likewise.
-
-2010-06-29 Nathan Froyd <froydnj@codesourcery.com>
-
- PR bootstrap/44713
- * config/i386/i386.c (type_natural_mode): Const-ify CUM parameter.
- (function_arg_advance_32): Const-ify TYPE parameter.
- (function_arg_advance_64): Likewise. Change type of NAMED to bool.
- (ix86_function_arg_advance): Change type of NAMED to bool.
- (function_arg_32): Const-ify CUM and TYPE parameters.
- (function_arg_64): Likewise. Change type of NAMED to bool.
- (function_arg_ms_64): Const-ify CUM parameter. Change type of NAMED
- to bool.
- (ix86_function_arg): Change type of NAMED to bool.
- (ix86_setup_incoming_varargs): Call ix86_function_arg_advance. Pass
- last argument as a bool.
-
-2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
-
- * doc/tm.texi (TARGET_OPTION_OVERRIDE): Document.
- (OVERRIDE_OPTIONS): Add note of obsolescence.
- Replace references with references to TARGET_OPTION_OVERRIDE.
- (Except for C_COMMON_OVERRIDE_OPTIONS, which remains similar to
- the macro).
- * targhooks.c (default_target_option_override): New function.
- * targhooks.h (default_target_option_override): Declare.
- * target.h (struct gcc_target): Add override member to
- target_option member.
- * toplev.c (process_options): Replace OVERRIDE_OPTIONS use with
- targetm.target_option.override call.
- * target-def.h (TARGET_OPTION_OVERRIDE): Define.
- (TARGET_OPTION_HOOKS): Add TARGET_OPTION_OVERRIDE.
-
-2010-06-29 Jan Hubicka <jh@suse.cz>
-
- * tree-inline.c: Replace incomming by incomin and clonning by cloning.
-
-2010-06-29 Jan Hubicka <jh@suse.cz>
-
- * predict.c (propagate_freq): Clear EXIT_BLOCK_PTR frequency if it is
- unreachable.
- (rebuild_frequencies): New function.
- * predict.h (rebuild_frequencies): Declare.
- * tree-inline.c (copy_cfg_body): Compute properly count & frequency of
- entry block and edge reaching new_entry.
- (tree_function_versioning): When doing partial cloning, rebuild
- frequencies when done.
- * passes.c (execute_function_todo): Use rebild_frequencies.
-
-2010-06-29 Richard Guenther <rguenther@suse.de>
-
- * tree-dfa.c (dump_variable): Remove noalias_state dumping.
- * tree-flow.h (enum noalias_state): Remove.
- (struct var_ann_d): Remove noalias_state member.
-
-2010-06-29 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/43902
- * config/arm/arm.md (maddsidi4, umaddsidi4): New expanders.
- (maddhisi4): Renamed from mulhisi3addsi. Operands renumbered.
- (maddhidi4): Likewise.
-
- Revert parts of the change for PR25130.
- * cse.c (exp_equiv_p): For MEMs, if for_gcse, only compare
- MEM_ALIAS_SET.
-
-2010-06-29 Nathan Froyd <froydnj@codesourcery.com>
-
- * calls.c, dse.c, expr.c, function.c: Call targetm.calls.function_arg,
- targetm.calls.function_incoming_arg, and
- targetm.calls.function_arg_advance instead of FUNCTION_ARG,
- FUNCTION_INCOMING_ARG, and FUNCTION_ARG_ADVANCE, respectively.
- * target.h (struct gcc_target): Add function_arg_advance,
- function_arg, and function_incoming_arg fields.
- * target-def.h (TARGET_FUNCTION_ARG_ADVANCE, TARGET_FUNCTION_ARG):
- (TARGET_FUNCTION_INCOMING_ARG): Define.
- (TARGET_CALLS): Add TARGET_FUNCTION_ARG_ADVANCE, TARGET_FUNCTION_ARG,
- and TARGET_FUNCTION_INCOMING_ARG.
- * targhooks.h (default_function_arg_advance): Declare.
- (default_function_arg, default_function_incoming_arg): Declare.
- * targhooks.c (default_function_arg_advance): New function.
- (default_function_arg, default_function_incoming_arg): New function.
- * config/i386/i386.c (function_arg_advance): Rename to...
- (ix86_function_arg_advance): ...this. Make static.
- (function_arg): Rename to...
- (ix86_function_arg): ...this. Make static.
- (TARGET_FUNCTION_ARG_ADVANCE): Define.
- (TARGET_FUNCTION_ARG): Define.
- * config/i386/i386.h (FUNCTION_ARG_ADVANCE): Delete.
- (FUNCTION_ARG): Delete.
- * config/i386/i386-protos.h (function_arg_advance): Delete prototype.
- (function_arg): Delete prototype.
-
-2010-06-29 Nathan Froyd <froydnj@codesourcery.com>
-
- * reginfo.c (init_reg_sets_1): Adjust comments.
- * combine-stack-adj.c (rest_of_handle_stack_adjustments): Likewise.
- * calls.c (prepare_call_address): Likewise.
- (emit_call_1): Use targetm.calls.return_pops_args.
- (expand_call): Likewise.
- * function.c (assign_parms): Likewise.
- * system.h (RETURN_POPS_ARGS): Add to #pragma poison list.
- * target.h (struct gcc_target) [struct calls]: Add
- return_pops_args field.
- * targhooks.h (default_return_pops_args): Declare.
- * targhooks.c (default_return_pops_args): Define.
- * target-def.h (TARGET_RETURN_POPS_ARGS): Define.
- (TARGET_CALLS): Add TARGET_RETURN_POPS_ARGS.
- * doc/tm.texi (RETURN_POPS_ARGS): Rename to...
- (TARGET_RETURN_POPS_ARGS): ...this. Use deftypefn. Adjust
- documentation.
- * config/alpha/alpha.h (RETURN_POPS_ARGS): Delete.
- * config/arc/arc.h (RETURN_POPS_ARGS): Likewise.
- * config/arm/arm.h (RETURN_POPS_ARGS): Likewise.
- * config/avr/avr.h (RETURN_POPS_ARGS): Likewise.
- * config/bfin/bfin.h (RETURN_POPS_ARGS): Likewise.
- * config/cris/cris.h (RETURN_POPS_ARGS): Likewise.
- * config/crx/crx.h (RETURN_POPS_ARGS): Likewise.
- * config/fr30/fr30.h (RETURN_POPS_ARGS): Likewise.
- * config/frv/frv.h (RETURN_POPS_ARGS): Likewise.
- * config/h8300/h8300.h (RETURN_POPS_ARGS): Likewise.
- * config/ia64/ia64.h (RETURN_POPS_ARGS): Likewise.
- * config/iq2000/iq2000.h (RETURN_POPS_ARGS): Likewise.
- * config/lm32/lm32.h (RETURN_POPS_ARGS): Likewise.
- * config/m32c/m32c.h (RETURN_POPS_ARGS): Likewise.
- * config/m32r/m32r.h (RETURN_POPS_ARGS): Likewise.
- * config/m68hc11/m68hc11.h (RETURN_POPS_ARGS): Likewise.
- * config/mcore/mcore.h (RETURN_POPS_ARGS): Likewise.
- * config/mep/mep.h (RETURN_POPS_ARGS): Likewise.
- * config/mips/mips.h (RETURN_POPS_ARGS): Likewise.
- * config/mmix/mmix.h (RETURN_POPS_ARGS): Likewise.
- * config/mn10300/mn10300.h (RETURN_POPS_ARGS): Likewise.
- * config/moxie/moxie.h (RETURN_POPS_ARGS): Likewise.
- * config/pa/pa.h (RETURN_POPS_ARGS): Likewise.
- * config/pdp11/pdp11.h (RETURN_POPS_ARGS): Likewise.
- * config/picochip/picochip.h (RETURN_POPS_ARGS): Likewise.
- * config/rs6000/rs6000.h (RETURN_POPS_ARGS): Likewise.
- * config/rx/rx.h (RETURN_POPS_ARGS): Likewise.
- * config/s390/s390.h (RETURN_POPS_ARGS): Likewise.
- * config/score/score.h (RETURN_POPS_ARGS): Likewise.
- * config/sh/sh.h (RETURN_POPS_ARGS): Likewise.
- * config/sparc/sparc.h (RETURN_POPS_ARGS): Likewise.
- * config/spu/spu.h (RETURN_POPS_ARGS): Likewise.
- * config/stormy16/stormy16.h (RETURN_POPS_ARGS): Likewise.
- * config/v850/v850.h (RETURN_POPS_ARGS): Likewise.
- * config/xtensa/xtensa.h (RETURN_POPS_ARGS): Likewise.
- * config/i386/i386-protos.h (ix86_return_pops_args): Delete.
- * config/i386/i386.h (RETURN_POPS_ARGS): Delete.
- * config/i386/i386.c (ix86_return_pops_args): Make static.
- Constify arguments.
- (TARGET_RETURN_POPS_ARGS): Define.
- * config/m68k/m68k.h (RETURN_POPS_ARGS): Move to...
- * config/m68k/m68k.c (m68k_return_pops_args): ...here. New function.
- (TARGET_RETURN_POPS_ARGS): Define.
- * config/vax/vax.h (RETURN_POPS_ARGS): Move to...
- * config/vax/vax.c (vax_return_pops_args): ...here. New function.
- (TARGET_RETURN_POPS_ARGS): Define.
-
-2010-06-29 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44667
- * tree-inline.c (initialize_inlined_parameters): Make sure
- to remap the inlined parameter variable substitutions types.
-
-2010-06-29 Eric Botcazou <ebotcazou@adacore.com>
-
- PR rtl-optimization/44659
- * combine.c (make_compound_operation) <SUBREG>: Do not return the
- result of force_to_mode if it partially re-expanded the compound.
-
-2010-06-28 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44671
- * ipa-split.c (test_nonssa_use, mark_nonssa_use): Check also uses of
- RESULT_DECL.
-
-2010-06-28 Anatoly Sokolov <aesok@post.ru>
-
- * double-int.h (force_fit_type_double): Remove declaration.
- * double-int.c (force_fit_type_double): Move to tree.c.
- * tree.h (force_fit_type_double): Declare.
- * tree.h (force_fit_type_double): Moved from double-int.c. Use
- double_int type for 'cst' argument. Use double_int_fits_to_tree_p and
- double_int_to_tree instead of fit_double_type and build_int_cst_wide.
- * convert.c (convert_to_pointer): Adjust call to
- force_fit_type_double.
- * tree-vrp.c (extract_range_from_assert,
- extract_range_from_unary_expr): Adjust call to force_fit_type_double.
- * fold-const.c: Update comment.
- (int_const_binop, fold_convert_const_int_from_int,
- fold_convert_const_int_from_real, fold_convert_const_int_from_fixed,
- extract_muldiv_1, fold_div_compare, fold_sign_changed_comparison,
- fold_unary_loc, fold_negate_const, fold_abs_const, fold_not_const,
- round_up_loc): Adjust call to force_fit_type_double.
-
-2010-06-28 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
-
- * config/rs6000/rs6000.h (PROCESSOR_TITAN): Declare.
-
-2010-06-28 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (convert_callers): New parameter, change fndecls of
- recursive calls.
- (modify_function): Pass the old decl to convert_callers.
-
-2010-06-28 Martin Jambor <mjambor@suse.cz>
-
- * ipa-cp.c (ipcp_init_cloned_node): Replace calls to
- ipa_check_create_node_params and ipa_initialize_node_params with
- checking asserts they are not necessary.
-
-2010-06-28 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/44687
- * ipa-split.c (split_function): Use DECL_RESULT to store return value.
-
-2010-06-28 Martin Jambor <mjambor@suse.cz>
-
- PR c++/44535
- * gimple-fold.c (get_first_base_binfo_with_virtuals): New function.
- (gimple_get_relevant_ref_binfo): Use get_first_base_binfo_with_virtuals
- instead of BINFO_BASE_BINFO.
-
-2010-06-28 Michael Matz <matz@suse.de>
-
- PR middle-end/44592
- * gimple-fold.c (gimplify_and_update_call_from_tree): Maintain
- proper VDEF chain for intermediate stores in the sequence.
-
-2010-06-28 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/44357
- * ipa-inline.c (add_new_edges_to_heap): Do not add edges to
- uninlinable functions.
-
-2010-06-28 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
-
- * config.gcc (powerpc*-*-*): Handle titan.
- * config/rs6000/rs6000.c (titan_cost): New costs.
- (rs6000_override_options): Add "titan" to processor_target_table.
- Add Titan to branch alignment logic.
- Correctly set rs6000_cost for titan.
- * config/rs6000/rs6000.md (cpu): Add titan. Include "titan.md".
- * config/rs6000/titan.md: New file.
- * doc/invoke.texi (RS/6000 and PowerPC Options): Document -mcpu=titan.
-
-2010-06-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree-browser.c (TB_history_stack): Convert to a VEC.
- (TB_SET_HEAD): Adjust for new type of TB_history_stack.
- (TB_history_prev): Likewise.
-
-2010-06-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * vec.h (vec_heap_free): Add parentheses around free.
-
-2010-06-28 Steven Bosscher <steven@gcc.gnu.org>
-
- * system.h: Poison GCC_EXCEPT_H for front-end files.
-
- * langhooks.h (struct lang_hooks): Add eh_protect_cleanup_actions
- langhook.
- * langhooks-def.h (LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS) New.
- Define to NULL by default.
- * except.h: Define GCC_EXCEPT_H.
- (doing_eh): Remove prototype.
- (init_eh, init_eh_for_function): Move prototypes to toplev.h.
- (lang_protect_cleanup_actions): Remove.
- * except.c (lang_protect_cleanup_actions): Remove.
- (doing_eh): Remove.
- (gen_eh_region): Don't check doing_eh here.
- * toplev.h (init_eh, init_eh_for_function_): Moved from except.h.
- * tree-eh.c (honor_protect_cleanup_actions): Use new langhook
- instead of lang_protect_cleanup_actions.
- * omp-low.c (maybe_catch_exception): Likewise.
- * Makefile.in: Update dependencies.
-
-2010-06-28 Bingfeng Mei <bmei@broadcom.com>
-
- * cgraph.h (struct varpool_node): new used_from_object_file flag.
- (struct cgraph_local_info): new used_from_object_file flag.
- * cgraph.c (dump_cgraph_node): dump used_from_object_file flag.
- (cgraph_clone_node): initialize used_from_object_file.
- (cgraph_create_virtual_clone): initialize used_from_object_file.
- * lto-symbtab.c (lto_symtab_merge_decls_1): Set
- used_from_object_file flags for symbols of LDPR_PREVAILING_DEF
- when compiling with -fwhole-program.
- (lto_symtab_resolve_symbols) Use LDPR_PREVAILING_DEF_IRONLY for
- internal resolver.
- * ipa.c (function_and_variable_visibility): Set externally_visible
- flag of varpool_node if used_from_object_file flag is set.
- (cgraph_externally_visible_p): check used_from_object_file flag.
- * doc/invoke.texi (-fwhole-program option): Change description of
- externally_visible attribute accordingly.
- * doc/extend.texi (externally_visible): Ditto.
-
-2010-06-27 Jan Hubicka <jh@suse.cz>
-
- * params.def (max-inline-insns-auto): Default to 40.
- * doc/invoke.texi (max-inline-insns-auto): Document the change.
-
-2010-06-27 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44671
- PR middle-end/44686
- * tree.c (build_function_decl_skip_args): Clear DECL_BUILT_IN on
- signature change.
- * ipa-split.c (split_function): Always clear DECL_BUILT_IN.
- * ipa-prop.c (ipa_modify_formal_parameters): Likewise.
-
-2010-06-27 Anatoly Sokolov <aesok@post.ru>
-
- * target.h (struct gcc_target): Add register_move_cost field.
- * target-def.h (TARGET_REGISTER_MOVE_COST): New.
- (TARGET_INITIALIZER): Use TARGET_REGISTER_MOVE_COST.
- * targhooks.c (default_register_move_cost): New function.
- * targhooks.h (default_register_move_cost): Declare function.
- * defaults.h (REGISTER_MOVE_COST): Delete.
- * ira-int.h (ira_register_move_cost): Update comment.
- * ira.c (ira_register_move_cost): Update comment.
- * reload.h (register_move_cost): Declare.
- * reginfo.c (register_move_cost): New function.
- (move_cost): Update comment.
- (init_move_cost, memory_move_secondary_cost): Replace
- REGISTER_MOVE_COST with register_move_cost.
- * postreload.c (reload_cse_simplify_set): (Ditto.).
- * reload.c (find_valid_class, find_reloads): (Ditto.).
- * reload1.c (choose_reload_regs): (Ditto.).
- * doc/tm.texi (TARGET_REGISTER_MOVE_COST): New.
- (REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Update documentation.
- * doc/md.texi (can_create_pseudo_p): Update documentation.
-
- * config/i386/i386.h (MEMORY_MOVE_COST): Remove macro.
- * config/i386/i386-protos.h (int ix86_memory_move_cost): Remove.
- * config/i386/i386.h (ix86_memory_move_cost): Make static.
- (TARGET_MEMORY_MOVE_COST): Define.
-
- * config/ia64/ia64.h (MEMORY_MOVE_COST): Remove macro.
- * config/ia64/ia64-protos.h (int ia64_memory_move_cost): Remove.
- * config/ia64/ia64.h (ia64_memory_move_cost): Make static.
- (TARGET_MEMORY_MOVE_COST): Define.
-
-2010-06-27 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44683
- * tree-ssa-dom.c (record_edge_info): Record equivalences for the
- false edge from the inverted condition.
-
-2010-06-27 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44684
- * tree-ssa-alias.c (refs_may_alias_p_1): Allow SSA name refs.
- (stmt_may_clobber_ref_p_1): Do not bother to call the oracle
- for register LHS. Or non-store assignments.
-
-2010-06-26 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/sparc/sparc.c (sparc_emit_set_const32): Make static.
- (sparc_emit_set_const64): Likewise. Remove disabled code.
- * config/sparc/sparc-protos.h (sparc_emit_set_const32): Delete.
- (sparc_emit_set_const64): Likewise.
-
-2010-06-26 Catherine Moore <clm@codesourcery.com>
-
- * config/mips/mips.md (alu_type): New attribute.
- (type): Infer type from alu_type.
- (*add<mode>3, *add<mode>3_mips16, *addsi3_extended,
- *baddu_si_eb, *baddu_si_el, *baddu_di, sub<mode>3,
- *subsi3_extended, negsi2, negdi2, *low<mode>,
- *low<mode>_mips16, *ior<mode>3, *ior<mode>3_mips16,
- xor<mode>3, *nor<mode>3,
- *zero_extend<GPR:mode>_trunc<SHORT:mode>,
- *zero_extendhi_truncqi): Set alu_type instead of type.
-
-2010-06-26 Douglas B Rupp <rupp@gnat.com>
-
- * config/alpha/alpha.c (alpha_need_linkage): Adjust
- splay_tree_new_ggc call.
- (alpha_use_linkage): Likewise.
-
-2010-06-26 Joseph Myers <joseph@codesourcery.com>
-
- * collect2.c (main): Remove SWITCHES_NEED_SPACES conditional.
- * doc/tm.texi (SWITCHES_NEED_SPACES): Don't document.
- * gcc.c (SWITCHES_NEED_SPACES, switches_need_spaces): Remove.
- (static_specs): Remove switches_need_spaces.
- (process_command, do_self_spec): Hardcode handling "-o" instead of
- checking switches_need_spaces.
- * system.h (SWITCHES_NEED_SPACES): Poison.
-
-2010-06-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44393
- * tree-loop-distribution.c (generate_loops_for_partition): Fix
- stmt removal and VOP renaming.
- (generate_memset_zero): Remove redundant stmt updating.
- * tree-flow.h (mark_virtual_ops_in_bb): Remove.
- * tree-cfg.c (mark_virtual_ops_in_bb): Likewise.
-
-2010-06-26 Jan Hubicka <jh@suse.cz>
-
- * ipa-split.c (consider_split): PHI in entry block is OK as long as all
- edges comming from header are equivalent.
- (visit_bb): Handle PHIs correctly.
- * tree-inline.c (copy_phis_for_bb): Be able to copy
- PHI from entry edge.
- (copy_cfg_body): Produce edge from entry BB before copying PHIs.
-
-2010-06-26 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44674
- * tree-ssa-alias.c (refs_may_alias_p_1): Allow all kind of
- decls. Handle LABEL_DECLs like FUNCTION_DECLs.
-
-2010-06-26 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c (n_switches_alloc, n_infiles_alloc, alloc_infile,
- add_infile, alloc_switch): New.
- (process_command): Remove variable lang_n_infiles. Process
- options in a single pass. Use new functions for allocating
- infiles and switches arrays. Properly skip operands of
- -Xpreprocessor and -Xassembler.
-
-2010-06-26 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44671
- * cgraphunit.c (cgraph_function_versioning): Remove wrong
- cgraph_make_decl_local call; fix typo copying RTL data.
-
-2010-06-25 DJ Delorie <dj@redhat.com>
-
- * config/m32c/m32c-protos.h (m32c_note_pragma_address): Declare.
- (m32c_output_aligned_common): Likewise.
- * config/m32c/m32c.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): New.
- (ASM_OUTPUT_ALIGNED_DECL_LOCAL): New.
- * config/m32c/m32c-pragma.c (m32c_pragma_address): New.
- (m32c_register_pragmas): Register it.
- * config/m32c/m32c.c (m32c_get_pragma_address): New.
- (m32c_insert_attributes): Set #pragma address decls volatile.
- (pragma_entry_eq): New.
- (pragma_entry_hash): New.
- (m32c_note_pragma_address): New.
- (m32c_get_pragma_address): New.
- (m32c_output_aligned_common): New.
- * doc/extend.texi: Document the new pragma.
-
- * config/m32c/m32c.c (m32c_illegal_subreg_p): Reject illegal MEMs
- also.
- * config/m32c/predicates.md (m32c_any_operand): Check the code
- instead of memory_operand so as to allow matching volatile MEMs.
- (m32c_nonimmediate_operand): Likewise.
- (mra_operand): Allow volatiles.
-
-2010-06-25 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/44610
- * simplify-rtx.c (delegitimize_mem_from_attrs): Don't use a base
- address if the offset is unknown.
-
-2010-06-25 Douglas B Rupp <rupp@gnat.com>
-
- * dwarf2out.c (dwarf2out_vms_debug_main_pointer): New function.
- * dwarf2out.h (dwarf2out_vms_debug_main_pointer): Declare new function.
- * config/ia64/ia64-protos.h (ia64_start_function): Declare.
- * config/ia64/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Move contents
- to ia64_start_function. Invoke it.
- * config/ia64/ia64.c (ia64_start_function): Call new function
- dwarf2out_vms_debug_main_pointer.
-
-2010-06-25 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (insert_gimplified_predicates): Do not insert
- statements computing the true predicate.
-
-2010-06-25 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (init_bb_predicate): Initialize the predicate
- to boolean_true_node.
- (reset_bb_predicate): New.
- (predicate_bbs): Call reset_bb_predicate.
-
-2010-06-25 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (combine_blocks): Remove FIXME comment.
- (tree_if_conversion): Returns true when something has been changed.
- (main_tree_if_conversion): Return TODO_cleanup_cfg when if-conversion
- changed something.
-
-2010-06-25 Sebastian Pop <sebastian.pop@amd.com>
-
- * Makefile.in (tree-if-conv.o): Depends on DBGCNT_H.
- * dbgcnt.def (if_conversion_tree): New DEBUG_COUNTER.
- * tree-if-conv.c: Include dbgcnt.h.
- (tree_if_conversion): Use if_conversion_tree to count the number of
- if-convertible loops.
-
-2010-06-25 Changpeng Fang <changpeng.fang@amd.com>
-
- * common.opt (fprefetch-loop-arrays): Re-define
- -fprefetch-loop-arrays as a tri-state option with the initial
- value of -1.
- * tree-ssa-loop.c (gate_tree_ssa_loop_prefetch): Invoke prefetch
- pass only when flag_prefetch_loop_arrays > 0.
- * toplev.c (process_options): Note that, with tri-states,
- flag_prefetch_loop_arrays>0 means prefetching is enabled.
- * config/i386/i386.c (override_options): Enable prefetching at -O3
- for a set of CPUs that sw prefetching is helpful.
- (software_prefetching_beneficial_p): New. Return TRUE if software
- prefetching is beneficial for the given CPU.
-
-2010-06-25 H.J. Lu <hongjiu.lu@intel.com>
-
- PR rtl-optimization/44326
- * implicit-zee.c (find_removable_zero_extends): Replace
- INSN_P with NONDEBUG_INSN_P.
-
-2010-06-25 Martin Jambor <mjambor@suse.cz>
-
- * ipa-prop.h (struct ipa_param_descriptor): Removed the modified flag.
- (struct ipa_node_params): Removed the modification_analysis_done flag.
- (ipa_is_param_modified): Removed.
- (ipa_analyze_node): Declare.
- (ipa_compute_jump_functions): Remove declaration.
- (ipa_count_arguments): Likewise.
- (ipa_detect_param_modifications): Likewise.
- (ipa_analyze_params_uses): Likewise.
- * ipa-prop.c (struct param_analysis_info): New type.
- (visit_store_addr_for_mod_analysis): Removed.
- (visit_load_for_mod_analysis): Renamed to visit_ref_for_mod_analysis,
- moved down in the file.
- (ipa_detect_param_modifications): Merged into ipa_analyze_params_uses.
- (ipa_count_arguments): Made static.
- (mark_modified): New function.
- (is_parm_modified_before_call): New function.
- (compute_pass_through_member_ptrs): New parameter parms_info, call
- is_parm_modified_before_call instead of ipa_is_param_modified.
- (ipa_compute_jump_functions_for_edge): New parameter parms_info, pass
- it to compute_pass_through_member_ptrs.
- (ipa_compute_jump_functions): New parameter parms_info, pass it to
- ipa_compute_jump_functions_for_edge. Call ipa_initialize_node_params
- on the callee if it is analyzed. Made static.
- (ipa_analyze_indirect_call_uses): New parameter parms_info, call
- is_parm_modified_before_call instead of ipa_is_param_modified.
- (ipa_analyze_call_uses): New parameter parms_info, pass it to
- ipa_analyze_indirect_call_uses.
- (ipa_analyze_stmt_uses): New parameter parms_info, pass it to
- ipa_analyze_call_uses.
- (ipa_analyze_params_uses): New parameter parms_info, pass it to
- ipa_analyze_stmt_uses. Also perform the used analysis. Made static.
- (ipa_analyze_node): New function.
- (ipa_print_node_params): Do not dump the modified flag.
- (ipa_write_node_info): Assert uses_analysis_done rather than streaming
- it. Do not stream the modified parameter flag.
- (ipa_read_node_info): Set uses_analysis_done to 1 instead of streaming
- it. Do not stream the modified parameter flag.
- * ipa-cp.c (ipcp_analyze_node): Removed.
- (ipcp_init_stage): Iterate only once over the nodes, analyze each one
- with only a call to ipa_analyze_node.
- * ipa-inline.c (inline_indirect_intraprocedural_analysis): Analyze the
- node with only a call to ipa_analyze_node.
-
-2010-06-25 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * doc/invoke.texi (-Wsuggest-attribute): Add item for noreturn.
-
-2010-06-25 Jan Hubicka <jh@suse.cz>
-
- * tree-pass.h (pass_split_functions): Declare.
- * opts.c (decode_options): Enable function splitting at -O2
- * timevar.def (TV_IPA_FNSPLIT): New macro.
- * ipa-split.c: New file.
- * common.opt (-fpartial-inlining): New flag.
- * Makefile.in (ipa-split.o): New object file.
- * passes.c (init_optimization_passes): Add ipa-split.
- * params.def (partial-inlining-entry-probability): New parameters.
- * doc/invoke.texi (-fpartial-inlining): New.
-
-2010-06-25 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR 44665
- * tree-inline.c (gimple_expand_calls_inline): Fix typo in comment.
- * gimplify.c (is_gimple_reg_rhs_or_call): Likewise.
- (gimplify_expr): Likewise.
-
-2010-06-25 Martin Jambor <mjambor@suse.cz>
-
- * ipa-prop.c (determine_cst_member_ptr): Ignore non-clobbering
- statements instead of bailing out on them.
- (ipa_analyze_indirect_call_uses): Do not require that loads from the
- parameter are in the same BB as the condition. Update comments.
-
-2010-06-25 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/43866
- * tree-ssa-loop-unswitch.c (tree_may_unswitch_on): If stmt is always
- true or always false, return NULL_TREE.
- (tree_unswitch_single_loop): Optimize conditions even when reaching
- max-unswitch-level parameter. If num > 0, optimize first all conditions
- using entry checks, then do still reachable block discovery and consider
- only conditions in still reachable basic blocks in the loop.
-
- PR tree-optimization/44539
- * tree-cfgcleanup.c (fixup_noreturn_call): Call update_stmt even when
- the call doesn't have LHS, but has VDEF.
-
-2010-06-25 Joseph Myers <joseph@codesourcery.com>
-
- * config/pa/pa.h (MODIFY_TARGET_NAME): Remove.
- * doc/tm.texi (MODIFY_TARGET_NAME): Don't document.
- * gcc.c (enum add_del, struct modify_target, modify_target): Remove.
- (process_command): Remove code conditional on MODIFY_TARGET_NAME.
- * system.h (MODIFY_TARGET_NAME): Poison.
-
-2010-06-25 Alan Modra <amodra@gmail.com>
-
- * doc/invoke.texi: Delete mcmodel=medium from powerpc options.
- * config/rs6000/rs6000.h (enum rs6000_cmodel): Delete CMODEL_MEDIUM.
- * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Set
- CMODEL_LARGE as default.
- * config/rs6000/rs6000.c (rs6000_handle_option): Remove mcmodel=medium.
- (offsettable_ok_by_alignment): Delete.
- (rs6000_emit_move): Remove mcmodel=medium optimization.
-
-2010-06-25 Bernd Schmidt <bernds@codesourcery.com>
-
- With large parts from Jim Wilson:
- PR target/43902
- * tree-pretty-print.c (dump_generic_node, op_code_prio): Add
- WIDEN_MULT_PLUS_EXPR and WIDEN_MULT_MINUS_EXPR.
- * optabs.c (optab_for_tree_code): Likewise.
- (expand_widen_pattern_expr): Likewise.
- * tree-ssa-math-opts.c (convert_mult_to_widen): New function, broken
- out of execute_optimize_widening_mul.
- (convert_plusminus_to_widen): New function.
- (execute_optimize_widening_mul): Use the two new functions.
- * expr.c (expand_expr_real_2): Add support for GIMPLE_TERNARY_RHS.
- Remove code to generate widening multiply-accumulate. Add support
- for WIDEN_MULT_PLUS_EXPR and WIDEN_MULT_MINUS_EXPR.
- * gimple-pretty-print.c (dump_ternary_rhs): New function.
- (dump_gimple_assign): Call it when appropriate.
- * tree.def (WIDEN_MULT_PLUS_EXPR, WIDEN_MULT_MINUS_EXPR): New codes.
- * cfgexpand.c (gimple_assign_rhs_to_tree): Likewise.
- (expand_gimple_stmt_1): Likewise.
- (expand_debug_expr): Support WIDEN_MULT_PLUS_EXPR and
- WIDEN_MULT_MINUS_EXPR.
- * tree-ssa-operands.c (get_expr_operands): Likewise.
- * tree-inline.c (estimate_operator_cost): Likewise.
- * gimple.c (extract_ops_from_tree_1): Renamed from
- extract_ops_from_tree. Add new arg for a third operand; fill it.
- (gimple_build_assign_stat): Support operations with three operands.
- (gimple_build_assign_with_ops_stat): Likewise.
- (gimple_assign_set_rhs_from_tree): Likewise.
- (gimple_assign_set_rhs_with_ops_1): Renamed from
- gimple_assign_set_rhs_with_ops. Add new arg for a third operand.
- (get_gimple_rhs_num_ops): Support GIMPLE_TERNARY_RHS.
- (get_gimple_rhs_num_ops): Handle WIDEN_MULT_PLUS_EXPR and
- WIDEN_MULT_MINUS_EXPR.
- * gimple.h (enum gimple_rhs_class): Add GIMPLE_TERNARY_RHS.
- (extract_ops_from_tree_1): Adjust declaration.
- (gimple_assign_set_rhs_with_ops_1): Likewise.
- (gimple_build_assign_with_ops): Pass NULL for last operand.
- (gimple_build_assign_with_ops3): New macro.
- (gimple_assign_rhs3, gimple_assign_rhs3_ptr, gimple_assign_set_rhs3,
- gimple_assign_set_rhs_with_ops, extract_ops_from_tree): New inline
- functions.
- * tree-cfg.c (verify_gimple_assign_ternary): New static function.
- (verify_gimple_assign): Call it.
- * doc/gimple.texi (Manipulating operands): Document GIMPLE_TERNARY_RHS.
- (Tuple specific accessors, subsection GIMPLE_ASSIGN): Document new
- functions for dealing with three-operand statements.
- * tree.c (commutative_ternary_tree_code): New function.
- * tree.h (commutative_ternary_tree_code): Declare it.
- * tree-vrp.c (gimple_assign_nonnegative_warnv_p): Return false for
- ternary statements.
- (gimple_assign_nonzero_warnv_p): Likewise.
- * tree-ssa-sccvn.c (stmt_has_constants): Handle GIMPLE_TERNARY_RHS.
- * tree-ssa-ccp.c (get_rhs_assign_op_for_ccp): New static function.
- (ccp_fold): Use it. Handle GIMPLE_TERNARY_RHS.
- * tree-ssa-dom.c (enum expr_kind): Add EXPR_TERNARY.
- (struct hashtable_expr): New member ternary in the union.
- (initialize_hash_element): Handle GIMPLE_TERNARY_RHS.
- (hashable_expr_equal_p): Fix indentation. Handle EXPR_TERNARY.
- (iterative_hash_hashable_expr): Likewise.
- (print_expr_hash_elt): Handle EXPR_TERNARY.
- * gimple-fold.c (fold_gimple_assign): Handle GIMPLE_TERNARY_RHS.
- * tree-ssa-threadedge.c (fold_assignment_stmt): Remove useless break
- statements. Handle GIMPLE_TERNARY_RHS.
-
-2010-06-25 Jan Hubicka <jh@suse.cz>
-
- * doc/invoke.texi (-Wsuggest-attribute): Add noreturn.
-
-2010-06-25 Shujing Zhao <pearly.zhao@oracle.com>
-
- PR c/44517
- * c-parser.c (c_parser_parms_list_declarator): Return NULL if one of
- parameters are not good.
- (c_parser_parameter_declaration): Error unknown type name if the type
- name can't start declaration specifiers.
-
-2010-06-25 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c (translate_options): Don't mention +e in comment.
- (process_command): Don't handle +e specially.
-
-2010-06-25 Bernd Schmidt <bernds@codesourcery.com>
-
- * ira.c (allocno_pool, copy_pool, allocno_live_range_pool): Delete.
-
- * ira-build.c (merge_hard_reg_conflicts): New function.
- (create_cap_allocno, copy_info_to_removed_store_destinations,
- propagate_some_info_from_allocno, propagate_allocno_info): Use it.
- (move_allocno_live_ranges, copy_allocno_live_ranges): New functions.
- (remove_unnecessary_allocnos, remove_low_level_allocnos)
- copy_nifo_to_removed_store_destination): Use them.
- * ira-lives.c (make_hard_regno_born): New function, split out of
- make_regno_born.
- (make_allocno_born): Likewise.
- (make_hard_regno_dead): New function, split out of make_regno_dead.
- (make_allocno_dead): Likewise.
- (inc_register_pressure): New function, split out of set_allocno_live.
- (dec_register_pressure): New function, split out of clear_allocno_live.
- (mark_pseudo_regno_live): New function, split out of mark_reg_live.
- (mark_hard_reg_live): Likewise. Use inc_register_pressure.
- (mark_pseudo_regno_dead): New function, split out of mark_reg_dead.
- (mark_hard_reg_dead): Likewise. Use dec_register_pressure.
- (make_pseudo_conflict): Use mark_pseudo_regno_dead and
- mark_pseudo_regno_live.
- (process_bb_node_lives): Use mark_pseudo_regno_live,
- make_hard_regno_born and make_allocno_dead.
- (make_regno_born, make_regno_dead, mark_reg_live, mark_reg_dead,
- set_allocno_live, clear_allocno_live): Delete functions.
-
- * ira-int.h (ira_parent_allocno, ira_parent_or_cap_allocno): Declare.
- * ira-build.c (ira_parent_allocno, ira_parent_or_cap_allocno): New
- functions.
- (ira_flattening): Use ira_parent_allocno.
- * ira-conflicts.c (process_regs_for_copy, propagate_copies)
- build_allocno_conflicts): Use ira_parent_or_cap_allocno.
-
- * ira-color.c (assign_hard_reg): Improve formatting of multi-line for
- statement.
-
- * ira-int.h (SET_MINMAX_SET_BIT, CLEAR_MINMAX_SET_BIT,
- TEST_MINMAX_SET_BIT, minmax_set_iterator, minmax_set_iter_init,
- minmax_set_iter_cond, minmax_set_iter_next,
- FOR_EACH_BIT_IN_MINMAX_SET): Renamed from SET_ALLOCNO_SET_BIT,
- CLEAR_ALLOCNO_SET_BIT, TEST_ALLOCNO_SET_BIT, ira_allocno_set_iterator,
- ira_allocno_set_iter_init, ira_allocno_set_iter_cond,
- ira_allocno_set_iter_Next and FOR_EACH_ALLOCNO_IN_ALLOCNO_SET. All
- uses changed.
-
- * ira-int.h (struct live_range, live_range_t): Renamed from struct
- ira_allocno_live_range and allocno_live_range_t; all uses changed.
- * ira-build.c (live_range_pool): Renamed from allocno_live_range_pool.
- All uses changed.
-
-2010-06-24 Richard Earnshaw <rearnsha@arm.com>
-
- * thumb2.md (thumb2_tlobits_cbranch): Delete.
- (peephole2 to convert zero_extract/compare of single bit to
- lshift/compare): New.
-
-2010-06-24 Anatoly Sokolov <aesok@post.ru>
-
- * fold-const.c (const_binop): Remove 'notrunc' argement. Adjust
- recursive call and call to 'int_const_binop'.
- (build_range_check, fold_cond_expr_with_comparison, unextend,
- fold_truthop, extract_muldiv_1, fold_comparison, fold_binary_loc,
- multiple_of_p): Adjust call to const_binop.
-
-2010-06-24 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (XFmode push splitter): Use GET_MODE_SIZE to
- determine size of XFmode operand.
- (XFmode extended DFmode push splitter): Ditto.
- (XFmode extended SFmode push splitter): Ditto.
-
-2010-06-24 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44588
- * config/i386/i386.md (extract_code): New.
- (<u>divmodqi4): Likewise.
- (divmodhiqi3): Likewise.
- (udivmodhiqi3): Likewise.
- (<u>divqi3): Remvoved.
-
-2010-06-24 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/44492
- * recog.h (struct recog_data): Add is_asm field.
- * recog.c (asm_operand_ok, constrain_operands): If neither < nor > is
- present in constraints of inline-asm operand and memory operand
- contains {PRE,POST}_{INC,DEC,MODIFY}, return 0.
- (extract_insn): Initialize recog_data.is_asm.
- * doc/md.texi (Constraints): Document operand side-effect rules.
-
-2010-06-24 Andi Kleen <ak@linux.intel.com>
-
- * c-parser.c (c_parser_conditional_expression): Call
- warn_for_omitted_condop.
- * doc/invoke.texi: Document omitted condop warning.
-
-2010-06-24 Nick Clifton<nickc@redhat.com>
-
- * loop-unswitch.c (compare_and_jump_seq): Assert that the last
- insn in the sequence is a jump insn before setting its label.
-
-2010-06-24 Alan Modra <amodra@gmail.com>
-
- * collect2.c (main): Match exactly --version and --help.
-
-2010-06-24 DJ Delorie <dj@redhat.com>
-
- * config/m32c/m32c-pragma.c: Don't include rtl.h.
-
-2010-06-23 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (mov<mode>): Macroize expander from mov{sf,df,xf}
- using X87MODEF mode iterator.
- (pushsf splitter): Macroize splitter using P mode iterator.
- (*swap<mode>): Macroize insn from *swap{sf,df} using MODEF
- mode iterator.
-
- (*movxf_internal): Rename from *movxf_integer.
- (*movxf_internal_nointeger): Rename from *movxf_nointeger.
- (*movdf_internal_rex64): Rename from *movdf_integer_rex64.
- (*movdf_internal): Rename from *movdf_integer.
- (*movdf_internal_nointeger): Rename from *movdf_nointeger.
- (*movsf_internal): Rename from *movdf_1.
-
-2010-06-23 Basile Starynkevitch <basile@starynkevitch.net>
-
- * coretypes.h (gimple_seq_node_d, gimple_seq_node)
- (const_gimple_seq_node): Removed typedefs.
-
- * gimple.h (gimple_seq_node_d, gimple_seq_node)
- (const_gimple_seq_node): Added typedefs moved from coretypes.h.
-
-2010-06-23 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.c (bdesc_args): Replace CODE_FOR_avx_si_si256,
- CODE_FOR_avx_ps_ps256 and CODE_FOR_avx_pd_pd256 with
- CODE_FOR_vec_extract_lo_v8si, CODE_FOR_vec_extract_lo_v8sf
- and CODE_FOR_vec_extract_lo_v4df.
-
- * config/i386/sse.md (vec_extract_lo_<AVX256MODE4P:mode>):
- Changed to define_insn_and_split.
- (vec_extract_lo_<AVX256MODE8P:mode>): Likewise.
- (vec_extract_lo_v16hi): Likewise.
- (vec_extract_lo_v32qi): Likewise.
- (avx_<avxmodesuffixp><avxmodesuffix>_<avxmodesuffixp>): Likewise.
- (avx_<avxmodesuffixp>_<avxmodesuffixp><avxmodesuffix>): Removed.
-
-2010-06-23 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR target/44640
- * config/spu/spu-protos.h (spu_expand_epilogue) Use bool.
- * config/spu/spu.c (spu_scalar_mode_supported_p): Declare with bool.
- (spu_vector_mode_supported_p, spu_handle_fndecl_attribute): Likewise.
- (spu_handle_vector_attribute, spu_pass_by_reference): Likewise.
- (spu_rtx_costs, spu_function_ok_for_sibcall): Likewise.
-
- PR target/44640
- * config/spu/spu.c (ea_load_store_inline): Use add_reg_note.
-
- PR other/44644
- * df-core.c (struct df): Rename to df_d.
- * df.h (struct df): Likewise.
- * dse.h (struct df): Remove forward declaration.
- * recog.h (struct insn_data): Rename to:
- (struct_insn_data_d). Adjusted all users.
-
-2010-06-23 Arnaud Charlet <charlet@adacore.com
-
- PR ada/22220
- * doc/install.texi: Update requirements to build GNAT.
-
-2010-06-22 Andreas Schwab <schwab@linux-m68k.org>
-
- * config/m68k/m68k.c (m68k_output_addr_const_extra): Add cast to
- enum type.
- (m68k_sched_attr_opx_type): Remove unreachable return.
- (m68k_sched_attr_opy_type): Likewise.
- (m68k_sched_attr_size): Likewise.
- (sched_get_opxy_mem_type): Likewise.
- (m68k_sched_attr_op_mem): Likewise.
-
-2010-06-22 Eric Botcazou <ebotcazou@adacore.com>
-
- * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Chain the
- new statement and adjust VDEF only if necessary. Remove superfluous
- call to maybe_clean_or_replace_eh_stmt.
- * gimple.c (gimple_call_copy_skip_args): Use gimple_call_copy_flags to
- copy the flags.
- * gimple-iterator.c (gsi_replace): Clear BB of old statement here...
- * tree-inline.c (copy_bb): ...and not there.
-
-2010-06-22 Cary Coutant <ccoutant@google.com>
-
- * dwarf2out.c (is_nested_in_subprogram): New function.
- (should_move_die_to_comdat): Use it.
- (copy_ancestor_tree): Don't mark DIEs here.
- (copy_decls_walk): Start walk from root of newly-added tree;
- mark DIEs here instead.
-
-2010-06-22 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.md (unit): Also check sseishft1.
-
-2010-06-22 Jan Hubicka <jh@suse.cz>
-
- * gimple.h (gimple_expr_code): Do checking on when gimple checking is
- enabled.
-
-2010-06-22 Jan Hubicka <jh@suse.cz>
-
- * df-problems.c (df_rd_confluence_n, df_lr_confluence_n,
- df_live_confluence_n, df_byte_lr_confluence_n, df_md_confluence_n):
- Return true if something changed.
- * df.h (df_confluence_function_n): Return bool.
- * df-core.c (df_worklist_propagate_forward,
- df_worklist_propagate_backward): Track changes and ages.
- (df_worklist_dataflow_doublequeue): Use bitmap iterator for main walk;
- track ages.
- * dse.c (dse_confluence_n): Return always true.
-
-2010-06-22 Jan Hubicka <jh@suse.cz>
-
- * bitmap.c (bitmap_clear_bit): Micro optimize.
-
-2010-06-22 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (SWI1248x): New mode iterator.
- (SWI48x): Ditto.
- (SWI12): Ditto.
- (SWI24): Ditto.
-
- (mov<mode>): Macroize expander from mov{qi,hi,si,di} using
- SWI1248x mode iterator.
- (*push<mode>2_rex64): Macroize insn from *push{qi,hi,si}_rex64
- using SWI124 mode iterator.
- (*push<mode>2): Macroize insn from *push{qi,hi} using SWI12
- mode iterator.
- (*push<mode>2_prologue): Macroize insn from *pushsi2_prologue and
- *pushdi2_prologue_rex64 using P mode iterator.
- (*mov<mode>_xor): Macroize insn from *movsi_xor and *movdi_xor_rex64
- using SWI48 mode iterator.
- (*mov<mode>_or): Ditto from *movsi_or and *movdi_or_rex64.
- (*movabs<mode>_1): Macroize insn from *movabs{qi,hi,si,di}_1_rex64
- using SWI1248x mode iterator.
- (*movabs<mode>_2): Ditto from *movabs{qi,hi,si,di}_1_rex64.
- (*swap<mode>): Macroize insn from *swapsi and *swapdi_rex64 using
- SWI48 mode iterator.
- (*swap<mode>_1): Macroize insn from *swap{qi,hi}_1 using SWI12 mode
- iterator.
- (*swap<mode>_2): Ditto from *swap{qi,hi}_2.
- (movstrict<mode>): Macroize expander from movstrict{qi,hi} using
- SWI12 mode iterator.
- (*movstrict<mode>_1): Macroize insn from *movstrict{qi,hi}_1 using
- SWI12 mode iterator.
- (*movstrict<mode>_xor): Ditto from *movstrict{qi,hi}_xor.
- (*mov<mode>_extv_1): Macroize insn from *mov{hi,si}_extv_1 using
- SWI24 mode iterator.
- (*mov<mode>_extzv_1): Macroize insn from *mov{si,di}_extzv_1 using
- SWI48 mode iterator.
- (mov<mode>_insn_1): New expander.
- (*mov<mode>_insv_1_rex64): Macroize insn from *mov{si,di}_insv_1_rex64
- using SWI48x mode iterator.
-
- (*movoi_internal_avx): Rename from *movoi_internal.
- (*movti_internal_rex64): Rename from *movti_rex64.
- (*movti_internal_sse): Rename from *movti_sse.
- (*movdi_internal_rex64): Rename from *movdi_1_rex64.
- (*movdi_internal): Rename from *movdi_2.
- (*movsi_internal): Rename from *movsi_1.
- (*movhi_internal): Rename from *movhi_1.
- (*movqi_internal): Rename from *movqi_1.
-
- (insv): Update the call to gen_movsi_insv_1 for rename.
- * config/i386/i386.c (promote_duplicated_reg): Ditto.
-
-2010-06-22 Jan Hubicka <jh@suse.cz>
-
- * passes.c (execute_function_todo): Move call of statistics_fini_pass
- to ...
- (execute_todo) ... this one.
-
-2010-06-22 Alan Modra <amodra@gmail.com>
-
- PR target/44364
- * config/rs6000/e500.h (HARD_REGNO_CALLER_SAVE_MODE): Define.
- * caller-save.c (insert_restore, insert_save): Use non-validate
- form of adjust_address.
-
-2010-06-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/39690
- * config/pa/pa.c (override_options): Disable
- -freorder-blocks-and-partition.
-
-2010-06-21 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44615
- * config/i386/atom.md (atom_sseishft_2): Also check sseishft1.
-
- * config/i386/i386.md (type): Add sseishft1
-
- * config/i386/ppro_insn (ppro_insn): Also check sseishft1.
- (ppro_insn_load): Likewise.
- (ppro_insn_store): Likewise.
- (ppro_insn_both): Likewise.
-
- * config/i386/sse.md (sse2_lshrv1ti3): Add atom_unit.
- (*vec_extractv2di_1_rex64_avx): Replace sseishft with sseishft1
- for type.
- (*vec_extractv2di_1_avx): Likewise.
- (*vec_extractv2di_1_rex64): Replace sseishft with sseishft1 for
- type. Remove atom_unit.
- (*vec_extractv2di_1_sse2): Likewise.
-
-2010-06-21 DJ Delorie <dj@redhat.com>
-
- * diagnostic.h (diagnostic_classification_change_t): New.
- (diagnostic_context): Add history and push/pop list.
- (diagnostic_push_diagnostics): Declare.
- (diagnostic_pop_diagnostics): Declare.
- * diagnostic.c (diagnostic_classify_diagnostic): Store changes
- from pragmas in a history chain instead of the global table.
- (diagnostic_push_diagnostics): New.
- (diagnostic_pop_diagnostics): New.
- (diagnostic_report_diagnostic): Scan history chain to find state
- of diagnostics as of the diagnostic location.
- * opts.c (set_option): Pass UNKNOWN_LOCATION to
- diagnostic_classify_diagnostic.
- (enable_warning_as_error): Likewise.
- * diagnostic-core.h (DK_POP): Add after "real" diagnostics, for
- use in the history chain.
- * doc/extend.texi: Document pragma GCC diagnostic changes.
-
-2010-06-21 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (add_linkage_name): New function. Don't add
- anything to DW_TAG_member DIEs.
- (add_name_and_src_coords_attributes): Use it.
- (gen_variable_die): Call it for C++ static data members if
- specification is DW_TAG_member.
-
- * dwarf2out.c (base_type_die): Use DW_ATE_UTF for
- C++ char16_t and char32_t.
-
- * Makefile.in (build/genattrtab.o): Depend on vecprim.h.
- * genattrtab.c: Include vecprim.h.
- (cached_attrs, cached_attr_count, attrs_seen_once,
- attrs_seen_more_than_once, attrs_to_cache, attrs_cached_inside,
- attrs_cached_after): New variables.
- (find_attrs_to_cache): New function.
- (FLG_BITWISE, FLG_AFTER, FLG_INSIDE, FLG_OUTSIDE_AND): Define.
- (write_test_expr): Add attrs_cached argument, return it too,
- attempt to cache non-const attributes used more than once in
- a single case handling.
- (write_attr_get): Use find_attrs_to_cache, for caching candidates
- emit cached_* variables. Adjust write_attr_set callers.
- (write_attr_set): Add attrs_cached attribute, use find_attrs_to_cache
- to find attributes that should be cached in this block. Adjust
- write_test_expr callers.
- (write_attr_case): Clear attrs_to_cache. Adjust write_attr_set
- callers.
- (make_automaton_attrs): Adjust write_test_expr caller.
-
- * Makefile.in (cfgexpand.o): Depend on $(INSN_ATTR_H).
- * genattrtab.c (check_tune_attr, find_tune_attr): New functions.
- (make_automaton_attrs): If find_tune_attr returns non-NULL,
- write separate internal_dfa_insn_code_* and insn_default_latency_*
- functions for each attribute's value and emit init_sched_attrs
- function and function pointers.
- * genattr.c (const_attrs, reservations): New variables.
- (gen_attr): Add const attributes to const_attrs vector.
- (check_tune_attr, find_tune_attr): New functions.
- (main): Add reservations to reservations vector. If find_tune_attr
- returns true, add prototype for init_sched_attrs and make
- internal_dfa_insn_code and insn_default_latency function pointers,
- otherwise define init_sched_attrs as dummy macro.
- * cfgexpand.c: Include insn-attr.h.
- (gimple_expand_cfg): Call init_sched_attrs.
-
- * stmt.c (resolve_asm_operand_names): Fix handling of %%.
-
- PR target/44575
- * config/i386/i386.c (ix86_gimplify_va_arg): When copying
- va_arg from a set of register save slots into a temporary,
- if the container is bigger than type size, do the copying
- using smaller mode or using memcpy.
-
- PR bootstrap/44426
- * sel-sched-dump.h (sel_prepare_string_for_dot_label): Remove
- prototype.
- (sel_print_to_dot): Remove macro.
- (sel_print): Likewise. New prototype.
- * sel-sched-dump.c (sel_prepare_string_for_dot_label): Make static.
- (sel_print): New function.
-
-2010-06-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/sol2.h (TARGET_OS_CPP_BUILTINS): Define
- __STDC_VERSION__=199901L, _XOPEN_SOURCE=600 for C++.
-
-2010-06-21 Nick Clifton <nickc@redhat.com>
-
- * config/rx/rx.h (PTRDIFF_TYPE): Define.
- (SMALL_REGISTER_CLASS): Define (to zero).
- (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * config/rx/rx-protos.h (rx_print_operand): Delete prototype.
- (rx_print_operand_address): Delete prototype.
- * config/rx/rx.c (rx_print_operand): Make static.
- Allow %H and %L to handle CONST_DOUBLEs.
- (rx_print_operand_address): Make static.
- (rx_gen_move_template): Rename local variable 'template' to
- out_template.
- (rx_function_arg): Do not pass unknown sized objects in registers.
- (TARGET_PRINT_OPERAND): Define.
- (TARGET_PRINT_OPERAND_ADDRESS): Define.
-
-2010-06-21 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * Makefile.in (POD2MAN): Provide --date from $(DATESTAMP).
-
-2010-06-21 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/i386.c (ix86_compute_frame_layout): Avoid
- stack-alignment for simple leaf-functions.
-
-2010-06-20 Alexandre Oliva <aoliva@redhat.com>
-
- * doc/install.texi: Document bootstrap-lto.
-
-2010-06-20 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/44248
- * lto-streamer-in.c (input_bb): Leave debug stmts alone.
- (input_function): Drop them here, if VTA is disabled.
-
-2010-06-20 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/44546
- * config/i386/predicates.md (ix86_swapped_fp_comparsion_operator):
- New predicate.
- * config/i386/i386.md (*fp_jcc_8<mode>_387 and splitters): Use
- ix86_swapped_fp_comparsion_operator instead of
- ix86_fp_comparison_operator.
-
- (*fp_jcc_1_387): Rename from *fp_jcc_3_387.
- (*fp_jcc_1r_387): Rename from *fp_jcc_4_387.
- (*fp_jcc_2_387): Rename from *fp_jcc_5_387.
- (*fp_jcc_2r_387): Rename from *fp_jcc_6_387.
- (*fp_jcc_3_387): Rename from *fp_jcc_7_387.
- (*fp_jcc_4_<mode>_387): Rename from *fp_jcc_8<mode>_387.
-
-2010-06-20 Joseph Myers <joseph@codesourcery.com>
-
- PR other/32998
- * opth-gen.awk: Generate definitions of OPT_SPECIAL_unknown,
- OPT_SPECIAL_program_name and OPT_SPECIAL_input_file.
- * opts-common.c (find_opt): Return OPT_SPECIAL_unknown on failure.
- (decode_cmdline_option): Update for this return value. Set
- orig_option_with_args_text field. Set arg field for unknown
- options. Make static.
- (decode_cmdline_options_to_array): New.
- (prune_options): Update handling of find_opt return value.
- * opts.c (read_cmdline_option): Take decoded option. Return void.
- (read_cmdline_options): Take decoded options.
- (decode_options): Add parameters for decoded options. Use
- decode_cmdline_options_to_array. Use decoded options for -O
- scan. Use integral_argument for -O parameters. Update call to
- read_cmdline_options.
- (enable_warning_as_error): Update handling of find_opt return value.
- * opts.h: Update comment on unknown options.
- (struct cl_decoded_option): Update comments on opt_index and arg.
- Add orig_option_with_args_text.
- (decode_cmdline_option): Remove.
- (decode_cmdline_options_to_array): Declare.
- (decode_options): Update prototype.
- * toplev.c (save_argv): Remove.
- (save_decoded_options, save_decoded_options_count): New.
- (read_integral_parameter): Remove.
- (print_switch_values): Use decoded options.
- (toplev_main): Don't set save_argv. Update call to decode_options.
- * toplev.h (read_integral_parameter): Remove.
- * varasm.c (elf_record_gcc_switches): Don't handle holding back names.
-
-2010-06-19 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/44072
- * arm.md (cmpsi2_addneg): Prefer emitting adds to subs with a negative
- immediate.
- * constraints.md (Pw, Px): New constraints.
- * thumb2.md (cmpsi2_addneg peephole2): New peepholes.
-
-2010-06-19 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/sse.md (fma4modesuffixf4): Removed.
- (ssemodesuffixf2s): Likewise.
- (ssemodesuffixf4): Likewise.
- (ssemodesuffixf2c): Likewise.
- (ssescalarmodesuffix2s): Likewise.
- (avxmodesuffixf2c): Likewise.
- (ssemodesuffix): New.
- (ssescalarmodesuffix): Likewise.
- Update patterns with ssemodesuffix and ssescalarmodesuffix.
-
-2010-06-19 Philip Herron <herron.philip@googlemail.com>
-
- * c-decl.c (c_write_global_declarations): Don't check flag_syntax_only.
-
-2010-06-18 H.J. Lu <hongjiu.lu@intel.com>
-
- * stor-layout.c (debug_rli): Remove unused local variables.
-
-2010-06-18 Eric Botcazou <ebotcazou@adacore.com>
-
- PR rtl-optimization/40900
- * expr.c (expand_expr_real_1) <SSA_NAME>: Fix long line. Save the
- original expression for later reuse.
- <expand_decl_rtl>: Use promote_function_mode to compute the signedness
- of the promoted RTL for a SSA_NAME on the LHS of a call statement.
-
-2010-06-18 Anatoly Sokolov <aesok@post.ru>
-
- * double-int.h (double_int_to_shwi, double_int_to_uhwi,
- double_int_fits_in_uhwi_p): Implement as static inline.
- (double_int_xor): New inline function.
- (double_int_lrotate, double_int_rrotate, double_int_max,
- double_int_umax, double_int_smax, double_int_min, double_int_umin,
- double_int_smin): Declare.
- (lrotate_double, rrotate_double): Remove declaration.
- * double-int.c (double_int_fits_in_uhwi_p, double_int_to_shwi,
- double_int_to_uhwi, lrotate_double, rrotate_double): Remove function.
- (double_int_lrotate, double_int_rrotate, double_int_max,
- double_int_umax, double_int_smax, double_int_min, double_int_umin,
- double_int_smin): New function.
- * fold-const.c (int_const_binop): Clean up, use double_int_*
- functions.
- * simplify-rtx.c (simplify_const_binary_operation): Clean up, use
- double_int_* and immed_double_int_const functions.
-
-2010-06-18 Nathan Froyd <froydnj@codesourcery.com>
-
- * function.h (types_used_by_cur_var_decl): Change type to a VEC.
- * function.c (types_used_by_cur_var_decl): Likewise.
- (used_types_insert): Adjust for new type of types_used_by_cur_var_decl.
-
-2010-06-18 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (record_layout_info): Change type of pending_statics field
- to a VEC.
- * stor-layout.c (start_record_layout): Store NULL into
- pending_statics.
- (debug_rli): Call debug_vec_tree instead of debug_tree.
- (place_field): Likewise.
- (finish_record_layout): Likewise.
-
-2010-06-18 Alan Modra <amodra@gmail.com>
-
- * config/rs6000/linux64.h (SET_CMODEL): Don't expand to empty.
-
-2010-06-17 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/43740
- * config/pa/pa.c (emit_move_sequence): Don't infer REG_POINTER flag
- for SET source operand from SET destination operand.
-
-2010-06-17 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/39871
- * reload1.c (init_eliminable_invariants): For flag_pic, disable
- equivalences only for constants that aren't LEGITIMATE_PIC_OPERAND_P.
- (function_invariant_p): Rule out a plus of frame or arg pointer with
- a SYMBOL_REF.
- * ira.c (find_reg_equiv_invariant_const): Likewise.
-
-2010-06-17 Gunther Nikl <gnikl@users.sourceforge.net>
-
- * config/rs6000/rs6000.c (print_operand) <'K'>: Also use
- print_operand_address and puts to output the operand for CONST.
-
-2010-06-17 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44572
- * dwarf2out.c (dwarf2out_debug_hooks): Add entry for begin_epilogue
- hook.
-
-2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * v850-protos.h (print_operand): Delete.
- (print_operand_address): Delete.
- * v850.h (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * v850.c (print_operand_address): Rename to...
- (v850_print_operand_address): ...this. Make static. Call
- v850_print_operand.
- (print_operand): Rename to...
- (v850_print_operand): ...this. Make static. Call
- v850_print_operand_address.
- (v850_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS): Define.
- (TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define.
-
-2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/sh/sh-protos.h (print_operand): Delete.
- (print_operand_address): Delete.
- * config/sh/sh.h (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * config/sh/sh.c (sh_print_operand_address): Make static.
- (sh_print_operand): Make static. Call sh_print_operand_address
- and sh_print_operand.
- (sh_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS): Define.
- (TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define.
-
-2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/mcore/mcore-protos.h (mcore_print_operand): Delete.
- (mcore_print_operand_address): Delete.
- * config/mcore/mcore.h (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * config/mcore/mcore.c (mcore_print_operand_address): Make static.
- (mcore_print_operand): Make static.
- (mcore_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS): Define
- (TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define.
-
-2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/m68hc11/m68hc11-protos.h (print_operand): Delete.
- (print_operand_address): Delete.
- * config/m68hc11/m68hc11.h (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * config/m68hc11/m68hc11.c (m68hc11_print_operand_address): Make
- static.
- (m68hc11_print_operand): Make static.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS): Define.
-
-2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/m32r/m32r-protos.h (m32r_print_operand): Delete.
- (m32r_print_operand_address): Delete.
- * config/m32r/m32r.h (m32r_punct_chars): Delete.
- (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * config/m32r/m32r.c (m32r_punct_chars): Make static.
- (m32r_print_operand_address): Make static.
- (m32r_print_operand): Make static.
- (m32r_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
- (TARGET_PRINT_OPERAND_ADDRESS): Define.
-
-2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/iq2000/iq2000-protos.h (print_operand): Delete.
- (print_operand_address): Delete.
- * config/iq2000/iq2000.h (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- (iq2000_print_operand_punct): Delete.
- * config/iq2000/iq2000.c (iq2000_print_operand_punct): Make static.
- (iq2000_print_operand_address): Make static.
- (iq2000_print_operand): Make static.
- (iq2000_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
- (TARGET_PRINT_OPERAND_ADDRESS): Define.
-
-2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/frv/frv-protos.h (frv_print_operand): Delete.
- (frv_print_operand_address): Delete.
- * config/frv/frv.h (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * config/frv/frv.c (frv_print_operand_address): Make static.
- (frv_print_operand): Make static.
- (frv_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
- (TARGET_PRINT_OPERAND_ADDRESS): Define.
-
-2010-06-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (vec_member): Declare.
- * tree.c (vec_member): Define.
-
-2010-06-17 Richard Guenther <rguenther@suse.de>
-
- * tree-flow-inline.h (array_ref_contains_indirect_ref): Remove.
- * tree-flow.h (array_ref_contains_indirect_ref): Likewise.
-
-2010-06-17 Richard Guenther <rguenther@suse.de>
-
- * tree-inline.c (declare_return_variable): Remove bogus code.
-
-2010-06-17 Richard Guenther <rguenther@suse.de>
-
- * gimplify.c (gimplify_bind_expr): Always promote complex
- and vector variables to registers if possible.
-
-2010-06-17 Richard Guenther <rguenther@suse.de>
-
- * expr.c (get_inner_reference): Use double_int for bit_offset
- calculation.
-
-2010-06-16 DJ Delorie <dj@redhat.com>
-
- * common.opt (-fstrict-volatile-bitfields): new.
- * doc/invoke.texi: Document it.
- * fold-const.c (optimize_bit_field_compare): For volatile
- bitfields, use the field's type to determine the mode, not the
- field's size.
- * expr.c (expand_assignment): Likewise.
- (get_inner_reference): Likewise.
- (expand_expr_real_1): Likewise.
- * expmed.c (store_fixed_bit_field): Likewise.
- (extract_bit_field_1): Likewise.
- (extract_fixed_bit_field): Likewise.
-
-2010-06-16 Richard Guenther <rguenther@suse.de>
-
- * tree-inline.c (remap_gimple_op_r): Recurse using remap_gimple_op_r.
-
-2010-06-16 Douglas B Rupp <rupp@gnat.com>
-
- * config/ia64/vms.h (ASM_OUTPUT_DWARF_DELTA_UNITS): Remove.
- (ASM_OUTPUT_DWARF_VMS_DELTA: Define new macro.
- * dbxout.c (gcc_debug_hooks): New entry begin_epilogue.
- * debug.c: Likewise.
- * sdbout.c: Likewise.
- * vmsdbgout.c: Likewise.
- * debug.h: Likewise. (dwarf2out_vms_{begin,end}_prologue): Declare.
- * doc/tm.texi (ASM_OUTPUT_DWARF_VMS_DELTA): Document.
- * dwarf2asm.c (dw2_asm_output_vms_delta): New function.
- (ASM_OUTPUT_DWARF_VMS_DELTA): Call it.
- * dwarf2asm.h (dw2_asm_output_vms_delta): Declare.
- * dwarf2out.c (dw_fde_struct): New fields
- dw_fde_vms_{end,begin}_prologue.
- (PROLOGUE_END_LABEL, EPILOGUE_BEGIN_LABEL): New macros.
- (dwarf2out_begin_prologue): Set dw_fde_struct defaults for above.
- (dwarf2out_vms_end_prologue): New function.
- (dwarf2out_vms_begin_epilogue): New function.
- (dw_val_struct): New value dw_val_class_vms_delta.
- (gcc_debug_hooks): New entry begin_epilogue. Set end_prologue,
- begin_epilogue for VMS.
- (AT_vms_delta1, AT_vms_delta2, add_AT_vms_delta): Declare
- new static functions.
- (dwarf_attr_name): New cases DW_AT_HP_{prologue,epilogue}.
- (AT_vms_delta1, AT_vms_delta2, add_AT_vms_delta): New
- static functions.
- (print_die): New case dw_val_class_vms_delta.
- (attr_checksum): Likewise.
- (same_dw_val_p: Likewise.
- (size_of_die): Likewise.
- (value_format): Likewise.
- (output_die): Likewise.
- (gen_subprogram_die): Call add_AT_vms_delta on VMS.
- (dwarf2out_begin_epilogue): Rename to dwarf2out_cfi_begin_epilogue
- * dwarf2out.h (dwarf2out_begin_epilogue): Rename to
- dwarf2out_cfi_begin_epilogue
- * final.c (final_scan_insn): Likewise. Call begin_epilogue.
-
-2010-06-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/cris/cris-protos.h (cris_print_operand): Delete.
- (cris_print_operand_address): Delete.
- * config/cris/cris.h (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * config/cris/cris.c (cris_print_operand_address): Make static.
- (cris_print_operand): Make static.
- (cris_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
- (TARGET_PRINT_OPERAND_ADDRESS): Define.
-
-2010-06-16 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/arm/arm-protos.h (arm_print_operand): Delete.
- (arm_print_operand_address): Delete.
- * config/arm/arm.h (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND_ADDRESS, ARM_PRINT_OPERAND_ADDRESS):
- (THUMB_PRINT_OPERAND_ADDRESS): Delete and move code to...
- * config/arm/arm.c (arm_print_operand_address): ...here. New function.
- (arm_print_operand): Make static.
- (arm_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
- (TARGET_PRINT_OPERAND_ADDRESS): Define.
-
-2010-06-16 Nick Clifton <nickc@redhat.com>
-
- * config/rx/constraints.md (NEGint4): New constraint.
- * config/rx/rx.md (attr cc): Add set_zsc.
- (cbranchsf4): Only test for -fnon-call-exceptions if cfun has been
- initialised.
- (cmpsf): Likewise.
- (call_internal): Clobber the cc0 register.
- (call_value_internal): Likewise.
- (cstoresi4): Likewise.
- (movsieq): Likewise.
- (movsine): Likewise.
- (addsi3): Add alternative to handle small negative constants.
- (sunsi3): Likewise.
- (addsi3): Do not set the O bit in the cc0 register.
- (adddi3): Likewise.
- (subsi3): Likewise.
- (subdi3): Likewise.
- (andsi3): Reorder alternatives to prefer shorter forms.
- (mulsi3): Likewise.
- (iorsi3): Likewise.
- (negsi2): Note that the cc0 flags are set.
- (rotlsi3): Note that only the Z and S bits are set in cc0.
- (lshrsi3): Likewise.
- (ashlsi3): Likewise.
- (subsf3): Use %Q for the MEM operand.
- (fix_truncsfsi2): Likewise.
- (floatsisf2): Likewise.
- (bitset): Remove early clobber from destination.
- (bitset_in_memory): Likewise.
- (lrintsf2): Clobber the cc0 register.
- * config/rx/rx.c (rx_notice_update_cc): Handle CC_SET_ZSC.
- (rx_print_operand): Handle %N.
-
-2010-06-16 Jan Hubicka <jh@suse.cz>
-
- * df-core.c (df_compact_blocks): Free problem_temps vector.
-
-2010-06-16 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/43905
- * tree-sra.c: Include tree-inline.h.
- (create_abstract_origin): Removed.
- (modify_function): Version the call graph node instead of creating
- abstract origins and dealing with same_body aliases.
- * tree-sra.c (ipa_sra_preliminary_function_checks): Check whether the
- function is versionable.
- * Makefile.in (tree-sra.o): Add TREE_INLINE_H to dependencies.
-
-2010-06-16 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * config/mips/linux64.h (BIONIC_DYNAMIC_LINKERN32): Define.
- (CHOOSE_DYNAMIC_LINKER): Update.
-
-2010-06-15 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (*prefetch_sse_<mode>): Macroize insn from
- *prefetch_sse and *prefetch_sse_rex using P mode iterator.
- (*prefetch_3dnow_<mode>): Ditto from *prefetch_3dnow and
- *prefetch_3dnow_rex.
-
-2010-06-15 Anatoly Sokolov <aesok@post.ru>
-
- * target.h (struct asm_out):Add declare_constant_name field.
- * target-def.h (TARGET_ASM_DECLARE_CONSTANT_NAME): Define.
- (TARGET_INITIALIZER): Use TARGET_ASM_DECLARE_CONSTANT_NAME.
- * output.h (default_asm_declare_constant_name): Declare.
- (assemble_label): Update prototype.
- * varasm.c (assemble_constant_contents): Use
- targetm.asm_out.declare_constant_name target hook.
- (assemble_label): Add 'file' argument.
- (default_asm_declare_constant_name): New function.
- * system.h (ASM_DECLARE_CONSTANT_NAME): Poison.
- * doc/tm.texi (ASM_DECLARE_CONSTANT_NAME): Remove.
- (TARGET_ASM_DECLARE_CONSTANT_NAME): Document it.
-
- * config/darwin-protos.h (darwin_asm_declare_constant_name): Declare.
- * config/darwin.c (darwin_asm_declare_constant_name): New function.
- (machopic_output_indirection): Update assemble_label argument list.
- * config/darwin.h (ASM_DECLARE_CONSTANT_NAME): Remove.
- (TARGET_ASM_DECLARE_CONSTANT_NAME): Define.
-
-2010-06-15 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/44391
- * graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use
- size_one_node for pointer types. Do not call gmp_cst_to_tree.
-
-2010-06-15 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-pre.c (eliminate): Handle PHI elimination to constants.
-
-2010-06-15 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (use_vfp_abi): Add sorry() for Thumb-1
- hard-float ABI.
-
-2010-06-15 Alexandre Oliva <aoliva@redhat.com>
-
- * tree-vect-patterns.c (vect_pattern_recog_1): Bail out if we
- don't get a vector type for output.
-
-2010-06-15 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/44536
- * langhooks.h (struct lang_hooks_for_decls): Add omp_report_decl.
- * langhooks-def.h (LANG_HOOKS_OMP_REPORT_DECL): Define.
- (LANG_HOOKS_DECLS): Add it.
- * gimplify.c (omp_notice_variable): Call
- lang_hooks.decls.omp_report_decl.
-
-2010-06-15 Martin Jambor <mjambor@suse.cz>
-
- PR lto/44464
- * tree-sra.c (replace_removed_params_ssa_names): Call release_ssa_name
- on the newly dead SSA name.
-
-2010-06-15 Alan Modra <amodra@gmail.com>
-
- * doc/invoke.texi: Add mcmodel to powerpc options.
- * configure.ac: Add HAVE_LD_LARGE_TOC test.
- * configure: Regenerate.
- * config.in: Regenerate.
- * config/rs6000/linux64.opt (mcmodel): New.
- * config/rs6000/linux64.h (TARGET_USES_LINUX64_OPT): Define.
- (TARGET_CMODEL, SET_CMODEL): Define.
- (SUBSUBTARGET_OVERRIDE_OPTIONS): Check user -mcmodel choice,
- select CMODEL_MEDIUM default.
- * config/rs6000/rs6000.h (enum rs6000_cmodel): New.
- (TARGET_CMODEL): Define default.
- * config/rs6000/rs6000.c (cmodel): New variable.
- (rs6000_explicit_options): Add cmodel field.
- (rs6000_handle_option): Handle -mcmodel.
- (create_TOC_reference): Add largetoc_reg param. Generate high,
- lo_sum rtl for CMODEL_MEDIUM and CMODEL_LARGE. Update all callers.
- (rs6000_delegitimize_address): Recognise new toc reference rtl
- and minimal-toc rtl.
- (rs6000_legitimize_reload_address): Handle new toc references.
- (print_operand_address): Handle legitimate_constant_pool_address_p
- match before lo_sum.
- (rs6000_eliminate_indexed_memrefs): Tidy.
- (rs6000_emit_move): Tweak threshold for inlining constants.
- Keep rs6000_emit_allocate_stack large stack frame offsets
- loaded into r0 inline.
- (rs6000_generate_compare <cmptf_internal2>): One more clobber.
- (tocrel_base, tocrel_offset): New variables.
- (toc_relative_expr_p): Set them here.
- (print_operand_address): Skip over any offset on constant pool address.
- (rs6000_output_addr_const_extra): Print tocrel_offset before @toc.
- (rs6000_mode_dependent_address <LO_SUM>): False for new toc refs.
- (offsettable_ok_by_alignment): New function.
- (rs6000_emit_move): Address suitably aligned local symbol_refs
- relative to the toc pointer for -mcmodel=medium.
- (legitimate_constant_pool_address_p): Make param const_rtx. Add
- strict param. Allow lo_sum version of addressing. Verify reg
- used for -mminimal-toc and -mcmodel != small. Update all callers.
- * config/rs6000/constraints.md: Update for above change.
- * config/rs6000/predicates.md: Likewise.
- * config/rs6000/rs6000.md (tls_gd_aix): Generate -mcmodel=medium/large
- code.
- (tls_gd): Split for -mcmodel=medium/large.
- (tls_gd_high, tls_gd_low): New.
- (tls_ld_aix, tls_ld, tls_ld_high, tls_ld_low): Similarly.
- (tls_got_dtprel, tls_got_dtprel_high, tls_got_dtprel_low): Similarly.
- (tls_got_tprel, tls_got_tprel_high, tls_got_tprel_low): Similarly.
- (largetoc_high, largetoc_low): New.
- (cmptf_internal2): Add clobber.
- * config/rs6000/rs6000-protos.h: Update.
-
-2010-06-14 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (nothing_to_prefetch_p): New. Return
- true if no prefetch is going to be generated for a given group.
- (estimate_prefetch_count): Use prefetch_mod and unroll_factor to
- estimate the prefetch_count.
- (loop_prefetch_arrays): Call nothing_to_prefetch_p; estimate the
- prefetch count by considering the unroll_factor and prefetch_mod
- for is_loop_prefetching_profitable.
-
-2010-06-14 Andreas Schwab <schwab@linux-m68k.org>
-
- * config/m68k/m68k.c (m68k_delegitimize_address): Don't do
- anything if the argument is not a MEM.
-
-2010-06-14 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/43650
- PR debug/44181
- PR debug/44247
- * tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Skip
- debug stmts.
- (canonicalize_loop_ivs): Likewise.
-
-2010-06-14 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/43656
- * haifa-sched.c (setup_insn_reg_pressure_info,
- update_register_pressure): Reject debug insns.
- (ready_sort): Don't setup reg pressure for debug insns.
- (schedule_insn): Don't update reg pressure for debug insns.
-
-2010-06-14 Richard Guenther <rguenther@suse.de>
-
- * lto-streamer.c (cached_bp): Remove.
- (bitpack_delete): Likewise.
- (bitpack_create): Likewise.
- (bp_get_next_word): Likewise.
- (bp_pack_value, bp_unpack_value): Move ...
- * lto-streamer.h (bp_pack_value, bp_unpack_value): ... here.
- Re-implement.
- (struct bitpack_d): Likewise.
- (bitpack_create, lto_output_bitpack, lto_input_bitpack):
- New inline functions.
- * lto-streamer-out.c (lto_output_bitpack): Remove.
- (pack_ts_base_value_fields): Adjust. Avoid conditional bitpacking.
- (pack_value_fields): Adjust.
- (lto_write_tree): Likewise.
- (output_gimple_stmt): Likewise.
- (output_function): Likewise.
- * lto-streamer-in.c (input_gimple_stmt): Adjust.
- (input_function): Likewise.
- (unpack_ts_base_value_fields): Adjust. Avoid conditional bitpacking.
- (lto_input_bitpack): Remove.
- (lto_materialize_tree): Adjust.
- * Makefile.in (ipa-prop.o): Add $(LTO_STREAMER_H) dependency.
- * lto-cgraph.c (lto_output_edge): Adjust.
- (lto_output_node): Likewise.
- (lto_output_varpool_node): Likewise.
- (lto_output_ref): Likewise.
- (input_node): Likewise.
- (input_varpool_node): Likewise.
- (input_ref): Likewise.
- (input_edge): Likewise.
- (output_node_opt_summary): Likewise.
- (input_node_opt_summary): Likewise.
- * ipa-pure-const.c (pure_const_write_summary): Likewise.
- (pure_const_read_summary): Likewise.
- * ipa-prop.c (ipa_write_indirect_edge_info): Likewise.
- (ipa_read_indirect_edge_info): Likewise.
- (ipa_write_node_info): Likewise.
- (ipa_read_node_info): Likewise.
-
-2010-06-14 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44534
- * config/i386/sse.md (vec_extract_lo_<mode>): Replace 0x1 with 0x0.
- (vec_extract_lo_v16hi): Likewise.
- (vec_extract_lo_v32qi): Likewise.
-
-2010-06-14 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/44426
- * tree.h (build_call_expr): Don't define as vararg macro, instead
- add a prototype.
- * builtins.c (build_call_nofold): Remove.
- (expand_builtin_int_roundingfn, expand_builtin_pow,
- expand_builtin_mempcpy_args, expand_builtin_stpcpy,
- expand_builtin_memset_args, expand_builtin_strcmp,
- expand_builtin_strncmp, expand_builtin_memory_chk): Use
- build_call_nofold_loc instead of build_call_nofold.
- (build_call_expr): New function.
-
- PR tree-optimization/44508
- * tree-ssa-propagate.h (substitute_and_fold): Add DO_DCE argument.
- * tree-ssa-propagate.c (substitute_and_fold): If !DO_DCE,
- don't eliminate trivially dead stmts.
- * tree-vrp.c (vrp_finalize): Pass false as last argument
- to substitute_and_fold.
- * tree-ssa-copy.c (fini_copy_prop): Pass true as last argument
- to substitute_and_fold.
- * tree-ssa-ccp.c (ccp_finalize): Likewise.
-
- PR bootstrap/44509
- * c-config-lang.in (gtfiles): Add c-family/c-cppbuiltin.c.
-
-2010-06-14 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/44507
- * tree-vect-loop.c (get_initial_def_for_reduction): Use -1
- to build initial vector for BIT_AND_EXPR.
- * tree-vect-slp.c (vect_get_constant_vectors): Likewise.
-
-2010-06-14 Jakub Jelinek <jakub@redhat.com>
-
- * config/s390/s390.md (*mov<mode>_64 DD_DF, mov<mode>): Properly
- adjust z10prop set_attr.
-
-2010-06-13 Jan Hubicka <jh@suse.cz>
-
- * bitmap.c (bitmap_and, bitmap_and_into, bitmap_and_compl,
- bitmap_and_compl_into, bitmap_compl_and_into, bitmap_ior,
- bitmap_ior_into, bitmap_xor, bitmap_xor_into,
- bitmap_ior_and_compl, bitmap_ior_and_compl): Turn internal
- datastructure checks into checking asserts.
- * rtlanal.c (find_reg_note): Use gcc_checking_assert.
- * tree-ssa-sccvn.c (VN_INFO): Likewise.
- * df-scan.c (df_reorganize_refs_by_reg_by_reg, df_install_ref,
- df_ref_create_structure): Likewise.
- * alloc-pool.c (create_alloc_pool, empty_alloc_pool, pool_alloc,
- pool_free): Use gcc_checking_assert.
- * alias.c (get_alias_set): Likewise.
- * var-tracking.c (variable_htab_free, shared_hash_copy,
- canonicalize_values_mark, variable_merge_over_cur): Likewise.
- * lto-streamer.c (bp_unpack_value): Likewise.
-
-2010-06-13 Richard Guenther <rguenther@suse.de>
-
- * lto-streamer-in.c (lto_input_ts_type_tree_pointers):
- Do not stream but initialize TYPE_CANONICAL to NULL.
- (lto_output_ts_type_tree_pointers): Do not stream TYPE_CANONICAL.
- * gimple.c (gimple_types_compatible_p): Disregard
- TYPE_STRUCTURAL_EQUALITY_P.
- (gimple_register_type): Use TYPE_CANONICAL as cache.
- * lto-streamer.c (lto_record_common_node): Zero TYPE_CANONICAL
- before registering common types.
- * config/i386/i386.c (ix86_function_arg_boundary): Do not
- use TYPE_CANONICAL, instead use TYPE_MAIN_VARIANT.
- * tree.h (TYPE_CANONICAL): Clarify documentation.
-
-2010-06-13 Anatoly Sokolov <aesok@post.ru>
-
- * config/ia64/ia64.h (FUNCTION_VALUE_REGNO_P, FUNCTION_VALUE,
- LIBCALL_VALUE): Remove macros.
- * config/ia64/ia64-protos.h (ia64_function_value): Remove.
- * config/ia64/ia64.c (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
- TARGET_FUNCTION_VALUE_REGNO_P): Define.
- (ia64_libcall_value, ia64_function_value_regno_p): New functions.
- (ia64_function_value): Make static. Handle receiving the function
- type in 'fn_decl_or_type' argunent. Add 'outgoing' argument.
-
-2010-06-12 Jan Hubicka <jh@suse.cz>
-
- * cse.c (cse_extended_basic_block): Move optimize_bb_for_speed_p
- at correct place.
-
-2010-06-12 Bernd Schmidt <bernds@codesourcery.com>
-
- * config/arm/arm.c (thumb2_reorg): Fix errors in previous change.
-
-2010-06-12 Jan Hubicka <jh@suse.cz>
-
- * df-core.c (df_clear_bb_info): New function.
- (df_set_blocks): bb_info is always allocated.
- (df_get_bb_info): Use block_info_elt_size.
- (df_set_bb_info): Likewise.
- (df_compact_blocks): Update for new block_info.
- (grow_bb_info): New function.
- * df-problems.c (df_grow_bb_info): Move to df-core.c
- (df_rd_set_bb_info): Remove.
- (df_rd_free_bb_info): Do not free block pool.
- (df_rd_alloc): Do not create pool, use check for
- obstack presence instead of NULL pointer for new blocks.
- (df_rd_free): DO not free alloc pool; clear block_info.
- (problem_RD): Add size of block info structure.
- (df_lr_set_bb_info): Remove.
- (df_lr_free_bb_info): Do not free block pool.
- (df_lr_alloc): Do not create pool, use check for
- obstack presence instead of NULL pointer for new blocks.
- (df_lr_free): DO not free alloc pool; clear block_info.
- (problem_LR): Add size of block info structure.
- (df_live_set_bb_info): Remove.
- (df_live_free_bb_info): Do not free block pool.
- (df_live_alloc): Do not create pool, use check for
- obstack presence instead of NULL pointer for new blocks.
- (df_live_free): DO not free alloc pool; clear block_info.
- (problem_LIVE): Add size of block info structure.
- (problem_CHAIN): Add size of block info structure.
- (df_byte_lr_set_bb_info): Remove.
- (df_byte_lr_free_bb_info): Do not free block pool.
- (df_byte_lr_alloc): Do not create pool, use check for
- obstack presence instead of NULL pointer for new blocks.
- (df_byte_lr_free): DO not free alloc pool; clear block_info.
- (problem_BYTE_LR): Add size of block info structure.
- (problem_NOTE): Add size of block info structure.
- (df_byte_MD_set_bb_info): Remove.
- (df_byte_MD_free_bb_info): Do not free block pool.
- (df_byte_MD_alloc): Do not create pool, use check for
- obstack presence instead of NULL pointer for new blocks.
- (df_byte_MD_free): DO not free alloc pool; clear block_info.
- (problem_BD): Add size of block info structure.
- * df-scan.c (df_scan_free_internal): Free block pool.
- (df_scan_set_bb_info): Remove.
- (df_scan_free_bb_info): Check for artificial_defs instead
- of bb_info being non-NULL.
- (df_scan_alloc): DO not create df_scan_block pool.
- (problem_SCAN): Set size of block info.
- (df_bb_refs_record): Do not allocate bb_info.
- * df.h (df_problem): Add block_info_elt_size.
- (struct dataflow): Change block_info to void *.
- (df_scan_get_bb_info, df_rd_get_bb_info, df_lr_get_bb_info,
- df_md_get_bb_info, df_live_get_bb_info, df_byte_lr_get_bb_info): Return
- in-line structures.
-
-2010-06-12 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimize/44485
- * tree-cfgcleanup.c (fixup_noreturn_call): Remove basic blocks
- containing use of return value of noreturn function.
-
-2010-06-12 Anatoly Sokolov <aesok@post.ru>
-
- * targhooks.c (default_function_value): Don't use
- FUNCTION_OUTGOING_VALUE.
- * system.h (FUNCTION_OUTGOING_VALUE): Poison.
- * doc/tm.texi (FUNCTION_OUTGOING_VALUE): Removed.
-
-2010-06-12 Kazu Hirata <kazu@codesourcery.com>
-
- * config.gcc (mips64*-*-linux*, mipsisa64*-*-linux*, mips*-*-linux*):
- Add crtfastmath.o to extra_parts.
- * config/mips/crtfastmath.c: New.
- * config/mips/linux.h (ENDFILE_SPEC): New.
-
-2010-06-12 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (gcc_type_for_interval): Do not pass
- old_type in parameter.
- (gcc_type_for_value): Update call to gcc_type_for_interval.
- (compute_type_for_level_1): Renamed compute_type_for_level.
- Update call to gcc_type_for_interval.
-
-2010-06-11 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (Wstrict-aliasing=, Wstrict-overflow=, fabi-version=,
- flto-compression-level=, ftree-parallelize-loops=): Add RejectNegative.
-
-2010-06-11 Joseph Myers <joseph@codesourcery.com>
-
- * opts-common.c: Include options.h.
- (integral_argument): Move from opts.c.
- (decode_cmdline_option): New. Based on read_cmdline_option.
- * opts.c (integral_argument): Move to opts-common.c.
- (read_cmdline_option): Move most contents to
- decode_cmdline_option. Use %qs in diagnostics.
- * opts.h (CL_ERR_DISABLED, CL_ERR_MISSING_ARG, CL_ERR_WRONG_LANG,
- CL_ERR_UINT_ARG, struct cl_decoded_option, integral_argument,
- decode_cmdline_option): New.
-
-2010-06-11 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/44481
- * config/i386/i386.md (UNSPEC_PARITY): New unspec.
- (paritydi2_cmp): Use UNSPEC_PARITY unspec instead of parity RTX.
- (partiysi2_cmp): Ditto.
- (*partiyhi2_cmp): Ditto.
- (*parityqi2_cmp): Remove.
-
-2010-06-11 Jan Hubicka <jh@suse.cz>
-
- * bitmap.h (bmp_iter_next_bit): New.
- (bmp_iter_set, bmp_iter_and, bmp_iter_and_compl): Use it.
-
-2010-06-11 Sandra Loosemore <sandra@codesourcery.com>
- Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the
- computed cost.
-
-2010-06-11 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (unspec): New define_c_enum.
- (unspecv): Ditto.
-
-2010-06-10 Jakub Jelinek <jakub@redhat.com>
-
- * Makefile.in (c-family/c-cppbuiltin.o): Depend on $(CPP_ID_DATA_H).
-
-2010-06-11 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/44483
- * tree-if-conv.c (bb_predicate_s): New struct.
- (bb_predicate_p): New.
- (bb_has_predicate): New.
- (bb_predicate): New.
- (set_bb_predicate): New.
- (bb_predicate_gimplified_stmts): New.
- (set_bb_predicate_gimplified_stmts): New.
- (add_bb_predicate_gimplified_stmts): New.
- (init_bb_predicate): New.
- (free_bb_predicate): New.
- (is_predicated): Use bb_predicate.
- (add_to_predicate_list): Use bb_predicate and set_bb_predicate.
- (predicate_bbs): Same. Gimplify the condition of the basic blocks
- before processing their successors.
- (clean_predicate_lists): Removed.
- (find_phi_replacement_condition): Use bb_predicate.
- (process_phi_nodes): Renamed ifconvert_phi_nodes. Avoid useless
- computations.
- (insert_gimplified_predicates): New.
- (combine_blocks): Call insert_gimplified_predicates.
- (tree_if_conversion): Call free_bb_predicate instead of
- clean_predicate_lists.
-
-2010-10-11 Paul Brook <paul@codesourcery.com>
-
- * doc/invoke.texi: Document ARM -mcpu=cortex-m4.
- * config/arm/arm.c (all_architectures): Change v7e-m default to
- cortexm4.
- * config/arm/arm-cores.def: Add cortex-m4.
- * config/arm/arm-tune.md: Regenerate.
-
-2010-06-11 Jan Hubicka <jh@suse.cz>
-
- * ipa-pure-const.c (special_builtlin_state): New function.
- (check_call): Use it instead of special casign BUILT_IN_RETURN.
- (propagate_pure_const): Use it.
-
-2010-06-11 Jan Hubicka <jh@suse.cz>
-
- * df-problems.c (df_live_scratch): Convert to bitmap_head.
- (df_live_alloc): Initialize df_live_scratch when initializing
- problem_data.
- (df_live_transfer_function): Update uses of df_live_scratch.
- (df_live_free): Free problem_data; clear df_live_scratch before
- releasing the obstack.
- (df_md_free): Free problem data.
-
-2010-06-11 Jan Hubicka <jh@suse.cz>
-
- * doc/invoke.texi (Wsuggest-attribute): Document.
- (Wmissing-noreturn): Remove.
- * ipa-pure-const.c (warn_function_noreturn): New function.
- * opts.c (decode_options): Set warn_suggest_attribute_noreturn on
- warn_missing_noreturn.
- * common.opt (Wsuggest-attribute=noreturn): New.
- * tree-flow.h (warn_function_noreturn): Declare.
- * tree-cfg.c (execute_warn_function_noreturn): Use
- warn_function_noreturn.
- (gate_warn_function_noreturn): New.
- (pass_warn_function_noreturn): Update.
-
-2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * c-typeck.c (handle_warn_cast_qual): Add loc
- parameter. Improve warning message.
- (build_c_cast): Pass location to handle_warn_cast_qual.
-
-2010-06-11 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (pro_epilogue_adjust_stack_1) <TYPE_ALU>: Assert
- that operand 0 == operand 1. Use x86_maybe_negate_const_int to output
- insn mnemonic.
- (pro_epilogue_adjust_stack_rex64) <TYPE_ALU>: Ditto.
-
-2010-06-10 Dodji Seketeli <dodji@redhat.com>
-
- Fix bootstap on mips
- * dwarf2out.c (is_naming_typedef_dec): Built-in TYPE_DECLs cannot
- be naming typedefs.
-
-2010-06-11 Kai Tietz <kai.tietz@onevision.com>
-
- * system.h (helper_const_non_const_cast): New inline for
- gcc version <= 4.0.
- (CONST_CAST2): For gcc version <= 4.0 use
- new helper to do const/non-const casting.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * doc/md.texi: Document the "unspec" and "unspecv" enum names.
- * Makefile.in (OBJS-common): Include insn-enums.o.
- (insn-enums.o): New rule.
- (simple_generated_c): Add insn-enums.c.
- (build/genenums.o): New rule.
- (genprogmd): Add "enums".
- * genconstants.c (print_enum_type): Declare a C string array
- for each enum.
- * genenums.c: New file.
- * print-rtl.c (print_rtx): If defined, use the "unspecv" enum
- for UNSPEC_VOLATILE. If defined, use the "unspec" enum for both
- UNSPEC and (as a fallback) for UNSPEC_VOLATILE.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * doc/md.texi (define_enum_attr): Document.
- * rtl.def (DEFINE_ENUM_ATTR): New rtx.
- * read-md.h (lookup_enum_type): Declare.
- * read-md.c (lookup_enum_type): New function.
- * genattr.c (gen_attr, main): Handle DEFINE_ENUM_ATTR.
- * genattrtab.c (attr_desc): Add an enum_name field.
- (evaluate_eq_attr): Take the associated attribute as argument.
- Get the enum prefix from the enum_name field, if defined.
- Use ACONCAT rather than a fixed-length buffer. Update recursive calls.
- (simplify_test_exp): Pass attr to evaluate_eq_attr.
- (add_attr_value): New function, split out from...
- (gen_attr): ...here. Handle DEFINE_ENUM_ATTR.
- (write_test_expr): Pass attr to evaluate_eq_attr.
- (write_attr_get): Use the enum_name as the enum tag, if defined.
- (write_attr_valueq): Use the enum_name as a prefix, if defined.
- (find_attr): Initialize enum_name.
- (main): Handle DEFINE_ENUM_ATTR.
- * gensupport.c (process_rtx): Likewise.
- * config/mips/mips.h (mips_tune_attr): Delete.
- * config/mips/mips.md (cpu): Use define_attr_enum.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * doc/md.texi (define_c_enum, define_enum): Document.
- * read-md.h (md_constant): Add a parent_enum field.
- (enum_value, enum_type): New structures.
- (upcase_string, traverse_enum_types): Declare.
- * read-md.c (enum_types): New variable.
- (upcase_string, add_constant): New functions.
- (handle_constants): Don't create the hash table here.
- Use add_constant.
- (traverse_md_constants): Don't check for a null md_constants.
- (decimal_string, handle_enum, traverse_enum_types): New functions.
- (read_md_files): Initialize md_constants and md_enums.
- * genconstants.c (print_md_constant): Ignore info argument.
- Only print constants that belong to no enum.
- (print_enum_type): New function.
- (main): Don't pass stdout to print_md_constant. Call print_enum_type
- for each defined enum type.
- * config/mips/mips.md (processor): New define_enum.
- (unspec): New define_c_enum.
- (UNSPEC_COMPARE_AND_SWAP, UNSPEC_COMPARE_AND_SWAP_12)
- (UNSPEC_SYNC_OLD_OP, UNSPEC_SYNC_NEW_OP, UNSPEC_SYNC_NEW_OP_12)
- (UNSPEC_SYNC_OLD_OP_12, UNSPEC_SYNC_EXCHANGE, UNSPEC_SYNC_EXCHANGE_12)
- (UNSPEC_MEMORY_BARRIER): Moved to sync.md.
- (UNSPEC_ADDQ, UNSPEC_ADDQ_S, UNSPEC_SUBQ, UNSPEC_SUBQ_S, UNSPEC_ADDSC)
- (UNSPEC_ADDWC, UNSPEC_MODSUB, UNSPEC_RADDU_W_QB, UNSPEC_ABSQ_S)
- (UNSPEC_PRECRQ_QB_PH, UNSPEC_PRECRQ_PH_W, UNSPEC_PRECRQ_RS_PH_W)
- (UNSPEC_PRECRQU_S_QB_PH, UNSPEC_PRECEQ_W_PHL, UNSPEC_PRECEQ_W_PHR)
- (UNSPEC_PRECEQU_PH_QBL, UNSPEC_PRECEQU_PH_QBR, UNSPEC_PRECEQU_PH_QBLA)
- (UNSPEC_PRECEQU_PH_QBRA, UNSPEC_PRECEU_PH_QBL, UNSPEC_PRECEU_PH_QBR)
- (UNSPEC_PRECEU_PH_QBLA, UNSPEC_PRECEU_PH_QBRA, UNSPEC_SHLL)
- (UNSPEC_SHLL_S, UNSPEC_SHRL_QB, UNSPEC_SHRA_PH, UNSPEC_SHRA_R)
- (UNSPEC_MULEU_S_PH_QBL, UNSPEC_MULEU_S_PH_QBR, UNSPEC_MULQ_RS_PH)
- (UNSPEC_MULEQ_S_W_PHL, UNSPEC_MULEQ_S_W_PHR, UNSPEC_DPAU_H_QBL)
- (UNSPEC_DPAU_H_QBR, UNSPEC_DPSU_H_QBL, UNSPEC_DPSU_H_QBR)
- (UNSPEC_DPAQ_S_W_PH, UNSPEC_DPSQ_S_W_PH, UNSPEC_MULSAQ_S_W_PH)
- (UNSPEC_DPAQ_SA_L_W, UNSPEC_DPSQ_SA_L_W, UNSPEC_MAQ_S_W_PHL)
- (UNSPEC_MAQ_S_W_PHR, UNSPEC_MAQ_SA_W_PHL, UNSPEC_MAQ_SA_W_PHR)
- (UNSPEC_BITREV, UNSPEC_INSV, UNSPEC_REPL_QB, UNSPEC_REPL_PH)
- (UNSPEC_CMP_EQ, UNSPEC_CMP_LT, UNSPEC_CMP_LE, UNSPEC_CMPGU_EQ_QB)
- (UNSPEC_CMPGU_LT_QB, UNSPEC_CMPGU_LE_QB, UNSPEC_PICK, UNSPEC_PACKRL_PH)
- (UNSPEC_EXTR_W, UNSPEC_EXTR_R_W, UNSPEC_EXTR_RS_W, UNSPEC_EXTR_S_H)
- (UNSPEC_EXTP, UNSPEC_EXTPDP, UNSPEC_SHILO, UNSPEC_MTHLIP, UNSPEC_WRDSP)
- (UNSPEC_RDDSP): Move to mips-dsp.md.
- (UNSPEC_ABSQ_S_QB, UNSPEC_ADDU_PH, UNSPEC_ADDU_S_PH, UNSPEC_ADDUH_QB)
- (UNSPEC_ADDUH_R_QB, UNSPEC_APPEND, UNSPEC_BALIGN, UNSPEC_CMPGDU_EQ_QB)
- (UNSPEC_CMPGDU_LT_QB, UNSPEC_CMPGDU_LE_QB, UNSPEC_DPA_W_PH)
- (UNSPEC_DPS_W_PH, UNSPEC_MADD, UNSPEC_MADDU, UNSPEC_MSUB, UNSPEC_MSUBU)
- (UNSPEC_MUL_PH, UNSPEC_MUL_S_PH, UNSPEC_MULQ_RS_W, UNSPEC_MULQ_S_PH)
- (UNSPEC_MULQ_S_W, UNSPEC_MULSA_W_PH, UNSPEC_MULT, UNSPEC_MULTU)
- (UNSPEC_PRECR_QB_PH, UNSPEC_PRECR_SRA_PH_W, UNSPEC_PRECR_SRA_R_PH_W)
- (UNSPEC_PREPEND, UNSPEC_SHRA_QB, UNSPEC_SHRA_R_QB, UNSPEC_SHRL_PH)
- (UNSPEC_SUBU_PH, UNSPEC_SUBU_S_PH, UNSPEC_SUBUH_QB, UNSPEC_SUBUH_R_QB)
- (UNSPEC_ADDQH_PH, UNSPEC_ADDQH_R_PH, UNSPEC_ADDQH_W, UNSPEC_ADDQH_R_W)
- (UNSPEC_SUBQH_PH, UNSPEC_SUBQH_R_PH, UNSPEC_SUBQH_W, UNSPEC_SUBQH_R_W)
- (UNSPEC_DPAX_W_PH, UNSPEC_DPSX_W_PH, UNSPEC_DPAQX_S_W_PH)
- (UNSPEC_DPAQX_SA_W_PH, UNSPEC_DPSQX_S_W_PH, UNSPEC_DPSQX_SA_W_PH):
- Moved to mips-dspr2.md.
- (UNSPEC_MOVE_TF_PS, UNSPEC_C, UNSPEC_ALNV_PS, UNSPEC_CABS)
- (UNSPEC_ADDR_PS, UNSPEC_CVT_PW_PS, UNSPEC_CVT_PS_PW, UNSPEC_MULR_PS)
- (UNSPEC_ABS_PS, UNSPEC_RSQRT1, UNSPEC_RSQRT2, UNSPEC_RECIP1)
- (UNSPEC_RECIP2, UNSPEC_SINGLE_CC, UNSPEC_SCC): Move from mips-ps-3d.md.
- (UNSPEC_LOONGSON_PAVG, UNSPEC_LOONGSON_PCMPEQ, UNSPEC_LOONGSON_PCMPGT)
- (UNSPEC_LOONGSON_PEXTR, UNSPEC_LOONGSON_PINSR_0)
- (UNSPEC_LOONGSON_PINSR_1, UNSPEC_LOONGSON_PINSR_2)
- (UNSPEC_LOONGSON_PINSR_3, UNSPEC_LOONGSON_PMADD)
- (UNSPEC_LOONGSON_PMOVMSK, UNSPEC_LOONGSON_PMULHU)
- (UNSPEC_LOONGSON_PMULH, UNSPEC_LOONGSON_PMULL, UNSPEC_LOONGSON_PMULU)
- (UNSPEC_LOONGSON_PASUBUB, UNSPEC_LOONGSON_BIADD,
- UNSPEC_LOONGSON_PSADBH)
- (UNSPEC_LOONGSON_PSHUFH, UNSPEC_LOONGSON_PUNPCKH)
- (UNSPEC_LOONGSON_PUNPCKL, UNSPEC_LOONGSON_PADDD)
- (UNSPEC_LOONGSON_PSUBD): Move to mips-loongson.md.
- (UNSPEC_LOONGSON_ALU1_TURN_ENABLED_INSN)
- (UNSPEC_LOONGSON_ALU2_TURN_ENABLED_INSN)
- (UNSPEC_LOONGSON_FALU1_TURN_ENABLED_INSN)
- (UNSPEC_LOONGSON_FALU2_TURN_ENABLED_INSN): Move to mips-loongson2ef.md.
- (cpu): Update comment.
- * config/mips/sync.md (UNSPEC_COMPARE_AND_SWAP)
- (UNSPEC_COMPARE_AND_SWAP_12, UNSPEC_SYNC_OLD_OP, UNSPEC_SYNC_NEW_OP)
- (UNSPEC_SYNC_NEW_OP_12, UNSPEC_SYNC_OLD_OP_12, UNSPEC_SYNC_EXCHANGE)
- (UNSPEC_SYNC_EXCHANGE_12, UNSPEC_MEMORY_BARRIER): Moved from mips.md.
- * config/mips/loongson.md (UNSPEC_LOONGSON_PAVG,
- UNSPEC_LOONGSON_PCMPEQ)
- (UNSPEC_LOONGSON_PCMPGT, UNSPEC_LOONGSON_PEXTR,
- UNSPEC_LOONGSON_PINSR_0)
- (UNSPEC_LOONGSON_PINSR_1, UNSPEC_LOONGSON_PINSR_2)
- (UNSPEC_LOONGSON_PINSR_3, UNSPEC_LOONGSON_PMADD)
- (UNSPEC_LOONGSON_PMOVMSK, UNSPEC_LOONGSON_PMULHU)
- (UNSPEC_LOONGSON_PMULH, UNSPEC_LOONGSON_PMULL, UNSPEC_LOONGSON_PMULU)
- (UNSPEC_LOONGSON_PASUBUB, UNSPEC_LOONGSON_BIADD,
- UNSPEC_LOONGSON_PSADBH)
- (UNSPEC_LOONGSON_PSHUFH, UNSPEC_LOONGSON_PUNPCKH)
- (UNSPEC_LOONGSON_PUNPCKL, UNSPEC_LOONGSON_PADDD)
- (UNSPEC_LOONGSON_PSUBD): Moved from mips.md
- * config/mips/loongson2ef.md (UNSPEC_LOONGSON_ALU1_TURN_ENABLED_INSN)
- (UNSPEC_LOONGSON_ALU2_TURN_ENABLED_INSN)
- (UNSPEC_LOONGSON_FALU1_TURN_ENABLED_INSN)
- (UNSPEC_LOONGSON_FALU2_TURN_ENABLED_INSN): Moved from mips.md
- * config/mips/mips-dsp.md (UNSPEC_ADDQ, UNSPEC_ADDQ_S, UNSPEC_SUBQ)
- (UNSPEC_SUBQ_S, UNSPEC_ADDSC, UNSPEC_ADDWC, UNSPEC_MODSUB)
- (UNSPEC_RADDU_W_QB, UNSPEC_ABSQ_S, UNSPEC_PRECRQ_QB_PH)
- (UNSPEC_PRECRQ_PH_W, UNSPEC_PRECRQ_RS_PH_W, UNSPEC_PRECRQU_S_QB_PH)
- (UNSPEC_PRECEQ_W_PHL, UNSPEC_PRECEQ_W_PHR, UNSPEC_PRECEQU_PH_QBL)
- (UNSPEC_PRECEQU_PH_QBR, UNSPEC_PRECEQU_PH_QBLA, UNSPEC_PRECEQU_PH_QBRA)
- (UNSPEC_PRECEU_PH_QBL, UNSPEC_PRECEU_PH_QBR, UNSPEC_PRECEU_PH_QBLA)
- (UNSPEC_PRECEU_PH_QBRA, UNSPEC_SHLL, UNSPEC_SHLL_S, UNSPEC_SHRL_QB)
- (UNSPEC_SHRA_PH, UNSPEC_SHRA_R, UNSPEC_MULEU_S_PH_QBL)
- (UNSPEC_MULEU_S_PH_QBR, UNSPEC_MULQ_RS_PH, UNSPEC_MULEQ_S_W_PHL)
- (UNSPEC_MULEQ_S_W_PHR, UNSPEC_DPAU_H_QBL, UNSPEC_DPAU_H_QBR)
- (UNSPEC_DPSU_H_QBL, UNSPEC_DPSU_H_QBR, UNSPEC_DPAQ_S_W_PH)
- (UNSPEC_DPSQ_S_W_PH, UNSPEC_MULSAQ_S_W_PH, UNSPEC_DPAQ_SA_L_W)
- (UNSPEC_DPSQ_SA_L_W, UNSPEC_MAQ_S_W_PHL, UNSPEC_MAQ_S_W_PHR)
- (UNSPEC_MAQ_SA_W_PHL, UNSPEC_MAQ_SA_W_PHR, UNSPEC_BITREV, UNSPEC_INSV)
- (UNSPEC_REPL_QB, UNSPEC_REPL_PH, UNSPEC_CMP_EQ, UNSPEC_CMP_LT)
- (UNSPEC_CMP_LE, UNSPEC_CMPGU_EQ_QB, UNSPEC_CMPGU_LT_QB)
- (UNSPEC_CMPGU_LE_QB, UNSPEC_PICK, UNSPEC_PACKRL_PH, UNSPEC_EXTR_W)
- (UNSPEC_EXTR_R_W, UNSPEC_EXTR_RS_W, UNSPEC_EXTR_S_H, UNSPEC_EXTP)
- (UNSPEC_EXTPDP, UNSPEC_SHILO, UNSPEC_MTHLIP, UNSPEC_WRDSP)
- (UNSPEC_RDDSP): Moved from mips.md.
- * config/mips/mips-dspr2.md (UNSPEC_ABSQ_S_QB, UNSPEC_ADDU_PH)
- (UNSPEC_ADDU_S_PH, UNSPEC_ADDUH_QB, UNSPEC_ADDUH_R_QB, UNSPEC_APPEND)
- (UNSPEC_BALIGN, UNSPEC_CMPGDU_EQ_QB, UNSPEC_CMPGDU_LT_QB)
- (UNSPEC_CMPGDU_LE_QB, UNSPEC_DPA_W_PH, UNSPEC_DPS_W_PH, UNSPEC_MADD)
- (UNSPEC_MADDU, UNSPEC_MSUB, UNSPEC_MSUBU, UNSPEC_MUL_PH)
- (UNSPEC_MUL_S_PH, UNSPEC_MULQ_RS_W, UNSPEC_MULQ_S_PH, UNSPEC_MULQ_S_W)
- (UNSPEC_MULSA_W_PH, UNSPEC_MULT, UNSPEC_MULTU, UNSPEC_PRECR_QB_PH)
- (UNSPEC_PRECR_SRA_PH_W, UNSPEC_PRECR_SRA_R_PH_W, UNSPEC_PREPEND)
- (UNSPEC_SHRA_QB, UNSPEC_SHRA_R_QB, UNSPEC_SHRL_PH, UNSPEC_SUBU_PH)
- (UNSPEC_SUBU_S_PH, UNSPEC_SUBUH_QB, UNSPEC_SUBUH_R_QB, UNSPEC_ADDQH_PH)
- (UNSPEC_ADDQH_R_PH, UNSPEC_ADDQH_W, UNSPEC_ADDQH_R_W, UNSPEC_SUBQH_PH)
- (UNSPEC_SUBQH_R_PH, UNSPEC_SUBQH_W, UNSPEC_SUBQH_R_W, UNSPEC_DPAX_W_PH)
- (UNSPEC_DPSX_W_PH, UNSPEC_DPAQX_S_W_PH, UNSPEC_DPAQX_SA_W_PH)
- (UNSPEC_DPSQX_S_W_PH, UNSPEC_DPSQX_SA_W_PH): Moved from mips.md.
- * config/mips/mips-ps-3d.md (UNSPEC_MOVE_TF_PS, UNSPEC_C)
- (UNSPEC_ALNV_PS, UNSPEC_CABS, UNSPEC_ADDR_PS, UNSPEC_CVT_PW_PS)
- (UNSPEC_CVT_PS_PW, UNSPEC_MULR_PS, UNSPEC_ABS_PS, UNSPEC_RSQRT1)
- (UNSPEC_RSQRT2, UNSPEC_RECIP1, UNSPEC_RECIP2, UNSPEC_SINGLE_CC)
- (UNSPEC_SCC): Moved from mips.md.
- * config/mips/mips.c (mips_arch, mips_tune): Change enum from
- "processor_type" to "processor".
- (mips_rtx_cost_data): Replace PROCESSOR_MAX with NUM_PROCESSOR_VALUES.
- * config/mips/mips.h (processor_type): Delete.
- (mips_cpu_info.cpu, mips_arch, mips_tune): Change enum from
- "processor_type" to "processor".
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * configure.ac (tm_include_list): Add insn-constants.h.
- * configure: Regenerate.
- * Makefile.in (GTM_H): Move insn-constants.h here from...
- (TM_H): ...here.
- * mkconfig.sh: Remove special handling for insn-constants.h.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (BUILD_RTL): Move build/read-md.o to...
- (BUILD_MD): ...this new variable.
- (simple_generated_rtl_h, simple_generated_rtl_c): New variables
- that include the old contents of simple_generated_h and
- simple_generated_c.
- (simple_generated_h, simple_generated_c): Include them. Add
- insn-constants.h.
- (s-%): Make simple_generated_{h,c} stamps depend on $(MD_DEPS)
- and simple_generated_rtl_{h,c} stamps depend on insn-conditions.md.
- Remove these dependencies from the main rule and include
- insn-conditions.md in the command line only if it appears
- in the dependency list.
- (insn-constants.h, s-constants): Delete.
- (build/genconstants.o): Don't depend on $(RTL_BASE_H), $(GTM_H)
- or gensupport.h.
- (build/genmddeps.o): Likewise.
- (genprogrtl): New variable that contains everything from genprogmd
- except mddeps and constants.
- (genprogmd): Redefine in terms of genprogrtl. Make these programs
- depend on $(BUILD_MD)
- (genprog): New variable. Make these programs depend on
- $(BUILD_ERRORS).
- * genmddeps.c: Don't include tm.h, rtl.h or gensupport.h.
- (main): Use read_md_files instead of init_rtx_reader_args.
- * genconstants.c: As for genmddeps.c.
- * read-md.h (read_skip_construct): Declare.
- * read-md.c (read_skip_construct): New function.
- (handle_file): Allow a null handle_directive, skipping the
- construct if so.
- (parse_include): Update the comment accordingly.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (build/genmddeps.o): Depend on $(READ_MD_H).
- * genmddeps.c: Include read-md.h.
- (main): Call init_rtx_reader_args instead of init_md_reader_args.
- * genattr.c (main): Likewise.
- * genattrtab.c (main): Likewise.
- * genautomata.c (main): Likewise.
- * gencodes.c (main): Likewise.
- * genconditions.c (main): Likewise.
- * genconfig.c (main): Likewise.
- * genconstants.c (main): Likewise.
- * genemit.c (main): Likewise.
- * genextract.c (main): Likewise.
- * genflags.c (main): Likewise.
- * genopinit.c (main): Likewise.
- * genoutput.c (main): Likewise.
- * genpeep.c (main): Likewise.
- * genrecog.c (main): Likewise.
- * genpreds.c (main): Likewise.
- * gensupport.h (in_fname): Move to read-md.h.
- (init_md_reader_args_cb): Rename to...
- (init_rtx_reader_args_cb): ...this and return a bool.
- (init_md_reader_args): Rename to...
- (init_rtx_reader_args): ...this and return a bool.
- (include_callback): Move to read-md.h.
- * gensupport.c (in_fname, include_callback, base_dir, max_include_len)
- (file_name_list, first_dir_md_include): Move to read-md.c
- (first_bracket_include): Delete unused variable.
- (last_dir_md_include): Move to read-md.c.
- (process_include): Delete, moving code to read-md.c:handle_include.
- (process_rtx): Don't handle INCLUDE.
- (save_string): Delete.
- (rtx_handle_directive): New function.
- (init_md_reader_args_cb): Rename to...
- (init_rtx_reader_args_cb): ...this and return a boolean success value.
- Use read_md_args.
- (init_md_reader_args): Rename to...
- (init_rtx_reader_args): ...this and return a boolean success value.
- * rtl.def (INCLUDE): Delete.
- * rtl.h (read_rtx): Remove "int *" argument. Add "const char *"
- argument.
- * read-rtl.c (read_conditions): Don't gobble ')' here.
- (read_mapping): Likewise.
- (read_rtx): Remove LINENO argument. Add RTX_NAME argument.
- Handle top-level non-rtx constructs here rather than in read_rtx_1.
- Store the whole queue in *X. Remove call to init_md_reader.
- (read_rtx_1): Rename to...
- (read_rtx_code): ...this. Call read_nested_rtx to read subrtxes.
- Don't handle top-level non-rtx constructs here. Don't handle (nil)
- here.
- (read_nested_rtx): New function. Handle (nil) here rather than
- in read_rtx_code.
- (read_rtx_variadic): Call read_nested_rtx to read subrtxes. Don't
- gobble ')' here.
- * read-md.h (directive_handler_t): New type.
- (in_fname, include_callback): Moved from read-md.h.
- (read_constants, init_md_reader): Delete.
- (read_md_files): Declare.
- * read-md.c (file_name_list, in_fname, base_dir, first_dir_md_include)
- (last_dir_md_include_ptr, include_callback, max_include_len): Moved
- from gensupport.c.
- (read_constants): Rename to...
- (handle_constants): ...this. Don't gobble ')' here.
- (handle_include, handle_file, handle_toplevel_file)
- (parse_include): New functions, mostly taken from gensupport.c.
- (init_md_reader): Subsume into...
- (read_md_files): ...this new function.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * read-md.h (read_char): Increment read_md_lineno after reading '\n'.
- (unread_char): Decrement read_md_lineno after putting back '\n'.
- * read-md.c (fatal_with_file_and_line): Push back any characters
- that we decide not to add to the context.
- (read_skip_spaces): Don't increment read_md_lineno here. Avoid using
- fatal_expected_char in cases where '/' ends a line (for example).
- (read_name): Don't increment read_md_lineno here.
- (read_escape): Likewise.
- (read_quoted_string): Likewise.
- (read_braced_string): Likewise.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (READ_MD_H): Add $(HASHTAB_H).
- (build/genconstants.o): Depend on $(READ_MD_H) gensupport.h.
- * genconstants.c: Include read-md.h.
- * read-rtl.c (md_constants): Move to read-md.c.
- (md_name): Move to read-md.h.
- (initialize_iterators): Use leading_string_hash instead of def_hash
- and leading_string_eq_p instead of def_name_eq_p.
- (read_name): Move to read-md.c.
- (def_hash, def_name_eq_p): Delete.
- (read_constants, traverse_md_constants): Move to read-md.c.
- * rtl.h (md_constant, traverse_md_constants): Move to read-md.h.
- * read-md.h: Include hashtab.h.
- (md_name): Moved from read-rtl.c.
- (md_constant): Moved from read-md.h.
- (leading_string_hash, leading_string_eq_p, read_name)
- (read_constants, traverse_md_constants): Declare.
- * read-md.c (md_constants): Moved from read-rtl.c.
- (leading_string_hash, leading_string_eq_p): New functions.
- (read_name, read_constants, traverse_md_constants): Moved from
- read-rtl.c.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * read-rtl.c (md_name): New structure.
- (read_name): Take an md_name instead of a buffer pointer.
- Use the "string" field instead of strcpy when expanding constants.
- (read_constants): Remove the tmp_char argument. Update the calls
- to read_name, using two local name buffers instead of the tmp_char
- argument. Merge the constant-creation code.
- (read_conditions): Remove the tmp_char argument. Update the calls
- to read_name, using a local name buffer instead of the tmp_char
- argument.
- (read_mapping): Replace tmp_char variable with a local name buffer.
- Update the calls to read_name.
- (read_rtx_1): Likewise. Update the calls to read_constants and
- read_conditions.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (build/read-md.o): Depend on errors.h.
- * read-md.h (error_with_line): Declare.
- * read-md.c: Include errors.h.
- (message_with_line_1): New function, extracted from...
- (message_with_line): ...here.
- (error_with_line): New function.
- * genattrtab.c: If a call to message_with_line is followed by
- "have_error = 1;", replace both statements with a call to
- error_with_line.
- * genoutput.c: Likewise.
- * genpreds.c: Likewise.
- * genrecog.c: If a call to message_with_line is followed by
- "error_count++;", replace both statements with a call to
- error_with_line.
- (errorcount): Delete.
- (main): Don't check it.
- * gensupport.c: If a call to message_with_line is followed by
- "errors = 1;", replace both statements with a call to error_with_line.
- (errors): Delete.
- (process_define_cond_exec): Check have_error instead of errors.
- (init_md_reader_args_cb): Likewise. Don't set errors.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * read-md.h (read_md_file): Declare.
- (read_char, unread_char): New functions.
- (fatal_with_file_and_line, fatal_expected_char, read_skip_spaces)
- (read_quoted_string, read_string): Remove FILE * argument.
- * read-md.c (read_md_file): New variable.
- (read_md_filename, read_md_lineno): Update comments and remove
- unnecessary initialization.
- (fatal_with_file_and_line, fatal_expected_char, read_skip_spaces)
- (read_escape, read_quoted_string, read_braced_string, read_string):
- Remove FILE * argument. Update calls accordingly, using read_char
- and unread_char instead of getc and ungetc.
- * rtl.h (read_rtx): Remove FILE * argument.
- * read-rtl.c (iterator_group): Remove FILE * argument from
- "find_builtin".
- (iterator_traverse_data): Remove "infile" field.
- (find_mode, find_code, apply_mode_maps, apply_iterator_to_rtx)
- (add_mapping, read_name, read_constants, read_conditions)
- (validate_const_int, find_iterator, read_mapping, check_code_iterator)
- (read_rtx, read_rtx_1, read_rtx_variadic): Remove FILE * argument.
- Remove file arguments from all calls, using read_char and unread_char
- instead of getc and ungetc.
- * gensupport.c (process_include): Preserve read_md_file around
- the include. Set read_md_file to the handle of the included file.
- Update call to read_rtx.
- (init_md_reader_args_cb): Set read_md_file to the handle of the file
- and remove local FILE *. Update calls to read_rtx.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * read-md.h (read_rtx_lineno): Rename to...
- (read_md_lineno): ...this.
- (read_rtx_filename): Rename to...
- (read_md_filename): ...this.
- (copy_rtx_ptr_loc): Rename to...
- (copy_md_ptr_loc): ...this.
- (print_rtx_ptr_loc): Rename to...
- (print_md_ptr_loc): ...this.
- * read-md.c: Likewise. Update references after renaming.
- (string_obstack): Replace RTL with MD in comment.
- (set_rtx_ptr_loc): Rename to...
- (set_md_ptr_loc): ...this.
- (get_rtx_ptr_loc): Rename to...
- (get_md_ptr_loc): ...this.
- * genconditions.c: Update references after renaming.
- * genemit.c: Likewise.
- * genoutput.c: Likewise.
- * genpreds.c: Likewise.
- * gensupport.c: Likewise.
- * read-rtl.c: Likewise.
-
-2010-06-10 Richard Sandiford <rdsandiford@googlemail.com>
-
- * Makefile.in (READ_MD_H): New variable.
- (BUILD_RTL): Add build/read-md.o.
- (lto-wrapper.o): Depend on coretypes.h instead of defaults.h.
- (build/gensupport.o, build/read-rtl.o, build/genattr.o)
- (build/genattrtab.o, build/genconditions.o build/genemit.o)
- (build/genextract.o, build/genflags.o, build/genoutput.o)
- (build/genpreds.o, build/genrecog.o): Depend on $(READ_MD_H).
- (build/read-md.o): New rule.
- * defaults.h (obstack_chunk_alloc, obstack_chunk_free)
- (OBSTACK_CHUNK_SIZE, gcc_obstack_init): Move to...
- * coretypes.h: ...here.
- * lto-wrapper.c: Include coretypes.h instead of defaults.h.
- * pretty-print.c (obstack_chunk_alloc, obstack_chunk_free): Delete.
- * genattr.c: Include read-md.h.
- * genattrtab.c: Likewise.
- * genconditions.c: Likewise.
- * genemit.c: Likewise.
- * genextract.c: Likewise.
- * genflags.c: Likewise.
- * genoutput.c: Likewise.
- * genpreds.c: Likewise.
- * genrecog.c: Likewise.
- * rtl.h (read_skip_spaces, copy_rtx_ptr_loc, print_rtx_ptr_loc)
- (join_c_conditions, print_c_condition, read_rtx_filename)
- (read_rtx_lineno): Move to read-md.h.
- * read-rtl.c: Include read-md.h.
- (ptr_loc, string_obstack, ptr_locs, ptr_loc_obstack)
- (joined_conditions, joined_conditions_obstack, read_rtx_lineno)
- (read_rtx_filename, fatal_with_file_and_line, fatal_expected_char)
- (leading_ptr_hash, leading_ptr_eq_p, set_rtx_ptr_loc, get_rtx_ptr_loc)
- (copy_rtx_ptr_loc, print_rtx_ptr_loc, join_c_conditions)
- (print_c_condition, read_skip_spaces, read_escape, read_quoted_string)
- (read_braced_string, read_string): Move to read-md.c.
- (read_rtx): Move some initialization to init_md_reader and call
- init_md_reader here.
- * gensupport.h (message_with_line, n_comma_elts, scan_comma_elt):
- Move to read-md.h.
- * gensupport.c: Include read-md.h.
- (message_with_line, n_comma_elts, scan_comma_elt): Move to read-md.c.
- * read-md.h, read-md.c: New files.
-
-2010-06-10 Anatoly Sokolov <aesok@post.ru>
-
- * config/moxie/moxie.h (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE,
- LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
- * config/moxie/moxie-protos.h (moxie_function_value): Remove.
- * config/moxie/moxie.c (moxie_function_value): Make static.
- (moxie_libcall_value, moxie_function_value_regno_p): New functions.
- (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
-
-2010-06-10 Martin Jambor <mjambor@suse.cz>
-
- * Makefile.in (tree-sra.o): Add DBGCNT_H to dependencies.
- * dbgcnt.def (tree_sra): New counter.
- * tree-sra.c: Include dbgcnt.h.
- (gate_intra_sra): Check tree_sra debug counter.
-
-2010-06-10 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/44258
- * tree-sra.c (build_access_subtree): Return false iff there is a
- partial overlap.
- (build_access_trees): Likewise.
- (analyze_all_variable_accesses): Disqualify candidates if
- build_access_trees returns true for them.
-
-2010-06-10 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/41371
- * var-tracking.c (find_loc_in_1pdv): Remove recursion, only
- tail-recurse into canonical node. Fast-forward over
- non-canonical VALUEs.
-
-2010-06-10 H.J. Lu <hongjiu.lu@intel.com>
-
- PR boostrap/44470
- * config/i386/i386.md (*add<mode>_1): Revert revision 160394.
- (*addsi_1_zext) <TYPE_LEA>: Likewise.
- (add lea splitter): Likewise.
- (add_zext lea splitter): Likewise.
-
-2010-06-10 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (fshow-column): Don't mark as C ObjC C++ ObjC++.
-
-2010-06-10 Jan Hubicka <jh@suse.cz>
-
- * df-problems.c (df_live_problem_data): Add live_bitmaps.
- (df_live_alloc): Initialize problem data and live_osbtacks.
- (df_live_finalize): Remove obstack, problem data; do not
- clear all bitmaps.
- (df_live_top_dump, df_live_bottom_dump): Do not dump old
- data when not allocated.
- (df_live_verify_solution_start): Do not allocate problem data.
- (df_live_verify_solution_end): Check if out is allocated.
- (struct df_md_problem_data): New structure.
- (df_md_alloc): Allocate problem data.
- (df_md_free): Free problem data; do not clear bitmaps.
-
-2010-06-10 Jan Beulich <jbeulich@novell.com>
-
- PR bootstrap/37304
- * configure.ac: Replace $() with ${} when intending to expand
- variables rather than invoking commands.
- * configure: Re-generate.
-
-2010-06-10 Jan Hubicka <jh@suse.cz>
-
- PR rtl-optimization/44460
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Remove
- TYPE_NEEDS_CONSTRUCTING sanity check.
-
-2010-06-10 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/include/fdl.texi: Move to GFDL version 1.3.
-
- * doc/cpp.texi: Move to GFDL version 1.3.
- * doc/gcc.texi: Move to GFDL version 1.3. Fix copyright years.
- * doc/gccint.texi: Move to GFDL version 1.3.
- * doc/gcov.texi: Move to GFDL version 1.3. Update copyright years.
- * doc/install.texi: Move to GFDL version 1.3. Fix copyright years.
- * doc/invoke.texi: Move to GFDL version 1.3.
-
-2010-06-09 Jan Hubicka <jh@suse.cz>
-
- * ipa-pure-const.c (propagate_pure_const, propagate_noreturn):
- Break out from ...
- (propagate) ... here; swap the order.
-
-2010-06-09 Jan Hubicka <jh@suse.cz>
-
- * bitmap.c (bitmap_elt_insert_after, bitmap_first_set_bit,
- bitmap_first_set_bit, bitmap_last_set_bit, bitmap_last_set_bit,
- bitmap_and_into, bitmap_and_compl_into, bitmap_set_range,
- bitmap_compl_and_into, bitmap_elt_ior): Use checking asserts.
-
-2010-06-09 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (gather_memory_references_ref):
- Do not the gather memory reference in the outer loop if the step
- is not a constant.
-
-2010-06-09 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (PREFETCH_MOD_TO_UNROLL_FACTOR_RATIO) :
- Change the PREFETCH_MOD_TO_UNROLL_FACTOR_RATIO threshold value from
- 8 to 4. Minor change of the related comments.
-
-2010-06-09 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-scalar-evolution.c (instantiate_scev_name): Do not fail
- the scev analysis when the variable is not used outside the loop
- in a close phi node: call compute_overall_effect_of_inner_loop.
-
-2010-06-09 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (single_pred_cond): Renamed
- single_pred_cond_non_loop_exit. Return NULL for loop exit edges.
- (build_sese_conditions_before): Renamed call to single_pred_cond.
- (build_sese_conditions_after): Same.
-
-2010-06-09 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-poly.h: Fix comments and indentation.
- * graphite-sese-to-poly.c: Same.
- (build_sese_conditions_before): Compute stmt and gbb only when needed.
- * tree-chrec.c: Fix comments and indentation.
- (tree-ssa-loop-niter.c): Same.
-
-2010-06-09 Eric Botcazou <ebotcazou@adacore.com>
-
- PR rtl-optimization/42461
- * dce.c (deletable_insn_p): Return true for const or pure calls again.
- * except.c (insn_could_throw_p): Return false if !flag_exceptions.
-
-2010-06-09 Jan Hubicka <jh@suse.cz>
-
- * bitmap.c (bitmap_and): Walk array forward.
- (bitmap_and_compl_into): Likewise.
- (bitmap_xor): Likewise.
- (bitmap_xor_into): Likewise.
- (bitmap_equal_p): Likewise.
- (bitmap_intersect_p): Likewise.
- (bitmap_intersect_compl_p): Likewise.
- (bitmap_ior_and_into): Likewise.
- (bitmap_elt_copy): Likewise.
- (bitmap_and_compl): Likewise.
- (bitmap_elt_ior): Likewise.
-
-2010-06-09 Dave Korn <dave.korn.cygwin@gmail.com>
-
- * opts-common.c (prune_options): Ensure replacement argv array
- is correctly terminated by a NULL entry.
-
-2010-06-09 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (varpool_first_static_initializer,
- varpool_next_static_initializer): Make checking only when
- checking enabled.
- * tree-vectorizer.h (vinfo_for_stmt): Remove check.
- (set_vinfo_for_stmt, get_earlier_stmt, is_loop_header_bb_p): Change
- gcc_assert to gcc_checking_assert.
- * tree-flow-inline.h (gimple_vop, get_var_ann, relink_imm_use,
- phi_nodes, set_phi_nodes, phi_arg_index_from_use, op_iter_next_use,
- op_iter_next_def, op_iter_next_tree, op_iter_init, op_iter_init_use,
- op_iter_init_phiuse, op_iter_init_phidef,
- array_ref_contains_indirect_ref, ref_contains_array_ref): Use
- gcc_checking_assert.
- * emit-rtl.h (set_first_insn, set_last_insn): Likewise.
- * tree-ssa-live.h (var_to_partition, var_to_partition_to_var,
- partition_is_global, live_on_entry, live_on_exit,
- live_merge_and_clear): Likewise.
- * system.h (gcc_checking_assert): New macro.
- * gimple.h (set_bb_seq): Use gcc_checking_assert.
-
-2010-06-09 Jason Merrill <jason@redhat.com>
-
- * Makefile.in (TAGS): Collect tags info from c-family.
-
-2010-06-09 Jan Hubicka <jh@suse.cz>
-
- * gimple.h (gcc_gimple_checking_assert): New macro.
- (gimple_set_def_ops, gimple_set_use_ops,
- gimple_set_vuse, gimple_set_vdef,
- gimple_omp_subcode, gimple_omp_set_subcode, gimple_ops, gimple_op,
- gimple_op_ptr, gimple_op_ptr, gimple_set_op, gimple_bind_set_block,
- gimple_asm_input_op, gimple_asm_input_op_ptr, gimple_asm_set_input_op,
- gimple_asm_output_op, gimple_asm_output_op_ptr,
- gimple_asm_set_output_op, gimple_asm_clobber_op,
- gimple_asm_set_clobber_op, gimple_asm_label_op,
- gimple_asm_set_label_op, gimple_try_set_kind,
- gimple_try_catch_is_cleanup, gimple_try_set_catch_is_cleanup,
- gimple_phi_arg, gimple_switch_num_labels, gimple_switch_set_index,
- gimple_switch_label, gimple_switch_set_label, gimple_omp_for_index,
- gimple_omp_for_index_ptr, gimple_omp_for_set_index,
- gimple_omp_for_initial, gimple_omp_for_initial_ptr,
- gimple_omp_for_set_initial, gimple_omp_for_final,
- gimple_omp_for_final_ptr, gimple_omp_for_set_final,
- gimple_omp_for_incr, gimple_omp_for_incr_ptr, gimple_omp_for_set_incr,
- gimple_omp_for_set_cond, gimple_omp_for_cond): Make checking
- conditional with ENABLE_GIMPLE_CHECKING.
- (gimple_phi_set_arg): Likewise; replace memcpy by assignment.
-
-2010-06-09 Sandra Loosemore <sandra@codesourcery.com>
-
- * tree-ssa-loop-ivopts.c (adjust_setup_cost): New function.
- (get_computation_cost_at): Use it.
- (determine_use_iv_cost_condition): Likewise.
- (determine_iv_cost): Likewise.
-
-2010-06-09 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-loop-niter.c (simplify_replace_tree): Do not
- replace constants.
-
-2010-06-09 Kai Tietz <kai.tietz@onevision.com>
-
- * c-objc-common.c (c_tree_printer): Pre-intialize t by NULL_TREE.
-
-2010-06-09 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/44423
- * tree-sra.c (dump_access): Dump also grp_assignment_read.
- (analyze_access_subtree): Pass negative allow_replacements to children
- if the current type is scalar.
-
-2010-06-09 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR testsuite/42843
- * gcc-plugin.h (int plugin_is_GPL_compatible): Declare as extern "C".
- * doc/plugins.texi (Plugin license check): Update information
- on type of plugin_is_GPL_compatible.
- * Makefile.in (PLUGINCC): Define as $(COMPILER).
- (PLUGINCFLAGS): Define as $(COMPILER_FLAGS).
-
-2010-06-09 Bernd Schmidt <bernds@codesourcery.com>
-
- * config/arm/arm.c (thumb2_reorg): New function.
- (arm_reorg): Call it.
- * config/arm/thumb2.md (define_peephole2 for flag clobbering
- arithmetic operations): Delete.
-
-2010-06-09 Edmar Wienskoski <edmar@freescale.com>
-
- PR target/44067
- * config/rs6000/rs6000.md (DIFD): Do not split dpfp values for
- e500v2 target.
-
-2010-06-09 Joern Rennecke <joern.rennecke@embecosm.com>
-
- PR plugins/44459
- * gcc-plugin.h: Encapsulate all declarations in extern "C".
-
-2010-06-08 Jan Hubicka <jh@suse.cz>
-
- * basic-block.h (single_succ_edge, single_pred_edge, ei_container,
- ei_next, ei_prev): Do sanity checking with ENABLE_CHECKING only.
-
-2010-06-08 Sandra Loosemore <sandra@codesourcery.com>
-
- PR tree-optimization/39874
- PR middle-end/28685
- * gimple.h (maybe_fold_and_comparisons, maybe_fold_or_comparisons):
- Declare.
- * gimple-fold.c (canonicalize_bool, same_bool_comparison_p,
- same_bool_result_p): New.
- (and_var_with_comparison, and_var_with_comparison_1,
- and_comparisons_1, and_comparisons, maybe_fold_and_comparisons): New.
- (or_var_with_comparison, or_var_with_comparison_1,
- or_comparisons_1, or_comparisons, maybe_fold_or_comparisons): New.
- * tree-ssa-reassoc.c (eliminate_redundant_comparison): Use
- maybe_fold_and_comparisons or maybe_fold_or_comparisons instead
- of combine_comparisons.
- * tree-ssa-ifcombine.c (ifcombine_ifandif, ifcombine_iforif): Likewise.
-
-2010-06-08 Anatoly Sokolov <aesok@post.ru>
-
- * config/pdp11/pdp11.h (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE,
- LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
- * config/pdp11/pdp11.c (pdp11_function_value, pdp11_libcall_value,
- pdp11_function_value_regno_p): New functions.
- (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
- TARGET_FUNCTION_VALUE_REGNO_P): Define.
-
-2010-06-08 Kazu Hirata <kazu@codesourcery.com>
-
- * config/arm/arm.c (arm_rtx_costs_1): Don't special case for
- Thumb-2 in the MINUS case.
-
-2010-06-08 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * doc/tm.texi (Per-Function Data): Do not reference ggc_alloc.
-
- * doc/gty.texi (GTY Options): Document typed GC allocation and
- variable_size GTY option.
-
- * ggc-internal.h: New.
-
- * ggc.h: Update copyright year.
- (digit_string): Move to stringpool.c.
- (ggc_mark_stringpool, ggc_purge_stringpool, ggc_mark_roots)
- (gt_pch_save_stringpool, gt_pch_fixup_stringpool)
- (gt_pach_restore_stringpool, gt_pch_p_S, gt_pch_note_object)
- (init_ggc_pch, ggc_pch_count_object, ggc_pch_total_size)
- (ggc_pch_this_base, ggc_pch_alloc_object, ggc_pch_prepare_write)
- (ggc_pch_write_object, ggc_pch_finish, ggc_pch_read)
- (ggc_force_collect, ggc_get_size, ggc_statistics)
- (ggc_print_common_statistics): Move to ggc-internal.h.
- (digit_vector, new_ggc_zone, destroy_ggc_zone, ggc_alloc_stat)
- (ggc_alloc, ggc_alloc_cleared, ggc_realloc, ggc_calloc, GGC_NEW)
- (GGC_CNEW, GGC_NEWVEC, GGC_CNEWVEC, GGC_NEWVAR, ggc_alloc_rtvec)
- (ggc_alloc_tree, gt_pch_save, ggc_min_expand_heuristic)
- (ggc_min_heapsize_heuristic, ggc_alloc_zone)
- (ggc_alloc_zone_pass_stat): Remove.
- (ggc_internal_alloc_stat, ggc_internal_alloc)
- (ggc_internal_cleared_alloc_stat): New.
- (GGC_RESIZEVEC, GGC_RESIZEVAR): Redefine.
- (ggc_internal_vec_alloc_stat)
- (ggc_internal_cleared_vec_alloc_stat)
- (ggc_internal_vec_alloc_stat, ggc_internal_cleared_vec_alloc)
- (ggc_alloc_atomic_stat, ggc_alloc_atomic)
- (ggc_alloc_cleared_atomic, ggc_cleared_alloc_htab_ignore_args)
- (ggc_cleared_alloc_ptr_array_two_args): New.
- (htab_create_ggc, splay_tree_new_ggc): Redefine.
- (ggc_splay_alloc): Change the type of the first argument to
- enum gt_types_enum.
- (ggc_alloc_string): Make macro.
- (ggc_alloc_string_stat): New.
- (ggc_strdup): Redefine.
- (rtl_zone, tree_zone, tree_id_zone): Declare unconditionally.
- (ggc_alloc_rtvec_sized): New.
- (ggc_alloc_zone_stat): Rename to ggc_internal_alloc_zone_stat.
- (ggc_internal_alloc_zone_pass_stat, ggc_internal_alloc_zone_stat)
- (ggc_internal_cleared_alloc_zone_stat)
- (ggc_internal_zone_alloc_stat)
- (ggc_internal_zone_cleared_alloc_stat)
- (ggc_internal_zone_vec_alloc_stat)
- (ggc_alloc_zone_rtx_def_stat)
- (ggc_alloc_zone_tree_node_stat)
- (ggc_alloc_zone_cleared_tree_node_stat)
- (ggc_alloc_cleared_gimple_statement_d_stat): New.
-
- * ggc-common.c: Include ggc-internal.h.
- (ggc_internal_cleared_alloc_stat): Rename from
- ggc_alloc_cleared_stat.
- (ggc_realloc_stat): Use ggc_internal_alloc_stat.
- (ggc_calloc): Remove.
- (ggc_cleared_alloc_htab_ignore_args): New.
- (ggc_cleared_alloc_ptr_array_two_args): New.
- (ggc_splay_alloc): Add obj_type parameter.
- (init_ggc_heuristics): Formatting fixes.
-
- * ggc-none.c: Update copyright year.
- (ggc_alloc_stat): Rename to ggc_alloc_stat.
- (ggc_alloc_cleared_stat): Rename to
- ggc_internal_cleared_alloc_stat.
- (struct alloc_zone, rtl_zone, tree_zone, tree_id_zone): New.
-
- * ggc-page.c: Update copyright year. Include ggc-internal.h.
- Remove references to ggc_alloc in comments.
- (ggc_alloc_typed_stat): Call ggc_internal_alloc_stat.
- (ggc_alloc_stat): Rename to ggc_internal_alloc_stat.
- (new_ggc_zone, destroy_ggc_zone): Remove.
- (struct alloc_zone, rtl_zone, tree_zone, tree_id_zone): New.
-
- * ggc-zone.c: Include ggc-internal.h. Remove references to
- ggc_alloc in comments.
- (ggc_alloc_zone_stat): ggc_internal_alloc_zone_stat.
- (ggc_internal_alloc_zone_pass_stat): New.
- (ggc_internal_cleared_alloc_zone_stat): New.
- (ggc_alloc_typed_stat): Use ggc_internal_alloc_zone_pass_stat.
- (ggc_alloc_stat): Rename ggc_internal_alloc_stat.
- (new_ggc_zone, destroy_ggc_zone): Remove.
-
- * stringpool.c: Update copyright year. Include ggc-internal.h
- (digit_vector): Make static.
- (digit_string): Moved from ggc.h.
- (stringpool_ggc_alloc): Use ggc_alloc_atomic.
- (ggc_alloc_string): Rename to ggc_alloc_string_stat.
-
- * Makefile.in (GGC_INTERNAL_H): New.
- (ggc_common.o, ggc-page.o, ggc-zone.o, stringpool.o): Add
- $(GGC_INTERNAL_H) to dependencies.
-
- * gengtype.c: Update copyright year.
- (walk_type): Accept variable_size GTY option.
- (USED_BY_TYPED_GC_P): New macro.
- (write_enum_defn): Use USED_BY_TYPED_GC_P. Do not output
- whitespace at the end of strings.
- (get_type_specifier, variable_size_p): New functions.
- (alloc_quantity, alloc_zone): New enums.
- (write_typed_alloc_def): New function.
- (write_typed_struct_alloc_def): Likewise.
- (write_typed_typed_typedef_alloc_def): Likewise.
- (write_typed_alloc_defns): Likewise.
- (output_typename, write_splay_tree_allocator_def): Likewise.
- (write_splay_tree_allocators): Likewise.
- (main): Call write_typed_alloc_defns and
- write_splay_tree_allocators.
-
- * lto-streamer.h (lto_file_decl_data_ptr): New.
-
- * passes.c (order): Define using cgraph_node_ptr.
-
- * strinpool.c (struct string_pool_data): Declare nested_ptr using
- ht_identifier_ptr.
-
- * gimple.h (union gimple_statement_d): Likewise.
-
- * rtl.h (struct rtx_def): Likewise.
- (struct rtvec_def): Likewise.
-
- * tree.h (union tree_node): Likewise.
-
- * tree-ssa-operands.h (struct ssa_operand_memory_d): Likewise.
-
- * cfgloop.c (record_loop_exits): Use htab_create_ggc.
-
- * tree-scalar-evolution.c (scev_initialize): Likewise.
-
- * alias.c (record_alias_subset): Update splay_tree_new_ggc call.
-
- * dwarf2asm.c (dw2_force_const_mem): Likewise.
-
- * omp-low.c (lower_omp_critical): Likewise.
-
- * bitmap.h (struct bitmap_head_def): Update comment to not
- reference ggc_alloc.
-
- * config/pa/pa.c (get_deferred_label): Use GGC_RESIZEVEC.
-
- * ira.c (fix_reg_equiv_init): Use GGC_RESIZEVEC.
-
- * ipa-prop.c (duplicate_ggc_array): Rename to
- duplicate_ipa_jump_func_array. Use typed GC allocation.
- (ipa_edge_duplication_hook): Call duplicate_ipa_jump_func_array.
-
- * gimple.c (gimple_alloc_stat): Use
- ggc_alloc_cleared_gimple_statement_d_stat.
-
- * varasm.c (create_block_symbol): Use ggc_alloc_zone_rtx_def.
-
- * tree.c (make_node_stat): Use
- ggc_alloc_zone_cleared_tree_node_stat.
- (make_tree_vec_stat): Likewise.
- (build_vl_exp_stat): Likewise.
- (copy_node_stat): Use ggc_alloc_zone_tree_node_stat.
- (make_tree_binfo_stat): Likewise.
- (tree_cons_stat): Likewise.
-
- * rtl.c (rtx_alloc_stat): Use ggc_alloc_zone_rtx_def_stat.
- (shallow_copy_rtx_stat): Likewise.
- (make_node_stat): Likewise.
-
- * lto-symtab.c: Fix comment.
-
- * tree-cfg.c (create_bb): Update comment to not reference
- ggc_alloc_cleared.
- * tree-ssa-structalias.c (struct heapvar_for_stmt): Fix param_is value.
-
- * varpool.c (varpool_node): Use typed GC allocation.
- (varpool_extra_name_alias): Likewise.
-
- * varasm.c (emutls_decl): Likewise.
- (get_unnamed_section): Likewise.
- (get_noswitch_section): Likewise.
- (get_section): Likewise.
- (get_block_for_section): Likewise.
- (build_constant_desc): Likewise.
- (create_constant_pool): Likewise.
- (force_const_mem): Likewise.
-
- * tree.c (build_vl_exp_stat): Likewise.
- (build_real): Likewise.
- (build_string): Likewise.
- (decl_debug_expr_insert): Likewise.
- (decl_value_expr_insert): Likewise.
- (type_hash_add): Likewise.
- (build_omp_clause): Likewise.
-
- * tree-ssanames.c (duplicate_ssa_name_ptr_info): Likewise.
-
- * tree-ssa.c (init_tree_ssa): Likewise.
-
- * tree-ssa-structalias.c (heapvar_insert): Likewise.
-
- * tree-ssa-operands.c (ssa_operand_alloc): Likewise.
-
- * tree-ssa-loop-niter.c (record_estimate): Likewise.
-
- * tree-ssa-alias.c (get_ptr_info): Likewise.
-
- * tree-scalar-evolution.c (new_scev_info_str): Likewise.
-
- * tree-phinodes.c (allocate_phi_node): Likewise.
-
- * tree-iterator.c (tsi_link_before): Likewise.
- (tsi_link_after): Likewise.
-
- * tree-eh.c (add_stmt_to_eh_lp_fn): Likewise.
-
- * tree-dfa.c (create_var_ann): Likewise.
-
- * tree-cfg.c (create_bb): Likewise.
-
- * toplev.c (alloc_for_identifier_to_locale): Likewise.
- (general_init): Likewise.
-
- * stringpool.c (stringpool_ggc_alloc): Likewise.
- (gt_pch_save_stringpool): Likewise.
-
- * sese.c (if_region_set_false_region): Likewise.
-
- * passes.c (do_per_function_toporder): Likewise.
-
- * optabs.c (set_optab_libfunc): Likewise.
- (set_conv_libfunc): Likewise.
-
- * lto-symtab.c (lto_symtab_register_decl): Likewise.
-
- * lto-streamer-in.c (lto_input_eh_catch_list): Likewise.
- (input_eh_region): Likewise.
- (input_eh_lp): Likewise.
- (make_new_block): Likewise.
- (unpack_ts_real_cst_value_fields): Likewise.
-
- * lto-section-in.c (lto_new_in_decl_state): Likewise.
-
- * lto-cgraph.c (input_node_opt_summary): Likewise.
-
- * loop-init.c (loop_optimizer_init): Likewise.
-
- * lambda.h (lambda_vector_new): Likewise.
-
- * lambda-code.c (replace_uses_equiv_to_x_with_y): Likewise.
-
- * ira.c (update_equiv_regs): Likewise.
-
- * ipa.c (cgraph_node_set_new): Likewise.
- (cgraph_node_set_add): Likewise.
- (varpool_node_set_new): Likewise.
- (varpool_node_set_add): Likewise.
-
- * ipa-prop.c (ipa_compute_jump_functions_for_edge): Likewise.
- (duplicate_ipa_jump_func_array): Likewise.
- (ipa_read_node_info): Likewise.
-
- * ipa-cp.c (ipcp_create_replace_map): Likewise.
-
- * integrate.c (get_hard_reg_initial_val): Likewise.
-
- * gimple.c (gimple_alloc_stat): Likewise.
- (gimple_build_omp_for): Likewise.
- (gimple_seq_alloc): Likewise.
- (gimple_copy): Likewise.
-
- * gimple-iterator.c (gsi_insert_before_without_update): Likewise.
- (gsi_insert_after_without_update): Likewise.
-
- * function.c (add_frame_space): Likewise.
- (insert_temp_slot_address): Likewise.
- (assign_stack_temp_for_type): Likewise.
- (allocate_struct_function): Likewise.
- (types_used_by_var_decl_insert): Likewise.
-
- * except.c (init_eh_for_function): Likewise.
- (gen_eh_region): Likewise.
- (gen_eh_region_catch): Likewise.
- (gen_eh_landing_pad): Likewise.
- (add_call_site): Likewise.
-
- * emit-rtl.c (get_mem_attrs): Likewise.
- (get_reg_attrs): Likewise.
- (start_sequence): Likewise.
- (init_emit): Likewise.
-
- * dwarf2out.c (new_cfi): Likewise.
- (queue_reg_save): Likewise.
- (dwarf2out_frame_init): Likewise.
- (new_loc_descr): Likewise.
- (find_AT_string): Likewise.
- (new_die): Likewise.
- (add_var_loc_to_decl): Likewise.
- (clone_die): Likewise.
- (clone_as_declaration): Likewise.
- (break_out_comdat_types): Likewise.
- (new_loc_list): Likewise.
- (loc_descriptor): Likewise.
- (add_loc_descr_to_each): Likewise.
- (add_const_value_attribute): Likewise.
- (tree_add_const_value_attribute): Likewise.
- (add_comp_dir_attribute): Likewise.
- (add_name_and_src_coords_attributes): Likewise.
- (lookup_filename): Likewise.
- (store_vcall_insn): Likewise.
- (dwarf2out_init): Likewise.
-
- * dbxout.c (dbxout_init): Likewise.
-
- * config/xtensa/xtensa.c (xtensa_init_machine_status): Likewise.
-
- * config/sparc/sparc.c (sparc_init_machine_status): Likewise.
-
- * config/score/score7.c (score7_output_external): Likewise.
-
- * config/score/score3.c (score3_output_external): Likewise.
-
- * config/s390/s390.c (s390_init_machine_status): Likewise.
-
- * config/rs6000/rs6000.c (builtin_function_type): Likewise.
- (rs6000_init_machine_status): Likewise.
- (output_toc): Likewise.
-
- * config/pa/pa.c (pa_init_machine_status): Likewise.
- (get_deferred_plabel): Likewise.
-
- * config/moxie/moxie.c (moxie_init_machine_status): Likewise.
-
- * config/mmix/mmix.c (mmix_init_machine_status): Likewise.
-
- * config/mips/mips.c (mflip_mips16_use_mips16_p): Likewise.
-
- * config/mep/mep.c (mep_init_machine_status): Likewise.
- (mep_note_pragma_flag): Likewise.
-
- * config/m32c/m32c.c (m32c_init_machine_status): Likewise.
-
- * config/iq2000/iq2000.c (iq2000_init_machine_status): Likewise.
-
- * config/ia64/ia64.c (ia64_init_machine_status): Likewise.
-
- * config/i386/winnt.c (i386_pe_record_external_function): Likewise.
- (i386_pe_maybe_record_exported_symbol): Likewise.
-
- * config/i386/i386.c (get_dllimport_decl): Likewise.
- (ix86_init_machine_status): Likewise.
- (assign_386_stack_local): Likewise.
-
- * config/frv/frv.c (frv_init_machine_status): Likewise.
-
- * config/darwin.c (machopic_indirection_name): Likewise.
-
- * config/cris/cris.c (cris_init_machine_status): Likewise.
-
- * config/bfin/bfin.c (bfin_init_machine_status): Likewise.
-
- * config/avr/avr.c (avr_init_machine_status): Likewise.
-
- * config/arm/arm.c (arm_init_machine_status): Likewise.
-
- * config/alpha/alpha.c (alpha_init_machine_status): Likewise.
- (alpha_need_linkage): Likewise.
- (alpha_use_linkage): Likewise.
-
- * cgraph.c (cgraph_allocate_node): Likewise.
- (cgraph_create_edge_1): Likewise.
- (cgraph_create_indirect_edge): Likewise.
- (cgraph_add_asm_node): Likewise.
-
- * cfgrtl.c (init_rtl_bb_info): Likewise.
-
- * cfgloop.c (alloc_loop): Likewise.
- (rescan_loop_exit): Likewise.
-
- * cfg.c (init_flow): Likewise.
- (alloc_block): Likewise.
- (unchecked_make_edge): Likewise.
-
- * c-parser.c (c_parse_init): Likewise.
- (c_parse_file): Likewise.
-
- * c-decl.c (bind): Likewise.
- (record_inline_static): Likewise.
- (push_scope): Likewise.
- (make_label): Likewise.
- (lookup_label_for_goto): Likewise.
- (finish_struct): Likewise.
- (finish_enum): Likewise.
- (c_push_function_context): Likewise.
-
- * bitmap.c (bitmap_element_allocate): Likewise.
- (bitmap_gc_alloc_stat): Likewise.
-
- * alias.c (record_alias_subset): Likewise.
- (init_alias_analysis): Likewise.
-
-2010-06-08 Shujing Zhao <pearly.zhao@oracle.com>
-
- * fold-const.c (fold_comparison): Remove redundant parenthesis.
- * tree-inline.c (expand_call_inline): Pass translated return value of
- cgraph_inline_failed_string to diagnostic function.
-
-2010-06-08 Andrew Pinski <pinskia@gmail.com>
- Shujing Zhao <pearly.zhao@oracle.com>
-
- PR c/37724
- * c-typeck.c (convert_for_assignment): Call pedwarn_init if the
- implicit bad conversions is initialization.
- (error_init): Use gmsgid instead of msgid for argument name and change
- the call for error.
- (pedwarn_init): Use gmsgid instead of msgid for argument name and
- change the call for pedwarn.
- (warning_init): Use gmsgid instead of msgid for argument name and
- change the call for warning.
-
-2010-06-07 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/mips/mips-protos.h (mips_print_operand): Delete.
- (mips_print_operand_address): Delete.
- * config/mips/mips.h (mips_print_operand_punct): Delete.
- (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * config/mips/mips.c (mips_print_operand_punct): Make static.
- (mips_print_operand_address): Make static.
- (mips_print_operand): Make static. Call
- mips_print_operand_punct_valid_p.
- (mips_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS): Define.
- (TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define.
-
-2010-06-07 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44454
- (df_lr_top_dump, df_lr_bottom_dump): Check that in/out bitmaps
- are allocated.
-
-2010-06-07 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.c (sh_build_builtin_va_list): Set tree type
- name of RECORD.
-
-2010-06-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/sourcebuild.texi (Effective-Target Keywords, Other
- attributes): Document gas.
-
-2010-06-07 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*add<mode>_1): Remove alternative 2.
- <TYPE_LEA>: Split instruction.
- <default>: Remove alternative 2 handling.
- (*addsi_1_zext) <TYPE_LEA>: Split instruction.
- (add lea splitter): Generate SImode lea for mode sizes <= SImode.
- (add_zext lea splitter): Use ix86_lea_for_add_ok in insn predicate.
-
- (*movsi_1) <TYPE_LEA>: Use %a modifier to output operand 1.
- (ashift_zext lea splitter): Use DImode for multiplication.
-
- * config/i386/i386.c (ix86_expand_epilogue): Do not use ix86_gen_add
- to generate addition.
-
-2010-06-07 Joseph Myers <joseph@codesourcery.com>
-
- * common.opt (fira-verbose): Use Var.
- (fpcc-struct-return): Use Init instead of VarExists.
- * defaults.h (DEFAULT_PCC_STRUCT_RETURN): Move definition from
- toplev.c.
- * flags.h (flag_signed_char, flag_short_enums,
- flag_pcc_struct_return, flag_ira_verbose,
- flag_detailed_statistics, flag_remove_unreachable_functions): Remove.
- * toplev.c (flag_detailed_statistics, flag_signed_char,
- flag_short_enums, flag_pcc_struct_return, flag_ira_verbose): Remove.
- (DEFAULT_PCC_STRUCT_RETURN): Move definition to defaults.h.
- * toplev.h (flag_crossjumping, flag_if_conversion,
- flag_if_conversion2, flag_keep_static_consts, flag_peel_loops,
- flag_rerun_cse_after_loop, flag_thread_jumps, flag_tracer,
- flag_unroll_loops, flag_unroll_all_loops, flag_unswitch_loops,
- flag_cprop_registers, time_report, flag_ira_loop_pressure,
- flag_ira_coalesce, flag_ira_move_spills,
- flag_ira_share_save_slots, flag_ira_share_spill_slots): Remove.
-
-2010-06-07 Jan Hubicka <jh@suse.cz>
-
- * df-core.c (df_analyze_problem): Do verification after allocation.
-
- * df-problems.c (df_lr_problem_data): Add lr_bitmaps.
- (df_lr_alloc): Initialize problem data; move bitmaps to
- lr_bitmaps obstack.
- (df_lr_finalize): Free problem data; do not bother to free bitmaps.
- (df_lr_verify_solution_start): Do not initialize problem data;
- allocate bitmaps in lr_bitmaps.
- (df_lr_verify_solution_end): Do not free problem data.
-
-2010-06-07 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_edge_cannot_lead_to_return): Also check
- if caller is noreturn.
- * ipa-reference.c (analyze_function): Use ipa_ref_cannot_lead_to_return
- * ipa-ref.h (ipa_ref_cannot_lead_to_return): New function.
- * ipa-ref.c (ipa_ref_cannot_lead_to_return): New function.
- * ipa-pure-const.c (check_decl): Add IPA parameter.
- (state_from_flags): New function.
- (better_state, worse_state): New functions.
- (check_call): When in IPA mode, do not care about callees.
- (check_load, check_store): Update.
- (check_ipa_load, check_ipa_store): New.
- (check_stmt): When in IPA mode, use IPA checkers.
- (analyze_function): Use state_from_flags.
- (propagate): Check indirect edges and references.
-
-2010-06-07 Kazu Hirata <kazu@codesourcery.com>
-
- PR rtl-optimization/44404
- * auto-inc-dec.c (find_inc): Use reg_overlap_mentioned_p instead
- of count_occurrences to see if it's safe to modify mem_insn.
-
-2010-06-07 Richard Guenther <rguenther@suse.de>
-
- * gimplify.c (gimplify_cleanup_point_expr): For empty body
- and EH-only cleanup drop the cleanup instead of inserting it
- unconditionally.
-
-2010-06-07 Ira Rosen <irar@il.ibm.com>
-
- * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Update
- documentation.
- * targhooks.c (default_builtin_vectorization_cost): New function.
- * targhooks.h (default_builtin_vectorization_cost): Declare.
- * target.h (enum vect_cost_for_stmt): Define.
- (builtin_vectorization_cost): Change argument and comment.
- * tree-vectorizer.h: Remove cost model macros.
- * tree-vect-loop.c: Include target.h.
- (vect_get_cost): New function.
- (vect_estimate_min_profitable_iters): Replace cost model macros with
- calls to vect_get_cost.
- (vect_model_reduction_cost, vect_model_induction_cost): Likewise.
- * target-def.h (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Add
- default implementation.
- * tree-vect-stmts.c (cost_for_stmt): Replace cost model macros with
- calls to target hook builtin_vectorization_cost.
- (vect_model_simple_cost, vect_model_store_cost, vect_model_load_cost):
- Likewise.
- * Makefile.in (tree-vect-loop.o): Add dependency on TARGET_H.
- * config/spu/spu.c (spu_builtin_vectorization_cost): Replace with new
- implementation to return costs.
- * config/i386/i386.c (ix86_builtin_vectorization_cost): Likewise.
- * config/spu/spu.h: Remove vectorizer cost model macros.
- * config/i386/i386.h: Likewise.
- * tree-vect-slp.c (vect_build_slp_tree): Replace cost model macro with
- a call to target hook builtin_vectorization_cost.
-
-2010-06-06 Sriraman Tallam <tmsriram@google.com>
-
- PR target/44319
- * config/i386/i386.c (override_options): Turn zee pass on for level 2
- and above and defer till target is known.
- (optimization_options): Turn on zee pass if TARGET_64BIT is set and
- turn off otherwise.
-
-2010-05-25 Jan Hubicka <jh@suse.cz>
-
- * df-core.c (df_set_blocks): Use bitmap_head instead of bitmap.
- (df_compact_blocks): Likewise.
- * df.h (struct df): Turn hardware_regs_used,
- regular_block_artificial_uses, eh_block_artificial_uses,
- insns_to_delete, insns_to_rescan, insns_to_notes_rescan into
- bitmap_head.
- * df-problems.c (df_lr_local_compute, df_lr_confluence_0,
- df_byte_lr_alloc, df_simulate_fixup_sets): Update.
- * df-scan.c (df_scan_free_internal, df_scan_alloc, df_scan_start_dump,
- df_scan_blocks, df_insn_delete, df_insn_rescan,
- df_insn_rescan_debug_internal, df_insn_rescan_all,
- df_process_deferred_rescans, df_process_deferred_rescans,
- df_notes_rescan, df_get_call_refs, df_get_call_refs,
- regs_invalidated_by_call_regset, df_get_call_refs, df_bb_refs_collect,
- df_record_entry_block_defs, df_record_exit_block_uses,
- df_update_exit_block_uses, df_bb_verify, df_entry_block_bitmap_verify,
- df_scan_verify): Update.
-
-2010-05-25 Dodji Seketeli <dodji@redhat.com>
-
- PR c++/44188
- * c-common.c (is_typedef_decl): Move this definition ...
- * tree.c (is_typedef_decl): ... here.
- (typdef_variant_p): Move definition here from cp/tree.c.
- * c-common.h (is_typedef_decl): Move this declaration ...
- * tree.h (is_typedef_decl): ... here.
- (typedef_variant_p): Move declaration here from cp/cp-tree.h
- * dwarf2out.c (is_naming_typedef_decl): New function.
- (gen_tagged_type_die): Split out of ...
- (gen_type_die_with_usage): ... this function. When an anonymous
- tagged type is named by a typedef, make sure a DW_TAG_typedef DIE
- is emitted for the typedef.
- (gen_typedef_die): Emit DW_TAG_typedef also for typedefs naming
- anonymous tagged types.
-
-2010-06-06 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR c/20000
- * c-decl.c (grokdeclarator): Delete warning.
-
-2010-06-06 Eric Botcazou <ebotcazou@adacore.com>
-
- * stor-layout.c (self_referential_size): Set UNKNOWN_LOCATION on the
- newly built CALL_EXPR.
- * tree-profile.c (tree_profiling): Don't profile functions produced
- for built-in stuff.
-
-2010-06-06 Segher Boessenkool <segher@kernel.crashing.org>
-
- PR bootstrap/44427
- PR bootstrap/44428
- * genautomata.c (SET_BIT, CLEAR_BIT, TEST_BIT): Make these macros
- endianness-independent.
-
-2010-06-05 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-common.c: Move to c-family/.
- * c-common.def: Likewise.
- * c-common.h: Likewise.
- * c-cppbuiltin.c: Likewise.
- * c-dump.c: Likewise.
- * c-format.c: Likewise.
- * c-format.h : Likewise.
- * c-gimplify.c: Likewise.
- * c-lex.c: Likewise.
- * c-omp.c: Likewise.
- * c.opt: Likewise.
- * c-opts.c: Likewise.
- * c-pch.c: Likewise.
- * c-ppoutput.c: Likewise.
- * c-pragma.c: Likewise.
- * c-pragma.h: Likewise.
- * c-pretty-print.c: Likewise.
- * c-pretty-print.h: Likewise.
- * c-semantics.c: Likewise.
- * stub-objc.c: Likewise.
-
- * gengtype.c (get_file_langdir): Special-case files in c-family/.
- (get_output_file_with_visibility): Fix name for c-common.h.
- * c-config-lang.in: Update paths in gtfiles for files in c-family/.
-
- * c-tree.h: Update include path for moved files.
- * c-lang.c: Likewise.
- * c-lang.h: Likewise.
- * c-parser.c: Likewise.
- * c-convert.c: Likewise.
- * c-decl.c: Likewise.
- * c-objc-common.c: Likewise.
- * configure.ac: Make sure c-family/ exists in the build directory.
- * configure: Regenerate.
- * Makefile.in: Update paths for moved files. Regroup files per
- location and update dependencies. Move generated_files down after
- ALL_GTFILES_H.
-
- * config/spu/spu-c.c: Update paths for moved files.
- * config/mep/mep-pragma.c: Likewise.
- * config/darwin-c.c: Likewise.
- * config/i386/msformat-c.c: Likewise.
- * config/i386/i386-c.c: Likewise.
- * config/avr/avr-c.c: Likewise.
- * config/sol2-c.c: Likewise.
- * config/ia64/ia64-c.c: Likewise.
- * config/rs6000/rs6000-c.c: Likewise.
- * config/arm/arm.c: Likewise.
- * config/arm/arm-c.c: Likewise.
- * config/h8300/h8300.c: Likewise.
- * config/v850/v850-c.c: Likewise.
-
- * config/t-darwin: Fix dependencies for moved files.
- * config/t-sol2: Fix dependencies for moved files.
- * config/mep/t-mep: Fix dependencies for moved files.
- * config/ia64/t-ia64: Fix dependencies for moved files.
- * config/rs6000/t-rs6000: Fix dependencies for moved files.
- * config/v850/t-v850: Fix dependencies for moved files.
- * config/v850/t-v850e: Fix dependencies for moved files.
-
- * config/m32c/m32c-pragma.c
-
- * po/exgettext: Look in c-family/ also.
-
-2010-06-05 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-ssa-dce.c (mark_last_stmt_necessary): New function.
- (mark_control_dependent_edges_necessary): Call it instead of marking
- the last statement manually.
- (propagate_necessity): Likewise.
-
-2010-06-05 Jan Hubicka <jh@suse.cz>
-
- * basic-block.h (compute_dominance_frontiers): Updated.
- (compute_idf): Likewise.
-
- * tree-into-ssa.c (insert_phi_nodes): Use bitmap heads
- for dominance frontiers.
- (rewrite_into_ssa): Update for bitmap heads in dominance frontiers.
- (insert_updated_phi_nodes_for): Likewise.
- (update_ssa): Likewise.
- * cfganal.c (compute_dominance_frontiers_1): Likewise.
- (compute_dominance_frontiers): Likewise.
- (compute_idf): Likewise.
- * df-problems.c (df_md_local_compute): Likewise.
-
-2010-06-05 Anatoly Sokolov <aesok@post.ru>
-
- * target.h (struct gcc_target): Add memory_move_cost field.
- * target-def.h (TARGET_MEMORY_MOVE_COST): New.
- (TARGET_INITIALIZER): Use TARGET_MEMORY_MOVE_COST.
- * targhooks.c (default_memory_move_cost): New function.
- * targhooks.h (default_memory_move_cost): Declare function.
- * reload.h (memory_move_cost): Declare.
- (memory_move_secondary_cost): Change type of 'in' argument to bool.
- * reginfo.c (memory_move_cost): New function.
- (memory_move_secondary_cost): Change type of 'in' argument to bool.
- * ira.h (ira_memory_move_cost): Update comment.
- * ira.c (ira_memory_move_cost): Update comment.
- (setup_class_subset_and_memory_move_costs): Replace MEMORY_MOVE_COST
- with memory_move_cost.
- * postreload.c (reload_cse_simplify_set): (Ditto.).
- * reload1.c (choose_reload_regs): (Ditto.).
- * doc/tm.texi (TARGET_MEMORY_MOVE_COST): New.
- (MEMORY_MOVE_COST): Revise documentation.
-
- * config/i386/i386.h (MEMORY_MOVE_COST): Remove macro.
- * config/i386/i386-protos.h (int ix86_memory_move_cost): Remove.
- * config/i386/i386.h (ix86_memory_move_cost): Make static. Change
- type of 'in' argument to bool.
- (TARGET_MEMORY_MOVE_COST): Define.
-
-2010-06-05 Jan Hubicka <jh@suse.cz>
-
- * ipa-pure-const.c (propagate): Fix typo in handling of functions
- that cannot return. Be more careful when merging the results with
- previously known ones.
-
-2010-06-05 Matthias Klose <doko@ubuntu.com>
-
- * gcc.c (cc1_options, cpp_unique_options): Use find-plugindir spec
- function to add the -iplugindir option.
- (find_plugindir_spec_function): Add new declaration and function.
- (static_spec_func): Use it for "find-plugindir".
-
-2010-06-05 Jakub Jelinek <jakub@redhat.com>
-
- PR c++/44361
- * c-typeck.c (mark_exp_read): Handle C_MAYBE_CONST_EXPR.
- * c-parser.c (c_parser_postfix_expression): Call mark_exp_read on
- statement expression.
-
-2010-06-05 Jan Hubicka <jh@suse.cz>
-
- * df-problems.c (seen_in_block, seen_in_insn): Convert to bitmap_head.
- (df_rd_problem_data): Convert sparse_invalidated_by_call,
- dense_invalidated_by_call to bitmap head.
- (df_rd_alloc, df_rd_bb_local_compute_process_def,
- df_rd_bb_local_compute, df_rd_confluence_n, df_rd_transfer_function,
- df_rd_start_dump, df_lr_verify_transfer_functions,
- df_live_verify_transfer_functions, df_chain_create_bb,
- df_chain_add_problem, df_byte_lr_check_regs, df_byte_lr_alloc,
- df_byte_lr_confluence_0, df_byte_lr_confluence_n, df_note_compute,
- df_simulate_one_insn_forwards, df_md_alloc,
- df_md_bb_local_compute_process_def,
- df_md_bb_local_compute_process_def, df_md_local_compute,
- df_md_transfer_function df_md_free): Update.
-
-2010-06-05 Joseph Myers <joseph@codesourcery.com>
-
- PR c/44322
- * c-typeck.c (build_unary_op): Merge qualifiers into pointer
- target type for ADDR_EXPR; require no changes to qualifiers except
- for function types.
- * c-tree.h (c_build_type_variant): Remove.
-
-2010-06-05 Segher Boessenkool <segher@kernel.crashing.org>
-
- * genautomata.c (get_excl_set): Do work per element, not per char.
- (check_presence_pattern_sets): Similar.
- (check_absence_pattern_sets): Similar.
-
-2010-06-05 Segher Boessenkool <segher@kernel.crashing.org>
-
- * genautomata.c (curr_state_pass_num): Delete.
- (min_issue_delay_pass_states): Delete.
- (min_issue_delay): Delete.
- (initiate_min_issue_delay_pass_states): Delete.
- (output_min_issue_delay_table): Compute min_issue_delay_vect
- using a breadth-first search variant.
- (output_tables): Don't call initiate_min_issue_delay_pass_states.
-
-2010-06-04 H.J. Lu <hongjiu.lu@intel.com>
-
- PR boostrap/44421
- * df-problems.c (df_lr_bb_local_compute): Updated for embedded bitmaps.
- (df_byte_lr_bb_local_compute): Likewise.
-
-2010-06-03 Jason Merrill <jason@redhat.com>
-
- Implement noexcept operator (5.3.7)
- * c-common.c (c_common_reswords): Add noexcept.
- * c-common.h (enum rid): Add RID_NOEXCEPT.
-
-2010-06-04 Joseph Myers <joseph@codesourcery.com>
-
- * config/darwin-driver.c (darwin_default_min_version): Use
- GCC-specific formats in diagnostics.
- * cppspec.c (lang_specific_driver): Use GCC-specific formats in
- diagnostics.
- * gcc.c (translate_options, read_specs, add_sysrooted_prefix,
- execute, process_command, end_going_arg, do_self_spec, do_spec_1,
- eval_spec_function, handle_braces, process_brace_body, main,
- perror_with_name, used_arg, set_multilib_dir, print_multilib_info,
- getenv_spec_function, compare_version_strings,
- version_compare_spec_function): Use GCC-specific formats in
- diagnostics.
-
-2010-06-04 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*addhi_1_lea) <TYPE_INCDEC, default>: Assert
- that operand 0 and operand 1 are equal.
- (*addqi_1_lea) <TYPE_INCDEC, default>: Ditto.
- (*add<mode>_2) <TYPE_INCDEC>: Remove assert that operand 0
- and operand 1 are equal.
- <default>: Ditto. Remove ??? comment.
- (*add<mode>_3) <TYPE_INCDEC>: Remove assert that operand 0
- and operand 1 are equal.
- <default>: Ditto. Remove ??? comment.
- (*adddi_4) <default>: Remove assert that operand 0 and operand 1
- are equal.
- (*add<mode>_4) <default>: Ditto.
- (*add<mode>_5) <TYPE_INCDEC, default>: Ditto.
-
-2010-06-04 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/i386/i386-protos.h (ix86_print_operand): Declare.
- * config/i386/i386.c (ix86_print_operand): Make non-static.
- * config/i386/sol2.h (ASM_OUTPUT_CALL): Call ix86_print_operand.
- * output.h (output_operand): Declare.
- * final.c (output_operand): Make non-static.
-
-2010-06-04 Alexandre Oliva <aoliva@redhat.com>
-
- PR rtl-optimization/44013
- * sched-deps.c (add_dependence_list_and_free): Don't free lists
- when processing debug insns.
-
- PR debug/41371
- * var-tracking.c (find_loc_in_1pdv): Mark initial value before
- recursing. Check that recursion is bounded. Rename inner var
- to avoid hiding incoming argument.
-
-2010-06-04 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*addqi_2) <TYPE_INCDEC>: Do not assert that
- operands[2] == 255.
- (*addqi_3): Ditto.
- (*addqi_4): Ditto.
- (*addqi_5): Ditto.
- (*addqi_ext_1_rex64): Ditto.
- (*addqi_ext_1): Ditto.
-
- (*addqi_4): Check for incdec_operand in QImode.
-
- (*add<mode>_2): Macroize insn from *add<mode>_2 and *add{qi,hi}_2
- using SWI mode iterator.
- (*add<mode>_3): Ditto from *add<mode>_3 and *add{qi,hi}_3.
- (*add<mode>_4): Macroize insn from *add{qi,hi,si}_4 using SWI124
- mode iterator.
- (*add<mode>_5): Macroize insn from *add<mode>_5 and *add{qi,hi}_5
- using SWI mode iterator.
-
-2010-06-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR c/25880
- * c-objc-common.c (c_tree_printer): Handle %V, %v and %#v.
- * c-format.c (gcc_diag_flag_specs): Add hash.
- (gcc_cxxdiag_flag_specs): Use gcc_diag_flag_specs directly.
- (gcc_tdiag_char_table,gcc_cdiag_char_table): Handle %V and %v.
- * c-pretty-print.c (pp_c_cv_qualifier): Rename as
- pp_c_cv_qualifiers. Handle qualifiers spelling here.
- (pp_c_type_qualifier_list): Call the function above.
- * c-pretty-print.h (pp_c_cv_qualifiers): Declare.
- * c-typeck.c (handle_warn_cast_qual): Print qualifiers.
- (WARN_FOR_QUALIFIERS): New macro.
- (convert_for_assignment): Use it.
-
-2010-06-04 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/cygming.h (ASM_GENERATE_INTERNAL_LABEL): Prefix by '*'.
-
-2010-06-04 Jan Hubicka <jh@suse.cz>
-
- * df.h (df_rd_bb_info, df_md_bb_info, df_lr_bb_info, df_live_bb_info,
- df_byte_lr_bb_info): Embedd bitmap_head into the structure.
- (DF_LIVE_IN, DF_LIVE_OUT, DF_LR_IN, DF_LR_OUT, DF_BYTE_LR_IN,
- DF_BYTE_LR_OUT): Update for embedded bitmaps.
- * fwprop.c (single_def_use_enter_block): Likewise.
- * ddg.c (create_ddg_dep_from_intra_loop_link,
- add_cross_iteration_register_deps, build_inter_loop_deps): Likewise.
- * loop-iv.c (latch_dominating_def): Likewise.
- * df-problems.c (df_rd_free_bb_info, df_rd_alloc,
- df_rd_bb_local_compute_process_def, df_rd_bb_local_compute_process_def,
- df_rd_init_solution, df_rd_init_solution, df_rd_transfer_function,
- df_rd_transfer_function, df_rd_top_dump,
- df_rd_bottom_dump): Update.
- (df_lr_free_bb_info, df_lr_alloc, df_lr_reset, df_lr_bb_local_compute,
- df_lr_bb_local_compute, df_lr_bb_local_compute, df_lr_bb_local_compute,
- df_lr_bb_local_compute, df_lr_local_compute, df_lr_init, df_lr_init,
- df_lr_confluence_0, df_lr_free, df_lr_top_dump, df_lr_bottom_dump,
- df_lr_verify_solution_start, df_lr_verify_solution_end,
- df_lr_verify_transfer_functions, df_lr_verify_transfer_functions,
- df_live_free_bb_info, df_live_alloc, df_live_reset,
- df_live_bb_local_compute, df_live_init, df_live_transfer_function,
- df_live_finalize, df_live_free, df_live_top_dump, df_live_bottom_dump,
- df_live_verify_solution_start, df_live_verify_solution_end,
- df_live_verify_transfer_functions, df_chain_create_bb,
- df_byte_lr_free_bb_info, df_byte_lr_alloc, df_byte_lr_reset,
- df_byte_lr_bb_local_compute, df_byte_lr_bb_local_compute,
- df_byte_lr_bb_local_compute, df_byte_lr_bb_local_compute,
- df_byte_lr_bb_local_compute, df_byte_lr_local_compute, df_byte_lr_init,
- df_byte_lr_confluence_0, df_byte_lr_confluence_n,
- df_byte_lr_transfer_function, df_byte_lr_top_dump,
- df_byte_lr_bottom_dump, df_create_unused_note,
- df_note_bb_compute, df_md_free_bb_info, df_md_alloc,
- df_md_bb_local_compute_process_def, df_md_local_compute, df_md_reset,
- df_md_transfer_function, df_md_init, df_md_confluence_0,
- df_md_confluence_n,
- df_md_top_dump, df_md_bottom_dump): Update.
- (struct df_lr_problem_data): Embedd bitmap headers.
-
-2010-06-04 Jan Hubicka <jh@suse.cz>
-
- * dce.c (dce_process_block): Do not re-scan already marked
- instructions.
-
-2010-06-04 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/39871
- PR rtl-optimization/40615
- PR rtl-optimization/42500
- PR rtl-optimization/42502
- * ira.c (init_reg_equiv_memory_loc: New function.
- (ira): Call it twice.
- * reload.h (calculate_elim_costs_all_insns): Declare.
- * ira-costs.c: Include "reload.h".
- (regno_equiv_gains): New static variable.
- (init_costs): Allocate it.
- (finish_costs): Free it.
- (ira_costs): Call calculate_elim_costs_all_insns.
- (find_costs_and_classes): Take estimated elimination costs
- into account.
- (ira_adjust_equiv_reg_cost): New function.
- * ira.h (ira_adjust_equiv_reg_cost): Declare it.
- * reload1.c (init_eliminable_invariants, free_reg_equiv,
- elimination_costs_in_insn, note_reg_elim_costly): New static functions.
- (elim_bb): New static variable.
- (reload): Move code out of here into init_eliminable_invariants and
- free_reg_equiv. Call them.
- (calculate_elim_costs_all_insns): New function.
- (eliminate_regs_1): Declare. Add extra arg FOR_COSTS;
- all callers changed. If FOR_COSTS is true, don't call alter_reg,
- but call note_reg_elim_costly if we turned a valid memory address
- into an invalid one.
- * Makefile.in (ira-costs.o): Depend on reload.h.
-
-2010-06-04 Julian Brown <julian@codesourcery.com>
-
- * config/arm/thumb2.md (*thumb2_movdf_soft_insn): Fix alternatives
- for pool ranges.
-
-2010-06-04 Richard Guenther <rguenther@suse.de>
-
- PR lto/41584
- * cgraph.h (struct varpool_node): Add lto_file_data field.
- * lto-cgraph.c (input_varpool_node): Initialize it.
-
-2010-06-04 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/predicates.md (pic_symbolic_operand): Remove predicate.
- * config/i386/i386.md (*add<mode>_1): Do not use pic_symbolic_operand
- predicate in "type" attribute calculation.
- (*addsi_1_zext): Ditto.
- (*add<mode>_2): Do not use pic_symbolic_operand in insn predicate.
- (*addsi_2_zext): Ditto.
- (*add<mode>_3): Ditto.
- (*addsi_3_zext): Ditto.
- (*add<mode>_5): Ditto.
-
-2010-06-03 Jan Hubicka <jh@suse.cz>
-
- * tree-into-ssa.c (mark_block_for_update): Avoid redundant call
- of bitmap_bit_p.
- * cfganal.c (compute_dominance_frontiers_1): Likewise.
-
-2010-06-03 Jan Hubicka <jh@suse.cz>
-
- * df-problems.c (df_create_unused_note, df_note_bb_compute):
- micro-optimize the checks when to add new note.
-
-2010-06-03 Nathan Froyd <froydnj@codesourcery.com>
-
- * final.c (output_asm_insn): Call
- targetm.asm_out.print_operand_punct_valid_p. Update comments.
- (output_operand): Call targetm.asm_out.print_operand. Update comments.
- (output_address): Call targetm.asm_out.print_operand_address.
- Update comments.
- * target.h (struct gcc_target): Add print_operand,
- print_operand_address, and print_operand_punct_valid_p fields.
- * targhooks.h (default_print_operand): Declare.
- (default_print_operand_address): Declare.
- (default_print_operand_punct_valid_p): Declare.
- * targhooks.c (default_print_operand): Define.
- (default_print_operand_address): Define.
- (default_print_operand_punct_valid_p): Define.
- * target-def.h (TARGET_PRINT_OPERAND): Define if not defined.
- (TARGET_PRINT_OPERAND_ADDRESS): Likewise.
- (TARGET_PRINT_OPERAND_PUNCT_VALID_P): Likewise.
- (TARGET_ASM_OUT): Add TARGET_PRINT_OPERAND,
- TARGET_PRINT_OPERAND_ADDRESS, and TARGET_PRINT_OPERAND_PUNCT_VALID_P.
- * vmsdbgout.c (addr_const_to_string): Update comment.
- * config/i386/i386.c (print_operand): Rename to...
- (ix86_print_operand): ...this. Make static.
- (print_operand_address): Rename to...
- (ix86_print_operand_address): ...this. Make static. Call
- ix86_print_operand instead of PRINT_OPERAND.
- (ix86_print_operand_punct_valid_p): New function.
- (TARGET_PRINT_OPERAND): Define.
- (TARGET_PRINT_OPERAND_ADDRESS): Define.
- (TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define.
- * config/i386/i386.h (HI_REGISTER_NAMES): Update comment.
- (PRINT_OPERAND_PUNCT_VALID_P): Delete.
- (PRINT_OPERAND): Delete.
- (PRINT_OPERAND_ADDRESS): Delete.
- * config/i386/i386-protos.h (print_operand): Delete prototype.
- (print_operand_address): Delete prototype.
-
-2010-06-03 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44403
- * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
- Preserve pointer qualifiers.
- (vect_create_data_ref_ptr): Likewise.
-
-2010-06-03 H.J. Lu <hongjiu.lu@intel.com>
-
- PR c++/44294
- * defaults.h (MAX_FIXED_MODE_SIZE): New.
-
- * stor-layout.c (MAX_FIXED_MODE_SIZE): Removed.
-
-2010-06-03 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44375
- * tree-cfg.c (gimple_can_merge_blocks_p): For -O0
- return false if merging the bbs would lead to goto_locus
- location being lost from the IL.
-
-2010-06-03 Jan Hubicka <jh@suse.cz>
- Jakub Jelinek <jakub@redhat.com>
-
- * var-tracking.c (dataflow_set_equiv_regs): Shortcut the loop if
- set->regs[i] is NULL or has just one entry.
-
-2010-06-03 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (lto_varpool_encoder_size): Remove.
- * lto-streamer.h (lto_varpool_encoder_size): New inline function.
-
-2010-06-03 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (FL_TUNE): Define.
- (arm_default_cpu, arm_cpu_select): Remove.
- (all_cores): Populate core field.
- (arm_selected_arch, arm_selected_cpu, arm_selected_tune): New.
- (arm_find_cpu): New function.
- (arm_handle_option): Lookup cpu/architecture names.
- (arm_override_options): Cleanup mcpu/march/mtune handling.
- (arm_file_start): Ditto.
-
-2010-06-03 Alan Modra <amodra@gmail.com>
-
- PR target/44169
- * config/rs6000/rs6000.md (load_toc_v4_PIC_1b): Add label operand.
- * config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Pass label
- rtx to gen_load_toc_v4_PIC_1b. Tidy.
- (rs6000_emit_load_toc_table): Likewise.
-
-2010-06-02 Jan Hubicka <jh@suse.cz>
-
- * passes.c (init_optimization_passes): Put ipa reference
- after ipa pure-const.
-
-2010-06-02 Jan Hubicka <jh@suse.cz>
-
- * ipa-reference.c (ipa_reference_local_vars_info_d): Remove
- calls_read_all and calls_write_all.
- (get_reference_optimization_summary): Fix formatting.
- (is_proper_for_analysis): Check that decl is not readonly.
- (propagate_bits): Check CONST/PURE/noreturn flags.
- (ipa_init): Move all_module_statics to optimization_summary_obstack.
- (analyze_function): Ignore indirect edges.
- (copy_global_bitmap): For all module statics, do nothing.
- (generate_summary): Do not print calls_read_all/calls_write_all.
- (read_write_all_from_decl): Take node as argument; check
- cgraph_node_cannot_return.
- (propagate): Reorganize read_all/write_all computation;
- check indirect edges; check ecf flags; use all_module_statics
- in the results; do not free all_module_statics.
- (stream_out_bitmap): Handle all_module_statics.
- (ipa_reference_write_optimization_summary): Likewise; use
- varpool/cgraph encoders to get boundaries.
- (ipa_reference_read_optimization_summary): Read in all_module_statics;
- use it when possible.
-
-2010-06-02 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR target/44218
- * doc/invoke.texi (RS/6000 and PowerPC Options): Delete obsolete
- -mswdiv option. Add -mrecip, -mrecip=<xxx>, -mrecip-precision options.
-
- * doc/extend.texi (powerpc builtins): Document vec_recip,
- vec_rsqrt, vec_rsqrte altivec/vsx builtins.
-
- * config/rs6000/rs60000-protos.h (rs6000_emit_swdiv): New function.
- (rs6000_emit_swrsqrt): Ditto.
- (rs6000_emit_swdivsf): Delete.
- (rs6000_emit_swdivdf): Ditto.
- (rs6000_emit_swrsqrtsf): Ditto.
-
- * config/rs6000/rs6000.c (rs6000_recip_bits): New global to
- describe the reciprocal estimate support for each type.
- (recip_options): Map -mrecip=<opt> into option bits.
- (gen_2arg_fn_t): New typedef for binary rtx gen function.
- (rs6000_debug_reg_global): If -mdebug=reg, print the state of the
- reciprocal estimate instructions.
- (rs6000_init_hard_regno_mode_ok): Key ws constraint off of the
- debug -mvsx-scalar-memory switch instead of -mvsx-scalar-double.
- Set up rs6000_recip_bits based on the -mrecip* options. Print the
- cost information if -mdebug=cost or -mdebug=reg.
- (rs6000_override_options): Set -mrecip-precision for power6, and
- power7 machines. If -mvsx or -mdfp, enable various options that
- came in previous instruction set ISAs, unless the option was
- explicitly disabled by the command line option. Parse
- -mrecip=<opt> options.
- (rs6000_builtin_vectorized_function): Add support for vectorizing
- the reciprocal estimate builtins and expansions.
- (rs6000_handle_option): Add -mrecip, -mrecip=<opt> support.
- (bdesc_2arg): Add reciprocal estimate builtins.
- (bdesc_1arg): Add reciprocal square root estimate builtins.
- (rs6000_expand_builtin): Rewrite to use a switch statement,
- instead of multiple if/then/elses. Add reciprocal estimate builtins.
- (rs6000_init_builtins): Create declarations for reciprocal
- estimate builtins.
- (rs6000_preferred_reload_class): Simplify VSX preferences, if scalar
- sized, prefer traditional floating point registers, if integer
- vector types, prefer altivec registers. Don't actually look at
- the memory address any more.
- (rs6000_builtin_reciprocal): Add new builtin reciprocal estimate
- builtins.
- (rs6000_load_constant_and_splat): New helper function to load up
- the constant for reciprocal estimate instructions.
- (rs6000_emit_madd): New helper function for generating
- multiply/add type instructions, based on the current switches.
- (rs6000_emit_msub): Ditto.
- (rs6000_emit_mnsub): Ditto.
- (rs6000_emit_swdiv_high_precision): Replace rs6000_emit_swdivsf to
- replace a divide with a reciprocal estimate and fixup, adding
- support for machines with high precision and vectors.
- (rs6000_emit_swdiv_low_precision): Rewrite rs6000_emit_swdivdf for
- low precision machines.
- (rs6000_emit_swdiv): New common function to be called to replace a
- division with reciprocal estimate and fixup.
- (rs6000_emit_swrsqrt): Replace rs6000_emit_swrsqrtsf. Add support
- for double and vector types. Add support for high precision machines.
-
- * config/rs6000/rs6000.h (TARGET_FRES): New macro to say whether
- the reciprocal estimate instructions can be generated.
- (TARGET_FRE): Ditto.
- (TARGET_FRSQRTES): Ditto.
- (TARGET_FRSQRTE): Ditto.
- (RS6000_RECIP_*): New macros for reciprocal estimate support.
-
- * config/rs6000/vector.md (rsqrte<mode>2): New insn for reciprocal
- square root estimate on vectors.
- (re<mode>2): New insn for reciprocal division estimate on vectors.
-
- * config/rs6000/rs6000-buitlins.def (ALTIVEC_BUILTIN_VRSQRTFP):
- New builtin.
- (ALTIVEC_BUILTIN_VRECIPFP): Ditto.
- (ALTIVEC_BUITLIN_VEC_RE): Ditto.
- (ALTIVEC_BUILTIN_VEC_RSQRT): Ditto.
- (VSX_BUILTIN_RSQRT_V4SF): Ditto.
- (VSX_BUITLIN_RSQRT_V2DF): Ditto.
- (RS6000_BUILTIN_RSQRT): Ditto.
- (ALTIVEC_BUILTIN_VEC_RSQRTE): Denote that the builtin is a
- floating point builtin.
-
- * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
- macros __RECIP__, __RECIPF__, __RSQRTE__, __RSQRTEF__,
- __RECIP_PRECISION__ based on the command line switches.
- (altivec_overloaded_builtins): Add reciprocal estimate builtins.
-
- * config/rs6000/rs6000.opt (-mrecip): Document add support for
- replacing division instructions with reciprocal estimate and fixup.
- (-mrecip=<opt>): New option.
- (-mrecip-precision): Ditto.
-
- * config/rs6000/vsx.md (UNSPEC_VSX_RSQRTE): Delete.
- (vsx_rsqrte<mode>2): Use UNSPEC_RSQRT not UNSPEC_VSX_RSQRTE.
- (vsx_copysignsf3): If -mvsx, use double precision cpsign on single
- precision scalar.
-
- * config/rs6000/altivec.md (UNSPEC_RSQRTEFP): Delete.
- (UNSPEC_VREFP): Ditto.
- (altivec_vnmsubfp*): Make altivec nmsub mirror the scalar and VSX
- conterparts with regard to support of -mno-fused-madd and -ffast-math.
- (altivec_vrsqrtefp): Use common UNSPEC to allow scalar/vector
- reciprocal estimate instructions to be generated.
- (altivec_vrefp): Ditto.
-
- * config/rs6000/rs6000.md (RECIPF): New iterator for reciprocal
- estimate support.
- (rreg): New mode attribute for reciprocal estimate support.
- (recip<mode>3): New insn for division using reciprocal estimate
- and fixup builtins.
- (divide define_split): New define_split to convert floating point
- division to use reciprocal estimate if the user used the
- appropriate options and the split is run when we can add new
- pseudo registers for the fixup.
- (rsqrt<mode>2): New insn for reciprocal square root support.
- (recipsf3): Move into recip<mode>3.
- (recipdf3): Ditto.
- (fres): Use TARGET_FRES.
- (rsqrtsf2): Move into rsqrt<mode>2.
- (rsqrtsf_internal1): Use TARGET_FRSQRTSES.
- (copysignsf3): Add support for VSX.
- (fred): Use TARGET_FRE.
- (fred_fpr): Ditto.
- (rsqrtdf_internal1): New function for frsqrte instruciton.
-
- * config/rs6000/altivec.h (vec_recipdiv): Define new vector builtin.
- (vec_rsqrt): Ditto.
-
-2010-06-03 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44291
- * optabs.c (init_one_libfunc): Use IDENTIFIER_HASH_VALUE.
- (set_user_assembler_libfunc): Likewise.
-
-2010-06-02 Steven Bosscher <steven@gcc.gnu.org>
-
- * mkconfig.sh: Include insn-flags.h and insn-constants.h before
- defaults.h.
- * except.h: Move MUST_USE_SJLJ_EXCEPTIONS and USING_SJLJ_EXCEPTIONS
- to defaults.h
- * expr.h (BRANCH_COST, MOVE_RATIO, CLEAR_RATIO, SET_RATIO,
- DEFAULT_FUNCTION_ARG_PADDING, FUNCTION_ARG_PADDING,
- FUNCTION_ARG_BOUNDARY, STACK_SAVEAREA_MODE, STACK_SIZE_MODE,
- STACK_CHECK_BUILTIN, STACK_CHECK_STATIC_BUILTIN,
- STACK_CHECK_PROBE_INTERVAL_EXP, STACK_CHECK_MOVING_SP,
- STACK_OLD_CHECK_PROTECT, STACK_CHECK_PROTECT,
- STACK_CHECK_MAX_FRAME_SIZE, STACK_CHECK_FIXED_FRAME_SIZE,
- STACK_CHECK_MAX_VAR_SIZE): Move target macro defaults to defaults.h.
- * defaults.h: Updated for above mentioned changes.
-
-2010-06-02 Kai Tietz <kai.tietz@onevision.com>
-
- * c-common.c: Remove header include of tm_p.h.
- * Makefile.in (c-common.o): Remove TM_P_H dependency.
-
-2010-06-02 Jakub Jelinek <jakub@redhat.com>
-
- * tree.h (struct tree_decl_map): New type.
- (tree_decl_map_eq, tree_decl_map_marked_p): Define.
- (tree_decl_map_hash): New prototype.
- (debug_expr_for_decl, value_expr_for_decl): Change into
- tree_decl_map hashtab from tree_map.
- (init_ttree): Adjust initialization.
- (tree_decl_map_hash): New function.
- (decl_debug_expr_lookup, decl_debug_expr_insert,
- decl_value_expr_lookup, decl_value_expr_insert): Adjust.
-
-2010-06-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac (gcc_cv_ld_sol2_emulation): Test for GNU ld *_sol2
- linker emulations.
- * configure: Regenerate.
- * config.in: Regenerate.
-
- * config/i386/sol2-10.h [TARGET_GNU_LD] (I386_EMULATION): Define.
- (X86_64_EMULATION): Define.
- (TARGET_LD_EMULATION): Use them.
-
- * config/sparc/sol2-gld-bi.h (SPARC32_EMULATION): Define.
- (SPARC64_EMULATION): Define.
- (LINK_ARCH_SPEC): Use them.
-
-2010-06-02 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (gcc_type_for_interval): Use
- smallest_mode_for_size for computing the precision types of new
- graphite IVs. Do not call lang_hooks.types.type_for_size.
-
-2010-06-02 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (predicate_bbs): Do not reset the GIMPLE_DEBUG
- information.
- (remove_conditions_and_labels): Reset the GIMPLE_DEBUG information.
-
-2010-06-02 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/44363
- * tree-if-conv.c (predicate_bbs): Do not call gcc_unreachable,
- return false instead.
-
-2010-06-02 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44295
- * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Do not
- create new cgraph node to check callee.
-
-2010-06-02 Richard Guenther <rguenther@suse.de>
-
- * lto-streamer-in.c (input_gimple_stmt): Fix typo.
-
-2010-06-02 Richard Guenther <rguenther@suse.de>
-
- * lto-wrapper.c (lto_wrapper_exit): Rename to ...
- (lto_wrapper_cleanup): ... this. Do not exit.
- (fatal): Adjust. Exit here.
- (fatal_perror): Likewise.
- (fatal_signal): New function.
- (main): Set up signal handlers to cleanup temporary files.
- * Makefile.in (lto-wrapper.o): Adjust dependencies.
-
-2010-06-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44377
- * tree-ssa-structalias.c (find_func_aliases): Fix typo.
-
-2010-06-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/2097.md (z10_fhex): Remove insn reservation.
- * config/s390/s390.md (UNSPEC_COPYSIGN): Remove unused constant.
- (*mov<mode>_64 TD_TF, *mov<mode>_31 TD_TF, *mov<mode>_64dfp DD_DF,
- *mov<mode>_64 DD_DF, *mov<mode>_31, mov<mode>): Remove load zero
- instruction.
- * config/s390/s390.c: Don't accept fp zeros as valid constants anymore.
-
-2010-06-02 Jan Hubicka <jh@suse.cz>
-
- * bitmap.c (bitmap_descriptor): Add search_iter.
- (bitmap_find_bit): Increment it.
- (print_statistics): Print it.
-
-2010-06-02 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree-vect-slp.c (vect_create_mask_and_perm): Use gimple_build_call
- instead of gimple_build_call_vec. Delete unnecessary local variable.
-
-2010-06-02 Steven Bosscher <steven@gcc.gnu.org>
-
- * gimplify.c (gimplify_body): Revert "Do not initialize RTL profiling"
- change from yesterday.
-
-2010-06-02 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-ada-spec.c: Clean up redundant includes.
-
-2010-06-01 Steven Bosscher <steven@gcc.gnu.org>
-
- * gimplify.c: Do not include except.h and optabs.h.
- (gimplify_body): Do not initialize RTL profiling.
- * gimple-low.c: Do not include rtl.h, diagnostic.h, langhooks.h,
- langhooks-def.h, timevar.h, except.h, hashtab.h, and expr.h.
- * gimple-fold.c: Do not include rtl.h, tm_p.h, ggc.h, basic-block.h,
- output.h, expr.h, diagnostic.h, timevar.h, value-prof.h, and
- langhooks.h.
-
- * tree-pretty-print.h: Include pretty-print.h.
- * gimple-pretty-print.h: Include pretty-print.h.
-
- * tree-pretty-print.c: Do not include diagnostic.h.
- * tree-vrp.c: Likewise.
- * tree-tailcall.c: Likewise
- * tree-scalar-evolution.c: Likewise
- * tree-ssa-dse.c: Likewise
- * tree-chrec.c: Likewise
- * tree-ssa-sccvn.c: Likewise
- * tree-ssa-copyrename.c: Likewise
- * tree-nomudflap.c: Likewise
- * tree-call-cdce.c: Likewise
- * tree-stdarg.c: Likewise
- * tree-ssa-math-opts.c: Likewise
- * tree-nrv.c: Likewise
- * tree-ssa-sink.c: Likewise
- * tree-browser.c: Likewise
- * tree-ssa-loop-ivcanon.c: Likewise
- * tree-ssa-loop.c: Likewise
- * tree-parloops.c: Likewise
- * tree-ssa-address.c: Likewise
- * tree-ssa-ifcombine.c: Likewise
- * tree-if-conv.c: Likewise
- * tree-data-ref.c: Likewise
- * tree-affine.c: Likewise
- * tree-ssa-phiopt.c: Likewise
- * tree-ssa-coalesce.c: Likewise
- * tree-ssa-pre.c: Likewise
- * tree-ssa-live.c: Likewise
- * tree-predcom.c: Likewise
- * tree-ssa-forwprop.c: Likewise
- * tree-ssa-dce.c: Likewise
- * tree-ssa-ter.c: Likewise
- * tree-ssa-loop-prefetch.c: Likewise
- * tree-optimize.c: Likewise
- * tree-ssa-phiprop.c: Likewise
- * tree-object-size.c: Likewise
- * tree-outof-ssa.c: Likewise
- * tree-ssa-structalias.c: Likewise
- * tree-switch-conversion.c: Likewise
- * tree-ssa-reassoc.c: Likewise
- * tree-ssa-operands.c: Likewise
- * tree-vectorizer.c: Likewise
- * tree-vect-data-refs.c: Likewise
- * tree-vect-generic.c: Likewise
- * tree-vect-stmts.c: Likewise
- * tree-vect-patterns.c: Likewise
- * tree-vect-slp.c: Likewise
- * tree-vect-loop.c: Likewise
- * tree-ssa-loop-ivopts.c: Likewise
- * tree-ssa-loop-im.c: Likewise
- * tree-ssa-loop-niter.c: Likewise
- * tree-ssa-loop-unswitch.c: Likewise
- * tree-ssa-loop-manip.c: Likewise
- * tree-ssa-loop-ch.c: Likewise
- * tree-dump.c: Likewise
- * tree-complex.c: Likewise
-
- * tree-into-ssa.c: Do not include diagnostic.h and expr.h.
- * tree-ssa-uninit.c: Likewise
- * tree-ssa-threadupdate.c: Likewise
- * tree-ssa-uncprop.c: Likewise
- * tree-ssa-ccp.c: Likewise
- * tree-ssa-dom.c: Likewise
- * tree-ssa-propagate.c: Likewise
- * tree-ssa-alias.c: Likewise
- * tree-dfa.c: Likewise
- * tree-cfgcleanup.c: Likewise
- * tree-sra.c: Likewise
- * tree-ssa-copy.c: Likewise
- * tree-ssa.c: Likewise
- * tree-profile.c: Likewise
- * tree-cfg.c: Likewise
- * tree-ssa-threadedge.c: Likewise
- * tree-vect-loop-manip.c: Likewise
-
- * tree-inline.c: Do not include diagnostic.h and expr.h.
- Include rtl.h.
- (copy_decl_for_dup_finish): Do not use NULL_RTX.
-
- * tree-loop-linear.c: Do not include diagnostic.h, expr.h and optabs.h.
- * tree-loop-distribution.c: Likewise.
-
-2010-06-01 Jan Hubicka <jh@suse.cz>
-
- * ipa-pure-const.c (local_pure_const): Do NORETURN discovery.
-
-2010-06-01 Jan Hubicka <jh@suse.cz>
-
- * tree-cfgcleanup.c (fixup_noreturn_call): Break out from ...;
- remove return value.
- (split_bbs_on_noreturn_calls) .... here.
- * tree-optimize.c (execute_fixup_cfg): Fixup noreturn calls too.
- * tree-flow.h (fixup_noreturn_call): New.
-
-2010-06-01 Jan Hubicka <jh@suse.cz>
-
- * emit-rtl.c (remove_insn): Fix thinko in prevoius patch.
-
-2010-06-01 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (build_nt_call_list): Delete.
- * tree.c (build_nt_call_list): Delete.
-
-2010-06-01 Jan Hubicka <jh@suse.cz>
-
- * fwprop.c: Make emit-rtl.h include last.
- * rtlanal.c: Include emit-rtl.h.
- * genautomata.c: Output emit-rtl include into insn-automata.c
- * df-scan.c: Include emit-rtl.h.
- * haifa-sched.c: Indlude emit-rtl.h.
- * mode-switching.c: Indlude emit-rtl.h.
- * graph.c: Indlude emit-rtl.h.
- * sel-sched.c: Include emit-rtl.h.
- * sel-sched-ir.c: Include emit-rtl.h.
- * ira-build.c: Include emit-rtl.h.
- * emit-rtl.c (first_insn, last_insn): Remove defines.
- (get_insns, set_first_insn, get_last_insn, set_last_insn, get_max_uid):
- Move to emit-rtl.h.
- (set_new_first_and_last_insn, get_last_insn_anywhere,
- get_first_nonnote_insn, get_last_nonnote_insn, try_split,
- make_call_insn_raw, add_insn_after, add_insn_before, remove_insn,
- delete_insns_since, reorder_insns_nobb, emit_insn_after_1,
- emit_debug_insn_before, emit_insn, start_sequence, push_to_sequence,
- push_to_sequence2, push_topmost_sequence, end_sequence, copy_insn):
- Use accessor functions.
- * emit-rtl.h (gen_blockage, gen_rtvec, copy_insn_1, copy_insn,
- gen_int_mode, emit_copy_of_insn_after, set_reg_attrs_from_value,
- set_reg_attrs_for_parm, set_reg_attrs_for_decl_rtl, adjust_reg_mode,
- mem_expr_equal_p): Move here from rtl.h.
- (get_insns, set_first-insn, get_last_insn, set_last_insn, get_max_uid):
- Move here from emit-rtl.c; make inline.
- * cfglayout.h: Include emit-rtl.h.
- * rtl.h (gen_blockage, gen_rtvec, copy_insn_1, copy_insn,
- gen_int_mode, emit_copy_of_insn_after, set_reg_attrs_from_value,
- set_reg_attrs_for_parm, set_reg_attrs_for_decl_rtl, adjust_reg_mode,
- mem_expr_equal_p, get_insns, set_first-insn,
- get_last_insn, set_last_insn, get_max_uid): Move to emit-rtl.h.
- * reg-stack.c: Include emit-rtl.h.
- * dce.c: Likewise.
-
-2010-06-01 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (tree_function_versioning): Update prototype.
- (cgraph_function_versioning): Update prototype.
- * cgraphunit.c (cgraph_copy_node_for_versioning): Accept bbs_to_copy
- bitmap.
- (cgraph_function_versioning): Accept new_entry_block and bbs_to_copy.
- (cgraph_materialize_clone, save_inline_function_body): Update use of
- tree_function_versioning.
- * tree-inline.c (copy_bb): Look for previous copied block to link
- after; fix debug output.
- (copy_cfg_body): Accept new_entry_block and bbs_to_copy.
- (copy_body): Likewise.
- (expand_call_inline): Update use of copy_body.
- (tree_function_versioning): Update use of copy body; accept
- blocks_to_copy and new_entry.
-
-2010-06-01 Jan Hubicka <jh@suse.cz>
-
- * gegenrtl.c: Remove unnecesary prototypes.
- (gendecl): Remove.
- (gendef): Produce static inline.
- (gencode): Remove.
- (main): Do not decode parameters; generate header only.
- * Makefile.in (genrtl.c): Remove.
-
-2010-06-01 Jan Hubicka <jh@suse.cz>
-
- * tree-switch-conversion.c (build_one_array): Make it readonly.
-
-2010-06-01 Richard Guenther <rguenther@suse.de>
-
- * optabs.c (init_optabs): Guard all accesses to reinit.
- * ipa-pure-const.c (propagate): Fix another typo.
- * opts.c (common_handle_option): Split assignment to bool.
- * c-opts.c (c_common_handle_option): Likewise.
-
-2010-06-01 Arnaud Charlet <charlet@adacore.com>
- Matthew Gingell <gingell@adacore.com>
-
- * doc/invoke.texi: Mention -fdump-ada-spec.
- * tree-dump.c (dump_files): Add ada-spec.
- (FIRST_AUTO_NUMBERED_DUMP): Bump to 8.
- * tree-pass.h (tree_dump_index): Add TDI_ada.
- * gcc.c: Add support for -C without -E and for -fdump-ada-spec.
- (cpp_unique_options): Do not reject -C or -CC when -E isn't present.
- (default_compilers) <@c-header>: Allow -fdump-ada-spec on header files.
- * c-decl.c: Include c-ada-spec.h.
- (collect_source_ref_cb, collect_all_refs, for_each_global_decl): New
- functions.
- (c_write_global_declarations): Add handling of -fdump-ada-spec.
- * c-lex.c (c_lex_with_flags): Add handling of CPP_COMMENT.
- * Makefile.in (C_AND_OBJC_OBJS): Add c-ada-spec.o.
- * c-ada-spec.h, c-ada-spec.c: New files.
-
-2010-06-01 Richard Guenther <rguenther@suse.de>
-
- PR lto/43853
- * ipa-pure-const.c (get_function_state): Hand back varying state
- if we do not have one.
- (has_function_state): New function.
- (duplicate_node_data): Adjust.
- (remove_node_data): Likewise.
- (pure_const_write_summary): Likewise.
- (propagate): Likewise. Fix typo.
-
-2010-06-01 Jan Hubicka <jh@suse.cz>
-
- * tree-cfg.c (verify_stmt): Do not skip could_throw test.
- * passes.c (execute_function_todo): Do not make implicit verify_ssa.
- (execute_all_ipa_transforms): Do not play with the states.
-
-2010-06-01 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * config/arm/t-linux-androideabi: New.
- * config.gcc (arm*-*-linux-androideabi): Include multilib config.
-
-2010-06-01 Jan Hubicka <jh@suse.cz>
-
- * tree-inline.c (estimate_num_insns): For stdarg functions look
- into call statement to count cost of argument passing.
-
-2010-06-01 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386.c (ix86_output_addr_vec_elt): Make LPREFIX
- argument for fprintf.
- (ix86_output_addr_diff_elt): Likewise.
- (x86_function_profiler): Likewise.
- * config/cygming.h (LOCAL_LABEL_PREFIX): Fix for x64 no-underscore.
- (LPREFIX): Likewise.
- (ASM_GENERATE_INTERNAL_LABEL): Likewise.
-
-2010-05-31 Jakub Jelinek <jakub@redhat.com>
-
- PR target/44338
- * config/i386/sse.md (fma4i_fmadd<mode>4256, fma4i_fmsub<mode>4256,
- fma4i_fnmadd<mode>4256, fma4i_fnmsub<mode>4256, fma4i_fmadd<mode>4,
- fma4i_fmsub<mode>4, fma4i_fnmadd<mode>4, fma4i_fnmsub<mode>4,
- fma4i_vmfmadd<mode>4, fma4i_vmfmsub<mode>4, fma4i_vmfnmadd<mode>4,
- fma4i_vmfnmsub<mode>4, fma4i_fmaddsubv8sf4, fma4i_fmaddsubv4df4,
- fma4i_fmaddsubv4sf4, fma4i_fmaddsubv2df4, fma4i_fmsubaddv8sf4,
- fma4i_fmsubaddv4df4, fma4i_fmsubaddv4sf4, fma4i_fmsubaddv2df4):
- Guard only with TARGET_FMA4 instead of TARGET_FMA4 &&
- TARGET_FUSED_MADD.
-
-2010-05-31 Jan Hubicka <jh@suse.cz>
-
- * tree.h (tree_range_check_failed): Declare noreturn.
-
-2010-05-31 Jan Hubicka <jh@suse.cz>
-
- * gimple.c (gimple_call_builtin_p): New function.
- * gimple.h (gimple_call_builtin_p): Declare.
- * tree-cfg.c (make_edges): Produce edge from BUILT_IN_RETURN
- to exit.
- (execute_warn_function_return): BUILT_IN_RETURN is return.
- (split_critical_edges): Return edges are not critical.
- (is_ctrl_altering_stmt): Builtin_in_return is altering.
- (gimple_verify_flow_info): Handle built_in_return.
- (execute_warn_function_return): Handle built_in_return.
- * ipa-pure-const.c (check_call): Ignore builtin_return.
-
-2010-05-31 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/44337
- * expr.c (expand_assignment): Don't store anything for out-of-bounds
- array accesses with non-MEM.
-
- PR tree-optimization/44182
- * tree-inline.c (copy_edges_for_bb): Don't split bb if a stmt that
- newly needs to end a bb is followed by debug stmts, instead return
- true from the function at the end.
- (maybe_move_debug_stmts_to_successors): New function.
- (copy_cfg_body): Call it if copy_edges_for_bb returned true.
-
-2010-05-31 Kai Tietz <kai.tietz@onevision.com>
-
- PR target/44161
- * config/i386/cygming.h (SUBTARGET_OVERRIDE_OPTIONS): Handle flag_pic.
-
-2010-05-31 Eric Botcazou <ebotcazou@adacore.com>
-
- * cgraphunit.c (cgraph_decide_is_function_needed): Really return false
- for nested functions in non-optimized compilation.
-
-2010-05-31 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (find_func_aliases): Handle BUILT_IN_RETURN.
-
-2010-05-30 Jan Hubicka <jh@suse.cz>
-
- * predict.c (maybe_hot_edge_p): Calls to functions called once is cold.
-
-2010-05-30 Richard Guenther <rguenther@suse.de>
-
- PR lto/42975
- * tree-eh.c (execute_cleanup_eh_1): Copy from execute_cleanup_eh.
- (execute_cleanup_eh): Clear DECL_FUNCTION_PERSONALITY if it is
- no longer needed.
-
-2010-05-30 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/darwin.c (output_objc_section_asm_op): Add comment.
- (name_needs_quotes): Add '_' to list of valid comment chars.
- (machopic_output_function_base_name): Remove unneeded quotes.
- (darwin_encode_section_info): Adjust asm whitespace.
- * config/i386/darwin.h (ASM_OUTPUT_COMMON): Adjust asm tabs.
- (ASM_OUTPUT_LOCAL): Ditto.
- * config/rs6000/darwin.h (ASM_OUTPUT_COMMON): Ditto.
- * config/darwin.h (GLOBAL_ASM_OP): Ditto.
- * config/darwin9.h (ASM_OUTPUT_ALIGNED_COMMON): Ditto.
-
-2010-05-30 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/rs6000/rs6000.c (rs6000_output_function_entry): Use
- RS6000_OUTPUT_BASENAME unconditionally.
- (rs6000_output_function_epilogue): Likewise.
-
-2010-05-30 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (wrapup_global_declaration_2): Avoid creation of new varpool
- nodes.
-
-2010-05-30 Richard Guenther <rguenther@suse.de>
-
- * tree-cfg.c (verify_gimple_assign_single): Implement
- verification for COND_EXPR rhs.
-
-2010-05-30 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (cgraph_dump_file): Declare.
- * cgraphunit.c (cgraph_dump_file): Export.
- * ipa.c (dump_cgraph_node_set, dump_varpool_node_set): Be less verbose.
-
-2010-05-30 Jan Hubicka <jh@suse.cz>
-
- * dwarf2out.c (reference_to_unused,
- premark_types_used_by_global_vars_helper): Avoid creation of new
- varpool nodes.
-
-2010-05-30 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (cgraph_node_cannot_return,
- cgraph_edge_cannot_lead_to_return): New functions.
- * cgraph.c (cgraph_node_cannot_return,
- cgraph_edge_cannot_lead_to_return): Use them.
- * ipa-pure-const.c (pure_const_names): New static var.
- (check_call): Handle calls not leading to return.
- (pure_const_read_summary): Dump info read.
- (propagate): Dump info about propagation process; ignore side effects
- of functions not leading to exit; fix handling of pure functions.
-
-2010-05-30 Jan Hubicka <jh@suse.cz>
-
- * config/i386/i386.c (pro_epilogue_adjust_stack): Use EBP
- for tail call epilogues.
-
-2010-05-30 Jan Hubicka <jh@suse.cz>
-
- * passes.c (ipa_write_optimization_summaries_1, ipa_write_summaries_2,
- ipa_read_summaries_1, ipa_read_optimization_summaries_1): Initialize
- dump files.
-
-2010-05-29 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (cgraph_remove_unreachable_node): Walk references of correct
- node; remove references in node we no longer keep in cgrpah but need
- body of.
-
-2010-05-29 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_mark_reachable): Relax check for analyzed nodes.
-
-2010-05-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/44165
- * config/pa/pa32-linux.h (CTOR_LIST_BEGIN): Mark __CTOR_LIST__ as used.
-
-2010-05-29 Jan Hubicka <jh@suse.cz>
-
- * tree-vrp.c (debug_value_range, debug_all_value_ranges,
- debug_asserts_for, debug_all_asserts): Annotate with DEBUG_FUNCTION.
- * tree-into-ssa.c (debug_decl_set, debug_defs_stack, debug_currdefs,
- debug_tree_ssa, debug_tree_ssa_stats, debug_def_blocks,
- debug_names_replaced_by, debug_update_ssa): Likewise.
- * sbitmap.c (debug_sbitmap): Likewise.
- * genrecog.c (debug_decision, debug_decision_list): Likewise.
- * tree-pretty-print.c (debug_generic_expr, debug_generic_stmt,
- debug_tree_chain): Likewise.
- * tree-loop-distribution.c (debug_rdg_partitions): Likewise.
- * cgraph.c (debug_cgraph_node, debug_cgraph): Likewise.
- * optabs.c (debug_optab_libfuncs): Likewise.
- (verify_loop_closed_ssa): Likewise.
- * value-prof.c (verify_histograms): Likewise.
- * reload.c (debug_reload_to_stream, debug_reload): Likewise.
- * bitmap.c (debug_bitmap_file, debug_bitmap, bitmap_print): Likewise.
- * cfghooks.c (verify_flow_info): Likewise.
- * fold-const.c (debug_fold_checksum): Likewise.
- * omp-low.c (debug_omp_region, debug_all_omp_regions): Likewise.
- * cfg.c (debug_regset, debug_flow_info, debug_bb, debug_bb_n):
- Likewise.
- * omega.c (debug_omega_problem): Likewise.
- * cgraphunit.c (verify_cgraph_node, verify_cgraph): Likewise.
- * tree-ssa-ccp.c (debug_lattice_value): Likewise.
- * dominance.c (verify_dominators, debug_dominance_info,
- debug_dominance_tree): Likewise.
- * df-core.c (df_insn_uid_debug, df_insn_debug, df_insn_debug_regno,
- * df_regno_debug, df_ref_debug,
- debug_df_insn, debug_df_reg, debug_df_regno, debug_df_ref,
- debug_df_defno, debug_df_useno, debug_df_chain): Likewise.
- * tree-ssa-dom.c (debug_dominator_optimization_stats): Likewise.
- * sel-sched.c (debug_state): Likewise.
- * tree-ssa-alias.c (debug_alias_info, debug_points_to_info_for):
- Likewise.
- * cfganal.c (print_edge_list, verify_edge_list): Likewise.
- * dwarf2out.c (debug_dwarf_die, debug_dwarf): Likewise.
- * tree-eh.c (verify_eh_edges, verify_eh_dispatch_edge): Likewise.
- * gimple-pretty-print.c (debug_gimple_stmt, debug_gimple_seq):
- Likewise.
- * c-pretty-print.c (debug_c_tree): Likewise.
- * sel-sched-dump.c (debug_insn_rtx, debug_vinsn, debug_expr, debug_insn
- debug_av_set, debug_lv_set, debug_ilist, debug_blist,
- debug_insn_vector, debug_hard_reg_set, debug_mem_addr_value): Likewise.
- * ebitmap.c (debug_ebitmap): Likewise.
- * function.c (debug_find_var_in_block_tree): Likewise.
- * print-rtl.c (debug_rtx): Likewise.
- (debug_rtx_count): Likewise.
- (debug_rtx_list, debug_rtx_range, debug_rtx_find): Likewise.
- * stor-layout.c (debug_rli): Likewise.
- * ipa.c (debug_cgraph_node_set, debug_varpool_node_set): Likewise.
- * tree-data-ref.c (debug_data_references,
- debug_data_dependence_relations, debug_data_reference,
- debug_data_dependence_relation, debug_rdg_vertex,
- debug_rdg_component, debug_rdg): Likewise.
- * tree-affine.c (debug_aff): Likewise.
- * tree-dfa.c (debug_referenced_vars, debug_variable, debug_dfa_stats):
- Likewise.
- * except.c (debug_eh_tree, verify_eh_tree): Likewise.
- * emit-rtl.c (verify_rtl_sharing): Likewise.
- * tree-ssa-pre.c (debug_pre_expr, debug_bitmap_set,
- debug_value_expressions): Likewise.
- * tree-ssa-live.c (debug_scope_block, debug_scope_blocks): Likewise.
- * sese.c (debug_rename_map, debug_ivtype_map): Likewise.
- * print-tree.c (debug_tree, debug_vec_tree): Likewise.
- * cfglayout.c (verify_insn_chain): Likewise.
- * graphite-clast-to-gimple.c (debug_clast_name_indexes,
- debug_clast_stmt, debug_generated_program): Likewise.
- * ggc-page.c (debug_print_page_list): Likewise.
- * tree-ssa-ter.c (debug_ter): Likewise.
- * graphite-dependences.c (debug_pddr): Likewise.
- * sched-deps.c (debug_ds): Likewise.
- * tree-ssa.c (verify_ssa): Likewise.
- * graphite-poly.c (debug_scattering_function, debug_iteration_domain,
- debug_scattering_functions, debug_iteration_domains, debug_pdr,
- debug_pdrs, debug_pbb_domain, debug_pbb, debug_scop_context,
- debug_scop, debug_cloog, debug_scop_params, debug_lst): Likewise.
- * tree-inline.c (debug_find_tree): Likewise.
- * graphite-ppl.c (debug_ppl_linear_expr, debug_ppl_polyhedron_matrix,
- debug_ppl_powerset_matrix): Likewise.
- * var-tracking.c (debug_dv): Likewise.
- * system.h (DEBUG_FUNCTION, DEBUG_VARIABLE): Define.
- * cfgloop.c (verify_loop_structure): Likewise.
- * plugin.c (dump_active_plugins, debug_active_plugins): Likewise.
- * c-common.c (verify_sequence_points): Likewise.
- * sched-rgn.c (debug_regions, debug_region, debug_candidate,
- debug_candidates, debug_rgn_dependencies): Likewise.
- * tree-ssa-structalias.c (debug_constraint, debug_constraints,
- * debug_constraint_graph, debug_solution_for_var,
- debug_sa_points_to_info): Likewise.
- * sched-vis.c (debug_insn_slim, debug_bb_slim, debug_bb_n_slim):
- Likewie.
- * tree-cfg.c (debug_cfg_stats, verify_stmts, debug_function,
- debug_loops, debug_loop, debug_loop_num): Likewise.
- * passes.c (debug_pass): Likewise.
- (dump_properties): Likewise; add cfglayout property.
- (debug_properties): Likewise.
- * tree-ssa-reassoc.c (debug_ops_vector): Likewise.
- * varpool.c (debug_varpool): Likewise.
- * regcprop.c (debug_value_data): Likewise.
- * tree-ssa-operands.c (verify_imm_links, debug_immediate_uses,
- debug_immediate_uses_for): Likewise.
-
-2010-05-29 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/44315
- * Makefile.in (build/gencondmd.o): Remove TM_H := $(GTM_H).
- Filter out insn-flags.h.
-
-2010-05-29 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (struct varpool_node_set_def,
- struct cgraph_node_set_def): Remove unused AUX pointer.
- (cgraph_node_set_nonempty_p, varpool_node_set_nonempty_p): Use
- VEC_empty macro.
-
-2010-05-29 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44324
- * ipa-cp.c (ipcp_insert_stage): Replace "clone" by "constprop".
-
-2010-05-29 Richard Guenther <rguenther@suse.de>
-
- * lto-streamer.c (cached_bp): New global variable.
- (bitpack_create): Return the cached bitpack, if available.
- (bitpack_delete): Clear and cache the bitpack, if appropriate.
- (bp_pack_value): Remove redundant asserts.
-
-2010-05-29 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/44306
- * tree-if-conv.c (is_true_predicate): New.
- (is_predicated): Use is_true_predicate.
- (add_to_predicate_list): Same. Do not use unshare_expr.
- (add_to_dst_predicate_list): Same.
-
-2010-05-29 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (add_to_dst_predicate_list): Do not use the ->aux
- field on edges.
- (predicate_bbs): Same.
- (clean_predicate_lists): Same.
- (find_phi_replacement_condition): Do not AND the predicate from
- edge->aux.
-
-2010-05-29 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/44315
- * Makefile.in (build/gencondmd.o): Add a missing `\'.
-
-2010-05-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/44261
- config/pa/pa.md (negdf2_slow, negsf2_slow): New patterns.
- (negdf2): Adjust expander pattern and use negdf2_slow.
- (negsf2): Likewise.
-
-2010-05-29 Nathan Froyd <froydnj@codesourcery.com>
-
- * basic-block.h (struct control_flow_graph): Move last_label_uid field
- up.
- * df.h (struct df_base_ref): Move regno field up.
- * dwarf2out.c (struct dw_fde_struct): Move funcdef_number field down.
- * expr.h (struct separate_ops): Move location field up.
- * optabs.h (struct optab_d): Move libcall_basename field down.
- * config/i386/i386.c (struct ix86_frame): Move red_zone_size up.
- * config/i386/i386.h (struct machine_function): Convert call_abi field
- into a bitfield. Move cfa field to the end of the structure.
-
-2010-05-29 Jan Hubicka <jh@suse.cz>
-
- * varpool.c (varpool_get_node): Fix lookup.
-
-2010-05-29 Steven Bosscher <steven@gcc.gnu.org>
-
- * config/spu/spu-protos.h: Do not include rtl.h. Protect
- RTL specific prototypes with #ifdef RTX_CODE.
- * config/spu/spu-c.c: Include c-common.h instead of c-tree.h.
- * config/spu/t-spu-elf: Fix dependencies.
-
- * config/t-darwin (darwin-c.o): Remove C_TREE_H dependency.
-
-2010-05-29 Mike Stump <mikestump@comcast.net>
-
- PR bootstrap/44315
- * Makefile.in (build/gencondmd.o): Be sure to use GTM_H instead of
- TM_H when building to avoid dependency loops.
-
-2010-05-29 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_materialize_clone): Only remove calles,
- refs and body; not the whole node for masters of materialized clones.
-
-2010-05-29 Mike Stump <mikestump@comcast.net>
-
- * config/rs6000/rs6000-c.c: Remove c-tree.h include.
-
-2010-05-29 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (clone_function_name): Take SUFFIX argument; export.
- (cgraph_create_virtual_clone): Take SUFFIX argument; udpate
- use of clone_function_name.
- * cgraph.h (cgraph_create_virtual_clone,
- cgraph_function_versioning): update prototypes.
- (clone_function_name): Declare.
- * ipa-cp.c (ipcp_insert_stage): Update call of
- cgraph_create_virtual_clone.
- * omp-low.c (create_omp_child_function_name): Use
- cgraph_create_virtual_clone.
- * cgraphunit.c (cgraph_copy_node_for_versioning): Fix edges updating.
- (cgraph_function_versioning): Take SUFFIX argument; produce new name
- and make decl local.
-
-2010-05-29 Steven Bosscher <steven@gcc.gnu.org>
-
- * vec.h: Include statistics.h
- * Makefile.in: Introduce VEC_H. Replace all vec.h dependencies
- with VEC_H.
-
-2010-05-29 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-lex.c: Do not include c-tree.h.
- * c-pretty-print.c: Likewise.
- * c-opts.c: Likewise.
- * c-gimplify.c: Likewise.
- * c-common.c: Likewise.
- * c-dump.c: Likewise. Include c-common.h.
-
-2010-05-29 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-common.h (GCC_DIAG_STYLE): Define earlier in the file,
- before including diagnostic-core.h.
- (c_cpp_error): New prototype moved from c-tree.h.
- Use ATTRIBUTE_GCC_DIAG instead of ATTRIBUTE_GCC_CDIAG.
- * c-tree.h (ATTRIBUTE_GCC_CDIAG): Remove define.
- (pedwarn_c90, perwarn_c99): Use ATTRIBUTE_GCC_DIAG instead.
- (c_cpp_error): Prototype moved to c-common.h.
- * Makefile.in: Update dependency for C_COMMON_H.
-
-2010-05-29 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-common.h: Add FIXME for awkward split of c_register_addr_space.
- * c-common.c (c_register_addr_space): Remove here.
- * c-decl.c (c_register_addr_space): Re-add here.
-
-2010-05-28 Mike Stump <mikestump@comcast.net>
-
- * config/darwin-c.c: Remove c-tree.h include.
-
-2010-05-28 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c: Include diagnostic.h.
- (error_count): Remove. All users changed to use errorcount.
- (programname): Remove. All users changed to use progname.
- (fancy_abort, internal_error, fatal_error, error, warning, inform,
- fnotice): Remove.
- (execute): Don't include "Internal error" and bug reporting
- information in argument of internal_error call.
- (process_command): Don't increment error_count after calling
- perror_with_name.
- (input_filename): Rename to gcc_input_filename. All users
- changed.
- (main): Call diagnostic_initialize. Register delete_temp_files
- with atexit. Use seen_error to test for errors.
- * gcc.h: Include diagnostic-core.h.
- (fatal_error, error, warning): Remove.
- * Makefile.in (GCC_H): Add $(DIAGNOSTIC_CORE_H).
- (GCC_OBJS): Add diagnostic.o, pretty-print.o and input.o.
- (gcc.o): Update dependencies.
-
-2010-05-28 Jeff Law <law@redhat.com>
-
- * ira.c (ira_bad_reload_regno, ira_build_reload_regno_1): New
- functions.
- * ira.h (ira_bad_reload_regno): Declare
- * reload1.c (allocate_reload_reg): Use ira_bad_reload_regno.
-
- * ira-color.c (update_curr_costs): Free updated hard reg costs.
- (ira_reassign_conflict_allocnos): Remove bogus asserts.
- (allocno_reload_assign): Likewise.
-
-2010-05-28 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree-vect-stmts.c (vectorizable_assignment): Call build1 instead of
- build1_stat.
-
-2010-05-28 Richard Guenther <rguenther@suse.de>
-
- PR lto/44312
- * lto-streamer-in.c (unpack_ts_fixed_cst_value_fields):
- Stream fixed-point constants mode.
- (unpack_ts_type_value_fields): Fix width of TYPE_MODE
- and TYPE_PRECISION.
- * lto-streamer-out.c (pack_ts_fixed_cst_value_fields):
- Stream fixed-point constants mode.
- (pack_ts_function_decl_value_fields): Fix width of TYPE_MODE
- and TYPE_PRECISION.
-
-2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-scalar-evolution.c (set_nb_iterations_in_loop): Inlined in the
- only place it was called from.
- (number_of_latch_executions): Do not return chrec_dont_know when the
- may_be_zero is a runtime condition: instead, return a COND_EXPR
- including the may_be_zero condition.
- * cfgloop.h (struct loop): Add a note on COND_EXPRs to the comment
- of nb_iterations.
- * tree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p): Handle
- COND_EXPRs.
-
-2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (replace_phi_with_cond_gimple_assign_stmt): Don't
- generate COND_EXPRs for degenerate_phi_result.
-
-2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/44293
- * tree-if-conv.c (if_convertible_loop_p): Check the
- if-convertibility of phi nodes in non predicated BBs.
-
-2010-05-28 Joseph Myers <joseph@codesourcery.com>
-
- * gcc.c (error, warning, inform): Remove duplicate ": " in output.
-
-2010-05-28 Joseph Myers <joseph@codesourcery.com>
-
- PR driver/15303
- * gcc.c (inform, warning, inform): New functions.
- (fatal_ice): Rename to internal_error; change cmsgid parameter to
- gmsgid. All callers changed.
- (notice): Rename to fnotice; add parameter fp. All callers changed.
- (fatal_error): Rename to fatal_signal. All users changed.
- (fatal): Rename to fatal_error; change cmsgid parameter to
- gmsgid. All callers changed.
- (process_command): Use warning instead of error for warnings.
- (end_going_arg): Don't use _() around argument of error.
- (do_spec_1): Use inform for message from %n specs. Use warning
- instead of error for warnings.
- (main): Use inform for comparison messages. Use warning for
- message about unused linker input.
- (error): Increment error_count. Print "error: ".
- * gcc.h (fatal): Change to fatal_error.
- (warning): Declare.
- * config/darwin-driver.c (darwin_default_min_version): Use warning
- instead of fprintf for warnings.
- * cppspec.c (lang_specific_driver): Use fatal_error instead of fatal.
-
-2010-05-28 Julian Brown <julian@codesourcery.com>
-
- * config/arm/thumb2.md (*thumb2_addsi3_compare0): New.
- (*thumb2_addsi3_compare0_scratch): New.
- * config/arm/constraints.md (Pv): New.
- * config/arm/arm.md (*addsi3_compare0): Remove FIXME comment. Use
- for ARM mode only.
- (*addsi3_compare0_scratch): Likewise.
-
-2010-05-28 Jan Hubicka <jh@suse.cz>
-
- * ipa-reference.c (add_static_var): Remove redundant all_module_statics
- check.
- (ipa_reference_write_optimization_summary): Call is_proper_for_analysis
- only on local statics.
-
-2010-05-28 Iain Sandoe <iains@gcc.gnu.org>
-
- * config.gcc (*-*-darwin*): Adjust t-make fragments for Darwin.
-
-2010-05-28 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR bootstrap/44314
- * config/alpha/linux.h, config/rs6000/linux.h, config/rs6000/linux64.h
- (OPTION_GLIBC): Define.
-
-2010-05-28 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/41048
- * dwarf2out.c (double_int_type_size_in_bits): New function.
- (round_up_to_align): Change first argument and return value to
- double_int.
- (field_byte_offset): Work internally on double_ints.
-
- PR target/43636
- * builtins.c (expand_movstr): Use a temporary pseudo instead
- of target even when target is not NULL and not const0_rtx, but
- fails movstr predicate.
- * config/m32c/blkmov.md (movstr): Add predicate to first operand.
-
-2010-05-28 Joseph Myers <joseph@codesourcery.com>
-
- * final.c (rest_of_clean_state): Use %m in errors instead of
- strerror (errno).
- * gengtype.c (read_input_list, close_output_files): Use xstrerror
- instead of strerror.
- * toplev.c (process_options): Use %m in errors instead of strerror
- (errno).
- * tree-dump.c (dump_begin): Use %m in errors instead of strerror
- (errno).
-
-2010-05-28 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (ix86_fn_abi_va_list): Make static.
- (ix86_canonical_va_list_type): Make static. Add declaration.
- (ix86_enum_va_list): Make static. Reindent.
- * config/i386/i386-protos.h (ix86_fn_abi_va_list): Remove declaration.
- (ix86_canonical_va_list_type): Ditto.
- (ix86_enum_va_list): Ditto.
-
-2010-05-28 Richard Guenther <rguenther@suse.de>
-
- * lto-wrapper.c (run_gcc): With -save-temps generate a
- user-visible ltrans filename. Fixup ltrans unit numbering.
-
-2010-05-28 Kai Tietz <kai.tietz@onevision.com>
-
- * c-common.c (c_common_nodes_and_builtins): Replace use
- of TARGET_ENUM_VA_LIST by target hook enum_va_list.
- * config/i386/i386.c (TARGET_ENUM_VA_LIST_P): Hook
- to ix86_enum_va_list.
- * config/i386/i386.h (TARGET_ENUM_VA_LIST): Removed.
- * doc/tm.texi (TARGET_ENUM_VA_LIST): Removed.
- (TARGET_ENUM_VA_LIST_P): Add hook description.
- * target-def.h (TARGET_ENUM_VA_LIST_P): Added.
- * target.h (gcc_target): Add enum_va_list hook.
-
- PR bootstrap/44299
- * config/i386/t-cygming: Adjust header dependencies for winnt-cxx.c.
- * config/i386/winnt-cxx.c (IN_GCC_FRONTEND): Remove undefine.
- * config/i386/winnt.c (IN_GCC_FRONTEND): Likewise.
-
-2010-05-28 Alan Modra <amodra@gmail.com>
-
- PR target/44266
- * config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Use
- emit_library_call machinery to set up __tls_get_addr calls.
-
-2010-05-28 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.md (movqi): Fix typo ('*' -> '#').
-
-2010-05-28 Dodji Seketeli <dodji@redhat.com>
-
- Revert fix for PR c++/44188
- * c-common.c (is_typedef_decl): Revert the moving of this
- definition ...
- * tree.c (is_typedef_decl): ... here.
- (typdef_variant_p): Revert the moving of this definition
- here from cp/tree.c.
- * c-common.h (is_typedef_decl): Revert the moving of this
- declaration ...
- * tree.h (is_typedef_decl): ... here.
- (typedef_variant_p): Revert the moving of this declaration here
- from cp/cp-tree.h
- * dwarf2out.c (is_naming_typedef_decl): Revert this new function.
- (gen_tagged_type_die): Revert the splitting out of ...
- (gen_type_die_with_usage): ... this function. Revert the anonymous
- tagged type handling.
- (gen_typedef_die): Revert emitting DW_TAG_typedef for
- typedefs naming anonymous tagged types.
-
-2010-05-28 Segher Boessenkool <segher@kernel.crashing.org>
-
- * config/rs6000/rs6000-modes.def (PSImode): Delete.
-
-2010-05-28 Segher Boessenkool <segher@kernel.crashing.org>
-
- * config/rs6000/constraints.md ("z" constraint): Change to CA_REGS.
- * config/rs6000/predicates.md: Change XER_REGNO_P to CA_REGNO_P
- throughout.
- * config/rs6000/rs6000.c (rs6000_reg_names, alt_reg_names): Change
- "xer" to "ca".
- Change XER_REGNO_P to CA_REGNO_P, XER_REGNO to CA_REGNO, and
- XER_REGS to CA_REGS throughout.
- * config/rs6000/rs6000.h: Same.
- (ADDITIONAL_REGISTER_NAMES): Add "xer".
- * config/rs6000/rs6000.md: Change XER_REGNO to CA_REGNO. Document
- that mode_iterator "P" is the size for arithmetic carries as well.
- * doc/md.texi (rs6000 section, "z" constraint): Fix documentation.
-
-2010-05-28 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/44255
- * combine.c (struct rtx_subst_pair): Define unconditionally.
- (propagate_for_debug_subst): Likewise. If not AUTO_INC_DEC,
- copy_rtx pair->to instead of cleanup_auto_inc_dec it.
- Call make_compound_operation on pair->to.
- (propagate_for_debug): Don't call make_compound_operation here.
- Always use simplify_replace_fn_rtx.
-
-2010-05-27 Sterling Augustine <sterling@tensilica.com>
-
- * doc/invoke.texi (xtensa options): Add -mforce-no-pic.
- * config/xtensa/xtensa.c (override_options): Check
- TARGET_FORCE_NO_PIC and set flag_pic.
- * config/xtensa/xtensa.opt: Document -mforce-no-pic
-
-2010-05-27 Kai Tietz <kai.tietz@onevision.com>
-
- PR bootstrap/44299
- * config/i386/winnt.c (IN_GCC_FRONTEND): Undefine.
- * config/i386/winnt-cxx.c (IN_GCC_FRONTEND): Likewise.
-
-2010-05-27 Joseph Myers <joseph@codesourcery.com>
-
- * diagnostic-core.h: New. Contents moved from diagnostic.h and
- toplev.h.
- * diagnostic.c: Don't include toplev.h.
- (progname): Define. Moved from toplev.c.
- (seen_error): New function.
- * diagnostic.h: Include diagnostic-core.h.
- (diagnostic_t, emit_diagnostic): Don't declare here.
- * toplev.c (progname): Move to toplev.c.
- (emit_debug_global_declarations, compile_file, finalize,
- do_compile, toplev_main): Use seen_error.
- * toplev.h: Include diagnostic-core.h.
- (trim_filename, GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG,
- internal_error, warning, warning_at, error, error_n, error_at,
- fatal_error, pedwarn, permerror, sorry, inform, inform_n,
- verbatim, fnotice, progname): Move to diagnostic-core.h.
- * builtins.c: Include diagnostic-core.h instead of diagnostic.h.
- (expand_builtin_expect): Use seen_error.
- * c-decl.c: Include diagnostic-core.h instead of diagnostic.h.
- (c_make_fname_decl, c_write_global_declarations): Use seen_error.
- * c-format.c: Include diagnostic-core.h instead of diagnostic.h.
- * c-gimplify.c: Include diagnostic-core.h instead of diagnostic.h.
- * c-lang.c: Include diagnostic-core.h instead of diagnostic.h.
- * c-lex.c (c_lex_with_flags, interpret_float): Don't increment
- errorcount for errors.
- * c-opts.c (c_common_finish): Use seen_error.
- * cgraph.c: Include diagnostic-core.h instead of diagnostic.h.
- * cgraphunit.c (verify_cgraph_node, verify_cgraph,
- cgraph_output_pending_asms, cgraph_optimize): Use seen_error.
- * coverage.c: Include diagnostic-core.h instead of diagnostic.h.
- (get_coverage_counts): Use seen_error.
- * dwarf2out.c (dwarf2out_finish): Use seen_error.
- * gimplify.c (gimplify_var_or_parm_decl, gimple_push_cleanup,
- gimplify_body): Use seen_error.
- * ipa-inline.c (cgraph_early_inlining): Use seen_error.
- * ipa-pure-const.c (gate_pure_const): Use seen_error.
- * ipa-reference.c (gate_reference): Use seen_error.
- * jump.c: Include diagnostic-core.h instead of diagnostic.h.
- * lambda-code.c: Include diagnostic-core.h instead of
- diagnostic.h.
- * lto-cgraph.c: Include diagnostic-core.h instead of diagnostic.h.
- * lto-compress.c: Include diagnostic-core.h instead of
- diagnostic.h.
- * lto-section-in.c: Include diagnostic-core.h instead of
- diagnostic.h.
- * lto-streamer-out.c: Include diagnostic-core.h instead of
- diagnostic.h.
- * lto-streamer.c: Include diagnostic-core.h instead of
- diagnostic.h.
- (gate_lto_out): Use seen_error.
- * matrix-reorg.c: Include diagnostic-core.h instead of
- diagnostic.h.
- * omega.c: Include diagnostic-core.h instead of diagnostic.h.
- * omp-low.c: Include diagnostic-core.h instead of diagnostic.h.
- (gate_expand_omp, lower_omp_1): Use seen_error.
- * passes.c: Include diagnostic-core.h instead of diagnostic.h.
- (rest_of_decl_compilation, rest_of_type_compilation,
- gate_rest_of_compilation, ipa_write_summaries): Use seen_error.
- * tree-cfg.c (label_to_block_fn): Use seen_error.
- * tree-inline.c (optimize_inline_calls): Use seen_error.
- * tree-mudflap.c (mudflap_finish_file): Use
- seen_error.
- * tree-optimize.c (gate_all_optimizations,
- gate_all_early_local_passes, gate_all_early_optimizations): Use
- seen_error.
- * tree-ssa-structalias.c (gate_ipa_pta): Use seen_error.
- * varpool.c: Include diagnostic-core.h instead of diagnostic.h.
- (varpool_remove_unreferenced_decls,
- varpool_assemble_pending_decls): Use seen_error.
- * Makefile.in (DIAGNOSTIC_CORE_H): Define.
- (TOPLEV_H, DIAGNOSTIC_H): Update.
- (c-decl.o, c-lang.o, c-format.o, lto-compress.o, lto-cgraph.o,
- lto-streamer-out.o, lto-section-in.o, lto-streamer.o,
- c-gimplify.o, omp-low.o, omega.o, diagnostic.o, passes.o,
- builtins.o, jump.o, cgraph.o, varpool.o, matrix-reorg.o,
- coverage.o, lambda-code.o): Update dependencies.
-
-2010-05-25 Dodji Seketeli <dodji@redhat.com>
-
- PR c++/44188
- * c-common.c (is_typedef_decl): Move this definition ...
- * tree.c (is_typedef_decl): ... here.
- (typdef_variant_p): Move definition here from cp/tree.c.
- * c-common.h (is_typedef_decl): Move this declaration ...
- * tree.h (is_typedef_decl): ... here.
- (typedef_variant_p): Move declaration here from cp/cp-tree.h
- * dwarf2out.c (is_naming_typedef_decl): New function.
- (gen_tagged_type_die): Split out of ...
- (gen_type_die_with_usage): ... this function. When an anonymous
- tagged type is named by a typedef, make sure a DW_TAG_typedef DIE
- is emitted for the typedef.
- (gen_typedef_die): Emit DW_TAG_typedef also for typedefs naming
- anonymous tagged types.
-
-2010-05-27 Jason Merrill <jason@redhat.com>
-
- * print-tree.c (debug_vec_tree): New fn.
- (print_vec_tree): New fn.
- * tree.h: Declare them.
- * gdbinit.in (pvt): New command.
-
- * print-tree.c (print_node) [TREE_VEC]: Print elements normally.
-
- * gdbinit.in (pdd): New command.
-
-2010-05-27 Jan Hubicka <jh@suse.cz>
-
- * ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
- (update_caller_keys): Return early if there are no callers;
- only update fibheap when decresing the key.
- (update_callee_keys): Avoid recursion.
- (decide_inlining_of_small_functions): When badness does not match;
- re-insert into fibheap.
-
-2010-05-27 Steven Bosscher <steven@gcc.gnu.org>
-
- * Makefile.in (ALL_CFLAGS): Add file-specific CFLAGS.
- (ALL_HOST_FRONTEND_OBJS): New, for all front-end specific objects.
- (ALL_HOST_BACKEND_OBJS): New, for all backend and target objects.
- (ALL_HOST_OBJS): Now a union of the above two.
- <section "Language makefile fragments">: Add -DIN_GCC_FRONTEND for
- all files in ALL_HOST_FRONTEND_OBJS.
- * system.h: Poison GCC_RTL_H if IN_GCC_FRONTEND is defined.
-
- * c-common.c: Pretend to be a backend file by undefining
- IN_GCC_FRONTEND (still need rtl.h here).
-
-2010-05-27 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (struct cgraph_node): Mark former_clone_of by GTY ((skip)).
- * cgraphunit.c (clone_of_p): Compile only when checking is enabled.
-
-2010-05-27 Jan Hubicka <jh@suse.cz>
-
- * sched-ebb.c: Rename struct deps to struct deps_desc.
- * ddg.c: Likewise.
- * sel-sched-ir.c: Likewise.
- * sched-deps.c: Likewise.
- * sched-int.h: Likewise.
- * sched-rgn.c: Likewise.
-
-2010-05-27 Jon Beniston <jon@beniston.com>
-
- PR 43726
- * config/lm32/lm32.h: Remove definition of
- GO_IF_MODE_DEPENDENT_ADDRESS. Update copyright year.
-
-2010-05-27 Eric Botcazou <ebotcazou@adacore.com>
-
- PR lto/44230
- * dwarf2out.c (dwarf2out_begin_prologue): Fix nits in sorry message.
-
-2010-05-27 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44284
- * tree-vect-stmts.c (vectorizable_assignment): Handle
- sign-changing conversions as simple copy.
-
-2010-05-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * gthr-posix.h (pthread_cancel): Don't declare if compiling against
- Bionic C library.
- (__gthread_active_p): Check for pthread_create if compiling against
- Bionic C library.
-
-2010-05-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- Support compilation for Android platform. Reimplement -mandroid.
-
- * config.gcc (*linux*): Include linux-android.h and linux-android.opt.
- (*android*): Set ANDROID_DEFAULT.
- (arm*-*-linux*): Include linux-android.h.
- (arm*-*-eabi*): Don't include previous -mandroid implementation.
- * config/arm/eabi.h: Remove, move Android-specific parts ...
- * config/linux-android.h: ... here. New file.
- * config/arm/eabi.opt: Rename to ...
- * config/linux-android.opt: ... this.
- (mandroid): Allow -mno-android option. Initialize based on
- ANDROID_DEFAULT.
- * config/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, CC1_SPEC, LIB_SPEC):
- Move logic to corresponding LINUX_TARGET_* macros.
- (TARGET_OS_CPP_BUILTINS): Define __ANDROID__, when appropriate.
- * config/linux-eabi.h (LINK_SPEC, CC1_SPEC, CC1PLUS_SPEC, LIB_SPEC,)
- (STARTFILE_SPEC, ENDFILE_SPEC): Define to choose between Linux and
- Android definitions.
- (LINUX_TARGET_OS_CPP_BUILTINS): Define __ANDROID__ if TARGET_ANDROID.
- * doc/invoke.texi (-mandroid, -tno-android-cc, -tno-android-ld):
- Document.
-
-2010-05-27 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- Add support for Bionic C library
-
- * config.gcc (LIBC_GLIBC, LIBC_BIONIC, LIBC_UCLIBC): New tm_define
- macro.
- (DEFAULT_LIBC): New tm_define macro set to one of LIBC_*.
- (bfin*-uclinux, moxie-*-uclinux*, m68k-*-uclinux*): Update.
-
- * config/linux.h (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC): Define.
- (LINUX_TARGET_OS_CPP_BUILTINS): Define __gnu_linux__ only for GLIBC.
- (CHOOSE_DYNAMIC_LINKER1, CHOOSE_DYNAMIC_LINKER): Make it easier
- to support multiple C libraries. Handle Bionic.
- (BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,)
- (BIONIC_DYNAMIC_LINKER64): Define.
- (LINUX_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64):
- Update.
- (TARGET_HAS_SINCOS): Enable for Bionic.
-
- * config/linux.opt: Rewrite to handle more than 2 C libraries. Make
- the last option specified on command line take effect.
- (linux_uclibc): Rename to linux_libc, initialize using DEFAULT_LIBC.
- (mbionic): New.
- (mglibc, muclibc): Update.
-
- * config/alpha/linux-elf.h, config/rs6000/linux64.h,
- * config/rs6000/sysv4.h (CHOOSE_DYNAMIC_LINKER): Update to use
- DEFAULT_LIBC.
-
- * doc/invoke.texi (-mglibc, -muclibc): Update.
- (-mbionic): Document.
-
-2010-05-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * c-common.h (c_register_addr_space): Add prototype.
- (ADDR_SPACE_KEYWORD): Remove.
- * c-common.c (c_register_addr_space): New function.
- (c_addr_space_name): Reimplement.
- (c_common_reswords): Do not include TARGET_ADDR_SPACE_KEYWORDS.
-
- * config/spu/spu.h (TARGET_ADDR_SPACE_KEYWORDS): Remove.
- (REGISTER_TARGET_PRAGMAS): Call c_register_addr_space.
-
- * doc/tm.texi (Named Address Spaces): Mention c_register_addr_space.
- Remove TARGET_ADDR_SPACE_KEYWORDS.
-
-2010-05-27 Joseph Myers <joseph@codesourcery.com>
-
- * input.c: New file.
- * input.h (main_input_filename): Move declaration to toplev.h.
- * toplev.c (input_location, line_table): Move to input.c
- * toplev.h (main_input_filename): Move declaration from input.h.
- * tree.c (expand_location): Move to input.c.
- * Makefile.in (OBJS-common): Add input.o.
- (input.o): Add dependencies.
-
-2010-05-27 Richard Guenther <rguenther@suse.de>
-
- * lto-wrapper.c (maybe_unlink_file): Ignore unlink failure
- for non-existant files.
- (fork_execute): Mark args_name file as deleted.
-
-2010-05-27 Kai Tietz <kai.tietz@onevision.com>
-
- PR bootstrp/44287
- * c-lex.c (narrowest_unsigned_type): Check for NULL_TREE.
- (narrow_signed_type): Likewise.
-
-2010-05-26 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (verify_cgraph_node): Do checking that DECL match
- edge only when checking is enabled; check using former_clone_of;
- check inline clones too.
- (cgraph_materialize_clone): Record former_clone_of pointer.
- (cgraph_redirect_edge_call_stmt_to_callee): Assert that we are not
- combining redirections; dump args_to_skip bitmap
- (cgraph_materialize_all_clones): Do no redirection here.
- * ipa-inline.c (inline_transform): Do redirection here.
- * cgraph.h (struct cgraph_node): Add former_clone_of filed (enabled
- cheking only).
-
-2010-05-26 Steven Bosscher <steven@gcc.gnu.org>
-
- * config/avr/avr-c.c: Do not include regs.h.
- Include cpplib.h for cpp_define and tree.h for c-common.h.
- * config/avr/avr-devices.c (avr_mcu_types): Fix initializer.
- * config/avr/t-avr: Fix dependencies for avr-c.o.
-
-2010-05-26 Steven Bosscher <steven@gcc.gnu.org>
-
- * explow.c (set_stack_check_libfunc): Adjust to accept name as a
- string instead of SYMBOL_REF rtx.
- * rtl.h (set_stack_check_libfunc): Move prototype from here...
- * libfuncs.h: ...to here. Adjust for explow.c change.
-
-2010-05-26 Joseph Myers <joseph@codesourcery.com>
-
- * pretty-print.c: Don't include ggc.h.
- (identifier_to_locale_alloc, identifier_to_locale_free): Define.
- (identifier_to_locale): Use them for allocation.
- * pretty-print.h (identifier_to_locale_alloc,
- identifier_to_locale_free): Declare.
- * toplev.c (alloc_for_identifier_to_locale): New.
- (general_init): Set identifier_to_locale_alloc and
- identifier_to_locale_free.
- * Makefile.in (pretty-print.o): Update dependencies.
-
-2010-05-26 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimple.c (gimple_types_compatible_p): Return 0 for aggregate and
- pointer types if they have different alignment or mode.
-
-2010-05-26 Anatoly Sokolov <aesok@post.ru>
-
- * config/sparc/sparc.h (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE,
- LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
- * config/sparc/sparc-protos.h (function_value): Remove declaration.
- * config/sparc/sparc.c (sparc_function_value, sparc_libcall_value,
- sparc_function_value_regno_p): New functions.
- (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
- TARGET_FUNCTION_VALUE_REGNO_P): Define.
- (function_value): Rename to...
- (sparc_function_value_1): ... this. Make static. Change 'incoming_p'
- argument to 'outgoing'.
- (function_arg_record_value, function_arg_union_value,
- function_arg_vector_value): Update comment.
-
-2010-05-26 Eric Botcazou <ebotcazou@adacore.com>
-
- * dwarf2out.c (struct dw_fde_struct): Reorder flags.
- (fde_needed_for_eh_p): New predicate.
- (output_call_frame_info): Use it throughout to decide whether FDEs
- are needed for EH purpose.
- (dwarf2out_begin_prologue): Reorder assignments.
-
-2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (if_convertible_gimple_assign_stmt_p): Do not
- special case loop->header.
- (is_predicated): New.
- (if_convertible_loop_p): Call it.
-
-2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (add_to_dst_predicate_list): Do not pass a statemet
- iterator in parameter. Do not generate code during the analysis.
- (tree_if_convert_cond_stmt): Removed.
- (tree_if_convert_stmt): Removed.
- (predicate_bbs): New.
- (if_convertible_loop_p): Call predicate_bbs.
- (tree_if_conversion): Simplify the top-level logic as predicate_bbs
- now contains all the analysis part.
-
-2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (tree_if_convert_cond_stmt): Do not remove
- statements in the analysis part.
- (tree_if_convert_stmt): Update comment.
- (remove_conditions_and_labels): New.
- (combine_blocks): Call remove_conditions_and_labels.
- (tree_if_conversion): Update comment.
-
-2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (if_convertible_bb_p): Don't handle BBs with more
- than 2 predecessors or more than 2 successors.
-
-2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (if_convertible_loop_p): Avoid if-conversion
- of loops in which the data dependence analysis fails.
-
-2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (if_convertible_loop_p): Do not compute/free
- CDI_POST_DOMINATORS.
- (tree_if_conversion): Same.
-
-2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (tree_if_conversion): Do not return a bool.
-
-2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c: Update copyright years. Fix comments.
- Fix indentation.
-
-2010-05-26 Kai Tietz <kai.tietz@onevision.com>
-
- * builtin-types.def (BT_INT128): New primitive type.
- (BT_UINT128): Likewise.
- * c-common.c (c_common_r): Add __int128 keyword.
- (c_common_type_for_size): Handle __int128.
- (c_common_type_for_mode): Likewise.
- (c_common_signed_or_unsigned_type): Likewise.
- (c_common_nodes_and_builtins): Add builtin type
- if target supports 128-bit integer scalar.
- * c-common.h (enum rid): Add RID_INT128.
- * c-cppbuiltin.c (c_cpp_builtins): Define __SIZEOF_INT128__
- if target supports 128-bit integer scalar.
- * c-decl.c (declspecs_add_type): Handle new keyword __int128.
- (finish_declspecs): Likewise.
- * c-parser.c (c_token_starts_typename): Handle RID_INT128.
- (c_token_starts_declspecs): Likewise.
- (c_parser_declspecs): Likewise.
- (c_parser_attributes): Likewise.
- (c_parser_objc_selector): Likewise.
- * c-pretty-print.c (pp_c_integer_constant): Handle __int128.
- * c-tree.h (enum c_typespec_keyword): Add cts_int128.
- * gimple.c (gimple_signed_or_unsigned_type): Handle int128 types.
- * tree.c (make_or_reuse_type): Likewise.
- (make_unsigned_type): Likewise.
- (build_common_tree_nodes_2): Likewise.
- * tree.h (enum integer_type_kind): Add itk_int128 and
- itk_unsigned_int128.
- (int128_integer_type_node): New define.
- (int128_unsigned_type_node): New define.
- * doc/extend.texi: Add documentation about __int128 type.
-
-2010-05-26 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-sccvn.c (copy_nary): Adjust.
- (copy_phis): Rename to ...
- (copy_phi): ... this. Adjust.
- (copy_references): Rename to ...
- (copy_reference): ... this. Adjust.
- (process_scc): Use HTAB_FOR_EACH_ELEMENT to insert the
- result into the valid table.
-
-2010-05-26 Steven Bosscher <steven@gcc.gnu.org>
-
- * config/spu/spu-c.c: Do not include function.h, rtl.h, expr.h,
- insn-config.h, insn-codes.h, recog.h, and optabs.h.
-
-2010-05-26 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * ggc.h (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic): Remove.
-
-2010-05-26 Richard Guenther <rguenther@suse.de>
-
- * opts.c (common_handle_option): Handle OPT_Ofast.
-
-2010-05-26 Joseph Myers <joseph@codesourcery.com>
-
- * diagnostic.c: Don't include opts.h.
- (permissive_error_option): Define.
- (diagnostic_initialize): Take n_opts parameter. Allocate memory
- for classify_diagnostic. Don't use memset for
- classify_diagnostic. Initialize new and recently added fields.
- (diagnostic_classify_diagnostic): Use context->n_opts instead of
- N_OPTS.
- (diagnostic_report_diagnostic): Pass context parameter to
- diagnostic_report_warnings_p. Use option_enabled and option_name
- hooks from context.
- (emit_diagnostic): Use permissive_error_option.
- (permerror): Likewise.
- * diagnostic.h: Don't include options.h.
- (struct diagnostic_context): Add n_opts, opt_permissive,
- inhibit_warnings, warn_system_headers, option_enabled and
- option_name fields. Change classify_diagnostic to a pointer.
- * opts-diagnostic.h: New file.
- * opts.c: Include opts-diagnostic.h.
- (common_handle_option): Set global_dc fields for -Wfatal-errors,
- -Wsystem-headers, -fshow-column, -pedantic-errors and -w.
- (option_name): New function.
- * c-opts.c (c_common_init_options): Set global_dc->opt_permissive.
- (c_common_handle_option): Set global_dc->permissive for
- -fpermissive.
- * c-common.c (c_cpp_error): Save and restore
- global_dc->warn_system_headers, not variable warn_system_headers.
- * toplev.c: Include opts-diagnostic.h.
- (general_init): Update call to diagnostic_initialize. Set
- global_dc->show_column, global_dc->option_enabled and
- global_dc->option_name.
- (process_options): Don't set global_dc fields here.
- * Makefile.in (DIAGNOSTIC_H): Remove options.h.
- (diagnostic.o, opts.o, toplev.o): Update dependencies.
-
-2010-04-30 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.md (movsi): Split a movsi from a
- const after reload.
-
-2010-05-26 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * ggc-zone.c: Update copyright year.
- (poison_region): Mark memory for Valgrind as undefined before
- memset () call and inaccessible afterwards.
- (ggc_pch_total_size): Change type of i to int.
-
-2010-05-26 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * ggc-common.c (ggc_free_overhead): Allow empty slot.
-
-2010-05-26 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * ggc-common.c: Update copyright year.
- (ggc_rlimit_bound): Remove prototype. Compile only if
- !ENABLE_GC_CHECKING && !ENABLE_GC_ALWAYS_COLLECT.
- (ggc_min_heapsize_heuristic): Compile only if !ENABLE_GC_CHECKING
- && !ENABLE_GC_ALWAYS_COLLECT. Make static.
- (ggc_min_heapsize_heuristic): Likewise.
-
-2010-05-26 Richard Guenther <rguenther@suse.de>
-
- PR rtl-optimization/44164
- * tree-ssa-alias.c (aliasing_component_refs_p): Fix the
- no-common access-path disambiguation.
- (indirect_ref_may_alias_decl_p): Adjust.
- (indirect_refs_may_alias_p): Likewise.
- (refs_may_alias_p_1): Likewise.
-
-2010-05-26 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-typeck.c: Do not include expr.h.
-
-2010-05-26 Steven Bosscher <steven@gcc.gnu.org>
-
- * rtl.h (decl_default_tls_model): Move prototype from here...
- * output.h: ...to here.
- * c-decl.c: Do not include rtl.h.
- * c-pragma.c: Likewise.
- * c-parser.c: Likewise.
- * c-gimplify.c: Likewise. And also not hard-reg-set.
- * c-common.c: Do not include rtl.h. Include tm_p.h and add a
- FIXME note for it. Add a FIXME note for expr.h.
- * config/i386/i386-protos.h (ix86_enum_va_list, ix86_fn_abi_va_list,
- ix86_canonical_va_list_type): Make visible even if RTX_CODE is not
- defined.
-
-2010-05-26 Jakub Jelinek <jakub@redhat.com>
-
- PR target/44199
- * config/rs6000/rs6000.c (rs6000_emit_epilogue): If cfun->calls_alloca
- or total_size is larger than red zone size for non-V4 ABI, emit a
- stack_tie resp. frame_tie insn before stack pointer restore.
- * config/rs6000/rs6000.md (frame_tie): New insn.
-
-2010-05-25 Eric Botcazou <ebotcazou@adacore.com>
-
- * function.h (struct function): Add can_throw_non_call_exceptions bit.
- * lto-streamer-in.c (input_function): Stream it in.
- * lto-streamer-out.c (output_function): Stream it out.
- * function.c (allocate_struct_function): Set it.
- (expand_function_end): Substitute cfun->can_throw_non_call_exceptions
- for flag_non_call_exceptions.
- * cfgbuild.c (control_flow_insn_p): Likewise.
- (make_edges): Likewise.
- * cfgexpand.c (expand_stack_alignment): Likewise.
- * combine.c (distribute_notes): Likewise.
- * cse.c (cse_extended_basic_block): Likewise.
- * except.c (insn_could_throw_p): Likewise.
- * gcse.c (simple_mem): Likewise.
- * ipa-pure-const.c (check_call): Likewise.
- (check_stmt ): Likewise.
- * lower-subreg.c (lower-subreg.c): Likewise.
- * optabs.c (emit_libcall_block): Likewise.
- (prepare_cmp_insn): Likewise.
- * postreload-gcse.c (eliminate_partially_redundant_loads): Likewise.
- * postreload.c (rest_of_handle_postreload): Likewise.
- * reload1.c (reload_as_needed): Likewise.
- (emit_input_reload_insns): Likewise.
- (emit_output_reload_insns): Likewise.
- (fixup_abnormal_edges): Likewise.
- * sel-sched-ir.c (init_global_and_expr_for_insn): Likewise.
- * store-motion.c (find_moveable_store): Likewise.
- * tree-eh.c (stmt_could_throw_p): Likewise.
- (tree_could_throw_p): Likewise.
- * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
- * config/arm/arm.c (arm_expand_prologue): Likewise.
- (thumb1_expand_prologue): Likewise.
- * config/rx/rx.md (cbranchsf4): Likewise.
- (cmpsf): Likewise.
- * config/s390/s390.c (s390_emit_prologue): Likewise.
- * tree-inline.c (initialize_cfun): Copy can_throw_non_call_exceptions.
- (inline_forbidden_into_p): New predicate.
- (expand_call_inline): Use it to forbid inlining.
- (tree_can_inline_p): Likewise.
-
-2010-05-25 Steven Bosscher <steven@gcc.gnu.org>
-
- * config/i386/i386-c.c: Do not include rtl.h.
- * config/i386/t-i386: Update dependencies.
-
-2010-05-25 Steven Bosscher <steven@gcc.gnu.org>
-
- * attribs.c: Do not include rtl.h.
- * Makefile.in: Update dependencies.
-
-2010-05-25 Anatoly Sokolov <aesok@post.ru>
-
- * double-int.h (double_int_and): New.
- * combine.c (try_combine): Clean up, use double_int_* and
- immed_double_int_const functions.
-
-2010-05-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac (gcc_cv_as_ld_jalr_reloc): Redirect grep stdout,
- stderr to /dev/null instead of grep -q.
- * configure: Regenerate.
-
-2010-05-25 Steven Bosscher <steven@gcc.gnu.org>
-
- * Makefile.in (EXCEPT_H): Fix typo.
-
-2010-05-25 Vladimir Makarov <vmakarov@redhat.com>
-
- * ira-build.c (update_conflict_hard_reg_costs): New.
- (ira_build): Call update_conflict_hard_reg_costs.
-
-2010-05-25 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/41371
- * var-tracking.c (find_loc_in_1pdv): Guard asserts with
- ENABLE_CHECKING.
- (intersect_loc_chains): Walk the s2var's loc_chain together
- with s1node chain as long as the locations are equal, don't
- call find_loc_in_1pdv in that case.
-
- PR debug/42801
- * tree-inline.c (remap_decls): Remap DECL_VALUE_EXPR here...
- (copy_bind_expr): ... instead of here.
- (copy_tree_body_r): If id->remapping_type_depth clear TREE_BLOCK
- if the block hasn't been remapped.
- * dwarf2out.c (gen_formal_parameter_die, gen_variable_die): When
- emitting concrete instance of abstract VLA, add DW_AT_type attribute.
-
-2010-05-25 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44069
- * gimple-fold.c (maybe_fold_stmt_addition): Avoid generating
- out-of-bounds array accesses.
-
-2010-05-25 Richard Guenther <rguenther@suse.de>
-
- * lto-wrapper.c (nr, input_names, output_names, makefile): Globalize.
- (lto_wrapper_exit): Unlink all LTRANS temporary files on error.
- (run_gcc): Re-organize to make cleanup easier.
-
-2010-05-25 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.c (optimization_options): Fix and move the
- flag_prefetch_loop_arrays override ...
- (override_options): ... here.
-
-2010-05-25 Joseph Myers <joseph@codesourcery.com>
-
- * diagnostic.c: Don't include plugin.h.
- (diagnostic_report_diagnostic): Don't handle plugins specially
- here. Pass context to internal_error callback.
- * diagnostic.h (struct diagnostic_context): Add context parameter
- to internal_error callback.
- * plugin.c (warn_if_plugins, plugins_internal_error_function): New.
- * plugin.h (struct diagnostic_context): Declare.
- (warn_if_plugins, plugins_internal_error_function): Declare.
- * toplev.c (general_init): Set global_dc->internal_error.
- * Makefile.in (diagnostic.o): Update dependencies.
-
-2010-05-25 Iain Sandoe <iains@gcc.gnu.org>
-
- * config/rs6000/darwin64.h: Update DARWIN_ARCH_SPEC.
- * config/rs6000/t-darwin64: New.
- * config.gcc (powerpc64-*-darwin*): Use darwin.opts, t-darwin64,
- build crt2.
-
-2010-05-25 Christian Borntraeger <borntraeger@de.ibm.com>
-
- PR 44203
- * tree-ssa-loop-prefetch.c: Fix logic for step calculation to
- match the original (and intended) behaviour before r159557. This
- changeset changed a=a+b*c to a=(a+b)*b which was obviously wrong
- in two ways.
-
-2010-05-25 Richard Guenther <rguenther@suse.de>
-
- * doc/invoke.texi: Document -Ofast.
- * target.h (struct gcc_target): Add handle_ofast.
- * target-def.h (TARGET_HANDLE_OFAST): Add.
- (TARGET_INITIALIZER): Adjust.
- * opts.c (decode_options): Handle -Ofast. Enable -ffast-math with it.
- * common.opt (Ofast): Add.
-
-2010-05-25 Paolo Bonzini <bonzini@gnu.org>
-
- * doc/tm.texi (STORE_FLAG_VALUE): Do not refer to sCC patterns.
- * doc/md.texi (cstoreXX4): Update for cond-optab changes.
-
-2010-05-25 Paolo Bonzini <bonzini@gnu.org>
-
- PR target/43610
- * optabs.c (prepare_float_lib_cmp): Allow reversing the comparison
- even if !FLOAT_LIB_COMPARE_RETURNS_BOOL. Always compute true_rtx and
- false_rtx. Use false_rtx to compute the correct *ptest for reversed
- comparisons for which !FLOAT_LIB_COMPARE_RETURNS_BOOL.
-
-2010-05-25 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (loc_descr_plus_const): When offset is negative, use
- DW_OP_minus with negated offset instead of DW_OP_plus.
- (loc_list_from_tree): Don't test whether second operand is INTEGER_CST.
-
-2010-05-25 Wei Guozhi <carrot@google.com>
-
- * config/arm/thumb2.md (thumb2_tlobits_cbranch): Add constraint to
- tst instruction and a new alternative.
- * config/arm/constraints.md (Pu): New constraint.
-
-2010-05-24 Sebastian Pop <sebastian.pop@amd.com>
-
- * function.c (assign_stack_local_1): Initialize variable
- to avoid warning when bootstrapping at -O3.
-
-2010-05-24 Steven Bosscher <steven@gcc.gnu.org>
-
- * configure.ac (all_lang_makefiles): Remove everything related to it.
- * configure: Regenerate.
- * Makefile.in: Fix reference to ada Make-lang.in.
- Remove support for LANG_MAKEFILES.
-
-2010-05-24 Daniel Jacobowitz <dan@codesourcery.com>
- Sandra Loosemore <sandra@codesourcery.com>
-
- * config/arm/neon-testgen.ml: Use dg-add-options arm_neon.
- * doc/sourcebuild.texi (Effective-Target Keywords): Update arm_neon_ok
- description. Add arm_neon_fp16_ok.
- (Add Options): Add arm_neon and arm_neon_fp16.
-
-2010-05-24 Joseph Myers <joseph@codesourcery.com>
-
- * diagnostic.c: Don't include flags.h.
- (pedantic_warning_kind, permissive_error_kind): Take diagnostic
- context parameters. Check flags in the context passed as a parameter.
- (diagnostic_build_prefix): Add context parameter. Check
- show_column flag in context.
- (diagnostic_action_after_output): Check fatal_errors flag in context.
- (diagnostic_report_current_module): Check show_column flag in context.
- (default_diagnostic_starter): Update call to
- diagnostic_build_prefix.
- (diagnostic_report_diagnostic): Pass context to pedantic_warning_kind.
- (emit_diagnostic): Pass context to permissive_error_kind.
- (permerror): Pass context to permissive_error_kind.
- * diagnostic.h (struct diagnostic_context): Add show_column,
- pedantic_errors, permissive and fatal_errors fields.
- (diagnostic_build_prefix): Update prototype.
- * langhooks.c
- * toplev.c (process_options): Set flags in global_dc from
- flag_show_column, flag_pedantic_errors, flag_permissive,
- flag_fatal_errors.
- * tree-diagnostic.c (default_tree_diagnostic_starter): Update call
- to diagnostic_build_prefix.
- * Makefile.in (diagnostic.o): Update dependencies.
-
-2010-05-24 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/ia32intrin.h (__crc32q): Define only if
- __SSE4_2__ is defined.
-
-2010-05-24 Iain Sandoe <iains@gcc.gnu.org>
-
- PR target/44132
- PR middle-end/43602
- * varasm.c (get_emutls_init_templ_addr): Copy DECL_PRESERVE_P,
- DECL_VISIBILITY_SPECIFIED.
- (emutls_decl): Set DECL_PRESERVE_P and copy
- DECL_VISIBILITY_SPECIFIED, DECL_RESTRICTED_P.
- (emutls_finalize_control_var): New callback.
- (emutls_finish): Finalize emutls control variables.
- * toplev.c (compile_file): Move the call to emutls_finish ()
- before varpool_assemble_pending_decls ().
-
-2010-05-24 Daniel Gutson <dgutson@codesourcery.com>
-
- * config/arm/lib1funcs.asm (__ARM_ARCH__): __ARM_ARCH_7EM__
- added to the preprocessor condition.
-
-2010-05-24 Paul Brook <paul@codesourcery.com>
-
- * gengtype-lex.l: Add HARD_REG_SET.
- * expr.c (expand_expr_real_1): Record writes to hard registers.
- * function.c (rtl_data): Add asm_clobbers.
- * ira.c (compute_regs_asm_clobbered): Use crtl->asm_clobbers.
- (ira_setup_eliminable_regset): Remove regs_asm_clobbered.
- Use crtl->asm_clobbers.
-
-2010-05-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * doc/makefile.texi (Makefile): Mention stages 'profile'
- and 'feedback' for profiledbootstrap.
-
-2010-05-23 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44245
- * config/i386/i386.c (def_builtin): Properly check
- OPTION_MASK_ISA_64BIT.
-
-2010-05-23 Joseph Myers <joseph@codesourcery.com>
-
- * c-decl.c (diagnose_mismatched_decls): Give error for duplicate
- typedefs with different but compatible types. Allow duplicate
- typedefs with the same type except for pedantic non-C1X, but give
- warning for variably modified types.
- * c-typeck.c (tagged_types_tu_compatible_p,
- function_types_compatible_p, type_lists_compatible_p,
- comptypes_internal): Add parameter different_types_p; set
- *different_types_p for different but compatible types. All
- callers changed.
- (comptypes_check_different_types): New.
- * c-tree.h (comptypes_check_different_types): Declare.
-
-2010-05-23 Steven Bosscher <steven@gcc.gnu.org>
-
- * regs.h: Do not include obstack.h, basic-block.h. Include machmode.h.
- * jump.c: Include basic-block.h.
- * profile.c: Likewise.
- * tree-profile.c: Likewise.
- * coverage.c: Likewise.
- * basic-block.h (optimize_function_for_size_p): Move to function.h.
- (optimize_function_for_speed_p): Likewise.
- * function.h (optimize_function_for_size_p,
- optimize_function_for_speed_p): Moved here from basic-block.h.
- * Makefile.in: Update dependencies.
-
-2010-05-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * lto-wrapper.c (run_gcc): Unset MAKEFLAGS and MFLAGS
- before calling make; allow override through $MAKE.
- * doc/invoke.texi (Optimize Options): Document override.
-
-2010-05-23 Anatoly Sokolov <aesok@post.ru>
-
- * config/rs6000/rs6000.c (rs6000_mode_dependent_address_p): New.
- (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
- (rs6000_mode_dependent_address_ptr): Make static.
- * config/rs6000/rs6000.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
- * config/rs6000/rs6000-protos.h (rs6000_mode_dependent_address_ptr):
- Remove.
-
-2010-05-23 Maarten Lankhorst <mlankhorst@codeweavers.com>
-
- PR target/43869
- * config/i386/i386.c: Make sure that the correct regparm is passed.
-
-2010-05-23 Steven Bosscher <steven@gcc.gnu.org>
-
- * sbitmap.h (sbitmap_ptr, const_sbitmap_ptr): Move from here...
- * sbitmap.c: ...to here to internalize sbitmap element access.
- Do not include tm.h, rtl.h, flags.h, hard-reg-set.h, and obstack.h.
- Explain why basic-block.h is included.
- * function.h: Include tm.h for CUMULATIVE_ARGS.
- * Makefile.in: Update dependencies.
-
-2010-05-22 Steven Bosscher <steven@gcc.gnu.org>
-
- * coretypes.h (struct simple_bitmap_def, sbitmap, const_sbitmap):
- New core types.
- * sbitmap.h (struct sbitmap_def): Do not typedef here.
- * sbitmap.c: Include sbitmap.h.
- * basic-block.h: Do not include bitmap.h, sbitmap.h, partition.h,
- hard-reg-set.h. Split everything related to regsets out from here...
- * regset.h: ...to here. New file.
- * df.h: Include regset.h and sbitmap.h.
- * tree-flow.h: Likewise.
- * cfgloop.h: Likewise.
- * except.h: Do not include sbitmap.h. Include hashtab.h.
- * cgraph.h: Include vec.h and function.h.
- * reload.h (struct insn_chain): Change types of live_throughout
- and dead_or_set from regset_head to bitmap_head.
- (compute_use_by_pseudos): Be defined also if regset.h is not included.
- * ira-int.h (struct ira_spilled_reg_stack_slot): Change type of
- spilled_regs from regset_head to bitmap_head to avoid dependency
- in regset.h.
- * sel-sched-ir.h: Include regset.h.
- * reload.c: Include df.h before reload.h.
- * caller-save.c: Likewise.
- * reload1.c: Likewise.
- * ira.c: Likewise.
- (mark_elimination): Update type of r to bitmap, consistent with
- DF_LR_IN.
- * dominance.c: Include bitmap.h.
- * modulo-sched.c: Include df.h.
- * cfganal.c: Include bitmap.h and sbitmap.h.
- * cfgbuild.c: Include sbitmap.h.
- * lcm.c: Include sbitmap.h.
- * gcse.c (alloc_gcse_mem): Allocate regset with ALLOC_REG_SET.
- * domwalk.c: Include sbitmap.h, exclude ggc.h.
- * cfgexpand.c: Inlcude bitmap.h and sbitmap.h.
- * cselib.c: Include bitmap.h.
- * tree-optimize.c: Include regset.h.
- * stmt.c: Include bitmap.h.
- * Makefile.in: Update dependencies.
-
-2010-05-22 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (struct varpool_node): Add same_comdat_group.
- * lto-cgrpah.c (lto_output_varpool_node): Output same_comdat_group
- pointer.
- (output_varpool): Update call of lto_output_varpool_node.
- (input_varpool): Read same_comdat_group pointer.
- (input_varpool_1): Fixup same_comdat_group pointer.
- * ipa.c (cgraph_remove_unreachable_nodes): WHen one of same comdat
- group is needed, all are.
- * varpool.c (varpool_remove_node): Remove node from same comdat group
- linklist too.
- (varpool_analyze_pending_decls): Walk same comdat groups.
-
-2010-05-22 Steven Bosscher <steven@gcc.gnu.org>
-
- * rtl.h (union rtunion_def): Remove rt_bit member.
- (XBITMAP, X0BITMAP, XCBITMAP): Remove.
- * print-rtl (print_rtx): Do not print the member.
- * gengtype.c (adjust_field_rtx_def): Do not handle it.
- * gengenrtl.c (type_from_format): Likewise.
- (accessor_from_format): Likewise.
-
-2010-05-22 Joseph Myers <joseph@codesourcery.com>
-
- * dbgcnt.c: Include toplev.h instead of errors.h.
- * ira-emit.c: Don't include errors.h.
- * ira.c: Include toplev.h instead of errors.h.
- * lto-compress.c: Include toplev.h instead of errors.h.
- * Makefile.in (lto-compress.o, lto-streamer-out.o, ira-emit.o,
- ira.o, dbgcnt.o): Update dependencies.
-
-2010-05-22 Richard Guenther <rguenther@suse.de>
-
- * gimple.c (gimple_types_compatible_p): Check type qualifications
- before merging pointer to complete and pointer to incomplete type.
- * lto-symtab.c (lto_symtab_resolve_symbols): For commons make sure
- we use our own resolution algorithm. The gold linker plugin
- doesn't do the job we want it to do here.
-
-2010-05-22 Anatoly Sokolov <aesok@post.ru>
-
- * config/sparc/sparc.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
- * config/sparc/sparc.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
- (sparc_mode_dependent_address_p): New function.
-
-2010-05-21 Steven Bosscher <steven@gcc.gnu.org>
-
- * Makefile.in: Fix c-pch.o and ggc-common.o dependencies on timevars.
-
- * timevar.c: Do not include any core headers.
- (timevar_print): De-i18n-ize.
- (print_time): Likewise.
- * timevar.h (timevar_push, timevar_pop): Make inline functions.
-
-2010-05-21 Joseph Myers <joseph@codesourcery.com>
-
- * diagnostic.c: Don't include tm.h, tree.h, tm_p.h, langhooks.h or
- langhooks-def.h.
- (diagnostic_initialize): Initialize x_data not last_function.
- (diagnostic_report_current_function): Move to tree-diagnostic.c.
- (default_diagnostic_starter): Call
- diagnostic_report_current_module not
- diagnostic_report_current_function.
- (diagnostic_report_diagnostic): Initialize x_data not
- abstract_origin.
- (verbatim): Likewise.
- * diagnostic.h (struct diagnostic_info): Change abstract_origin to
- x_data.
- (struct diagnostic_context): Change last_function to x_data.
- (diagnostic_auxiliary_data): Replace with
- diagnostic_context_auxiliary_data and
- diagnostic_info_auxiliary_data.
- (diagnostic_last_function_changed, diagnostic_set_last_function,
- diagnostic_report_current_function): Move to tree-diagnostic.h.
- (print_declaration, dump_generic_node, print_generic_stmt,
- print_generic_stmt_indented, print_generic_expr,
- print_generic_decl, debug_c_tree, dump_omp_clauses,
- print_call_name, debug_generic_expr, debug_generic_stmt,
- debug_tree_chain, default_tree_printer): Move to
- tree-pretty-print.h.
- (debug_gimple_stmt, debug_gimple_seq, print_gimple_seq,
- print_gimple_stmt, print_gimple_expr, dump_gimple_stmt): Move to
- gimple-pretty-print.h.
- * pretty-print.c: Don't include tree.h
- (pp_base_format): Don't handle %K here.
- (pp_base_tree_identifier): Move to tree-pretty-print.c.
- * pretty-print.h (text_info): Change abstract_origin to x_data.
- (pp_tree_identifier, pp_unsupported_tree,
- pp_base_tree_identifier): Move to tree-pretty-print.h.
- * gimple-pretty-print.h, tree-diagnostic.c, tree-diagnostic.h,
- tree-pretty-print.h: New files.
- * tree-pretty-print.c: Include tree-pretty-print.h.
- (percent_K_format): New. Moved from pretty-print.c.
- (pp_base_tree_identifier): Move from pretty-print.c.
- * c-objc-common.c: Include tree-pretty-print.h.
- (c_tree_printer): Handle %K here.
- * langhooks.c: Include tree-diagnostic.h.
- (lhd_print_error_function): Use diagnostic_abstract_origin macro.
- * toplev.c: Include tree-diagnostic.h and tree-pretty-print.h.
- (default_tree_printer): Handle %K using percent_K_format.
- (general_init): Use default_tree_diagnostic_starter.
- * tree.c: Include tree-diagnostic.h and tree-pretty-print.h.
- (free_lang_data): Use default_tree_diagnostic_starter.
- * c-pretty-print.c: Include tree-pretty-print.h.
- * cfgexpand.c: Include tree-pretty-print.h and gimple-pretty-print.h.
- * cgraphunit.c: Include tree-pretty-print.h and gimple-pretty-print.h.
- * dwarf2out.c: Include tree-pretty-print.h.
- * except.c: Include tree-pretty-print.h.
- * gimple-pretty-print.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * gimplify.c: Include tree-pretty-print.h.
- * graphite-poly.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * ipa-cp.c: Include tree-pretty-print.h.
- * ipa-inline.c: Include gimple-pretty-print.h.
- * ipa-prop.c: Include tree-pretty-print.h and gimple-pretty-print.h.
- * ipa-pure-const.c: Include gimple-pretty-print.h.
- * ipa-struct-reorg.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * ipa-type-escape.c: Include tree-pretty-print.h.
- * print-rtl.c: Include tree-pretty-print.h.
- * print-tree.c: Include gimple-pretty-print.h.
- * sese.c: Include tree-pretty-print.h.
- * tree-affine.c: Include tree-pretty-print.h.
- * tree-browser.c: Include tree-pretty-print.h.
- * tree-call-cdce.c: Include gimple-pretty-print.h.
- * tree-cfg.c: Include tree-pretty-print.h and gimple-pretty-print.h.
- * tree-chrec.c: Include tree-pretty-print.h.
- * tree-data-ref.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-dfa.c: Include tree-pretty-print.h.
- * tree-if-conv.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-inline.c: Include tree-pretty-print.h.
- * tree-into-ssa.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-nrv.c: Include tree-pretty-print.h.
- * tree-object-size.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-outof-ssa.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-parloops.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-predcom.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-scalar-evolution.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-sra.c: Include tree-pretty-print.h.
- * tree-ssa-address.c: Include tree-pretty-print.h.
- * tree-ssa-alias.c: Include tree-pretty-print.h.
- * tree-ssa-ccp.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-coalesce.c: Include tree-pretty-print.h.
- * tree-ssa-copy.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-copyrename.c: Include tree-pretty-print.h.
- * tree-ssa-dce.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-dom.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-dse.c: Include gimple-pretty-print.h.
- * tree-ssa-forwprop.c: Include tree-pretty-print.h.
- * tree-ssa-ifcombine.c: Include tree-pretty-print.h.
- * tree-ssa-live.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-loop-im.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-loop-ivcanon.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-loop-ivopts.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-loop-niter.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-loop-prefetch.c: Include tree-pretty-print.h.
- * tree-ssa-math-opts.c: Include gimple-pretty-print.h.
- * tree-ssa-operands.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-phiprop.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-pre.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-propagate.c: Include gimple-pretty-print.h.
- * tree-ssa-reassoc.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-sccvn.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-sink.c: Include gimple-pretty-print.h.
- * tree-ssa-ter.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-ssa-uninit.c: Include gimple-pretty-print.h.
- * tree-ssa.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-stdarg.c: Include gimple-pretty-print.h.
- * tree-switch-conversion.c: Include gimple-pretty-print.h.
- * tree-tailcall.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-vect-data-refs.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-vect-loop-manip.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-vect-loop.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-vect-patterns.c: Include gimple-pretty-print.h.
- * tree-vect-slp.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-vect-stmts.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * tree-vectorizer.c: Include tree-pretty-print.h.
- * tree-vrp.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * value-prof.c: Include tree-pretty-print.h and
- gimple-pretty-print.h.
- * var-tracking.c: Include tree-pretty-print.h.
- * Makefile.in (OBJS-common): Add tree-diagnostic.o.
- (tree-diagnostic.o): New dependencies.
- (c-objc-common.o, c-pretty-print.o, langhooks.o, tree.o,
- tree-inline.o, print-tree.o, stor-layout.o, tree-ssa-uninit.o,
- tree-ssa.o, tree-into-ssa.o, tree-ssa-ter.o, tree-ssa-coalesce.o,
- tree-outof-ssa.o, tree-ssa-forwprop.o, tree-ssa-phiprop.o,
- tree-ssa-ifcombine.o, tree-nrv.o, tree-ssa-copy.o,
- tree-ssa-propagate.o, tree-ssa-dom.o, tree-ssa-uncprop.o,
- tree-ssa-live.o, tree-ssa-copyrename.o, tree-ssa-pre.o,
- tree-ssa-sccvn.o, tree-vrp.o, tree-cfg.o, tree-tailcall.o,
- tree-ssa-sink.o, tree-if-conv.o, tree-dfa.o, tree-ssa-operands.o,
- tree-ssa-address.o, tree-ssa-loop-niter.o,
- tree-ssa-loop-ivcanon.o, tree-ssa-loop-prefetch.o, tree-predcom.o,
- tree-ssa-loop-ivopts.o, tree-affine.o, tree-ssa-loop-im.o,
- tree-ssa-math-opts.o, tree-ssa-alias.o, tree-ssa-reassoc.o,
- gimplify.o, tree-browser.o, tree-chrec.o, tree-scalar-evolution.o,
- tree-data-ref.o, sese.o, graphite-poly.o, tree-vect-loop.o,
- tree-vect-loop-manip.o, tree-vect-patterns.o, tree-vect-slp.o,
- tree-vect-stmts.o, tree-vect-data-refs.o, tree-vectorizer.o,
- tree-parloops.o, tree-stdarg.o, tree-object-size.o,
- gimple-pretty-print.o, tree-pretty-print.o, diagnostic.o,
- toplev.o, print-rtl.o, except.o, dwarf2out.o, cgraphunit.o,
- ipa-prop.o, ipa-cp.o, ipa-inline.o, ipa-pure-const.o,
- ipa-type-escape.o, ipa-struct-reorg.o, tree-ssa-dce.o,
- tree-call-cdce.o, tree-ssa-ccp.o, tree-sra.o,
- tree-switch-conversion.o, var-tracking.o, value-prof.o,
- cfgexpand.o, pretty-print.o): Update dependencies.
-
-2010-05-22 Andreas Tobler <andreast@fgznet.ch>
-
- * tree-ssa-structalias.c: Remove tm_p.h from include.
-
-2010-05-21 Jeff Law <law@redhat.com>
-
- * ira-costs.c (ira_tune_allocno_costs_and_cover_classes): Fix typo.
-
-2010-05-21 Jason Merrill <jason@redhat.com>
-
- * tree-eh.c (cleanup_is_dead_in): New.
- (lower_try_finally): Don't generate a dead cleanup region.
- (lower_cleanup): Likewise.
-
-2010-05-21 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44223
- * haifa-sched.c (schedule_insn): When freeing INSN_REG_USE_LIST,
- unchain each use from the cyclic next_regno_use chain first.
-
-2010-05-21 Steven Bosscher <steven@gcc.gnu.org>
-
- * real: Do not include gmp.h, mpfr.h, and mpc.h.
- (REAL_VALUE_NEGATE, REAL_VALUE_ABS, real_arithmetic2): Remove.
- (real_value_negate, real_value_abs): New prototypes.
- (do_mpc_arg2, real_from_mpfr, mpfr_from_real): Move from here...
- * realmpfr.h (do_mpc_arg2, real_from_mpfr, mpfr_from_real): ...to here,
- new include file for interface between MPFR and REAL_VALUE_TYPE.
- * real.c: Include realmpfr.h.
- (real_arithmetic2): Remove legacy function.
- (real_value_negate): New.
- (real_value_abs): New.
- (mfpr_from_real, real_from_mpfr): Move from here...
- * realmpfr.c (mpfr_from_real, real_from_mpfr): ...to here, new file.
- * builtins.c: Include realmpfr.h.
- * fold-const.c: Include realmpfr.h.
- (fold_comparison): Use real_value_negate instead of REAL_VALUE_NEGATE.
- (fold_negate_const): Likewise.
- (fold_abs_const): Use real_value_abs instead of REAL_VALUE_ABS.
- * toplev.c: Include realmpfr.h.
- * simplify-rtx.c (simplify_const_unary_operation): Use real_value_abs
- and real_value_negate.
- * fixed-value.c (check_real_for_fixed_mode): Likewise.
- * config/arm/arm.c (neg_const_double_rtx_ok_for_fpa): Likewise.
- (vfp3_const_double_index): Likewise.
- (arm_print_operand): Likewise.
- * Makefile.in: Update dependencies.
-
-2010-05-21 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.c (override_options): Increase the default
- of max-completely-peel-times.
-
-2010-05-21 Julian Brown <julian@codesourcery.com>
- Mark Mitchell <mark@codesourcery.com>
-
- * config/arm/arm.c (arm_function_ok_for_sibcall): Only forbid
- sibling calls for Thumb-1.
- * config/arm/arm.h (USE_RETURN_INSN): Enable for Thumb-2.
- * config/arm/arm.md (*call_symbol, *call_value_symbol): Use for
- Thumb-2.
- (*call_insn, *call_value_insn): Don't use for Thumb-2.
- (sibcall, sibcall_value, *sibcall_insn, *sibcall_value_insn): Use
- for Thumb-2.
- (return): New expander.
- (*arm_return): New name for ARM return insn.
- * config/arm/thumb2.md (*thumb2_return): New insn pattern.
-
-2010-05-19 Joel Sherrill <joel.sherrill@oarcorp.com>
-
- * config.gcc (sparc64-*-rtems*): New target.
-
-2010-05-21 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.c (build_function_decl_skip_args): Fix grammar.
- (build_function_type_list_1): Fix typos, adjust formatting.
-
-2010-05-21 Steven Bosscher <steven@gcc.gnu.org>
-
- * tree.h: Include real.h and fixed-value.h as basic datatypes.
- * dfp.c, convert.c, reload1.c, reginfo.c, tree-flow.h,
- tree-ssa-threadedge.c, tree-ssanames.c, tree-loop-linear.c,
- tree-into-ssa.c, tree-vect-generic.c, tree-ssa-structalias.c,
- tree-ssa-loop-im.c, tree-dump.c, tree-complex.c, tree-ssa-uninit.c,
- genrecog.c, tree-ssa-threadupdate.c, tree-ssa-loop-niter.c,
- tree-pretty-print.c, tree-loop-distribution.c,
- tree-ssa-loop-unswitch.c, c-lex.c, optabs.c, postreload-gcse.c,
- tree-ssa-loop-manip.c, postreload.c, tree-ssa-loop-ch.c,
- tree-tailcall.c, tree.c, reload.c, tree-scalar-evolution.c, rtlanal.c,
- tree-phinodes.c, builtins.c, final.c, genoutput.c, fold-const.c,
- tree-ssa-dse.c, genautomata.c, tree-ssa-uncprop.c, toplev.c,
- tree-chrec.c, genemit.c, c-cppbuiltin.c, tree-ssa-sccvn.c,
- tree-ssa-ccp.c, tree-ssa-loop-ivopts.c, mode-switching.c,
- tree-call-cdce.c, cse.c, genpeep.c, tree-ssa-math-opts.c,
- tree-ssa-dom.c, tree-nrv.c, tree-ssa-propagate.c, tree-ssa-alias.c,
- tree-ssa-sink.c, jump.c, ifcvt.c, dwarf2out.c, expr.c, genattrtab.c,
- genconditions.c, tree-ssa-loop-ivcanon.c, tree-ssa-loop.c,
- tree-parloops.c, recog.c, tree-ssa-address.c, lcm.c, tree-eh.c,
- gimple-pretty-print.c, c-pretty-print.c, print-rtl.c, gcse.c,
- tree-if-conv.c, tree-data-ref.c, tree-affine.c, gimplify.c,
- tree-ssa-phiopt.c, implicit-zee.c, expmed.c, tree-dfa.c, emit-rtl.c,
- store-motion.c, cselib.c, tree-cfgcleanup.c, simplify-rtx.c,
- tree-ssa-pre.c, genpreds.c, tree-mudflap.c, print-tree.c,
- tree-ssa-copy.c, tree-ssa-forwprop.c, tree-ssa-dce.c, varasm.c,
- tree-nested.c, tree-ssa.c, tree-ssa-loop-prefetch.c, rtl.c,
- tree-inline.c, integrate.c, tree-optimize.c, tree-ssa-phiprop.c,
- fixed-value.c, combine.c, tree-profile.c, c-common.c, sched-vis.c,
- tree-cfg.c, passes.c, tree-ssa-reassoc.c, config/alpha/alpha.c,
- config/frv/frv.c, config/s390/s390.c, config/m32c/m32c.c,
- config/spu/spu.c, config/sparc/sparc.c, config/mep/mep.c,
- config/m32r/m32r.c, config/rx/rx.c, config/i386/i386.c,
- config/sh/sh.c, config/pdp11/pdp11.c, config/avr/avr.c,
- config/crx/crx.c, config/xtensa/xtensa.c, config/stormy16/stormy16.c,
- config/fr30/fr30.c, config/lm32/lm32.c, config/moxie/moxie.c,
- config/m68hc11/m68hc11.c, config/cris/cris.c, config/iq2000/iq2000.c,
- config/mn10300/mn10300.c, config/ia64/ia64.c, config/m68k/m68k.c,
- config/rs6000/rs6000.c, config/picochip/picochip.c, config/darwin.c,
- config/arc/arc.c, config/mcore/mcore.c, config/score/score3.c,
- config/score/score7.c, config/score/score.c, config/arm/arm.c,
- config/pa/pa.c, config/mips/mips.c, config/vax/vax.c,
- config/h8300/h8300.c, config/v850/v850.c, config/mmix/mmix.c,
- config/bfin/bfin.c: Clean up redundant includes.
- * Makefile.in: Update accordingly.
-
-2010-05-21 Nathan Froyd <froydnj@codesourcery.com>
-
- PR middle-end/44204
- * builtins.c (fold_call_stmt): Pass &error_mark_node if the call
- statement has no arguments.
-
-2010-05-21 Kai Tietz <kai.tietz@onevision.com>
-
- PR/44139
- * varasm.c (emutls_decl): Merge attributes to new decl.
-
-2010-05-21 Eric Botcazou <ebotcazou@adacore.com>
-
- PR middle-end/44101
- * gimplify.c (gimplify_init_constructor): Build a VIEW_CONVERT_EXPR
- around the uniquized constructor if its type requires a conversion.
-
-2010-05-21 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44205
- * tree-cfgcleanup.c (tree_forwarder_block_p): Return false if
- at -O0 goto_locus of any of the incoming edges differs from
- goto_locus of outgoing edge, or gimple_location of any of the
- labels differs.
-
-2009-09-14 Vladimir Makarov <vmakarov@redhat.com>
-
- * ira.c (ira_non_ordered_class_hard_regs): Define.
- (setup_class_hard_regs): Initialize ira_non_ordered_class_hard_regs.
- * ira-int.h (ira_non_ordered_class_hard_regs): Declare.
- * ira-costs.c (ira_tune_allocno_costs_and_cover_classes): Increase
- cost of unaligned hard regs when allocating multi-reg pseudos.
-
-2010-05-20 Richard Sandiford <rdsandiford@googlemail.com>
-
- * config.gcc (mips*-sde-elf*): Don't use sdemtk.opt.
- * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_no_float
- for TARGET_NO_FLOAT.
- * config/mips/mips.c (mips_file_start): Expand conditional expression
- into "if" statements. Use .gnu_attribute 4,0 for TARGET_NO_FLOAT.
- (mips_override_options): Move -mno-float override -msoft-float and
- -mhard-float.
- * config/mips/mips.opt (mno-float): Move from sdemtk.opt, but add
- Condition(TARGET_SUPPORTS_NO_FLOAT).
- * config/mips/sdemtk.h (TARGET_OS_CPP_BUILTINS): Don't set
- __mips_no_float here.
- (SUBTARGET_OVERRIDE_OPTIONS): Delete.
- (TARGET_SUPPORTS_NO_FLOAT): Define.
- * config/mips/sdemtk.opt: Delete.
-
-2010-05-20 Segher Boessenkool <segher@kernel.crashing.org>
-
- * ipa-prop.c (compute_complex_ancestor_jump_func): Bail out if !cond.
-
-2010-05-20 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/43733
- * configure.ac (gcc_cv_as_ix86_sahf): Switch to 64bit mode.
- * configure: Regenerate.
- * config.in: Regenerate.
- * config/i386/i386.md (x86_sahf_1): Conditionally output 0x9e
- instead of sahf only for 64bit targets.
-
-2010-05-20 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44178
- * haifa-sched.c (initiate_bb_reg_pressure_info): Do not call
- setup_ref_regs for DEBUG_INSNs.
-
-2010-05-20 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/44197
- * varpool.c (varpool_remove_node): Handle in-varpool aliases.
-
-2010-05-20 Kenneth Zadeck <zadeck@naturalbridge.com>
-
- PR bootstrap/43870
- * df-scan.c (df_ref_compare): Stabilize sort.
-
-2010-05-20 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (new_loc_descr_op_bit_piece): Add offset
- argument. Don't use DW_OP_piece if offset is non-zero,
- put offset into second DW_OP_bit_piece argument.
- (dw_sra_loc_expr): Adjust callers. For memory expressions
- compute offset.
-
-2010-05-20 Hans-Peter Nilsson <hp@axis.com>
-
- PR target/44202
- * config/cris/cris.md ("*addsi3_v32"): Correct "cc"
- settings for 16-bit-constant "addo" alternative.
-
-2010-05-19 James E. Wilson <wilson@codesourcery.com>
-
- * config/mips/mips-dsp.md (add<DSPV:mode>3,
- mips_add<DSP:dspfmt1>_s_<DSP:dspfmt2>): Add ISA_HAS_DSP condition.
-
- PR target/43764
- * mips.c (mips_call_expr_from_insn): New arg second_call. Set it.
- (mips_annotate_pic_calls): Pass new arg to mips_call_expr_from_insn.
- Use it.
-
-2010-05-19 Joseph Myers <joseph@codesourcery.com>
-
- * diagnostic.c (FLOAT, FFS): Don't undefine.
- * passes.c, pretty-print.c, rtl-error.c, toplev.c: Likewise.
- * cse.c, regmove.c: Remove comments about stdio.h and rtl.h
- include ordering.
-
-2010-05-19 Richard Sandiford <rdsandiford@googlemail.com>
-
- * combine.c (propagate_for_debug): Call make_compound_operation
- on the source value.
- (try_combine): When implementing a split chosen by find_split_point,
- either copy i2src or set it to null. Assert that i2src is not null
- before substituting into CALL_INSN_FUNCTION_USAGE.
-
-2010-05-19 Anatoly Sokolov <aesok@post.ru>
-
- * double-int.h (double_int_ior): New function.
- * tree.h (build_int_cst_wide_type): Remove.
- * tree.c (build_int_cst_wide_type): Remove.
- * fold-const.c (native_interpret_int): Use double_int_to_tree instead
- of build_int_cst_wide_type.
- * stor-layout.c (set_sizetype): (Ditto.).
- * dojump.c (do_jump): Use build_int_cstu instead of
- build_int_cst_wide_type.
-
-2010-05-19 Eric Botcazou <ebotcazou@adacore.com>
-
- * langhooks.h (struct lang_hooks): Add new field deep_unsharing.
- * langhooks-def.h (LANG_HOOKS_DEEP_UNSHARING): New macro.
- (LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_DEEP_UNSHARING.
- * gimplify.c (mostly_copy_tree_r): Copy trees under SAVE_EXPR and
- TARGET_EXPR nodes, but only once, if instructed to do so. Do not
- propagate the 'data' argument to copy_tree_r.
- (copy_if_shared_r): Remove bogus ATTRIBUTE_UNUSED marker.
- Propagate 'data' argument to walk_tree.
- (copy_if_shared): New function.
- (unmark_visited_r): Remove bogus ATTRIBUTE_UNUSED marker.
- (unmark_visited): New function.
- (unshare_body): Call copy_if_shared instead of doing it manually.
- (unvisit_body): Call unmark_visited instead of doing it manually.
-
-2010-05-19 Nathan Froyd <froydnj@codesourcery.com>
-
- * hooks.h (hook_tree_tree_tree_bool_null): Rename to...
- (hook_tree_tree_int_treep_bool_null): ...this. Update signature.
- * hooks.c: Likewise.
- * target-def.h (TARGET_FOLD_BUILTIN): Define to
- hook_tree_tree_int_treep_bool_null.
- * target.h (struct gcc_target): Update signature of fold_builtin
- field.
- * doc/tm.texi (TARGET_FOLD_BUILTIN): Update description and signature.
- * builtins.c (fold_call_expr): Pass call_expr_nargs and CALL_EXPR_ARGP
- instead of the call expression.
- (fold_builtin_call_array): Pass n and argarray directly.
- (fold_call_stmt): Pass nargs and gimple_call_arg_ptr instead of
- consing a list.
- * config/alpha/alpha.c (alpha_fold_builtin): Update signature. Lift
- MAX_ARGS check out of the loop. Delete declaration of `arity', declare
- `i' and use it in place of `arity'.
- * config/sparc/sparc.c (sparc_fold_builtin): Update signature.
- Dereference `args' directly.
- * config/xtensa/xtensa (xtensa_fold_builtin): Likewise.
-
-2010-05-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/sourcebuild.texi (Effective-Target Keywords): Document
- 3dnow, sse3, sse2.
- (Directives): Document optional dg-require-effective-target
- selector.
-
-2010-05-19 Richard Guenther <rguenther@suse.de>
-
- PR lto/44196
- * tree.c (find_decls_types_r): Walk BLOCKs and its vars.
-
-2010-05-19 Richard Guenther <rguenther@suse.de>
-
- * doc/invoke.texi (-fwhopr): Document new optional jobs argument.
- * common.opt (fwhopr=): New.
- * opts.c (common_handle_option): Handle OPT_fwhopr.
- * gcc.c (LINK_COMMAND_SPEC): Pass fwhopr*.
- * collect2.c (main): Match -fwhopr*.
- * lto-wrapper.c (run_gcc): Handle jobs argument of -fwhopr.
- Execute ltrans stage in parallel when jobs is bigger than 1.
-
-2010-05-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
- pentiumpro on Solaris 8/x86 with Sun as.
- * configure.ac (gcc_cv_as_hidden): Check for Solaris 9/x86 as
- hidden alias bug.
- (gcc_cv_as_ix86_quad): Check for .quad directive.
- * configure: Regenerate.
- * config.in: Regenerate.
- * config/i386/sol2.h (ASM_QUAD): Change guard to !HAVE_AS_IX86_QUAD.
-
-2010-05-19 Martin Jambor <mjambor@suse.cz>
-
- * ipa-prop.c (ipa_print_node_jump_functions): Print jump functions
- also for indirect edges. Actual printing moved...
- (ipa_print_node_jump_functions_for_edge): ...here.
- (ipa_compute_jump_functions): Renamed to
- ipa_compute_jump_functions_for_edge and made static.
- (ipa_compute_jump_functions): New function.
- (make_edge_direct_to_target): Check if the number of arguments on
- the newly direct edge is the same as the number of parametrs of
- the callee.
- * ipa-cp.c (ipcp_init_stage): Most functionality moved to new
- ipa_compute_jump_functions. Call ipa_analyze_params_uses.
- * ipa-inline.c (inline_indirect_intraprocedural_analysis): Call
- analysis functions unconditionally, call the new
- ipa_analyze_params_uses on the node instead of every edge.
-
-2010-05-19 Christian Borntraeger <borntraeger@de.ibm.com>
-
- * tree-ssa-loop-prefetch.c (mem_ref_group, ar_data): Change step
- to tree.
- (dump_mem_ref): Adopt debug code to handle a tree as step. This
- also checks for a constant int vs. non-constant but
- loop-invariant steps.
- (find_or_create_group): Change the sort algorithm to only consider
- steps that are constant ints.
- (idx_analyze_ref): Adopt code to handle a tree instead of a
- HOST_WIDE_INT for step.
- (gather_memory_references_ref): Handle tree instead of int and be
- prepared to see a NULL_TREE.
- (prune_ref_by_self_reuse, prune_ref_by_group_reuse): Do not prune
- prefetches if the step cannot be calculated at compile time.
- (issue_prefetch_ref): Issue prefetches for non-constant but
- loop-invariant steps.
-
-2010-05-18 Nathan Froyd <froydnj@codesourcery.com>
-
- Revert:
- 2010-05-18 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (build_call_list): Remove.
- * tree.c (build_call_list): Remove.
-
-2010-05-18 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (build_call_list): Remove.
- * tree.c (build_call_list): Remove.
-
-2010-05-18 Jan Hubicka <jh@suse.cz>
-
- * ipa-reference.c (propagate): Walk all nodes in the cleanup stage.
-
-2010-05-18 Vladimir Makarov <vmakarov@redhat.com>
-
- PR rtl-optimization/43332
- * haifa-sched.c (setup_insn_max_reg_pressure): Check barrier.
-
-2010-05-18 Anatoly Sokolov <aesok@post.ru>
-
- * tree.h (build_int_cstu): Implement as static inline.
- * tree.c (build_int_cstu): Remove function.
- (double_int_to_tree, double_int_fits_to_tree_p): Handle size types as
- sign extended.
-
-2010-05-18 Richard Guenther <rguenther@suse.de>
-
- PR lto/44143
- * lto-wrapper.c (verbose): New variable. Initialize from -v.
- (debug): Initialize from -save-temps.
- (collect_execute): Print command-line when verbose.
- (run_gcc): Always use COLLECT_GCC_OPTIONS. Use fork_execute
- for ltrans invocation. Produce -dumpbase flag again.
- (process_args): Remove.
- (main): Simplify.
- * collect2.c (maybe_run_lto_and_relink): Only pass object
- files to lto-wrapper.
- * gcc.c (LINK_COMMAND_SPEC): Likewise.
-
-2010-05-18 Jan Hubicka <jh@suse.cz>
-
- * opts.c (decode_options): Do not disable whopr at ipa_cp.
- * ipa-prop.c (ipa_detect_param_modifications): Walk PHI nodes too.
-
-2010-05-18 Steven Bosscher <steven@gcc.gnu.org>
-
- PR lto/44184
- * lto-streamer-out.c (output_gimple_stmt): Output number of labels
- in a GIMPLE_ASM.
- * lto-streamer-in.c (input_gimple_stmt): Read number of labels
- in a GIMPLE_ASM.
-
-2010-05-18 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/41371
- * var-tracking.c (find_loc_in_1pdv): Add a few checks from
- rtx_equal_p inline.
-
-2010-05-18 Steven Bosscher <steven@gcc.gnu.org>
-
- * config.gcc (powerpc-*-darwin*, powerpc64-*-darwin*): Add
- lto-macho as lto_binary_reader.
-
- * darwin.c (darwin_asm_named_section): Do not add assembler comment
- after .section directive; just print it before the directive instead.
-
-2010-05-17 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_create_virtual_clone): Only check
- versionable_function_p when not in wpa and checking is enabled.
- * cgraphunit.c (cgraph_materialize_all_clones): Stabilize after
- there are no more functions to materialize.
-
-2010-05-17 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (struct ipa_replace_map): Add parm_num parameter.
- * lto-cgraph.c (output_cgraph_opt_summary, input_cgraph_opt_summary):
- New functions.
- (output_cgraph): Call output_cgraph_opt_summary.
- (input_cgrpah): Call input_cgraph_opt_summary.
- (output_cgraph_opt_summary_p, output_node_opt_summary,
- input_node_opt_summary, input_cgraph_opt_section): New functions.
- * lto-section-in.c (lto_section_name): Add cgraphopt.
- * tree-inline.c (tree_function_versioning): Handle parm_num.
- * lto-streamer.c (lto_get_section_name): Handle cgraphopt.
- * lto-streamer.h (lto_section_type): Add LTO_section_cgraph_opt_sum.
-
-2010-05-17 Changpeng Fang <changpeng.fang@amd.com>
-
- * doc/invoke.texi: Update documentation for min-insn-to-prefetch-ratio.
- * tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable): Also apply
- the insn to prefetch ratio heuristic to loops with known trip count.
-
-2010-05-17 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (PREFETCH_MOD_TO_UNROLL_FACTOR_RATIO): New.
- (schedule_prefetches): Do not generate a prefetch if the unroll factor
- is far from what is required by the prefetch.
-
-2010-05-17 Jan Hubicka <jh@suse.cz>
-
- * ipa-cp.c (ipcp_update_callgraph): Use ipa_is_param_used.
- (ipcp_estimate_growth): Likewise.
- (ipcp_const_param_count): Likewise.
- (ipcp_insert_stage): Likewise.
- * ipa-prop.c (visit_load_for_mod_analysis): New function.
- (visit_store_addr_for_mod_analysis): Set used flag.
- (ipa_detect_param_modifications): Set used flag for SSE params;
- update use of walk_stmt_load_store_addr_ops.
- (ipa_print_node_params): Print used flag.
- (ipa_write_node_info): Stream used flag.
- (ipa_read_node_info): Likewise.
- * ipa-prop.h (struct ipa_param_descriptor): Add used field.
- (ipa_is_param_used): New function.
- (lto_ipa_fixup_call_notes): Remove unused declaration.
-
-2010-05-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR target/44074
- * configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): New test.
- * configure: Regenerate.
- * config.in: Regenerate.
- * config/i386/i386.c (print_operand) <case ;>: Also print ";" if
- !HAVE_AS_IX86_REP_LOCK_PREFIX.
- Don't emit whitespace.
- * config/i386/i386.md (*rep_movdi_rex64): Use {%;} after rep.
- (*rep_movsi): Likewise.
- (*rep_movsi_rex64): Likewise.
- (*rep_movqi): Likewise.
- (*rep_movqi_rex64): Likewise.
- (*rep_stosdi_rex64): Likewise.
- (*rep_stossi): Likewise.
- (*rep_stossi_rex64): Likewise.
- (*rep_stosqi): Likewise.
- (*rep_stosqi_rex64): Likewise.
- (*cmpstrnqi_nz_1): Use {%;} after repz.
- (*cmpstrnqi_nz_rex_1): Likewise.
- (*cmpstrnqi_1): Likewise.
- (*cmpstrnqi_rex_1): Likewise.
- (*strlenqi_1): Use {%;} after repnz.
- (*strlenqi_rex_1): Likewise.
- * config/i386/sync.md (memory_barrier_nosse): Replace {%;| } by {%;} .
- (*sync_compare_and_swap<mode>): Likewise.
- (sync_double_compare_and_swap<mode>): Likewise.
- (*sync_double_compare_and_swapdi_pic): Likewise.
- (sync_old_add<mode>): Likewise.
- (sync_add<mode>): Likewise.
- (sync_sub<mode>): Likewise.
- (sync_<code><mode>): Likewise.
-
-2010-05-17 Martin Jambor <mjambor@suse.cz>
-
- * cgraph.h (cgraph_indirect_call_info): New fields anc_offset,
- otr_token and polymorphic.
- * cgraph.c (cgraph_create_indirect_edge): Inilialize the above fields.
- (cgraph_clone_edge): Copy the above fields.
- * tree.c (get_binfo_at_offset): New function.
- * tree.h (get_binfo_at_offset): Declare.
- * ipa-prop.h (enum jump_func_type): Added known_type jump function
- type, reordered items, updated comments.
- (union jump_func_value): Added base_type field, reordered fields.
- (enum ipa_lattice_type): Moved down in the file.
- (struct ipa_param_descriptor): New field polymorphic.
- (ipa_is_param_polymorphic): New function.
- * ipa-prop.c: Include gimple.h and gimple-fold.h.
- (ipa_print_node_jump_functions): Print known type jump functions.
- (compute_complex_pass_through): Renamed to...
- (compute_complex_assign_jump_func): this.
- (compute_complex_ancestor_jump_func): New function.
- (compute_known_type_jump_func): Likewise.
- (compute_scalar_jump_functions): Create known type and complex ancestor
- jump functions.
- (ipa_note_param_call): New parameter polymorphic, set the corresponding
- flag in the call note accordingly.
- (ipa_analyze_call_uses): Renamed to...
- (ipa_analyze_indirect_call_uses): this. New parameter target, define
- variable var only in the block where it is used.
- (ipa_analyze_virtual_call_uses): New function.
- (ipa_analyze_call_uses): Likewise.
- (combine_known_type_and_ancestor_jfs): Likewise.
- (update_jump_functions_after_inlining): Implemented handling of a
- number of new jump function types combination.
- (print_edge_addition_message): Removed.
- (make_edge_direct_to_target): New function.
- (try_make_edge_direct_simple_call): Likewise.
- (try_make_edge_direct_virtual_call): Likewise.
- (update_call_notes_after_inlining): Renamed to...
- (update_indirect_edges_after_inlining): this. Moved edge creation for
- indirect calls to try_make_edge_direct_simple_call, also calls
- try_make_edge_direct_virtual_call for virtual calls.
- (ipa_print_node_params): Changed the header message.
- (ipa_write_jump_function): Stream also known type jump functions.
- (ipa_read_jump_function): Likewise.
- (ipa_write_indirect_edge_info): Stream new fields in
- cgraph_indirect_call_info.
- (ipa_read_indirect_edge_info): Likewise.
- * Makefile.in (ipa-prop.o): Add dependency to GIMPLE_H and
- GIMPLE_FOLD_H.
-
-2010-05-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/i386/sol2.h (TARGET_SUN_TLS): Remove duplicate definition.
-
-2010-05-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (CALL_EXPR_ARGS): Delete.
- (call_expr_arglist): Delete.
- * tree.c (call_expr_arglist): Delete.
- * builtins.c (fold_call_expr): Pass the whole CALL_EXPR to
- targetm.fold_builtin.
- * config/alpha/alpha.c (alpha_fold_builtin): Rename arglist parameter.
- Rewrite iteration to work on call_expr_nargs rather than TREE_CHAIN.
- * config/picochip/picochip.c (picochip_expand_builtin_2op): Rename
- arglist parameter. Use CALL_EXPR_ARG.
- (picochip_expand_builtin_3op): Likewise.
- (picochip_expand_builtin_2opvoid): Likewise.
- (picochip_expand_array_get): Likewise.
- (picochip_expand_array_put): Likewise.
- (picochip_expand_array_testport): Likewise.
- (picochip_expand_builtin): Don't call CALL_EXPR_ARGS. Pass exp
- rather than arglist.
- * config/rx/rx.c (rx_expand_builtin): Call call_expr_nargs instead of
- CALL_EXPR_ARGS.
- * config/sparc/sparc.c (sparc_fold_builtin): Use CALL_EXPR_ARG rather
- than TREE_VALUE and TREE_CHAIN.
- * config/xtensa/xtensa.c (xtensa_fold_builtin): Likewise.
- * doc/tm.texi (TARGET_FOLD_BUILTIN): Pass CALL_EXPR tree instead of
- the arglist.
-
-2010-05-17 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/42347
- * cfglayout.c (fixup_reorder_chain): Allow returnjump_p
- to have no fallthru edge.
-
- PR middle-end/44102
- * cfgcleanup.c (try_optimize_cfg): When removing trivially empty
- bb with no successors, move footer whenever in IR_RTL_CFGLAYOUT
- mode, not just when CLEANUP_CFGLAYOUT, and when in IR_RTL_CFGRTL
- add BARRIER after previous bb if needed.
-
-2010-05-17 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.c (build_function_type_list_1): Remove bogus assert condition.
-
-2010-05-17 Alan Modra <amodra@gmail.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Delete
- unnecessary prototype. Replace copy_r12 and copy_r11 flag params
- with copy_reg rtx param.
- (rs6000_emit_prologue): Update rs6000_emit_allocate_stack calls.
- Correct cases where code for ABI_V4 did not initialise the reg
- used to access frame. Also leave frame_reg_rtx as sp for large
- frames that save no regs.
-
-2010-05-17 Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/44133
- * tree-sra.c (create_access_replacement): New parameter rename, mark
- the replaement for renaming only when it is true.
- (get_access_replacement): Pass true in the rename parameter of
- create_access_replacement.
- (get_unrenamed_access_replacement): New function.
- (replace_uses_with_default_def_ssa_name): New parameter racc, get the
- replacement declaration from it.
-
-2010-05-17 Bernd Schmidt <bernds@codesourcery.com>
-
- * function.c (try_fit_stack_local, add_frame_space): New static
- functions.
- (assign_stack_local_1): Use them. Look for opportunities to use
- space previously wasted on alignment.
- * function.h (struct frame_space): New.
- (struct rtl_data): Add FRAME_SPACE_LIST member.
- * reload1.c (something_was_spilled): New static variable.
- (alter_reg): Set it.
- (reload): Test it in addition to testing if the frame size changed.
-
-2010-05-17 Christian Borntraeger <borntraeger@de.ibm.com>
-
- * config/s390/s390.c: Define sane prefetch settings and activate
- flag_prefetch_loop_arrays on -O3.
- * config/s390/s390.h: Declare that read can use write prefetch.
-
-2010-05-17 Jakub Jelinek <jakub@redhat.com>
-
- * lto-streamer-out.c (lto_output): Fix --enable-checking=release
- build.
-
-2010-05-16 Jan Hubicka <jh@suse.cz>
-
- * ipa-cp.c (ipcp_versionable_function_p): Walk cgraph edges instead of
- function body; do not check stdarg field of struct function.
-
-2010-05-16 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (dump_cgraph_node): Dump versionable flag.
- * cgraph.h (cgraph_local_info): Add versionable flag.
- * ipa-cp.c (ipcp_analyze_node): Set versionable flag.
- (ipcp_versionable_function_p): Use it.
- * lto-cgraph.c (lto_output_node, input_overwrite_node): Stream
- versionable flag.
-
-2010-05-16 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_clone_node): Take decl argument and insert
- clone into hash when it is different from orig.
- (cgraph_create_virtual_clone): Update use of cgraph_clone_node.
- * cgraph.h (cgraph_clone_node): Update prototype.
- * lto-cgrpah.c (lto_cgraph_encoder_new): Create body map.
- (lto_cgraph_encoder_delete): Delete body map.
- (lto_cgraph_encoder_size): Move to header.
- (lto_cgraph_encoder_encode_body_p,
- lto_set_cgraph_encoder_encode_body): New.
- (lto_output_node): Do not take written_decls argument; output clone_of
- pointer.
- (add_node_to): Add include_body_argument; call
- lto_set_cgraph_encoder_encode_body on master of the clone.
- (add_references): Update use of add_node_to.
- (compute_ltrans_boundary): Likewise.
- (output_cgraph): Do not create written_decls bitmap.
- (input_node): Take nodes argument; stream in clone_of correctly.
- (input_cgraph_1): Update use of input_node.
- * lto-streamer-out.c (lto_output): Use encoder info to decide
- what bodies to output.
- * ipa-inline.c (cgraph_clone_inlined_nodes,
- cgraph_decide_recursive_inlining): Update call of cgraph_clone_node.
- * lto-streamer.h (lto_cgraph_encoder_d): Add body.
- (lto_cgraph_encoder_size): Define here.
- (lto_cgraph_encoder_encode_body_p, lto_varpool_encoder_encode_body_p):
- Declare.
-
-2010-05-16 Richard Guenther <rguenther@suse.de>
-
- * doc/invoke.texi (-fipa-struct-reorg): Do not mention
- -fipa-type-escape.
- * ipa-type-escape.c (gate_type_escape_vars): Run when
- -fipa-struct-reorg runs.
- * opts.c (decode_options): Do not unset flag_ipa_type_escape.
- * common.opt (fipa-type-escape): Remove.
-
-2010-05-16 Eric Botcazou <ebotcazou@adacore.com>
-
- * opts.c (handle_option): Call into LTO streamer only if ENABLE_LTO.
- (decode_options): Likewise.
- * Makefile.in (opts.o): Add dependency on LTO_STREAMER_H.
-
-2010-05-16 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (function_and_variable_visibility): Also bring local all
- aliases.
-
-2010-05-16 Richard Guenther <rguenther@suse.de>
-
- * alias.c (nonoverlapping_memrefs_p): Remove use of
- IPA type-escape information.
-
-2010-05-16 Joseph Myers <joseph@codesourcery.com>
-
- * c-common.c (c_common_reswords): Add _Static_assert for C.
- * c-parser.c (c_token_starts_declaration,
- c_parser_next_token_starts_declaration,
- c_parser_static_assert_declaration_no_semi,
- c_parser_static_assert_declaration): New.
- (c_parser_declaration_or_fndef): Add parameter static_assert_ok.
- Handle static assertions if static_assert_ok.
- (c_parser_external_declaration, c_parser_declaration_or_fndef,
- c_parser_compound_statement_nostart, c_parser_label,
- c_parser_for_statement, c_parser_objc_methodprotolist,
- c_parser_omp_for_loop): All callers of
- c_parser_declaration_or_fndef changed.
- (c_parser_struct_declaration): Handle static assertions.
- (c_parser_compound_statement_nostart): Use
- c_parser_next_token_starts_declaration and
- c_token_starts_declaration to detect start of declarations.
- (c_parser_label, c_parser_for_statement, c_parser_omp_for_loop):
- Likewise.
-
-2010-05-16 Anatoly Sokolov <aesok@post.ru>
-
- * config/mmix/mmix.h (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE,
- LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
- * config/mmix/mmix.c (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
- TARGET_FUNCTION_VALUE_REGNO_P): Define.
- (mmix_function_outgoing_value): Rename to...
- (mmix_function_value): ...this. Make static. Add 'outgoing' argument.
- (mmix_function_value_regno_p): Make static.
- (mmix_libcall_value): New function.
- * config/mmix/mmix-protos.h (mmix_function_outgoing_value,
- mmix_function_value_regno_p): Remove declaration.
-
-2010-05-16 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree.c (build_common_builtin_nodes): Always clear TREE_NOTHROW on
- BUILT_IN_ALLOCA if stack checking is enabled.
-
-2010-05-16 Richard Guenther <rguenther@suse.de>
-
- * var-tracking.c (vars_copy_1): Inline ...
- (vars_copy): ... here. Use FOR_EACH_HTAB_ELEMENT.
- (variable_union): Use FOR_EACH_HTAB_ELEMENT. Merge asserts.
- (variable_merge_over_cur): Adjust. Merge asserts.
- (variable_merge_over_src): Likewise.
- (dataflow_set_merge): Use FOR_EACH_HTAB_ELEMENT.
- (variable_post_merge_new_vals): Merge asserts.
- (variable_post_merge_perm_vals): Likewise.
- (find_mem_expr_in_1pdv): Likewise.
- (dataflow_set_different_value): Remove.
- (onepart_variable_different_p): Merge asserts.
- (variable_different_p): Likewise.
- (dataflow_set_different_1): Inline ...
- (dataflow_set_different): ... here. Use FOR_EACH_HTAB_ELEMENT.
- (emit_notes_for_differences_1): Merge asserts.
-
-2010-05-16 Richard Guenther <rguenther@suse.de>
-
- * lto-symtab.c (lto_symtab_entry_hash): Use IDENTIFIER_HASH_VALUE.
- * optabs.c (libfunc_decl_hash): Likewise.
- * varasm.c (emutls_decl): Likewise.
-
-2010-05-16 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-decl.c: Don't include gimple.h.
- (merge_decls): Do not copy gimple_body.
-
-2010-05-15 Jason Merrill <jason@redhat.com>
-
- * c.opt: Add -fnothrow-opt.
-
-2010-05-15 Jan Hubicka <jh@suse.cz>
-
- * ipa-prop.c (ipa_prop_read_section): Add sanity check that node is
- analyzed.
- * passes.c (ipa_write_summaries): Write all analyzed nodes.
-
-2010-05-15 Steven Bosscher <steven@gcc.gnu.org>
-
- * vecir.h: New file with VEC primitives for tree, gimple, and rtl.
- * Makefile.in: Add it.
- Fix all other Makefile dependencies for changes below.
- * tree.h: Include it instead of defining VEC primitives here.
- * gimple.h: Likewise.
- * rtl.h: Likewise.
- * tree-inline.h: Inlclude vecir.h instead of gimple.h.
- * except.h: Include vecir.h, break dependence on tree.h.
-
- * gimplify.c (append_to_statement_list_1, append_to_statement_list):
- Move from here...
- * tree-iterator.c: ...to here.
- * tree-iterator.h: Fix file introduction comment. Add extern markers.
-
- * c-lex.c: Include fixed-value.h instead of rtl.h. Do not include
- tm_p.h.
- * c-cppbuiltin.c: Explain why debug.h and tm_p.h are included.
- * c-objc-common.h: Do not include tm.h, rtl.h, insn-config.h,
- integrate.h, function.h, toplev.h, tree-inline.h, ggc.h,
- tree-mudflap.h, and target.h.
- * c-semantics.c: Do not include except.h, ggc.h, rtl.h, timevar.h,
- predict.h, tree-inline.h, gimple.h, and langhooks.h.
- * c-decl.c: Do not include expr.h, ggc.h, libfuncs.h, except.h.
- Add FIXME for why gimple.h is still included (should be unnecessary
- since GCC 4.5 gimplification unit-at-a-time).
- * c-typeck.c: Do not include rtl.h, tm_p.h, ggc.h, and gimple.h.
- * c-pragma.c: Add FIXME for why function.h needs to be included just
- for cfun, at front-end level.
- Add note that REGISTER_TARGET_PRAGMAS should probably be a target hook.
- Do not include ggc.h, but include vecprim.h for VEC(char).
- * c-opts.c: Do not include tm.h, tree-inline.h, and tm_p.h.
- Explain why target.h is included.
- * c-omp.h: Do not include tm.h, function.h, and bitmap.h.
- Explain why gimple.h is included.
- * c-ppoutput.c: Do not include tm.h.
- * c-common.c: Do not include gimple.h. Explain why expr.h is included.
- * c-parses.c: Explain why rtl.h is included, and that this (and only
- this) is also why tm.h must be included.
- Do not include except.h.
- * c-lang.c: Do not include ggc.h.
-
-2010-05-15 Uros Bizjak <ubizjak@gmail.com>
-
- * targhooks.c (GO_IF_MODE_DEPENDENT_ADDRESS): Use CONST_CAST_RTX.
-
-2010-05-15 Joseph Myers <joseph@codesourcery.com>
-
- * c-decl.c (grokfield): Allow typedefs for anonymous structs and
- unions by default if those structs and unions have no tags. Do
- not condition anonymous struct and unions handling on flag_iso.
- Allow anonymous structs and unions for C1X.
- (finish_struct): Do not diagnose lack of named fields when
- anonymous structs and unions present for C1X. Accept flexible
- array members in structure with anonymous structs or unions but no
- directly named fields.
- * doc/extend.texi (Unnamed Fields): Update.
-
-2010-05-15 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimple.h (compare_field_offset): Rename into...
- (gimple_compare_field_offset): ...this.
- * gimple.c (compare_field_offset): Rename into...
- (gimple_compare_field_offset): ...this. Compare the full access if
- the offset is self-referential.
- (gimple_types_compatible_p): Adjust for above renaming.
- * lto-streamer-in.c (input_gimple_stmt): Likewise. Also compare the
- DECL_NONADDRESSABLE_P flag of fields before merging them.
-
-2010-05-15 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.h (ctor_to_list): Delete.
- * tree.c (ctor_to_list): Delete.
-
-2010-05-15 Jan Hubicka <jh@suse.cz>
-
- * ipa-reference.c: Include toplev.h
- (is_proper_for_analysis): Only add to all_module_statics
- if it is allocated.
- (write_node_summary_p, stream_out_bitmap,
- ipa_reference_write_optimization_summary,
- ipa_reference_read_optimization_summary): New.
- (struct ipa_opt_pass_d pass_ipa_reference): Add
- optimization summary streaming.
- * lto-cgraph.c (referenced_from_this_partition_p,
- reachable_from_this_partition_p): New functions.
- * tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
- call_may_clobber_ref_p_1): Ask ipa-reference even for public vars.
- * opts.c (decode_options): Enable ipa_reference.
- * Makefile.in (ipa-reference.o): Add toplev.h dependency.
- * lto-streamer.h (referenced_from_this_partition_p,
- reachable_from_this_partition_p): Declare.
-
-2010-05-15 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44038
- * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Avoid
- taking the address of a V_C_E of a constant.
-
-2010-05-14 Jan Hubicka <jh@suse.cz>
-
- * tree.h (memory_identifier_string): Remove.
- * ipa-reference.c: Update comment; do not include gt-ipa-reference.h
- (ipa_reference_global_vars_info_d): Remove statics_not_read and
- statics_not_written.
- (ipa_reference_optimization_summary_d): New structure.
- (ipa_reference_optimization_summary_t): New type and vector.
- (ipa_reference_vars_info_d): Embedd structures instead of using
- pointers.
- (reference_vars_to_consider): Remove out of GGC space.
- (module_statics_escape): Remove.
- (global_info_obstack): Rename to ...
- (optimization_summary_obstack): ... this one.
- (initialization_status_t): Remove.
- (memory_identifier_string): Remove.
- (get_reference_vars_info): Fix indenting.
- (set_reference_vars_info): Likewise.
- (get_reference_optimization_summary): New.
- (set_reference_optimization_summary): New.
- (get_global_reference_vars_info): Remove.
- (ipa_reference_get_read_global): Remove.
- (ipa_reference_get_written_global): Remove.
- (ipa_reference_get_not_read_global): Update.
- (ipa_reference_get_not_written_global): Update.
- (is_proper_for_analysis): Outlaw addressable.
- (propagate_bits): Update for new datastructures.
- (analyze_variable): Remove.
- (init_function_info): Update for new datastructures.
- (clean_function_local_data): Remove.
- (clean_function): Remove.
- (copy_global_bitmap): Use optimizations_summary_obstack.
- (duplicate_node_data): Duplicate optimization summary only.
- (remove_node_data): Remove optimization summary only.
- (generate_summary): Do not analyze variables; do not compute
- module_statics_escape; do not prune solutions by it.
- (read_write_all_from_decl): Fix typos in comments.
- (propagate): Doscover readonly and nonaddressable first;
- update for new datastructures; share global bitmaps.
- * ipa-reference.h (ipa_reference_get_read_global,
- ipa_reference_get_written_global): Remove.
- * ipa-pure-const.c (check_stmt): Do not use memory_identifier_string.
- * Makefile.in: Remove ipa-refereference from GT files.
-
-2010-05-14 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44112
- * dwarf2out.c (resolve_one_addr): Check TREE_ASM_WRITTEN
- for all SYMBOL_REF_DECLs.
-
-2010-05-14 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (ipa_discover_readonly_nonaddressable_vars): Declare.
- (varpool_all_refs_explicit_p): New inline function.
- * ipa-reference.c: Update comment.
- (module_statics_written): Remove.
- (get_static_decl): Remove.
- (ipa_init): Do not initialize module_statics_written.
- (analyze_function): Likewise.
- (generate_summary): Likewise; do not compute module_statics_readonly
- and do not update variable flags.
- (propagate): Call ipa_discover_readonly_nonaddressable_vars.
- * ipa.c: Inlucde flags.h
- (cgraph_local_node_p): New.
- (cgraph_remove_unreachable_nodes): Return early when not optimizing;
- promote functions to local.
- (ipa_discover_readonly_nonaddressable_vars): New function.
- (function_and_variable_visibility): Use cgraph_local_node_p.
- * varpool.c (varpool_finalize_decl): Set force_output for
- DECL_PRESERVE_P vars.
-
-2010-05-14 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (cgraph_remove_unreachable_nodes): Revert accidental commit.
-
-2010-05-14 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44119
- * tree-ssa-pre.c (eliminate): Properly mark replacement of
- a PHI node necessary.
-
-2010-05-14 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree.h (TREE_ADDRESSABLE): Remove bogus usage for FIELD_DECL.
-
-2010-05-14 Jason Merrill <jason@redhat.com>
-
- PR c++/44127
- * gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
- (gimple_call_set_nothrow): New.
- * gimple.c (gimple_build_call_from_tree): Call it.
- (gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
-
- PR c++/44127
- * gimplify.c (gimplify_seq_add_stmt): No longer static.
- * gimple.h: Declare it.
- * gimple.c (gimple_build_eh_filter): No ops.
-
-2010-05-14 Jan Hubicka <jh@suse.cz>
-
- * ipa.c (enqueue_cgraph_node): Update comment; do not re-enqueue
- nodes already in queue.
- (cgraph_remove_unreachable_nodes): Cleanup; fix problem with
- re-enqueueing node.
-
-2010-05-14 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44136
- * cfgexpand.c (expand_debug_expr): If non-memory op0
- has BLKmode, return NULL.
-
-2010-05-14 Harsha Jagasia <harsha.jagasia@amd.com>
-
- * config.gcc: Add support for --with-cpu option for bdver1.
- * config/i386/i386.h (TARGET_BDVER1): New macro.
- (ix86_tune_indices): Change SSE_UNALIGNED_MOVE_OPTIMAL
- to SSE_UNALIGNED_LOAD_OPTIMAL. Add SSE_UNALIGNED_STORE_OPTIMAL.
- (ix86_tune_features) :Change SSE_UNALIGNED_MOVE_OPTIMAL
- to SSE_UNALIGNED_LOAD_OPTIMAL. Add SSE_UNALIGNED_STORE_OPTIMAL.
- Add SSE_PACKED_SINGLE_INSN_OPTIMAL.
- (TARGET_CPU_DEFAULT_NAMES): Add bdver1.
- (processor_type): Add PROCESSOR_BDVER1.
- * config/i386/i386.md: Add bdver1 as a new cpu attribute to match
- processor_type in config/i386/i386.h.
- Add check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit
- movaps <reg, reg> instead of movapd <reg, reg> when replacing
- movsd <reg, reg> or movss <reg, reg> for SSE and AVX.
- Add check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL
- to emit packed xor instead of packed double/packed integer
- xor for SSE and AVX when moving a zero value.
- * config/i386/sse.md: Add check for
- TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit movaps instead of
- movapd/movdqa for SSE and AVX.
- Add check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit packed
- single logical operations i.e and, or and xor instead of packed double
- logical operations for SSE and AVX.
- * config/i386/i386-c.c (ix86_target_macros_internal):
- Add PROCESSOR_BDVER1.
- * config/i386/driver-i386.c: Turn on -mtune=native for BDVER1.
- (has_fma4, has_xop): New.
- * config/i386/i386.c (bdver1_cost): New variable.
- (m_BDVER1): New macro.
- (m_AMD_MULTIPLE): Add m_BDVER1.
- (x86_tune_use_leave, x86_tune_push_memory, x86_tune_unroll_strlen,
- x86_tune_deep_branch_prediction, x86_tune_use_sahf, x86_tune_movx,
- x86_tune_use_simode_fiop, x86_tune_promote_qimode,
- x86_tune_add_esp_8, x86_tune_tune_sub_esp_4, x86_tune_sub_esp_8,
- x86_tune_integer_dfmode_moves, x86_tune_partial_reg_dependency,
- x86_tune_sse_partial_reg_dependency,
- x86_tune_sse_unaligned_load_optimal,
- x86_tune_sse_unaligned_store_optimal, x86_tune_sse_typeless_stores,
- x86_tune_memory_mismatch_stall, x86_tune_use_ffreep,
- x86_tune_inter_unit_moves, x86_tune_inter_unit_conversions,
- x86_tune_use_bt, x86_tune_pad_returns, x86_tune_slow_imul_imm32_mem,
- x86_tune_slow_imul_imm8, x86_tune_fuse_cmp_and_branch):
- Enable/disable for bdver1.
- (processor_target_table): Add bdver1_cost.
- (cpu_names): Add bdver1.
- (override_options): Set up PROCESSOR_BDVER1 for bdver1 entry in
- processor_alias_table.
- (ix86_expand_vector_move_misalign): Change.
- TARGET_SSE_UNALIGNED_MOVE_OPTIMAL to TARGET_SSE_UNALIGNED_LOAD_OPTIMAL.
- Check for TARGET_SSE_UNALIGNED_STORE_OPTIMAL.
- Check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit movups instead
- of movupd/movdqu for SSE and AVX.
- (ix86_tune_issue_rate): Add PROCESSOR_BDVER1.
- (ix86_tune_adjust_cost): Add code for bdver1.
- (standard_sse_constant_opcode): Add check for
- TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit packed single xor instead
- of packed double xor for SSE and AVX.
-
-2010-05-14 Pat Haugen <pthaugen@us.ibm.com>
-
- * tree-ssa-loop.prefetch.c (prune_ref_by_group_reuse): Cast abs()
- result to unsigned.
-
-2010-05-14 Tristan Gingold <gingold@adacore.com>
-
- * toplev.c (default_debug_hooks): Remove this variable.
- (process_options): Remove assignments to default_debug_hooks.
-
-2010-05-14 Martin Jambor <mjambor@suse.cz>
-
- * langhooks-def.h (LANG_HOOKS_FOLD_OBJ_TYPE_REF): Remove.
- (LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_FOLD_OBJ_TYPE_REF.
- * langhooks.h (struct lang_hooks_for_decls): Removed field
- fold_obj_type_ref.
- * tree.c (free_lang_data): Remove assignment to
- lang_hooks.fold_obj_type_ref.
- * tree.def (OBJ_TYPE_REF): Update comment.
-
-2010-05-14 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44124
- * tree-ssa-sccvn.c (vn_nary_may_trap): Fix invalid memory access.
-
-2010-05-14 Alan Modra <amodra@gmail.com>
-
- PR target/44075
- * config/rs6000/rs6000.c (struct machine_function): Reorder
- fields for better packing. Add lr_save_state.
- (rs6000_ra_ever_killed): Return lr_save_state if set.
- (rs6000_emit_eh_reg_restore): Set lr_save_state.
-
-2010-05-13 Jan Hubicka <jh@suse.cz>
-
- * varpool.c (decide_is_variable_needed): Drop code checking
- TREE_SYMBOL_REFERENCED.
-
-2010-05-13 Jan Hubicka <jh@suse.cz>
-
- * final.c (output_addr_const): Do not call mark_decl_referenced.
- * cgraphunit.c (process_function_and_variable_attributes): Use
- mark_needed_node dirrectly.
- (assemble_thunk): Do not call mark_decl_referenced.
-
-2010-05-13 Anatoly Sokolov <aesok@post.ru>
-
- * targhooks.c (default_mode_dependent_address_p): Cast 'addr' to rtx.
-
-2010-05-13 Jeff Law <law@redhat.com>
-
- * ira-conflicts.c (print_allocno_conflicts): New function broken out
- from...
- (print_conflicts): Call print_allocno_conflicts.
-
-2010-05-13 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44104
- * dwarf2out.c (modified_type_die): Don't dereference mod_type_die
- if it is NULL.
-
-2010-05-13 Kai Tietz <kai.tietz@onevision.com>
-
- * config.gcc (i[34567]86-*-mingw* | x86_64-*-mingw*): Choose
- t-mingw-w64 or t-mingw-w32 for multilib configuration.
- * config/i386/t-mingw-w32: New.
- * config/i386/t-mingw-w64 (MULTILIB_OSDIRNAMES): Change lib64 to lib.
-
-2010-05-13 Martin Jambor <mjambor@suse.cz>
-
- * gimple.c (gimple_fold_obj_type_ref): Removed (a replacement moved to
- gimple-fold.c).
- * gimple-fold.c (get_base_binfo_for_type): New function.
- (gimple_get_relevant_ref_binfo): Likewise.
- (gimple_fold_obj_type_ref_known_binfo): Likewise.
- (gimple_fold_obj_type_ref): Likewise.
- (fold_gimple_call): Simplify condition for folding virtual calls
- and call gimple_fold_obj_type_ref.
- * gimple.h (gimple_get_relevant_ref_binfo): Declare.
- (gimple_fold_obj_type_ref_known_binfo): Likewise.
-
-2010-05-13 Andreas Schwab <schwab@linux-m68k.org>
-
- * config/rs6000/rs6000-protos.h
- (rs6000_mode_dependent_address_ptr): Change argument to const_rtx.
- * config/rs6000/rs6000.c (rs6000_mode_dependent_address)
- (rs6000_debug_mode_dependent_address)
- (rs6000_mode_dependent_address_ptr): Likewise.
-
-2010-05-13 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43983
- * var-tracking.c (track_expr_p): Allow tracking of variables optimized
- by SRA.
- * Makefile.in (dwarf2out.o): Depend on $(TREE_FLOW_H).
- * tree-sra.c (create_access_replacement): Call unshare_expr before
- passing expr to SET_DECL_DEBUG_EXPR, and remove any SSA_NAMEs from it.
- * dwarf2out.c: Include tree-flow.h.
- (struct var_loc_node): Rename var_loc_note field to loc, add comment.
- (size_of_loc_descr, output_loc_operands, output_loc_operands_raw):
- Handle DW_OP_bit_piece.
- (decl_piece_bitsize, decl_piece_varloc_ptr, decl_piece_node,
- construct_piece_list, adjust_piece_list): New functions.
- (add_var_loc_to_decl): Handle SRA optimized variables.
- Adjust for var_loc_note to loc field renaming.
- (dw_loc_list_1): For WANT_ADDRESS == 2 prefer DECL_MODE of decl
- in VAR_LOCATION note.
- (new_loc_descr_op_bit_piece): New function.
- (dw_sra_loc_expr): New function.
- (dw_loc_list): Use it. Don't handle the last range after the
- loop, handle it inside of the loop. Adjust for var_loc_note
- to loc field renaming.
- (add_location_or_const_value_attribute): Only special case
- single entry loc lists if loc is NOTE_P. Adjust for
- var_loc_note to loc field renaming.
- (dwarf2out_var_location): Don't set newloc->var_loc_note
- and newloc->next here.
-
-2010-05-12 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_mark_address_taken_node): No longer imply needed
- flag.
- * cgraph.h (cgraph_only_called_directly_p,
- cgraph_can_remove_if_no_direct_calls_p): test address_taken flag.
- (cgraph_can_remove_if_no_direct_calls_and_refs_p): New function.
- * cgraphunit.c (cgraph_mark_functions_to_output): Test address_taken.
- (assemble
- * ipa.c (cgraph_remove_unreachable_nodes): Use
- cgraph_can_remove_if_no_direct_calls_and_refs_p; clear address_taken
- flags.
- * tree-inline.c (copy_bb): Check address_taken flag.
- * tree-profile.c (tree_gen_ic_func_profiler): Check address_taken and
- externally_visible flag.
-
-2010-05-12 Jason Merrill <jason@redhat.com>
-
- PR bootstrap/44048
- PR target/44099
- * dbxout.c (dbxout_type): Remove NULLPTR_TYPE handling.
- * sdbout.c (plain_type_1): Likewise.
- * dwarf2out.c (is_base_type): Likewise.
- (gen_type_die_with_usage): Likewise. Generate
- DW_TAG_unspecified_type for any LANG_TYPE.
-
-2010-05-12 Jan Hubicka <jh@suse.cz>
-
- * cgraphbuild.c (build_cgraph_edges, rebuild_cgraph_edges): Build
- indrect edges too.
- * cgraph.c (cgraph_create_indirect_edge): Take ecf_flags argument.
- (cgraph_clone_edge): Update.
- (cgraph_node_remove_callees): Remove indirect calls too.
- * cgraph.h (cgraph_indirect_call_info): Add ecf_flags.
- (cgraph_create_indirect_edge): Update prototype.
- * ipa-reference.c (has_proper_scope_for_analysis): Rename to
- is_proper_for_analysis.
- (add_new_function, visited_nodes, function_insertion_hook_holder,
- get_local_reference_vars_info, mark_address_taken, mark_address,
- mark_load, mark_store, check_asm_memory_clobber, check_call,
- scan_stmt_for_static_refs, scan_initializer_for_static_refs): Remove.
- (ipa_init): Do not initialize visited_nodes;
- function_insertion_hook_holder.
- (analyze_variable): Rewrite.
- (analyze_function): Rewrite.
- (copy_local_bitmap): Remove.
- (duplicate_node_dat): Do not duplicate local info.
- (generate_summary): Simplify to only walk cgraph.
- (write_node_summary_p, ipa_reference_write_summary,
- ipa_reference_read_summary): Remove.
- (propagate): Do not remove function insertion;
- generate summary.
- (pass_ipa_reference): NULLify summary handling fields.
- * lto-cgraph.c (lto_output_edge): Output ecf_flags.
- (input_edge): Input ecf_flags.
- * ipa-prop.c (ipa_note_parm_call): Expect edge to be around.
- (update_indirect_edges_after_inlining): Ignore edges with unknown
- param.
-
-2010-05-12 Sriraman Tallam <tmsriram@google.com>
-
- * implicit-zee.c: New file.
- * tree-pass.h (pass_implicit_zee): Declare.
- * passes.c (init_optimization_passes): Add zee pass.
- * common.opt (fzee): New flag.
- * timevar.def (TV_ZEE): Define.
- * config/i386/i386.c (optimization_options): Turn on ZEE for level 2
- and beyond.
- * Makefile.in (implicit-zee.o): Add new build file.
-
-2010-05-12 Kazu Hirata <kazu@codesourcery.com>
- Nathan Froyd <froydnj@codesourcery.com>
-
- * c-common.c (sync_resolve_params): Remove write-only variable.
-
-2010-05-12 Anatoly Sokolov <aesok@post.ru>
-
- * target.h (struct gcc_target): Add mode_dependent_address_p field.
- * target-def.h (TARGET_MODE_DEPENDENT_ADDRESS_P): New.
- (TARGET_INITIALIZER): Use TARGET_MODE_DEPENDENT_ADDRESS_P.
- * targhooks.c (default_mode_dependent_address_p): New function.
- * targhooks.h (default_mode_dependent_address_p): Declare function.
- * doc/tm.texi (TARGET_MODE_DEPENDENT_ADDRESS_P): New.
- (GO_IF_MODE_DEPENDENT_ADDRESS): Update.
- * recog.c (mode_dependent_address_p): Call mode_dependent_address_p
- target hook. Change return type to bool.
- * recog.h (mode_dependent_address_p): Change return type to bool.
-
-2010-05-12 Kazu Hirata <kazu@codesourcery.com>
- Nathan Froyd <froydnj@codesourcery.com>
-
- * tree-mudflap.c (build_function_type_0, build_function_type_1,
- build_function_type_2, build_function_type_3): Remove.
- (mudflap_init): Use build_function_type_list.
-
-2010-05-12 Kazu Hirata <kazu@codesourcery.com>
- Nathan Froyd <froydnj@codesourcery.com>
-
- * coverage.c (build_fn_info_value): Call build_constructor instead of
- build_constructor_from_list.
- (build_ctr_info_value): Likewise.
- (build_gcov_info): Likewise.
-
-2010-05-12 Nathan Froyd <froydnj@codesourcery.com>
-
- * tree.c (build_constructor): Compute TREE_CONSTANT for the
- resultant constructor.
- (build_constructor_single): Don't set TREE_CONSTANT.
- (build_constructor_from_list): Don't compute TREE_CONSTANT.
-
-2010-05-12 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (struct varpool_node): Add aux.
- * varasm.c (find_decl_and_mark_needed): Force output of varpool nodes.
- * varpool.c (varpool_remove_node): Do not remove initializer.
- (varpool_reset_queue): Export.
- (varpool_finalize_decl): Volatile vars are forced to be output.
- * lto-symtab.c (lto_varpool_replace_node): Clear out initializer of
- replaced decl.
- * ipa.c (enqueue_cgraph_node, enqueue_varpool_node,
- process_references, varpool_can_remove_if_no_refs): New functions.
- (cgraph_remove_unreachable_nodes): Handle variables too.
-
-2010-05-12 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44088
- * config/i386/sse.md (*avx_vmmaskcmp<mode>3): New.
-
-2010-05-12 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/44085
- * gimplify.c (enum omp_region_type): Add ORT_UNTIED_TASK,
- change value of ORT_TASK.
- (new_omp_context): Handle ORT_UNTIED_TASK like ORT_TASK.
- (omp_notice_threadprivate_variable): New function.
- (omp_notice_variable): Call it for threadprivate variables.
- If enclosing ctx is a task, print enclosing task rather than
- enclosing parallel. Handle ORT_UNTIED_TASK like ORT_TASK.
- (gimplify_omp_task): Pass ORT_UNTIED_TASK instead of ORT_TASK
- if task has untied clause.
-
- PR debug/42278
- * dwarf2out.c (base_type_die): Don't add name attribute here.
- (modified_type_die): Instead of sizetype use
- its underlying original type. If a DW_TAG_base_type doesn't
- have name added, add __unknown__.
- (dwarf2out_imported_module_or_decl_1): Don't call base_type_die,
- always call force_type_die instead.
-
-2010-05-12 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * targhooks.c (default_stack_protect_guard): Avoid sharing RTL
- for __stack_chk_guard.
-
-2010-05-11 Jakub Jelinek <jakub@redhat.com>
-
- * c-opts.c (c_common_parse_file): If start_end_main_source_file,
- don't call start_source_file debug hook here...
- (finish_options): ... but here, after outputting predefined and
- command line defines and undefs.
-
- PR middle-end/44071
- * cfglayout.c (fixup_reorder_chain): Allow asm goto to have
- no fallthru edge.
- * cfgcleanup.c (try_optimize_cfg): When in cfglayout mode
- optimizing away empty bb with no successors, move over its
- footer chain to fallthru predecessor.
- * cfgrtl.c (patch_jump_insn): Update also REG_LABEL_OPERAND.
- (rtl_split_edge): For asm goto call patch_jump_insn even if
- splitting fallthru edge.
-
- PR c++/44059
- * config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use qnu_unique_object
- even for DECL_ONE_ONLY DECL_ARTIFICIAL !TREE_READONLY decls.
- * config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Likewise.
- * dwarf2asm.c (dw2_output_indirect_constant_1): Set TREE_READONLY
- on DW.ref.* decls.
-
- PR c++/44062
- * c-parser.c (c_parser_expression): Mark LHS of a comma
- expression as read if it is a decl, handled component or
- COMPOUND_EXPR with that on the RHS.
- * c-typeck.c (c_process_expr_stmt): Mark RHS of COMPOUND_EXPR
- if it is a decl or handled component.
-
-2010-05-11 Jan Hubicka <jh@suse.cz>
-
- * lto-symtab.c (lto_symtab_free): New function.
- * lto-streamer.h (lto_symtab_free): Declare.
-
-2010-05-11 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (reachable_from_other_partition_p): Export; do not assume
- that if function is needed it is reachable.
- (lto_output_node): See if it the function is reachable or referenced.
- (output_cgraph): Update call of lto_output_node.
- * lto-streamer.h (reachable_from_other_partition_p): Declare.
-
-2010-05-11 Jan Hubicka <jh@suse.cz>
-
- * crtstuff.c (__JCR_LIST__, __DTOR_END__, __JCR_END__, __FRAME_END__):
- Mark as used.
-
-2010-05-11 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimize/44063
- * ipa-inline.c (cgraph_edge_badness): Move always inlines to top of
- queue.
- (cgraph_decide_inlining_of_small_function): Skip check when disrgarding
- limits.
- (estimate_function_body_sizes): Compute sizes even when disregarding.
-
-2010-05-11 Kai Tietz <kai.tietz@onevision.com>
-
- * collect2.c (maybe_lto_object_file): Add x64-coff magic and check.
-
-2010-05-11 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (output_cgraph): Remove loop adding all varpool nodes
- into every boundary.
-
-2010-05-11 Jan Hubicka <jh@suse.cz>
-
- * matrix-reorg.c (matrix_reorg): Rebuild edges.
-
-2010-05-11 Jan Hubicka <jh@suse.cz>
-
- * lto-streamer.c (lto_streamer_cache_add_to_node_array,
- lto_streamer_cache_delete): Put nodes into heap.
- * lto-streamer.h (struct lto_streamer_cache_d): Nodes vector is in
- heap.
-
-2010-05-11 Jan Hubicka <jh@suse.cz>
-
- * cgraphbuild.c (cgraph_rebuild_references): New.
- * cgraph.c (cgraph_mark_reachable_node): Accept references to optimized
- out extern inlines.
- * cgraph.h (cgraph_rebuild_references): Declare.
- * tree-inline.c (tree_function_versioning): Use it.
- * ipa-struct-reorg.c (do_reorg_for_func): Likewise.
-
-2010-05-11 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c: Include ipa-utils.h
- (cgraph_create_virtual_clone): Update references.
- * Makefile.in (cgraph.o): Add dependency at ipa-utils.h
-
-2010-05-11 Christian Borntraeger <borntraeger@de.ibm.com>
-
- * tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Reset
- prefetch_before to PREFETCH_ALL if to accesses "meet" beyond
- cache size.
-
-2010-05-11 Christian Borntraeger <borntraeger@de.ibm.com>
-
- * tree-ssa-loop-prefetch.c: Add debug for dropped prefetches.
-
-2010-05-11 Jakub Jelinek <jakub@redhat.com>
-
- * gcc.c (execute): For -### don't quote arguments that
- contain just alphanumerics and _/-. characters.
- * doc/invoke.texi: Document that change for -###.
-
- PR debug/44023
- * df-problems.c (struct dead_debug): Add to_rescan field.
- (dead_debug_init): Clear to_rescan field.
- (dead_debug_finish): Rescan all debug insns in to_rescan
- bitmap and free the bitmap.
- (dead_debug_insert_before): Instead of rescanning debug insns
- immediately queue their rescanning until dead_debug_finish.
- (df_note_bb_compute): After dead_debug_add do continue instead
- of break.
-
-2010-05-10 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/44028
- * haifa-sched.c (schedule_insn): When clearing INSN_VAR_LOCATION_LOC,
- clear also INSN_REG_USE_LIST.
-
-2010-05-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/mips/mips.c (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): Undef.
-
-2010-05-10 Jan Hubicka <jh@suse.cz>
-
- * lto-stramer-out.c (produce_asm_for_decls): Correct accidentally
- commited change.
-
-2010-05-10 Jan Hubicka <jh@suse.cz>
-
- * passes.c (ipa_write_summaries_1, ipa_write_optimization_summaries):
- Allocate encoders.
- * lto-section-out.c (lto_new_out_decl_state): Do not allocate it here.
- * lto-streamer.c (lto_streamer_cache_insert_1): Use alloc pool.
- (lto_streamer_cache_create): Init alloc pool.
- (lto_streamer_cache_delete): Free alloc pool.
- * lto-streamer.h: Include alloc pool.
- (lto_streamer_cache_d): Use alloc pool.
- * lto-stramer-out.c (produce_asm_for_decls): Delete fn_out_states.
-
-2010-05-10 Jan Hubicka <jh@suse.cz>
-
- * Makefile.in (cgraphbuild.o): Add dependency on except.h.
- * cgraphbuild.c: Include except.h
- (record_type_list, record_eh_tables): New function.
- (build_cgraph_edges, rebuild_cgraph_edges): Use it.
-
-2010-05-10 Jan Hubicka <jh@suse.cz>
-
- * crtstuff.c (force_to_data, __do_global_dtors_aux_fini_array_entry,
- __frame_dummy_init_array_entry, force_to_data): Attribute as used
- rather than unused.
-
-2010-05-10 Michael Matz <matz@suse.de>
-
- * tree-ssa-reassoc.c (undistribute_ops_list): Use create_tmp_reg.
- (can_reassociate_p): Use FLOAT_TYPE_P.
- * tree-vectorizer.h (vect_is_simple_reduction): Rename to ...
- (vect_force_simple_reduction): ... this.
- * tree-parloops.c (gather_scalar_reductions): Use
- vect_force_simple_reduction.
- * tree-vect-loop.c (vect_is_simple_reduction_1): Rename from
- vect_is_simple_reduction, add modify argument, if true rewrite
- "a-b" into "a+(-b)".
- (vect_is_simple_reduction, vect_force_simple_reduction): New
- functions.
- (vect_analyze_scalar_cycles_1): Use vect_force_simple_reduction.
-
-2010-05-10 H.J. Lu <hongjiu.lu@intel.com>
- Vladimir Makarov <vmakarov@redhat.com>
-
- PR rtl-optimization/44012
- * ira-build.c (remove_unnecessary_allocnos): Nullify
- regno_allocno_map of the removed allocno.
-
-2010-05-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors
- to /dev/null.
- * configure: Regenerate.
-
-2010-05-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/sol2.c (solaris_assemble_visibility): Declare decl, vis
- unused.
- Define visibility_types, name, type inside HAVE_GAS_HIDDEN.
- * configure.ac (gcc_cv_ld_hidden): Explain stages of visibility
- support in Sun ld.
- * configure: Regenerate.
-
-2010-05-10 Richard Guenther <rguenther@suse.de>
-
- * lto-symtab.c (lto_symtab_entry_marked_p): Make entry
- marked if the entry identifier is marked.
-
-2010-05-10 Richard Guenther <rguenther@suse.de>
-
- * c-common.c (struct c_common_attributes): Add fnspec attribute.
- (handle_fnspec_attribute): New function.
- * gimple.h (gimple_call_return_flags): Declare.
- (gimple_call_arg_flags): Likewise.
- * gimple.c (gimple_call_arg_flags): New function.
- (gimple_call_return_flags): Likewise.
- * tree.h (EAF_DIRECT, EAF_NOCLOBBER, EAF_NOESCAPE, EAF_UNUSED):
- New argument flags.
- (ERF_RETURN_ARG_MASK, ERF_RETURNS_ARG, ERF_NOALIAS): New function
- return value flags.
- * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Skip unused args.
- * tree-ssa-structalias.c (make_constraint_from_heapvar): Split
- main work to ...
- (make_heapvar_for): ... this new function.
- (handle_rhs_call): Handle fnspec attribute argument specifiers.
- (handle_lhs_call): Likewise.
- (find_func_aliases): Adjust.
-
-2010-05-10 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44050
- * tree-inline.c (tree_function_versioning): Clone the ipa-pta flag.
-
-2010-05-10 Wei Guozhi <carrot@google.com>
-
- PR target/42879
- * config/arm/thumb2.md (thumb2_tlobits_cbranch): New insn pattern.
-
-2010-05-09 Joseph Myers <joseph@codesourcery.com>
-
- PR c/10676
- * c-typeck.c (lookup_field): Take a type directly. Update
- recursive calls.
- (build_component_ref): Update call to lookup_field.
- (set_init_label): Use lookup_field to find initialized field.
- Handle returned list of fields like a sequence of designators.
-
-2010-05-09 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44024
- * fold-const.c (tree_single_nonzero_warnv_p): Properly
- handle &FUNCTION_DECL.
-
-2010-05-09 Joseph Myers <joseph@codesourcery.com>
-
- PR c/4784
- * c-decl.c (detect_field_duplicates_hash): New. Handle anonymous
- structures and unions recursively.
- (detect_field_duplicates): Move duplicate detection with a hash to
- detect_field_duplicates_hash. Always use a hash if anonymous
- structures or unions are present.
- * doc/extend.texi (Unnamed Fields): Document that duplicate fields
- give errors.
-
-2010-05-09 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/44046
- * config/i386/driver-i386.c (host_detect_local_cpu): Properly
- detect Atom, Core 2 and Core i7.
-
-2010-05-09 Richard Guenther <rguenther@suse.de>
-
- * gcc.c (store_arg): Handle temporary file deletion for
- joined arguments.
-
-2010-05-09 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/44043
- * ipa-inline.c (estimate_function_body_sizes): Return after
- disregarding inline limits.
-
-2010-05-09 Richard Guenther <rguenther@suse.de>
-
- * gcc.c (store_arg): Revert last change.
-
-2010-05-08 Sandra Loosemore <sandra@codesourcery.com>
-
- PR middle-end/28685
- * tree-ssa-reassoc.c (eliminate_redundant_comparison): New function.
- (optimize_ops_list): Call it.
-
-2010-05-08 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44030
- * tree-ssa-pre.c (eliminate): Copy NECESSARY flag. Set
- NECESSARY flag if we propagate from a inserted expression.
-
-2010-05-08 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimple.c (gimple_types_compatible_p) <ARRAY_TYPE>: Treat bounds of
- domain types as equal if they are both PLACEHOLDER_EXPRs.
-
-2010-05-08 Richard Guenther <rguenther@suse.de>
-
- * lto-wrapper.c (run_gcc): Remove linker output from
- command line for LTRANS invocation.
-
-2010-05-07 Steven Bosscher <steven@gcc.gnu.org>
-
- * config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
- lto-macho as lto_binary_reader.
- * target.h (struct gcc_target): New hooks lto_start and lto_end.
- * target-def.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Define.
- * cgraphunit.c (ipa_passes): Wrap LTO assembler output generation
- in lto_start and lto_end calls.
- (is_elf_or_coff): Rename to maybe_lto_object_file. Add Mach-O
- magic numbers.
- (scan_prog_file): Update is_elf_or_coff call.
- * doc/tm.text (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Document.
-
- * collect2.c (main): Fix enum comparison.
-
- * config/darwin-protos.h (darwin_asm_lto_start, darwin_asm_lto_end):
- Add prototypes.
- * darwin9.h (LINK_COMMAND_SPEC): Pass -flto and -fwhopr to the linker.
- * darwin.h (LINK_COMMAND_SPEC): Likewise. Define TARGET_ASM_LTO_START
- and TARGET_ASM_LTO_END.
- * darwin.c: Include obstack.h and lto-streamer.h.
- (lto_section_names_offset, lto_section_names_obstack,
- lto_asm_out_file, lto_asm_out_name, saved_asm_out_file): New static
- global variables.
- (LTO_SEGMENT_NAME, LTO_NAMES_SECTION): New defines.
- (darwin_asm_lto_start): New function. Redirect output to asm_out_file
- to a temporary file.
- (darwin_asm_lto_end): New function. Restore asm_out_file.
- (darwin_asm_named_section): For LTO sections, replace the name with
- the offset of the section name in a string table, and build this
- table.
- (darwin_file_start): Initialize global vars for LTO support.
- (darwin_file_end): If output to asm_out_file was redirected, append it
- to the proper asm_out_file here. Add the section names section.
-
-2010-05-07 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-pragma.c (pending_weak_d, pending_weak): New.
- (pending_weaks): Change the type to VEC((pending_weak,gc) *.
- (maybe_apply_pragma_weak, maybe_apply_pending_pragma_weaks,
- handle_pragma_weak): Update the uses of pending_weaks.
-
-2010-05-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR documentation/44016
- * doc/standards.texi (Standards): Link to unversioned
- cxx0x_status.html page.
-
-2010-05-07 Iain Sandoe <iains@gcc.gnu.org>
-
- PR target/43708
- * config/darwin-c.c (darwin_pragma_unused): Set DECL_READ_P
- in addition to TREE_USED, to avoid "set but unused" warnings.
-
-2010-05-07 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (TRIP_COUNT_TO_AHEAD_RATIO): New.
- (is_loop_prefetching_profitable): Do not insert prefetches
- when the trip count is not at least TRIP_COUNT_TO_AHEAD_RATIO
- times the prefetch ahead distance.
-
-2010-05-07 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable):
- Account for loop unrolling in the insn-to-prefetch ratio heuristic.
- (loop_prefetch_arrays): Pass to is_loop_prefetching_profitable
- the unroll_factor.
-
-2010-05-07 Changpeng Fang <changpeng.fang@amd.com>
-
- * tree-ssa-loop-prefetch.c (is_loop_prefetching_profitable): Dump
- a diagnostic info when the insn-to-mem ratio is too small.
-
-2010-05-07 Richard Guenther <rguenther@suse.de>
-
- * gcc.c (LINK_COMMAND_SPEC): Provide a resolution file to
- the linker plugin.
- (store_arg): Queue temp_filename for deletion instead of
- the whole argument.
-
-2010-05-07 Richard Guenther <rguenther@suse.de>
-
- * lto-wrapper.c (DUMPBASE_SUFFIX): Define.
- (run_gcc): Handle LTRANS phase invocation.
- * collect2.c (maybe_run_lto_and_relink): Do not set WPA_SAVE_LTRANS.
-
-2010-05-07 Jakub Jelinek <jakub@redhat.com>
-
- * tree.h (TREE_ADDRESSABLE): Adjust comment to say that
- this is also meaningful on PARM_DECLs and RESULT_DECLs.
-
-2010-05-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/mips/iris6.h (LINK_SPEC): Don't pass -init, -fini with -r.
-
-2010-05-07 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/44020
- * tree-ssa-pre.c (execute_pre): Do not remove dead inserted
- code when PRE is not yet initialized.
-
-2010-05-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/mips/dbxmdebug.h: Remove.
- * config.gcc (mips-sgi-irix6.5*): Remove mips/dbxmdebug.h.
-
-2010-05-07 Shujing Zhao <pearly.zhao@oracle.com>
-
- * c-typeck.c (build_binary_op): Warn ordered comparison of pointer
- with null pointer and also warn about ordered comparison of zero with
- pointer if -Wextra.
-
-2010-05-05 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-blocking.c
- (pbb_strip_mine_profitable_p): Replace Value with mpz_t.
- * graphite-clast-to-gimple.c
- (clast_to_gcc_expression): Same.
- (precision_for_value): Same.
- (precision_for_interval): Same.
- (gcc_type_for_interval): Same.
- (graphite_create_new_guard): Same.
- (compute_bounds_for_level): Same.
- (graphite_create_new_loop_guard): Same.
- * graphite-interchange.c
- (build_linearized_memory_access): Same.
- (pdr_stride_in_loop): Same.
- (memory_strides_in_loop_1): Same.
- (memory_strides_in_loop): Same.
- (extend_scattering): Same.
- (psct_scattering_dim_for_loop_depth): Same.
- (pbb_number_of_iterations): Same.
- * graphite-poly.h
- (debug_iteration_domains): Same.
- * graphite-ppl.c
- (new_Cloog_Domain_from_ppl_Pointset_Powerset): Same.
- (ppl_set_inhomogeneous_gmp): Same.
- (ppl_strip_loop): Same.
- (ppl_lexico_compare_linear_expressions): Same.
- (ppl_read_polyhedron_matrix): Same.
- (ppl_max_for_le_pointset): Same.
- * graphite-ppl.h
- (ppl_read_polyhedron_matrix): Same.
- (tree_int_to_gmp): Same.
- (gmp_cst_to_tree): Same.
- (ppl_set_inhomogeneous): Same.
- (ppl_set_inhomogeneous_tree): Same.
- (ppl_set_coef): Same.
- (ppl_set_coef_tree): Same.
- * graphite-sese-to-poly.c
- (build_pbb_scattering_polyhedrons): Same.
- (build_scop_scattering): Same.
- (scan_tree_for_params_right_scev): Same.
- (scan_tree_for_params): Same.
- (find_params_in_bb): Same.
- (find_scop_parameters): Same.
- (add_upper_bounds_from_estimated_nit): Same.
- (build_loop_iteration_domains): Same.
- (add_condition_to_domain): Same.
- (pdr_add_memory_accesses): Same.
-
-2010-05-05 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
-
- * graphite-blocking.c (pbb_strip_mine_profitable_p): Resolve
- CLooG's value_* macros to their respective mpz_* counterparts.
- * graphite-clast-to-gimple.c (clast_to_gcc_expression): Same.
- (graphite_create_new_loop_guard): Same.
- * graphite-interchange.c (build_linearized_memory_access): Same.
- (pdr_stride_in_loop): Same.
- (memory_strides_in_loop_1): Same.
- (1st_interchange_profitable_p): Same.
- * graphite-poly.c (extend_scattering): Same.
- (psct_scattering_dim_for_loop_depth): Same.
- (pbb_number_of_iterations): Same.
- (pbb_number_of_iterations_at_time): Same.
- * graphite-poly.h (new_1st_loop): Same.
- * graphite-ppl.c (cloog_matrix_to_ppl_constraint): Same.
- (oppose_constraint): Same.
- (insert_constraint_into_matrix): Same.
- (ppl_set_inhomogeneous_gmp): Same.
- (ppl_set_coef_gmp): Same.
- (ppl_strip_loop): Same.
- (ppl_lexico_compare_linear_expressions): Same.
- (ppl_max_for_le_pointset): Same.
- (ppl_min_for_le_pointset): Same.
- (ppl_build_realtion): Same.
- * graphite-ppl.h (gmp_cst_to_tree): Same.
- (ppl_set_inhomogeneous): Same.
- (ppl_set_inhomogeneous_tree): Same.
- (ppl_set_coef): Same.
- (ppl_set_coef_tree): Same.
- * graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons): Same.
- (build_scop_scattering): Same.
- (add_value_to_dim): Same.
- (scan_tree_for_params_right_scev): Same.
- (scan_tree_for_params_int): Same.
- (scan_tree_for_params): Same.
- (find_params_in_bb): Same.
- (find_scop_parameters): Same.
- (add_upper_bounds_from_estimated_nit): Same.
- (build_loop_iteration_domains): Same.
- (create_linear_expr_from_tree): Same.
- (add_condition_to_domain): Same.
- (pdr_add_memory_accesses): Same.
-
-2010-05-06 Magnus Fromreide <magfr@lysator.liu.se>
- Jason Merrill <jason@redhat.com>
-
- * c-common.c (c_common_reswords): Add nullptr.
- * c-common.h: Add RID_NULLPTR. Reorganize C++0x rids.
- * dwarf2out.c (is_base_type): Handle NULLPTR_TYPE.
- (gen_type_die_with_usage): Likewise.
- * dbxout.c (dbxout_type): Likewise.
- * sdbout.c (plain_type_1): Likewise.
-
-2010-05-06 Jason Merrill <jason@redhat.com>
-
- * gimplify.c (gimplify_expr): Set GS_ALL_DONE when appropriate.
- Don't change GS_OK to GS_ALL_DONE. Make sure that all cases set
- ret appropriately.
- (gimplify_compound_lval): Return GS_ALL_DONE as appropriate.
-
- * gimplify.c (gimplify_modify_expr_rhs): Don't return GS_OK for
- stripping WITH_SIZE_EXPR.
- (gimplify_expr) [MODIFY_EXPR]: Trust GS_OK even if the rhs didn't
- change.
-
-2010-05-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.gcc: Removed mips-sgi-irix5*, mips-sgi-irix6.[0-4]* from
- list of obsolete configurations.
- Disabled check for obsolete configurations.
- (mips-sgi-irix[56]*): Restrict to mips-sgi-irix6.5*.
- Removed support for previous versions.
- * config/mips/iris.h: Removed.
- * config/mips/iris5.h: Removed.
- * config/mips/iris6.h: Merged old iris.h contents.
- (TARGET_IRIX): Removed.
- (DRIVER_SELF_SPECS): Removed mabi=32.
- (IDENT_ASM_OP): Removed undef.
- (STARTFILE_SPEC): Removed mabi=32.
- (ENDFILE_SPEC): Likewise.
- (IRIX_SUBTARGET_LINK_SPEC): Likewise.
- (MACHINE_TYPE): Update for IRIX 6.5.
- * config/mips/mips.c (mips_build_builtin_va_list): Replaced
- TARGET_IRIX by TARGET_IRIX6.
- (mips_file_start): Likewise.
- (mips_output_external): Remove IRIX 5/6 O32 support.
- (mips_output_function_prologue): Likewise.
- * config/mips/mips.h (TARGET_GPWORD): Replaced TARGET_IRIX by
- TARGET_IRIX6.
- (TARGET_CPU_CPP_BUILTINS): Likewise.
- (TARGET_IRIX): Removed.
- * config/mips/t-iris6 (MULTILIB_OPTIONS): Removed mabi=32.
- (MULTILIB_DIRNAMES): Removed 32.
- (MULTILIB_OSDIRNAMES): Removed ../lib.
- * doc/install.texi (Prerequisites): Don't reference IRIX before 6.5.
- (Specific, mips-sgi-irix5): Document removal.
- (Specific, mips-sgi-irix6): Document IRIX 6.[0-4] and O32 ABI removal.
- Remove references to older IRIX 6 releases and the O32 ABI.
-
-2010-05-06 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/43994
- * df-problems.c (dead_debug_insert_before): Use *DF_REF_REAL_LOC
- instead of DF_REF_REAL_REG.
-
-2010-05-06 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR target/43888
- * config/i386/winnt.c (i386_pe_binds_local_p): Tweak weak symbol
- handling to still return true for x64 targets.
-
-2010-05-06 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * config/m68k/uclinux.h (LIB_SPEC): Bring in sync with config/linux.h.
-
-2010-05-06 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/43791
- * ipa-inline.c (update_caller_keys): Remove bogus
- disregard_inline_limits check.
-
-2010-05-06 Michael Matz <matz@suse.de>
-
- PR tree-optimization/43984
- * tree-ssa-pre.c (inserted_phi_names): Remove.
- (inserted_exprs): Change to bitmap.
- (create_expression_by_pieces): Set bits, don't append to vector.
- (insert_into_preds_of_block): Don't handle inserted_phi_names.
- (eliminate): Don't look at inserted_phi_names, remove deleted
- insns from inserted_exprs.
- (remove_dead_inserted_code): Adjust to use bitmaps instead of vectors.
- (init_pre, fini_pre): Allocate and free bitmaps.
- (execute_pre): Insert insns on edges before elimination.
-
-2010-05-06 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * tree.c (initializer_zerop): Handle STRING_CST.
-
-2010-05-06 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR 40989
- * doc/invoke.texi (Wimplicit): Document as C only.
- * opts.c (common_handle_option): Add argument kind.
- (handle_option): Rename as read_cmdline_option. Factor out code to...
- (handle_option): ... here. New.
- (handle_options): Rename as read_cmdline_options.
- (decode_options): Update call.
- (set_option): Use option index instead of option pointer. Classify
- diagnostics correctly.
- (enable_warning_as_error): Call handle_option.
- * opts.h (set_option): Update declaration.
- (handle_option): Declare.
- * langhooks.h (struct lang_hooks): Add argument kind to handle_option.
- * c.opt (Wimplicit,Wimplicit-int): Initialize to -1.
- * c-opts.c (set_Wimplicit): Delete.
- (c_family_lang_mask): New static constant.
- (c_common_handle_option): Add argument kind. Use handle_option
- instead of set_Wimplicit.
- (c_common_post_options): warn_implicit and warn_implicit_int
- are disabled by default.
- * c-common.c (warn_implicit): Do not define here.
- * c-common.h (warn_implicit): Do not declare here.
- (c_common_handle_option): Update declaration.
- * lto-opts.c (lto_reissue_options): Update call to set_option.
-
-2010-05-06 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43571
- * domwalk.c (walk_dominator_tree): Walk the dominator
- sons in more optimal order.
-
-2010-05-06 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43934
- * tree-ssa-loop-im.c (movement_possibility): Handle PHI nodes.
- (stmt_cost): Likewise.
- (extract_true_false_args_from_phi): New helper.
- (determine_max_movement): For PHI nodes verify we can hoist them
- and compute their cost.
- (determine_invariantness_stmt): Handle PHI nodes.
- (move_computations_stmt): Likewise. Hoist PHI nodes in
- if-converted form using COND_EXPRs.
- (move_computations): Return TODO_cleanup_cfg if we hoisted PHI nodes.
- (tree_ssa_lim): Likewise.
- * tree-flow.h (tree_ssa_lim): Adjust prototype.
- * tree-ssa-loop.c (tree_ssa_loop_im): Return todo.
-
-2010-05-06 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43987
- * tree-ssa-structalias.c (could_have_pointers): For possibly
- address-taken variables force pointers to be recorded.
- (create_variable_info_for_1): Likewise.
- (push_fields_onto_fieldstack): Pass in wheter all fields
- must have pointers.
- (find_func_aliases): Query types instead of vars whether
- they contain pointers where appropriate.
-
-2010-05-06 Jan Hubicka <jh@suse.cz>
-
- * cgraphbuild.c (record_reference_ctx): Add varpool_node.
- (record_reference, mark_address, mark_load, mark_store): Record
- references.
- (record_references_in_initializer): Update call of record_references.
- (rebuild_cgraph_edges): Remove all references before rebuiding.
- * cgraph.c (cgraph_create_node): Clear ref list.
- (cgraph_remove_node): Remove references.
- (dump_cgraph_node): Dump references.
- (cgraph_clone_node): Clone references.
- * cgraph.h: Include ipa-ref.h and ipa-ref-inline.h
- (struct cgraph_node, varpool_node): Add ref_lst.
- * ipa-ref.c: New file.
- * ipa-ref.h: New file.
- * ipa-ref-inline.h: New file.
- * lto-cgraph.c (output_varpool): Take cgrag node set argument.
- (referenced_from_other_partition_p): New function.
- (lto_output_varpool_node): Take set arugment; call
- referenced_from_other_partition.
- (lto_output_ref): New.
- (add_references): New.
- (output_refs): New.
- (output_cgraph): Compute boundary based on references; output refs.
- (output_varpool): Accept cgraph_node_set argument.
- (input_ref): New.
- (input_refs): New.
- (input_cgraph): Call input_refs.
- * lto-section-in.c (lto_section_name): Add refs.
- * Makefile.in (cgraph.h): Include ipa-ref.h and ipa-ref-inline.h
- (ipa-ref.o): New file.
- * varpool.c (varpool_node): Clear ipa ref list.
- (varpool_remove_node): Remove references.
- (dump_varpool_node): Dump references.
- (varpool_assemble_decl): Only compile finalized ones.
- (varpool_extra_name_alias): Initialize ref list.
- * lto-streamer.c (lto-get_section_name): Add .refs section.
- * lto-streamer.h (lto_section_type): Add LTO_section_refs.
- (referenced_from_other_partition_p): Declared.
-
-2010-05-06 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/43901
- * tree-vect-stmts.c (vectorizable_call): Assert that vector
- type is not NULL if it's transformation phase, and return
- FALSE if it's analysis.
- (vectorizable_conversion, vectorizable_operation,
- vectorizable_type_demotion, vectorizable_type_promotion): Likewise.
-
-2010-05-05 Andrew Pinski <andrew.pinski@caviumnetworks.com>
-
- * config/mips/mips.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P):
- Delete.
- * config/mips/mips.c (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P):
- New define.
- * config/mips/mips-protos.h
- (mips_small_register_classes_for_mode_p): Delete prototype.
-
-2010-05-06 Bernd Schmidt <bernds@codesourcery.com>
-
- * config/arm/arm.h (MAX_LDM_STM_OPS): New macro.
- * config/arm/arm.c (multiple_operation_profitable_p,
- compute_offset_order): New static functions.
- (load_multiple_sequence, store_multiple_sequence): Use them.
- Replace constant 4 with MAX_LDM_STM_OPS. Compute order[0] from
- memory offsets, not register numbers.
- (emit_ldm_seq, emit_stm_seq): Replace constant 4 with MAX_LDM_STM_OPS.
-
-2010-05-05 Steven Bosscher <steven@gcc.gnu.org>
-
- * stor-layout.c (pending_sizes): Change the type to VEC(tree,gc) *.
- (get_pending_sizes, put_pending_size, put_pending_sizes):
- Update the uses of pending_sizes.
- * c-decl.c (store_parm_decls): Likewise.
- * c-tree.h (struct c_arg_info): Likewise.
- * tree.h: Update the prototype for get_pending_sizes and
- put_pending_sizes.
-
-2010-05-05 Jason Merrill <jason@redhat.com>
-
- PR debug/43370
- * c-common.c (handle_aligned_attribute): Respect
- ATTR_FLAG_TYPE_IN_PLACE.
-
- PR testsuite/43758
- * target.h (struct gcc_target): Add attribute_takes_identifier_p.
- * target_def.h (TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define.
- (TARGET_INITIALIZER): Use it.
- * c-common.c (attribute_takes_identifier_p): Call it.
- * c-common.h: Update prototype.
- * config/rs6000/rs6000.c (rs6000_attribute_takes_identifier_p): New.
- (TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define.
-
-2010-05-05 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43950
- * dwarf2out.c (gen_compile_unit_die): Add DW_AT_identifier_case
- DW_ID_down_case for Fortran compilation units.
-
-2010-05-05 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (lto_output_varpool_node, input_varpool_node): Correctly
- handle aliases.
-
-2010-05-05 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimplify.c (gimplify_return_expr): Gimplify the size expressions of
- a variable-sized RESULT_DECL.
-
-2010-05-05 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * doc/invoke.texi (-mfix-cortex-m3-ldrd): Move from ARC section to ARM.
-
-2010-05-05 Jason Merrill <jason@redhat.com>
-
- PR c++/43787
- * gimplify.c (gimplify_expr): Keep working if gimplify_modify_expr
- returns GS_OK.
- (gimplify_modify_expr_rhs): Return GS_OK if anything changed.
-
-2010-05-05 Alexandre Oliva <aoliva@redhat.com>
- Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43478
- * df-problems.c (struct dead_debug_use, struct dead_debug): New.
- (dead_debug_init, dead_debug_finish): New functions.
- (dead_debug_add, dead_debug_insert_before): Likewise.
- (df_note_bb_compute): Initialize a dead_debug object, add dead
- debug uses to it, insert debug bind insns before death insns,
- reset debug insns that refer to pending uses at the end.
- * rtl.h (make_debug_expr_from_rtl): New prototype.
- * varasm.c (make_debug_expr_from_rtl): New function.
-
-2010-05-05 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (output_varpool): Forward declare; work on encoder.
- (lto_varpool_encoder_new, lto_varpool_encoder_delete,
- lto_varpool_encoder_encode, lto_varpool_encoder_lookup,
- lto_varpool_encoder_deref, lto_varpool_encoder_size,
- lto_varpool_encoder_encode_initializer_p,
- lto_set_varpool_encoder_encode_initializer): New functions.
- (lto_output_cgraph): Take vset parameter too; compute varpool encoder;
- call output_varpool.
- (input_varpool_node): Do not always set analyzed.
- (input_cgraph_1): Return vector of cgraph nodes.
- (input_varpool_1): Return vector of varpools.
- (input_cgraph): Free the vectors.
- * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
- output only initializers needed.
- (lto_output): Only call output_cgraph.
- (produce_asm_for_decls): Call lto_varpool_encoder_delete.
- * lto-section-out.c (lto_new_out_decl_state): Initialize
- state->varpool_node_encoder.
- * lto-streamer.h (lto_varpool_encoder_d): New.
- (lto_out_decl_state, lto_file_decl_data): Add varpool_node_encoder.
- (lto_cgraph_encoder_delete, output_cgraph): Update prototype.
- (lto_varpool_encoder_deref, lto_varpool_encoder_lookup,
- lto_varpool_encoder_encode, lto_varpool_encoder_delete,
- lto_varpool_encoder_encode_initializer_p, lto_varpool_encoder_new):
- Declare.
- (output_varpool, input_varpool): Remove declarations.
-
-2010-05-05 Jan Hubicka <jh@suse.cz>
-
- * lto-symtab.c (lto_symtab_resolve_can_prevail_p): Alias of variable
- with body can prevail.
-
-2010-05-05 Jan Hubicka <jh@suse.cz>
-
- * lto-symtab.c (lto_symtab_merge_decls_1): Prefer declarations with
- size.
-
-2010-05-05 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * Makefile.in (build/gengtype.o): Add $(HASHTAB_H) to dependencies.
-
- * gengtype.h (erro_at_line): Constify pos argument.
-
- * gengtype.c: Include hashtab.h.
- (enum gc_used): Document GC_MAYBE_POINTED_TO.
- (error_at_line): Constify pos argument.
- (do_typedef): Initialize p->opt field.
- (get_file_gtfilename): Fix comment typo.
- (struct walk_type_data): Constify line field.
- (get_output_file_for_structure): New function.
- (write_local_func_for_structure): Constify orig_s argument.
- Use get_output_file_for_structure.
- (write_func_for_structure): Use get_output_file_for_structure.
- (INDENT): New define.
- (dump_pair, dump_type, dump_type_list, dump_typekind)
- (dump_gc_used, dump_options, dump_fileloc, dump_type_u_s)
- (dump_type_u_a, dump_type_u_param_struct, dump_everything): New
- functions.
- (seen_types): New variable.
- (main): New variable do_dump. Process "-d" command line option.
- Call dump_everything if dump requested.
-
-2010-05-05 Jakub Jelinek <jakub@redhat.com>
-
- * var-tracking.c (var_debug_decl): Save DECL_DEBUG_EXPR value
- in a temporary instead of invoking the macro multiple times.
- (track_expr_p): Likewise.
-
-2010-05-04 Neil Vachharajani <nvachhar@google.com>
-
- * doc/invoke.texi (-Wcoverage-mismatch): Updated documentation as
- per new semantics.
- * opts.c (decode_options): Enable -Werror=coverage-mismatch.
- * coverage.c (get_coverage_counts): Always emit a warning. Adjust
- conditions for printing notes.
- * common.opt (-Wcoverage-mismatch): Allow negative, default to
- true, update documentation.
- * Makefile.in (coverage.o): Add dependence on DIAGNOSTIC_H and intl.h.
-
-2010-05-04 Jakub Jelinek <jakub@redhat.com>
-
- PR c/43981
- * c-parser.c (c_parser_direct_declarator_inner): Call mark_exp_read
- on dimen.
-
-2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/43799
- * config/i386/i386.md (sse_prologue_save): Clobber CC register.
- (*sse_prologue_save_insn1): Likewise.
- (SSE prologue save splitter): Likewise.
-
-2010-05-04 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree.c (free_lang_data_in_one_sizepos): New inline function.
- (free_lang_data_in_type): Call it on TYPE_{MIN|MAX}_VALUE of numerical
- types. Call it on TYPE_SIZE and TYPE_SIZE_UNIT of all types.
- (free_lang_data_in_decl): Call it on DECL_SIZE and DECL_SIZE_UNIT of
- all decls. Call it on DECL_FIELD_OFFSET of fields.
- (find_decls_types_r): Follow DECL_VALUE_EXPR.
- (iterative_hash_expr) <PLACEHOLDER_EXPR>: New case.
-
-2010-05-04 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (build_access_from_expr_1): The first parameter type
- changed to simple tree.
- (build_access_from_expr): Likewise, gsi parameter was eliminated.
- (scan_assign_result): Renamed to assignment_mod_result, enum elements
- renamed as well.
- (build_accesses_from_assign): Removed all parameters except for a
- simple gimple statement. Now returns a simple bool.
- (scan_function): All non-analysis parts moved to separate functions
- sra_modify_function_body and ipa_sra_modify_function_body. Removed all
- parameters and updated both callers.
- (sra_modify_expr): Removed parameter data.
- (sra_modify_function_body): New function.
- (perform_intra_sra): Call sra_modify_function_body to modify the
- function body.
- (replace_removed_params_ssa_names): Parameter data changed into
- adjustments vector.
- (sra_ipa_modify_expr): Likewise. Also removed unused parameter gsi and
- changed the parameter dont_convert to convert with the opposite
- meaning.
- (sra_ipa_modify_assign): Parameter data changed into adjustments
- vector, return value changed to bool.
- (ipa_sra_modify_function_body): New function.
- (sra_ipa_reset_debug_stmts): Updated a comment.
- (modify_function): Use ipa_sra_modify_function_body to modify function
- body.
-
-2010-05-04 H.J. Lu <hongjiu.lu@intel.com>
-
- PR middle-end/43671
- * alias.c (true_dependence): Handle the same VALUE in x and mem.
- (canon_true_dependence): Likewise.
- (write_dependence_p): Likewise.
-
-2010-05-04 Jan Hubicka <jh@suse.cz>
-
- * Makefile.in (cgraphbuild.o): Add dependency on ipa-utils.h
- * cgraphbuild.c: Include ipa-utils.h
- (record_reference_ctx): New struct.
- (record_reference): Simplify to work on initializers; not statements.
- (mark_address, mark_load, mark_store): New.
- (build_cgraph_edges): Simplify using walk_stmt_load_store_addr_ops;
- walk PHI nodes too.
- (record_references_in_initializer): Update use of record_reference.
- (rebuild_cgraph_edges): Simplify using walk_stmt_load_store_addr_ops;
- walk PHI nodes too.
-
-2010-05-04 Jan Hubicka <jh@suse.cz>
-
- * lto-symtab.c (lto_cgraph_replace_node): Do not remove edges;
- node will be removed anyway.
- (lto_varpool_replace_node): Allow also unanalyzed nodes;
- relink aliases of node into prevailing node.
- * varpool.c (varpool_remove_node): Remove aliases properly;
- when removing node, remove all its aliases too; remove DECL_INITIAL
- of removed node; ggc_free the varpool node.
-
-2010-05-04 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43879
- * tree-ssa-structalias.c (alias_get_name): Use
- DECL_ASSEMBLER_NAME if available.
- (create_function_info_for): Return the varinfo node.
- (ipa_pta_execute): Associate same-body aliases and extra names
- with their origin nodes varinfo. Dump DECL_ASSEMBLER_NAME.
-
-2010-05-04 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.c (sh_small_register_classes_for_mode_p): Remove static.
-
-2010-05-04 Mikael Pettersson <mikpe@it.uu.se>
-
- PR bootstrap/43964
- * ira-color.c (assign_hard_reg): Declare rclass and add_cost
- only if HONOR_REG_ALLOC_ORDER is not defined.
-
-2010-05-04 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43949
- * tree-vrp.c (extract_range_from_binary_expr): Only handle
- TRUNC_MOD_EXPR.
-
-2010-04-26 Jason Merrill <jason@redhat.com>
-
- * c.opt (-fstrict-enums): New.
- * doc/invoke.texi (C++ Dialect Options): Document -fstrict-enums.
-
-2010-05-03 David Ung <davidu@mips.com>
- James E. Wilson <wilson@codesourcery.com>
-
- * config/mips/mips.c (mips_output_division): If GENERATE_DIVIDE_TRAPS,
- emit the trap instruction before the divide for TUNE_74K.
-
-2010-05-03 Steven Bosscher <steven@gcc.gnu.org>
-
- * doc/tm.texi (defmac SMALL_REGISTER_CLASSES): Remove.
- (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): Add documentation,
- based on the above, for new target hook.
-
- * hooks.c (hook_bool_mode_true): New generic hook.
- * hooks.h (hook_bool_mode_true): Add prototype.
-
- * target.h (struct gcc_target): Add small_register_classes_for_mode_p
- target hook.
- * target-def.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): New default
- target hook, set to hook_bool_mode_false.
- * regs.h: Remove default definition of SMALL_REGISTER_CLASSES.
- * reload.c (push_secondary_reload): Replace SMALL_REGISTER_CLASSES
- with targetm.small_register_classes_for_mode_p.
- (find_reusable_reload): Likewise.
- (combine_reloads): Likewise.
- * reload1.c (reload_as_needed): Likewise.
- * cse.c (approx_reg_cost_1, hash_rtx_cb): Likewise.
- * ifcvt.c (noce_process_if_block, check_cond_move_block,
- dead_or_predicable): Likewise.
- * regmove.c (optimize_reg_copy_1): Likewise.
- * calls.c (prepare_call_address): Likewise.
- (precompute_register_parameters): Likewise.
-
- * config/sh/sh.h: Replace SMALL_REGISTER_CLASSES with new target
- hook definition.
- * config/sh/sh.c (sh_small_register_classes_for_mode_p): Add
- implementation of the hook that considers all register classes
- small except for SH64.
- (sh_override_options): Use the new hook.
- * config/sh/sh-protos.h (sh_small_register_classes_for_mode_p):
- Add prototype.
-
- * config/arm/arm.h: Replace SMALL_REGISTER_CLASSES with new target
- hook definition.
- * config/arm/arm.c (arm_small_register_classes_for_mode_p): Add
- implementation of the hook that considers all register classes
- small for THUMB1.
- * config/arm/arm-protos.h (arm_small_register_classes_for_mode_p):
- Add prototype.
-
- * config/mips/mips.h: Replace SMALL_REGISTER_CLASSES with new target
- hook definition.
- * config/mips/mips.c (mips_small_register_classes_for_mode_p): Add
- implementation of the hook that considers all register classes
- small for MIPS16.
- * config/mips/mips-protos.h (mips_small_register_classes_for_mode_p):
- Add prototype.
-
- * config/i386/i386.h: Replace SMALL_REGISTER_CLASSES with new target
- hook definition.
- * config/m32c/m32c.h: Likewise.
- * config/pdp11/pdp11.h: Likewise.
- * config/avr/avr.h: Likewise.
- * config/xtensa/xtensa.h: Likewise.
- * config/m68hc11/m68hc11.h: Likewise.
- * config/mn10300/mn10300.h: Likewise.
- * config/mcore/mcore.h: Likewise.
- * config/h8300/h8300.h: Likewise.
- * config/bfin/bfin.h: Likewise.
-
- * config/iq2000/iq2000.h: Remove SMALL_REGISTER_CLASSES definition.
- * config/rx/rx.h: Remove SMALL_REGISTER_CLASSES definition.
-
-2010-05-03 Anatoly Sokolov <aesok@post.ru>
-
- * double-int.h (tree_to_double_int): Remove macro.
- (double_int_to_tree, double_int_fits_to_tree_p): Move prototypes ...
- * tree.h (double_int_to_tree, double_int_fits_to_tree_p): ... here.
- (tree_to_double_int): New function.
- * double-int.c (double_int_to_tree, double_int_fits_to_tree_p):
- Move ...
- * tree.c (double_int_to_tree, double_int_fits_to_tree_p): ... here.
-
-2010-05-03 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43971
- * tree-ssa-structalias.c (get_constraint_for_1): Fix
- constraints in the !flag_delete_null_pointer_checks case.
-
-2010-05-03 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43972
- * config/i386/i386.c (ix86_delegitimize_address): Make sure the
- result mode matches original rtl mode.
-
-2010-05-03 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR target/43888
- * config/i386/winnt.c (i386_pe_binds_local_p): Handle weak decls.
-
-2010-05-02 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.c (ix86_target_string): Output 'flags', not 'isa',
- when processing flag options.
-
-2010-05-02 Uros Bizjak <ubizjak@gmail.com>
-
- * gcov-iov.c (main): Change format string placeholder
- from %#08x to 0x%08x.
- * genchecksum.c (dosum): Change format string placeholder
- from %#02x to 0x%02x.
-
-2010-05-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43879
- * tree-tailcall.c (find_tail_calls): Clobbers also prevent tail calls.
-
-2010-05-02 Bruno Haible <bruno@clisp.org>
-
- * doc/extend.texi (Function Attributes): Fix a typo.
-
-2010-05-02 Uros Bizjak <ubizjak@gmail.com>
-
- Revert:
- * hwint.h (HOST_WIDE_INT_PRINT_DOUBLE_HEX): Change format string
- placeholder from 0x%x to %#x.
- (HOST_WIDEST_INT_PRINT_DOUBLE_HEX): Ditto.
- * config/i386/i386elf.h (ASM_OUTPUT_ASCII): Ditto.
- * config/i386/i386-interix.h (ASM_OUTPUT_ASCII): Ditto.
- * config/i386/att.h (ASM_OUTPUT_ASCII): Ditto.
- * config/i386/sysv4.h (ASM_OUTPUT_ASCII): Ditto.
- * config/i386/i386.c (ix86_target_string): Ditto.
- * config/i386/i386.c (output_pic_addr_const): Ditto.
- (print_operand): Ditto.
-
-2010-05-02 Uros Bizjak <ubizjak@gmail.com>
-
- * vmsdbgout.c (ASM_OUTPUT_DEBUG_DATA1): Change format string
- placeholder from 0x%x to %#x.
- (ASM_OUTPUT_DEBUG_DATA1): Ditto.
- (ASM_OUTPUT_DEBUG_DATA4): Ditto.
- (ASM_OUTPUT_DEBUG_DATA): Ditto.
- (ASM_OUTPUT_DEBUG_ADDR_DATA): Ditto.
- (ASM_OUTPUT_DEBUG_DATA8): Ditto.
- * optc-gen.awk: Ditto.
- * hwint.h (HOST_WIDE_INT_PRINT_DOUBLE_HEX): Ditto.
- (HOST_WIDE_INT_PRINT_HEX): Ditto.
- (HOST_WIDEST_INT_PRINT_HEX): Ditto.
- (HOST_WIDEST_INT_PRINT_DOUBLE_HEX): Ditto.
-
-2010-05-01 Anatoly Sokolov <aesok@post.ru>
-
- * target.h (struct calls): Add function_value_regno_p field.
- * target-def.h (TARGET_FUNCTION_VALUE_REGNO_P): Define.
- (TARGET_INITIALIZER): Use TARGET_FUNCTION_VALUE_REGNO_P.
- * targhooks.c (default_function_value_regno_p): New function.
- * targhooks.h (default_function_value_regno_p): Declare function.
- * rtlanal.c (keep_with_call_p): Use function_value_regno_p hook.
- * builtins.c. (apply_result_size): (Ditto.).
- * combine.c. (likely_spilled_retval_p): (Ditto.).
- * mode-switching.c. Include 'target.h'.
- (create_pre_exit): Use function_value_regno_p hook.
- * Makefile.in (mode-switching.o): Add dependency on TARGET_H.
- * doc/tm.texi (FUNCTION_VALUE_REGNO_P,
- TARGET_FUNCTION_VALUE_REGNO_P): Revise documentation.
-
- * config/i386/i386.h (TARGET_FUNCTION_VALUE_REGNO_P): Remove macro.
- * config/i386/i386.c (TARGET_FUNCTION_VALUE_REGNO_P): Define macro.
- (ix86_function_value_regno_p): Declare as static, change argument
- type to const unsigned int.
- * config/i386/i386-protos.h (ix86_function_value_regno_p): Remove.
-
-2010-05-01 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43949
- * tree-vrp.c (ssa_name_nonnegative_p): Return true for unsigned
- types.
- (extract_range_from_binary_expr): Handle *_MOD_EXPR.
-
-2010-05-01 Anatoly Sokolov <aesok@post.ru>
-
- * rtl.h (CONST_DOUBLE_P): Define.
- (rtx_to_double_int): Declare.
- * emit-rtl.c (rtx_to_double_int): New function.
- * dwarf2out.c (insert_double): New function.
- (loc_descriptor, add_const_value_attribute): Clean up, use
- rtx_to_double_int and insert_double functions.
-
-2010-05-01 Jonathan Wakely <jwakely.gcc@gmail.com>
-
- * doc/extend.texi (Inline): Add missing return keyword to examples.
- (Function Attributes, Variable Attributes, Pragmas): Hyphenate
- "command-line".
-
-2010-04-30 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-ssa-loop-ivopts.c (may_be_unaligned_p): Check the alignment of
- the variable part of the offset as well. Use highest_pow2_factor for
- all alignment checks.
-
-2010-04-30 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43879
- * tree-ssa-structalias.c (type_could_have_pointers): Functions
- can have pointers.
-
-2010-04-30 Jan Hubicka <jh@suse.cz>
-
- * lto-symtab.c (lto_symtab_resolve_can_prevail_p): Chose var with
- varpool.
- (lto_symtab_merge_decls_1): Remove logic looking for an initializer.
-
-2010-04-30 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (cgraph_node_set_nonempty_p, varpool_node_set_nonempty_p):
- New.
- * lto-cgraph.c (input_cgraph): Remove call to lto_mark_file_for_ltrans.
- * lto-streamer.h (lto_file_decl_data): Remove needs_ltrans_p.
- (lto_file_needs_ltrans_p, lto_mark_file_for_ltrans,
- cgraph_node_set_needs_ltrans_p): Remove.
-
-2010-04-30 Steven Bosscher <steven@gcc.gnu.org>
-
- * sdbout.c: Include vec.h, do not include varray.h.
- (deferred_global_decls, sdbout_global_decl,
- sdbout_finish, sdbout_init): Use VEC instead of VARRAY.
- * toplev.c: Do not include varray.h.
- (dump_memory_report): Do not dump VARRAY statistics.
- * gengtype.c (open_base_file): Ignore varray.h.
- * Makefile.in: Update for abovementioned changes.
- Remove all traces of varray.c and varray.h.
- * varray.c: Remove file.
- * varray.h: Remove file.
-
-2010-04-30 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (lto_output_varpool_node): Always output constant pool
- references.
-
-2010-04-30 Jan Hubicka <jh@suse.cz>
-
- * tree-profile.c (tree_init_ic_make_global_vars): Mark new decls as
- needed.
-
-2010-04-30 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (get_constraint_for_1): Generate
- constraints for CONSTRUCTOR.
-
-2010-04-30 Richard Guenther <rguenther@suse.de>
-
- PR lto/43946
- * passes.c (init_optimization_passes): Move pass_ipa_free_lang_data
- first after all lowering passes.
-
-2010-04-30 Steven Bosscher <steven@gcc.gnu.org>
-
- * toplev.c: Include varray.h for statistics dumping.
- * tree.h: Do not declare varray_head_tag.
- * tree-into-ssa.c, tree-ssa-uninit.c, tree-phinodes.c, omega.c,
- regs.h, lto-cgraph.c, tree-ssa-loop-ivopts.c, tree-nomudflap.c,
- c-objc-common.c, lto-streamer-out.c, tree-ssa-propagate.c,
- gimple-low.c, c-semantics.c, dwarf2out.c, lto-streamer-in.c,
- lto-section-in.c, alias.c, tree-if-conv.c, gimplify.c, ggc-zone.c,
- tree-ssa.c, tree-ssa-loop-prefetch.c, integrate.h, c-gimplify.c,
- c-common.c, c-common.h, reg-stack.c, basic-block.h,
- tree-ssa-structalias.c, lto-section-out.c, tree-ssanames.c: Do not
- include varray.h.
- * Makefile.in: Update for abovementioned changes.
-
-2010-04-30 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43942
- * tree.c (auto_var_in_fn_p): Return false for DECL_EXTERNAL vars.
-
-2010-04-30 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.c (picochip_legitimize_address): Define.
- Use this function to do machine-specific conversion.
- (picochip_legitimize_reload_address): Likewise.
- (picochip_legitimate_address_p): Check valid base register only if
- strict.
- (picochip_check_conditional_copy): Check for modw only if opnd is
- register.
- * config/picochip/picochip.h (LEGITIMIZE_RELOAD_ADDRESS): Use this
- to call the function in c.
- * config/picochip/picochip-protos.h
- (picochip_legitimize_reload_address): Define.
- * config/picochip/picochip.md (supported_compare1): Define.
-
-2010-04-30 Jan Hubicka <jh@suse.cz>
-
- * cgraph.h (cgraph_local_info): Remove for_functions_valid.
- (cgraph_global_info): Remove inlined.
- (LTO_cgraph_tag_names): Remove.
- (LTO_cgraph_tags, LCC_NOT_FOUND): Move to ...
- * lto-cgraph.c (LTO_cgraph_tags, LCC_NOT_FOUND): ... here;
- simplify cgraph tags and document.
- (lto_output_node): Use only LTO_cgraph_unavail_node and
- LTO_cgraph_analyzed_node; Do not save analzed, reachable,
- for_functions_valid, global info, process and output flags.
- (input_overwrite_node): Initialize estimated stack size and
- estimated growth. Do not read flags we no longer store.
- (input_node): Likewise do not read info no longer stored.
- * ipa-inline.c (cgraph_mark_inline_edge): Do not set global.inlined
- flag.
-
-2010-04-30 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43879
- * tree-ssa-structalias.c (get_constraint_for_1): Properly
- handle non-zero initializers.
-
-2010-04-30 Richard Guenther <rguenther@suse.de>
-
- * builtins.c (fold_builtin_1): Delete free (0).
-
-2010-04-29 Jan Hubicka <jh@suse.cz>
-
- * gengtype.c (open_base_files): Add lto-streamer.h
- * cgraph.h (cgraph_local_info): lto_file_data is now in GGC.
- (pass_ipa_cp): GGC collect.
- * toplev. (compile_file): Do not output symbols.
- * ipa-inline.c (pass_ipa_inline): Add ggc collect.
- * timevar.def (TV_VARPOOL, TV_IPA_LTO_DECL_INIT_IO,
- TV_IPA_LTO_DECL_MERGE, TV_IPA_LTO_CGRAPH_MERGE, TV_VAROUT): New.
- * lto-section-in.c: Include ggc.h
- (lto_new_in_decl_state): Alloc in GGC.
- (lto_delete_in_decl_state): Likewise.
- * ipa.c (pass_ipa_function_visibility, pass_ipa_whole_program):
- Collect.
-
-2010-04-29 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/42895
- * doc/tm.texi (ADJUST_REG_ALLOC_ORDER): Renamed from
- ORDER_REGS_FOR_LOCAL_ALLOC. All instances of this macro changed.
- (HONOR_REG_ALLOC_ORDER): Describe new macro.
- * ira.c (setup_alloc_regs): Use ADJUST_REG_ALLOC_ORDER if defined.
- * ira-color.c (assign_hard_reg): Take prologue/epilogue costs into
- account only if HONOR_REG_ALLOC_ORDER is not defined.
- * config/arm/arm.h (HONOR_REG_ALLOC_ORDER): Define.
- * system.h (ORDER_REGS_FOR_LOCAL_ALLOC): Poison.
-
-2010-04-29 Jon Grant <04@jguk.org>
-
- * collect2.c (vflag): Change type from int to bool.
- (debug): Likewise.
- (helpflag): New global bool.
- (main): Set vflag and debug with boolean, not integer truth values.
- Accept new "--help" option and output usage text if found.
- * collect2.h (vflag): Update prototype.
- (debug): Likewise.
-
-2010-04-29 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/43936
- * plugin.h (flag_plugin_added): Moved out of invoke_plugin_callbacks.
-
-2010-04-29 Richard Guenther <rguenther@suse.de>
-
- PR bootstrap/43935
- * plugin.h (invoke_plugin_callbacks): Annotate arguments
- with ATTRIBUTE_UNUSED.
-
-2010-04-29 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/43921
- * config/i386/i386.c (get_some_local_dynamic_name): Replace
- INSN_P with NONDEBUG_INSN_P.
- (distance_non_agu_define): Likewise.
- (distance_agu_use): Likewise.
-
-2010-04-29 Bernd Schmidt <bernds@codesourcery.com>
-
- From Dominique d'Humieres <dominiq@lps.ens.fr>
- PR bootstrap/43858
- * ifcvt.c (dead_or_predicable): Use df_simulate_find_defs to compute
- test_set.
-
-2010-04-29 Brian Hackett <bhackett1024@gmail.com>
-
- * plugin.h (invoke_plugin_callbacks): New inline function.
- * plugin.c (flag_plugin_added): New global flag.
- (add_new_plugin): Initialize above flag.
- (invoke_plugin_callbacks): Rename to ...
- (invoke_plugin_callbacks_full): ... this.
-
-2010-04-28 Jan Hubicka <jh@suse.cz>
-
- * lto-symtab.c (lto_symtab_entry_def) Add vnode.
- (lto_varpool_replace_node): New.
- (lto_symtab_resolve_symbols): Resolve varpool nodes.
- (lto_symtab_merge_decls_1): Prefer decls with varpool node.
- (lto_symtab_merge_cgraph_nodes_1): Merge varpools.
- * cgraph.h (varpool_node_ptr): New type.
- (varpool_node_ptr): New vector.
- (varpool_node_set_def): New structure.
- (varpool_node_set): New type.
- (varpool_node_set): New vector.
- (varpool_node_set_element_def): New structure.
- (varpool_node_set_element, const_varpool_node_set_element): New types.
- (varpool_node_set_iterator): New type.
- (varpool_node): Add prev pointers, add used_from_other_partition,
- in_other_partition.
- (varpool_node_set_new, varpool_node_set_find, varpool_node_set_add,
- varpool_node_set_remove, dump_varpool_node_set, debug_varpool_node_set,
- varpool_get_node, varpool_remove_node): Declare.
- (vsi_end_p, vsi_next, vsi_node, vsi_start, varpool_node_in_set_p,
- varpool_node_set_size): New inlines.
- * cgraph.c (dump_cgraph_node): Dump asm names of aliases.
- * tree-pass.h (varpool_node_set_def): Forward declare.
- (ipa_opt_pass_d): Summary writting takes vnode sets too.
- (ipa_write_optimization_summaries): Update prototype.
- * ipa-cp.c (ipcp_write_summary): Update.
- * ipa-reference.c (ipa_reference_write_summary): Update.
- * lto-cgraph.c (lto_output_varpool_node): New static function.
- (output_varpool): New function.
- (input_varpool_node): New static function.
- (input_varpool_1): New function.
- (input_cgraph): Input varpool.
- * ipa-pure-const.c (pure_const_write_summary): Update.
- * lto-streamer-out.c (lto_output): Update, output varpool too.
- (write_global_stream): Kill WPA hack.
- (produce_asm_for_decls): Update.
- (output_alias_pair_p): Handle variables.
- (output_unreferenced_globals): Output only needed partition of varpool.
- * ipa-inline.c (inline_write_summary): Update.
- * lto-streamer-in.c (lto_input_tree_ref, lto_input_tree): Do not build
- cgraph.
- * lto-section-in.c (lto_section_name): Add varpool and jump funcs.
- * ipa.c (hash_varpool_node_set_element, eq_varpool_node_set_element,
- varpool_node_set_new, varpool_node_set_add,
- varpool_node_set_remove, varpool_node_set_find, dump_varpool_node_set,
- debug_varpool_node_set): New functions.
- * passes.c (rest_of_decl_compilation): when in LTO do not finalize.
- (execute_one_pass): Process new decls too.
- (ipa_write_summaries_2): Pass around vsets.
- (ipa_write_summaries_1): Likewise.
- (ipa_write_summaries): Build vset; be more selective about cgraph nodes
- to add.
- (ipa_write_optimization_summaries_1): Pass around vsets.
- (ipa_write_optimization_summaries): Likewise.
- * varpool.c (varpool_get_node): New.
- (varpool_node): Update doubly linked lists.
- (varpool_remove_node): New.
- (dump_varpool_node): More dumping.
- (varpool_enqueue_needed_node): Update doubly linked lists.
- (decide_is_variable_needed): Kill ltrans hack.
- (varpool_finalize_decl): Kill lto hack.
- (varpool_assemble_decl): Skip decls in other partitions.
- (varpool_assemble_pending_decls): Update doubly linkes lists.
- (varpool_empty_needed_queue): Likewise.
- (varpool_extra_name_alias): Likewise.
- * lto-streamer.c (lto_get_section_name): Add vars section.
- * lto-streamer.h (lto_section_type): Update.
- (output_varpool, input_varpool): Declare.
-
-2010-04-28 Mike Stump <mikestump@comcast.net>
-
- * config/i386/darwin.h (CC1_SPEC): Ignore -mdynamic-no-pic for now.
-
-2010-04-28 Eric Botcazou <ebotcazou@adacore.com>
-
- * lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for
- record or union type with RECORD_OR_UNION_TYPE_P predicate.
- (lto_input_ts_type_tree_pointers): Likewise.
- * lto-streamer-out.c (pack_ts_type_value_fields): Likewise.
- (lto_output_ts_type_tree_pointers): Likewise.
-
-2010-04-28 Eric Botcazou <ebotcazou@adacore.com>
-
- Uniquization of constants at the Tree level
- * tree.h (DECL_IN_CONSTANT_POOL): New macro.
- (tree_decl_with_vis): Add in_constant_pool bit, move shadowed_for_var_p
- bit to the end.
- (tree_output_constant_def): Declare.
- * gimplify.c (gimplify_init_constructor): When using block copy, first
- uniquize the constant constructor on the RHS.
- * lto-streamer-in.c (unpack_ts_decl_with_vis_value_fields): Deal with
- DECL_IN_CONSTANT_POOL flag.
- * lto-streamer-out.c (pack_ts_decl_with_vis_value_fields): Likewise.
- * varasm.c (make_decl_rtl): Deal with variables belonging to the global
- constant pool.
- (assemble_variable): Deal with symbols belonging to the tree constant
- pool.
- (get_constant_section): Add ALIGN parameter and simplify.
- (build_constant_desc): Build a VAR_DECL and attach it to the symbol.
- (assemble_constant_contents): Use the expression of the VAR_DECL.
- (output_constant_def_contents): Use the alignment of the VAR_DECL.
- (tree_output_constant_def): New global function.
- (mark_constant): Use the expression of the VAR_DECL.
- (place_block_symbol): Use the alignment of the VAR_DECL and the size of
- its expression.
- (output_object_block): Likewise and assemble the expression.
-
-2010-04-28 Eric Botcazou <ebotcazou@adacore.com>
-
- * lto-streamer.c [LTO_STREAMER_DEBUG] (tree_htab, tree_hash_entry,
- hash_tree, eq_tree): New tree hash table.
- (lto_streamer_init) [LTO_STREAMER_DEBUG]: Initialize it.
- [LTO_STREAMER_DEBUG] (lto_orig_address_map, lto_orig_address_get,
- lto_orig_address_remove): Reimplement.
-
-2010-04-28 Xinliang David Li <davidxl@google.com>
-
- PR c/42643
- * tree-ssa-uninit.c (can_skip_redundant_opnd): New function.
- (compute_uninit_opnds_pos): New function.
- (is_non_loop_exit_postdominating): New function.
- (compute_control_dep_chain): New function.
- (find_pdom): New function.
- (convert_control_dep_chain_into_preds): New function.
- (find_predicates): New function.
- (find_control_equiv_block): New function.
- (collect_phi_def_edges): New function.
- (find_def_preds): New function.
- (find_dom): New function.
- (dump_predicates): New function.
- (get_cmp_code): New function.
- (is_value_included_in): New function.
- (find_matching_predicate_in_rest_chains): New function.
- (use_pred_not_overlap_with_undef_path_pred): New function.
- (is_use_properly_guarded): New function.
- (normalize_cond_1): New function.
- (is_and_or_or): New function.
- (normalize_cond): New function.
- (is_gcond_subset_of): New function.
- (is_subset_of_any): New function.
- (is_or_set_subset_of): New function.
- (is_and_set_subset_of): New function.
- (is_norm_cond_subset_of): New function.
- (is_pred_expr_subset_of): New function.
- (is_pred_chain_subset_of): New function.
- (is_included_in): New function.
- (is_superset_of): New function.
- (find_uninit_use): New function.
- (warn_uninitialized_phi): New function.
- (compute_possibly_undefined_names): New function.
- (ssa_undefined_value_p): New function.
- (execute_late_warn_uninitialized): New function.
- * tree-ssa.c (ssa_undefined_value_p): Removed.
- (warn_uninit): Changed to extern.
- (warn_uninitialized_phi): Removed.
- (warn_uninitialized_vars): Changed to extern.
- (execute_late_warn_uninitialized): Removed
- * tree-flow.h: Add new prototypes.
- * timevar.def: Add new time variable.
- * Makefile.in: Add new build file.
-
-2010-04-28 Uros Bizjak <ubizjak@gmail.com>
-
- * config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object
- type if available.
-
-2010-04-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR target/22224
- * config/alpha/osf5.h (ASM_OUTPUT_LOCAL): Redefine.
-
-2010-04-28 Martin Jambor <mjambor@suse.cz>
-
- * cgraph.h (struct cgraph_node): New field indirect_calls.
- (struct cgraph_indirect_call_info): New type.
- (struct cgraph_edge): Removed field indirect_call. New fields
- indirect_info, indirect_inlining_edge and indirect_unknown_callee.
- (cgraph_create_indirect_edge): Declare.
- (cgraph_make_edge_direct): Likewise.
- (enum LTO_cgraph_tags): New item LTO_cgraph_indirect_edge.
- * ipa-prop.h (struct ipa_param_call_note): Removed.
- (struct ipa_node_params): Removed field param_calls.
- (ipa_create_all_structures_for_iinln): Declare.
- * cgraph.c: Described indirect edges and uids in initial comment.
- (cgraph_add_edge_to_call_site_hash): New function.
- (cgraph_edge): Search also among the indirect edges, use
- cgraph_add_edge_to_call_site_hash to add edges to the call site hash.
- (cgraph_set_call_stmt): Possibly turn an indirect edge into a direct
- one, use cgraph_add_edge_to_call_site_hash to add edges to the call
- site hash.
- (initialize_inline_failed): Assign a reason to indirect edges.
- (cgraph_create_edge_1): New function.
- (cgraph_create_edge): Moved some functionality to
- cgraph_create_edge_1.
- (cgraph_create_indirect_edge): New function.
- (cgraph_edge_remove_callee): Add an assert checking for
- non-indirectness.
- (cgraph_edge_remove_caller): Special-case indirect edges.
- (cgraph_remove_edge): Likewise.
- (cgraph_set_edge_callee): New function.
- (cgraph_redirect_edge_callee): Use cgraph_set_edge_callee.
- (cgraph_make_edge_direct): New function.
- (cgraph_update_edges_for_call_stmt_node): Do nothing only when also
- the declaration of the call statement matches.
- (cgraph_node_remove_callees): Special-case indirect edges.
- (cgraph_clone_edge): Likewise.
- (cgraph_clone_node): Clone also the indirect edges.
- (dump_cgraph_node): Dump indirect_inlining_edge flag instead of
- indirect_call, dump count of indirect_calls edges.
- * ipa-prop.c (iinlining_processed_edges): New variable.
- (ipa_note_param_call): Create indirect edges instead of
- creating notes. New parameter node.
- (ipa_analyze_call_uses): New parameter node, pass it on to
- ipa_note_param_call.
- (ipa_analyze_stmt_uses): Likewise.
- (ipa_analyze_params_uses): Pass node to ipa_analyze_stmt_uses.
- (print_edge_addition_message): Work on edges rather than on notes.
- (update_call_notes_after_inlining): Likewise, renamed to
- update_indirect_edges_after_inlining.
- (ipa_create_all_structures_for_iinln): New function.
- (ipa_free_node_params_substructures): Do not free notes.
- (ipa_edge_duplication_hook): Propagate bits within
- iinlining_processed_edges bitmap.
- (ipa_node_duplication_hook): Do not duplicate notes.
- (free_all_ipa_structures_after_ipa_cp): Renamed to
- ipa_free_all_structures_after_ipa_cp.
- (free_all_ipa_structures_after_iinln): Renamed to
- ipa_free_all_structures_after_iinln.
- (ipa_write_param_call_note): Removed.
- (ipa_read_param_call_note): Removed.
- (ipa_write_indirect_edge_info): New function.
- (ipa_read_indirect_edge_info): Likewise.
- (ipa_write_node_info): Do not stream notes, do stream information
- in indirect edges.
- (ipa_read_node_info): Likewise.
- (lto_ipa_fixup_call_notes): Removed.
- * ipa-cp.c (pass_ipa_cp): Set stmt_fixup to NULL.
- * ipa-inline.c (pass_ipa_inline): Likewise.
- * cgraphunit.c (verify_cgraph_node): Check also indirect edges.
- * cif-code.def (INDIRECT_UNKNOWN_CALL): New reason.
- * tree-inline.c (copy_bb): Removed an unnecessary double check for
- is_gimple_call.
- * tree-inline.c (get_indirect_callee_fndecl): Do not consider indirect
- edges.
- * lto-cgraph.c (output_outgoing_cgraph_edges): New function.
- (output_cgraph): Stream also indirect edges.
- (lto_output_edge): Added capability to stream indirect edges.
- (input_edge): Likewise.
- (input_cgraph_1): Likewise.
- * lto-streamer-in.c (fixup_call_stmt_edges_1): Fixup also statements
- of indirect edges.
-
-2010-04-28 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43879
- PR tree-optimization/43909
- * tree-ssa-structalias.c (struct variable_info): Add
- only_restrict_pointers flag.
- (new_var_info): Initialize it. Increment stats.total_vars here.
- (create_function_info_for): Do not increment stats.total_vars here.
- (get_function_part_constraint): Fix build with C++.
- (insert_into_field_list): Remove.
- (push_fields_onto_fieldstack): Properly merge fields.
- (create_variable_info_for): Split and simplify.
- (create_variable_info_for_1): New piece.
- (intra_create_variable_infos): Properly make restrict constraints
- from parameters.
-
-2010-04-28 Richard Guenther <rguenther@suse.de>
-
- PR c++/43880
- * tree-inline.c (copy_bind_expr): Also copy bind expr vars value-exprs.
-
-2010-04-27 Manuel López-Ibáñez <manu@gcc.gnu.org>
- Jan Hubicka <hubicka@ucw.cz>
-
- * doc/invoke.texi (-Wsuggest-attribute=const,
- -Wsuggest-attribute=pure): Document.
- * ipa-pure-const.c: Include toplev.h, intl.h and opts.h.
- (function_always_visible_to_compiler_p,
- suggest_attribute, warn_function_pure, warn_function_const):
- New functions.
- (check_call): Improve debug info.
- (analyze_function): Do not check availability.
- (add_new_function): Check availability.
- (propagate): Output warnings.
- (skip_function_for_local_pure_const): New function.
- (local_pure_const): Use it; output warnings.
- * common.opt (Wsuggest-attribute=const,
- Wsuggest-attribute=pure): New.
-
-2010-04-27 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (def_cfa_1): After DW_CFA_def_cfa_expression
- force using DW_CFA_def_cfa instead of DW_CFA_def_cfa_register
- or DW_CFA_def_cfa_offset{,_sf}.
-
-2010-04-27 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree.h: Fix truncated long macros.
-
-2010-04-27 Kai Tietz <kai.tietz@onevision.com>
-
- * collect2.c (TARGET_64BIT): Redefine to target's default.
- * tlink.c: Likewise.
- * config/i386/cygming.h (USER_LABEL_PREFIX): Define
- dependent to TARGET_64BIT and USE_MINGW64_LEADING_UNDERSCORES.
- * config/i386/i386.h (CRT_CALL_STATIC_FUNCTION): Use
- for underscoring __USER_LABEL_PREFIX__.
- * config/i386/mingw-w64.h (SUB_LINK_ENTRY): New macro.
- (SUB_LINK_ENTRY32): New.
- (SUB_LINK_ENTRY64): New.
- (LINK_SPEC): Replace entry point spec by SUB_LINK_ENTRY.
- * config/i386/mingw32 (SUB_LINK_ENTRY32): New.
- (SUB_LINK_ENTRY64): New.
- (SUB_LINK_ENTRY): New.
- (LINK_SPEC): Use SUB_LINK_ENTRY instead of hard-coded entry-point.
- (DWARF2_UNWIND_INFO): Error out for use of dw2 unwind when
- x64 target is choosen.
- * config.in (USE_MINGW64_LEADING_UNDERSCORES): New.
- * configure: Regenerated.
- * configure.ac (leading-mingw64-underscores): Option added.
-
-2010-04-27 Jan Hubicka <jh@suse.cz>
-
- * doc/invoke.texi (-fipa-profile): Document.
- * opts.c (decode_options): Enable ipa-profile at -O1.
- * timevar.def (TV_IPA_PROFILE): Define.
- * common.opt (fipa-profile): Add.
- * cgraph.c (cgraph_clone_node): Set local flag and clear vtable method
- flag for clones.
- (cgraph_propagate_frequency): Handle only local ones.
- * tree-pass.h (pass_ipa_profile): Declare.
- * ipa-profile.c (gate_profile): Use flag_ipa_profile.
- (pass_ipa_profile): Use TV_IPA_PROFILE.
- * ipa.c (ipa_profile): New function.
- (gate_ipa_profile): Likewise.
- (pass_ipa_profile): New global variable.
- * passes.c (pass_ipa_profile): New.
-
-2010-04-27 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/arm/arm.c (arm_expand_builtin): Remove redundant declaration.
-
-2010-04-27 Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/43812
- * ipa.c (dissolve_same_comdat_group_list): New function.
- (function_and_variable_visibility): Call
- dissolve_same_comdat_group_list when comdat group contains external or
- newly local nodes.
- * cgraphunit.c (verify_cgraph_node): Verify that same_comdat_group
- lists are circular and that they contain only DECL_ONE_ONLY nodes.
-
-2010-04-27 Eric Botcazou <ebotcazou@adacore.com>
-
- * varasm.c (decode_addr_const): Handle special case of INDIRECT_REF.
- (const_hash_1) <VECTOR_CST>: New case.
- (compare_constant) <VECTOR_CST>: Likewise.
- <ADDR_EXPR>: Deal with LABEL_REFs.
- (copy_constant) <VECTOR_CST>: New case.
-
-2010-04-27 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_propagate_frequency): New function.
- * cgraph.h (cgraph_propagate_frequency): Declare.
- * ipa-inline.c (cgraph_clone_inlined_nodes): Call
- cgraph_propagate_frequency.
-
-2010-04-27 Jakub Jelinek <jakub@redhat.com>
-
- * unwind-dw2.c (_Unwind_DebugHook): Add used and noclone attributes.
-
-2010-04-27 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/40657
- * config/arm/arm.c (thumb1_extra_regs_pushed): New function.
- (thumb1_expand_prologue, thumb1_output_function_prologue): Call it
- here to determine which regs to push and how much stack to reserve.
-
-2010-04-27 Jie Zhang <jie@codesourcery.com>
-
- * doc/gimple.texi (gimple_statement_with_ops): Remove
- addresses_taken field.
- (gimple_statement_with_memory_ops): Likewise.
-
-2010-04-27 Jan Hubicka <jh@suse.cz>
-
- * tree-inline.c (eni_inlining_weights): Remove.
- (estimate_num_insns): Special case more builtins.
-
-2010-04-27 Shujing Zhao <pearly.zhao@oracle.com>
-
- PR c/32207
- * c-typeck.c (build_binary_op): Move forward check for comparison
- pointer with null pointer constant and adjust the diagnostic message.
-
-2010-04-27 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR lto/42776
- * configure.ac (gcc_cv_as_section_has_align): Set if installed
- binutils supports extended .section directive needed by LTO, or
- warn if older binutils found.
- (LTO_BINARY_READER): New AC_SUBST'd variable.
- (LTO_USE_LIBELF): Likewise.
- * config.gcc (lto_binary_reader): New target-specific configure
- variable.
- * Makefile.in (LTO_BINARY_READER): Import AC_SUBST'd autoconf var.
- (LTO_USE_LIBELF): Likewise.
- * configure: Regenerate.
-
- * collect2.c (is_elf): Rename from this ...
- (is_elf_or_coff): ... to this, and recognize and allow i386 COFF
- object files in addition to ELF-formatted ones.
- (scan_prog_file): Caller updated. Also allow for LTO info marker
- symbol to be prefixed or not by an extra underscore.
-
- * config/i386/t-cygming (winnt.o): Also depend on LTO_STREAMER_H.
- * config/i386/winnt.c: Also #include lto-streamer.h
- (i386_pe_asm_named_section): Specify 1-byte section alignment for
- LTO named sections.
- (i386_pe_asm_output_aligned_decl_common): Add comment.
- (i386_pe_maybe_record_exported_symbol): Allow decl arg to be NULL.
-
-2010-04-27 Hans-Peter Nilsson <hp@bitrange.com>
-
- PR target/43889
- * config/mmix/mmix.md ("*divdi3_nonknuth", "*moddi3_nonknuth"):
- Add missing earlyclobber for second alternative.
-
-2010-04-26 Bernd Schmidt <bernds@codesourcery.com>
-
- * df-problems.c (df_simulate_initialize_forwards): Set, don't clear,
- bits for artificial defs at the top of the block.
- * fwprop.c (single_def_use_enter_block): Don't call it.
-
-2010-04-26 Jack Howarth <howarth@bromo.med.uc.edu>
-
- PR 43715
- * configure.ac: Use "$gcc_cv_nm -g" on darwin
- instead of "$gcc_cv_objdump -T".
- Use "-undefined dynamic_lookup" on darwin.
- * configure: Regenerate.
-
-2010-04-26 Jakub Jelinek <jakub@redhat.com>
-
- PR c/43893
- * c-omp.c (c_finish_omp_for): Handle also EQ_EXPR.
-
-2010-04-26 Nathan Froyd <froydnj@codesourcery.com>
-
- * c-parser.c (struct c_token): Move location field up.
- * c-tree.h (struct c_typespec): Move expr_const_operands field up.
- (struct c_declspecs): Convert typespec_word, storage_class, and
- default_int_p into bitfields.
- (struct c_declarator): Move loc field up.
-
-2010-04-26 Nathan Froyd <froydnj@codesourcery.com>
-
- * cfgloop.h (struct loop): Move can_be_parallel field up.
- * ipa-prop.h (struct ip_node_params): Move bitfields up.
- * tree-ssa-loop-ivopts.c (struct version_info): Move inv_id field
- down.
- (struct iv_cand): Convert pos field into a bitfield.
- * tree-vectorizer.h (struct _loop_vec_info): Move loop_line_number
- field up.
- (struct _stmt_vec_info): Shuffle fields for better packing.
-
-2010-04-26 Eric Botcazou <ebotcazou@adacore.com>
-
- * varasm.c (IN_NAMED_SECTION): Remove guard.
- * config/arm/unknown-elf.h (IN_NAMED_SECTION): Rename to...
- (IN_NAMED_SECTION_P): ...this.
- (ASM_OUTPUT_ALIGNED_BSS): Adjust for above renaming.
- (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Likewise.
-
-2010-04-26 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimplify.c (gimplify_cond_expr): Use THEN_ and ELSE_ local variables.
- Use VOID_TYPE_P for all void type tests. Adjust TYPE variable instead
- of shadowing it. Fix comments.
-
-2010-04-26 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_create_node): Set node frequency to normal.
- (cgraph_clone_node): Copy function frequency.
- * cgraph.h (node_frequency): New enum
- (struct cgraph_node): Add.
- * final.c (rest_of_clean_state): Update.
- * lto-cgraph.c (lto_output_node): Output node frequency.
- (input_overwrite_node): Input node frequency.
- * tre-ssa-loop-ivopts (computation_cost): Update.
- * lto-streamer-out.c (output_function): Do not output function
- frequency.
- * predict.c (maybe_hot_frequency_p): Update and handle functions
- executed once.
- (cgraph_maybe_hot_edge_p): Likewise; use cgraph frequency instead of
- attribute lookup.
- (probably_never_executed_bb_p, optimize_function_for_size_p): Update.
- (compute_function_frequency): Set noreturn functions to be executed
- once.
- (choose_function_section): Update.
- * lto-streamer-in.c (input_function): Do not input function frequency.
- * function.c (allocate_struct_function): Do not initialize function
- frequency.
- * function.h (function_frequency): Remove.
- (struct function): Remove function frequency.
- * ipa-profile.c (CGRAPH_NODE_FREQUENCY): Remove.
- (try_update): Update.
- * tree-inline.c (initialize_cfun): Do not update function frequency.
- * passes.c (pass_init_dump_file): Update.
- * i386.c (ix86_compute_frame_layout): Update.
- (ix86_pad_returns): Update.
-
-2010-04-26 Jie Zhang <jie@codesourcery.com>
-
- PR tree-optimization/43833
- * tree-vrp.c (range_int_cst_p): New.
- (range_int_cst_singleton_p): New.
- (extract_range_from_binary_expr): Optimize BIT_AND_EXPR case
- when both operands are constants. Use range_int_cst_p in
- BIT_IOR_EXPR case.
-
-2010-04-26 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_copy_node_for_versioning): Fix profile updating.
-
-2010-04-26 Richard Guenther <rguenther@suse.de>
-
- PR lto/43080
- * gimple.c (gimple_decl_printable_name): Deal gracefully
- with a NULL DECL_NAME.
-
-2010-04-26 Richard Guenther <rguenther@suse.de>
-
- PR lto/42425
- * tree.c (free_lang_data_in_type): Do not free TYPE_CONTEXT
- if emitting debug information and it is either a function
- or a namespace decl.
-
-2010-04-26 Ira Rosen <irar@il.ibm.com>
-
- * tree-vectorizer.h (struct _stmt_vec_info): Add new field to
- determine if the statement is vectorizable, and a macro to access it.
- * tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
- Skip statements that can't be vectorized. If the analysis fails,
- mark the statement as unvectorizable if vectorizing basic block.
- (vect_compute_data_refs_alignment): Likewise.
- (vect_verify_datarefs_alignment): Skip statements marked as
- unvectorizable. Add print.
- (vect_analyze_group_access): Skip statements that can't be
- vectorized. If the analysis fails, mark the statement as
- unvectorizable if vectorizing basic block.
- (vect_analyze_data_ref_accesses, vect_analyze_data_refs): Likewise.
- * tree-vect-stmts.c (vectorizable_store): Fix the number of
- generated stmts for SLP.
- (new_stmt_vec_info): Initialize the new field.
- * tree-vect-slp.c (vect_build_slp_tree): Fail to vectorize
- statements marked as unvectorizable.
-
-2010-04-25 Joseph Myers <joseph@codesourcery.com>
-
- * c-common.c (flag_isoc1x): New.
- (flag_isoc99): Update comment.
- * c-common.h (flag_isoc1x): New.
- (flag_isoc99): Update comment.
- * c-cppbuiltin.c (builtin_define_float_constants): Also define
- __<type>_DECIMAL_DIG__.
- * c-opts.c (set_std_c1x): New.
- (c_common_handle_option): Handle -std=c1x and -std=gnu1x.
- (set_std_c89, set_std_c99): Also set flag_isoc1x to 0.
- * c.opt (-std=c1x, -std=gnu1x): New options.
- * doc/cpp.texi: Mention -std=c1x.
- * doc/cppopts.texi (-std=c1x, -std=gnu1x): Document.
- * doc/extend.texi: Mention -std=c1x and -std=gnu1x.
- * doc/invoke.texi (-std=c1x, -std=gnu1x): Document.
- * doc/standards.texi: Mention C1X.
- * ginclude/float.h (FLT_DECIMAL_DIG, DBL_DECIMAL_DIG,
- LDBL_DECIMAL_DIG, FLT_HAS_SUBNORM, DBL_HAS_SUBNORM,
- LDBL_HAS_SUBNORM, FLT_TRUE_MIN, DBL_TRUE_MIN, LDBL_TRUE_MIN):
- Define for C1X.
-
-2010-04-25 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/gmon-sol2.c (_mcleanup): Change format string
- placeholder from 0x%x to %#x.
- * config/i386/i386elf.h (ASM_OUTPUT_ASCII): Ditto.
- * config/i386/i386-interix.h (ASM_OUTPUT_ASCII): Ditto.
- * config/i386/att.h (ASM_OUTPUT_ASCII): Ditto.
- * config/i386/sysv4.h (ASM_OUTPUT_ASCII): Ditto.
- * config/i386/i386.c (ix86_target_string): Ditto.
- (output_pic_addr_const): Ditto.
- (print_operand): Ditto.
-
-2010-04-25 Paolo Bonzini <bonzini@gnu.org>
-
- * combine.c (find_split_point): Add third argument. Use it
- to find nested multiply-accumulate instructions. Adjust calls.
- (try_combine): Adjust call to find_split_point.
-
-2010-04-24 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/contrib.texi (Contributors): Add Dodji Seketeli.
-
-2010-04-24 Bernd Schmidt <bernds@codesourcery.com>
-
- PR tree-optimization/41442
- * fold-const.c (merge_truthop_with_opposite_arm): New function.
- (fold_binary_loc): Call it.
-
-2010-04-23 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * toplev.c (general_init): Set default for fdiagnostics-show-option.
- * opts.c (common_handle_option): Allow disabling it.
- * common.opt (fdiagnostics-show-option): Add Var. Enabled by default.
-
-2010-04-23 Eric Botcazou <ebotcazou@adacore.com>
-
- * expr.c (expand_expr_real_1) <VIEW_CONVERT_EXPR>: Only use conversion
- between modes if both types are integral.
-
-2010-04-23 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43572
- * tree-tailcall.c (find_tail_calls): Allow PARM_DECL uses.
-
-2010-04-23 Richard Guenther <rguenther@suse.de>
-
- PR lto/43455
- * tree-inline.c (tree_can_inline_p): Also check compatibility
- of return types.
-
-2010-04-23 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/43846
- * tree-sra.c (struct access): New flag grp_assignment_read.
- (build_accesses_from_assign): Set grp_assignment_read.
- (sort_and_splice_var_accesses): Propagate grp_assignment_read.
- (enum mark_read_status): New type.
- (analyze_access_subtree): Propagate grp_assignment_read, create
- accesses also if both direct_read and root->grp_assignment_read.
-
-2010-04-23 Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/43835
- * tree-sra.c (ipa_sra_preliminary_function_checks): Check that the
- function does not have type attributes.
-
-2010-04-23 Richard Guenther <rguenther@suse.de>
-
- PR lto/42653
- * tree.c (free_lang_data_in_decl): Do not reset DECL_CONTEXT
- of FUNCTION_DECLs.
-
-2010-04-22 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * sese.h (create_if_region_on_edge): Remove.
-
- * sese.c (create_if_region_on_edge): Make static.
-
- * tree-inline.c: Do not include ggc.h.
-
- * expr.c: Do not include ggc.h.
-
- * Makefile.in (tree-inline.o, expr.o): Remove $(GGC_H) from
- dependencies.
-
-2010-04-22 Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR target/43744
- * config/sh/sh.c (find_barrier): Don't emit a constant pool
- in the middle of insns for casesi_worker_2.
-
-2010-04-22 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/x-aix: Override LDFLAGS for all COMPILERS.
-
-2010-04-22 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/43842
- * tree-vect-loop.c (vect_create_epilog_for_reduction): Handle
- loop unrolling in update of exit phis. Fix comment.
- * tree-vect-slp.c (vect_analyze_slp): Check that there are at
- least two reduction statements in the loop before starting SLP
- analysis.
-
-2010-04-22 Nick Clifton <nickc@redhat.com>
-
- * config/stormy16/stormy16-lib2.c (__ucmpsi2): Fix thinko.
-
-2010-04-22 Alexander Monakov <amonakov@ispras.ru>
-
- * tree-ssa-reassoc.c (eliminate_plus_minus_pair): Handle BIT_NOT_EXPR
- to simplify a + ~a.
-
-2010-04-22 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * tree-parloops.c (loop_parallel_p): New argument
- parloop_obstack. Pass it down.
- (parallelize_loops): New variable parloop_obstack. Initialize it,
- pass it down, free it.
-
- * tree-loop-linear.c (linear_transform_loops): Pass down
- lambda_obstack.
-
- * tree-data-ref.h (lambda_compute_access_matrices): New argument
- of type struct obstack *.
-
- * tree-data-ref.c (analyze_subscript_affine_affine): New variable
- scratch_obstack. Initialize it, pass down, free it.
-
- * lambda.h (lambda_loop_new): Remove.
- (lambda_matrix_new, lambda_matrix_inverse)
- (lambda_trans_matrix_new, lambda_trans_matrix_inverse): New
- argument of type struct obstack *.
-
- * lambda-trans.c (lambda_trans_matrix_new): New argument
- lambda_obstack. Pass it down, use obstack allocation for ret.
- (lambda_trans_matrix_inverse): New argument lambda_obstack. Pass
- it down.
-
- * lambda-mat.c (lambda_matrix_get_column)
- (lambda_matrix_project_to_null): Remove.
- (lambda_matrix_new): New argument lambda_obstack. Use obstack
- allocation for mat.
- (lambda_matrix_inverse_hard, lambda_matrix_inverse): New argument
- lambda_obstack.
-
- * lambda-code.c (lambda_loop_new): New function.
- (lambda_lattice_new, compute_nest_using_fourier_motzkin)
- (lambda_compute_auxillary_space, lambda_compute_target_space)
- (lambda_loopnest_transform, gcc_loop_to_lambda_loop)
- (lambda_loopnest_to_gcc_loopnest): Pass down lambda_obstack.
- (build_access_matrix): New argument lambda_obstack. Use obstack
- allocation for am.
- (lambda_compute_step_signs, lambda_compute_access_matrices): New
- argument lambda_obstack. Pass it down.
-
-2010-04-22 Bernd Schmidt <bernds@codesourcery.com>
-
- * optabs.h (expand_widening_mult): Declare.
-
-2010-04-22 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43845
- * tree-ssa-pre.c (create_component_ref_by_pieces_1): Properly
- lookup the CALL_EXPR function and arguments.
-
-2010-04-22 Nick Clifton <nickc@redhat.com>
-
- * config/stormy16/stormy16.c
- (xstormy16_asm_output_aligned_common): Handle a NULL decl parameter.
- * config/stormy16/stormy16.h: Tidy up formatting.
- (DONT_USE_BUILTIN_SETJMP): Remove definition.
- * config/stormy16/stormy16.c (cbranchsi4): Delete pattern.
- (ineqbranchsi): Delete pattern.
- * config/stormy16/stormy16-lib2-ucmpsi2.c: New file.
- * config/stormy16/stormy16-lib2.c (__ucmpsi2): New function.
- * config/stormy16/t-stormy16 (LIB2FUNCS_EXTRA): Add
- stormy16-lib2-ucmpsi2.c.
-
-2010-04-22 Bernd Schmidt <bernds@codesourcery.com>
-
- * ifcvt.c (dead_or_predicable): Use df_simulate_find_defs and
- df_simulate_find_noclobber_defs as appropriate. Keep track of an
- extra set merge_set_noclobber, and use it to relax the final test
- slightly.
- * df.h (df_simulate_find_noclobber_defs): Declare.
- * df-problems.c (df_simulate_find_defs): Don't ignore partial or
- conditional defs.
- (df_simulate_find_noclobber_defs): New function.
-
-2010-04-22 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md: Use {} around multi-line preparation statements.
-
-2010-04-22 Laurynas Biveinis <laurynas.biveinis@gmail.com>
-
- * c-tree.h (push_init_level, pop_init_level, set_init_index)
- (process_init_element): New argument of type struct obstack *.
-
- * c-typeck.c (push_init_level, pop_init_level, set_designator)
- (set_init_index, set_init_label, set_nonincremental_init)
- (set_nonincremental_init_from_string, find_init_member)
- (output_init_element, output_pending_init_elements)
- (process_init_element): New argument braced_init_obstack. Pass it
- down.
- (push_range_stack, add_pending_init): New argument
- braced_init_obstack. Use obstack allocation.
-
- * c-parser.c (c_parser_initelt, c_parser_initval): New argument
- braced_init_obstack. Pass it down.
- (c_parser_braced_init): New variables ret, braced_init_obstack.
- Initialize obstack, pass it down and finally free it.
-
-2010-04-22 Bernd Schmidt <bernds@codesourcery.com>
-
- PR middle-end/29274
- * tree-pass.h (pass_optimize_widening_mul): Declare.
- * tree-ssa-math-opts.c (execute_optimize_widening_mul,
- gate_optimize_widening_mul): New static functions.
- (pass_optimize_widening_mul): New.
- * expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: New case.
- <case MULT_EXPR>: Remove support for widening multiplies.
- * tree.def (WIDEN_MULT_EXPR): Tweak comment.
- * cfgexpand.c (expand_debug_expr) <case WIDEN_MULT_EXPR>: Use
- simplify_gen_unary rather than directly building extensions.
- * tree-cfg.c (verify_gimple_assign_binary): Add tests for
- WIDEN_MULT_EXPR.
- * expmed.c (expand_widening_mult): New function.
- * passes.c (init_optimization_passes): Add pass_optimize_widening_mul.
-
-2010-04-21 Jan Hubicka <jh@suse.cz>
-
- * timevar.def (TV_WHOPR_WPA_FIXUP): Remove.
- * lto-section-in.c (lto_section_name): Remove wpa_fixup.
- * lto-wpa-fixup.c: Remove.
- * Makefile.in (lto-wpa-fixup.o): Remove.
- * passes.c (init_optimization_passes): Remove pass_ipa_lto_wpa_fixup.
- (execute_all_ipa_transforms): Set cgraph_state to CGRAPH_STATE_IPA_SSA.
- * lto-streamer.c (lto_get_section_name): Remove wpa_fixup section.
-
-2010-04-21 Jan Hubicka <jh@suse.cz>
-
- * tree-pass.h (ipa_opt_pass_d): Rename function_read_summary;
- add write_optimization_summary, read_optimization_summary.
- (ipa_write_summaries_of_cgraph_node_set): Remove.
- (ipa_write_optimization_summaries): Declare.
- (ipa_read_optimization_summaries): Declare.
- * ipa-cp.c (pass_ipa_cp): Update.
- * ipa-reference.c (pass_ipa_reference): Update.
- * ipa-pure-const.c (pass_ipa_pure_const): Update.
- * lto-streamer-out.c (pass_ipa_lto_gimple, pass_ipa_lto_finish):
- Update.
- * ipa-inline.c (pass_ipa_inline): Update.
- * ipa.c (pass_ipa_whole_program): Update.
- * lto-wpa-fixup.c (pass_ipa_lto_wpa_fixup): Update.
- * passes.c (ipa_write_summaries_1): Do not test wpa.
- (ipa_write_optimization_summaries_1): New.
- (ipa_write_optimization_summaries): New.
- (ipa_read_summaries): Do not test ltrans.
- (ipa_read_optimization_summaries_1): New.
- (ipa_read_optimization_summaries): New.
-
-2010-04-21 Jan Hubicka <jh@suse.cz>
-
- * lto-cgraph.c (lto_output_node): Do not output comdat groups
- for boundary nodes.
- (output_cgraph): Do not arrange comdat groups for boundary nodes.
-
-2010-04-21 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/40040
- * dwarf2out.c (add_name_and_src_coords_attributes): Add
- DW_AT_{,MIPS_}linkage_name even for Fortran decls.
-
-2010-04-21 Jan Hubicka <jh@suse.cz>
-
- * ipa-prop.c (ipa_edge_removal_hook): Check for bounds.
-
-2010-04-21 Jan Hubicka <jh@suse.cz>
-
- * varpool.c (decide_is_variable_needed): Variable is always needed
- during ltrans.
-
-2010-04-21 Jan Hubicka <jh@suse.cz>
-
- * opts.c (decode_options): Enable pure-const pass for whopr.
-
-2010-04-21 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (dump_cgraph_node): Dump also assembler name.
- * ipa-inline.c (cgraph_decide_inlining_of_small_functions): Do not ice
- at WPA dumping.
- (cgraph_decide_inlining): Do not expect callee to be removed in all
- cases.
-
-2010-04-21 Eric B. Weddington <eric.weddington@atmel.com>
-
- * config/avr/avr-devices.c (avr_mcu_types): Add missing comma.
-
-2010-04-21 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (x86_shrd): Add athlon_decode and
- amdfam10_decode attributes.
-
-2010-04-21 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/43570
- * omp-low.c (scan_sharing_clauses): Don't scan_omp_op
- OMP_CLAUSE_DECL for OMP_CLAUSE_COPYPRIVATE.
- (lower_copyprivate_clauses): Use private var in outer
- context instead of original var. Make sure the types
- are correct for VLAs.
-
-2010-04-21 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (do_ds_constraint): Avoid escaping
- to non-pointer objects.
-
-2010-04-21 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (add_var_loc_to_decl): Add LABEL argument. Drop
- last chain entry if it starts with the still current label.
- (add_location_or_const_value_attribute): Check that
- loc_list->first->next is NULL instead of comparing ->first with ->last.
- (dwarf2out_var_location): Pass last_label resp. last_postcall_label
- to add_var_loc_to_decl.
-
- * dwarf2out.c (output_call_frame_info): For dw_cie_version
- >= 4 add also address size and segment size fields into CIE header.
-
- * unwind-dw2.c (extract_cie_info): Handle CIE version 4, as
- long as address size is the same as sizeof (void *) and
- segment size is 0.
- * unwind-dw2-fde.c (get_cie_encoding): Likewise. If
- address size or segment size is unexpected, return DW_EH_PE_omit.
- (classify_object_over_fdes): If get_cie_encoding returned
- DW_EH_PE_omit, return -1.
- (init_object): If classify_object_over_fdes returned -1,
- pretend there were no FDEs at all.
-
-2010-04-21 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (bswap<mode>2): Macroize expander from
- bswap{si,di}2 using SWI48 mode iterator.
- (*bswap<mode>2_movbe): Macroize insn from *bswap{si,di}_movbe using
- SWI48 mode iterator. Set type attribute of bswap insn to bitmanip,
- set modrm attribute of bswap insn to 0 and remove length attribute.
- (*bswap<mode>2_1): Macroize insn from *bswap{si,di}_1 using SWI48 mode
- iterator. Set type attribute to bitmanip, set modrm attribute to 0,
- set mode attribute to <MODE> and remove length attribute.
-
-2010-04-20 James E. Wilson <wilson@codesourcery.com>
-
- PR rtl-optimization/43520
- * ira-lives.c (ira_implicitly_set_insn_hard_regs): Exclude classes with
- zero available registers.
-
-2010-04-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (fold_builtin_cproj): Fold more cases.
-
-2010-04-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (build_complex_cproj, fold_builtin_cproj): New.
- (fold_builtin_1): Fold builtin cproj.
- * builtins.def (BUILT_IN_CPROJ, BUILT_IN_CPROJF, BUILT_IN_CPROJL):
- Use ATTR_CONST_NOTHROW_LIST.
-
-2010-04-20 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (ffs<mode>2): Macroize expander from ffs_cmove
- and ffsdi2 using SWI48 mode iterator. Expand SImode insn through
- ffsi2_no_cmove for !TARGET_CMOVE.
- (ffssi2_no_cmove): Rename from *ffs_no_cmove. Make public.
- (ffssi2): Remove expander.
- (*ffs<mode>_1): Macroize insn from *ffs{si,di} using SWI48
- mode iterator.
- (ctz<mode>2): Ditto from ctz{si,di}2.
- (clz<mode>2): Macroize expander from ctz{hi,si,di}2 using SWI248
- mode iterator.
- (clz<mode>2_abm): Macroize insn from clz{hi,si,di}2_abm using SWI248
- mode iterator.
-
-2010-04-20 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (AT_linkage_name): Define.
- (clone_as_declaration): Handle DW_AT_linkage_name.
- (add_name_and_src_coords_attributes): Use AT_linkage_name instead
- of DW_AT_MIPS_linkage_name.
- (move_linkage_attr): Likewise.
- (dwarf2out_finish): Likewise.
-
-2010-04-20 Xinliang David Li <davidxl@gcc.gnu.org>
-
- PR middle-end/41952
- * fold-const.c (fold_comparison): New folding rule.
-
-2010-04-20 Anatoly Sokolov <aesok@post.ru>
-
- * double-int.h (double_int_setbit): Declare.
- * double-int.c (double_int_setbit): New function.
- * rtl.h (immed_double_int_const): Declare.
- * emit-rtl.c (immed_double_int_const): New function.
- * builtins.c (expand_builtin_signbit): Clean up, use double_int_*
- and immed_double_int_const functions.
- * optabs.c (expand_absneg_bit, expand_copysign_absneg,
- expand_copysign_bit): (Ditto.).
- * simplify-rtx.c (simplify_binary_operation_1): (Ditto.).
- * tree-ssa-address.c (addr_for_mem_ref): (Ditto.).
- * dojump.c (prefer_and_bit_test): (Ditto.).
- * expr.c (convert_modes, reduce_to_bit_field_precision,
- const_vector_from_tree): (Ditto.).
- * expmed.c (mask_rtx, lshift_value): (Ditto.).
-
-2010-04-20 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_remove_node): Kill bodies in other partitoin.
- (dump_cgraph_node): Dump new flags.
- * cgraph.h (struct cgraph_node): Add flags
- reachable_from_other_partition and in_other_partition.
- (cgraph_can_remove_if_no_direct_calls_p): Functions used by
- other partition can not be removed.
- * cgraphunit.c (cgraph_mark_functions_to_output): Functions used by
- the other partition must be output; silence sanity checking on
- leaking functions bodies from other paritition.
- * lto-cgraph.c (reachable_from_other_partition_p): New function.
- (lto_output_node): Output new flags; do not sanity check that inline
- clones are output; drop lto_forced_extern_inline_p code; do not mock
- visibility flags at partition boundaries.
- (add_node_to): New function.
- (output_cgraph): Use it to sort functions so masters appear before
- clones.
- (input_overwrite_node): Input new flags.
- * passes.c (ipa_write_summaries): Do not call
- lto_new_extern_inline_states.
- * lto-section-out.c (forced_extern_inline,
- lto_new_extern_inline_states lto_delete_extern_inline_states,
- lto_force_functions_extern_inline, lto_forced_extern_inline_p): Kill.
- * lto-streamer.h (lto_new_extern_inline_states,
- * lto_delete_extern_inline_states, lto_force_functions_extern_inline,
- lto_forced_extern_inline_p): Kill.
-
-2010-04-20 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (do_sd_constraint): Add edges only
- from vars that can have pointers.
- (process_constraint): Dump useless constraints.
-
-2010-04-20 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (do_structure_copy): Properly handle DEREF.
- (dump_sa_points_to_info): Remove asserts.
- (init_base_vars): nothing_id isn't an escape point nor does it
- have pointers.
-
-2010-04-20 Jakub Jelinek <jakub@redhat.com>
-
- * tree.h (TYPE_REF_IS_RVALUE): Define.
- * dwarf2out.c (attr_checksum_ordered, is_type_die, is_comdat_die,
- should_move_die_to_comdat, prune_unused_types_walk): Handle
- DW_TAG_rvalue_reference_type like DW_TAG_reference_type.
- (modified_type_die, gen_reference_type_die): Emit
- DW_TAG_rvalue_reference_type instead of DW_TAG_reference_type
- if TYPE_REF_IS_RVALUE and -gdwarf-4.
-
-2010-04-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- PR target/43635
- * config/s390/s390.c (s390_emit_call): Turn direct into indirect
- calls for -fpic -m31 if they have been sibcall optimized.
-
-2010-04-19 James E. Wilson <wilson@codesourcery.com>
-
- * config/ia64/ia64.h (FIXED_REGISTERS, CALL_USED_REGISTERS): Make
- ar.lc fixed and call-used.
-
- * config/ia64/ia64.c (TARGET_INVALID_WITHIN_DOLOOP): Define.
-
-2010-04-19 Jan Hubicka <jh@suse.cz>
-
- * opts.c (decode_options): Disable whpr incompatible passes.
- * lto/lto.c (lto_1_to_1_map): Skip clones.
- (read_cgraph_and_symbols): Do not mark everything as needed.
- (do_whole_program_analysis): Do map only after optimizing;
- set proper cgraph_state; use passmanager.
-
-2010-04-19 DJ Delorie <dj@redhat.com>
-
- * cfgexpand.c (expand_debug_expr): Check for mismatched modes in
- POINTER_PLUS_EXPR and fix them.
-
-2010-04-19 Eric B. Weddington <eric.weddington@atmel.com>
-
- * config/avr/avr-devices.c (avr_mcu_types): Add support for new
- devices atmega644pa, attiny2313a, attiny24a, attiny261a, attiny4313,
- attiny44a, attiny861a, atmega16a, atmega168a, atmega164a, atmega165a,
- atmega169a, atmega169pa, atmega16hva2, atmega324a, atmega324pa,
- atmega325a, atmega3250a, atmega328, atmega329a, atmega329pa,
- atmega3290a, atmega48a, atmega644a, atmega645a, atmega645p,
- atmega6450a, atmega6450p, atmega649a, atmega649p, atmega6490a,
- atmega6490p, atmega64hve, atmega88a, atmega88pa, attiny461a, attiny84a,
- m3000. Remove support for devices atmega8m1, atmega8c1, atmega16c1,
- atmega4hvd, atmega8hvd, attiny327, m3000f, m3000s, m3001b.
- * config/avr/t-avr.c (MULTILIB_MATCHES): Same.
-
-2010-04-19 Eric Botcazou <ebotcazou@adacore.com>
-
- * ifcvt.c (noce_try_cmove_arith): Fix long lines.
- (check_cond_move_block): Likewise.
- (cond_move_process_if_block): Likewise.
- (noce_find_if_block): Improve formatting.
- (find_if_header): Pass 0 to memset and tweak conditions.
- (cond_exec_find_if_block): Fix long lines and tweak conditions.
-
-2010-04-19 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (lower_bound_default): For DW_LANG_Python return 0
- for -gdwarf-4.
-
- PR middle-end/43337
- * tree-nested.c (convert_nonlocal_omp_clauses): OMP_CLAUSE_PRIVATE
- with non-local decl doesn't need chain.
-
-2010-04-19 Vladimir Makarov <vmakarov@redhat.com>
-
- * ira-color.c (allocno_reload_assign): Avoid accumulating
- reload registers in ALLOCNO_TOTAL_CONFLICT_HARD_REGS.
-
-2010-04-19 Martin Jambor <mjambor@suse.cz>
-
- * gimple.h (create_tmp_reg): Declare.
- * gimplify.c (create_tmp_reg): New function.
- (gimplify_return_expr): Use create_tmp_reg.
- (gimplify_omp_atomic): Likewise.
- (gimple_regimplify_operands): Likewise.
- * tree-dfa.c (make_rename_temp): Likewise.
- * tree-predcom.c (predcom_tmp_var): Likewise.
- (reassociate_to_the_same_stmt): Likewise.
- * tree-sra.c (replace_uses_with_default_def_ssa_name): Likewise.
- (get_replaced_param_substitute): Likewise.
- * tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
- * tree-ssa-phiopt.c (cond_store_replacement): Likewise.
- * tree-ssa-pre.c (get_representative_for): Likewise.
- (create_expression_by_pieces): Likewise.
- * tree-tailcall.c (adjust_return_value_with_ops): Likewise.
- (create_tailcall_accumulator): Likewise.
-
-2010-04-19 Martin Jambor <mjambor@suse.cz>
-
- * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update
- new_stmt.
- (cgraph_materialize_all_clones): Assert !need_ssa_update_p.
-
-2010-04-19 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43796
- * tree-vrp.c (adjust_range_with_scev): Lookup init and step
- from SCEV in the lattice.
- (vrp_visit_phi_node): Dump change.
-
-2010-04-19 Richard Guenther <rguenther@suse.de>
-
- * configure.ac: Fix quoting around elf_getshstrndx ABI check.
- * configure: Re-generated.
-
-2010-04-19 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43783
- * tree-ssa-pre.c (create_component_ref_by_pieces_1): Drop
- constant ARRAY_REF operands two and three if possible.
-
-2010-04-19 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/43766
- * config/i386/i386.c (ix86_decompose_address): Handle ASHIFT addends.
-
-2010-04-19 Jie Zhang <jie@codesourcery.com>
-
- PR target/43662
- * reginfo.c (reinit_regs): Set caller_save_initialized_p to false.
-
-2010-04-19 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/37027
- * tree-vectorizer.h (struct _loop_vec_info): Add new field reductions
- and macro to access it.
- (vectorizable_reduction): Add argument.
- (vect_get_slp_defs): Likewise.
- * tree-vect-loop.c (vect_analyze_scalar_cycles_1): Collect reduction
- statements for possible use in SLP.
- (new_loop_vec_info): Initialize LOOP_VINFO_REDUCTIONS.
- (destroy_loop_vec_info): Free LOOP_VINFO_REDUCTIONS.
- (vect_create_epilog_for_reduction): Handle SLP. Modify documentation,
- add new argument.
- (vectorizable_reduction): Likewise.
- * tree-vect-stmts.c (vect_get_vec_defs): Update call to
- vect_get_slp_defs.
- (vectorizable_type_demotion, vectorizable_type_promotion,
- vectorizable_store): Likewise.
- (vect_analyze_stmt): Update call to vectorizable_reduction.
- (vect_transform_stmt): Likewise.
- * tree-vect-slp.c (vect_get_and_check_slp_defs): Handle reduction.
- (vect_build_slp_tree): Fix indentation. Check that there are no loads
- from different interleaving chains in same node.
- (vect_slp_rearrange_stmts): New function.
- (vect_supported_load_permutation_p): Allow load permutations for
- reductions. Call vect_slp_rearrange_stmts() to rearrange statements
- inside SLP nodes if necessary.
- (vect_analyze_slp_instance): Handle reductions.
- (vect_analyze_slp): Try to build SLP instances originating from groups
- of reductions.
- (vect_detect_hybrid_slp_stmts): Skip reduction statements.
- (vect_get_constant_vectors): Create initial vectors for reductions
- according to reduction code. Add new argument.
- (vect_get_slp_defs): Add new argument, pass it to
- vect_get_constant_vectors.
- (vect_schedule_slp_instance): Remove SLP tree root statements.
-
-2010-04-19 Jakub Jelinek <jakub@redhat.com>
-
- * tree.h (ENUM_IS_SCOPED): Define.
- * dwarf2out.c (gen_enumeration_type_die): Add DW_AT_enum_class
- for ENUM_IS_SCOPED enums.
-
-2010-04-18 Eric Botcazou <ebotcazou@adacore.com>
-
- * fold-const.c (fold_comparison): Use ssizetype.
- * gimple-fold.c (maybe_fold_offset_to_array_ref): Likewise.
- * ipa-prop.c (ipa_modify_call_arguments): Use sizetype.
- * tree-loop-distribution.c (build_size_arg_loc): Likewise.
- * tree-object-size.c (compute_object_sizes): Use size_type_node.
-
- * tree.h (initialize_sizetypes): Remove parameter.
- (build_common_tree_nodes): Remove second parameter.
- * stor-layout.c (initialize_sizetypes): Remove parameter.
- Always create an unsigned type.
- (set_sizetype): Assert that the passed type is unsigned and simplify.
- * tree.c (build_common_tree_nodes): Remove second parameter.
- Adjust call to initialize_sizetypes.
- * c-decl.c (c_init_decl_processing): Remove second argument in call to
- build_common_tree_nodes.
-
-2010-04-18 Matthias Klose <doko@ubuntu.com>
-
- * gcc.c (main): Search for liblto_plugin.so with mode R_OK.
-
-2010-04-18 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/43771
- * tree-vect-slp.c (vect_supported_load_permutation_p): Check that
- load permutation doesn't have gaps.
-
-2010-04-18 Jan Hubicka <jh@suse.cz>
-
- * i386.md (UNSPEC_SSE_PROLOGUE_SAVE_LOW): New.
- (sse_prologue_save_insn expander): Use new pattern.
- (sse_prologue_save_insn1): New pattern and splitter.
- (sse_prologue_save_insn): Update to deal also with 64bit aligned
- blocks.
- * i386.c (setup_incoming_varargs_64): Do not compute jump
- destination here.
- (ix86_gimplify_va_arg): Update alignment needed.
- (ix86_local_alignment): Do not align all local arrays to 128bit.
-
-2010-04-17 Jan Hubicka <jh@suse.cz>
-
- * ipa-inline.c (cgraph_early_inlining): Handle flattening too.
-
-2010-04-17 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (negdi2): Remove redundant code to force values into a
- register.
-
-2010-04-17 Richard Earnshaw <rearnsha@arm.com>
-
- * arm/bpabi.S: Add EABI alignment attributes to objects.
- * arm/bpabi-v6m.S: Likewise.
- * arm/crti.asm: Likewise.
- * arm/crtn.asm: Likewise.
- * arm/lib1funcs.asm: Likewise.
- * arm/libunwind.S: Likewise.
-
-2010-04-17 Richard Earnshaw <rearnsha@arm.com>
-
- * arm-protos.h (tune_params): New structure.
- * arm.c (current_tune): New variable.
- (arm_constant_limit): Delete.
- (struct processors): Add pointer to the tune parameters.
- (arm_slowmul_tune): New tuning option.
- (arm_fastmul_tune, arm_xscale_tune, arm_9e_tune): Likewise.
- (all_cores): Adjust to pick up the tuning model.
- (arm_constant_limit): New function.
- (arm_override_options): Select the appropriate tuning model. Delete
- initialization of arm_const_limit.
- (arm_split_constant): Use the new constant-limit model.
- (arm_rtx_costs): Pick up the current tuning model.
- * arm.md (is_strongarm, is_xscale): Delete.
- * arm-generic.md (load_ldsched_x, load_ldsched): Test explicitly
- for Xscale variant architectures.
- (mult_ldsched_strongarm, mult_ldsched): Similarly for StrongARM.
-
-2010-04-17 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * config/arm/arm.c (arm_gen_constant): Remove unused variable
- can_shift.
- (arm_rtx_costs_1): Remove unused variable extra_cost.
- (arm_unwind_emit_set): Use variable offset.
- (thumb1_output_casesi): Remove unused variable flags.
-
-2010-04-16 Jeff Law <law@redhat.com>
-
- * ira-color.c (ira_reassign_pseudos): Collect and sort all the pseudos
- needing assignment rather than doing a two-phase assignment. Remove
- unused variable 'm'.
-
-2010-04-16 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/43767
- * alias.c (memrefs_conflict_p): Don't crash if CSELIB_VAL_PTR is NULL.
-
-2010-04-16 Doug Kwan <dougkwan@google.com>
-
- * tree-ssa-reassoc.c (struct operand_entry): Add new field ID.
- (next_operand_entry_id): New static variable.
- (sort_by_operand_rank): Stabilize qsort comparator by using unique IDs.
- (add_to_ops_vec): Assigned unique ID to operand entry.
- (struct oecount_s): New field ID.
- (oecount_cmp): Stabilize qsort comparotor by using unique IDs.
- (undistribute_ops_list): Assign unique IDs to oecounts.
- (init_reassoc): reset next_operand_entry_id.
-
-2010-04-16 Doug Kwan <dougkwan@google.com>
-
- * config/i386/i386.md (*jcc_bt<mode>): Fix build breakage by adding
- missing left parenthesis.
-
-2010-04-16 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*bt<mode>): Macroize insn from *btsi and
- *btdi_rex64 using SWI48 mode iterator.
- (*jcc_bt<mode>): Ditto from *jcc_btsi and *jcc_btdi_rex64.
- (*jcc_bt<mode>_mask): Ditto from *jcc_btsi_mask and
- *jcc_btdi_mask_rex64.
-
-2010-04-16 Anatoly Sokolov <aesok@post.ru>
-
- * double-int.h (tree_to_double_int): Convert to macro.
- * double-int.c (tree_to_double_int): Remove.
-
-2010-04-16 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43762
- * dwarf2out.c (add_bound_info): Always call loc_list_from_tree
- with want_address 2 and in case a single element list might be
- possible, call it again with want_address 0.
-
-2010-04-12 Kaushik Phatak <kaushik.phatak@kpitcummins.com>
-
- * config/h8300/h8300.c (print_operand) : Modify case 'V' and
- case 'W' print operands for HI mode.
- * config/h8300/h8300.h (Y0, Y2) : New constraints.
- * config/h8300/h8300.md (bclrqi_msx, bclrhi_msx): New patterns
- (bsetqi_msx, bsethi_msx, bnotqi_msx, bnothi_msx): Likewise.
- * config/h8300/predicate.md (bit_register_indirect_operand): New.
-
- * config/h8300/h8300.h (OK_FOR_U): Support 'U' constraint for H8300SX.
-
- * config/h8300/h8300.md (movqi_h8sx, movhi_h8sx, movsi_h8sx,
- cmphi_h8300hs_znvc, cmpsi, addhi3_h8sx) : Emit instructions in
- #xx:3 and #xx:4 mode.
-
- * config/h8300/h8300.md (inverted load with HImode dest): Add
- support for H8300SX.
-
- * config/h8300/predicate.md (bit_operand): Allow immediate values that
- satisfy 'U' constraint.
-
-2010-04-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx flavor.
- * configure: Regenerate.
- * config.in: Regenerate.
- * doc/install.texi (Prerequisites): Document that Solaris 2 libelf
- works.
-
-2010-04-16 Richard Guenther <rguenther@suse.de>
-
- * tree.h (struct tree_decl_minimal): Move pt_uid ...
- (struct tree_decl_common): ... here.
- (DECL_PT_UID): Adjust.
- (SET_DECL_PT_UID): Likewise.
- (DECL_PT_UID_SET_P): Likewise.
-
-2010-04-16 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43572
- * tree-ssa-alias.h (call_may_clobber_ref_p): Declare.
- * tree-ssa-alias.c (call_may_clobber_ref_p): Export.
- * tree-flow.h (is_call_clobbered): Remove.
- * tree-flow-inline.h (is_call_clobbered): Likewise.
- * tree-dfa.c (dump_variable): Do not dump call clobber state.
- * tree-nrv.c (dest_safe_for_nrv_p): Use the alias oracle.
- (execute_return_slot_opt): Adjust.
- * tree-tailcall.c (suitable_for_tail_opt_p): Remove
- check for call clobbered vars here.
- (find_tail_calls): Move tailcall verification to the
- proper place.
-
-2010-04-16 Diego Novillo <dnovillo@google.com>
-
- * doc/invoke.texi: Explain how are unrecognized -Wno- warnings handled.
-
-2010-04-16 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/40603
- * config/arm/arm.md (cbranchqi4): New pattern.
- * config/arm/predicates.md (const0_operand,
- cbranchqi4_comparison_operator): New predicates.
-
-2010-04-16 Richard Guenther <rguenther@suse.de>
-
- * gimple-pretty-print.c (dump_gimple_phi): Dump alias info.
- (dump_gimple_stmt): Likewise.
-
-2010-04-16 Bernd Schmidt <bernds@codesourcery.com>
-
- * recog.h (struct recog_data): New field is_operator.
- (struct insn_operand_data): New field is_operator.
- * recog.c (extract_insn): Set recog_data.is_operator.
- * genoutput.c (output_operand_data): Emit code to set the
- is_operator field.
- * reload.c (find_reloads): Use it rather than testing for an
- empty constraint string.
-
- PR target/41514
- * config/arm/arm.md (cbranchsi4_insn): Renamed from "*cbranchsi4_insn".
- If the previous insn is a cbranchsi4_insn with the same arguments,
- omit the compare instruction.
-
- * config/arm/arm.md (addsi3_cbranch): If destination is a high
- register, inputs must be low registers and we need a low register
- scratch. Handle alternative 2 like alternative 3.
-
-2010-04-16 Jakub Jelinek <jakub@redhat.com>
-
- * alias.c (memrefs_conflict_p): If x and y are the same VALUE,
- don't call get_addr on both. If one expression is a VALUE and
- the other a REG, check VALUE's locs if the REG isn't among them.
-
-2010-04-16 Christian Bruel <christian.bruel@st.com>
-
- * config/sh/sh.h (sh_frame_pointer_required): New function.
- * config/sh/sh.h (TARGET_FRAME_POINTER_REQUIRED): New macro.
- (flag_omit_frame_pointer) Set.
- (MASK_ACCUMULATE_OUTGOING_ARGS) Define and Set.
- (rounded_frame_size): Adjust size with outgoing_args_size.
- (sh_set_return_address): Must return from stack pointer.
- * config/sh/sh.h (CAN_DEBUG_WITHOUT_FP): Define.
- (SUBTARGET_FRAME_POINTER_REQUIRED): Define.
- (ACCUMULATE_OUTGOING_ARGS): Define.
- * doc/invoke.texi (maccumulate-outgoing-args): Document for SH.
- * config/sh/sh.opt (maccumulate-outgoing-args): New option.
-
-2010-04-15 Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR target/43471
- * config/sh/sh.c (sh_legitimize_reload_address): Use
- MAYBE_BASE_REGISTER_RTX_P instead of BASE_REGISTER_RTX_P.
- Remove a unneeded check for offset_base.
-
-2010-04-15 H.J. Lu <hongjiu.lu@intel.com>
-
- * configure: Regenerated.
-
-2010-04-15 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.c (s390_call_save_register_used): Switch back
- to HARD_REGNO_NREGS.
-
-2010-04-15 Richard Guenther <rguenther@suse.de>
-
- * alias.c (alias_set_subset_of): Handle alias-set zero
- child properly.
-
-2010-04-15 Mark Shinwell <shinwell@codesourcery.com>
- Julian Brown <julian@codesourcery.com>
-
- * config/arm/thumb2.md (thumb2_movsi_insn): Split ldr and str
- alternatives according to use of high and low regs.
- * config/arm/vfp.md (thumb2_movsi_vfp): Likewise.
- * config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Use high regs when
- optimizing for size on Thumb-2.
-
-2010-04-15 Thomas Schwinge <tschwinge@gnu.org>
-
- * config.gcc <i[34567]86-*-gnu*>: Handle softfp as for Linux.
-
-2010-04-15 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (struct variable_info): Add
- is_fn_info flag.
- (new_var_info): Initialize it.
- (dump_constraints): Support printing last added constraints.
- (debug_constraints): Adjust.
- (dump_constraint_graph): Likewise.
- (make_heapvar_for): Check for NULL cfun.
- (get_function_part_constraint): New function.
- (get_fi_for_callee): Likewise.
- (find_func_aliases): Properly implement IPA PTA constraints.
- (process_ipa_clobber): New function.
- (find_func_clobbers): Likewise.
- (insert_into_field_list_sorted): Remove.
- (create_function_info_for): Properly allocate vars for IPA mode.
- Do not use insert_into_field_list_sorted.
- (create_variable_info_for): Properly generate constraints for
- global vars in IPA mode.
- (dump_solution_for_var): Always dump the solution.
- (set_uids_in_ptset): Initialize DECL_PT_UID if in ipa-mode.
- (find_what_var_points_to): Adjust.
- (pt_solution_set): Change.
- (pt_solution_ior_into): New function.
- (pt_solution_empty_p): Export.
- (pt_solution_includes_global): Adjust.
- (pt_solution_includes_1): Likewise.
- (pt_solutions_intersect_1): Likewise.
- (dump_sa_points_to_info): Check some invariants.
- (solve_constraints): Move constraint dumping ...
- (compute_points_to_sets): ... here.
- (ipa_pta_execute): ... and here.
- (compute_may_aliases): Do not re-compute points-to info
- locally if IPA info is available.
- (ipa_escaped_pt): New global var.
- (ipa_pta_execute): Properly implement IPA PTA.
- * tree-into-ssa.c (dump_decl_set): Support dumping
- decls not in referenced-vars.
- * tree-flow.h (struct gimple_df): Add ipa_pta flag.
- * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Adjust.
- (dump_points_to_solution): Likewise.
- * tree-dfa.c (dump_variable): Also dump DECL_PT_UID.
- * tree-inline.c (remap_ssa_name): Copy IPA points-to solution.
- (remap_gimple_stmt): Reset call clobber/use information if necessary.
- (copy_decl_to_var): Copy DECL_PT_UID.
- (copy_result_decl_to_var): Likewise.
- * tree.c (make_node_stat): Initialize DECL_PT_UID.
- (copy_node_stat): Copy it.
- * tree.h (DECL_PT_UID): New macro.
- (SET_DECL_PT_UID): Likewise.
- (DECL_PT_UID_SET_P): Likewise.
- (struct tree_decl_minimal): Add pt_uid member.
- * tree-ssa-alias.h (struct pt_solution): Add ipa_escaped flag.
- (pt_solution_empty_p): Declare.
- (pt_solution_set): Adjust.
- (ipa_escaped_pt): Declare.
- * cfgexpand.c (update_alias_info_with_stack_vars): Adjust.
- * gimple-pretty-print.c (pp_points_to_solution): New function.
- (dump_gimple_call): Dump call clobber/use information.
- * tree-dump.c (dump_option_value_in): Add TDF_ALIAS entry.
- * tree-pass.h (TDF_ALIAS): New dump option.
- * tree-pretty-print.c (dump_decl_name): Dump DECL_PT_UID if asked to.
- * doc/invoke.texi (-fipa-pta): Update documentation.
-
-2010-04-15 Richard Guenther <rguenther@suse.de>
-
- * Makefile.in (OBJS-common): Add gimple-fold.o.
- (gimple-fold.o): New rule.
- * tree.h (maybe_fold_offset_to_reference,
- maybe_fold_offset_to_address, maybe_fold_stmt_addition): Move
- prototypes ...
- * gimple.h: ... here.
- * tree-flow.h (fold_stmt, fold_stmt_inplace, get_symbol_constant_value,
- may_propagate_address_into_dereference): Move prototypes ...
- * gimple.h: ... here.
- * tree-ssa-ccp.c (get_symbol_constant_value,
- may_propagate_address_into_dereference, maybe_fold_offset_to_array_ref,
- maybe_fold_offset_to_component_ref, maybe_fold_offset_to_reference,
- maybe_fold_offset_to_address, maybe_fold_stmt_indirect,
- maybe_fold_stmt_addition, maybe_fold_reference, get_maxval_strlen,
- ccp_fold_builtin, fold_gimple_assign, fold_gimple_cond,
- fold_gimple_call, fold_stmt_1, fold_stmt, fold_stmt_inplace,
- gimplify_and_update_call_from_tree): Move ...
- * gimple-fold.c: ... here. New file.
- (ccp_fold_builtin): Rename to ...
- (gimple_fold_builtin): ... this.
- * tree-ssa-ccp.c (execute_fold_all_builtins): Adjust.
-
-2010-04-15 Richard Guenther <rguenther@suse.de>
-
- * fold-const.c (LOWPART, HIGHPART, BASE, encode, decode,
- fit_double_type, force_fit_type_double, add_double_with_sign,
- neg_double, mul_double_with_sign, lshift_double, rshift_double,
- lrotate_double, rrotate_double, div_and_round_double): Move ...
- * double-int.c: ... here.
- * tree.h (force_fit_type_double, fit_double_type, add_double_with_sign,
- add_double, neg_double, mul_double_with_sign, mul_double,
- lshift_double, rshift_double, lrotate_double, rrotate_double,
- div_and_round_double): Move prototypes ...
- * double-int.h: ... here.
-
-2010-04-15 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/43742
- * config/sh/sh.md (doloop_end_split, dect): Undo previous patch. Use
- matching constraints to ensure inputs match the output.
-
-2010-04-15 Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR target/43742
- * config/sh/sh.md (doloop_end_split): Remove "+r" constraint
- in an input-only operand.
-
-2010-04-15 Anatoly Sokolov <aesok@post.ru>
-
- * double-int.h (HOST_BITS_PER_DOUBLE_INT): Define.
- (double_int_not, double_int_lshift, double_int_rshift): Declare.
- (double_int_negative_p): Convert to static inline function.
- * double-int.c (double_int_lshift, double_int_lshift): New functions.
- (double_int_negative_p): Remove.
- * tree.h (lshift_double, rshift_double):
- * tree.c (build_low_bits_mask): Clean up, use double_int_* functions.
- * fold-const.c (fold_convert_const_int_from_real,
- fold_convert_const_int_from_fixed, div_if_zero_remainder): (Ditto.).
- (lshift_double): Change type of arith argument to bool.
- (rshift_double): Change type of arith argument to bool. Correct
- comment.
- * expmed.c (mask_rtx, lshift_value): (Ditto.).
-
-2010-04-14 Bernd Schmidt <bernds@codesourcery.com>
-
- PR target/21803
- * ifcvt.c (cond_exec_process_if_block): Look for identical sequences
- at the start and end of the then/else blocks, and omit them from the
- conversion.
- * cfgcleanup.c (flow_find_cross_jump): No longer static. Remove MODE
- argument; all callers changed. Pass zero to old_insns_match_p instead.
- (flow_find_head_matching_sequence): New function.
- (old_insns_match_p): Check REG_EH_REGION notes for calls.
- * basic-block.h (flow_find_cross_jump,
- flow_find_head_matching_sequence): Declare functions.
-
-2010-04-14 Jason Merrill <jason@redhat.com>
-
- PR c++/36625
- * c-common.c (attribute_takes_identifier_p): New fn.
- * c-common.h: Declare it.
-
-2010-04-14 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*divmod<mode>4): Remove stray "&&" from
- splitter condition.
- (*udivmod<mode>4): Ditto.
-
-2010-04-14 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (maxmin_int): Rename code attribute from
- maxminiprefix and update all users.
- (maxmin_float): Ditto from maxminfprefix.
- (logic): Ditto from logicprefix.
- (absneg_mnemonic): Ditto from absnegprefix.
- * config/i386/mmx.md: Update all users of maxminiprefix,
- maxminfprefix and logicprefix for rename.
- * config/i386/sse.md: Ditto.
- * config/i386/sync.md (sync_<code><mode>): Update for
- logicprefix rename.
-
-2010-04-14 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR 42966
- * diagnostics.c (diagnostic_report_diagnostic): Mark specially
- warnings converted to errors.
-
-2010-04-14 Uros Bizjak <ubizjak@gmail.com>
-
- * config/alpha/alpha.c (alpha_adjust_cost): Remove set but not
- used insn_type variable.
- (function_value): Add ATTRIBUTE_UNUSED to dummy variable declaration
- to avoid set-but-not-used warning.
-
-2010-04-14 Uros Bizjak <ubizjak@gmail.com>
-
- * df-core.c (df_ref_debug): Change format string placeholder
- from 0x%x to %#x.
- * dwarf2asm.c (dw2_asm_output_data_raw,
- dw2_asm_output_data_uleb128_raw, dw2_asm_output_data_uleb128,
- dw2_asm_output_data_sleb128_raw, dw2_asm_output_data_sleb128): Ditto.
- * dwarf2out.c (output_cfi, output_cfi_directive,
- dwarf2out_do_cfi_startproc, output_loc_sequence_raw,
- output_cfa_loc_raw, output_die, output_ranges, output_file_names):
- Ditto.
- * genattrtab.c (write_test_expr, write_attr_valueq): Ditto.
- * print-rtl.c (print_rtx): Ditto.
-
-2010-04-14 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR middle-end/42694
- * builtins.c (expand_builtin_pow_root): New function to expand pow
- calls with exponents 0.25, 0.50, 0.75, 1./3., and 1./6. into a
- series of sqrt and cbrt calls under -ffast-math.
- (expand_builtin_pow): Call it.
-
-2010-04-14 Michael Matz <matz@suse.de>
-
- PR tree-optimization/42963
- * tree-cfg.c (touched_switch_bbs): New static variable.
- (group_case_labels_stmt): New function broken out from ...
- (group_case_labels): ... here, use the above.
- (start_recording_case_labels): Allocate touched_switch_bbs.
- (end_recording_case_labels): Deallocate it, call
- group_case_labels_stmt.
- (gimple_redirect_edge_and_branch): Remember index of affected BB.
-
-2010-04-14 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*popcountsi2_cmp_zext): Remove mode attribute
- from insn template.
-
-2010-04-14 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*ashlqi3_1_slp): New insn pattern.
-
-2010-04-13 Jan Hubicka <jh@suse.cz>
-
- * ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting
- of optimized out static functions.
- (cgraph_edge_badness): Add DUMP parameter and dump reasons for the
- cost computation. Also sanity check for overflows.
- (update_caller_keys): Update cgraph_edge_badness call; properly
- update fibheap and sanity check that it is up to date.
- (add_new_edges_to_heap): Update cgraph_edge_badness.
- (cgraph_decide_inlining_of_small_function): Likewise;
- add sanity checking that badness in heap is up to date;
- improve dumping of reason; Update badness of calls to the
- offline copy of function currently inlined; dump badness
- of functions not inlined because of unit growth limits.
-
-2010-04-13 Eric Botcazou <ebotcazou@adacore.com>
-
- PR middle-end/32628
- * c-common.c (pointer_int_sum): Disregard overflow that occured only
- because of sign-extension change when converting to sizetype here...
- * fold-const.c (fold_convert_const_int_from_int): ...and not here.
-
- * fold-const.c (fold_binary_op_with_conditional_arg): Do not restrict
- the folding to constants. Remove redundant final conversion.
- (fold_binary) <associate>: Do not associate if the re-association of
- constants alone overflows.
- (fold_binary) <FLOOR_MOD_EXPR>: Move transformation into BIT_AND_EXPR
- to the end of the list.
- (multiple_of_p) <COND_EXPR>: New case.
-
-2010-04-13 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * opt-functions.awk (opt_sanitized_name): New.
- (opt_enum): New.
- * optc-gen.awk: Use it
- * opth-gen.awk: Use it.
-
-2010-04-13 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (replace_uses_with_default_def_ssa_name): New function.
- (sra_modify_assign): Delete stmts loading dead data even if racc has no
- children. Call replace_uses_with_default_def_ssa_name to handle
- SSA_NAES on lhs.
-
-2010-04-13 Michael Matz <matz@suse.de>
-
- PR middle-end/43730
- * builtins.c (expand_builtin_interclass_mathfn): Also create
- a register if the predicate doesn't match.
-
-2010-04-13 Diego Novillo <dnovillo@google.com>
-
- * Makefile.in (c-pch.o, ggc-common.o): Depend on timevar.h.
- * c-pch.c: Include timevar.h.
- (c_common_write_pch): Use TV_PCH_SAVE and TV_PCH_CPP_SAVE timers.
- (c_common_read_pch): Use TV_PCH_RESTORE and TV_PCH_CPP_RESTORE timers.
- * ggc-common.c: Include timevar.h.
- (gt_pch_save): Use TV_PCH_PTR_REALLOC and TV_PCH_PTR_SORT timers.
- * timevar.def (TV_PCH_SAVE): Define.
- (TV_PCH_CPP_SAVE): Define.
- (TV_PCH_PTR_REALLOC): Define.
- (TV_PCH_PTR_SORT): Define.
- (TV_PCH_RESTORE): Define.
- (TV_PCH_CPP_RESTORE): Define.
-
-2010-04-13 Michael Matz <matz@suse.de>
-
- * tree-ssa-reassoc.c (repropagate_negates): Merge negates also
- into MINUS_EXPRs.
- (can_reassociate_p): New function.
- (break_up_subtract_bb, reassociate_bb): Use it.
-
-2010-04-13 Richard Guenther <rguenther@suse.de>
-
- PR bootstrap/43737
- * builtins.c (c_readstr): Fix assert.
-
-2010-04-13 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (extendsidi2 splitter): Also check for DX_REG
- when generating cltd insn.
-
- (*ashl<mode>3_1): Remove special handling for register operand 2.
- (*ashlsi3_1_zext): Ditto.
- (*ashlhi3_1): Ditto.
- (*ashlhi3_1_lea): Ditto.
- (*ashlqi3_1): Ditto.
- (*ashlqi3_1_lea): Ditto.
- (*<shiftrt_insn><mode>3_1): Ditto.
- (*<shiftrt_insn>si3_1_zext): Ditto.
- (*<shiftrt_insn>qi3_1_slp): Ditto.
- (*<rotate_insn><mode>3_1): Ditto.
- (*<rotate_insn>si3_1_zext): Ditto.
- (*<rotate_insn>qi3_1_slp): Ditto.
-
-2010-04-13 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-structalias.c (callused_id): Remove.
- (call_stmt_vars): New.
- (get_call_vi): Likewise.
- (lookup_call_use_vi): Likewise.
- (lookup_call_clobber_vi): Likewise.
- (get_call_use_vi): Likewise.
- (get_call_clobber_vi): Likewise.
- (make_transitive_closure_constraints): Likewise.
- (handle_const_call): Adjust to do per-call call-used handling.
- (handle_pure_call): Likewise.
- (find_what_var_points_to): Remove general callused handling.
- (init_base_vars): Likewise.
- (init_alias_vars): Initialize call_stmt_vars.
- (compute_points_to_sets): Process call-used and call-clobbered
- vars for call statements.
- (delete_points_to_sets): Free call_stmt_vars.
-
-2010-04-13 Richard Guenther <rguenther@suse.de>
-
- * tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
- Only add RW dependence for dependence distance zero.
- Adjust maximal vectorization factor according to dependences.
- Move alignment handling ...
- (vect_find_same_alignment_drs): ... here. New function.
- (vect_analyze_data_ref_dependences): Adjust.
- (vect_analyze_data_refs_alignment): Call vect_find_same_alignment_drs.
- (vect_analyze_data_refs): Adjust minimal vectorization factor
- according to data references.
- * tree-vect-loop.c (vect_analyze_loop): Analyze data-ref
- dependences before determining the vectorization factor.
- Analyze alignment after determining the vectorization factor.
- * tree-vect-slp.c ((vect_slp_analyze_bb): Analyze data-ref
- dependences before alignment.
- * tree-vectorizer.h (vect_analyze_data_ref_dependences):
- Adjust prototype.
- (vect_analyze_data_refs): Likewise.
- (MAX_VECTORIZATION_FACTOR): New define.
-
-2010-04-13 Duncan Sands <baldrick@free.fr>
-
- * except.h (lang_eh_type_covers): Remove.
- * except.c (lang_eh_type_covers): Likewise.
-
-2010-04-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
- Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/s390/s390.md: Replace TARGET_64BIT with TARGET_ZARCH.
- * config/s390/s390.c: Replace UNTIS_PER_WORD with
- UNITS_PER_LONG where it is ABI relevant.
- (s390_return_addr_rtx): Likewise.
- (s390_back_chain_rtx): Likewise.
- (s390_frame_area): Likewise.
- (s390_frame_info): Likewise.
- (s390_initial_elimination_offset): Likewise.
- (save_gprs): Likewise.
- (s390_emit_prologue): Likewise.
- (s390_emit_epilogue): Likewise.
- (s390_function_arg_advance): Likewise.
- (s390_function_arg): Likewise.
- (s390_va_start): Likewise.
- (s390_gimplify_va_arg): Likewise.
- (s390_function_profiler): Likewise.
- (s390_optimize_prologue): Likewise.
- (s390_rtx_costs): Likewise.
- (s390_secondary_reload): Likewise.
- (s390_promote_function_mode): Likewise.
- (s390_hard_regno_mode_ok): Replace TARGET_64BIT with TARGET_ZARCH.
- (s390_scalar_mode_supported_p): Disallow TImode if no 64 bit
- registers available.
- (s390_unwind_word_mode): New function.
- (s390_function_value): Split 64 bit values into register pair if
- used as return value.
- (s390_call_saved_register_used): Don't use HARD_REGNO_NREGS for
- function call parameters. Handle parallels.
- (TARGET_SCALAR_MODE_SUPPORTED_P): New macro.
- (HARD_REGNO_CALL_PART_CLOBBERED): New macro.
- (DWARF_CIE_DATA_ALIGNMENT): New macro.
- (s390_expand_setmem): Remove unused variable src_addr.
- * longlong.h: Make smul_ppmm and sdiv_qrnnd inline asms to
- deal with 64 bit registers.
- * config/s390/s390.h: Define __zarch__ predefined macro.
- Replace UNITS_PER_WORD with UNITS_PER_LONG where it is ABI relevant.
- (UNITS_PER_LONG): New macro.
- * libjava/include/s390-signal.h: Define extended ucontext
- structure containing the upper halfs of the 64 bit registers.
-
-2010-04-13 Simon Baldwin <simonb@google.com>
-
- * cfgexpand.c (gimple_expand_cfg): Clarify warning message text.
-
-2010-04-13 Eric Botcazou <ebotcazou@adacore.com>
-
- * gimple.c (walk_gimple_op) <GIMPLE_ASSIGN>: Do not request a pure
- rvalue on the RHS if the LHS is of a non-renamable type.
- * tree-ssa-ccp.c (maybe_fold_offset_to_component_ref): Fold result.
-
-2010-04-13 Matthias Klose <doko@ubuntu.com>
-
- * gcc.c (cc1_options): Handle -iplugindir before processing
- the cc1 spec. Only add -iplugindir once.
- (cpp_unique_options): Add -iplugindir option if -fplugin* options
- found.
- * common.opt (iplugindir): Remove `Separate' property, initialize.
- * plugin.c (default_plugin_dir_name): Error with missing -iplugindir
- option.
- * Makefile.in (check-%, check-parallel-%): Create plugin dir.
- (distclean): Remove plugin dir.
- * doc/invoke.texi: Document -iplugindir.
-
-2010-04-13 Basile Starynkevitch <basile@starynkevitch.net>
-
- * doc/plugins.texi (Loading Plugins): Document short
- -fplugin=foo option.
- (Plugin API): Mention default_plugin_dir_name function.
-
- * gcc.c (find_file_spec_function): Add new declaration.
- (static_spec_func): Use it for "find-file".
- (find_file_spec_function): Add new function.
- (cc1_options): Add -iplugindir option if -fplugin* options found.
-
- * gcc-plugin.h (default_plugin_dir_name): Added new declaration.
-
- * plugin.c (add_new_plugin): Updated comment, and handle short
- plugin name.
- (default_plugin_dir_name): Added new function.
-
- * common.opt (iplugindir): New option to set the plugin directory.
-
-2010-04-12 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (any_rotate): New code iterator.
- (rotate_insn): New code attribute.
- (rotate): Ditto.
- (SWIM124): New mode iterator.
- (<rotate_insn>ti3): New expander.
- (<rotate_insn>di3): Macroize expander from {rotl,rotr}di3 using
- any_rotate code iterator.
- (<rotate_insn><mode>3) Macroize expander from {rotl,rotr}{qi,hi,si}3
- using any_rotate code iterator and SWIM124 mode iterator.
- (ix86_rotlti3): New insn_and_split pattern.
- (ix86_rotrti3): Ditto.
- (ix86_rotl<dwi>3_doubleword): Macroize insn_and_split pattern from
- ix86_rotl{di,ti}3 patterns.
- (ix86_rotr<dwi>3_doubleword): Ditto from ix86_rotr{di,ti}3 patterns.
- (*<rotate_insn><mode>3_1): Merge with *{rotl,rotr}{qi,hi,si}3_1_one_bit
- and *{rotl,rotr}di3_1_one_bit_rex64. Macroize insn from
- *{rotl,rotr}{qi,hi,si}3_1 and *{rotl,rotr}di3_1_rex64 using any_rotate
- code iterator and SWI mode iterator.
- (*<rotate_insn>si3_1_zext): Merge with *{rotl,rotr}si3_1_one_bit_zext.
- Macroize insn from {rotl,rotr}si3_1_zext using any_rotate
- code iterator.
- (*<rotate_insn>qi3_1_slp): Merge with *{rotl,rotr}qi3_1_one_bit_slp.
- Macroize insn from {rotl,rotr}qi3_1_slp using any_rotate code iterator.
- (bswap rotatert splitter): Add splitter.
- (bswap splitter): Macroize splitter using any_rotate code iterator.
- Add insn predicate to split only for TARGET_USE_XCHGB or when
- optimizing function for size.
-
-2010-04-12 Steve Ellcey <sje@cup.hp.com>
-
- * config/pa/pa.c (emit_move_sequence): Remove use of
- deleted variable flag_argument_noalias.
-
-2010-04-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.gcc: Removed *-*-solaris2.7* from list of obsolete
- configurations.
- Add to unsupported targets list.
- * configure.ac (gcc_cv_as_tls): Removed i[34567]86-*-solaris2.[567]*,
- sparc*-sun-solaris2.[567]* from target lists.
- * configure: Regenerate.
- * doc/install.texi (Specific, *-*-solaris2*): Document Solaris 7
- removal.
- Remove Solaris 7 patch references.
- (Specific, sparc-sun-solaris2.7): Removed.
- (sparc-sun-solaris2*): Update Solaris 7 example.
- (sparc64-*-solaris2*): Likewise.
-
-2010-04-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.build (alpha*-dec-osf4*): Remove.
- * config.gcc: Remove alpha*-dec-osf4*, alpha-dec-osf5.0* from list
- of obsolete configurations.
- (alpha*-dec-osf[45]*): Remove alpha*-dec-osf4*, alpha-dec-osf5.0*
- support.
- * config/alpha/t-osf4: Renamed to ...
- * config/alpha/t-osf5: ... this.
- * config/alpha/osf.h: Renamed to ...
- * config/alpha/osf5.h: ... this.
- Merged old osf5.h contents.
- Update comments.
- (ASM_SPEC): Use ASM_OLDAS_SPEC directly.
- (EXTRA_SPECS): Removed.
- * doc/install.texi (Specific, alpha*-dec-osf5.1): Renamed to
- reflect removal of Tru64 UNIX V4.0/V5.0 support.
- Document that.
-
-2010-04-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/contrib.texi (Contributors, Rainer Orth): Update.
-
-2010-04-12 Kai Tietz <kai.tietz@onevision.com>
-
- PR/43702
- * config/i386/i386.c (x86_this_parameter): Handle aggregate for
- __thiscall convention.
-
-2010-04-12 Steve Ellcey <sje@cup.hp.com>
-
- * config/pa/pa.c (hppa_legitimize_address): Remove unused variable
- orig_base.
- * config/pa/pa.md (call, call_value): Remove unused variable call_insn.
-
-2010-04-12 Steve Ellcey <sje@cup.hp.com>
-
- * function.c (assign_parms_initialize_all): Add unused attribute
- to fntype.
-
-2010-04-12 Richard Guenther <rguenther@suse.de>
-
- * gsstruct.def (GSS_CALL): New.
- * gimple.def (GIMPLE_CALL): Change to GSS_CALL.
- * gimple.h: Include tree-ssa-alias.h.
- (struct gimple_statement_call): New.
- (union gimple_statement_struct_d): Add gimple_call member.
- (gimple_call_reset_alias_info): Declare.
- (gimple_call_use_set): New function.
- (gimple_call_clobber_set): Likewise.
- * Makefile.in (GIMPLE_H): Add tree-ssa-alias.h.
- * gimple.c (gimple_call_reset_alias_info): New function.
- (gimple_build_call_1): Call it.
- * lto-streamer-in.c (input_gimple_stmt): Likewise.
- * tree-inline.c (remap_gimple_stmt): Likewise.
- (expand_call_inline): Remove callused handling.
- * cfgexpand.c (update_alias_info_with_stack_vars): Likewise.
- * tree-dfa.c (dump_variable): Likewise.
- * tree-parloops.c (parallelize_loops): Likewise.
- * tree-ssa.c (init_tree_ssa): Likewise.
- (delete_tree_ssa): Likewise.
- * tree-flow-inline.h (is_call_used): Remove.
- * tree-flow.h (struct gimple_df): Remove callused member.
- * tree-nrv.c (dest_safe_for_nrv_p): Adjust predicate.
- * tree-ssa-alias.c (dump_alias_info): Remove callused handling.
- (ref_maybe_used_by_call_p_1): Simplify.
- (call_may_clobber_ref_p_1): Likewise.
- * tree-ssa-structalias.c (compute_points_to_sets): Set
- the call stmt used and clobbered sets.
- * tree-tailcall.c (suitable_for_tail_opt_p): Adjust predicate.
- (find_tail_calls): Verify the tail call.
-
-2010-04-12 Richard Guenther <rguenther@suse.de>
-
- * ipa.c (cgraph_postorder): Adjust postorder to guarantee
- single-iteration always-inline inlining.
- * ipa-inline.c (cgraph_mark_inline): Do not return anything.
- (cgraph_decide_inlining): Do not handle always-inline specially.
- (try_inline): Remove always-inline cycle detection special case.
- Do not recurse on always-inlines.
- (cgraph_early_inlining): Do not iterate if not optimizing.
- (cgraph_gate_early_inlining): remove.
- (pass_early_inline): Run unconditionally.
- (gate_cgraph_decide_inlining): New function.
- (pass_ipa_inline): Use it. Do not run the IPA inliner if
- not inlining or optimizing.
- (cgraph_decide_inlining_of_small_functions): Also consider
- always-inline functions.
- (cgraph_default_inline_p): Return true for nodes which should
- disregard inline limits.
- (estimate_function_body_sizes): Assume zero size and time for
- nodes which are marked as disregarding inline limits.
- (cgraph_decide_recursive_inlining): Do not perform recursive
- inlining on always-inline nodes.
-
-2010-04-12 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/43699
- * c-typeck.c (c_process_expr_stmt): Call mark_exp_read even
- for exprs satisfying handled_component_p.
-
-2010-04-12 Eric Botcazou <ebotcazou@adacore.com>
-
- * expr.c (categorize_ctor_elements_1): Properly count sub-elements of
- non-constant aggregate elements.
-
- * gimplify.c (gimplify_init_constructor): Do not pre-evaluate if this
- is a real initialization.
-
-2010-04-12 Shujing Zhao <pearly.zhao@oracle.com>
-
- PR c/36774
- * c-decl.c (start_function): Move forward check for nested function.
-
-2010-04-11 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh-protos.h (sh_legitimize_reload_address): Declare.
- * config/sh/sh.c: Include reload.h.
- (sh_legitimize_reload_address): New.
- * config/sh/sh.h (LEGITIMIZE_RELOAD_ADDRESS): Use
- sh_legitimize_reload_address.
-
-2010-04-11 Kaushik Phatak <kaushik.phatak@kpitcummins.com>
-
- * config/sh/sh.md (*movqi_pop): New insn pattern.
- * config/sh/predicates.md (sh_no_delay_pop_operand): New predicate.
-
-2010-04-11 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (any_shiftrt): New code iterator.
- (shiftrt_insn): New code attribute.
- (shiftrt): Ditto.
- (<shiftrt_insn><mode>3): Macroize expander from {ashr,lshr}<mode>3
- using any_shiftrt code iterator.
- (*<shiftrt_insn><mode>3_doubleword): Macroize insn_and_split from
- *{ashr,lshr}<mode>3_doubleword using any_shiftrt code iterator.
- (*<shiftrt_insn><mode>3_doubleword peephole2): Macroize peephole2
- pattern from corresponding peephole2 patterns.
- (*<shiftrt_insn><mode>3_1): Macroize insn from *{ashr,lshr}<mode>3_1
- using any_shiftrt code iterator.
- (*<shiftrt_insn>si3_1_zext): Ditto from *{ashr,lshr}si3_1_zext.
- (*<shiftrt_insn>qi3_1_slp): Ditto from *{ashr,lshr}qi3_1_slp.
- (*<shiftrt_insn><mode>3_cmp): Ditto from *{ashr,lshr}<mode>3_cmp.
- (*<shiftrt_insn><mode>3_cmp_zext): Ditto from
- *{ashr,lshr}<mode>3_cmp_zext.
- (*<shiftrt_insn><mode>3_cconly): Ditto from *{ashr,lshr}<mode>3_cconly.
-
-2010-04-11 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (*ashr<mode>3_cconly): Fix wrong mode of
- scratch register.
- (*lshr<mode>3_cconly): Ditto.
-
-2010-04-11 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (lshr<mode>3): Macroize expander from
- lshr{qi,hi,si,di,ti}3_1 using SDWIM mode iterator.
- (*lshr<mode>3_doubleword): New insn_and_split_pattern. Macroize
- pattern from *lshr{di,ti}3_1 and corresponding splitters using
- DWI mode iterator.
- (*lshr<mode>3_doubleword peephole2): Macroize peephole2 pattern
- from corresponding peephole2 patterns.
- (*lshr<mode>3_1): Merge with *lshr{qi,hi,si}3_1_one_bit and
- *lshrdi3_1_one_bit_rex64. Macroize insn from *lshr{qi,hi,si}3_1
- and *lshrdi3_1_rex64 using SWI mode iterator.
- (*lshrsi3_1_zext): Merge with *lshrsi3_1_one_bit_zext.
- (*lshrqi3_1_slp): Merge with *lshrqi3_1_one_bit_slp.
- (*lshr<mode>3_cmp): Merge with *lshr{qi,hi,si}3_one_bit_cmp and
- *lshrdi3_one_bit_cmp_rex64. Macroize insn from *lshr{qi,hi,si}3_cmp
- and *lshrdi3_cmp_rex64 using SWI mode iterator.
- (*lshrsi3_cmp_zext): Merge with *lshrsi3_cmp_one_bit_zext.
- (*lshr<mode>3_cconly): Merge with *lshr{qi,hi,si}3_one_bit_cconly and
- *lshrdi3_one_bit_cconly_rex64. Macroize insn from
- *lshr{qi,hi,si}3_cconly and *lshrdi3_cconly_rex64 using
- SWI mode iterator.
-
-2010-04-10 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (ashr<mode>3): Macroize expander from
- ashr{qi,hi,si,di,ti}3_1 using SDWIM mode iterator.
- (*ashr<mode>3_doubleword): New insn_and_split_pattern. Macroize
- pattern from *ashr{di,ti}3_1 and corresponding splitters using
- DWI mode iterator.
- (*ashr<mode>3_doubleword peephole2): Macroize peephole2 pattern
- from corresponding peephole2 patterns.
- (ashrdi3_cvt): Rename from ashrdi3_63_rex64.
- (ashrsi3_cvt): Rename from ashrsi3_31.
- (*ashrsi3_cvt_zext): Rename from *ashrsi3_31_zext.
- (x86_shift<mode>_adj_3): Macroize expander from x86_shift_adj_3
- and x86_64_shift_adj_3 using SWI48 mode iterator.
- (*ashr<mode>3_1): Merge with *ashr{qi,hi,si}3_1_one_bit and
- *ashrdi3_1_one_bit_rex64. Macroize insn from *ashr{qi,hi,si}3_1
- and *ashrdi3_1_rex64 using SWI mode iterator.
- (*ashrsi3_1_zext): Merge with *ashrsi3_1_one_bit_zext.
- (*ashrqi3_1_slp): Merge with *ashrqi3_1_one_bit_slp.
- (*ashr<mode>3_cmp): Merge with *ashr{qi,hi,si}3_one_bit_cmp and
- *ashrdi3_one_bit_cmp_rex64. Macroize insn from *ashr{qi,hi,si}3_cmp
- and *ashrdi3_cmp_rex64 using SWI mode iterator.
- (*ashrsi3_cmp_zext): Merge with *ashrsi3_cmp_one_bit_zext.
- (*ashr<mode>3_cconly): Merge with *ashr{qi,hi,si}3_one_bit_cconly and
- *ashrdi3_one_bit_cconly_rex64. Macroize insn from
- *ashr{qi,hi,si}3_cconly and *ashrdi3_cconly_rex64 using
- SWI mode iterator.
- (sign_extend splitters): Update for renamed ashr{di,si}3_cvt patterns.
- * config/i386/i386.c (ix86_split_ashr): Update for renamed
- x86_shift<mode>_adj_3 expanders.
-
-2010-04-10 Wei Guozhi <carrot@google.com>
-
- PR target/42601
- * config/arm/arm.c (arm_pic_static_addr): New function.
- (legitimize_pic_address): Call arm_pic_static_addr when it detects
- a static symbol.
- (arm_output_addr_const_extra): Output expression for new pattern.
- * config/arm/arm.md (UNSPEC_SYMBOL_OFFSET): New unspec symbol.
-
-2010-04-10 Bernd Schmidt <bernds@codesourcery.com>
-
- * ira-costs.c (record_reg_classes): Ignore alternatives that are
- not enabled.
-
- * Makefile.in (web.o): Depend on insn-config.h and $(RECOG_H).
- * web.c: Include "insn-config.h" and "recog.h".
- (union_match_dups): New function.
- (web_main): Call it.
- (union_defs): Don't try to recognize match_dups.
-
- * reload1.c (eliminate_regs_in_insn): Don't restore an operand
- if doing so would replace the entire pattern.
-
-2010-04-09 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/43707
- PR target/43709
- * config/i386/i386.md (*ashl<mode>3_doubleword): Split to insn
- and splitter pattern. Change splitter operand 1 predicate to
- nonmemory_operand.
-
-2010-04-09 Martin Jambor <mjambor@suse.cz>
-
- * ipa-cp.c (ipcp_lats_are_equal): Return true also if the two
- lattices are addresses of CONST_DECLs with the same initial value.
- (ipcp_print_all_lattices): Print values of CONST_DECLs.
- * ipa-prop.c (ipa_print_node_jump_functions): Likewise.
-
-2010-04-09 Eric Botcazou <ebotcazou@adacore.com>
- Bernd Schmidt <bernds@codesourcery.com>
-
- * loop-invariant.c (replace_uses): New static function.
- (move_invariant_reg): Use it to ensure we can replace the uses.
-
-2010-04-09 Hariharan Sandanagobalane <hariharan@picochip.com>
-
- * config/picochip/picochip.c (picochip_rtx_costs): Use correct
- function template.
- (picochip_override_options): Enable section anchors only above -O1.
- (picochip_reorg): Fixed a couple of build warnings.
-
-2010-04-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac (plugin -rdynamic test): Log result.
- * configure: Regenerate.
- * config/sol2.h (LINK_SPEC): Handle -rdynamic.
- (RDYNAMIC_SPEC): Define.
- * config/sol2-gld.h (RDYNAMIC_SPEC): Redefine.
-
-2010-04-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac: Determine Sun ld version numbers.
- (comdat_group): Restrict GNU ld version checks to gld.
- (comdat_group, *-*-solaris2.1[1-9]*): Enable for Sun ld > 1.1688.
- (enable_comdat): Support --enable-comdat.
- * configure: Regenerate.
- * doc/install.texi (Configuration): Document --enable-comdat.
-
-2010-04-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/sparc/sol2-gld.h: Remove SPARC reference. Rename ...
- * config/sol2-gld.h: ... here.
- * config.gcc (sparc*-*-solaris2*): Reflect this.
- (i[34567]86-*-solaris2*): Use it.
-
-2010-04-09 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.c (ia64_dfa_new_cycle): Remove unused variable
- setup_clocks_p.
- (final_emit_insn_group_barriers): Remove unused variable prev_insn.
-
-2010-04-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR 42965
- * diagnostic.c (diagnostic_initialize): Initialize
- some_warnings_are_errors.
- (diagnostic_finish): New.
- (diagnostic_action_after_output): Call it before exiting.
- (diagnostic_report_diagnostic): Do not print message here. Set
- some_warnings_are_errors.
- * diagnostic.h (diagnostic_context): Delete
- issue_warnings_are_errors_message. Add some_warnings_are_errors.
- (diagnostic_finish): Declare.
- * toplev.c (toplev_main): Call it before exit.
-
-2010-04-09 Jason Merrill <jason@redhat.com>
-
- PR c++/42623
- * c-common.c (c_sizeof_or_alignof_type): Return error_mark_node
- for incomplete type.
-
- PR c++/41788
- * stor-layout.c (finalize_record_size): Don't change TYPE_PACKED
- based on a warning flag.
-
-2010-04-09 Richard Guenther <rguenther@suse.de>
-
- * tree-pretty-print.c (dump_generic_node): Dump TYPE_VECTOR_SUBPARTS.
-
-2010-04-09 Iain Sandoe <iains@gcc.gnu.org>
-
- PR bootstrap/43684
- * varasm.c (default_assemble_visibility): Wrap vars that are
- set, but unused, by targets without GAS.
- * config/rs6000/rs6000.c (paired_emit_vector_compare):
- Remove set, but unused, vars.
- (rs6000_legitimize_tls_address): Likewise.
- (altivec_expand_dst_builtin): Likewise.
- * config/darwin.c (machopic_classify_symbol): Likewise.
- (machopic_indirection_name): Likewise.
-
-2010-04-09 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md (DWI): New mode iterator.
- (S): New mode attribute.
- (shift_operand): Ditto.
- (shift_immediate_operand): Ditto.
- (ashl_input_operand): Ditto.
- (ashl<mode>3): Macroize expander from ashl{qi,hi,si,di,ti}3_1
- using SDWIM mode iterator.
- (*ashl<mode>3_doubleword): New insn_and_split_pattern. Macroize
- pattern from *ashl{di,ti}3_1 and corresponding splitters using
- DWI mode iterator.
- (*ashl<mode>3_doubleword peephole2): Macroize peephole2 pattern
- from corresponding peephole2 patterns.
- (x86_shift<mode>_adj_1): Macroize expander from x86_shift_adj_1
- and x86_64_shift_adj_1 using SWI48 mode iterator.
- (x86_shift<mode>_adj_2): Ditto.
- (*ashldi3_1_rex64): Split TYPE_LEA pattern.
- (*ashl<mode>3_1): Macroize insn from *ashlsi3_1 and *ashldi3_1_rex64
- using SWI48 mode iterator.
- (*ashl<mode>3_cmp): Macroize insn from *ashl{qi,hi,si}3_cmp and
- *ashldi3_cmp_rex64 using SWI mode iterator.
- (*ashl<mode>3_cconly): Macroize insn from *ashl{qi,hi,si}3_cconly and
- *ashldi3_cconly_rex64 using SWI mode iterator.
- * config/i386/i386.c (ix86_split_ashl): Update for renamed
- x86_shift<mode>_adj_{1,2}.
- (ix86_split_ashr): Ditto.
- (ix86_split_lshr): Ditto.
-
-2010-04-09 Richard Guenther <rguenther@suse.de>
-
- * target.h (builtin_conversion): Pass in input and output types.
- * targhooks.c (default_builtin_vectorized_conversion): Adjust.
- * targhooks.h (default_builtin_vectorized_conversion): Likewise.
- * tree-vect-stmts.c (vectorizable_conversion): Adjust.
- * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): Adjust.
-
- * config/i386/i386.c (ix86_vectorize_builtin_conversion): Adjust.
- Handle AVX modes.
- * config/rs6000/rs6000.c (rs6000_builtin_conversion): Adjust.
-
-2010-04-09 Richard Guenther <rguenther@suse.de>
-
- PR target/43152
- * config/i386/sse.md (vcond<mode>): Handle AVX modes as well.
-
-2010-04-09 Richard Guenther <rguenther@suse.de>
-
- * tree-vectorizer.h (struct _stmt_vec_info): Document
- that vectype is the type of the LHS.
- (supportable_widening_operation, supportable_narrowing_operation):
- Get both input and output vector types as arguments.
- (vect_is_simple_use_1): Declare.
- (get_same_sized_vectype): Likewise.
- * tree-vect-loop.c (vect_determine_vectorization_factor):
- Set STMT_VINFO_VECTYPE to the vector type of the def.
- (vectorizable_reduction): Adjust.
- * tree-vect-patterns.c (vect_recog_widen_mult_pattern):
- Adjust. Specify the output vector type.
- (vect_pattern_recog_1): Adjust.
- * tree-vect-stmts.c (get_same_sized_vectype): New function.
- (vectorizable_call): Adjust.
- (vectorizable_conversion): Likewise.
- (vectorizable_operation): Likewise.
- (vectorizable_type_demotion): Likewise.
- (vectorizable_type_promotion): Likewise.
- (vect_analyze_stmt): Set STMT_VINFO_VECTYPE to the vector type of
- the def.
- (vect_is_simple_use_1): New function.
- (supportable_widening_operation): Get both input and output
- vector types.
- (supportable_narrowing_operation): Likewise.
- * tree-vect-slp.c (vect_schedule_slp_instance): Adjust.
-
-2010-04-09 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/cygming.h (TARGET_OS_CPP_BUILTINS): Add
- __thiscall and _thiscall as predefined macros.
- * config/i386/i386.c (ix86_handle_cconv_attribute): Add
- thiscall attribute handling.
- (ix86_comp_type_attributes): Likewise.
- (ix86_function_regparm): Likewise.
- (ix86_return_pops_args): Likewise.
- (init_cumulative_args): Likewise.
- (find_drap_reg): Likewise.
- (ix86_static_chain): Likewise.
- (x86_this_parameter): Likewise.
- (x86_output_mi_thunk): Likewise.
- (ix86_attribute_table): Add description for thiscall attribute.
- * config/i386/i386.h (ix86_args): Adjust comment for member fastcall.
- * doc/extend.texi: Add documentation for thiscall.
-
-2010-04-09 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR c++/28584
- * c.opt (Wint-to-pointer-cast): Available in C++.
- * doc/invoke.texi (Wint-to-pointer-cast): Available in C++.
-
-2010-04-08 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree.h (TREE_ADDRESSABLE): Document its effect for function types.
- * calls.c (expand_call): Pass the function type to aggregate_value_p.
- * function.c (aggregate_value_p): Do not honor DECL_BY_REFERENCE on
- the target function of a CALL_EXPR. Honor TREE_ADDRESSABLE on the
- function type instead. Reorder and simplify checks.
-
- * gimplify.c (gimplify_modify_expr_rhs) <WITH_SIZE_EXPR>: New case.
-
-2010-04-08 Jing Yu <jingyu@google.com>
- Zdenek Dvorak <ook@ucw.cz>
-
- PR tree-optimization/42720
- * tree-ssa-loop-unswitch.c (tree_ssa_unswitch_loops): Move one-time
- loop unswitch conditions here from ...
- (tree_unswitch_single_loop): ... here.
-
-2010-04-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c: Fix comments and simplify logic.
-
-2010-04-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c (if_convertible_loop_p): Remove unused parameter.
- (tree_if_conversion): Same. Update call to if_convertible_loop_p.
- (main_tree_if_conversion): Update call to tree_if_conversion.
-
-2010-04-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR 42485
- * doc/invoke.texi (-b,-V): Delete.
- * doc/tm.texi: Do not mention -b.
- * gcc.c (display_help): Delete -b and -V.
- (process_command): Delete -b and -V.
- * gcc.h (DEFAULT_SWITCH_TAKES_ARG): Delete -b and -V.
-
-2010-04-08 Christian Borntraeger <borntraeger@de.ibm.com>
- Wolfgang Gellerich <gellerich@de.ibm.com>
-
- Implement target hook for loop unrolling
- * target.h (loop_unroll_adjust): Add a new target hook function.
- * target-def.h (TARGET_LOOP_UNROLL_ADJUST): Likewise.
- * doc/tm.texi (TARGET_LOOP_UNROLL_ADJUST): Document it.
- * config/s390/s390.c (TARGET_LOOP_UNROLL_ADJUST): Define it.
- (s390_loop_unroll_adjust): Implement the new target hook for s390.
- * loop-unroll.c (decide_unroll_runtime_iterations): Call loop unroll
- target hook.
- (decide_unroll_stupid): Likewise.
-
-2010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR target/43643
- * config/i386/gmon-sol2.c [__x86_64__]: Properly restore %rcx.
-
-2010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/install.texi (Specific, i?86-*-solaris2.10): Fix grammar.
- (Specific, *-*-solaris2*): Likewise.
- Don't prefer Sun as over GNU as.
-
-2010-04-08 Wolfgang Gellerich <gellerich@de.ibm.com>
-
- * config/s390/s390.c (override_options): Adjust the z10 defaults
- for max-unroll-times, max-completely-peeled-insns
- and max-completely-peel-times.
-
-2010-04-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.c (s390_expand_movmem): Issue prefetch
- instructions for z10.
- (s390_expand_setmem): Likewise.
- (s390_expand_cmpmem): Likewise.
-
-2010-04-08 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43679
- * tree-ssa-pre.c (eliminate): Only propagate copies.
-
-2010-04-08 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/43681
- * expr.c (block_move_libcall_safe_for_call_parm): Avoid
- set but not used variable warning.
-
-2010-04-08 Wei Guozhi <carrot@google.com>
-
- PR target/41653
- * config/arm/arm.c (thumb1_size_rtx_costs): New function.
- (arm_size_rtx_costs): Call the new function when optimized for size.
-
-2010-04-08 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43670
- * cfgexpand.c (expand_debug_expr): If for non-NULL offset
- op0 is not a MEM, just return NULL instead of assertion
- failure.
- (discover_nonconstant_array_refs): Don't walk debug stmts.
-
-2010-04-08 Doug Kwan <dougkwan@google.com>
-
- * configure.ac: Recognize gold and do not use its version number
- to test ld features.
- * configure: Regenerate.
-
-2010-04-08 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- PR middle-end/40815
- * tree-ssa-reassoc.c (broken_up_substracts): Rename to plus_negates.
- (negate_value): Move code to push elements to broken_up_substracts ...
- (eliminate_plus_minus_pair): ... here. Push operands that have no
- negative pair to plus_negates.
- (repropagate_negates, init_reassoc, fini_reassoc): Update.
-
-2010-04-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * doc/install.texi (Configuration): Move description of
- --enable-lto, --with-libelf*, --enable-gold from Java section to
- general section.
-
- * doc/generic.texi (Working with declarations)
- (Function Properties, C and C++ Trees): Fix typos.
- * doc/sourcebuild.texi (Top Level): Likewise.
-
-2010-04-07 Jakub Jelinek <jakub@redhat.com>
-
- PR c/18624
- * tree.h (DECL_READ_P): Define.
- (struct tree_decl_common): Add decl_read_flag.
- * c-decl.c (pop_scope): If TREE_USED but !DECL_READ_P, issue
- a set but not used warning.
- (merge_decls): Merge DECL_READ_P flag.
- (finish_decl, build_compound_literal): Set DECL_READ_P flag.
- (finish_function): Issue -Wunused-but-set-parameter diagnostics.
- * c-common.c (handle_used_attribute, handle_unused_attribute):
- Likewise.
- * c-tree.h (default_function_array_read_conversion, mark_exp_read):
- New prototypes.
- * c-typeck.c (default_function_array_read_conversion, mark_exp_read):
- New functions.
- (default_conversion, c_process_expr_stmt): Call mark_exp_read.
- * c-parser.c (c_parser_initializer, c_parser_expr_no_commas,
- c_parser_binary_expression, c_parser_cast_expression,
- c_parser_expr_list, c_parser_omp_atomic, c_parser_omp_for_loop):
- Call default_function_array_read_conversion instead of
- default_function_array_conversion where needed.
- (c_parser_unary_expression, c_parser_conditional_expression,
- c_parser_postfix_expression_after_primary, c_parser_initelt):
- Likewise. Call mark_exp_read where needed.
- (c_parser_statement_after_labels, c_parser_asm_operands,
- c_parser_typeof_specifier, c_parser_sizeof_expression,
- c_parser_alignof_expression, c_parser_initval): Call mark_exp_read
- where needed.
- * common.opt (Wunused-but-set-variable, Wunused-but-set-parameter):
- New.
- * toplev.c (warn_unused_but_set_variable): Default to warn_unused.
- (warn_unused_but_set_parameter): Default to warn_unused
- && extra_warnings.
- * doc/invoke.texi: Document -Wunused-but-set-variable and
- -Wunused-but-set-parameter.
-
- * tree-ssa-pre.c (my_rev_post_order_compute): Remove set but not
- used count variable.
- * genemit.c (gen_expand, gen_split): Avoid set but not used warnings
- when operandN variables aren't used in the body of the expander
- or splitter.
- * tree-outof-ssa.c (FOR_EACH_ELIM_GRAPH_SUCC,
- FOR_EACH_ELIM_GRAPH_PRED): Avoid set but not used warnings.
- * tree-ssa-operands.h (FOR_EACH_SSA_TREE_OPERAND): Likewise.
- * tree-flow.h (FOR_EACH_IMM_USE_FAST, FOR_EACH_IMM_USE_STMT,
- FOR_EACH_IMM_USE_ON_STMT): Likewise.
- * tree.h (FOR_EACH_CONSTRUCTOR_ELT): Likewise.
- * tree.c (PROCESS_ARG): Likewise.
-
-2010-04-07 Simon Baldwin <simonb@google.com>
-
- * diagnostic.h (diagnostic_override_option_index): New macro to
- set a diagnostic's option_index.
- * c-tree.h (c_cpp_error): Add warning reason argument.
- * opts.c (_warning_as_error_callback): New.
- (register_warning_as_error_callback): Store callback for
- warnings enabled via enable_warning_as_error.
- (enable_warning_as_error): Call callback, minor code tidy.
- * opts.h (register_warning_as_error_callback): Declare.
- * c-opts.c (warning_as_error_callback): New, set cpp_opts flag in
- response to -Werror=.
- (c_common_init_options): Register warning_as_error_callback in opts.c.
- * common.opt: Add -Wno-cpp option.
- * c-common.c (struct reason_option_codes_t): Map cpp warning
- reason codes to gcc option indexes.
- * (c_option_controlling_cpp_error): New function, lookup the gcc
- option index for a cpp warning reason code.
- * (c_cpp_error): Add warning reason argument, call
- c_option_controlling_cpp_error for diagnostic_override_option_index.
- * doc/invoke.texi: Document -Wno-cpp.
-
-2010-04-07 Richard Guenther <rguenther@suse.de>
-
- * ipa-reference.c (mark_load): Use get_base_address.
- (mark_store): Likewise.
-
- * tree-ssa-ccp.c (gimplify_and_update_call_from_tree): Avoid
- inserting GIMPLE_NOPs into the IL.
- * tree-ssa-structalias.c (get_constraint_for_component_ref):
- Explicitly strip handled components and indirect references.
-
- * fold-const.c (fold_unary_loc): Do not strip qualifiers when
- folding address expressions.
- * gimple.c (gimple_ior_addresses_taken_1): Use get_base_address.
- * tree-ssa-alias.c (decl_refs_may_alias_p): Do not use
- operand_equal_p to compare decls.
- (ptr_deref_may_alias_decl_p): Likewise.
- * tree-ssa-operands.c (get_asm_expr_operands): Simplify
- * tree-ssa-forwprop.c (forward_propagate_into_gimple_cond):
- Handle reversed comparison ops.
- * tree-sra.c (asm_visit_addr): Use get_base_address.
- * ipa-prop.c (visit_store_addr_for_mod_analysis): Use get_base_address.
- * ipa-reference.c (mark_address): Use get_base_address.
-
-2010-04-07 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-forwprop.c (forward_propagate_addr_expr):
- Propagate constants everywhere.
-
-2010-04-07 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43516
- * tree.c (MAX_INT_CACHED_PREC): Define.
- (nonstandard_integer_type_cache): New array.
- (build_nonstandard_integer_type): Cache results for precision
- <= MAX_INT_CACHED_PREC.
-
-2010-04-07 Richard Guenther <rguenther@suse.de>
-
- * doc/invoke.texi (-fargument-alias, -fargument-noalias,
- -fargument-noalias-global, -fargument-noalias-anything): Remove.
- * common.opt: Likewise.
- * tree-ssa-structalias.c (intra_create_variable_infos): Adjust comment.
- * alias.c (base_alias_check): Remove flag_argument_noalias handling.
- (nonoverlapping_memrefs_p): Likewise.
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
- * opts.c (common_handle_option): Handle OPT_fargument_alias,
- OPT_fargument_noalias, OPT_fargument_noalias_anything and
- OPT_fargument_noalias_global for backward compatibility.
-
-2010-04-07 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43270
- * tree-vrp.c (check_array_ref): Fix flexible array member detection.
- * tree-ssa-sccvn.h (fully_constant_vn_reference_p): Declare.
- * tree-ssa-pre.c (phi_translate_1): Adjust.
- (fully_constant_expression): Split out vn_reference handling to ...
- * tree-ssa-sccvn.c (fully_constant_vn_reference_p): ... here.
- Fold reads from constant strings.
- (vn_reference_lookup): Handle fully constant references.
- (vn_reference_lookup_pieces): Likewise.
- * Makefile.in (expmed.o-warn): Add -Wno-error.
-
-2010-04-07 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (find_param_candidates): Allow scalar va_list types.
-
-2010-04-07 Iain Sandoe <iains@gcc.gnu.org>
-
- PR driver/41594
- * gcc.c: Add -static-libstdc++ to list of recognized options.
-
-2010-04-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to generic.
-
-2010-04-07 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42617
- * expr.c (expand_expr_real_1): For TARGET_MEM_REFs with pointer
- bases build simple mem attributes to retain points-to information.
-
-2010-04-07 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42617
- * alias.c (ao_ref_from_mem): Without MEM_OFFSET or MEM_SIZE
- preserve points-to related information.
-
-2010-04-07 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42617
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not
- discard plain indirect references.
- * fold-const.c (operand_equal_p): Guard against NULL_TREE type.
- * tree.c (tree_nop_conversion): Likewise.
-
-2010-04-07 Dodji Seketeli <dodji@redhat.com>
-
- PR debug/43628
- * dwarf2out.c (modified_type_die): Ignore artificial typedefs.
-
-2010-04-06 Kai Tietz <kai.tietz@onevision.com>
-
- * config/i386/i386.c (ix86_handle_cconv_attribute): Ignore
- calling convention attributes on METHOD_TYPEs for w64 ABI, too.
-
-2010-04-07 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c: Fix indentation and comments.
-
-2010-04-07 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c: Sort static functions in topological order.
-
-2010-04-07 Sebastian Pop <sebastian.pop@amd.com>
-
- * tree-if-conv.c: Fix indentation and comments.
-
-2010-04-06 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43519
- * graphite-clast-to-gimple.c (max_signed_precision_type): Use
- lang_hooks.types.type_for_size instead of
- build_nonstandard_integer_type.
- When converting an unsigned type to signed, double its precision.
- (gcc_type_for_interval): Use lang_hooks.types.type_for_size.
- (gcc_type_for_iv_of_clast_loop): Call max_signed_precision_type.
- (graphite_create_new_loop_guard): When ub + 1 wraps around,
- use lb <= ub.
-
-2010-04-06 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43519
- * graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use
- POINTER_PLUS_EXPR for pointer types.
-
-2010-04-06 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43519
- * Makefile.in (graphite-clast-to-gimple.o): Depends on langhooks.h.
- * graphite-clast-to-gimple.c: Include langhooks.h.
- (max_signed_precision_type): New.
- (max_precision_type): Takes two types as arguments.
- (precision_for_value): New.
- (precision_for_interval): New.
- (gcc_type_for_interval): New.
- (gcc_type_for_value): New.
- (gcc_type_for_clast_term): New.
- (gcc_type_for_clast_red): New.
- (gcc_type_for_clast_bin): New.
- (gcc_type_for_clast_expr): Split up into several functions.
- (gcc_type_for_clast_eq): Rewritten.
- (compute_bounds_for_level): New.
- (compute_type_for_level_1): New.
- (compute_type_for_level): New.
- (gcc_type_for_cloog_iv): Removed.
- (gcc_type_for_iv_of_clast_loop): Rewritten.
- (graphite_create_new_loop): Compute the lower and upper bound types
- with gcc_type_for_clast_expr.
- (graphite_create_new_loop_guard): Same.
- (find_cloog_iv_in_expr): Removed.
- (compute_cloog_iv_types_1): Removed.
- (compute_cloog_iv_types): Removed.
- (gloog): Do not call compute_cloog_iv_types.
- * graphite-sese-to-poly.c (new_gimple_bb): Do not initialize
- GBB_CLOOG_IV_TYPES.
- (free_data_refs_aux): Do not free GBB_CLOOG_IV_TYPES.
- * sese.h (struct gimple_bb): Removed field cloog_iv_types.
- (GBB_CLOOG_IV_TYPES): Removed.
-
-2010-04-06 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Assert that
- gimple_phi_num_args of the loop close SSA phi node is equal to 1.
- (detect_commutative_reduction): Same.
-
-2010-04-06 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (graphite_verify): Remove redundant
- call to verify_ssa. Invoke verify_loop_closed_ssa with an extra
- argument.
- * graphite-scop-detection.c (canonicalize_loop_closed_ssa_form): Same.
- * graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa): Same.
- (rewrite_commutative_reductions_out_of_ssa): Same.
- * passes.c (execute_function_todo): Call verify_ssa for every pass
- in the LNO. Invoke verify_loop_closed_ssa with an extra argument.
- * tree-flow.h (verify_loop_closed_ssa): Update declaration.
- * tree-parloops.c (parallelize_loops): Invoke verify_loop_closed_ssa
- with an extra argument.
- * tree-ssa-loop-manip.c (check_loop_closed_ssa_stmt): Same. Call
- verify_ssa only when the extra argument is true.
- (gimple_duplicate_loop_to_header_edge): Invoke verify_loop_closed_ssa
- with an extra argument.
- (tree_transform_and_unroll_loop): Same.
-
-2010-04-06 Sebastian Pop <sebastian.pop@amd.com>
-
- * passes.c (execute_function_todo): Call verify_loop_closed_ssa
- for all the passes of the LNO having LOOP_CLOSED_SSA.
- * tree-if-conv.c (pass_if_conversion): Remove TODO_verify_loops.
- * tree-loop-distribution.c (pass_loop_distribution): Same.
- * tree-pass.h (TODO_verify_loops): Removed.
- * tree-ssa-loop.c (pass_tree_loop_init): Same.
- (pass_lim): Same.
- (pass_tree_unswitch): Same.
- (pass_predcom): Same.
- (pass_vectorize): Same.
- (pass_linear_transform): Same.
- (pass_graphite_transforms): Same.
- (pass_iv_canon): Same.
- (pass_complete_unroll): Same.
- (pass_complete_unrolli): Same.
- (pass_parallelize_loops): Same.
- (pass_loop_prefetch): Same.
- (pass_iv_optimize): Same.
-
-2010-04-06 Changpeng Fang <changpeng.fang@amd.com>
-
- PR middle-end/32824
- * passes.c (init_optimization_passes): Move pass_lim before
- pass_copy_prop and pass_dce_loop.
-
-2010-04-06 Jakub Jelinek <jakub@redhat.com>
-
- PR target/43667
- * config/i386/i386.c (bdesc_multi_arg): Use OPTION_MASK_ISA_XOP
- instead of OPTION_MASK_ISA_AVX for __builtin_ia32_vpermil2p*.
- (ix86_expand_args_builtin): Use V*_FTYPE_* enum codes instead of
- MULTI_* defines for 4 argument vpermil2p* builtins.
-
-2010-04-06 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386-protos.h (x86_maybe_negate_const_int): Declare.
- * config/i386/i386.c (x86_maybe_negate_const_int): New.
- (x86_output_mi_thunk): Use x86_maybe_negate_const_int.
- * config/i386/i386.md (*add<mode>_1, *addsi_1_zext, *addhi_1,
- *addhi_1_lea, *addqi_1, *addqi_1_lea, *addqi_1_slp, *add<mode>_2,
- *addsi_2_zext, *addhi_2, *addqi_2, *add<mode>_3, *addsi_3_zext,
- *addhi_3, *addqi_3,*add<mode>_5, *addhi_5, *addqi_5):
- Use x86_maybe_negate_const_int to output insn mnemonic.
- (*adddi_4, *addsi_4, *addhi_4, *addqi_4): Ditto. Remove overflow
- check from instruction predicate. Update comments.
- * config/i386/sync.md (sync_add<mode>): Use
- x86_maybe_negate_const_int to output insn mnemonic.
-
-2010-04-06 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/42906
- * tree-ssa-dce.c (mark_control_dependent_edges_necessary): Add
- IGNORE_SELF argument. Set visited_control_parents for fully
- processed BBs.
- (find_obviously_necessary_stmts): Update call of
- mark_control_dependent_edges_necessary.
- (propagate_necessity): Likewise. Handle PHI edges more curefully.
-
-2010-04-06 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/i386.md: Remove comment about 'e' and 'E'
- operand modifier.
-
-2010-04-06 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43627
- * tree-vrp.c (extract_range_from_unary_expr): Widenings
- of [1, +INF(OVF)] go to [1, +INF(OVF)] of the wider type,
- not varying.
-
-2010-04-06 Jakub Jelinek <jakub@redhat.com>
-
- * BASE-VER: Change to 4.6.0.
-
- PR target/43638
- * config/i386/i386.c (print_operand): Remove 'e' and 'E' code
- handling.
-
-2010-04-06 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/43661
- * fold-const.c (fold_comparison): Handle X * 0 CMP 0.
-
-2010-04-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * doc/invoke.texi (Optimize Options): Document that LTO
- won't remove object access purely due to incompatible
- declarations.
-
-2010-04-04 Matthias Klose <doko@ubuntu.com>
-
- * graphite-sese-to-poly.c (translate_scalar_reduction_to_array):
- Initialize variable.
-
-2010-04-03 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42509
- * alias.c (nonoverlapping_memrefs_p): For spill-slot accesses
- require a non-NULL MEM_OFFSET.
-
-2010-04-02 Steven Bosscher <steven@gcc.gnu.org>
-
- * ada/gcc-interface/Make-lang.in, alias.c, attribs.c, auto-inc-dec.c,
- basic-block.h, bb-reorder.c, calls.c, c-common.c, cgraph.h,
- collect2.h, config/alpha/alpha.c, config/alpha/alpha.md,
- config/alpha/predicates.md, config/arm/arm.md,
- config/arm/lib1funcs.asm, config/arm/neon-schedgen.ml,
- config/avr/avr.c, config/avr/avr.md, config/bfin/bfin.c,
- config/darwin9.h, config/darwin.c, config/darwin.h,
- config/h8300/h8300.c, config/i386/cpuid.h, config/i386/cygming.h,
- config/i386/cygwin.h, config/i386/mingw32.h, config/i386/msformat-c.c,
- config/i386/sol2-10.h, config/i386/xopintrin.h, config/ia64/ia64.c,
- config/ia64/ia64.md, config/ia64/sync.md, config/mep/mep.c,
- config/mips/mips.md, config/mn10300/mn10300.c,
- config/mn10300/mn10300.h, config/pa/pa.c, config/pa/pa.md,
- config/rs6000/aix.h, config/rs6000/dfp.md,
- config/rs6000/rs6000-builtin.def, config/rs6000/rs6000-c.c,
- config/rs6000/vector.md, config/rtems.h, config/rx/rx.md,
- config/s390/s390.md, config/sol2-c.c, config/sparc/sol2-bi.h,
- config/sparc/sol2-gas.h, config/sparc/sparc.h, config/sparc/sparc.md,
- config/sparc/sparc-protos.h, config/spu/spu.c, config/spu/spu-c.c,
- config/t-darwin, convert.c, c.opt, c-opts.c, cp/Make-lang.in,
- c-pretty-print.c, c-typeck.c, df-core.c, df-scan.c, diagnostic.c,
- diagnostic.h, doc/cppopts.texi, doc/cpp.texi, doc/extend.texi,
- doc/gimple.texi, doc/languages.texi, doc/plugins.texi, doc/rtl.texi,
- doc/standards.texi, doc/tree-ssa.texi, doc/trouble.texi, dominance.c,
- fold-const.c, fortran/Make-lang.in, fwprop.c, gcc-plugin.h,
- gensupport.c, gimple.h, gimple-iterator.c, graphite.c,
- graphite-clast-to-gimple.c, graphite-clast-to-gimple.h,
- graphite-dependences.c, graphite-poly.c, graphite-poly.h,
- graphite-ppl.c, graphite-ppl.h, graphite-scop-detection.c,
- graphite-sese-to-poly.c, graphite-sese-to-poly.h, ifcvt.c, intl.c,
- intl.h, ipa.c, ipa-cp.c, ipa-inline.c, ipa-prop.c, ipa-prop.h,
- ipa-pure-const.c, ipa-reference.c, ipa-type-escape.c, ira-color.c,
- ira-conflicts.c, ira-lives.c, java/Make-lang.in, lambda-code.c,
- loop-invariant.c, lto/Make-lang.in, lto-streamer.h, lto-streamer-in.c,
- objc/Make-lang.in, objcp/Make-lang.in, omp-low.c, optc-gen.awk,
- opt-functions.awk, opth-gen.awk, params.def, passes.c,
- postreload-gcse.c, print-tree.c, recog.c, regrename.c, reload.h,
- rtl.def, sched-int.h, sched-rgn.c, sel-sched-dump.c, sese.c, sese.h,
- store-motion.c, stor-layout.c, tree-cfgcleanup.c, tree-chrec.c,
- tree-complex.c, tree-data-ref.c, tree.def, tree-eh.c, tree-flow.h,
- tree-flow-inline.h, tree.h, tree-loop-distribution.c, tree-outof-ssa.c,
- tree-parloops.c, tree-pass.h, tree-predcom.c, tree-profile.c,
- tree-scalar-evolution.c, tree-ssa-address.c, tree-ssa-alias.c,
- tree-ssa-coalesce.c, tree-ssa-copy.c, tree-ssa-dce.c, tree-ssa-dom.c,
- tree-ssa-dse.c, tree-ssa-loop-im.c, tree-ssa-loop-ivcanon.c,
- tree-ssa-loop-manip.c, tree-ssa-math-opts.c, tree-ssa-operands.c,
- tree-ssa-pre.c, tree-ssa-sccvn.c, tree-ssa-structalias.c,
- tree-ssa-uncprop.c, tree-tailcall.c, tree-vect-data-refs.c,
- tree-vect-loop.c, tree-vectorizer.h, tree-vect-slp.c, tree-vrp.c,
- unwind-dw2-fde-darwin.c, varpool.c: Update copyright years.
-
-2010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR other/43620
- * doc/install.texi (Prerequisites): Bump Automake version to 1.11.1.
- * aclocal.m4: Regenerate.
-
-2010-04-02 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43629
- * tree-ssa-ccp.c (likely_value): Reset all_undefined_operands
- if we have seen a constant value.
-
-2010-04-02 Joseph Myers <joseph@codesourcery.com>
-
- * read-rtl.c (read_rtx_1): Give an error for EOF while looking for ']'.
-
-2010-04-02 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/43469
- * arm.c (legitimize_tls_address): Adjust call to
- gen_tls_load_dot_plus_four.
- (arm_note_pic_base): New function.
- (arm_cannot_copy_insn_p): Use it.
- * thumb2.md (tls_load_dot_plus_four): Rework to avoid use of '+' in
- constraint.
-
-2010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR bootstrap/43531
-
- Revert:
- 2009-09-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * Makefile.in ($(out_object_file)): Depend on
- gt-$(basename $(notdir $(out_file))).h.
-
-2010-04-01 Ralf Corsépius <ralf.corsepius@rtems.org>
-
- * config.gcc (lm32-*-rtems*): Add t-lm32.
-
-2010-04-01 Joel Sherrill <joel.sherrill@oarcorp.com>
-
- * config.gcc: Add lm32-*-rtems*.
- * config/lm32/rtems.h: New file.
-
-2010-04-01 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR target/42609
- * config/i386/cygwin.h (CXX_WRAP_SPEC): Disable spec when -mno-cygwin.
-
-2010-04-01 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (output_compilation_unit_header): For
- -gdwarf-4 use version 4 instead of version 3.
- (output_line_info): For version 4 and above emit additional
- maximum ops per insn header field.
- (DWARF_LINE_DEFAULT_MAX_OPS_PER_INSN): Define.
-
- * dwarf2out.c (is_c_family, is_java): Remove.
- (lower_bound_default): New function.
- (add_bound_info, gen_descr_array_type_die): Use it.
-
-2010-04-01 Dodji Seketeli <dodji@redhat.com>
-
- PR debug/43325
- * dwarf2out.c (gen_variable_die): Allow debug info for variable
- re-declaration when it happens in a function.
-
-2010-04-01 Aldy Hernandez <aldyh@redhat.com>
-
- * cgraph.c (cgraph_add_function_insertion_hook): Update comment.
- (cgraph_remove_function_insertion_hook): Same.
- (cgraph_call_function_insertion_hooks): Same.
-
-2010-04-01 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/43614
- * tree-ssa-address.c (copy_mem_ref_info): Copy TREE_SIDE_EFFECTS
- and TREE_THIS_VOLATILE.
- (copy_ref_info): Likewise.
- * tree-ssa-operands.c (get_tmr_operands): Check TREE_THIS_VOLATILE.
- * tree.c (build6_stat): Ignore side-effects of all but arg5
- for TARGET_MEM_REF. Set TREE_THIS_VOLATILE from arg5 of
- TARGET_MEM_REF.
-
-2010-04-01 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43607
- * ipa-type-escape.c (check_call): Do not access non-existing
- arguments.
-
-2010-04-01 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/43602
- Revert
- 2010-03-30 Seongbae Park <seongbae.park@gmail.com>
- Jack Howarth <howarth@bromo.med.uc.edu>
-
- * tree-profile.c (tree_init_ic_make_global_vars): Make static
- variables TLS.
-
-2010-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/install.texi (Prerequisites): Document libelf usability on
- IRIX 5/6 and Solaris 2.
- (Specific, i?86-*-solaris2.10): No 64-bit default configuration.
- Update GNU as, GNU ld requirements.
- (Specific, *-*-solaris2*): Document Solaris 7 obsoletion, removal.
- Document Sun Studio compiler download.
- Update and simplify as, ld recommendations.
- (Specific, *-*-solaris2.7): Note obsoletion, removal.
-
-2010-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.gcc (i[34567]86-*-solaris2*): Default with_arch_32,
- with_tune_32 to pentium4.
-
-2010-04-01 Uros Bizjak <ubizjak@gmail.com>
-
- * config/i386/cpuid.h (__get_cpuid_max): Move misplaced comment.
-
-2010-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/install.texi (Specific, mips-sgi-irix5): Document IRIX 5
- obsoletion, removal.
- Update IDO URL.
- Document GNU as requirement.
- Update configure requirements.
- (Specific, mips-sgi-irix6): Document IRIX 6 < 6.5 obsoletion, removal.
- Recomment IRIX 6.5.18+.
- Document IDF/IDL requirement.
- Document GNU as requirement.
- Document GNU ld bootstrap failure.
- Remove freeware.sgi.com reference.
-
-2010-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/install.texi (Specific, alpha*-dec-osf*): Document Tru64
- UNIX V4.0, V5.0 obsoletion, removal.
- Remove --with-gc=simple reference.
- Update VM requirements during bootstrap.
- Remove -oldas bootstrap description.
- Update binutils reference.
- Remove comparison failure note.
-
-2010-03-31 Richard Guenther <rguenther@suse.de>
- Zdenek Dvorak <ook@ucw.cz>
- Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43464
- * tree-ssa-copy.c (init_copy_prop): Handle loop close phi nodes
- with multiple arguments.
- (execute_copy_prop): Remove call to rewrite_into_loop_closed_ssa.
-
-2010-03-31 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-dependences.c (print_pddr): Call print_pdr with an
- extra argument.
- * graphite-poly.c (debug_pdr): Add an extra argument for the
- verbosity level.
- (print_pdr): Same.
- (print_pbb_domain): Same.
- (print_pbb): Same.
- (print_scop_context): Same.
- (print_scop): Same.
- (print_cloog): Same.
- (debug_pbb_domain): Same.
- (debug_pbb): Same.
- (print_pdrs): Same.
- (debug_pdrs): Same.
- (debug_scop_context): Same.
- (debug_scop): Same.
- (debug_cloog): Same.
- (print_scop_params): Same.
- (debug_scop_params): Same.
- (print_iteration_domain): Same.
- (print_iteration_domains): Same.
- (debug_iteration_domain): Same.
- (debug_iteration_domains): Same.
- (print_scattering_function): Same.
- (print_scattering_functions): Same.
- (debug_scattering_function): Same.
- (debug_scattering_functions): Same.
- * graphite-poly.h (debug_pdr): Update declaration.
- (print_pdr): Same.
- (print_pbb_domain): Same.
- (print_pbb): Same.
- (print_scop_context): Same.
- (print_scop): Same.
- (print_cloog): Same.
- (debug_pbb_domain): Same.
- (debug_pbb): Same.
- (print_pdrs): Same.
- (debug_pdrs): Same.
- (debug_scop_context): Same.
- (debug_scop): Same.
- (debug_cloog): Same.
- (print_scop_params): Same.
- (debug_scop_params): Same.
- (print_iteration_domain): Same.
- (print_iteration_domains): Same.
- (debug_iteration_domain): Same.
- (debug_iteration_domains): Same.
- (print_scattering_function): Same.
- (print_scattering_functions): Same.
- (debug_scattering_function): Same.
- (debug_scattering_functions): Same.
-
-2010-03-31 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-poly.c (print_scattering_function_1): New.
- (print_scattering_function): Call it.
- (print_scop_params): Remove spaces at the end of lines.
- (print_cloog): New.
- (debug_cloog): New.
- * graphite-poly.h (print_cloog): Declared.
- (debug_cloog): Declared.
-
-2010-03-31 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (graphite_loop_normal_form): Add the IV bump
- in loop->header.
- * tree-flow.h (canonicalize_loop_ivs): Updated declaration.
- * tree-parloops.c (gen_parallel_loop): Add the IV bump in loop->latch.
- * tree-ssa-loop-manip.c (canonicalize_loop_ivs): Add a new parameter
- to switch between adding the IV bump in loop->latch or in loop->header.
-
-2010-03-31 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-poly.c (print_scattering_function): Pretty print following
- the scoplib format.
- (print_pdr): Same.
- (print_pbb_domain): Same.
- (dump_gbb_cases): Same.
- (dump_gbb_conditions): Same.
- (print_pdrs): Same.
- (print_pbb): Same.
- (print_scop_params): Same.
- (print_scop_context): Same.
- (print_scop): Same.
- (print_pbb_body): New.
- (lst_indent_to): New.
- (print_lst): Start new lines with a #.
- * graphite-poly.h (pbb_bb): New.
- (pbb_index): Use pbb_bb.
- * graphite-ppl.c (ppl_print_powerset_matrix): Print the number of
- disjuncts.
- * tree-data-ref.c (dump_data_reference): Start new lines with a #.
-
-2010-03-31 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (size_of_die): For -gdwarf-4 use
- uleb128 size instead of fixed 1 or 2 for dw_val_class_loc
- and 0 instead of 1 for dw_val_class_flag.
- (value_format): For -gdwarf-4 use DW_FORM_sec_offset for
- dw_val_class_range_list, dw_val_class_loc_list,
- dw_val_class_lineptr and dw_val_class_macptr, use
- DW_FORM_flag_present for dw_val_class_flag and
- DW_FORM_exprloc for dw_val_class_loc.
- (output_die): For -gdwarf-4 print dw_val_class_loc
- size as uleb128 instead of 1 or 2 bytes and don't print
- anything for dw_val_class_flag.
-
- * var-tracking.c (vt_init_cfa_base): Use cselib_lookup_from_insn
- instead of cselib_lookup following by tweaking locs->setting_insn.
-
- PR bootstrap/43596
- * cselib.c (cselib_process_insn): Clear cselib_current_insn
- even before returning from label, setjmp call or volatile asm
- handling.
-
-2010-03-31 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/43600
- * cgraphunit.c (cgraph_output_in_order): Do not allocate
- temporary data on stack.
-
-2010-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/sparc/sysv4.h (PUSHSECTION_FORMAT): Remove undef.
- (PUSHSECTION_ASM_OP): Remove.
- (POPSECTION_ASM_OP): Remove.
- (PUSHSECTION_FORMAT): Remove.
- * config/sol2.h (PUSHSECTION_FORMAT): Define.
- * config/sparc/sol2.h [!USE_GAS] (PUSHSECTION_FORMAT): Redefine.
- * config/sol2.c (solaris_output_init_fini): Use it.
-
-2010-03-31 Jie Zhang <jie@codesourcery.com>
-
- PR 43574
- * opt-functions.awk (var_type_struct): Use signed char type
- for simple variables.
-
-2010-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/sol2.c: Include output.h.
- (solaris_assemble_visibility): New function.
- * config/t-sol2 (sol2.o): Add output.h dependency.
- * config/sol2-protos.h (solaris_assemble_visibility): Declare.
- * config/sol2.h [!USE_GAS] (TARGET_ASM_ASSEMBLE_VISIBILITY):
- Redefine.
-
-2010-03-31 Jakub Jelinek <jakub@redhat.com>
-
- PR target/43580
- * config/arm/arm.c (arm_save_coproc_regs): Use Pmode instead of
- V2SImode or XFmode on PRE_DEC.
-
- PR debug/43557
- * cfgexpand.c (expand_debug_expr): Handle VOIDmode mode like
- BLKmode.
-
-2010-03-31 Jie Zhang <jie@codesourcery.com>
-
- PR 43562
- * reload.h (caller_save_initialized_p): Declare.
- * toplev.c (backend_init_target): Don't call
- init_caller_save but set caller_save_initialized_p to false.
- * caller-save.c (caller_save_initialized_p): Define.
- (init_caller_save): Check caller_save_initialized_p.
- * ira.c (ira): Call init_caller_save if flag_caller_saves.
-
-2010-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR target/39048
- * config.gcc (i[34567]86-*-solaris2*): Add i386/t-fprules-softfp
- and soft-fp/t-softfp to tmake_file.
- * config/i386/sol2.h (LIBGCC2_HAS_TF_MODE): Redefine.
- (LIBGCC2_TF_CEXT): Define.
- (TF_SIZE): Define.
-
-2010-03-30 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42977
- * cselib.c (n_useless_values): Document handling of debug locs.
- (n_useless_debug_values, n_debug_values): New variables.
- (new_elt_loc_list): Don't add to debug values, keep count.
- (promote_debug_loc): New.
- (cselib_reset_table): Zero new variables.
- (entry_and_rtx_equal_p): Promote debug locs.
- (discard_useless_locs): Increment n_useless_debug_values for
- debug values.
- (remove_useless_values): Adjust n_useless_values and n_debug_values
- with n_useless_debug_values.
- (add_mem_for_addr): Promote debug locs.
- (cselib_lookup_mem): Likewise.
- (cselib_lookup_addr): Renamed to...
- (cselib_lookup_addr_1): ... this. Promote debug locs. Don't call...
- (cselib_log_lookup): ... this. Turn into...
- (cselib_lookup_addr): ... new wrapper.
- (cselib_lookup_from_insn): New.
- (cselib_invalidate_regno): Increment n_useless_debug_values for
- debug values.
- (cselib_invalidate_mem): Likewise.
- (cselib_process_insn): Take n_deleted and n_debug_values into
- account to guard remove_useless_value call.
- (cselib_finish): Zero n_useless_debug_values.
- * cselib.h (cselib_lookup_from_insn): Declare.
- * sched-deps.c (sched_analyze_1): Use cselib_lookup_from_insn.
- (sched_analyze_2): Likewise.
-
-2010-03-30 Jakub Jelinek <jakub@redhat.com>
-
- * var-tracking.c (use_narrower_mode_test, use_narrower_mode): New
- functions.
- (adjust_mems): Replace narrowing SUBREG of expression containing
- just PLUS, MINUS, MULT and ASHIFT of registers and constants
- with operations in the narrower mode.
-
- PR debug/43593
- * var-tracking.c (dataflow_set_clear_at_call): Invalidate just
- regs_invalidated_by_call instead all call_used_reg_set registers.
-
-2010-03-30 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43430
- * tree-vect-slp.c (vect_get_and_check_slp_defs): Replace type
- pointer comparisons with types_compatible_p.
- * tree-vect-stmts.c (vectorizable_call): Same.
- (vectorizable_condition): Same.
-
-2010-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.c (s390_emit_prologue): Omit issuing a dynamic
- stack check if the mask would be zero.
-
-2010-03-30 Seongbae Park <seongbae.park@gmail.com>
- Jack Howarth <howarth@bromo.med.uc.edu>
-
- * tree-profile.c (tree_init_ic_make_global_vars): Make static
- variables TLS.
-
-2010-03-30 Joseph Myers <joseph@codesourcery.com>
-
- PR other/25232
- * libgcc-std.ver (GCC_4.5.0): Define version. Include __unordxf2
- and __unordtf2.
- * config/bfin/libgcc-bfin.ver (GCC_4.5.0): Define version.
- Include ___unordxf2 and ___unordtf2.
- * config/i386/libgcc-glibc.ver: Do not define inheritance from
- GCC_4.4.0 here.
-
-2010-03-30 Tarik Graba <tarik.graba@telecom-paristech.fr>
-
- * config/lm32/t-lm32: New file.
- * config.gcc: Use the above file when targetting lm32.
-
-2010-03-28 Duncan Sands <baldrick@free.fr>
-
- * Makefile.in (PLUGIN_HEADERS): Add except.h.
-
-2010-03-29 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43431
- * tree-vect-loop.c (vect_estimate_min_profitable_iters):
- Improve vectorization cost model diagnostic.
-
-2010-03-29 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43436
- * tree-vect-data-refs.c (vect_analyze_data_refs): When
- compute_data_dependences_for_loop returns false, early exit
- and output an extra diagnostic for the failed data reference
- analysis.
-
-2010-03-29 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43560
- * tree-ssa-loop-im.c (ref_always_accessed_p): Add store_p parameter.
- (can_sm_ref_p): Treat stores to readonly locations as trapping.
-
-2010-03-29 Jie Zhang <jie@codesourcery.com>
-
- PR 43564
- * toplev.c (process_options): Set optimization_default_node
- and optimization_current_node.
- * opts.c (decode_options): Don't set optimization_default_node
- and optimization_current_node.
-
-2010-03-29 Ralf Corsépius <ralf.corsepius@rtems.org>
-
- * config/rtems.h: Abandon -qrtems_debug.
-
-2010-03-28 Jan Hubicka <jh@suse.cz>
-
- PR tree-optimization/43505
- * cgraph.c (cgraph_clone_node): When clonning a clone, replacement
- map should not be copied.
-
-2010-03-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR middle-end/41674
- * cgraphunit.c (cgraph_build_static_cdtor): If target doesn't have
- cdtors, set DECL_PRESERVE_P.
- * ipa.c (cgraph_externally_visible_p): Return true if declaration
- should be preseved.
-
-2010-03-27 Uros Bizjak <ubizjak@gmail.com>
-
- PR tree-optimization/43528
- * stor-layout.c (place_field): Check that constant fits into
- unsigned HWI when skipping calculation of MS bitfield layout.
-
-2010-03-27 Jan Hubicka <jh@suse.cz>
-
- PR middle-end/43391
- * varasm.c (make_decl_rtl): Deal with COMMON flag to make
- notice_global_symbol work.
-
-2010-03-27 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (dwarf2_debug_hooks): Use dwarf2out_function_decl
- instead of dwarf2out_decl.
- (struct var_loc_node): Remove section_label field.
- (dwarf2out_function_decl): New function.
- (dwarf2out_var_location): Don't set section_label field.
- (dwarf2out_begin_function): Don't empty decl_loc_table here.
-
-2010-03-26 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR tree-optimization/43544
- * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
- First argument for builtin vectorized function hook is now a
- tree to be able to distinguish between machine specific and
- standard builtins.
- * targhooks.c (default_builtin_vectorized_function): Ditto.
- * targhooks.h (default_builtin_vectorized_function): Ditto.
- * target.h (struct gcc_target): Ditto.
- * tree-vect-stmts.c (vectorizable_function): Ditto.
- * config/i386/i386.c (ix86_builtin_vectorized_function): Ditto.
- * config/rs6000/rs6000.c (rs6000_builtin_vectorized_function):
- Ditto.
-
-2010-03-26 Joseph Myers <joseph@codesourcery.com>
-
- PR c/43381
- * c-decl.c (get_parm_info): Assert that decl going in OTHERS has a
- nested binding iff it is a FUNCTION_DECL.
- (store_parm_decls_newstyle): Pass nested=true to bind for
- FUNCTION_DECLs amongst parameters.
-
-2010-03-26 Jakub Jelinek <jakub@redhat.com>
-
- * var-tracking.c (vt_expand_loc_callback): Don't run
- cselib_expand_value_rtx_cb in dummy mode if
- cselib_dummy_expand_value_rtx_cb returned false.
-
- * var-tracking.c (emit_note_insn_var_location): For one part
- notes with offset 0, don't add EXPR_LIST around the location.
- * dwarf2out.c (loc_descriptor, dw_loc_list_1,
- add_location_or_const_value_attribute): Adjust for that change.
-
- PR debug/43540
- * dwarf2out.c (reg_save): For DW_CFA_expression put regnum
- into first operand and location into second.
- (dw_cfi_oprnd1_desc): Return dw_cfi_oprnd_reg_num instead of
- dw_cfi_oprnd_loc for DW_CFA_expression.
- (dw_cfi_oprnd2_desc): Return dw_cfi_oprnd_loc for DW_CFA_expression.
- (output_cfa_loc, output_cfa_loc_raw): For DW_CFA_expression
- assume first argument is regnum and second argument is location.
-
-2010-03-26 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/42113
- * config/alpha/alpha.md (*cmp_sadd_si): Change mode
- of scratch register to DImode. Split to DImode comparison operator.
- Use SImode subreg of scratch register in the multiplication.
- (*cmp_sadd_sidi): Ditto.
- (*cmp_ssub_si): Ditto.
- (*cmp_ssub_sidi): Ditto.
-
-2010-03-26 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/43524
- * config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]:
- Remove invalid assert and wrong comment.
-
-2010-03-26 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43516
- * flags.h (final_insns_dump_p): New extern.
- * final.c (final_insns_dump_p): New variable.
- (rest_of_clean_state): Set it before -fdump-final-insns=
- dumping, clear afterwards.
- * print-rtl.c (print_rtx): If final_insns_dump_p don't dump
- MEM_ALIAS_SET on MEMs.
-
-2010-03-26 David S. Miller <davem@davemloft.net>
-
- * configure.ac: Fix sparc GOTDATA_OP bug check.
- * configure: Rebuild.
-
-2010-03-26 Alan Modra <amodra@gmail.com>
-
- * config/rs6000/rs6000.md (cmptf_internal2): Correct comparison.
-
-2010-03-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/tm.texi (Sections): Document TLS_COMMON_ASM_OP,
- TLS_SECTION_ASM_FLAG.
-
-2010-03-25 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/43511
- * config/i386/i386.c (ix86_code_end): Set DECL_WEAK if TARGET_MACHO.
- Clear first_function_block_is_cold.
-
- PR c/43385
- * gimplify.c (gimple_boolify): Only recurse on __builtin_expect
- argument if the argument is truth_value_p.
-
-2010-03-24 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- * config/rs6000/constraints.md: Update copyright year for my changes.
-
- PR target/43484
- * config/rs6000/rs6000.c (rs6000_split_multireg_move): If r0 is
- used in reg+reg addressing, swap registers.
-
-2010-03-24 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43293
- * target.h (struct gcc_target): Add code_end hook.
- * target-def.h (TARGET_ASM_CODE_END): Define to hook_void_void
- if not yet defined.
- (TARGET_ASM_OUT): Add TARGET_ASM_CODE_END.
- * toplev.c (compile_file): Call targetm.asm_out.code_end
- hook before unwind info/debug info output.
- * config/i386/winnt.c (i386_pe_file_end): Don't call ix86_file_end.
- * config/i386/linux.h (NEED_INDICATE_EXEC_STACK): Don't define.
- (TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
- * config/i386/linux64.h (NEED_INDICATE_EXEC_STACK): Don't define.
- (TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
- * config/i386/i386.c (ix86_file_end): Renamed to...
- (ix86_code_end): ... this. Make static. Don't call
- file_end_indicate_exec_stack. Emit unwind info using
- final_start_function/final_end_function.
- (darwin_x86_file_end): Remove.
- (TARGET_ASM_CODE_END): Define.
- * config/i386/i386.h (TARGET_ASM_FILE_END,
- NEED_INDICATE_EXEC_STACK): Don't define.
- * config/i386/darwin.h (darwin_x86_file_end): Remove prototype.
- (TARGET_ASM_FILE_END): Define to darwin_file_end.
- * config/i386/i386-protos.h (ix86_file_end): Remove prototype.
- * doc/tm.texi (TARGET_ASM_CODE_END): Document.
-
- PR target/43498
- * config/i386/i386.c (x86_output_mi_thunk): Call final_start_function
- at the beginning and final_end_function at the end.
- * config/s390/s390.c (s390_output_mi_thunk): Likewise.
-
-2010-03-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac (i[34567]86-*-*): Handle Solaris 2/x86 TLS support
- and Sun as TLS syntax.
- (TLS_SECTION_ASM_FLAG) [on_solaris && !gas_flag]: Define.
- * configure: Regenerate.
- * config.in: Regenerate.
- * varasm.c (TLS_SECTION_ASM_FLAG): Define default.
- (default_elf_asm_named_section): Use it.
- * config/i386/i386.c (output_pic_addr_const): Lowercase @DTPOFF.
- (i386_output_dwarf_dtprel): Likewise.
- (output_addr_const_extra): Likewise.
- (output_pic_addr_const): Lowercase @GOTTPOFF.
- (output_addr_const_extra): Likewise.
- (output_pic_addr_const): Lowercase @GOTNTPOFF.
- (output_addr_const_extra): Likewise.
- (output_pic_addr_const): Lowercase @INDNTPOFF.
- (output_addr_const_extra): Likewise.
- (output_pic_addr_const): Lowercase @NTPOFF.
- (output_addr_const_extra): Likewise.
- (output_pic_addr_const): Lowercase @TPOFF.
- (output_addr_const_extra): Likewise.
- * config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase @TLSGD.
- (*tls_global_dynamic_64): Likewise.
- (*tls_local_dynamic_base_32_gnu): Lowercase @TLSLDM.
- (*tls_local_dynamic_base_64): Lowercase @TLSLD.
-
- * defaults.h (TLS_COMMON_ASM_OP): Provide default.
- (ASM_OUTPUT_TLS_COMMON): Use it.
- * config/i386/sol2-gas.h (TLS_COMMON_ASM_OP): Undef.
-
- PR target/38118
- * config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to tm_file.
- * config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Move ...
- * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): ... here.
- * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine.
- * config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
- (ASM_DECLARE_OBJECT_NAME) [!USE_GAS]: Redefine.
-
-2010-03-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/i386/i386.c (override_options): Don't accept
- -mtls-dialect=sun any longer.
- * config/i386/i386.h (TARGET_SUN_TLS): Define as 0.
- * config/i386/i386.md (*tls_global_dynamic_32_sun): Remove.
- (*tls_local_dynamic_base_32_sun): Likewise.
- * config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
-
-2010-03-24 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43508
- * dwarf2out.c (mem_loc_descriptor): Don't ICE on
- VEC_{MERGE,SELECT,CONCAT,DUPLICATE}.
-
- PR debug/43479
- * ira.c (adjust_cleared_regs): New function.
- (update_equiv_regs): Adjust cleared_regs in DEBUG_INSNs.
-
- PR debug/19192
- PR debug/43479
- * cfgexpand.c (gimple_assign_rhs_to_tree): Also set TREE_BLOCK
- from gimple_block.
- * expr.c (expand_expr_real): Restore previous
- curr_insn_source_location and curr_insn_block after
- expand_expr_real_1 call.
- (expand_expr_real_1) <case SSA_NAME>: Call expand_expr_real
- instead of expand_expr_real_1.
-
-2010-03-23 Vladimir Makarov <vmakarov@redhat.com>
-
- PR rtl-optimization/43413
- * ira-color.c (setup_allocno_available_regs_num): Count prohibited
- hard regs too.
-
-2010-03-22 James E. Wilson <wilson@codesourcery.com>
-
- PR target/43348
- * ia64.md (call_nogp, call_value_nogp, sibcall_nogp, call_gp,
- call_value_gp, sibcall_gp): Use 's' constraint not 'i'.
-
-2010-03-22 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.c (ix86_target_string): Add -mfma.
- Fix a typo in comment.
-
-2010-03-22 Mike Stump <mikestump@comcast.net>
-
- PR target/23071
- * config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
- Don't overly align based upon packed packed fields.
-
-2010-03-22 Jason Merrill <jason@redhat.com>
-
- * c-pretty-print.c (pp_c_specifier_qualifier_list) [VECTOR_TYPE]:
- Use () rather than [], and move before the element type.
-
-2010-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/configfiles.texi (Configuration Files): Removed
- fixinc/Makefile*, intl/Makefile.*.
- * doc/makefile.texi: Fixed markup. Abstract from version
- control system used.
- (Makefile): Removed obsolete java/parse.y example.
- * doc/sourcebuild.texi: Likewise.
- (Top Level): Added config, gnattools, libdecnumber, libgcc,
- libgomp, libssp. Removed fastjar.
- (Miscellaneous Docs): Clarify location.
- Added COPYING3, COPYING3.LIB.
- (Front End Directory): Moved Make-lang.in entry to new subsubsection.
-
-2010-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR target/38085
- * config/i386/i386.c (x86_function_profiler)
- [!NO_PROFILE_COUNTERS]: Fix typo.
- * config/i386/gmon-sol2.c (_mcleanup) [__x86_64__]: Use call
- instead of callq.
-
-2010-03-22 Janis Johnson <janis187@us.ibm.com>
- Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/sourcebuild.texi (Test Directives): Split into six
- subsections, with most of the current text in new subsections
- Directives, Selectors, and Final Actions.
- (Directives): Split list of test directives into multiple
- subsubsections.
- (Selectors): Describe use and syntax of selectors.
- (Effective-Target Keywords): Describe all existing keywords.
- (Add Options): Describe features for dg-add-options.
- (Require Support): Describe variants of dg-require-support.
- (Final Actions): Describe commands to use in dg-final.
-
-2010-03-22 Michael Matz <matz@suse.de>
-
- PR middle-end/43475
- * recog.c (validate_replace_rtx_group): Replace also in
- REG_EQUAL and REG_EQUIV notes.
-
-2010-03-22 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43390
- * tree-vect-stmts.c (get_vectype_for_scalar_type): Make
- sure vector extracts are type correct.
-
-2010-03-22 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/40106
- * builtins.c (expand_builtin_pow): Expand pow (x, 1.5) as
- x * sqrt (x) even when optimizing for size if the target
- has native support for sqrt.
-
-2010-03-22 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (make_decl_rtl_for_debug): Also clear
- flag_mudflap for the duration of make_decl_rtl call.
-
- PR debug/43443
- * var-tracking.c (add_cselib_value_chains): Remove ASM_OPERANDS
- locs from preserved VALUEs.
-
-2010-03-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR middle-end/42718
- * pa.md (movmemsi): Set align to one if zero.
- (movmemdi): Likewise.
-
-2010-03-21 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/42321
- * arm.c (arm_output_epilogue): Correctly match VFP pop instructions
- with their corresponding prologue pushes.
-
-2010-03-20 Andrew Pinski <pinskia@gmail.com>
-
- PR target/43156
- * config/spu/spu.c (spu_expand_prologue): Don't emit NOTE_INSN_DELETED
- at the begining or end.
- (spu_expand_epilogue): Likewise.
-
-2010-03-20 Richard Guenther <rguenther@suse.de>
-
- PR rtl-optimization/43438
- * combine.c (make_extraction): Properly zero-/sign-extend an
- extraction of the low part of a CONST_INT. Also handle
- CONST_DOUBLE.
-
-2010-03-19 Mike Stump <mikestump@comcast.net>
-
- * config/i386/darwin.h (SUBTARGET32_DEFAULT_CPU): Add.
- * config/i386/i386.c (SUBTARGET32_DEFAULT_CPU): Add.
- (override_options): Use SUBTARGET32_DEFAULT_CPU.
-
-2010-03-19 Andrew Pinski <andrew_pinski@caviumnetworks.com>
-
- PR c/43211
- * c-decl.c (grokparms): Set arg_types to NULL_TREE if there was
- an error.
-
-2010-03-19 Bernd Schmidt <bernds@codesourcery.com>
-
- PR rtl-optimization/42258
- * ira-lives.c (check_and_make_def_conflict): Ignore conflict for a
- use that may match DEF.
-
- PR target/40697
- * optabs.c (avoid_expensive_constant): Use rtx_cost to find out
- the cost of loading the constant rather than assuming
- COSTS_N_INSNS (1).
- * config/arm/arm.c (thumb1_rtx_costs) <case CONST_INT>: If the
- outer code is AND, do the same tests as the andsi3 expander and
- return COSTS_N_INSNS (1) if and is cheap.
-
- * optabs.c (avoid_expensive_constant): Fix formatting.
-
-2010-03-19 Michael Matz <matz@suse.de>
-
- PR c++/43116
- * attribs.c (decl_attributes): When rebuilding a function pointer
- type use the same qualifiers as the original pointer type.
-
-2010-03-19 Martin Jambor <mjambor@suse.cz>
-
- * doc/gimple.texi (Logical Operators): Describe is_gimple_ip_invariant
- and is_gimple_ip_invariant_address.
-
-2010-03-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- Revert
- 2009-10-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- * config/arm/arm.c (arm_override_options): Turn off
- flag_dwarf2_cfi_asm for AAPCS variants.
-
-2010-03-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- PR target/43399
- * config/arm/arm.c (emit_multi_reg_push): Update comments.
- Use PRE_MODIFY instead of PRE_DEC.
- (emit_sfm): Use PRE_MODIFY instead of PRE_DEC.
- (vfp_emit_fstmd): Likewise.
-
-2010-03-19 Michael Matz <matz@suse.de>
-
- PR target/43305
- * builtins.c (expand_builtin_interclass_mathfn,
- expand_builtin_signbit): Use maybe_emit_unop_insn, emit libcalls
- if that fails.
-
-2010-03-19 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43415
- * tree-ssa-pre.c (phi_translate): Split out worker to ...
- (phi_translate_1): ... this.
- (phi_translate): Move all caching here. Cache all NARY
- and REFERENCE translations.
-
-2010-03-19 David S. Miller <davem@davemloft.net>
-
- With help from Eric Botcazou.
- * config/sparc/sparc.c: Include dwarf2out.h.
- (emit_pic_helper): Delete.
- (pic_helper_symbol_name): Delete.
- (pic_helper_emitted_p): Delete.
- (pic_helper_needed): New.
- (USE_HIDDEN_LINKONCE): Define to '1' if HAVE_GAS_HIDDEN else '0'.
- (get_pc_thunk_name): New.
- (load_pic_register): Remove 'delay_pic_helper' arg. Use
- get_thunk_pc_name and ggc_strdup to generate PIC thunk symbol.
- Set pic_helper_needed to true. Don't call emit_pic_helper.
- (sparc_expand_prologue): Update load_pic_register call.
- (sparc_output_mi_thunk): Likewise.
- (sparc_file_end): Emit a hidden comdat symbol for the PIC
- thunk if possible. Output CFI information as needed.
-
-2010-03-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
- Jack Howarth <howarth@bromo.med.uc.edu>
-
- PR target/36399
- * config/i386/i386.h: Fix ABI on darwin x86-32.
-
-2010-03-18 Aldy Hernandez <aldyh@redhat.com>
-
- * tree.h: Declare make_decl_rtl_for_debug.
- * varasm.c (make_decl_rtl_for_debug): New.
- * dwarf2out.c (rtl_for_decl_location): Call it.
- * cfgexpand.c (expand_debug_expr): Call it.
-
-2010-03-18 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/43399
- * var-tracking.c (adjust_mems) <case POST_MODIFY>: Allow BLKmode
- mem_mode.
-
- PR bootstrap/43403
- * var-tracking.c (vt_init_cfa_base): Do nothing if
- cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed register.
-
-2010-03-18 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42873
- * var-tracking.c (canonicalize_vars_star): New.
- (dataflow_post_merge_adjust): Use it.
-
-2010-03-18 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43058
- * var-tracking.c (non_suitable_const): New function.
- (add_uses): For DEBUG_INSNs with constants, don't record any
- value, instead just the constant value itself.
- (compute_bb_dataflow) <case MO_VAL_LOC>: If PAT_VAR_LOCATION_LOC
- is not VAR_LOC_UNKNOWN_P, set var to the constant.
- (emit_notes_in_bb): Likewise.
- (emit_note_insn_var_location): For onepart variables if
- cur_loc is a VOIDmode constant, use DECL_MODE.
-
-2010-03-18 Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/42450
- * cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
- * cgraphunit.c (cgraph_materialize_all_clones): Update calls in
- all non-clones. Moved call redirection...
- (cgraph_redirect_edge_call_stmt_to_callee): ...to this new function.
- (cgraph_materialize_all_clones): Dispose of all
- combined_args_to_skip bitmaps.
- (verify_cgraph_node): Do not check for edges pointing to wrong
- nodes in inline clones.
- * tree-inline.c (copy_bb): Call
- cgraph_redirect_edge_call_stmt_to_callee.
- * ipa.c (cgraph_remove_unreachable_nodes): Call
- cgraph_node_remove_callees even when there are used clones.
-
-2010-03-18 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/libgcc-glibc.ver: Make GCC_4.5.0 inherit GCC_4.4.0.
-
-2010-03-18 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/43383
- * config/i386/libgcc-glibc.ver: Add __extendxftf2 to GCC_4.5.0
- for 32bit.
-
-2010-03-18 Michael Matz <matz@suse.de>
-
- PR middle-end/43419
- * builtins.c (expand_builtin_pow): Don't transform pow(x, 0.5)
- into sqrt(x) if we need to preserve signed zeros.
-
-2010-03-18 Steven Bosscher <steven@gcc.gnu.org>
- Eric Botcazou <ebotcazou@adacore.com>
-
- PR rtl-optimization/43360
- * loop-invariant.c (move_invariant_reg): Remove the REG_EQUAL
- note if we don't know its invariant status.
-
-2010-03-18 Michael Matz <matz@suse.de>
-
- PR tree-optimization/43402
- * tree-cfgcleanup.c (cleanup_control_expr_graph): Don't follow
- PHI chains of ssa names registered for update.
-
-2010-03-17 Peter Bergner <bergner@vnet.ibm.com>
-
- PR target/42427
- * config/rs6000/rs6000.c (rs6000_split_multireg_move): Add support for
- non-offsettable and pre_modify update addressing.
- * config/rs6000/dfp.md (*movdd_hardfloat32): Make the "0", "1"
- and "2" alternatives "#".
- (*movdd_softfloat32): Make all alternatives "#";
- * config/rs6000/rs6000.md (DIFD): New define_mode_iterator.
- (*movdf_hardfloat32): Make the "0", "1" and "2" alternatives "#".
- (*movdf_softfloat32): Make all alternatives "#";
- (movdi): Use the new DIFD mode iterator to create a common splitter
- for movdi, movdf and movdd patterns.
-
-2010-03-18 Shujing Zhao <pearly.zhao@oracle.com>
-
- * common.opt (dumpdir): Remove redundant tab.
-
-2010-03-17 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/43347
- * tree-sra.c (create_access_replacement): Set TREE_NO_WARNING when the
- original base is DECL_ARTIFICIAL or DECL_IGNORED_P.
-
-2010-03-17 Bernd Schmidt <bernd.schmidt@analog.com>
-
- PR rtl-optimization/42216
- * regrename.c (create_new_chain): New function, broken out from...
- (scan_rtx_reg): ... here. Call it. Handle the case where we are
- appending a use to an empty chain.
- (build_def_use): Remove previous changes that convert OP_INOUT to
- OP_OUT operands; instead detect the case where an OP_INOUT operand
- uses a previously untracked register and create an empty chain for it.
-
-2010-03-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * doc/extend.texi (Function Attributes): Rewrite unfinished
- sentence in ms_abi documentation.
-
-2010-03-17 Alan Modra <amodra@gmail.com>
-
- * config/rs6000/linux64.opt (mprofile-kernel): Use profile_kernel var.
- * config/rs6000/linux64.h (TARGET_PROFILE_KERNEL): Define.
- (SUBSUBTARGET_OVERRIDE_OPTIONS): Don't use SET_PROFILE_KERNEL.
- * config/rs6000/rs6000.c (SET_PROFILE_KERNEL): Don't define.
-
-2010-03-16 Richard Henderson <rth@redhat.com>
-
- PR middle-end/43365
- * tree-eh.c (replace_goto_queue): Also replace in the eh_seq.
- (lower_try_finally): Save and restore eh_seq around the expansion
- of the try-finally.
-
-2010-03-16 Aldy Hernandez <aldyh@redhat.com>
-
- * graphite-sese-to-poly.c (split_reduction_stmt): Skip debug
- statements before splitting block.
-
-2010-03-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * doc/sourcebuild.texi (Testsuites): Fix markup.
- Use pathnames relative to gcc/testsuite.
- (Test Directives): Move description of how timeout is determined.
- (Ada Tests): Favor gnat.exp over ada/acats/tests/gcc.
- (C Tests): Correct gcc.misc-tests directory.
- Framework tests now live in gcc.test-framework.
-
-2010-03-16 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/43379
- * tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI
- operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly.
-
-2010-03-16 Aldy Hernandez <aldyh@redhat.com>
- Alexandre Oliva <aoliva@redhat.com>
-
- PR tree-optimization/42917
- * lambda-code.c (remove_iv): Skip debug statements.
- (lambda_loopnest_to_gcc_loopnest): Likewise.
- (not_interesting_stmt): Debug statements are not interesting.
-
-2010-03-16 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43051
- PR debug/43092
- * cselib.c (cselib_preserve_constants,
- cfa_base_preserved_val): New static variables.
- (preserve_only_constants): New function.
- (cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't
- clear its REG_VALUES. If cselib_preserve_constants, don't
- empty the whole hash table, but preserve there VALUEs with constants,
- cfa_base_preserved_val and cfa_base_preserved_val plus constant.
- (cselib_preserve_cfa_base_value): New function.
- (cselib_invalidate_regno): Don't invalidate cfa_base_preserved_val.
- (cselib_init): Change argument to int bitfield. Set
- cselib_preserve_constants to whether CSELIB_PRESERVE_CONSTANTS
- is in it.
- (cselib_finish): Clear cselib_preserve_constants and
- cfa_base_preserved_val.
- * cselib.h (enum cselib_record_what): New enum.
- (cselib_init): Change argument to int.
- (cselib_preserve_cfa_base_value): New prototype.
- * postreload.c (reload_cse_regs_1): Adjust cselib_init caller.
- * dse.c (dse_step1): Likewise.
- * cfgcleanup.c (thread_jump): Likewise.
- * sched-deps.c (sched_analyze): Likewise.
- * gcse.c (local_cprop_pass): Likewise.
- * simplify-rtx.c (simplify_replace_fn_rtx): Add argument to callback.
- If FN is non-NULL, call the callback always and whenever it returns
- non-NULL just return that. Only do rtx_equal_p if FN is NULL.
- * rtl.h (simplify_replace_fn_rtx): Add argument to callback.
- * combine.c (propagate_for_debug_subst): Add old_rtx argument,
- compare from with old_rtx and if it isn't rtx_equal_p, return NULL.
- * Makefile.in (var-tracking.o): Depend on $(RECOG_H).
- * var-tracking.c: Include recog.h.
- (bb_stack_adjust_offset): Remove.
- (vt_stack_adjustments): Don't call it, instead just gather the
- adjustments using insn_stack_adjust_offset_pre_post on each bb insn.
- (adjust_stack_reference): Remove.
- (compute_cfa_pointer): New function.
- (hard_frame_pointer_adjustment, cfa_base_rtx): New static variables.
- (struct adjust_mem_data): New type.
- (adjust_mems, adjust_mem_uses, adjust_mem_stores, adjust_insn): New
- functions.
- (get_address_mode): New function.
- (replace_expr_with_values): Use it.
- (use_type): Don't do cselib_lookup for VAR_LOC_UNKNOWN_P.
- Use get_address_mode. For cfa_base_rtx return MO_CLOBBER.
- (adjust_sets): Remove.
- (add_uses): Don't add extra MO_VAL_USE for cfa_base_rtx plus constant.
- Use get_address_mode.
- (get_adjusted_src): Remove.
- (add_stores): Don't call it. Never reuse expr SET. Don't add extra
- MO_VAL_USE for cfa_base_rtx plus constant. Use get_address_mode.
- (add_with_sets): Don't call adjust_sets.
- (fp_setter, vt_init_cfa_base): New functions.
- (vt_initialize): Change return type to bool. Move most of pool etc.
- initialization to the beginning of the function from end. Pass
- CSELIB_RECORD_MEMORY | CSELIB_PRESERVE_CONSTANTS to cselib_init.
- If !frame_pointer_needed, call vt_stack_adjustment before mos
- vector is filled, call vt_init_cfa_base if argp/framep has been
- eliminated to sp. If frame_pointer_needed and argp/framep has
- been eliminated to hard frame pointer, set
- hard_frame_pointer_adjustment and call vt_init_cfa_base after
- encountering fp setter in the prologue. For MO_ADJUST, call
- log_op_type before pusing the op into mos vector, not afterwards.
- Call adjust_insn before cselib_process_insn/add_with_sets,
- call cancel_changes (0) afterwards.
- (variable_tracking_main_1): Adjust for vt_initialize calling
- vt_stack_adjustments and returning whether it succeeded or not.
-
-2010-03-15 Aldy Hernandez <aldyh@redhat.com>
-
- * graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Skip
- debug statements.
-
-2010-03-15 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (dwarf2out_frame_debug): Don't assert drap_reg
- has been set.
- (based_loc_descr): Use DW_OP_fbreg for vdrap_reg even when
- drap_reg has not been set.
-
-2010-03-15 Michael Matz <matz@suse.de>
-
- PR middle-end/43300
- * tree-outof-ssa.c (emit_partition_copy): New argument sizeexp,
- use it to expand block copies.
- (insert_partition_copy_on_edge, insert_rtx_to_part_on_edge,
- insert_part_to_rtx_on_edge): Adjust callers of emit_partition_copy.
- (insert_value_copy_on_edge): Use store_expr for BLKmode values.
-
-2010-03-15 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43367
- * tree-cfg.c (gimple_can_merge_blocks_p): Simplify PHI
- elimination check.
-
-2010-03-15 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43317
- * ipa-struct-reorg.c (create_new_general_access): Update stmt.
-
-2010-03-15 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/43141
- * tree-sra.c (create_abstract_origin): New function.
- (modify_function): Call create_abstract_origin.
-
-2010-03-15 Chris Demetriou <cgd@google.com>
-
- * Makefile.in (stmp-int-hdrs): Don't chmod include/stdint.h if it
- wasn't copied.
-
-2010-03-13 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43354
- * graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Do not
- call insert_out_of_ssa_copy for default definitions.
-
-2010-03-13 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (my_long_long): Defined.
- (gcc_type_for_cloog_iv): Use it instead of long_long_integer_type_node.
- * graphite-sese-to-poly.c (my_long_long): Defined.
- (scop_ivs_can_be_represented): Use it.
-
-2010-03-13 Sebastian Pop <sebastian.pop@amd.com>
-
- * doc/invoke.texi: Fix documentation of graphite-max-nb-scop-params,
- graphite-max-bbs-per-function, and loop-block-tile-size.
- * params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Replace "maximal"
- with "maximum".
- (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Same.
-
-2010-03-13 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Remove
- forward declaration.
- * graphite-sese-to-poly.c (reduction_phi_p): Remove FIXME comment.
- (add_upper_bounds_from_estimated_nit): New.
- (build_loop_iteration_domains): Use it.
-
-2010-03-13 Sebastian Pop <sebastian.pop@amd.com>
-
- * doc/invoke.texi (PARAM_LOOP_BLOCK_TILE_SIZE): Document.
-
-2010-03-13 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43306
- * tree-chrec.c (evolution_function_right_is_integer_cst): CHREC_RIGHT
- should be an INTEGER_CST. Also handle CASE_CONVERT.
-
-2010-03-13 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite.c (graphite_initialize): To bound the number of bbs per
- function, use PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION.
- * params.def (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Declared.
- * doc/invoke.texi: Document it.
-
-2010-03-13 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (build_poly_scop): Do not return bool.
- * graphite-sese-to-poly.h (build_poly_scop): Same.
-
-2010-03-13 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (build_poly_scop): Limit scops following
- the number of parameters in the scop. Use as an upper bound
- PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS.
- * params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Declared.
- * doc/invoke.texi: Document it.
-
-2010-03-13 Jerry Quinn <jlquinn@optonline.net>
-
- * Makefile.in (TEXI_GCCINT_FILES): Remove c-tree.texi.
- * doc/c-tree.texi: Remove.
- * doc/generic.texi: Merge c-tree.texi here.
- * doc/gccint.texi (Trees): Remove menu entry.
- (c-tree.texi): Remove @include.
- * doc/rtl.texi (Reading RTL): Update pxref from Trees to GENERIC.
- * doc/languages.texi (Reading RTL): Ditto.
-
-2010-03-12 Steve Ellcey <sje@cup.hp.com>
-
- PR target/42869
- * config/ia64/sync.md (sync_compare_and_swap): Move memory fence.
-
-2010-03-12 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR middle-end/42431
- * config/rs6000/rs6000.c (rs6000_emit_move): Delete band-aid
- code added to work around reload clobbering CONST insns.
-
-2010-03-12 Jakub Jelinek <jakub@redhat.com>
-
- * cselib.c (LONG_TERM_PRESERVED_VALUE_P): Remove.
- (cselib_preserve_definitely, cselib_clear_preserve): Remove.
- (cselib_preserve_only_values): Remove retain argument, don't
- traverse hash table with cselib_{preserve_definitely,clear_preserve}.
- * cselib.h (cselib_preserve_only_values): Remove retain argument.
- * var-tracking.c (micro_operation): Move insn field before union.
- Add DEF_VEC_O and DEF_VEC_ALLOC_O for this type.
- (struct variable_tracking_info_def): Remove n_mos field, change
- mos into a vector of micro_operations.
- (count_uses, count_uses_1, count_stores, count_with_sets): Remove.
- (bb_stack_adjust_offset, log_op_type, add_uses, add_stores,
- compute_bb_dataflow, emit_notes_in_bb): Adjust for VTI (bb)->mos
- changing into a vector.
- (add_with_sets): Likewise. Ensure MO_VAL_USE uops from add_stores
- come before all other uops generated by add_stores.
- (vt_add_function_parameters): Adjust for cselib_preserve_only_values
- argument removal.
- (vt_initialize): Likewise. Adjust for VTI (bb)->mos changing into
- a vector. Run just one pass over the bbs instead of separate counting
- and computation phase.
- (vt_finalize): Free VTI (bb)->mos vector instead of array.
-
- PR debug/43329
- * tree-inline.c (remap_decls): Put old_var rather than origin_var
- into *nonlocalized_list vector.
- * dwarf2out.c (gen_formal_parameter_die): Call decl_ultimate_origin
- even if origin is non-NULL.
- (gen_variable_die): Likewise.
- (process_scope_var): Don't change origin.
- (gen_decl_die): Likewise.
- * tree-cfgcleanup.c (remove_forwarder_block): Check single_pred_p
- before adding new edges instead of after it, fix moving over
- debug stmts.
-
-2010-03-11 David S. Miller <davem@davemloft.net>
-
- * configure.ac (gcc_cv_as_cfi_advance_working): Skip a multiple
- of four.
- * configure: Rebuild.
-
-2010-03-11 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/43257
- * tree.c (assign_assembler_name_if_neeeded): New function.
- (free_lang_data_in_cgraph): Assembler name assignment moved to the
- above new function.
- * tree.h (assign_assembler_name_if_neeeded): Declare.
- * cgraphunit.c (cgraph_analyze_function): Create an assembler name for
- the function if needed.
-
-2010-03-11 Chris Demetriou <cgd@google.com>
-
- * Makefile.in (stmp-int-hdrs): Make include/unwind.h,
- include/stdint-gcc.h, and include/stdint.h world-readable.
-
-2010-03-11 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43255
- * tree-vrp.c (process_assert_insertions_for): Do not insert
- asserts for trivial conditions.
-
-2010-03-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- PR tree-optimization/43280
- * tree-ssa-math-opts.c (find_bswap_1): Modify symbolic number
- generation. Move calculation of size out of the if branch.
- (find_bswap): Modify compare number generation.
-
-2010-03-11 Richard Guenther <rguenther@suse.de>
-
- PR lto/43200
- * lto-streamer-in.c (maybe_fixup_decls): Simplify.
- (input_gimple_stmt): Fixup handled component types during
- operand read. Also fix up decls in ADDR_EXPRs.
-
-2010-03-10 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/sparc/sol2-bi.h (CC1_SPEC): Default to -mcpu=v9 for -m32.
- * config/sparc/t-sol2-64 (MULTILIB_DIRNAMES): Use sparcv8plus.
-
-2010-03-10 Jan Hubicka <jh@suse.cz>
-
- PR c/43288
- * ipa.c (function_and_variable_visibility) Normalize COMMON bits.
- * varasm.c (get_variable_section): Don't do that here...
- (make_decl_rtl): ... and here.
- (do_assemble_alias): Produce decl RTL.
- (assemble_alias): Likewise.
-
-2010-03-10 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43290
- * reg-notes.def (REG_CFA_SET_VDRAP): New note.
- * dwarf2out.c (dwarf2out_frame_debug_expr): Remove rule 20 - setting
- of fde->vdrap_reg.
- (dwarf2out_frame_debug): Handle REG_CFA_SET_VDRAP note.
- (based_loc_descr): Only express drap or vdrap regno based expressions
- using DW_OP_fbreg when not optimizing.
- * config/i386/i386.c (ix86_get_drap_rtx): When not optimizing,
- make the vDRAP = DRAP assignment RTX_FRAME_RELATED_P and add
- REG_CFA_SET_VDRAP note.
-
-2010-03-10 Alexander Monakov <amonakov@ispras.ru>
-
- PR tree-optimization/43236
- * tree-loop-distribution.c (generate_memset_zero): Fix off-by-one
- error in calculation of base address in reverse iteration case.
- (generate_builtin): Take number of latch executions if the statement
- is in the latch.
-
-2010-03-10 Andrey Belevantsev <abel@ispras.ru>
-
- PR middle-end/42859
- * tree-eh.c: Include pointer-set.h.
- (lower_eh_dispatch): Filter out duplicate case labels and
- remove the unneeded edge when the label is unused. Return
- true when some edges are removed.
- (execute_lower_eh_dispatch): When any lowering resulted in
- removing an edge, also delete unreachable blocks.
-
-2010-03-10 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/43287
- * config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
- UNSPEC_MACHOPIC_OFFSET.
-
-2010-03-09 Andreas Schwab <schwab@linux-m68k.org>
-
- PR target/43294
- * config/m68k/m68k.c (TARGET_DELEGITIMIZE_ADDRESS): Define.
- (m68k_delegitimize_address): New function.
-
-2010-03-09 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43299
- * dwarf2out.c (const_ok_for_output_1): Return 1 for UNSPECs.
-
- PR debug/43299
- * var-tracking.c (adjust_sets): New function.
- (count_with_sets, add_with_sets): Use it.
- (get_adjusted_src): New inline function.
- (add_stores): Use it.
-
- PR debug/43304
- * var-tracking.c (vt_expand_loc_callback) <case SUBREG>: If dummy,
- call cselib_dummy_expand_value_rtx_cb instead of
- cselib_expand_value_rtx_cb.
-
- PR debug/43293
- * config/i386/t-i386 (i386.o): Depend on debug.h and dwarf2out.h.
- * config/i386/i386.c: Include debug.h and dwarf2out.h.
- (ix86_file_end): If dwarf2out_do_cfi_asm (), emit .cfi_startproc
- and .cfi_endproc around the pic thunks.
- (output_set_got): For TARGET_DEEP_BRANCH_PREDICTION pic, ensure
- all queued unwind info register saves are saved before the call.
- For !TARGET_DEEP_BRANCH_PREDICTION pic, ensure the call is
- considered as sp-=4 for unwind info and the pop as sp+=4 which
- also clobbers dest, but doesn't actually restore it.
-
- PR debug/43290
- * config/i386/i386.c (ix86_get_drap_rtx): Don't set
- RTX_FRAME_RELATED_P.
-
-2010-03-09 Jie Zhang <jie@codesourcery.com>
-
- * config/arm/arm.md (thumb_mulsi3_v6): Remove trailing
- whitespaces in output template.
-
-2010-03-09 Jie Zhang <jie@codesourcery.com>
-
- * ira-lives.c (check_and_make_def_use_conflict): Don't fall
- out array boundary.
-
-2010-03-08 Jakub Jelinek <jakub@redhat.com>
-
- * Makefile.in (check_gcc_parallelize): Run dg-torture.exp and
- builtins.exp in a separate job.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (add_param_constraints): Use
- lower_bound_in_type and upper_bound_in_type.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (add_param_constraints): Use sizetype
- instead of unsigned_type_node.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
- Reza Yazdani <reza.yazdani@amd.com>
-
- PR middle-end/43065
- * graphite-sese-to-poly.c (add_param_constraints): Insert bounds
- on pointer type parameters.
-
-2010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
-
- PR middle-end/42644
- PR middle-end/42130
- * graphite-clast-to-gimple.c (clast_to_gcc_expression): Also
- handle conversions from pointer to integers.
- (gcc_type_for_cloog_iv): Choose the smalles signed integer as an
- induction variable, to be able to work with code generated by CLooG.
- * graphite-sese-to-poly.c (scop_ivs_can_be_represented): New.
- (build_poly_scop): Bail out if we cannot codegen a loop.
-
-2010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
-
- * graphite-clast-to-gimple.c (translate_clast): Do not short-cut
- code generation with gloog_error.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * sese.c (expand_scalar_variables_ssa_name): Add new argument for type.
- Call fold_convert on all the returned values.
- (expand_scalar_variables_expr): Pass to
- expand_scalar_variables_ssa_name the type of the resulting expression.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-ppl.c (ppl_min_for_le_polyhedron): Renamed
- ppl_min_for_le_pointset.
- Use ppl_Pointset_Powerset_C_Polyhedron_minimize.
- * graphite-ppl.h (ppl_min_for_le_polyhedron): Update declaration.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-dependences.c (map_into_dep_poly): Removed.
- (dependence_polyhedron_1): Use combine_context_id_scat.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-poly.h (struct poly_scattering): Add layout documentation.
- (struct poly_bb): Same.
- (combine_context_id_scat): New.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/42326
- * sese.c (name_defined_in_loop_p): Return false for default
- definitions.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-clast-to-gimple.c (find_cloog_iv_in_expr): Simplify
- and clean up the logic.
-
-2010-03-08 Sebastian Pop <sebastian.pop@amd.com>
-
- * graphite-sese-to-poly.c (add_param_constraints): Enabled: remove
- early return.
-
-2010-03-08 Jakub Jelinek <jakub@redhat.com>
-
- * var-tracking.c (remove_cselib_value_chains): Define only for
- ENABLE_CHECKING.
- (dataflow_set_preserve_mem_locs, dataflow_set_remove_mem_locs,
- delete_slot_part, emit_notes_for_differences_1): Don't call
- remove_cselib_value_chains here.
- (set_slot_part, emit_notes_for_differences_2): Don't call
- add_cselib_value_chains here.
- (preserved_values): New vector.
- (preserve_value): New function.
- (add_uses, add_stores, vt_add_function_parameters): Use it
- instead of cselib_preserve_value.
- (changed_values_stack): New vector.
- (check_changed_vars_0): New function.
- (check_changed_vars_1, check_changed_vars_2): Use it.
- (emit_notes_for_changes): Call set_dv_changed (*, false) on all
- changed_values_stack VALUEs.
- (vt_emit_notes): For all preserved_values call
- add_cselib_value_chains. If ENABLE_CHECKING call
- remove_cselib_value_chains before verifying value_chains is empty.
- Initialize and free changed_values_stack.
- (vt_initialize): Initialize preserved_values.
- (vt_finalize): Free preserved_values.
-
-2010-03-08 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43269
- * tree-ssa-dse.c (dse_possible_dead_store_p): Fix post-dom
- region detection.
-
-2010-03-08 Martin Jambor <mjambor@suse.cz>
-
- * ipa-prop.h (struct ipa_param_descriptor): Removed the called field.
- (ipa_is_param_called): Removed.
- * ipa-prop.c (ipa_note_param_call): Do not set the called flag.
- (ipa_print_node_params): Do not print the called flag.
- (ipa_write_node_info): Do not stream the called flag.
- (ipa_read_node_info): Likewise.
-
-2010-03-07 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43176
- * Makefile.in (var-tracking.o): Depend on pointer-set.h.
- * cselib.c (struct expand_value_data): Add dummy field.
- (cselib_expand_value_rtx, cselib_expand_value_rtx_cb): Initialize
- dummy to false.
- (cselib_dummy_expand_value_rtx_cb): New function.
- (cselib_expand_value_rtx_1): If evd->dummy is true, don't allocate
- any rtl.
- * cselib.h (cselib_dummy_expand_value_rtx_cb): New prototype.
- * var-tracking.c: Include pointer-set.h.
- (variable): Change n_var_parts to char from int. Add
- cur_loc_changed and in_changed_variables fields.
- (variable_canonicalize): Remove.
- (shared_var_p): New inline function.
- (unshare_variable): Maintain cur_loc_changed and
- in_changed_variables fields. If var was in changed_variables,
- replace it there with new_var. Just copy cur_loc instead of
- resetting it to something else.
- (variable_union): Don't recompute cur_loc. Use shared_var_p.
- (dataflow_set_union): Don't call variable_canonicalize.
- (loc_cmp): If both x and y are DEBUG_EXPRs, compare uids
- of their DEBUG_EXPR_TREE_DECLs.
- (canonicalize_loc_order_check): Verify that cur_loc is NULL
- and in_changed_variables and cur_loc_changed is false.
- (variable_merge_over_cur): Clear cur_loc, in_changed_variables
- and cur_loc_changed. Don't update cur_loc here.
- (variable_merge_over_src): Don't call variable_canonicalize.
- (dataflow_set_preserve_mem_locs): Use shared_var_p. When
- removing loc that is equal to cur_loc, clear cur_loc,
- set cur_loc_changed and ensure variable_was_changed is called.
- (dataflow_set_remove_mem_locs): Use shared_var_p. Only
- compare pointers in cur_loc check, if it is equal to loc,
- clear cur_loc and set cur_loc_changed. Don't recompute cur_loc here.
- (variable_different_p): Remove compare_current_location argument,
- don't compare cur_loc.
- (dataflow_set_different_1): Adjust variable_different_p caller.
- (variable_was_changed): If dv had some var in changed_variables
- already, reset in_changed_variables flag for it and propagate
- cur_loc_changed over to the new variable. On empty var
- always set cur_loc_changed. Set in_changed_variables on whatever
- var is added to changed_variables.
- (set_slot_part): Clear cur_loc_changed and in_changed_variables.
- Use shared_var_p. When removing loc that is equal to cur_loc,
- clear cur_loc and set cur_loc_changed. If cur_loc is NULL at the
- end, don't set it to something else, just call variable_was_changed.
- (delete_slot_part): Use shared_var_p. When cur_loc equals to
- loc being removed, clear cur_loc and set cur_loc_changed.
- Set cur_loc_changed if all locations have been removed.
- (struct expand_loc_callback_data): New type.
- (vt_expand_loc_callback): Add dummy mode in which no rtxes are
- allocated. Always create SUBREGs if simplify_subreg failed.
- Prefer to use cur_loc, when that fails and still in
- changed_variables (and seen first time) recompute it. Set
- cur_loc_changed of variables which had to change cur_loc and
- compute elcd->cur_loc_changed if any of the subexpressions used
- had to change cur_loc.
- (vt_expand_loc): Adjust to pass arguments in
- expand_loc_callback_data structure.
- (vt_expand_loc_dummy): New function.
- (emitted_notes): New variable.
- (emit_note_insn_var_location): For VALUEs and DEBUG_EXPR_DECLs
- that weren't used for any other decl in current
- emit_notes_for_changes call call vt_expand_loc_dummy to update
- cur_loc. For -fno-var-tracking-assignments, set cur_loc to
- first loc_chain location if NULL before. Always use just
- cur_loc instead of first loc_chain location. When cur_loc_changed
- is false, when not --enable-checking=rtl just don't emit any note.
- When rtl checking, compute the note and assert it is the same
- as previous note. Clear cur_loc_changed and in_changed_variables
- at the end before removing from changed_variables.
- (check_changed_vars_3): New function.
- (emit_notes_for_changes): Traverse changed_vars to call
- check_changed_vars_3 on each changed var.
- (emit_notes_for_differences_1): Clear cur_loc_changed and
- in_changed_variables. Recompute cur_loc of new_var.
- (emit_notes_for_differences_2): Clear cur_loc if new variable appears.
- (vt_emit_notes): Initialize and destroy emitted_notes.
-
-2010-03-07 Bernd Schmidt <bernd.schmidt@analog.com>
-
- PR rtl-optimization/42220
- * regrename.c (scan_rtx) <case STRICT_LOW_PART, ZERO_EXTRACT>:
- Use verify_reg_tracked to determine if we should use OP_OUT rather
- than OP_INOUT.
- (build_def_use): If we see an in-out operand for a register that we
- know nothing about, treat is an output if possible, fail the block if
- not.
-
-2010-03-06 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42897
- * gimple-iterator.c (gsi_remove): Propagate only PHI DEFs removed
- permanently.
-
-2010-03-06 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42897
- * tree-vect-loop.c (vect_transform_loop): Kill out-of-loop debug
- uses of relevant DEFs that are dead outside the loop too.
-
-2010-03-06 Alexandre Oliva <aoliva@redhat.com>
-
- * var-tracking.c (dataflow_set_merge): Swap src and src2.
- Reverted:
- 2010-01-13 Jakub Jelinek <jakub@redhat.com>
- PR debug/41371
- * var-tracking.c (values_to_unmark): New variable.
- (find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
- values_to_unmark vector. Moved body to...
- (find_loc_in_1pdv_1): ... this. Don't clear VALUE_RECURSED_INTO,
- instead queue it into values_to_unmark vector.
- (vt_find_locations): Free values_to_unmark vector.
-
-2010-03-05 Eric Botcazou <ebotcazou@adacore.com>
-
- * Makefile.in (PLUGINCC, PLUGINCFLAGS): New variables.
- (site.exp): Export them when plugins are enabled.
-
-2010-03-05 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/42326
- * tree-chrec.c (chrec_fold_plus_1): Do not handle convert expressions
- that contain scevs.
- (chrec_fold_multiply): Same.
-
-2010-03-04 Andrew Pinski <andrew_pinski@caviumnetworks.com>
-
- PR c/43248
- * c-decl.c (build_compound_literal): Return early if init is
- an error_mark_node.
-
-2010-03-04 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/43164
- PR tree-optimization/43191
- * tree-sra.c (type_consists_of_records_p): Reject records with
- zero-size bit-fields at the end.
-
-2010-03-04 Mike Stump <mikestump@comcast.net>
-
- * Makefile.in (TAGS): Remove *.y.
-
-2010-03-04 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/40761
- * tree-ssa-pre.c (compute_antic): Walk reverse postorder
- in reverse order.
- (my_rev_post_order_compute): New function.
- (init_pre): Call it.
-
-2010-03-04 Changpeng Fang <changpeng.fang@amd.com>
-
- PR middle-end/43209
- * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Do not
- decrease the cost of an IV candidate when the cost is infinite.
-
-2010-03-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * doc/extend.texi (Vector Extensions, X86 Built-in Functions):
- Use '3DNow!' for the extension of that name, ensure normal space
- after the string.
- * doc/invoke.texi (i386 and x86-64 Options): Likewise.
-
-2010-03-03 Jeff Law <law@redhat.com>
-
- * PR middle-end/32693
- * expmed.c (store_bit_field_1): Use gen_lowpart_SUBREG rather
- than gen_rtx_SUBREG.
- (extract_bit_field_1): Likewise.
-
-2010-03-03 Janis Johnson <janis187@us.ibm.com>
-
- * doc/sourcebuild.texi (Test directives): Document that arguments
- include-opts and exclude-opts are now optional for dg-skip-if,
- dg-xfail-if, dg-xfail-run-if, and dg-shouldfail.
-
-2010-03-03 Jason Merrill <jason@redhat.com>
-
- PR c++/12909
- * cgraph.h (varpool_node): Add extra_name field.
- * varpool.c (varpool_extra_name_alias): New.
- (varpool_assemble_decl): Emit extra name aliases.
- (varpool_mark_needed_node): Look past an extra name alias.
- * lto-streamer.h (LTO_tags): Add LTO_var_decl_alias.
- * lto-streamer-in.c (lto_input_tree): Read it.
- * lto-streamer-out.c (output_unreferenced_globals): Write it.
-
-2010-03-03 Eric Botcazou <ebotcazou@adacore.com>
-
- * config.gcc (sparc64-*-solaris2*, sparc-*-solaris2*): Merge into...
- (sparc*-*-solaris2*): ...this.
-
-2010-03-03 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43229
- * cfgexpand.c (expand_debug_expr): Handle DOT_PROD_EXPR,
- WIDEN_MULT_EXPR and WIDEN_SUM_EXPR. Return NULL without
- ICE for vector expressions, ADDR_SPACE_CONVERT_EXPR,
- FIXED_CONVERT_EXPR, OBJ_TYPE_REF and WITH_SIZE_EXPR.
-
- PR debug/43237
- * dwarf2out.c (add_bound_info): If a decl bound doesn't have decl_die,
- fallthrough to default handling, just with want_address 0 instead of 2.
- For single element lists, add_AT_loc directly, otherwise create an
- artificial variable DIE and stick location list to it.
-
- PR debug/43177
- * var-tracking.c (loc_cmp): Don't assert VALUEs have the same mode.
- (VAL_EXPR_HAS_REVERSE): Define.
- (reverse_op): New function.
- (add_stores): For reversible operations add an extra MO_VAL_USE.
-
-2010-03-02 Jason Merrill <jason@redhat.com>
-
- * c-pretty-print.c (pp_c_specifier_qualifier_list): Print vector size.
-
-2010-03-02 Eric Botcazou <ebotcazou@adacore.com>
-
- * config.gcc (sparc-*-linux*): Do not include sparc/gas.h.
- (sparc64-*-linux*): Likewise.
- (sparc64-*-solaris2*): Include assembler files before linker ones.
- (sparc-*-solaris2*): Simplify and reorder to match previous case.
- * config/sparc/gas.h: Delete.
- * config/sparc/sol2-64.h: Add copyright notice.
- * config/sparc/sol2-gas-bi.h: Likewise.
- * config/sparc/sol2-gld.h: Likewise.
- * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Delete.
- * config/sparc/sol2.h (TARGET_ASM_NAMED_SECTION): Redefine.
- * config/sparc/sol2-gas.h (TARGET_ASM_NAMED_SECTION): Likewise.
- * config/sparc/sparc.c (TARGET_ASM_ALIGNED_SI_OP): Never redefine.
- (sparc_elf_asm_named_section): Rename into...
- (sparc_solaris_elf_asm_named_section): ...this. Always define.
-
-2010-03-02 Uros Bizjak <ubizjak@gmail.com>
-
- * config/alpha/alpha.c (override_options): Fix -mtune error message.
-
-2010-03-02 Jeff Law <law@redhat.com>
-
- PR middle-end/42431
- * reload1.c (rtx_p, substitute_stack): Declare.
- (substitute): Record addresses of changed rtxs.
- (gen_reload_chain_without_interm_reg_p): Don't use copy_rtx anymore.
- Restore the original rtx when complete.
- (reload): Free subsitute_stack when complete.
-
-2010-03-02 Janis Johnson <janis187@us.ibm.com>
-
- * doc/gccint.texi (menu): Add Testsuites as a chapter.
- * doc/sourcebuild.texi (Testsuites): Move up a level to be a
- new chapter.
- (Test Idioms, Test Directives, Ada Tests, C Tests, libgcj Tests,
- LTO Testing, gcov Testing, profopt Testing, compat Testing,
- Torture Tests): Change from subsection to section.
-
-2010-03-02 Jakub Jelinek <jakub@redhat.com>
- Steven Bosscher <steven@gcc.gnu.org>
-
- * var-tracking.c (vt_initialize): Scan insns in ebb chunks
- instead of bb.
-
-2010-03-02 Reza Yazdani <reza.yazdani@amd.com>
-
- PR middle-end/42640
- * tree-loop-distribution.c (update_phis_for_loop_copy): Replaced
- the assignment from the new induction variable to the assignment
- of the value from the original loop PHI function.
-
-2010-03-01 Janis Johnson <janis187@us.ibm.com>
- Daniel Jacobowitz <dan@codesourcery.com>
-
- * doc/sourcebuild.texi (Test directives): Clarify options to
- dg-skip-if.
-
-2010-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * configure.ac (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:
- Disable cfi directives unless GCC and gas agree on using read-only
- .eh_frame sections for 64-bit.
- * configure: Regenerate.
-
-2010-03-01 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43220
- * tree-ssa-ccp.c (optimize_stack_restore): Do not optimize
- BUILT_IN_STACK_{SAVE,RESTORE} around alloca.
-
-2010-03-01 Richard Guenther <rguenther@suse.de>
- Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/41250
- * gimplify.c (gimplify_body): Unset DECL_HAS_VALUE_EXPR_P on
- gimplified parameters.
-
-2010-03-01 Christian Bruel <christian.bruel@st.com>
-
- * except.c (dw2_build_landing_pads): set LABEL_PRESERVE_P.
-
-2010-03-01 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/linux64.h (ASM_SPEC): Use SPEC_32 and SPEC_64.
-
-2010-03-01 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/43213
- * expr.c (expand_assignment): Use the alias-oracle to tell
- if the rhs aliases the result decl.
-
-2010-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR pch/14940
- * config/host-solaris.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Redefine
- to sol_gt_pch_get_address.
- (TRY_EMPTY_VM_SPACE): Define for all combinations of 32 and
- 64-bit, SPARC and x86.
- (sol_gt_pch_get_address): New function.
-
-2010-03-01 Marco Poletti <poletti.marco@gmail.com>
-
- * toplev.h (inform_n, error_n): Declare.
- * diagnostic.c (inform_n, error_n): New function.
-
-2010-03-01 Jakub Jelinek <jakub@redhat.com>
-
- * cfgexpand.c (expand_used_vars): If an artificial non-ignored var
- has no rtl yet when processing local_decls, queue it and recheck
- if deferred stack allocation hasn't assigned it rtl.
-
-2010-02-28 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.c (unspec_bbr_uid): New.
- (gen_block_redirect): Use it instead of INSN_UID.
- (gen_far_branch): Likewise.
-
-2010-02-28 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/darwin.h (TARGET_SUBTARGET32_ISA_DEFAULT): Make
- it the same as TARGET_SUBTARGET64_ISA_DEFAULT.
-
-2010-02-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * doc/invoke.texi (Warning Options, RX Options): Fix typos.
- (Warning Options): -Wno-conversion-null is valid for
- Objective-C++ as well.
- * doc/tm.texi (Named Address Spaces): Likewise.
- * doc/plugins.texi (Plugins): Replace TABs with spaces.
- * doc/tree-ssa.texi (Tree SSA): Likewise.
-
-2010-02-27 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/43202
- * config.gcc: Don't enable SSE math for i[34567]86-*-darwin*
- by default. Don't set the default arch for
- i[34567]86-*-darwin*|x86_64-*-darwin*.
-
-2010-02-27 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/43202
- * config.gcc: Enable SSE math for i[34567]86-*-darwin* by
- default. Set the default 32bit/64bit archs with $with_arch
- instead of $arch for i[34567]86-*-*|x86_64-*-* targets.
-
-2010-02-27 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43186
- * params.def (PARAM_MAX_UNROLL_ITERATIONS): New param.
- * doc/invoke.texi (max-completely-peel-loop-nest-depth): Document.
- * tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): Limit
- unroller iterations.
-
-2010-02-27 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc: Set the default 32bit/64bit archs if 64bit ISA is
- required and i[34567]86-*-* targets don't support 64bit ISA.
-
-2010-02-26 Eric Botcazou <ebotcazou@adacore.com>
-
- PR ada/43096
- * tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
- the same alias set.
-
-2010-02-26 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc: Set the default arch at least to Prescott for
- i[34567]86-*-darwin* and Pentium 4 for i[34567]86-*-* targets
- if SSE math is enabled.
-
-2010-02-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * diagnostic.c (diagnostic_initialize): Update.
- (diagnostic_report_diagnostic): Test inhibit_notes_p for
- informative notes.
- * diagnostic.h (diagnostic_context): New bool inhibit_notes_p.
- (diagnostic_inhibit_notes): New.
- * toplev.c (process_options): inhibit notes with -fcompare-debug.
-
-2010-02-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR c/20631
- * doc/cpp.texi: Use c90 instead of c89 and gnu90 instead of gnu89.
- * doc/standards.texi: Likewise.
- * doc/extend.texi: Likewise.
- * doc/trouble.texi: Likewise.
- * doc/cppopts.texi: Likewise.
- * doc/install.texi: Likewise.
- * c.opt (std=c90,std=gnu90): New options.
- * c-opts.c (c_common_handle_option): Handle them.
-
-2010-02-26 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR c/24577
- * c-decl.c (undeclared_variable): Use an informative note.
-
-2010-02-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43186
- * gimple.h (gimple_fold): Remove.
- * gimple.c (gimple_fold): Remove. Inline into single user ...
- * tree-cfgcleanup.c (cleanup_control_expr_graph): ... here.
- Try harder for conditions.
-
-2010-02-26 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43190
- * function.c (used_types_insert): Don't skip through named pointer
- types. Don't use TYPE_MAIN_VARIANT if the original type has a name
- and it is different from the main variant's type.
-
-2010-02-26 Nick Clifton <nickc@redhat.com>
-
- * config/rx/rx.md (sminsi3): Remove bogus alternative.
-
-2010-02-26 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc: Support --with-fpmath=sse for x86.
-
- * config/i386/ssemath.h: New.
-
- * doc/install.texi (--with-fpmath=sse): Documented.
-
-2010-02-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43188
- * tree-vect-stmts.c (get_vectype_for_scalar_type): Do not build
- vector types of over-aligned element type.
-
-2010-02-26 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/43175
- * config/i386/i386.c (expand_vec_perm_blend): Use correct
- operands in V8HImode subregs. Fix operand order in VEC_MERGE rtx.
-
-2010-02-26 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * doc/invoke.texi (-fvar-tracking-assignments): Fix typo.
-
-2010-02-26 Jakub Jelinek <jakub@redhat.com>
-
- * Makefile.in (var-tracking.o): Depend on $(DIAGNOSTIC_H).
- * var-tracking.c: Include diagnostic.h.
- (debug_dv): New function.
- (dump_var): Print DEBUG_EXPR_DECLs as D#N instead of D.-N.
-
- PR debug/43160
- * var-tracking.c (dv_onepart_p): Return true for DEBUG_EXPR_DECLs.
- (add_value_chain, add_value_chains, remove_value_chain,
- remove_value_chains): Handle DEBUG_EXPRs.
- (check_changed_vars_1, check_changed_vars_2): Handle DEBUG_EXPR_DECLs.
-
- PR debug/43161
- * regcprop.c (struct queued_debug_insn_change): New type.
- (struct value_data_entry): Add debug_insn_changes field.
- (struct value_data): Add n_debug_insn_changes field.
- (debug_insn_changes_pool): New variable.
- (free_debug_insn_changes, apply_debug_insn_changes,
- cprop_find_used_regs_1, cprop_find_used_regs): New functions.
- (kill_value_one_regno): Call free_debug_insn_changes if needed.
- (init_value_data): Clear debug_insn_changes and n_debug_insn_changes
- fields.
- (replace_oldest_value_reg): Don't change DEBUG_INSNs, instead queue
- changes for them.
- (copyprop_hardreg_forward_1): Don't call apply_change_group for
- DEBUG_INSNs. For a real insn, if there are queued DEBUG_INSN
- changes, call cprop_find_used_regs via note_stores.
- (copyprop_hardreg_forward): When copying vd from predecessor
- which has any queued DEBUG_INSN changes, make sure the pointers are
- cleared. At the end call df_analyze and then if there are any
- DEBUG_INSN changes queued at the end of some basic block for still
- live registers, apply them.
- (pass_cprop_hardreg): Set TODO_df_finish in todo_flags_finish.
-
-2010-02-25 Uros Bizjak <ubizjak@gmail.com>
-
- * config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.
- (arm*-*-*): Ditto.
-
-2010-02-25 H.J. Lu <hongjiu.lu@intel.com>
-
- * config.gcc: Set arch/cpu for i[34567]86-*-*|x86_64-*-*
- targets. Set the default with_cpu/with_arch from arch/cpu.
- Allow x86-64 and native for with_cpu/with_arch.
-
-2010-02-25 Nicolas Benoit <nbenoit@tuxfamily.org>
-
- * ebitmap.c: Change calls to verify_popcount with calls to
- sbitmap_verify_popcount.
- (ebitmap_clear_bit): Fixed map->cacheindex test and
- map>cache update when bit clearing results in an empty
- element.
-
-2010-02-25 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR target/43154
- * config/rs6000/vector.md (VEC_64): New iterator for V2DF, V2DI.
- (vec_interleave_high<mode>): Rename from vec_interleave_highv2df
- and support both V2DF and V2DI modes.
- (vec_interleave_low<mode>): Rename from vec_interleave_lowv2df and
- support both V2DF and V2DI modes.
- (general): Delete trailing whitespace from a few patterns.
-
- * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
- V2DF/V2DI interleave high/low builtins.
-
- * config/rs6000/rs6000-builtin.def (VSX_BUILTIN_VEC_MERGE*): Add
- new VSX builtins.
-
- * config/rs6000/rs6000.c (bdesc_2arg): Add support for V2DF/V2DI
- interleave high/low functions.
-
-2010-02-25 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/extend.texi (Symbol-Renaming Pragmas): Fix spelling of
- #pragma extern_prefix.
-
-2010-02-25 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43166
- * cfgexpand.c (expand_debug_expr) <case VAR_DECL>: If mode is
- BLKmode, assert op0 is a MEM and just adjust its mode.
-
- PR debug/43165
- * cfgexpand.c (expand_debug_expr): Don't call simplify_gen_subreg
- if bitpos isn't multiple of mode's bitsize.
-
-2010-02-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * c.opt (-ftemplate-depth=): New.
- (-ftemplate-depth-): Deprecate.
- * optc-gen.awk: Handle -ftemplate-depth=.
- * opth-gen.awk: Likewise.
- * c-opts.c (c_common_handle_option): Likewise.
- * doc/invoke.texi (-ftemplate-depth-): Replace with -ftemplate-depth=.
-
-2010-02-24 Jason Merrill <jason@redhat.com>
-
- * doc/invoke.texi: Improve -Wabi and -fabi-version docs.
-
-2010-02-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * cfg.c (alloc_aux_for_block): Remove inline.
- (alloc_aux_for_edge): Likewise.
-
-2010-02-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.gcc: Fix typo in mips-sgi-irix6.[0-4]* obsoletion.
-
-2010-02-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/i386/sol2.h (NO_DBX_BNSYM_ENSYM): Define.
- * config/i386/sol2-gas.h: New file.
- * config.gcc (i[34567]86-*-solaris2*): Use it.
-
-2010-02-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR c/43128
- * c-typeck.c (ep_convert_and_check): New.
- (build_conditional_expr): Use it.
- (build_binary_op): Likewise.
-
-2010-02-24 Jakub Jelinek <jakub@redhat.com>
-
- * regcprop.c (copyprop_hardreg_forward_1): Don't call df_insn_rescan.
-
- PR debug/43150
- * gimplify.c (gimplify_type_sizes): Clear DECL_IGNORED_P for VLA
- bounds even for -O+.
- * var-tracking.c (track_expr_p): If !need_rtl, don't mandate
- expr needs to have DECL_NAME set.
-
-2010-02-24 Nick Clifton <nickc@redhat.com>
-
- * config/mep/mep.c: Include gimple.h.
- (mep_function_uses_sp): Delete unused function.
- (mep_gimplify_va_arg_expr): Change types of pre_p and post_p
- parameters. Use unsigned integers to count args. Return a
- NULL_RTX instead of an error_mark_node. Toidy up formatting.
-
-2010-02-23 Jakub Jelinek <jakub@redhat.com>
-
- PR target/43107
- * config/i386/i386.c (avx_vpermilp_parallel): Reject indexes
- greater or equal to nelt instead of 2 * nelt.
- (expand_vec_perm_1): When op0 and op1 are equal, mask indexes
- with nelt - 1.
-
-2010-02-23 Jason Merrill <jason@redhat.com>
-
- PR debug/42800
- * cfgexpand.c (expand_used_vars): Keep artificial non-ignored vars
- in cfun->local_decls even if they have register types.
-
- PR c++/42837
- * stor-layout.c (place_field): Don't warn about unnecessary
- DECL_PACKED if the type is packed.
-
-2010-02-23 Jakub Jelinek <jakub@redhat.com>
-
- PR target/43139
- * config/i386/i386.c (ix86_delegitimize_address): Delegitimize all
- GOTOFF relocs, even when the base reg isn't pic pointer.
-
-2010-02-23 Michael Matz <matz@suse.de>
-
- PR debug/43077
- * cfgexpand (expand_debug_expr): Expand TERed ssa names in place.
- (expand_gimple_basic_block): Generate and use debug temps if there
- are debug uses left after the last real use of TERed ssa names.
- Unlink debug immediate uses when they are expanded.
-
-2010-02-23 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR 43123
- * config/i386/i386.c (override_options): Reorganise to provide
- better error messages.
-
-2010-02-22 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43083
- * graphite-scop-detection.c (create_single_exit_edge): Move
- the call to find_single_exit_edge to....
- (create_sese_edges): ...here. Don't handle multiple edges
- exiting the function.
- (build_graphite_scops): Don't handle multiple edges
- exiting the function.
-
-2010-02-22 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43097
- * sese.c (get_rename): Assert that old_name is an SSA_NAME.
- (rename_variables_in_stmt): Continue when the use is not an SSA_NAME.
-
-2010-02-22 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/43026
- * sese.c (expand_scalar_variables_expr): Handle COMPONENT_REF.
-
-2010-02-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR c++/43126
- * c-typeck.c (convert_arguments): Print declaration location.
- * c-common.c (validate_nargs): Rename as
- builtin_function_validate_nargs.
- (check_builtin_function_arguments): Update.
-
-2010-02-22 Richard Guenther <rguenther@suse.de>
-
- PR lto/43045
- * tree-inline.c (declare_return_variable): Use the type of
- the call stmt lhs if available.
-
-2010-02-22 Duncan Sands <baldrick@free.fr>
-
- * passes.c (register_pass): Always consider all pass lists when
- ref_pass_instance_number is zero.
-
-2010-02-22 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42749
- * tree-tailcall.c (adjust_return_value_with_ops): Drop update
- parameter. Do arithmetic in the original type.
- (update_accumulator_with_ops): Likewise.
- (adjust_accumulator_values): Adjust.
-
-2010-02-22 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.md ("movqi"): Re-add the mem->mem alternative.
- (QI to BLKmode splitter): New splitter.
-
-2010-02-22 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/i386/i386.c (initial_ix86_tune_features): Turn on
- X86_TUNE_INTER_UNIT_MOVES for m_ATOM.
-
-2010-02-22 Richard Guenther <rguenther@suse.de>
-
- * tree-vect-slp.c (vect_slp_analyze_bb): Fix typo.
-
-2010-02-22 Hans-Peter Nilsson <hp@bitrange.com>
-
- Migrate crti, crtn, crtbegin, crtend build rules to libgcc.
- * config/mmix/t-mmix (EXTRA_MULTILIB_PARTS): Don't set.
- ($(T)crti.o, $(T)crtn.o): Remove rules.
-
-2010-02-21 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/35259
- * doc/invoke.texi (-fassociative-math): Document that this
- option is automatically enabled for Fortran.
-
-2010-02-20 David S. Miller <davem@davemloft.net>
-
- * configure.ac: Test if linker and assembler properly support
- GOTDATA_OP relocations.
- * configure: Rebuild.
- * config.in: Likewise.
- * config/sparc/sparc.md (UNSPEC_MOVE_GOTDATA): New.
- (movsi_lo_sum_pic): Use %gdop_*() relocs if available.
- (movsi_high_pic): Likewise.
- (movdi_lo_sum_pic): Likewise.
- (movdi_high_pic): Likewise.
- (movsi_pic_gotdata_op): New pattern.
- (movdi_pic_gotdata_op): Likewise.
- * config/sparc/sparc.c (legitimize_pic_address): If flag_pic is 2,
- emit gen_mov{si,di}_pic_gotdata_op for the GOT slot load.
-
-2010-02-20 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/43067
- * config/i386/sse.md (xop_mulv2div2di3_low): Change type
- attribute to ssemul.
- (xop_mulv2div2di3_high): Ditto.
-
-2010-02-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR c++/35669
- * c.opt (Wconversion-null): New option.
- * doc/invoke.texi (Wconversion-null): Document.
-
-2010-02-20 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- * common.opt (Wlarger-than-): Add Undocumented.
-
-2010-02-19 Mike Stump <mikestump@comcast.net>
-
- * config/t-darwin (gt-darwin.h): Remove as Makefile now handles it.
-
-2010-02-19 Jason Merrill <jason@redhat.com>
-
- PR target/40332
- * configure.ac (gcc_cv_as_cfi_advance_working): Check 32-bit advance.
- * configure: Likewise.
-
-2010-02-20 Alan Modra <amodra@gmail.com>
-
- PR middle-end/42344
- * cgraph.h (cgraph_make_decl_local): Declare.
- * cgraph.c (cgraph_make_decl_local): New function.
- (cgraph_make_node_local): Use it.
- * cgraphunit.c (cgraph_function_versioning): Likewise.
- * ipa.c (function_and_variable_visibility): Likewise.
-
-2010-02-19 Jakub Jelinek <jakub@redhat.com>
-
- PR bootstrap/43121
- * except.c (sjlj_emit_function_enter): Don't call
- add_reg_br_prob_note, instead add REG_BR_PROB note to the last insn
- directly.
- * rtl.h (add_reg_br_prob_note): Remove prototype.
-
-2010-02-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR 41779
- * c-common.c (conversion_warning): Remove widening conversions
- before checking the conversion of integers to reals.
-
-2010-02-19 Mike Stump <mikestump@comcast.net>
-
- PR middle-end/43125
- * c-decl.c (merge_decls): Merge DECL_PRESERVE_P.
-
- PR objc/43061
- * cgraphunit.c (process_function_and_variable_attributes): Check
- DECL_PRESERVE_P instead of looking up attribute "used".
- * ipa-pure-const.c (check_decl): Likewise.
- * ipa-reference.c (has_proper_scope_for_analysis): Likewise.
- * ipa-type-escape.c (has_proper_scope_for_analysis): Likewise.
- * config/sol2.c (solaris_insert_attributes): Set DECL_PRESERVE_P
- instead of attribute "used".
- * config/sol2-c.c (solaris_pragma_init): Likewise.
- (solaris_pragma_fini): Likewise.
-
-2010-02-19 Jakub Jelinek <jakub@redhat.com>
-
- * ipa-struct-reorg.c (make_field_acc_node, gen_cluster, peel_field):
- Use XCNEW instead of xcalloc.
- (add_access_to_acc_sites, create_new_var_node, add_alloc_site): Use
- XNEW instead of xmalloc.
- (get_fields): Use XNEWVEC instead of xmalloc.
-
- PR debug/43084
- * ipa-struct-reorg.c (add_access_to_acc_sites): For debug stmts don't
- populate vars array.
- (create_new_general_access): For debug stmts just reset value.
- (get_stmt_accesses): For accesses within debug stmts just record them
- using add_access_to_acc_sites instead of preventing the peeling or
- counting them as accesses.
-
- PR middle-end/42233
- * dojump.c (do_jump) <case TRUTH_NOT_EXPR>: Invert priority.
-
-2010-02-19 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42916
- * tree-vect-slp.c (vect_slp_analyze_bb): Count only real
- instructions.
-
-2010-02-19 Andreas Schwab <schwab@linux-m68k.org>
-
- * configure.ac: Replace all uses of changequote in macro arguments
- with proper quoting.
-
-2010-02-19 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/42233
- * loop-doloop.c (add_test): Adjust do_compare_rtx_and_jump caller.
-
-2010-02-19 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42944
- * tree-ssa-alias.c (call_may_clobber_ref_p_1): Massage
- test for aliasing with errno.
-
-2010-02-19 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/42233
- * expr.h (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump,
- do_jump_1, do_compare_rtx_and_jump): Add PROB argument.
- * dojump.c: Include output.h.
- (inv): New inline function.
- (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump_1, do_jump,
- do_jump_by_parts_greater_rtx, do_jump_by_parts_greater,
- do_jump_by_parts_zero_rtx, do_jump_by_parts_equality_rtx,
- do_jump_by_parts_equality, do_compare_and_jump): Add PROB
- argument, pass it down to other calls.
- (do_compare_rtx_and_jump): Likewise. If PROB is not -1,
- add REG_BR_PROB note to the conditional jump.
- * cfgexpand.c (add_reg_br_prob_note): Removed.
- (expand_gimple_cond): Don't call it, add the probability
- as last argument to jumpif_1/jumpifnot_1.
- * Makefile.in (dojump.o): Depend on output.h.
- * builtins.c (expand_errno_check): Adjust do_compare_rtx_and_jump
- callers.
- * expmed.c (emit_store_flag_force, do_cmp_and_jump): Likewise.
- * stmt.c (do_jump_if_equal): Likewise.
- * cfgrtl.c (rtl_lv_add_condition_to_bb): Likewise.
- * loop-unswitch.c (compare_and_jump_seq): Likewise.
- * config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init):
- Likewise.
- * optabs.c (expand_doubleword_shift, expand_abs): Likewise.
- * expr.c (expand_expr_real_1): Adjust do_jump, jumpifnot and
- jumpifnot_1 callers.
- (expand_expr_real_2): Adjust jumpifnot_1 and do_compare_rtx_and_jump
- callers.
- (store_expr): Adjust jumpifnot caller.
- (store_constructor): Adjust jumpif caller.
-
- PR middle-end/42233
- * gimplify.c (gimple_boolify): For __builtin_expect call
- gimple_boolify also on its first argument.
-
-2010-02-18 Uros Bizjak <ubizjak@gmail.com>
-
- * configure.ac (gnu-unique-object): Wrap regexps using [] in
- changequote block.
- (__stack_chk_fail): Ditto. Remove quadrigraphs.
- * configure: Regenerated.
-
-2010-02-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/spu/spu-c.c (spu_resolve_overloaded_builtin): Call
- lang_hooks.types_compatible_p instead of comptypes.
-
-2010-02-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
-
- * config/arm/lib1funcs.asm (__prefer_thumb__): New define.
- (udivsi3, aeabi_uidivmod, divsi3, aeabi_idivmod): Use Thumb-1 variant
- if __prefer_thumb__ is defined.
-
-2010-02-18 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/43066
- * tree-sra.c (build_ref_for_offset_1): Return false on encountering an
- array with zero-sized element type.
-
-2010-02-18 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (add_var_loc_to_decl): Change last argument to
- rtx, allocate struct var_loc_node here and return it to the
- caller, and only if it is actually needed.
- (dwarf2out_var_location): Adjust add_var_loc_to_decl caller,
- move it earlier and return immediately if it returns NULL.
-
-2010-02-17 Mikael Pettersson <mikpe@it.uu.se>
-
- * config/sparc/gas.h: New file. Restore
- TARGET_ASM_NAMED_SECTION to its ELF default.
- * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
- check !HAVE_GNU_AS.
- * config/sparc/sparc.c (sparc_elf_asm_named_section):
- Likewise. Add ATTRIBUTE_UNUSED to prototype.
- * config.gcc (sparc*-*-linux*): Include sparc/gas.h
- after sparc/sysv4.h.
-
-2010-02-17 Dave Korn <dave.korn.cygwin@gmail.com>
-
- * config/i386/mingw32.h (LIBGCJ_SONAME): Fix cut'n'pasto in DLL name.
-
-2010-02-17 Steven Bosscher <steven@gcc.gnu.org>
-
- * gensupport.c (process_one_cond_exec): Derive name for COND_EXEC
- patterns from predicated pattern.
-
-2010-02-17 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/43103
- * config/i386/sse.md (xop_vpermil2<mode>3): Use avxmodesuffixf2c
- for insn mnemonic suffix.
-
-2010-02-17 Richard Guenther <rguenther@suse.de>
-
- * tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis
- to loop PHI nodes.
-
-2010-02-17 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/42918
- * caller-save.c (save_call_clobbered_regs): If BB ends with
- a DEBUG_INSN, move any notes in between last real insn and the last
- DEBUG_INSN after the last DEBUG_INSN.
-
-2010-02-16 Joern Rennecke <joern.rennecke@embecosm.com>
-
- * tm.texi (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC):
- Fix return type. Fix argument type. Explain meaning of return value.
-
-2010-02-16 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/41043
- * tree-vrp.c (vrp_var_may_overflow): Only ask SCEV for real loops.
- (vrp_visit_assignment_or_call): Do not ask SCEV for regular
- statements ...
- (vrp_visit_phi_node): ... but only for loop PHI nodes.
-
-2010-02-16 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/43074
- * tree-vectorizer.h (VECTORIZABLE_CYCLE_DEF): New.
- * tree-vect-loop.c (vect_analyze_loop_operations): Add
- vectorizable cycles in hybrid SLP check.
- * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Likewise.
-
-2010-02-16 Richard Guenther <rguenther@suse.de>
-
- * alias.c (memrefs_conflict_p): Distinguish must-alias from don't know.
- (true_dependence): If memrefs_conflict_p computes must-alias
- trust it. Move TBAA check after offset-based disambiguation.
- (canon_true_dependence): Likewise.
-
-2010-02-16 Alexandre Oliva <aoliva@redhat.com>
-
- * params.def (PARAM_MAX_VARTRACK_SIZE): New.
- * doc/invoke.texi: Document it.
- * var-tracking.c: Include toplev.h and params.h.
- (vt_find_locations): Return bool indicating success. Compute
- hash sizes unconditionally. Check new parameter, report.
- (variable_tracking_main_1): Check vt_find_locations results and
- retry. Renamed from...
- (variable_tracking_main): ... this. New wrapper to preserve
- flag_var_tracking_assignments.
- * Makefile.in (var-tracking.o): Adjust dependencies.
-
-2010-02-16 Jack Howarth <howarth@bromo.med.uc.edu>
- Jakub Jelinek <jakub@redhat.com>
-
- PR target/42854
- * config/darwin.h (ASM_WEAKEN_DECL): Don't check weak attribute
- if weak_import attribute is present.
- * config/darwin.c (machopic_select_section): Likewise.
-
-2010-02-15 Joern Rennecke <joern.rennecke@embecosm.com>
-
- * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Document.
- (TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): Likewise.
- (TARGET_VECTORIZE_BUILTIN_VEC_PERM): Likewise.
- (TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK): Likewise.
-
- * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): Fix argument
- types.
-
- * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
- Fix argument types.
-
- * doc/tm.texi (TARGET_SCHED_DFA_NEW_CYCLE): Add argument names.
- Rewrite text to refer to the names.
-
-2010-02-15 Sebastian Pop <sebastian.pop@amd.com>
-
- * config/i386/i386-builtin-types.def
- (V2DF_FTYPE_V2DF_V2DF_V2DI_INT): Declared.
- (V4DF_FTYPE_V4DF_V4DF_V4DI_INT): Declared.
- (V4SF_FTYPE_V4SF_V4SF_V4SI_INT): Declared.
- (V8SF_FTYPE_V8SF_V8SF_V8SI_INT): Declared.
- * config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_VPERMIL2PD,
- IX86_BUILTIN_VPERMIL2PS, IX86_BUILTIN_VPERMIL2PD256, and
- IX86_BUILTIN_VPERMIL2PS256.
- (MULTI_ARG_4_DF2_DI_I): Defined.
- (MULTI_ARG_4_DF2_DI_I1): Defined.
- (MULTI_ARG_4_SF2_SI_I): Defined.
- (MULTI_ARG_4_SF2_SI_I1): Defined.
- (bdesc_multi_arg): Add __builtin_ia32_vpermil2pd,
- __builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256, and
- __builtin_ia32_vpermil2ps256.
- (ix86_expand_multi_arg_builtin): Handle MULTI_ARG_4_DF2_DI_I,
- MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
- MULTI_ARG_4_SF2_SI_I1. Handle builtins with 4 arguments.
- (ix86_expand_args_builtin): Handle MULTI_ARG_4_DF2_DI_I,
- MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
- MULTI_ARG_4_SF2_SI_I1. Handle CODE_FOR_xop_vpermil2v2df3,
- CODE_FOR_xop_vpermil2v4sf3, CODE_FOR_xop_vpermil2v4df3, and
- CODE_FOR_xop_vpermil2v8sf3.
- * config/i386/i386.md (UNSPEC_VPERMIL2): Declared.
- * config/i386/sse.md (xop_vpermil2<mode>3): New insn pattern.
- * config/i386/xopintrin.h (_mm_permute2_pd): New.
- (_mm256_permute2_pd): New.
- (_mm_permute2_ps): New.
- (_mm256_permute2_ps): New.
-
-2010-02-15 Nick Clifton <nickc@redhat.com>
-
- * config/h8300/h8300.c (h8300_push_pop): Use bool type for
- boolean parameters. Use emit_jump_insn when emitting a pop
- instruction containing a return insn.
- (push): Use 'true' rather than '1' as second parameter to F.
- (h8300_expand_prologue): Likewise.
- Use 'true' and 'false' for boolean parameters to h8300_push_pop.
- (h8300_expand_epilogue): Likewise.
-
-2010-02-15 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/43068
- * cgraphunit.c (thunk_adjust): Skip adjusting by fixed_offset
- if that is zero.
-
-2010-02-15 Nick Clifton <nickc@redhat.com>
-
- * config/mn10300/mn10300.h (FUNCTION_ARG_REGNO_P): Revert previous
- delta.
-
-2010-02-14 Marco Poletti <poletti.marco@gmail.com>
-
- * intl.c (fake_ngettext): New function.
- * intl.h (fake_ngettext): Declare.
- (ngettext): Define macro.
- * collect2.c (notice_translated): New function.
- (main): Use notice_translated and ngettext.
- * collect2.h (notice_translated): Declare.
-
-2010-02-14 Steven Bosscher <steven@gcc.gnu.org>
-
- * reorg.c (delete_computation): Comment fixes.
- * caller-save.c (setup_save_areas): Idem.
- * sel-sched-dump.c (dump_lv_set): Idem.
- * rtl.def: Idem.
-
-2010-02-14 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-
- * config/s390/s390.c (s390_sched_init): New function.
- (TARGET_SCHED_INIT): Target hook defined.
-
-2010-02-12 Dave Korn <dave.korn.cygwin@gmail.com>
- Jack Howarth <howarth@bromo.med.uc.edu>
- Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
-
- PR target/42982
- Partial revert of unintended change in fix for PR41605.
- * config/darwin.h: Fix typo.
- * config/darwin9.h: Same.
-
-2010-02-11 Jakub Jelinek <jakub@redhat.com>
-
- * c-pch.c (pch_init): Clear v.
-
-2010-02-11 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/42930
- * graphite-scop-detection.c (graphite_can_represent_scev): Call
- graphite_can_represent_init for MULT_EXPR.
-
-2010-02-11 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/42914
- PR middle-end/42530
- * graphite-sese-to-poly.c (remove_phi): New.
- (translate_scalar_reduction_to_array): Call remove_phi.
-
-2010-02-11 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/42771
- * graphite-clast-to-gimple.c (gloog): Call rename_sese_parameters.
- * graphite-clast-to-gimple.h (gloog): Update declaration.
- * graphite-poly.c (new_scop): Clear POLY_SCOP_P.
- * graphite-poly.h (struct poly_bb): Add missing comments.
- (struct scop): Add poly_scop_p field.
- (POLY_SCOP_P): New.
- * graphite-sese-to-poly.c (build_poly_scop): Set POLY_SCOP_P.
- * graphite.c (graphite_transform_loops): Build the polyhedral
- representation for each scop before code generation.
- * sese.c (rename_variables_in_operand): Removed.
- (rename_variables_in_expr): Return the renamed expression.
- (rename_sese_parameters): New.
- * sese.h (rename_sese_parameters): Declared.
-
-2010-02-11 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42998
- * tree-ssa-pre.c (create_expression_by_pieces): Treat
- POINTER_PLUS_EXPR properly.
-
-2010-02-11 Sebastian Pop <sebastian.pop@amd.com>
- Changpeng Fang <changpeng.fang@amd.com>
-
- PR middle-end/40886
- * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Decrement
- the cost of an IV candidate when the IV is used in a test against zero.
-
- * gcc.dg/tree-ssa/ivopts-3.c: New.
-
-2010-02-11 Richard Guenther <rguenther@suse.de>
-
- PR lto/41664
- * tree-ssa-alias.c (refs_may_alias_p_1): Canonicalize
- pointer-vs-decl case by swapping refs. Handle some cases
- of pointer-vs-decl disambiguations more conservatively.
- * cfgexpand.c (gimple_expand_cfg): Set gimple_df->in_ssa_p
- to false after expanding.
-
-2010-02-11 Richard Guenther <rguenther@suse.de>
-
- PR driver/43021
- * gcc.c (process_command): Handle LTO file@offset case more
- appropriately.
-
-2010-02-11 Jakub Jelinek <jakub@redhat.com>
-
- * reload1.c (eliminate_regs_1): If insn is DEBUG_INSN, avoid any
- modifications outside of the DEBUG_INSN. Accept CLOBBERs inside
- of DEBUG_INSNs.
- (eliminate_regs_in_insn): Eliminate regs even in DEBUG_INSNs.
-
- * dwarf2out.c (mem_loc_descriptor) <case MEM>: Use DW_OP_deref_size
- if MEM's mode size isn't DWARF2_ADDR_SIZE.
- (mem_loc_descriptor) <do_scompare>: Allow also VOIDmode arguments.
- Optimize eq/ne comparisons when both arguments are known to be
- zero-extended.
- (mem_loc_descriptor) <do_ucompare>: Allow also VOIDmode arguments.
- Don't mask operands unnecessarily if they are known to be already
- zero-extended.
-
-2010-02-10 Vladimir Makarov <vmakarov@redhat.com>
-
- * ira-conflicts.c (add_insn_allocno_copies): Use find_reg_note
- instead of loop.
-
-2010-02-10 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43017
- * tree-vrp.c (vrp_int_const_binop): Trust int_const_binop
- for wrapping signed arithmetic.
-
-2010-02-10 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/43010
- * dwarf2out.c (retry_incomplete_types): Don't call gen_type_die
- if no debug info should be emitted for it.
-
-2010-02-10 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
- note when flag_exceptions is set.
-
-2010-02-10 Duncan Sands <baldrick@free.fr>
-
- * Makefile.in (PLUGIN_HEADERS): Add debug.h.
-
-2010-02-10 Richard Guenther <rguenther@suse.de>
-
- PR c/43007
- * tree.c (get_unwidened): Handle constants.
- * convert.c (convert_to_integer): Handle TRUNC_DIV_EXPR.
-
-2010-02-10 Martin Jambor <mjambor@suse.cz>
-
- PR lto/42985
- * ipa-prop.c (ipa_update_after_lto_read): Count parameters and
- check for variable argument counts independently.
-
-2010-02-10 Christian Bruel <christian.bruel@st.com>
-
- PR target/42841
- * config/sh/sh.c (find_barrier): Increase length for non delayed
- conditional branches.
-
-2010-02-10 Christian Bruel <christian.bruel@st.com>
-
- * config/sh/sh.c (find_barrier): Don't emit a CP inside the GP setting.
-
-2010-02-10 Jakub Jelinek <jakub@redhat.com>
-
- * builtins.c (set_builtin_user_assembler_name): Also handle
- ffs if int is smaller than word.
-
-2010-02-09 Vladimir Makarov <vmakarov@redhat.com>
-
- PR middle-end/42973
- * ira-conflicts.c (get_dup): Remove.
- (process_reg_shuffles): Add new parameter. Use it as an
- additional guard for copy generation.
- (add_insn_allocno_copies): Rewrite.
-
-2010-02-09 Alexander Monakov <amonakov@ispras.ru>
-
- * common.opt (fsched2-use-traces): Preserved for backward
- compatibility.
- * doc/invoke.texi: Remove the documentation about option
- -fsched2-use-traces.
- * sched-rgn.c (rest_of_handle_sched2): Remove usage of
- flag_sched2_use_traces.
- * opts.c (common_handle_option): Add OPT_fsched2_use_traces to
- the backward compatibility flag section.
-
-2010-02-09 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43008
- * tree-ssa-structalias.c (handle_lhs_call): Pass in the fndecl,
- make HEAP variables initialized from global memory if they
- are not known builtin functions.
- (find_func_aliases): Adjust.
-
-2010-02-09 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/43000
- * tree-vrp.c (vrp_int_const_binop): Only handle unsigned
- arithmetic manually.
-
-2010-02-08 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/42931
- * tree-loop-linear.c (try_interchange_loops): Don't call
- double_int_mul if estimated_loop_iterations failed.
-
-2010-02-08 Martin Jambor <mjambor@suse.cz>
-
- PR middle-end/42898
- * tree-sra.c (build_accesses_from_assign): Do not mark in
- should_scalarize_away_bitmap if stmt has volatile ops.
- (sra_modify_assign): Do not process assigns piecemeal if if stmt
- has volatile ops.
-
-2010-02-08 Joern Rennecke <joern.rennecke@embecosm.com>
-
- * doc/tm.texi (TARGET_UNWIND_WORD_MODE): Document.
-
-2010-02-07 Adam Nemet <adambnmet@gmail.com>
-
- * config/mips/mips.md (*<optab>_trunc<mode>_exts): Fix comment
- before the pattern.
-
-2010-02-07 Andrew Pinski <pinskia@gmail.com>
-
- PR middle-end/42946
- * df-core.c (df_finish_pass): Change type of saved_flags to int.
-
-2010-02-07 Sebastian Pop <sebastian.pop@amd.com>
-
- PR middle-end/42988
- * graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND
- to unknown_dependence.
- (graphite_legal_transform_dr): Handle the unknown_dependence.
- (graphite_carried_dependence_level_k): Same.
-
-2010-02-07 Sebastian Pop <sebastian.pop@amd.com>
-
- * ChangeLog.graphite: Remove testsuite/ or gcc/testsuite/.
-
-2010-02-07 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42991
- * expr.c (get_inner_reference): Always initialize *pbitsize.
-
-2010-02-07 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42956
- * gimplify.c (gimple_fold_indirect_ref): Avoid generating
- new ARRAY_REFs on variable size element or minimal index arrays.
- Complete.
- * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
- gimple_fold_indirect_ref.
-
-2010-02-06 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/42957
- * arm.c (arm_override_options): Just return if the user has specified
- an invalid fpu name.
-
-2010-02-03 Jason Merrill <jason@redhat.com>
-
- PR c++/42870
- * config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Call
- i386_pe_maybe_record_exported_symbol.
-
-2010-02-05 Steve Ellcey <sje@cup.hp.com>
-
- PR target/42924
- * config/pa/pa.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
- (pa_delegitimize_address): New function.
-
-2010-02-05 Ozkan Sezer <sezeroz@gmail.com>
-
- * config/i386/msformat-c.c (ms_printf_length_specs): Set the
- scalar_identity_flag for the size_t/ptrdiff_t %Id and %Iu specs.
-
-2010-02-05 Richard Guenther <rguenther@suse.de>
-
- PR lto/42762
- * lto-streamer-in.c (get_resolution): Deal with references
- to undefined functions.
-
-2010-02-05 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-ccp.c (get_symbol_constant_value): Strip all conversions.
- (fold_const_aggregate_ref): Likewise.
- (ccp_fold_stmt): Substitute loads.
- (maybe_fold_reference): Verify types before substituting.
- Unshare properly.
- (fold_gimple_assign): Unshare properly.
- (fold_stmt_1): Insert conversion if necessary before replacing the RHS.
-
-2010-02-05 Nathan Froyd <froydnj@codesourcery.com>
-
- * config/rs6000/rs6000.c (rs6000_override_options): Invert check
- for rs6000_gen_cell_microcode.
-
-2010-02-04 Richard Guenther <rguenther@suse.de>
-
- PR rtl-optimization/42952
- * dse.c (const_or_frame_p): Remove MEM handling.
-
-2010-02-04 Nick Clifton <nickc@redhat.com>
-
- * config/mn10300/mn10300.c (TARGET_ASM_OUTPUT_MI_THUNK): Define.
- (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
- (function_arg): Use NULL_RTX and FIRST_ARGUMENT_REGNUM.
- (mn10300_asm_output_mi_thunk): New function.
- (mn10300_can_output_mu_thunk): New function.
- * config/mn10300/mn10300.h (FIRST_ARGUMENT_REGNUM): Define.
- (FUNCTION_ARG_REGNO_P): Fix comment. Accept d0 and d1.
- (FUNCTION_ARG): Delete incorrect comment.
-
-2010-02-03 Jason Merrill <jason@redhat.com>
-
- PR c++/40138
- * fold-const.c (operand_equal_p): Handle erroneous types.
-
-2010-02-03 Kaushik Phatak <kaushik.phatak@kpitcummins.com>
-
- * config/h8300/h8300.md (can_delay): Fix attibute condition.
-
-2010-02-03 Vladimir Makarov <vmakarov@redhat.com>
-
- PR rtl-optimization/42941
- * sched-deps.c (setup_insn_reg_pressure_info): Use xcalloc instead
- of xmalloc.
-
-2010-02-03 Jason Merrill <jason@redhat.com>
-
- PR c++/35652
- * builtins.c (c_strlen): Use EXPR_LOCATION in diagnostics.
-
-2010-02-03 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42896
- * cselib.h (struct cselib_val_struct): Add uid. Rename value to hash.
- (cselib_reset_table): Renamed from...
- (cselib_reset_table_with_next_value): ... this.
- (cselib_get_next_uid): Renamed from...
- (cselib_get_next_unknown_value): ... this.
- * cselib.c (next_uid): Renamed from...
- (next_unknown_value): ... this.
- (cselib_clear_table): Adjust.
- (cselib_reset_table): Adjust. Renamed from...
- (cselib_reset_table_with_next_value): ... this.
- (cselib_get_next_uid): Adjust. Renamed from...
- (cselib_get_next_unknown_value): ... this.
- (get_value_hash): Use hash.
- (cselib_hash_rtx): Likewise.
- (new_cselib_val): Adjust. Set and dump uid.
- (cselib_lookup_mem): Pass next_uid as hash.
- (cselib_subst_to_values): Likewise.
- (cselib_log_lookup): Dump uid.
- (cselib_lookup): Pass next_uid as hash. Adjust.
- (cselib_process_insn): Adjust.
- (cselib_init): Initialize next_uid.
- (cselib_finish): Adjust.
- (dump_cselib_table): Likewise.
- * dse.c (canon_address): Dump value uid.
- * print-rtl.c (print_rtx): Print value uid.
- * var-tracking.c (VARIABLE_HASH_VAL): Dropped.
- (dvuid): New type.
- (dv_uid): New function, sort of renamed from...
- (dv_htab_hash): ... this, reimplemented in terms of it and...
- (dv_uid2hash): ... this. New.
- (variable_htab_eq): Drop excess assertions.
- (tie_break_pointers): Removed.
- (canon_value_cmp): Compare uids.
- (variable_post_merge_New_vals): Print uids.
- (vt_add_function_parameters): Adjust.
- (vt_initialize): Reset table. Adjust.
-
-2010-02-03 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42944
- * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle calloc.
- (call_may_clobber_ref_p_1): Likewise. Properly handle
- malloc and calloc clobbering errno.
-
-2010-02-03 Steven Bosscher <steven@gcc.gnu.org>
-
- * doc/invoke.texi: Fix name of sched1 dump.
-
- * opts.c (decode_options): Set flag_tree_switch_conversion
- only conditionally on optimize >= 2.
-
- * gcse.c: Assorted comment fixes in pass description.
-
-2010-02-03 Anthony Green <green@moxielogic.com>
-
- * config/moxie/moxie.c (moxie_asm_trampoline_template): Introduce
- nop padding in order to maintain alignment of storage location of
- target function address.
- (moxie_trampoline_init): Store target function address at newly
- aligned location.
- * config/moxie/moxie.h (TRAMPOLINE_ALIGNMENT): Increase alignment
- to 32.
- (TRAMPOLINE_SIZE): Increase size by 2 bytes for alignment padding.
-
-2010-02-03 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42927
- * tree-cfg.c (verify_gimple_assign_binary): Fix shift verification.
-
-2010-02-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.gcc: Reenable check for obsolete targets.
- Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*,
- mips-sgi-irix6.[0-4]*.
-
-2010-02-02 Nick Clifton <nickc@redhat.com>
-
- * config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
- constant size of 4 as being the same as 0.
- * doc/invoke.texi (RX Options): Document that -mmax-constant-size
- can take values in the range 0..4.
-
-2010-02-02 Jack Howarth <howarth@bromo.med.uc.edu>
-
- PR java/41991
- * unwind-dw2-fde-darwin.c: Re-export _Unwind_FindEnclosingFunction()
- as _darwin10_Unwind_FindEnclosingFunction().
- * libgcc-libsystem.ver: New.
-
-2010-02-01 Vladimir Makarov <vmakarov@redhat.com>
-
- PR target/41399
- * sched-deps.c (sched_analyze_insn): Ignore fixed registers for
- implicitly set registers.
-
-2010-02-01 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (FL_FOR_ARCH_7A): is also a superset of ARMv6K.
- (arm_override_options): Allow automatic selection of the thread
- pointer register if thumb2.
- (legitimize_pic_address): Improve code sequences for Thumb2.
- (arm_call_tls_get_addr): Likewise.
- (legitimize_tls_address): Likewise.
- * arm.md (pic_load_addr_arm): Delete. Replace with ...
- (pic_load_addr_32bit): ... this. New named pattern.
- * thumb2.md (pic_load_addr_thumb2): Delete.
- (pic_load_dot_plus_four): Delete.
- (tls_load_dot_plus_four): New named pattern.
-
-2010-02-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR libgomp/29986
- * doc/install.texi (Specific): Add sparc-sun-solaris2.10 entry.
- Document fix for TLS bug.
-
-2010-01-31 Richard Guenther <rguenther@suse.de>
-
- * tree-sra.c (ptr_parm_has_direct_uses): Rewrite to be
- conservatively correct.
-
-2010-01-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/42850
- Revert:
- 2010-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
-
-2010-01-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * doc/install.texi: Update recommended GMP/MPFR/MPC versions.
-
-2010-01-31 Kai Tietz <kai.tietz@onevision.com>
-
- * config.gcc: Adjust order of makefile fragments for mingw targets.
-
-2010-01-31 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42898
- * gimplify.c (gimplify_init_constructor): For volatile LHS
- initialize a temporary.
-
-2010-01-31 Matthias Klose <doko@ubuntu.com>
-
- * configure.ac: Fix __stack_chk_fail check for cross builds configured
- --with-headers
- * configure: Regenerate.
-
-2010-01-29 Eric Botcazou <ebotcazou@adacore.com>
-
- * tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
- the same alias set and their sizes different constantness.
- (aliasing_component_refs_p): Revert 2009-10-24 change.
-
-2010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/sparc/sparc.c (sparc_elf_asm_named_section): Declare decl
- unused.
-
-2010-01-29 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
- Assert we successfully updated the call.
-
-2010-01-29 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/42889
- * df.h (df_set_bb_dirty_nonlr): New prototype.
- * df-core.c (df_set_bb_dirty_nonlr): New function.
- * df-scan.c (df_insn_rescan): Call it instead of
- df_set_bb_dirty for DEBUG_INSNs.
-
-2010-01-29 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/37448
- * ipa-inline.c (cgraph_decide_inlining_incrementally): Avoid
- quadratic behavior in most cases.
-
-2010-01-28 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/42891
- * config/i386/i386.c (ix86_expand_int_movcc): Convert tmp to SImode
- in the call to gen_x86_movsicc_0_m1.
-
-2010-01-28 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42871
- * tree-ssa-pre.c (phi_translate_set): Make sure to retain leaders.
-
-2010-01-28 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate
- into call arguments.
-
-2010-01-28 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42883
- * tree-cfgcleanup.c (remove_forwarder_block): Do not remove
- the forwarder if the destination is an EH landing pad.
-
-2010-01-28 Razya Ladelsky <razya@il.ibm.com>
-
- * tree-parloops.c (transform_to_exit_first_loop): Update the basic
- block list passed to gimple_duplicate_sese_tail.
- (parallelize_loops): Avoid parallelization when the function
- has_nonlocal_label.
- Avoid parallelization when the preheader is IRREDUCIBLE.
- Try to optimize when estimated_loop_iterations_int is unresolved.
- Add the loop's location to the dump file.
- * tree-cfg.c (add_phi_args_after_redirect): Remove.
- (gimple_duplicate_sese_tail): Remove the check for the latch.
- Redirect nexits to the exit block.
- Remove handling of the incoming edges to the latch.
- Redirect the backedge from the copied latch to the exit bb.
-
-2010-01-28 Michael Matz <matz@suse.de>
-
- PR target/42881
- * config/i386/i386.c (ix86_expand_vector_init_duplicate):
- Wrap force_reg into a sequence, emit it before user.
-
-2010-01-28 Stephen Thomas <stephen.thomas@arm.com>
-
- * config/arm/arm.md (bswapsi2): Add support for bswapsi2.
- (arm_rev): New.
- (arm_legacy_rev): Likewise.
- (thumb_legacy_rev): Likewise.
-
-2010-01-27 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (mem_loc_descriptor): Remove special casing of
- CONSTANT_POOL_ADDRESS_P SYMBOL_REFs. If for MEM recursive call
- on MEM's address failed, try avoid_constant_pool_reference and
- recurse if it returned something different.
- (loc_descriptor): If for MEM mem_loc_descriptor failed on the
- address, try avoid_constant_pool_reference and recurse if it
- returned something different.
- (dw_loc_list_1): If for MEM mem_loc_descriptor failed on the
- address and avoid_constant_pool_reference returned something
- different, don't set have_address.
-
-2010-01-27 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42861
- * var-tracking.c (val_store): Add modified argument, obey it.
- Adjust callers.
- (count_uses): Move down logging of main.
- (compute_bb_dataflow): Use val_store for MO_VAL_USEs that
- don't need resolution.
- (emit_notes_in_bb): Likewise.
-
-2010-01-27 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42878
- * tree-inline.c (remap_decl): Delay remapping of SSA name
- default definitions until we need them.
-
-2010-01-27 Jakub Jelinek <jakub@redhat.com>
-
- * config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
- (rs6000_delegitimize_address): New function.
-
- * config/s390/s390.c (s390_delegitimize_address): Call
- delegitimize_mem_from_attrs.
-
- PR middle-end/42874
- * tree-inline.c (cannot_copy_type_1): Removed.
- (copy_forbidden): Don't forbid copying of functions containing
- records/unions with variable length fields.
-
-2010-01-27 Christian Bruel <christian.bruel@st.com>
-
- Revert:
- PR target/42841
- * config/sh/sh.c (find_barrier): Increase length for non delayed
- conditional branches.
-
-2010-01-27 Matthias Klose <doko@ubuntu.com>
-
- * configure.ac (gnu-unique-object): Fix ldd version check.
- * configure: Regenerate.
-
-2010-01-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
- HAVE_GNU_AS value.
- * config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
- Test for HAVE_GNU_AS value.
-
-2010-01-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
- * config/mips/iris.h (INT8_TYPE, INT16_TYPE, INT32_TYPE,
- INT64_TYPE): Define.
- (UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
- (INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
- INT_LEAST64_TYPE): Define.
- (UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
- UINT_LEAST64_TYPE): Define.
- (INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE)
- INT_FAST64_TYPE): Define.
- (UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
- UINT_FAST64_TYPE): Define.
- (INTMAX_TYPE, UINTMAX_TYPE): Define.
- (INTPTR_TYPE, UINTPTR_TYPE): Define.
- (SIG_ATOMIC_TYPE): Define.
-
-2010-01-26 Richard Guenther <rguenther@suse.de>
-
- * df-scan.c (df_scan_set_bb_info): Remove assert.
- (df_insn_rescan_debug_internal): Merge asserts.
- (df_install_ref): Likewise.
- (df_mark_reg): Use bitmap_set_range.
- (df_hard_reg_used_p): Remove assert.
- (df_hard_reg_used_count): Likewise.
-
-2010-01-26 Richard Guenther <rguenther@suse.de>
-
- PR rtl-optimization/42685
- * web.c (web_main): Ignore DEBUG_INSNs.
-
-2010-01-26 Joern Rennecke <amylaar@spamcop.net>
-
- * doc/tm.texi (TARGET_HANDLE_C_OPTION): Explain arguments.
-
- (TARGET_RESOLVE_OVERLOADED_BUILTIN): Add loc parameter.
- Fix types of fndecl and arglist parameters.
-
-2010-01-26 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42806
- * tree-eh.c (unsplit_eh): Skip debug insns.
-
-2010-01-26 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42250
- * ipa-type-escape.c (type_escape_execute): Do not analyze clones.
-
-2010-01-26 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/42866
- * omp-low.c (expand_omp_sections): Only use single_pred if
- l2_bb is single_pred_p.
-
-2010-01-25 Christian Bruel <christian.bruel@st.com>
-
- PR target/42841
- * config/sh/sh.c (find_barrier): Increase length for non delayed
- conditional branches.
- (sh_insn_length_adjustment): Use JUMP_TABLE_DATA_P.
-
-2010-01-24 David S. Miller <davem@davemloft.net>
-
- * config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Only
- define if not using GAS.
- * config/sparc/sparc.c (sparc_elf_asm_named_section):
- Likewise. Delete SECTION_MERGE code, which is only applicable
- when using GAS.
-
-2010-01-24 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/42748
- * config/arm/arm.c (arm_mangle_type): Do not warn about changes to
- mangling of va_list in system headers.
-
-2010-01-23 Toon Moene <toon@moene.org>
-
- * tree-predcom.c (combine_chains): Return NULL, not false.
-
-2010-01-23 Joern Rennecke <amylaar@spamcop.net>
-
- * tree-loop-distribution.c (distribute_loop): Fix declaration and
- initialization of variable res to agree with return type.
-
-2010-01-22 Steve Ellcey <sje@cup.hp.com>
-
- * Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
- * tree-sra.c: Add include of expr.h.
-
-2010-01-22 Jakub Jelinek <jakub@redhat.com>
-
- * tree-into-ssa.c (maybe_register_def): If stmt ends the bb,
- insert the debug stmt on the single non-EH edge from the stmt.
-
-2010-01-22 Richard Henderson <rth@redhat.com>
-
- PR tree-opt/42833
- * tree-sra.c (sra_modify_assign): Delay re-gimplification of
- the RHS until after generate_subtree_copies has insertted its
- code before the current statement.
-
-2010-01-22 Joern Rennecke <amylaar@spamcop.net>
-
- * doc/tm.texi (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL): Fix return type.
-
- * gcc-plugin.h (plugin_init): Use "C" likage for c++.
-
-2010-01-21 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/42585
- * tree-sra.c (struct access): New field grp_total_scalarization.
- (dump_access): Dump the new field.
- (should_scalarize_away_bitmap): New variable.
- (cannot_scalarize_away_bitmap): Likewise.
- (sra_initialize): Allocate new bitmaps.
- (sra_deinitialize): Free new bitmaps.
- (create_access_1): New function.
- (create_access): Parts moved to create_access_1.
- (type_consists_of_records_p): New function.
- (completely_scalarize_record): Likewise.
- (build_access_from_expr): Set bit in cannot_scalarize_away_bitmap.
- (build_accesses_from_assign): Set bits in should_scalarize_away_bitmap.
- (sort_and_splice_var_accesses): Hint groups with a total_scalarization
- access.
- (analyze_all_variable_accesses): Completely scalarize small eligible
- records.
-
-2010-01-21 Martin Jambor <mjambor@suse.cz>
-
- * tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.
-
-2010-01-21 Andrew Haley <aph@redhat.com>
-
- * gcc.c (process_command): Move lang_specific_driver before
- setting cc_libexec_prefix.
-
-2010-01-21 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/19988
- * fold-const.c (negate_expr_p): Pretend only negative
- real constants are easily negatable.
-
-2010-01-20 Janis Johnson <janis187@us.ibm.com>
- Jason Merrill <jason@redhat.com>
-
- * tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
- (TYPE_TRANSPARENT_AGGR): this, for union and record.
- * calls.c (initialize argument_information): Handle it.
- * c-common.c (handle_transparent_union_attribute): Use new name.
- * c-decl.c (finish_struct): Ditto.
- * c-typeck.c (type_lists_compatible_p): Ditto.
- (convert_for_assignment): Use new name and also handle record.
- * function.c (aggregate_value_p): Handle it.
- (pass_by_reference): Ditto.
- (assign_parm_data_types): Ditto.
- * print-tree.c (print_node): Ditto.
- * lto-streamer-in.c (unpack_ts_type_value_fields): Ditto.
- * lto-streamer-out.c (pack_ts_type_value_fields): Ditto.
- * tree.c (first_field): New fn.
-
-2010-01-21 Dave Korn <dave.korn.cygwin@gmail.com>
-
- PR target/42818
- * config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Always apply wrappers,
- even when linking statically, for now.
-
-2010-01-20 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42715
- * var-tracking.c (use_type): Choose MO_VAL_SET for REGs set
- without a cselib val.
- (count_uses): Accept MO_VAL_SET with no val on stores.
- (add_stores): Likewise.
-
-2010-01-20 Jakub Jelinek <jakub@redhat.com>
-
- * var-tracking.c (check_value_val): Add a compile time assertion.
- (dv_is_decl_p): Simplify.
- (dv_as_decl, dv_as_value, dv_from_decl, dv_from_value): Only use
- gcc_assert if ENABLE_CHECKING.
-
-2010-01-20 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42782
- * var-tracking.c: Include tree-flow.h.
- (mem_dies_at_call): New.
- (dataflow_set_preserve_mem_locs): Use it.
- (dataflow_set_remove_mem_locs): Likewise.
- (dump_var): Renamed from dump_variable. Adjust all callers.
- (dump_var_slot): Renamed from dump_variable_slot. Likewise.
- * Makefile.in (var-tracking.o): Adjust deps.
-
-2010-01-20 Joern Rennecke <amylaar@spamcop.net>
-
- * doc/tm.texi (TARGET_SCHED_SET_SCHED_FLAGS): Fix argument list.
-
-2010-01-20 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42717
- * tree-ssa-dce.c (get_live_post_dom): Remove.
- (forward_edge_to_pdom): Take an arbitrary edge to copy
- degenerate PHI args from.
- (remove_dead_stmt): Use the first post-dominator even if it
- does not contain live statements as redirection destination.
-
-2010-01-20 Richard Guenther <rguenther@suse.de>
-
- * tree-inline.c (estimate_num_insns): Handle EH builtins.
-
-2010-01-20 Jakub Jelinek <jakub@redhat.com>
-
- * sel-sched.c (create_speculation_check): Remove set but not used
- variable twin.
- (try_transformation_cache): Remove set but not used variable ds.
- (calculate_privileged_insns): Remove set but not used variables
- cur_insn and min_spec_insn.
- (find_best_expr): Remove set but not used variable avail_n.
- * tree-predcom.c (base_names_in_chain_on): Remove set but not used
- variable e.
- * cgraphunit.c (assemble_thunk): Remove set but not used variable
- false_label.
- * haifa-sched.c (remove_notes): Remove set but not used variable prev.
- * graphite-clast-to-gimple.c (gloog): Remove set but not used variable
- new_scop_exit_edge.
-
-2010-01-20 Felyza Wishbringer <fwishbringer@gmail.com>
-
- PR bootstrap/42786
- * config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
- cpu types. Add support for *-sse3 cpu types.
- (x86_64-*-*): Ditto.
-
-2010-01-20 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/42803
- * varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
- argument, call initializer_constant_valid_p_1 instead of
- initializer_constant_valid_p, pass CACHE to it, return NULL
- immediately if first call returns NULL.
- (initializer_constant_valid_p_1): New function.
- (initializer_constant_valid_p): Use it.
-
-2010-01-20 Thomas Quinot <quinot@adacore.com>
-
- * tree.def (PLACEHOLDER_EXPR): Fix comment.
-
-2010-01-20 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead
- of MOD, handle MOD using DW_OP_{over,over,div,mul,minus}.
- (loc_list_from_tree): Don't handle unsigned division. Handle
- signed modulo using DW_OP_{over,over,div,mul,minus}.
- * unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
- modulo instead of signed.
-
-2010-01-20 DJ Delorie <dj@redhat.com>
-
- * config/h8300/h8300.c (F): Add "in_epilogue" flag.
- (Fpa): Pass it
- (h8300_emit_stack_adjustment): Propogate it.
- (push): Pass it.
- (h8300_expand_prologue): Likewise.
- (h8300_expand_epilogue): Likewise.
-
-2010-01-19 Michael Matz <matz@suse.de>
-
- PR tree-optimization/41783
- * tree-data-ref.c (toplevel): Include flags.h.
- (dump_data_dependence_relation): Also dump the inputs if the
- result will be unknown.
- (split_constant_offset_1): Look through some conversions.
- * tree-predcom.c (determine_roots_comp): Restart a new chain if
- the offset from last element is too large.
- (ref_at_iteration): Deal also with MISALIGNED_INDIRECT_REF.
- (reassociate_to_the_same_stmt): Handle vector registers.
- * tree-vect-data-refs.c (vect_equal_offsets): Handle unary operations
- (e.g. conversions).
- * tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Add
- wide_prolog_niters argument, emit widening instructions.
- (vect_do_peeling_for_alignment): Adjust caller, use widened
- variant of the iteration cound.
- * Makefile.in (tree-data-ref.o): Add $(FLAGS_H).
-
-2010-01-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-
- PR target/38697
- * config/arm/neon-testgen.m (emit_automatics): New parameter
- features. Adjust for Fixed_return_reg feature.
- (test_intrinsic): Call emit_automatics with new feature.
- * config/arm/neon.ml: Update copyright years.
- (features): New Fixed_return_reg feature.
- (ops): Update feature for Vget_low.
-
-2010-01-19 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/42719
- * tree-outof-ssa.c (trivially_conflicts_p): Don't consider debug
- stmt uses.
-
- PR debug/42728
- * fwprop.c (all_uses_available_at): Return false if def_set dest
- is a REG that is used in def_insn.
-
-2010-01-19 Joern Rennecke <amylaar@spamcop.net>
-
- * doc/tm.texi (TARGET_FIXED_CONDITION_CODE_REGS): Add argument names.
-
- (TARGET_CC_MODES_COMPATIBLE): Put return value in braces.
- Add argument names.
-
- (TARGET_SCHED_INIT_SCHED_CONTEXT): Clarify language.
-
- * target.h (struct gcc_target) <secondary_reload>: Change type
- of last argument to secondary_reload_info *.
-
-2010-01-18 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/42774
- * config/alpha/predicates.md (aligned_memory_operand): Return 0 for
- memory references with unaligned offsets. Remove CQImode handling.
- (unaligned_memory_operand): Return 1 for memory references with
- unaligned offsets. Remove CQImode handling.
-
-2010-01-18 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/39954
- * cfgexpand.c (expand_call_stmt): TER pointer arguments in
- builtin calls.
-
-2010-01-18 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42781
- * tree-ssa-structalias.c (find_what_var_points_to): Skip
- restrict processing only if the original variable was artificial.
-
-2010-01-18 Joern Rennecke <amylaar@spamcop.net>
-
- * doc/tm.texi (TARGET_ASM_FUNCTION_EPILOGUE): Update text on where to
- find number of popped argument bytes.
-
- (TARGET_INVALID_WITHIN_DOLOOP): Put return value in braces.
- Fix the text that describes the return value for invalid insns.
-
- (TARGET_SCHED_NEEDS_BLOCK_P): Fix return type. Fix argument list.
-
- (TARGET_SCHED_IS_COSTLY_DEPENDENCE): Fix argument types.
- Clarify what 'cost of the -dependence' is. Fix quoting.
-
- * toplev.c (default_get_pch_validity): Rename argument to "sz".
- * doc/tm.texi (TARGET_GET_PCH_VALIDITY): Likewise.
-
-2010-01-17 Jakub Jelinek <jakub@redhat.com>
-
- * dwarf2out.c (mem_loc_descriptor): Don't ICE on
- {S,U}S_{PLUS,MINUS,NEG,ABS,ASHIFT}.
-
-2010-01-17 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42248
- * function.c (split_complex_args): Take a VEC to modify.
- (assign_parms_augmented_arg_list): Build a VEC instead of
- a chain of PARM_DECLs.
- (assign_parms_unsplit_complex): Take a VEC of arguments.
- Do not fixup unmodified parms.
- (assign_parms): Deal with the VEC.
- (gimplify_parameters): Likewise.
-
-2010-01-17 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-uncprop.c (uncprop_into_successor_phis): Fix PHI
- node existence check.
- * tree-vect-loop.c (vect_analyze_loop_form): Likewise.
- * tree-cfgcleanup.c (merge_phi_nodes): Likewise.
- * tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
- * tree-cfg.c (gimple_execute_on_growing_pred): Likewise.
- (gimple_execute_on_growing_pred): Likewise.
-
-2010-01-17 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42773
- * tree-ssa-pre.c (phi_translate_set): Fix check for PHI node existence.
- (compute_antic_aux): Likewise.
- (compute_partial_antic_aux): Likewise.
-
-2010-01-17 Jie Zhang <jie.zhang@analog.com>
-
- PR debug/42767
- * dwarf2out.c (mem_loc_descriptor): Handle SS_TRUNCATE
- and US_TRUNCATE.
-
-2010-01-17 Joern Rennecke <amylaar@spamcop.net>
-
- * doc/tm.texi (TARGET_INIT_LIBFUNCS): Put @findex entries in order of
- appearance.
-
- (TARGET_LEGITIMATE_ADDRESS_P): Add return type.
- Fix markup for strict argument.
-
- (TARGET_SCHED_REORDER2): Fix argument types.
-
- (TARGET_SCHED_DFA_PRE_CYCLE_INSN): Fix return type.
- (TARGET_SCHED_DFA_POST_CYCLE_INSN): Likewise.
-
- (TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE): Fix name.
- (TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Likewise.
-
- (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD):
- Add argument name.
-
- (TARGET_SCHED_ALLOC_SCHED_CONTEXT): Remove duplicate documentation.
- (TARGET_SCHED_INIT_SCHED_CONTEXT): Likewise.
- (TARGET_SCHED_SET_SCHED_CONTEXT): Likewise.
- (TARGET_SCHED_CLEAR_SCHED_CONTEXT): Likewise.
- (TARGET_SCHED_FREE_SCHED_CONTEXT): Likewise.
-
- (TARGET_SCHED_SET_SCHED_CONTEXT): Fix typo.
-
- (TARGET_SCHED_GEN_SPEC_CHECK): Fix name.
-
- (TARGET_ASM_RELOC_RW_MASK): Add return type.
- (TARGET_MANGLE_DECL_ASSEMBLER_NAME): Fix return type.
-
- (TARGET_STRIP_NAME_ENCODING): Fix markup of return type and parameter.
-
- (TARGET_ASM_FILE_START): Put @findex before paragraph start.
- Use prototype.
-
- (TARGET_ASM_NAMED_SECTION): Fix argument list.
-
- (TARGET_HAVE_NAMED_SECTIONS): Use @deftypevr.
- (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Likewise.
-
- (TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Use @deftypevr.
-
- (TARGET_ASM_ASSEMBLE_VISIBILITY): Fix argument types.
-
- (TARGET_ASM_MARK_DECL_PRESERVED): Fix argument and markup
- referring to it. Fix language.
-
- (TARGET_HAVE_CTORS_DTORS): Use @deftypevr.
-
- (TARGET_ASM_FINAL_POSTSCAN_INSN): Adjust name of first argument.
-
- (TARGET_ASM_EMIT_UNWIND_LABEL): Add argument types.
-
- (TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): Add type to argument.
-
- (TARGET_UNWIND_EMIT): Remove space between 'FILE *' and
- '@var{stream}. Remove stray 'and'.
-
- (TARGET_ARM_EABI_UNWINDER): Use @deftypevr.
-
- (TARGET_ASM_OUTPUT_DWARF_DTPREL): Adjust name of first argument.
-
- (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Add missing article.
-
- (TARGET_OPTION_VALID_ATTRIBUTE_P): Fix name, it was
- misspelled as TARGET_VALID_OPTION_ATTRIBUTE_P.
-
- (TARGET_GET_PCH_VALIDITY): Put 'void *' in braces.
- Fix description of return value.
- Rename argument "sz" to "len."
-
- (TARGET_CXX_GUARD_MASK_BIT): Add missing article.
- Clarify meaning of 'true' return value.
-
- (TARGET_SHIFT_TRUNCATION_MASK): Fix return type.
-
- (TARGET_MODE_REP_EXTENDED): Fix two inconsisent uses of
- rep_mode versus mode_rep.
-
- (TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Document.
-
- (TARGET_BUILTIN_DECL): Fix name.
-
- (TARGET_COMMUTATIVE_P): Fix type of first argument.
-
- (TARGET_SET_CURRENT_FUNCTION): Mention possibility of cfun being NULL.
-
- (TARGET_BRANCH_TARGET_REGISTER_CLASS): Fix return type.
-
- (TARGET_USE_LOCAL_THUNK_ALIAS_P): Document as macro instead of hook.
-
- (TARGET_RELAXED_ORDERING): Use @deftypevr.
-
- (TARGET_GET_DRAP_RTX): Note that this is a hook.
- Clarify language.
-
- (TARGET_BUILTIN_RECIPROCAL): Fix argument types.
- Rename argument tm_fn to md_fn.
-
- (TARGET_OPTION_PRINT): Fix argument list.
-
-2010-01-16 Harsha Jagasia <harsha.jagasia@amd.com>
-
- PR target/42664
- * config/i386/i386.c (ix86_fixup_binary_operands):
- Revert FMA4 fixup of operands.
-
-2010-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR other/42525
- * Makefile.in (write_entries_to_file, install-plugin):
- Use \012 instead of \n with tr.
-
-2010-01-16 Richard Sandiford <r.sandiford@uk.ibm.com>
-
- * configure.ac (HAVE_AS_REF): New C macro.
- * configure: Regenerate.
- * config.in: Likewise.
- * collect2.c (main): Only postpone SCAN_DWEH to the second pass
- if HAVE_AS_REF.
- * config/rs6000/aix.h (ASM_OUTPUT_DWARF_TABLE_REF): Only define
- if HAVE_AS_REF.
-
-2010-01-16 Joern Rennecke <amylaar@spamcop.net>
-
- * doc/tm.texi (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Fix argument types.
-
- (TARGET_SUPPORT_VECTOR_MISALIGNMENT): Fix argument types.
-
- (TARGET_USE_ANCHORS_FOR_SYMBOL_P): Fix argument types.
-
- (TARGET_SCHED_ALLOC_SCHED_CONTEXT): Put 'void *' in braces.
-
- (TARGET_IN_SMALL_DATA_P): Fix argument type.
-
- (TARGET_BINDS_LOCAL_P): Fix argument type.
-
- (TARGET_ASM_FILE_END): Use prototype.
-
- (TARGET_ASM_RECORD_GCC_SWITCHES): Don't put 'int' in braces.
-
- (TARGET_DWARF_CALLING_CONVENTION): Fix argument type.
-
- (TARGET_COMP_TYPE_ATTRIBUTES): Fix argument types.
-
- (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Fix argument type.
-
- (TARGET_EMUTLS_VAR_ALIGN_FIXED): Don't put 'bool' in braces.
- (TARGET_EMUTLS_DEBUG_FORM_TLS_ADDRESS): Likewise.
-
- (TARGET_PCH_VALID_P): Put 'const char *' in braces.
- (TARGET_CHECK_PCH_TARGET_FLAGS): Likewise.
-
- (TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Don't put 'bool' in braces.
- (TARGET_ADDR_SPACE_SUBSET_P): Likewise.
- (TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Don't put 'rtx' in braces.
- (TARGET_ADDR_SPACE_CONVERT): Likewise.
-
- (TARGET_CASE_VALUES_THRESHOLD): Put 'unsigned int' in braces.
-
- (TARGET_MACHINE_DEPENDENT_REORG: Use prototype.
-
- (TARGET_INIT_BUILTINS): Use prototype.
-
- (TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN):
- Put 'const char *' in braces. Fix parameter types.
- (TARGET_INVALID_CONVERSION): Fix parameter types.
- (TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): Likewise.
- (TARGET_INVALID_PARAMETER_TYPE, TARGET_INVALID_RETURN_TYPE): Likewise.
-
- (TARGET_PROMOTED_TYPE): Remove braces around 'tree'.
- Fix argument type.
-
- (TARGET_CONVERT_TO_TYPE): Remove braces around 'tree'.
-
- (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Remove braces around 'bool'.
-
-2010-01-15 Joern Rennecke <amylaar@spamcop.net>
-
- * doc/tm.texi (TARGET_HELP): Fix return type.
-
- (TARGET_PROMOTE_FUNCTION_MODE): Put 'enum machine_mode'
- in braces. Fix argument types.
-
- (TARGET_LIBGCC_CMP_RETURN_MODE): Use prototype.
-
- (TARGET_LIBGCC_SHIFT_COUNT_MODE): Use prototype.
-
- (TARGET_MS_BITFIELD_LAYOUT_P): Fix argument type.
-
- (TARGET_DECIMAL_FLOAT_SUPPORTED_P): Don't put 'bool' in braces.
- (TARGET_FIXED_POINT_SUPPORTED_P): Likewise.
-
- (TARGET_MANGLE_TYPE): Fix argument types.
-
- (TARGET_IRA_COVER_CLASSES): Use prototype.
-
- (TARGET_BUILTIN_SETJMP_FRAME_VALUE): Fix return type. Use prototype.
-
- (TARGET_CAN_ELIMINATE): Use identifiers for argument names.
-
- (TARGET_PROMOTE_PROTOTYPES): Fix argument type.
-
- (TARGET_MUST_PASS_IN_STACK): Fix argument type.
-
- (TARGET_CALLEE_COPIES): Fix argument types.
-
- (TARGET_SPLIT_COMPLEX_ARG): Fix argument type.
-
- (TARGET_GIMPLIFY_VA_ARG_EXPR): Fix argument types.
-
- (TARGET_FUNCTION_VALUE): Fix argument types.
-
- (TARGET_RETURN_IN_MSB): Fix argument type.
-
- (TARGET_RETURN_IN_MEMORY): Fix argument types.
-
- (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Fix argument types.
-
- (TARGET_EXTRA_LIVE_ON_ENTRY): Fix argument type.
-
- (TARGET_STRICT_ARGUMENT_NAMING): Make literal in text
- agree with return type.
-
- (TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Add Prototype.
-
-2010-01-15 Jing Yu <jingyu@google.com>
-
- PR rtl-optimization/42691
- * combine.c (try_combine): Set changed_i3_dest to 1 when I2 and I3 set
- a pseudo to a constant and are merged, and adjust comments.
-
-2010-01-15 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/i386/sse.md (avx_vperm2f128<mode>3): Fix typo.
-
-2010-01-15 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42739
- * tree-cfgcleanup.c (remove_forwarder_block): Move destination
- labels of computed or non-local gotos to the destination.
- * tree-cfg.c (gimple_verify_flow_info): Verify that a EH
- landing pad label is the first label.
-
-2010-01-15 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
-
-2010-01-14 Michael Meissner <meissner@linux.vnet.ibm.com>
-
- PR target/42747
- * config/rs6000/rs6000.md (sqrtdf2): Split into expander and insn
- to allow generation of the xssqrtdp instruction on power7.
- (sqrtdf2_fpr): Ditto.
-
-2010-01-14 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/42674
- * c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
- functions with noreturn attribute.
-
- PR c++/42608
- * varasm.c (declare_weak): Add weak attribute to decl if it
- doesn't have one already.
- (assemble_external): Only add decls to weak_decls if they also
- have weak attribute.
-
-2010-01-14 Alexandre Oliva <aoliva@redhat.com>
-
- * var-tracking.c (var_reg_delete): Don't delete the association
- between REGs and values or one-part variables if the register
- isn't clobbered.
-
-2010-01-14 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/42657
- * tree-inline.c (copy_debug_stmt): Don't reset debug stmt just
- because its first operand is a non-localized variable.
-
-2010-01-14 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/42706
- * tree-sra.c (encountered_recursive_call): New variable.
- (encountered_unchangable_recursive_call): Likewise.
- (sra_initialize): Initialize both new variables.
- (callsite_has_enough_arguments_p): New function.
- (scan_function): Call decl and flags check only for IPA-SRA, check
- whether there is a recursive call and whether it has enough arguments.
- (all_callers_have_enough_arguments_p): New function.
- (convert_callers): Look for recursive calls only when
- encountered_recursive_call is set.
- (ipa_early_sra): Bail out either if
- !all_callers_have_enough_arguments_p or
- encountered_unchangable_recursive_call.
-
-2010-01-14 Alexander Monakov <amonakov@ispras.ru>
-
- * sel-sched.c: Add 2010 to copyright years.
- * sel-sched-ir.c: Likewise.
- * sel-sched-ir.h: Likewise.
-
-2010-01-14 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/42714
- * tree-sra.c (sra_ipa_modify_assign): Handle incompatible-type
- constructors specially.
-
-2010-01-14 Andi Kleen <ak@linux.intel.com>
-
- * config/i386/drivers-i386.c (detect_caches_intel):
- Add l2sizekb parameter and fill in.
- (host_detect_local_cpu): Add l2sizekb, fill in.
- Add Atom small cache heuristic.
-
-2010-01-14 Andi Kleen <ak@linux.intel.com>
-
- * config/i386/drivers-i386.c (detect_caches_cpuid4):
- Add level3 parameter and fill in.
- (detect_caches_intel): Handle level3 cache.
-
-2010-01-14 Andi Kleen <ak@linux.intel.com>
-
- * config/i386/drivers-i386.c (host_detect_local_cpu):
- Fix core duo detection.
-
-2010-01-14 Andi Kleen <ak@linux.intel.com>
-
- * config/i386/drivers-i386.c (host_detect_local_cpu):
- Fix Atom detection.
-
-2010-01-14 Alexander Monakov <amonakov@ispras.ru>
-
- * config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
- (rs6000_variable_issue_1): this. Use...
- (rs6000_variable_issue): here. Reimplement. Print debug info.
-
-2010-01-14 Alexander Monakov <amonakov@ispras.ru>
-
- * sel-sched-ir.c (sel_restore_other_notes): Rename to
- sel_restore_notes. Update all callers. Call reemit_notes
- for all insns.
-
-2010-01-14 Andrey Belevantsev <abel@ispras.ru>
-
- PR rtl-optimization/42246
- * sel-sched-ir.h (get_all_loop_exits): Include exits from inner
- loops.
-
-2010-01-14 Andrey Belevantsev <abel@ispras.ru>
-
- * sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
- all successors is the same as number of successors in current region.
-
-2010-01-14 Alexander Monakov <amonakov@ispras.ru>
-
- * sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
- to rename is not separable. Otherwise check that its LHS is not NULL.
-
-2010-01-14 Alexander Monakov <amonakov@ispras.ru>
-
- * sel-sched.c (choose_best_reg_1): Loop over all regs for mode.
-
-2010-01-14 Alexander Monakov <amonakov@ispras.ru>
-
- * sel-sched.c (mark_unavailable_hard_regs): Do not try to search
- available registers when failed to discover LHS register class.
- Fix indentation. Update comment.
-
-2010-01-14 Andrey Belevantsev <abel@ispras.ru>
- Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/42389
- * sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
- to can_issue_more.
- (advance_state_on_fence): Likewise.
- (sel_target_adjust_priority): Print debug output only when
- sched_verbose >= 4, not 2.
- (get_expr_cost): Do not issue all unique insns on the next cycle.
- (fill_insns): Initialize can_issue_more from the value saved
- with the fence.
- * sel-sched-ir.c (flist_add): New parameter issue_more.
- Init FENCE_ISSUE_MORE with it.
- (merge_fences): Likewise.
- (init_fences): Update call to flist_add.
- (add_to_fences, add_clean_fence_to_fences)
- (add_dirty_fence_to_fences): Likewise.
- (move_fence_to_fences): Update call to merge_fences.
- (invoke_reorder_hooks): Do not reset can_issue_more on insns from
- sched groups.
- * sel-sched-ir.h (struct _fence): New field issue_more.
- (FENCE_ISSUE_MORE): New accessor macro.
-
-2010-01-14 Andrey Belevantsev <abel@ispras.ru>
-
- PR rtl-optimization/42388
- * sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
- that have no predecessors nor successors. Do not call move_bb_info
- for empty blocks outside of current region.
-
-2010-01-14 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/42294
- * sel-sched-ir.h (struct _sel_insn_data): Update comment.
- * sel-sched.c (move_exprs_to_boundary): Transitively add all
- originators' originators.
-
-2010-01-14 Alexander Monakov <amonakov@ispras.ru>
-
- PR rtl-optimization/39453
- PR rtl-optimization/42246
- * sel-sched-ir.c (considered_for_pipelining_p): Do not test
- for pipelining_p.
- (sel_add_loop_preheaders): Add preheader to last_added_blocks.
-
-2010-01-14 Andrey Belevantsev <abel@ispras.ru>
- Alexander Monakov <amonakov@ispras.ru>
-
- PR middle-end/42245
- * sel-sched-ir.c (sel_recompute_toporder): New. Use it...
- (maybe_tidy_empty_bb): ... here. Make static. Add new
- argument. Update all callers.
- (tidy_control_flow): ... and here. Recompute topological order
- of basic blocks in region if necessary.
- (sel_redirect_edge_and_branch): Change return type. Return true
- if topological order might have been invalidated.
- (purge_empty_blocks): Export and move from...
- * sel-sched.c (purge_empty_blocks): ... here.
- * sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
- (maybe_tidy_empty_bb): Delete prototype.
- (purge_empty_blocks): Declare.
-
-2010-01-14 Andrey Belevantsev <abel@ispras.ru>
-
- PR rtl-optimization/42249
- * sel-sched.c (try_replace_dest_reg): When chosen register
- and original register is the same, do not bail out early, but
- still check all original insns for validity of replacing destination
- register. Set EXPR_TARGET_AVAILABLE to 1 before leaving function
- in this case.
-
-2010-01-14 Jakub Jelinek <jakub@redhat.com>
-
- PR c/42721
- Port from no-undefined-overflow branch:
- 2009-03-09 Richard Guenther <rguenther@suse.de>
-
- * fold-const.c (add_double_with_sign): Fix unsigned overflow detection.
-
-2010-01-14 Richard Guenther <rguenther@suse.de>
-
- PR lto/42665
- * gimple.c (iterative_hash_gimple_type): Avoid hashing error_mark_node.
-
-2010-01-14 Ira Rosen <irar@il.ibm.com>
-
- PR tree-optimization/42709
- * tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
- as scalar type in creation of constant vector operand.
-
-2010-01-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- PR testsuite/42414
- * Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
- (check-parallel-%): Match `testsuite' directory component only
- at the end.
-
-2010-01-14 Shujing Zhao <pearly.zhao@oracle.com>
-
- PR translation/39521
- * gcc.c (do_spec_1): Wrapped the error and notice messages of specs
- strings with _().
-
-2010-01-13 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42730
- * tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
- offset zero.
-
-2010-01-13 Steve Ellcey <sje@cup.hp.com>
-
- PR target/pr42542
- * config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
- for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
- them signed.
-
-2010-01-13 Bernd Schmidt <bernd.schmidt@analog.com>
-
- * config/bfin/libgcc-bfin.ver: Regenerate based on current
- libgcc-std.ver. Add entries for ___smulsi3_highpart and
- ___umulsi3_highpart.
-
- * config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
- rather than schedule_insns if the pass is enabled.
-
-2010-01-13 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/42704
- * tree-sra.c (sra_modify_assign): Do not delete assignments to
- SSA_NAMEs.
-
-2010-01-13 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/42703
- * tree-sra.c (analyze_access_subtree): Check that we can build a
- reference to the original data within the aggregate.
-
-2010-01-13 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42705
- * tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after labels.
-
-2010-01-13 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42716
- * fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
-
-2010-01-13 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/41371
- * var-tracking.c (values_to_unmark): New variable.
- (find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
- values_to_unmark vector. Moved body to...
- (find_loc_in_1pdv_1): ... this. Don't clear VALUE_RECURSED_INTO,
- instead queue it into values_to_unmark vector.
- (vt_find_locations): Free values_to_unmark vector.
-
-2010-01-13 Wolfgang Gellerich <gellerich@de.ibm.com>
-
- * config/s390/s390.c (override_options): Set
- default of max-pending-list-length to 256
-
-2010-01-13 Richard Guenther <rguenther@suse.de>
-
- PR lto/42678
- * tree-pass.h (PROP_gimple_lcx): New.
- * cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
- * passes.c (init_optimization_passes): Move pass_lower_complex_O0
- before the final cleanup_eh.
- (dump_properties): Dump PROP_gimple_lcx.
- * tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
- (tree_lower_complex_O0): Remove.
- (gate_no_optimization): Run if PROP_gimple_lcx is not set.
- (pass_lower_complex_O0): Provide PROP_gimple_lcx. Run
- tree_lower_complex, schedule TODO_update_ssa.
- * lto-streamer-out.c (output_function): Stream the functions
- properties.
- * lto-streamer-in.c (input_function): Likewise.
- (lto_read_body): Do not override them here.
-
-2010-01-12 Joseph Myers <joseph@codesourcery.com>
-
- PR c/42708
- * c-typeck.c (build_c_cast): Fold value cast to union type before
- wrapping it in a CONSTRUCTOR.
-
-2010-01-12 Jakub Jelinek <jakub@redhat.com>
-
- PR rtl-optimization/42699
- * cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
- involved.
-
-2010-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- * config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
- SUBTARGET_WARN_UNUSED_SPEC): Move ...
- config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
- SUBTARGET_WARN_UNUSED_SPEC): ... here
- * config/mips/iris5.h (LIBGCC_SPEC): Define.
-
-2010-01-12 Julian Brown <julian@codesourcery.com>
-
- * config/arm/neon-schedgen.ml (Utils): Don't try to
- open missing module.
- (find_with_result): New.
-
-2010-01-12 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/42662
- * simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
- sharing when canonicalizing ({lt,ge}u (plus a b) b).
-
- PR tree-optimization/42645
- * tree-inline.c (processing_debug_stmt): Move earlier. Make static.
- (remap_ssa_name): If processing_debug_stmt and name wasn't found in
- decl_map, set processing_debug_stmt to -1 and return name without
- any remapping.
-
-2010-01-11 Dave Korn <dave.korn.cygwin@gmail.com>
-
- * doc/install.texi (Specific#x-x-cygwin): Document minimum required
- binutils version, and reword target configuration description.
-
-2010-01-11 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>
-
- * config/avr/avr.h (LINKER_NAME): Remove.
-
-2010-01-11 Janis Johnson <janis187@us.ibm.com>
-
- PR target/42416
- * config/rs6000/rs6000.c (rs6000_override_options): On targets
- that support VSX, warn for -mno-altivec if vsx is not disabled,
- and disable vsx.
-
-2010-01-11 Joseph Myers <joseph@codesourcery.com>
- Shujing Zhao <pearly.zhao@oracle.com>
-
- PR translation/42469
- * common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
- fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
- character between option name and help text.
- * c.opt (imultilib): Likewise.
-
-2010-01-10 Rafael Avila de Espindola <espindola@google.com>
-
- * lto-streamer-out.c (output_unreferenced_globals): Output static
- variables.
-
-2010-01-10 Steven Bosscher <steven@gcc.gnu.org>
-
- PR rtl-optimization/42621
- * bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
- optimizing for size.
- (duplicate_computed_gotos): Remove now-redundant check.
-
-2010-01-10 Steve Ellcey <sje@cup.hp.com>
-
- PR target/37454
- * configure.ac: Save and restore LDFLAGS and LIBS
- * configure: Regenerate.
-
-2010-01-10 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42667
- * builtins.c (fold_builtin_strlen): Add type argument and
- convert the resulting length to it.
- (fold_builtin_1): Adjust.
-
-2010-01-09 Jakub Jelinek <jakub@redhat.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
- sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
- 1 insn.
- (num_insns_constant_wide): Adjust for that change.
-
-2010-01-09 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42631
- * web.c (union_defs): Add used argument, to combine uses of
- uninitialized regs.
- (entry_register): Adjust type and tests of used argument.
- (web_main): Widen used for new use. Pass it to union_defs.
- * df.h (union_defs): Adjust prototype.
-
-2010-01-09 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42630
- * loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
- uses in new incoming argument. Free body.
- (reset_debug_uses_in_loop): New.
- (analyze_insn_to_expand_var): Call the latter if the former found
- anything. Fix whitespace. Reject invalid dest overlaps before
- going through all insns in the loop.
-
-2010-01-09 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42629
- * haifa-sched.c (dying_use_p): Debug insns don't count.
-
-2010-01-09 Alexandre Oliva <aoliva@redhat.com>
-
- PR middle-end/42363
- * gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
- * tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
- (verify_gimple_call): Reject LHS in noreturn calls.
-
-2010-01-09 Alexandre Oliva <aoliva@redhat.com>
-
- PR debug/42604
- PR debug/42395
- * tree-vect-loop-manip.c (adjust_info): New type.
- (adjust_vec): New pointer to vector.
- (adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
- (adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
- (slpeel_update_phis_for_duplicate_loop): Use them.
- (slpeel_update_phi_nodes_for_guard1): Likewise.
- (slpeel_update_phi_nodes_for_guard2): Likewise.
- (slpeel_tree_peel_loop_to_edge): Likewise.
- (vect_update_ivs_after_vectorizer): Likewise.
-
-2010-01-09 Alexandre Oliva <aoliva@redhat.com>
-
- * vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
- (DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
-
-2010-01-09 Alexandre Oliva <aoliva@redhat.com>
-
- * config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
- bogus uninitialized warning.
-
-2010-01-09 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42512
- * tree-scalar-evolution.c (interpret_loop_phi): Make sure
- the evolution is compatible with the initial condition.
-
-2010-01-09 Jakub Jelinek <jakub@redhat.com>
-
- * gcc.c (process_command): Update copyright notice dates.
- * gcov.c (print_version): Likewise.
- * gcov-dump.c (print_version): Likewise.
- * mips-tfile.c (main): Likewise.
- * mips-tdump.c (main): Likewise.
-
-2010-01-08 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>
-
- PR target/41885
- * config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
- (rotlhi3): Delete.
- (rotlhi3_8): Delete.
- (rotlsi3): Delete.
- (rotlsi3_8): Delete.
- (rotlsi3_16): Delete.
- (rotlsi3_24): Delete.
- (rotl<mode>3): New.
- (*rotw<mode>3): New.
- (*rotb<mode>3): New.
- * config/avr/avr.c (avr_rotate_bytes): New function.
- * config/avr/avr-proto.h (avr_rotate_bytes): New function.
-
-2010-01-08 Steve Ellcey <sje@cup.hp.com>
-
- PR target/37454
- * configure.ac: Modify -rdynamic check.
- * configure: Regenerate.
-
-2010-01-08 DJ Delorie <dj@redhat.com>
-
- * config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
- register popping order.
-
-2010-01-08 Richard Guenther <rguenther@suse.de>
-
- PR lto/42528
- * c.opt (fsigned-char): Also let LTO handle this option.
- (funsigned-char): Likewise.
-
-2010-01-07 Richard Guenther <rguenther@suse.de>
-
- * gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
- (gimple_op): Likewise.
- (gimple_op_ptr): Likewise.
- (gimple_assign_set_lhs): Remove gcc_assert.
- (gimple_assign_set_rhs1): Likewise.
- (gimple_assign_set_rhs2): Likewise.
- (gimple_call_set_lhs): Likewise.
- (gimple_call_set_fn): Likewise.
- (gimple_call_set_fndecl): Likewise.
- (gimple_call_fndecl): Likewise.
- (gimple_call_return_type): Likewise.
- (gimple_call_set_chain): Likewise.
- (gimple_call_num_args): Likewise.
- (gimple_call_set_arg): Likewise.
- (gimple_cond_set_code): Likewise.
- (gimple_cond_set_lhs): Likewise.
- (gimple_cond_set_rhs): Likewise.
- (gimple_cond_set_true_label): Likewise.
- (gimple_cond_set_false_label): Likewise.
- (gimple_label_set_label): Likewise.
- (gimple_goto_set_dest): Likewise.
- (gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
- (gimple_debug_bind_get_value): Likewise.
- (gimple_debug_bind_get_value_ptr): Likewise.
- (gimple_debug_bind_set_var): Likewise.
- (gimple_debug_bind_set_value): Likewise.
- (gimple_debug_bind_reset_value): Likewise.
- (gimple_debug_bind_has_value_p): Likewise.
- (gimple_return_retval_ptr): Remove gcc_assert.
- (gimple_return_retval): Likewise.
- (gimple_return_set_retval): Likewise.
- * tree-flow.h (struct gimple_df): Remove nonlocal_all member.
- (safe_referenced_var_iterator): Remove.
- (FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
- * tree-flow-inline.h (gimple_nonlocal_all): Remove.
- (fill_referenced_var_vec): Remove.
- (first_readonly_imm_use): Remove redundant gcc_assert.
- (phi_arg_index_from_use): Combine gcc_asserts.
- (move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
- (first_imm_use_stmt): Remove redundant gcc_assert.
- * tree-cfg.c (verify_gimple_call): Verify function and chain
- operands. Verify arguments.
- (verify_types_in_gimple_stmt): Verify condition code and labels.
-
-2010-01-07 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42641
- * sese.c (rename_map_elt_info): Use the SSA name version, do
- not hash pointers.
-
-2010-01-07 Jakub Jelinek <jakub@redhat.com>
-
- PR tree-optimization/42625
- * cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
- TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body aliases.
-
-2010-01-07 Duncan Sands <baldrick@free.fr>
-
- * Makefile.in (PLUGIN_HEADERS): Add version.h.
-
-2010-01-07 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/42511
- * ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
- note itself is not function_invariant_p.
-
-2009-01-07 Steven Bosscher <steven@gcc.gnu.org>
-
- * gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
- Do not add the DF_NOTE problem.
- * store-motion.c (execute_rtl_store_motion): Likewise.
-
-2010-01-07 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/42157
- * tree-sra.c (compare_access_positions): Stabilize sort if both
- accesses have integer types, return zero immediately if they are the
- same.
-
-2010-01-06 Richard Henderson <rth@redhat.com>
-
- PR middle-end/41883
- * haifa-sched.c (add_to_note_list): Merge into ...
- (concat_note_lists): ... here, and ...
- (unlink_other_notes, rm_other_notes): Merge into...
- (remove_notes): ... here. Create REG_SAVE_NOTEs for
- NOTE_INSN_EPILOGUE_BEG.
-
-2010-01-06 Richard Guenther <rguenther@suse.de>
-
- * ipa-inline.c (cgraph_decide_inlining_incrementally): Do
- not inline regular functions into always-inline functions.
-
-2010-01-06 Nick Clifton <nickc@redhat.com>
-
- * config/rx/rx.h (enum rx_cpu_type): Add RX200.
- (CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
- used together.
- (OVERRIDE_OPTIONS): Delete.
- (OPTIMIZATION_OPTIONS): Define.
- (ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
- * config/rx/rx.c (rx_handle_option): Issue an error message if
- -mcpu=rx200 and -fpu are used together.
- (rx_set_optimization_options): New function. Issue an error
- message if an optimization attribute attempts to reset the FPU/
- math optimization pairing.
- * config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
- * config/rx/rx.opt: Set the default to 32-bit doubles.
- * config/rx/t-rx: Add multilibs for -nofpu option.
- * doc/invoke.texi: Update documentation of RX options.
-
-2010-01-06 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-pre.c (name_to_id): New global.
- (alloc_expression_id): Simplify SSA name handling.
- (lookup_expression_id): Likewise.
- (init_pre): Zero name_to_id.
- (fini_pre): Free it.
-
-2010-01-06 Uros Bizjak <ubizjak@gmail.com>
-
- * ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
-
-2010-01-05 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/42542
- * config/i386/sse.md (smaxv2di3): New.
- (umaxv2di3): Likewise.
- (sminv2di3): Likewise.
- (uminv2di3): Likewise.
-
-2010-01-05 Eric Botcazou <ebotcazou@adacore.com>
-
- PR target/42564
- * config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
- * config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
- (legitimize_tls_address): Likewise.
- (sparc_tls_referenced_p): Likewise.
- * config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
- and adjust calls to legitimize_pic_address.
- (legitimate_constant_p) Use sparc_tls_referenced_p.
- (legitimate_pic_operand_p): Likewise.
- (sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
- (sparc_tls_symbol_ref_1): Delete.
- (sparc_tls_referenced_p): Make static, recognize specific patterns.
- (legitimize_tls_address): Make static, handle CONST patterns.
- (legitimize_pic_address): Make static, remove unused parameter and
- adjust recursive calls.
- (sparc_legitimize_address): Make static, use sparc_tls_referenced_p
- and adjust call to legitimize_pic_address.
- (sparc_output_mi_thunk): Likewise.
-
-2010-01-05 Paolo Bonzini <bonzini@gnu.rg>
- H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/42542
- * config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
- for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
- operands to make them signed.
-
- Revert:
- 2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/42542
- * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
- GTU to GT for V4SI and V2DI.
-
- * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
- (umin<mode>3): Removed.
- (uminv8hi3): New.
- (uminv4si3): Likewise.
-
-2010-01-05 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/42462
- * ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
- current_function_decl to helper functions and macros.
-
-2010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR bootstrap/41771
- * flags.h: Don't include real.h.
- (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
- HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
- * real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
- HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
- * dominance.c: Update copyright.
- * gimple.c (walk_gimple_op): Remove inline.
- * tree-ssa-reassoc.c: Include real.h.
- * Makefile.in (FLAGS_H): Remove $(REAL_H).
- (tree-ssa-reassoc.o): Depend on $(REAL_H).
-
-2010-01-05 Nick Clifton <nickc@redhat.com>
-
- * config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
- register to push into the stack frame when the accumulator has to
- be saved during interrupts.
-
-2010-01-05 Eric Fisher <joefoxreal@gmail.com>
-
- * doc/invoke.texi: Remove the documentation about option
- -Wunreachable-code.
- * common.opt (Wunreachable-code): Preserved for backward
- compatibility.
- * tree-cfg.c: Remove the implementation of -Wunreachable-code.
- * opts.c (common_handle_option): Add OPT_Wunreachable_code to
- the backward compatibility flag section.
-
-2010-01-05 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
-
-2010-01-05 Jakub Jelinek <jakub@redhat.com>
-
- PR other/42611
- * cfgexpand.c (expand_one_var): Diagnose too large variables.
-
- PR tree-optimization/42508
- * tree-sra.c (convert_callers): Check for recursive call
- by comparing cgraph nodes instead of decls.
- (modify_function): Call ipa_modify_formal_parameters also
- on all same_body aliases.
-
- * cgraphunit.c (cgraph_materialize_all_clones): Compare
- cgraph nodes when checking for same_body aliases.
-
-2010-01-05 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
- allocation and lookup.
- (get_or_alloc_expr_for_constant): Likewise.
- (phi_translate): Sink allocation.
-
-2010-01-04 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
- a new entry only if needed.
- * tree-ssa-dom.c (lookup_avail_expr): Likewise.
- * tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
- hashtable lookup.
- * tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
- the result array.
- (phi_translate): Handle CONSTANTs early.
-
-2010-01-04 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/42398
- * tree-sra.c (struct access): Removed flag grp_different_types.
- (dump_access): Do not dump the removed flag.
- (sort_and_splice_var_accesses): Do not set the removed flag.
- (sra_modify_expr): Check for type compatibility directly.
-
-2010-01-04 Martin Jambor <mjambor@suse.cz>
-
- PR tree-optimization/42366
- * ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
- edges with variable number of parameters.
- * ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
- flag instead of asserting it.
- (ipa_read_node_info): Read uses_analysis_done flag.
-
-2010-01-04 Richard Guenther <rguenther@suse.de>
-
- * tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
- iterative_hash_* as intended.
- (vn_reference_compute_hash): Likewise. Simplify hashing
- SSA names.
- (vn_reference_lookup_2): Likewise.
- (vn_nary_op_compute_hash): Likewise.
- (vn_phi_compute_hash): Likewise.
- (expressions_equal_p): Remove strange code.
- * tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
- (pre_expr_hash): Likewise. Simplify hashing SSA names.
- (bitmap_insert_into_set_1): Take value-id as parameter.
- (add_to_value): Pass it.
- (bitmap_insert_into_set): Likewise.
- (bitmap_value_insert_into_set): Likewise. Remove redundant check.
-
-2010-01-04 Jakub Jelinek <jakub@redhat.com>
-
- PR driver/42442
- * gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
- (do_self_spec): For switches with SWITCH_IGNORE set set also
- SWITCH_IGNORE_PERMANENTLY.
- (check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
- of SWITCH_IGNORE.
-
-2010-01-04 Rafael Avila de Espindola <espindola@google.com>
-
- * lto-streamer-out.c (output_unreferenced_globals): Output the full
- tree of an unreferenced global var.
-
-2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/42542
- * config/i386/i386.c (ix86_expand_int_vcond): Don't convert
- GTU to GT for V4SI and V2DI.
-
- * config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
- (umin<mode>3): Removed.
- (uminv8hi3): New.
- (uminv4si3): Likewise.
-
-2010-01-04 H.J. Lu <hongjiu.lu@intel.com>
-
- PR lto/42581
- * collect2.c (main): Turn on trace in collect2 if -v is passed
- to gcc with LTO.
-
-2010-01-03 Jerry Quinn <jlquinn@optonline.net>
-
- * doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR. Update
- description of expression operand.
-
-2010-01-03 Andrew Jenner <andrew@codesourcery.com>
-
- * configure.ac: Add install-html to target_list for Make-hooks.
- * configure: Regenerate.
- * fortran/Make-lang.in (F95_HTMLFILES): New.
- (fortran.html): Use it.
- (fortran.install-html): New.
- * Makefile.in (install-html): Add lang.install-html.
- * java/Make-lang.in (JAVA_HTMLFILES): New.
- (java.html): Use it.
- (java.install-html): New.
- * objc/Make-lang.in (objc.install-html): New.
- * objcp/Make-lang.in (obj-c++.install-html): New.
- * cp/Make-lang.in (c++.install-html): New.
- * ada/gcc-interface/Make-lang.in (ada.install-html): New.
- * lto/Make-lang.in (lto.install-html): New.
-
-2010-01-03 H.J. Lu <hongjiu.lu@intel.com>
-
- PR lto/42520
- * gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
-
-2009-01-03 Steven Bosscher <steven@gcc.gnu.org>
-
- PR rtl-optimization/41862
- * store-motion.c (store_killed_in_insn, compute_store_table,
- remove_reachable_equiv_notes, replace_store_insn,
- build_store_vectors): Ignore all DEBUG_INSNs.
-
-2010-01-03 H.J. Lu <hongjiu.lu@intel.com>
-
- PR lto/41564
- * common.opt: Add dumpdir.
-
- * gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
- isn't specified.
- (option_map): Add --dumpdir.
-
- * gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
-
- * lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
-
- * opts.c (decode_options): Try dump_dir_name first if
- dump_base_name isn't an absolute path.
- (common_handle_option): Handle OPT_dumpdir.
-
- * toplev.c (dump_dir_name): New.
- (print_switch_values): Also ignore -dumpdir.
-
- * toplev.h (dump_dir_name): New.
-
-2010-01-03 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42589
- * tree-ssa-math-opts.c (execute_optimize_bswap): Allow
- double-word expansion of bswap32.
-
-2010-01-03 Steven Bosscher <steven@gcc.gnu.org>
-
- * postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
- with BLOCK_FOR_INSN.
- * auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
- * ifcvt.c (noce_get_alt_condition, noce_try_abs,
- noce_process_if_block): Likewise.
- * gcse.c (compute_local_properties, insert_expr_in_table,
- insert_set_in_table, canon_list_insert, find_avail_set,
- pre_insert_copy_insn): Likewise.
-
- * basic-block.h (BLOCK_NUM): Move from here...
- * sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
-
-2010-01-03 Richard Guenther <rguenther@suse.de>
-
- PR tree-optimization/42438
- * tree-ssa-pre.c (struct bb_bitmap_sets): Add
- contains_may_not_return_call flag.
- (BB_MAY_NOTRETURN): New.
- (valid_in_sets): Trapping nary operations are not valid
- in blocks that may not return.
- (insert_into_preds_of_block): Remove check for trapping expressions.
- (compute_avail): Compute also BB_MAY_NOTRETURN.
-
-2010-01-03 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/invoke.texi: Add 2010 to copyright years.
-
-2010-01-03 Eric Botcazou <ebotcazou@adacore.com>
-
- * config/sparc/sparc.c: Fix formatting nits.
-
-2010-01-02 Gerald Pfeifer <gerald@pfeifer.com>
- Alexander Monakov <amonakov@ispras.ru>
-
- * doc/invoke.texi (Optimize Options): Reword introduction a bit.
-
-2010-01-02 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42577
- * tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
- (simplify_switch_using_ranges): Mark to be removed edges
- as non-executable.
-
-2010-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
-
- * collect2.c (scan_libraries): Add missing argument in call to
- scan_prog_file.
-
-2010-01-02 Uros Bizjak <ubizjak@gmail.com>
-
- PR target/42448
- * config/alpha/predicates.md (aligned_memory_operand): Return false
- for CQImode.
- (unaligned_memory_operand): Return true for CQImode.
- * config/alpha/alpha.c (get_aligned_mem): Assert that location
- doesn not cross aligned SImode word boundary.
-
-2010-01-02 Anatoly Sokolov <aesok@post.ru>
-
- * config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
- Remove.
- * config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
- avr_change_section, avr_reg_class_from_letter) : Remove declaration.
-
-2010-01-02 Richard Guenther <rguenther@suse.de>
-
- PR lto/41597
- * toplev.c (compile_file): Emit LTO marker properly. Change
- it to __gnu_lto_v1.
- * collect2.c (scan_prog_file): Adjust for changed LTO marker.
-
-2010-01-01 Richard Guenther <rguenther@suse.de>
-
- PR debug/42455
- * tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
-
-2010-01-01 Richard Guenther <rguenther@suse.de>
-
- PR c/42570
- * c-decl.c (grokdeclarator): For zero-size arrays force
- structural equality checks as layout_type does.
-
-2010-01-01 H.J. Lu <hongjiu.lu@intel.com>
-
- * builtins.c: Update copyright to 2010.
-
-2010-01-01 H.J. Lu <hongjiu.lu@intel.com>
-
- PR lto/42531
- * lto-streamer-out.c (produce_asm): Revert the last change.
- (copy_function): Likewise.
-
- * lto-streamer.c (lto_get_section_name): Skip any leading
- asterisk in name.
-
-2010-01-01 Richard Guenther <rguenther@suse.de>
-
- PR middle-end/42559
- * builtins.c (get_object_alignment): Do not use DECL_ALIGN
- for LABEL_DECLs.
-
-
-Copyright (C) 2010 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.