OSDN Git Service

2008-12-09 Tobias Grosser <grosser@fim.uni-passau.de>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9dd40f7..3e7fc4a 100644 (file)
@@ -1,3 +1,640 @@
+2008-12-09 Tobias Grosser  <grosser@fim.uni-passau.de>
+
+       PR middle-end/38084
+       Fix testsuite/gfortran.dg/graphite/id-3.f90.
+       * graphite.c (scopdet_basic_block_info): Fix bug that found some
+       regions more than once.
+       * testsuite/gfortran.dg/graphite/id-3.f90: New.
+       * gcc/testsuite/gcc.dg/graphite/pr38084.c: New.
+
+2008-12-09  Ben Elliston  <bje@au.ibm.com>
+
+       * config/dfp-bit.c (DFP_TO_INT): Remove unnecessary cast.
+
+2008-12-09  Ben Elliston  <bje@au.ibm.com>
+
+       * config/rs6000/darwin-ldouble.c (fmsub): Remove unused variable, v.
+
+2008-12-08  Steve Ellcey  <sje@cup.hp.com>
+
+       * config/ia64/ia64.md (UNSPECV_GOTO_RECEIVER): New constant.
+       (nonlocal_goto_receiver): New instruction.
+
+2008-12-08  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/35443
+       * c-pretty-print.c (pp_c_expression): Handle BIND_EXPR.
+
+       PR c/35442
+       * c-pretty-print.c (pp_c_cast_expression, pp_c_expression): Handle
+       VIEW_CONVERT_EXPR the same as CASE_CONVERT.
+
+2008-12-08  Richard Henderson  <rth@redhat.com>
+
+       PR 38240
+       * tree.h (TYPE_MODE): Invoke vector_type_mode when needed.
+       (SET_TYPE_MODE): New.
+       * c-decl.c (parser_xref_tag): Use it.
+       (finish_enum): Likewise.
+       * tree.c (build_pointer_type_for_mode): Likewise.
+       (build_reference_type_for_mode, build_index_type): Likewise.
+       (build_range_type, make_vector_type): Likewise.
+       (build_common_tree_nodes_2): Likewise.
+       * stor-layout.c (compute_record_mode): Likewise.
+       (finalize_type_size, layout_type, make_fract_type): Likewise.
+       (make_accum_type, initialize_sizetypes): Likewise.
+       (vector_type_mode): New.
+       * function.c (allocate_struct_function): Call
+       invoke_set_current_function_hook before querying anything else.
+
+       * config/i386/i386.c (ix86_valid_target_attribute_inner_p): Add avx.
+
+2008-12-08  Luis Machado  <luisgpm@br.ibm.com>
+
+       * alias.c (find_base_term): Synch LO_SUM handling with what
+       find_base_value does.
+
+2008-12-08  Andrew Haley  <aph@redhat.com>
+           Kamaraju Kusumanchi <raju.mailinglists@gmail.com>
+
+       * gimple.h (gimple_build_try): Fix declaration.
+
+       * builtins.c (fold_builtin_sqrt): Don't use a conditional operator.
+       * fixed-value.c (do_fixed_add): Likewise.
+       * tree-ssa-loop-ivopts.c (iv_ca_cost): Likewise.
+
+2008-12-08  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/36802
+       * omp-low.c (use_pointer_for_field): Only call maybe_lookup_decl
+       on parallel and task contexts.
+
+2008-12-07  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gimple.c (recalculate_side_effects) <tcc_constant>: New case.
+
+2008-12-07  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/38405
+       * tree-vrp.c (simplify_truth_ops_using_ranges): Make sure to
+       not sign-extend truth values.
+
+2008-12-07  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree-sra.c (scalarize_use): Create another temporary with the proper
+       type for signed types in the use_all && !is_output bitfield case.
+
+2008-12-06  Steven Bosscher  <steven@gcc.gnu.org>
+
+       PR rtl-optimization/36365
+       * df-core.c (df_worklist_dataflow_overeager): Remove.
+       (df_worklist_dataflow): Don't call it, use double-queue only.
+       * params.def (PARAM_DF_DOUBLE_QUQUQ_THRESHOLD_FACTOR): Remove.
+
+2008-12-06  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/38428
+       * tree-ssa-operands.c (get_expr_operands) <case BIT_FIELD_REF>: Set
+       gimple_set_has_volatile_ops if the BIT_FIELD_REF is volatile.
+
+2008-12-07  Ben Elliston  <bje@au.ibm.com>
+
+       * gthr-single.h (__gthread_once): Adjust prototype to match all
+       other gthreads models.
+
+2008-12-06  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/i386/i386.c (override_options): Use CPU_AMDFAM10
+       instead of PROCESSOR_AMDFAM10 for barcelona's schedule.
+
+       PR middle-end/38422
+       * fold-const.c (fold_unary) <CASE_CONVERT>: Don't convert MULT_EXPR
+       operands to mult_type if it isn't narrower than op0's type.
+
+2008-12-06  Jan Hubicka  <jh@suse.cz>
+           Jakub Jelinek <jakub@redhat.com>
+
+       PR tree-optimization/38074
+       * cgraphbuild.c (compute_call_stmt_bb_frequency): Fix handling of 0
+       entry frequency.
+       * predict.c (combine_predictions_for_bb): Ignore predictor predicting
+       in both dirrection for first match heuristics.
+       (tree_bb_level_predictions): Disable noreturn heuristic when there
+       is no returning path.
+
+2008-12-05  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       PR rtl-optimization/38272
+       * reload1.c (choose_reload_regs): Keep reload_spill_index correct
+       in all cases.
+
+2008-12-05  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/35336
+       * c-pretty-print.c (pp_c_postfix_expression): Handle BIT_FIELD_REF.
+       (pp_c_expression): Likewise.
+
+2008-12-05  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       PR c/38416
+       * c-parser.c (struct c_token): Make pragma_kind 8 bits.
+
+2008-12-05  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/37248
+       * fold-const.c (make_bit_field_ref): Change bitpos and bitsize
+       arguments to HOST_WIDE_INT.  If type has different signedness
+       than unsignedp or different precision from bitsize, create
+       the right type for BIT_FIELD_REF and cast to type.
+       (fold_truthop): Change first_bit and end_bit to HOST_WIDE_INT.
+
+       Revert:
+       2008-03-05  Richard Guenther  <rguenther@suse.de>
+       PR c++/35336
+       * fold-const.c (fold_truthop): Remove code generating
+       BIT_FIELD_REFs of structure bases.
+       (fold_binary): Likewise.
+       (make_bit_field_ref): Remove.
+       (optimize_bit_field_compare): Remove.
+       (all_ones_mask_p): Remove.
+
+2008-12-05  Jakub Jelinek  <jakub@redhat.com>
+
+       * tree-sra.c (sra_explode_bitfield_assignment): Always
+       call unsigned_type_for, if the precision is higher than
+       needed, call build_nonstandard_integer_type.
+
+       PR debug/38367
+       * function.c (assign_parm_find_stack_rtl): If promoted_mode
+       is wider than DECL_MODE, adjust MEM_OFFSET (stack_parm) for
+       big endian.
+
+       PR middle-end/38338
+       * builtins.c (expand_builtin_apply_args): Put before parm_birth_insn
+       only if internal_arg_pointer is a non-virtual pseudo.
+
+2008-12-05  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/rs6000/rs6000.md (move_from_CR_gt_bit): Enable for
+       TARGET_HARD_FLOAT && !TARGET_FPRS, not TARGET_E500.
+       * config/rs6000/spe.md (e500_cr_ior_compare): Likewise.
+
+2008-12-05  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/37716
+       * gimplify.c (gimplify_expr): Allow COND_EXPR if
+       gimplify_ctxp->allow_rhs_cond_expr.
+
+2008-12-05  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/alpha/alpha.c (alpha_fold_vector_minmax): Create
+       VIEW_CONVERT_EXPR to convert output to long_integer_type_node.
+
+       (alpha_emit_conditional_branch): Do not generate direct branch
+       for UNORDERED comparisons.
+
+2008-12-05  Andreas Schwab  <schwab@suse.de>
+
+       * config/rs6000/linux-unwind.h (frob_update_context): Check for
+       NULL lr.
+
+2008-12-05  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/38408
+       * fold-const.c (fold_checksum_tree): Change buf type to union
+       tree_node.
+
+2008-12-05  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR bootstrap/38262
+       * Makefile.in (LIBS): Remove GMPLIBS, CLOOGLIBS and PPLLIBS.
+       (BACKENDLIBS): New.
+       (cc1-dummy, cc1): Add BACKENDLIBS, remove GMPLIBS.
+
+2008-12-05  Ben Elliston  <bje@au.ibm.com>
+
+       * c-parser.c (c_parser_enum_specifier): Initialise ident_loc and
+       comma_loc.
+       (c_parser_initelt): Initialise des_loc and ellipsis_loc.
+
+2008-12-04  Eric Botcazou  <ebotcazou@adacore.com>
+           Gary Funck  <gary@intrepid.com>
+
+       * cse.c (lookup_as_function): Delete mode frobbing code.
+       (equiv_constant): Re-implement it there for SUBREGs.
+
+2008-12-04  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/36509
+       * Makefile.in (tree-ssa-alias-warnings.o): Remove.
+       (tree-ssa-structalias.o): Remove errors.h dependency.
+       (tree-ssa-reassoc.o): Likewise.
+       * tree-ssa-reassoc.c: Do not include errors.h.
+       * tree-ssa-alias-warnings.c: Remove.
+       * tree-ssa-alias.c (compute_may_aliases): Remove call to
+       strict_aliasing_warning_backend.
+       * tree-ssa-structalias.c (emit_pointer_definition): New function.
+       (emit_alias_warning): Likewise.
+       (set_uids_in_ptset): Warn for clear cases of type-punning.
+       * tree-inline.c (remap_gimple_op_r): Preserve TREE_NO_WARNING
+       on INDIRECT_REFs.
+
+2008-12-04  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * cse.c (equiv_constant): Fix pasto.
+
+2008-12-04  Nick Clifton  <nickc@redhat.com>
+
+       * config/stormy16/stormy16.md: Remove extraneous spaces and quotes.
+       * config/stormy16/stormy16.c: Remove extraneous spaces and fix up
+       formatting of quotes.
+
+2008-12-04  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/38371
+       * fold-const.c (fold_checksum_tree): Allow modification of
+       TYPE_NEXT_VARIANT.
+
+2008-12-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/38360
+       * tree-ssa-ccp.c (ccp_fold_builtin): Bail out if the builtin doesn't
+       have the right number of arguments.
+
+2008-12-03  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/36326
+       * gimplify.c (is_gimple_mem_or_call_rhs): Remove work-around for
+       non-BLKmode types.
+
+2008-12-03  Tomas Bily  <tbily@suse.cz>
+
+       PR middle-end/38250
+       * tree-loop-distribution.c (build_size_arg): New function.
+       (generate_memset_zero): Checks if dr_analyze_innermost succeed.
+       Reorganized generating of stmts.
+       * testsuite/gcc.dg/tree-ssa/pr38250.c: New file.
+       * tree-data-ref.c (dr_analyze_innermost): Returns bool.
+       Indicate if analysis succeed.
+       * tree-data-ref.h (dr_analyze_innermost): Returns bool.
+       * tree-predcom.c (valid_initializer_p, find_looparound_phi):
+       Uses new definition of dr_analyze_innermost.
+
+2008-12-03  Ben Elliston  <bje@au.ibm.com>
+
+       * tree-ssa-pre.c (do_regular_insertion): Initialise edoubleprime.
+
+2008-12-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/37716
+       * tree-sra.c (sra_build_assignment): For scalar bitfield SRC construct
+       all the needed operations as trees and gimplify_assign it to dst.
+
+       PR target/37610
+       * configure.ac (gcc_cv_readelf): Look for readelf.
+       (gcc_cv_as_cfi_advance_working): Check for working
+       cfi advances with code alignment factor > 1.
+       (HAVE_GAS_CFI_DIRECTIVE): Don't define if cfi advances
+       don't work properly.
+       * configure: Regenerated.
+
+2008-12-03  Eric Botcazou  <ebotcazou@adacore.com>
+           Jakub Jelinek  <jakub@redhat.com>
+           Andrew Pinski  <andrew_pinski@playstation.sony.com>
+
+       PR rtl-optimization/38281
+       * combine.c (distribute_notes): When invoking SET_INSN_DELETED on i2,
+       set it to NULL_RTX afterwards.
+
+       * emit-rtl.c (set_insn_deleted): Fix formatting.
+
+2008-12-02  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/mips/mips.c (mips_expand_builtin): Fix the mode of the
+       error return value.
+       * config/mips/mips.md (IMOVE32): New mode iterator.
+       (movsi): Generalize with IMOVE32.
+       (*movsi_internal): Likewise.
+       (*mov<mode>_mips16): Likewise.
+       (*lwxs): Likewise.
+
+2008-12-02  Nathan Sidwell  <nathan@codesourcery.com>
+           Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       * config/m68k/lb1sf68.asm (PICCALL, PICJUMP): Use GOT instead of
+       PC-relative addressing when compiling for uclinux PIC.
+       (__cmpdf_internal, __cmpsf_internal): Hide.
+       (__cmpdf, __cmpsf): Use PIC call sequence.
+
+2008-12-02  Andreas Tobler  <a.tobler@schweiz.org>
+           Jack Howarth <howarth@bromo.med.uc.edu>
+
+       * config/i386/t-darwin64: Add m32 multilib support.
+
+2008-12-02  Jack Howarth  <howarth@bromo.med.uc.edu>
+
+       * testsuite/gcc.dg/darwin-comm.c: Expand to darwin10 and later.
+
+2008-12-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/38343
+       * builtins.c (fold_builtin_memory_op): Convert len to sizetype
+       before using it in POINTER_PLUS_EXPR.
+
+2008-12-02  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/38359
+       * fold-const.c (fold_binary): Fold -1 >> x to -1 only for
+       non-negative x.
+
+2008-12-02  Martin Jambor  <mjambor@suse.cz>
+
+       PR middle-end/37861
+       * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Do not check
+       for INDIRECT_REFs.
+       (forward_propagate_addr_into_variable_array_index): Check that the
+       offset is not computed from a MULT_EXPR, use is_gimple_assign rather
+       than the gimple code directly.
+
+2008-12-02  Ben Elliston  <bje@au.ibm.com>
+
+       * config/spu/float_disf.c (__floatdisf): Prototype.
+       * config/spu/float_unsdisf.c (__float_undisf): Likewise.
+       * config/spu/float_unssidf.c (__float_unssidf): Constify cast.
+       * config/spu/float_unsdidf.c (__float_unsdidf): Likewise.
+
+2008-12-02  DJ Delorie  <dj@redhat.com>
+
+       * config/stormy16/stormy16.h (INCOMING_FRAME_SP_OFFSET): Negate.
+       (DWARF_CIE_DATA_ALIGNMENT): Define.
+
+       * config/stormy16/stormy16.c (xstormy16_compute_stack_layout):
+       Invert add/sub for INCOMING_FRAME_SP_OFFSET.
+       (xstormy16_expand_prologue): Likewise.
+       (xstormy16_expand_builtin_va_start): Likewise.
+       (xstormy16_gimplify_va_arg_expr): Likewise.
+
+2008-12-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/38343
+       * builtins.c (expand_builtin_mempcpy_args): Handle COMPOUND_EXPRs
+       potentially returned from folding memcpy.
+       (expand_builtin_stpcpy_args): Similarly for folding strcpy.
+       (fold_builtin_2): Handle BUILT_IN_STPCPY if result is ignored.
+
+2008-12-02  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR target/38054
+       * config/i386/winnt.c (i386_pe_encode_section_info): Condition stdcall
+       decoration of function RTL names here on Ada language.
+
+2008-12-01  Vladimir Makarov  <vmakarov@redhat.com>
+
+       PR rtl-optimization/38280
+       * ira-build.c (loop_is_inside_p, regno_allocno_order_compare_func,
+       ira_rebuild_regno_allocno_list): New functions.
+       (regno_allocnos): New static variable.
+       (remove_unnecessary_allocnos): Allocate/deallocate regno_allocnos.
+       Call ira_rebuild_regno_allocno_list.
+
+2008-12-01  David Daney  <ddaney@caviumnetworks.com>
+           Adam Nemet  <anemet@caviumnetworks.com>
+
+       * config/mips/linux64.h (DRIVER_SELF_SPECS): Add
+       LINUX_DRIVER_SELF_SPECS.
+
+2008-12-01  Vladimir Makarov  <vmakarov@redhat.com>
+
+       PR rtl-optimization/37514
+       * reload1.c (reload_as_needed): Invalidate reg_last_reload
+       from previous insns.
+
+2008-12-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/38348
+       * c-omp.c (c_finish_omp_for): Only transform pointer
+       ++ or -- into MODIFY_EXPR if second argument is non-NULL.
+
+       PR rtl-optimization/38245
+       * tree-vrp.c (abs_extent_range): New function.
+       (extract_range_from_binary_expr): Compute range
+       for *_DIV_EXPR even if vr1 is VR_VARYING, VR_ANTI_RANGE
+       or includes zero or if vr1 is VR_RANGE and op0 has some
+       other range.
+
+2008-12-01  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR middle-end/37908
+       * config/alpha/alpha.c (alpha_split_atomic_op): Properly handle NAND
+       case by calculating ~(new_reg & val) instead of (~new_reg & val).
+       * config/alpha/sync.md (sync_nand<mode>): Change insn RTX
+       to (not:I48MODE (and:I48MODE (...))).
+       (sync_old_nand<mode>): Ditto.
+       (sync_new_nand<mode>): Ditto.
+
+2008-12-01  Nick Clifton  <nickc@redhat.com>
+
+       * config/stormy16/stormy16.md (CARRY_REG): New constant.
+       Replace uses of the "y" register class with direct references to
+       the CARRY_REG register.
+       * config/stormy16/stormy16.c: Replace clobbers of a BImode scratch
+       register with clobbers of the carry register.
+       (xstormy16_secondary_reload_class): Do not return CARRY_REGS.
+       (xstormy16_split_cbranch): Remove redundant carry parameter.
+       (xstormy16_expand_arith): Likewise.
+       * config/stormy16/stormy16.h (enum reg_class): Remove CARRY_REGS.
+       (IRA_COVER_CLASSES, REG_CLASS_NAMES, REG_CLASS_CONTENTS,
+       REGNO_REG_CLASS, REG_CLASS_FROM_LETTER): Likewise.
+       (CARRY_REGNUM): Define.
+       * config/stormy16/stormy16-protos.h (xstormy16_split_cbranch):
+       Update prototype.
+       (xstormy16_expand_arith): Likewise.
+
+2008-12-01  Chen Liqin  <liqin.chen@sunplusct.com>
+
+       * config/score/score.h (IRA_COVER_CLASSES): Define.
+
+2008-11-30  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR target/38287
+       * config/sparc/sparc.md (divsi3 expander): Remove constraints.
+       (divsi3_sp32): Add new alternative with 'K' for operand #2.
+       (cmp_sdiv_cc_set): Factor common string.
+       (udivsi3_sp32): Add new alternative with 'K' for operand #2.
+       Add TARGET_V9 case.
+       (cmp_udiv_cc_set): Factor common string.
+
+2008-11-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR middle-end/38283
+       * varasm.c (emutls_finish): Fix common registration.
+
+2008-11-29  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/29987
+       * config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine.
+
+2008-11-29  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (rs6000_emit_sync): Remove support for
+       operand wrapped in NOT.  Emit NAND as (ior (not X) (not Y)).
+       (rs6000_split_atomic_op): Emit NAND as (ior (not X) (not Y)).
+       * config/rs6000/sync.md (sync_nand<mode>): Represent NAND in RTL.
+       Call rs6000_emit_sync with CODE=NOT and unmodified operands.
+       Ignore sub-word case for now.
+       (sync_nand<mode>_internal): Represent NAND in RTL.
+       (sync_old_nand<mode): Same.
+       (sync_old_name<mode>_internal): Same.
+       (sync_new_nand<mode>): Same.
+       (sync_new_nand<mode>_internal): Same.
+       (sync_boolcshort_internal): Expect NAND.
+
+2008-11-28  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/37955
+       PR tree-optimization/37742
+       * tree-vect-transform.c (vectorizable_store): Remove assert for
+       compatible aliases.
+       (vectorizable_load): Likewise.
+
+2008-11-27  Richard Guenther  <rguenther@suse.de>
+
+       * tree-ssa-structalias.c (intra_create_variable_infos): Make
+       a constraint for the static chain parameter.
+
+2008-11-27  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/bfin.opt (micplb): New option.
+       * config/bfin/linux.h (SUBTARGET_DRIVER_SELF_SPECS): Set it.
+       * config/bfin/bfin-protos.h (WA_INDIRECT_CALLS,
+       ENABLE_WA_INDIRECT_CALLS): New macros.
+       * config/bfin/bfin.c (bfin_cpus): Add WA_INDIRECT_CALLS to
+       all 54x CPUs.
+       (indirect_call_p): New function.
+       (workaround_speculation): Handle anomaly 05-00-0426 when
+       ENABLE_WA_INDIRECT_CALLS is true.
+       * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define
+       __WORKAROUND_INDIRECT_CALLS if ENABLE_WA_INDIRECT_CALLS.
+       * doc/invoke.texi (Blackfin Options): Document -micplb.
+
+2008-11-26  DJ Delorie  <dj@redhat.com>
+
+       * config/m32c/mov.md ("extendhipsi2"): New.
+
+       * config/m32c/bitops.md (bset_qi): Add memsym_operand predicate.
+
+       * config/m32c/bitops.md (andhi3_24, iorhi3_24): Don't prefer HL class.
+       * config/m32c/mov.md (zero_extendqihi2): Likewise.
+
+2008-11-26  Adam Nemet  <anemet@caviumnetworks.com>
+
+       * config/mips/mips.md (clear_hazard): Rename to
+       clear_hazard_<mode>.  Use mode-specific addition.
+       (clear_cache): Rename gen_clear_hazard to gen_clear_hazard_si
+       or gen_clear_hazard_di depending on the size of Pmode.
+
+2008-11-26  DJ Delorie  <dj@redhat.com>
+
+       * configure.ac: Test m32c-elf-gas for .loc.
+       * configure: Likewise.
+
+2008-11-26  Janis Johnson  <janis187@us.ibm.com>
+
+       PR testsuite/28870
+       * doc/sourcebuild.texi (Test Directives): Add dg-timeout and
+       dg-timeout-factor.
+
+2008-11-26  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/sync.md (memory_barrier_nosse): Disable also for
+       TARGET_64BIT.  Remove special asm template for TARGET_64BIT case.
+       (memory_barrier): Do not generate memory_barrier_nosse instruction
+       for TARGET_64BIT.
+       * config/i386/sse.md (*sse2_mfence): Also enable for TARGET_64BIT.
+
+2008-11-26  Fredrik Unger  <fred@tree.se>
+
+       * config/soft-fp/floatuntisf.c (__floatuntisf): Correct
+       function name from __floatundisf.
+       * config/soft-fp/fixdfti.c (__fixdfti): Correct argument type to
+       DFtype.
+
+2008-11-25  Daniel Berlin  <dberlin@dberlin.org>
+           Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/37869
+       * tree-ssa-structalias.c (struct constraint_graph): Remove
+       pt_used and number_incoming members.
+       (build_pred_graph): Do not allocate them.
+       (condense_visit): Do not use them.
+       (label_visit): Likewise.
+       (free_var_substitution_info): Do not free them.
+
+2008-11-25  Vladimir Makarov  <vmakarov@redhat.com>
+
+       * doc/invoke.texi (ira-max-loops-num): Change semantics.
+
+       * ira-int.h (struct ira_loop_tree_node): New member to_remove_p.
+
+       * ira-color.c (allocno_spill_priority): New function.
+       (remove_allocno_from_bucket_and_push, push_allocno_to_spill):
+       Print more info about the spilled allocno.
+       (push_allocnos_to_stack): Use allocno_spill_priority.  Add more
+       checks on bad spill.
+
+       * ira-build.c (loop_node_to_be_removed_p): Remove.
+       (loop_compare_func, mark_loops_for_removal): New functions.
+       (remove_uneccesary_loop_nodes_from_loop_t): Use member
+       to_remove_p.
+       (remove_unnecessary_allocnos): Call mark_loops_for_removal.
+
+       * ira.c (ira): Don't change flag_ira_algorithm.
+
+       * params.def (ira-max-loops-num): Change the value.
+
+2008-11-25  Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       * config/m68k/m68k.md (extendsidi2, extendsidi2_mem): Merge, clean up.
+       Disable unsupported alternative for ColdFire,
+       add new alternative that ColdFire can handle.
+
+2008-11-25  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * regrename.c (merge_overlapping_regs): Add registers artificially
+       defined at the top of the basic block to the set of live ones just
+       before the first insn.
+
+2008-11-25  H.J. Lu  <hongjiu.lu@intel.com>
+           Joey Ye  <joey.ye@intel.com>
+
+       PR middle-end/37843
+       * config/i386/i386.c (ix86_function_ok_for_sibcall): Return
+       false if we need to align the outgoing stack.
+       (ix86_update_stack_boundary): Check parm_stack_boundary.
+
+2008-11-25  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/38151
+       PR middle-end/38236
+       * tree-ssa-alias.c (struct alias_info): Remove written_vars.
+       Remove dereferenced_ptrs_store and dereferenced_ptrs_load
+       in favor of dereferenced_ptrs.
+       (init_alias_info): Adjust.
+       (delete_alias_info): Likewise.
+       (compute_flow_insensitive_aliasing): Properly
+       include all aliased variables.
+       (update_alias_info_1): Use dereferenced_ptrs.
+       (setup_pointers_and_addressables): Likewise.
+       (get_smt_for): Honor ref-all pointers and pointers with known alias
+       set properly.
+       * config/i386/i386.c (ix86_gimplify_va_arg): Use ref-all pointers.
+
+2008-11-25  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/38254
+       * config/i386/sync.md (memory_barrier_nosse): New insn pattern.
+       (memory_barrier): Generate memory_barrier_nosse insn for !TARGET_SSE2.
+
 2008-11-24  Maxim Kuvyrkov  <maxim@codesourcery.com>
 
        * config/m68k/m68k.md (cmpdi): Use (scratch) instead of pseudo.
 2008-11-21  Uros Bizjak  <ubizjak@gmail.com>
 
        PR middle-end/37908
-       * config/ia64/ia64.c (ia64_expand_atomic_ope): Properly handle NAND
+       * config/ia64/ia64.c (ia64_expand_atomic_op): Properly handle NAND
        case by calculating ~(new_reg & val) instead of (~new_reg & val).
        * config/ia64/sync.md (sync_nand<mode>): Change insn RTX
        to (not:IMODE (and:IMODE (...))).
        (generate_edge_moves): Use store_can_be_removed_p instead of
        not_modified_p.
        (ira_emit): Call setup_entered_from_non_parent_p.
-       
+
        * ira-build.c (copy_info_to_removed_store_destinations):
        Accumulate CALL_FREQ, CALL_CROSSED_NUM, and
        ALLOCNO_EXCESS_PRESSURE_POINTS_NUM.
        (ira_flattening): Don't CHECK MEM_OPTIMIZED_DEST[_P], always
        update all accumulated attributes.
-       
+
 2008-11-19  Vladimir Makarov  <vmakarov@redhat.com>
 
        PR bootstrap/37790
        ira_finish_allocno_live_range_list): New prototypes.
        (ira_allocno_live_ranges_intersect_p,
        ira_pseudo_live_ranges_intersect_p): Remove.
-       
+
        * ira-conflicts.c (ira_allocno_live_ranges_intersect_p,
        ira_pseudo_live_ranges_intersect_p): Rename to
        allocnos_have_intersected_live_ranges_p and
        (copy_info_to_removed_store_destinations): Ditto.  Use
        ira_copy_allocno_live_range_list.
        (ira_flattening): Use ira_merge_allocno_live_ranges.
-       
+
        * ira.c (too_high_register_pressure_p): New function.
        (ira): Switch off sharing spill slots if the pressure is too high.
 
 
        PR target/38156
        * tree-parloops.c (loop_parallel_p): NULL vect_dump.
-       (separate_decls_in_region): Create shared struct even when there 
+       (separate_decls_in_region): Create shared struct even when there
        are only reductions.
 
 2008-11-19  Hariharan Sandanagobalane <hariharan@picochip.com>
        * builtins.c (expand_builtin_sync_operation): Warn for changed
        semantics in NAND builtins.
        * c.opt (Wsync-nand): New warning option.  Describe -Wsync-nand.
-       
+
        * doc/invoke.texi (Warning options): Add Wsync-nand.
        * doc/extend.texi (Atomic Builtins) [__sync_fetch_and_nand]: Correct
        __sync_fetch_and_nand builtin operation in the example.  Add a note
        (ira_build): Call it.
 
        * ira-costs.c (record_reg_classes): Set up ALLOCNO_BAD_SPILL_P.
-       
+
 2008-11-14  Jakub Jelinek  <jakub@redhat.com>
 
        PR tree-optimization/38104
        * config/mips/sde.h: Likewise.
        * config/mips/iris6.h: Likewise.
        * config/mips/vr.h: Likewise.
-       * config/mips/mips.h (BASE_DRIVER_SELF_SPECS): New. 
+       * config/mips/mips.h (BASE_DRIVER_SELF_SPECS): New.
 
 2008-11-10  Vladimir Makarov  <vmakarov@redhat.com>
 
 
        * ira-costs.c (scan_one_insn): Use alloc_pref for load from
        equivalent memory.
-       
+
 2008-11-10  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        PR rtl-optimization/37514
        PR middle-end/37379
        * tree-scalar-evolution.c (instantiate_scev_1): Return
        chrec_dont_know for VL_EXP_CLASS_P.
-       
+
 2008-11-06  Uros Bizjak  <ubizjak@gmail.com>
 
        * reg-stack.c (reg_to_stack): Add missing braces in memset
 
        PR target/26397
        * config/rs6000/aix.h (LIBSTDCXX_STATIC): Define.
-       
+
 2008-11-06  Kazu Hirata  <kazu@codesourcery.com>
 
        PR target/35574
 
        * doc/sourcebuild.texi (Torture Tests): Add ADDITIONAL_TORTURE_OPTIONS.
 
-2008-11-06  Ben Elliston  <bje@au.ibm.com>     
+2008-11-06  Ben Elliston  <bje@au.ibm.com>
 
        * config/rs6000/rs6000.c (rs6000_override_options): Comment fix.
 
        merging read-only and read-write sections or assembler emits
        read-write .eh_frame sections.
        * configure: Regenerate.
-       
+
 2008-11-03  Nathan Froyd  <froydnj@codesourcery.com>
 
        Revert:
        PR target/37878
        * config/rs6000/predicates.md (word_offset_memref_operand):
        Restructure code and look inside auto-inc/dec addresses.
-       
+
 2008-10-29  Steve Ellcey  <sje@cup.hp.com>
 
        PR target/32277
        * real.h (real_can_shorten_arithmetic): Declare.
 
 2008-10-29  Bernd Schmidt  <bernd.schmidt@analog.com>
-       
+
        * config/bfin/bfin-protos.h (WA_05000257, WA_05000283, WA_05000315,
        ENABLE_WA_05000257, ENABLE_WA_05000283, ENABLE_WA_05000315): New.
        * config/bfin/bfin.c (bfin_cpus): Add these workaround bits as
        * ira-int.h (ira_allocno): Add member updated_cover_class_cost.
        (ALLOCNO_UPDATED_COVER_CLASS_COST): New.
        (ira_fast_allocation): Remove the prototype.
-       
+
        * ira-color.c (update_copy_costs, allocno_cost_compare_func,
        assign_hard_reg, calculate_allocno_spill_cost): Use updated costs.
        (color_pass): Modify the updated costs.
        (ira_color): Rename to color.  Make it static.
        (ira_fast_allocation): Rename to fast_allocation.  Make it static.
        (ira_color): New function.
-       
+
        * ira-conflicts.c (process_regs_for_copy): Propagate hard reg cost
        change.
 
 
        * ira-costs.c (setup_allocno_cover_class_and_costs): Don't set up
        updated costs.
-       
+
 2008-10-27  Vladimir Makarov  <vmakarov@redhat.com>
 
        PR middle-end/37813
        From Jie Zhang  <jie.zhang@analog.com>
        * config/bfin/bfin.md (composev2hi): Put operands into vector
        with correct order.
-       
+
 2008-10-22  Chao-ying Fu  <fu@mips.com>
 
        * config/mips/mips.opt (msmartmips): Accept -mno-smartmips.
 
        * doc/invoke.texi (Option Summary): Add -T to linker options.
        (Link Options): Document -T.
-       
+
 2008-10-21  Jakub Jelinek  <jakub@redhat.com>
 
        * tree-inline.c (tree_inlinable_function_p): Remove tuples
 
        * doc/rtl.texi (clobber): Change descriotion of RA behaviour for
        early clobbers of pseudo-registers.
-       
+
 2008-10-15  Vladimir Makarov  <vmakarov@redhat.com>
 
        PR middle-end/37674
        * ira-build.c (ira_flattening): Recalculate
        ALLOCNO_TOTAL_NO_STACK_REG_P and ALLOCNO_TOTAL_CONFLICT_HARD_REGS
        from the scratch instead of the propagation.
-       
+
 2008-10-15  Richard Sandiford  <rdsandiford@googlemail.com>
 
        * doc/rtl.texi (const_double): Remove the "addr" operand.
        * haifa-sched.c (create_check_block_twin): Update calls to the above.
        * sel-sched.c (create_speculation_check): Likewise.
        * doc/tm.texi: Provide documentation for new target hooks.
-               
+
        * config/ia64/ia64.c: Include sel-sched.h.  Rewrite speculation hooks.
        (ia64_gen_spec_insn): Removed.
        (get_spec_check_gen_function, insn_can_be_in_speculative_p,
        (ia64_dfa_new_cycle): Assert that last_scheduled_insn is set when
        a group barrier is needed.  Fix vertical spacing.  Guard the code
        doing state transition with last_scheduled_insn check.
-       Mark that a stop bit should be before current insn if there was a 
+       Mark that a stop bit should be before current insn if there was a
        cycle advance.  Update current_cycle and mem_ops_in_group.
        (ia64_h_i_d_extended): Change use of current_sched_info to
        sched_deps_info. Reallocate stops_p by larger chunks.
        ia64_free_sched_context): New static functions.
        (gen_func_t): New typedef.
        (get_spec_load_gen_function): New function.
-       (SPEC_GEN_EXTEND_OFFSET): Declare.      
+       (SPEC_GEN_EXTEND_OFFSET): Declare.
        (ia64_set_sched_flags): Check common_sched_info instead of *flags.
        (get_mode_no_for_insn): Change the condition that prevents use of
        special hardware registers so it can now handle pseudos.
        (sel2_run): New variable.
        (ia64_reorg): When flag_selective_scheduling2 is set, run the
        selective scheduling pass instead of schedule_ebbs.
-       
+
        * config/ia64/ia64.md (speculable1, speculable2): New attributes.
        (UNSPEC_LDS_A): New UNSPEC.
        (movqi_internal, movhi_internal, movsi_internal, movdi_internal,
        instead of Common Report Var.
 
        * config/ia64/itanium2.md: Remove incorrect bypass.
-       
+
        * config/ia64/t-ia64 (ia64.o): Add dependency on sel-sched.h.
 
 2008-10-14  Jakub Jelinek  <jakub@redhat.com>
        PR middle-end/37808
        * df-scan.c (df_ref_change_reg_with_loc_1): Added test to make
        sure that ref has valid bb.
-       
+
 2008-10-12  Richard Henderson  <rth@redhat.com>
 
        PR middle-end/37447
        (print_statistics, dump_alloc_pool_statistics): Enhance the
        printing of statistics to print the number of elements and to use
        unsigned longs.
-       
+
 2008-10-07  Jakub Jelinek  <jakub@redhat.com>
 
        PR middle-end/37576
 
 2008-10-03  Andrew Pinski  <andrew_pinski@playstation.sony.com>
 
-       * config/rs6000/rs6000.md (fseldfsf4): Add TARGET_SINGLE_FLOAT 
+       * config/rs6000/rs6000.md (fseldfsf4): Add TARGET_SINGLE_FLOAT
        condition.
        (fselsfdf4): Make condition on "TARGET_HARD_FLOAT && TARGET_FPRS &&
        TARGET_DOUBLE_FLOAT && TARGET_SINGLE_FLOAT".
        and VECTOR_TYPE recurse with useless_type_conversion_p which
        properly handles void pointer conversion.
 
-2008-10-02  Danny Smith  <dannysmith@users.sourceforge.net>  
+2008-10-02  Danny Smith  <dannysmith@users.sourceforge.net>
 
        PR target/37528
        * config/i386/mingw32.h (LIBGCC_SPEC) : Replace with ..
        (coalesced_allocnos_live_at_points_p,
        set_coalesced_allocnos_live_points): New functions.
        (coalesce_spill_slots): Rewrite.
-       
+
        * ira-lives.c (remove_some_program_points_and_update_live_ranges,
        ira_compress_allocno_live_ranges): New functions.
 
 
 2008-09-25 Sergei Dyshel <sergeid@il.ibm.com>
 
-       * matrix-reorg.c (transform_allocation_sites): Initializers 
+       * matrix-reorg.c (transform_allocation_sites): Initializers
        added to avoid the warning.
 
 2008-09-25  Martin Jambor  <mjambor@suse.cz>
        ALLOCNO_EXCESS_PRESSURE_POINTS_NUM instead of frequencies and
        range lengths.  Get rid off doubles.
        (ira_fast_allocations): Call start_allocno_priorities.
-       
+
 2008-09-22  David Daney  <ddaney@avtrex.com>
 
        PR target/37593
 
 2008-09-22  Danny Smith  <dannysmith@users.sourceforge.net>
 
-       PR target/37528 
+       PR target/37528
        * config/i386/t-cygming (SHLIB_LC): Remove.
        (SHLIB_LINK): Don't add static objects to SHLIB_IMPLIB
        * config/i386/t-cygwin (SHLIB_LC): Specify all required libraries.
        * targhooks.c (default_ira_cover_classes): New function.
 
 2008-09-19  Bob Wilson  <bob.wilson@acm.org>
-       
+
        * config/xtensa/xtensa.md (reload<mode>_literal): Handle MEM operands.
-       
+
 2008-09-19  Ian Lance Taylor  <iant@google.com>
 
        * varasm.c (narrowing_initializer_constant_valid_p): Return
        (load_tp, set_tp, tls_func, tls_arg, tls_call): New.
        * config/xtensa/xtensa-protos.h (xtensa_tls_referenced_p): Declare.
        * configure: Regenerated.
-       
+
 2008-09-18  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR target/37394
        PR tree-optimization/37102
        * tree-outof-ssa.c (remove_gimple_phi_args): Remove all the PHI args
        from a node. Check to see if another PHI is dead.
-       (eliminate_useless_phis): Rename from eliminate_virtual_phis and 
+       (eliminate_useless_phis): Rename from eliminate_virtual_phis and
        remove real PHIs which have no uses.
        (rewrite_out_of_ssa): Call eliminate_useless_phis.