+2008-12-09 Tobias Grosser <grosser@fim.uni-passau.de>
+
+ * graphite.c (graphite_transform_loops): Always call find_transform ()
+ in ENABLE_CHECKING. So we test these code paths, even if we do not
+ generate code.
+
+2008-12-09 Tobias Grosser <grosser@fim.uni-passau.de>
+
+ * graphite.c (print_graphite_bb): Fix printing to file != dump_file.
+
+2008-12-09 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/38454
+ * function.h (struct function): Add always_inline_functions_inlined.
+ * ipa-inline.c (cgraph_early_inlining): Set it to true.
+ * tree-optimize.c (execute_fixup_cfg): Likewise.
+ * builtins.c (avoid_folding_inline_builtin): New function.
+ (fold_call_expr): Don't optimize always_inline builtins before
+ inlining.
+ (fold_call_stmt): Likewise.
+ (fold_builtin_call_array): Likewise. Don't call
+ fold_builtin_varargs for BUILT_IN_MD builtins.
+
+ PR tree-optimization/37416
+ * tree-scalar-evolution.c (follow_ssa_edge_in_rhs): Handle NOP_EXPR.
+
+2008-12-09 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/sourcebuild.texi (Test Directives): Fix formatting.
+
+2008-12-09 Vladimir Makarov <vmakarov@redhat.com>
+
+ * doc/tm.texi (TARGET_IRA_COVER_CLASSES): Modify description.
+
+ * doc/invoke.texi (-fira-region): Describe new option.
+ (-fira-algorithm): Change the values.
+
+ * ira-conflicts.c (build_conflict_bit_table,
+ build_allocno_conflicts): Use ira_reg_classes_intersect_p.
+ (ira_build_conflicts): Use flag flag_ira_region instead of
+ flag_ira_algorithm. Prohibit usage of callee-saved likely spilled
+ base registers for allocnos crossing calls.
+
+ * flags.h (enum ira_algorithm): Redefine.
+ (enum ira_region): New.
+ (flag_ira_region): New.
+
+ * cfgloopanal.c (estimate_reg_pressure_cost): Use flag_ira_region
+ instead of flag_ira_algorithm.
+
+ * toplev.c (flag_ira_algorithm): Change the initial value.
+ (flag_ira_region): New.
+
+ * ira-int.h (ira_reg_classes_intersect_p,
+ ira_reg_class_super_classes): New.
+
+ * ira-color.c (update_copy_costs): Use
+ ira_reg_classes_intersect_p. Use right class to find hard reg
+ index.
+ (update_conflict_hard_regno_costs): Ditto. Add a new parameter.
+ (assign_hard_reg): Ditto. Pass additional argument to
+ update_conflict_hard_regno_costs. Do not uncoalesce for priority
+ coloring.
+ (allocno_priorities, setup_allocno_priorities,
+ allocno_priority_compare_func): Move before color_allocnos.
+ (color_allocnos): Add priority coloring. Use flag flag_ira_region
+ instead of flag_ira_algorithm.
+ (move_spill_restore): Check classes of the same reg allocno from
+ different regions.
+ (update_curr_costs): Use ira_reg_classes_intersect_p.
+ (ira_reassign_conflict_allocnos): Ditto.
+
+ * opts.c (decode_options): Always set up flag_ira. Set up
+ flag_ira_algorithm. Warn CB can not be used for architecture.
+ (common_handle_option): Modify code for -fira-algorithm. Add code
+ to process -fira-region.
+
+ * ira-lives.c (update_allocno_pressure_excess_length): Process
+ superclasses too.
+ (set_allocno_live, clear_allocno_live, mark_reg_live,
+ mark_reg_dead, process_bb_node_lives): Ditto.
+
+ * ira-emit.c (ira_emit): Fix insn codes.
+
+ * ira-build.c (propagate_allocno_info): Use flag flag_ira_region
+ instead of flag_ira_algorithm.
+ (allocno_range_compare_func): Ignore classes for priority
+ coloring.
+ (setup_min_max_conflict_allocno_ids): Ditto.
+ (ira_flattening): Use ira_reg_classes_intersect_p.
+
+ * genpreds.c (write_enum_constraint_num): Output
+ CONSTRAINT__LIMIT.
+
+ * common.opt (fira-algorithm): Modify.
+ (fira-region): New.
+
+ * ira.c (setup_class_hard_regs): Initialize.
+ (setup_cover_and_important_classes): Modify code setting class
+ related info for priority coloring.
+ (setup_class_translate): Ditto.
+ (ira_reg_classes_intersect_p, ira_reg_class_super_classes): New.
+ (setup_reg_class_intersect_union): Rename to
+ setup_reg_class_relations. Add code for setting up new variables.
+ (find_reg_class_closure): Do not check targetm.ira_cover_classes.
+ (ira): Use flag flag_ira_region instead of flag_ira_algorithm.
+
+ * ira-costs.c (common_classes): New.
+ (print_costs): Use flag flag_ira_region instead of
+ flag_ira_algorithm.
+ (find_allocno_class_costs): Ditto. Use common_classes. Translate
+ alt_class.
+ (ira_costs): Allocate/deallocate common_classes.
+
+ * config/m32c/m32.h (REG_ALLOC_ORDER): Add reg 19.
+ (REG_CLASS_CONTENTS, reg_class, REG_CLASS_NAMES): New entries for
+ R02A_REGS.
+
+ * reload1.c (choose_reload_regs): Use MODE_INT for partial ints in
+ smallest_mode_for_size.
+
+2008-12-10 Ben Elliston <bje@au.ibm.com>
+
+ * config/rs6000/linux-unwind.h (get_regs): Constify casts.
+
+2008-12-09 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (estimate_bb_frequencies): Fix test if profile is present.
+
+2008-12-09 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/35468
+ * tree-ssa-ccp.c (fold_stmt_r): Don't fold reads from constant
+ string on LHS.
+
+2008-12-09 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/38445
+ * tree-ssa-structalias.c (emit_pointer_definition): Only visit
+ names once.
+ (emit_alias_warning): Adjust.
+
+2008-12-09 Andrew Haley <aph@redhat.com>
+
+ * fixed-value.c (do_fixed_add): Add comment.
+ * tree-ssa-loop-ivopts.c (iv_ca_cost): Likewise.
+ * builtins.c (fold_builtin_sqrt): Likewise.
+
+2008-12-09 Kai Tietz <kai.tietz@onevision.com>
+
+ PR/38366
+ * function.c (aggregate_value_p): Get fntype from CALL_EXPR in any
+ case.
+ * calls.c (nitialize_argument_information): Add fntype argument
+ and use it for calls.promote_function_args.
+ (expand_call): Pass fntype to aggregate_value_p if no fndecl
+ available and pass additional fntype to
+ initialize_argument_information.
+ * config/i386/i386.c (ix86_reg_parm_stack_space): Remove cfun part
+ to get function abi type.
+ (init_cumulative_args): Use for abi kind detection fntype, when no
+ fndecl is available.
+
+2008-12-09 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md (movti, movdi_64, movdi_31,
+ *movsi_zarch, *movhi, *movqi, *mov<mode>_64, *mov<mode>_31,
+ *mov<mode>_64dfp, *mov<mode>_64, *mov<mode>_31, mov<mode>): Remove
+ Q->Q alternative.
+ (Integer->BLKmode splitter): Removed.
+
+2008-12-08 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/alpha/alpha.c (alpha_set_memflags): Process memory
+ references in full insn sequence.
+
+2008-12-09 Jason Merrill <jason@redhat.com>
+
+ * gimplify.c (gimplify_init_constructor): Revert to using < rather
+ than <= for sparseness test.
+
+ PR c++/38410
+ * gimplify.c (gimplify_init_constructor): Don't write out a static
+ copy of the CONSTRUCTOR for TREE_ADDRESSABLE types or small sparse
+ initializers.
+
+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>
+
+ * emutls.c (__emutls_get_address): Prototype.
+ (__emutls_register_common): Likewise.
+
+ * 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.
+