+2008-09-12 Richard Guenther <rguenther@suse.de>
+
+ * tree-vrp.c (simplify_truth_ops_using_ranges): Fix types.
+
+2008-09-12 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR rtl-optimization/37424
+ * ira-color.c (coalesced_pseudo_reg_slot_compare): Untie by comparing
+ the regnos instead of the addresses.
+
+2008-09-11 Janis Johnson <janis187@us.ibm.com>
+
+ * ginclude/float.h (DEC_EVAL_METHOD): Correct the macro name.
+
+2008-09-11 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-uncprop.c (associate_equivalences_with_edges): Avoid
+ entering the weaker equivalence recording.
+
+ * tree-ssa-phiprop.c (propagate_with_phi): Fix tuplification.
+
+2008-09-11 Jeff Law <law@redhat.com>
+
+ * reload1.c (alter_reg): Undo the BYTE_BIG_ENDIAN correction performed
+ by assign_stack_local on the IRA path for stack slot sharing
+ as well as the non-IRA path.
+
+2008-09-11 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.h: Fix whitespace issues.
+
+2008-09-11 Martin Jambor <mjambor@suse.cz>
+
+ * ipa-prop.h (struct ipa_param_flags): Removed.
+ (struct ipa_param_descriptor): New structure.
+ (struct ipa_node_params): ipcp_lattices, param_decls and
+ param_flags moved to ipa_param_description.
+ (ipa_get_ith_param): Renamed to ipa_get_param, changed to access
+ descriptors. Renamed all users.
+ (ipa_is_ith_param_modified): Renamed to ipa_is_param_modified,
+ changed to access descriptors. Renamed all users.
+ (ipa_is_ith_param_called): Renamed to ipa_is_param_called, changed
+ to access descriptors. Renamed all users.
+ * ipa-cp.c (ipcp_init_cloned_node): Call
+ ipa_initialize_node_params instead of ipa_count_formal_params and
+ ipa_create_param_decls_array.
+ (ipcp_analyze_node): Likewise.
+ (ipcp_get_ith_lattice): Renamed to ipcp_get_lattice, changed to access
+ descriptors. Renamed all users.
+ (ipcp_initialize_node_lattices): Remove allocation.
+ * ipa-inline.c (inline_indirect_intraprocedural_analysis): Call
+ ipa_initialize_node_params instead of ipa_count_formal_params and
+ ipa_create_param_decls_array.
+ * ipa-prop.c (ipa_create_param_decls_array): Renamed to
+ ipa_populate_param_decls, made static, added parameter info,
+ renamed mt to node, removed allocation, changed to use
+ descriptors.
+ (ipa_count_formal_params): Made static, added parameter info,
+ renamed mt to node.
+ (ipa_initialize_node_params): New function.
+ (ipa_check_stmt_modifications): Changed to use descriptors.
+ (ipa_detect_param_modifications): Removed allocation, changed to
+ use descriptors.
+ (ipa_note_param_call): Changed to use descriptors.
+ (ipa_analyze_params_uses): Removed allocation.
+ (ipa_free_node_params_substructures): Changed to use descriptors.
+ (ipa_edge_duplication_hook): Use the unused attribute.
+ (ipa_node_duplication_hook): Use the unused attribute, changed to
+ use descriptors, changed to duplicate descriptors.
+
+ * ipa-inline.c (cgraph_mark_inline_edge): New parameter new_edges,
+ changed all callers. Call ipa_propagate_indirect_call_infos if doing
+ indirect inlining. Made static.
+ (cgraph_decide_inlining): Freeing ipa-prop structures after inlining
+ functions called only once.
+ (cgraph_decide_recursive_inlining): Don't call
+ ipa_propagate_indirect_call_infos, pass new_edges to
+ cgraph_mark_inline_edge instead.
+ (cgraph_decide_inlining_of_small_functions): Don't call
+ ipa_propagate_indirect_call_infos, pass new_edges to
+ cgraph_mark_inline_edge instead.
+ (cgraph_decide_inlining): Don't call
+ ipa_propagate_indirect_call_infos.
+ * ipa-prop.c: Check that vectors are allocated.
+
+ * ipa-inline.c (cgraph_mark_inline_edge): Returns boolean, true
+ iff a new cgraph edges have been created.
+ (cgraph_decide_inlining): New variable redo_always_inline.
+ Flattening and always_inlining loop until callgraph stabilizes.
+ * ipa-prop.c (update_call_notes_after_inlining): Returns boolean,
+ true iff new cgraph edges have been created.
+ (propagate_info_to_inlined_callees): Likewise.
+ (ipa_propagate_indirect_call_infos): Likewise.
+
+2008-09-11 Richard Guenther <rguenther@suse.de>
+
+ * tree-vectorizer.c (slpeel_add_loop_guard): Fix types.
+ (set_prologue_iterations): Likewise.
+ * tree-vect-transform.c (vect_create_addr_base_for_vector_ref):
+ Likewise.
+ (vect_update_init_of_dr): Likewise.
+ * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Fix
+ type verification.
+ * fold-const.c (fold_unary): Do not generate calculations
+ in sub-types.
+
+2008-09-11 Paolo Bonzini <bonzini@gnu.org>
+
+ * dojump.c (do_jump) [BIT_AND_EXPR]: Move below. Fall through to
+ TRUTH_AND_EXPR for boolean (1-bit precision) expressions.
+ (do_jump) [BIT_IOR_EXPR]: Compile as TRUTH_OR_EXPR.
+
+ * tree-flow.h (simplify_stmt_using_ranges): Accept a GSI, return a bool.
+ * tree-ssa-propagate.c (substitute_and_fold): Pass a GSI to
+ VRP's simplify_stmt_using_ranges. Do simplify_stmt_using_ranges
+ before finalizing the changes.
+ * tree-vrp.c (extract_range_from_binary_expr): Add limited support
+ for BIT_IOR_EXPR.
+ (simplify_truth_ops_using_ranges): New.
+ (simplify_div_or_mod_using_ranges, simplify_abs_using_ranges,
+ simplify_cond_using_ranges, simplify_switch_using_ranges): Return
+ whether a simplification was made.
+ (simplify_stmt_using_ranges): Ditto, and accept a GSI. For GS_ASSIGN,
+ use a switch statement and also call simplify_truth_ops_using_ranges.
+
+2008-09-11 Jan Hubicka <jh@suse.cz>
+
+ * ggc-common.c (loc_array): Make static.
+ * dce.c (rest_of_handle_ud_dce): Free worklist.
+
+2008-09-11 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_release_function_body): Plug memory leak on
+ ipa_transforms_to_apply and CFG; ggc_free gimple df and struct function
+ so we are sure we do not dangle it forever.
+ * function.c (outer_function_chain, find_function_data): Remove.
+ (function_context_stack): New.
+ (push_function_context, pop_function_context): Update.
+ * function.h (struct function): Remove pointer outer.
+ (outer_function_chain, find_function_data): Remove.
+ * stmt.c (force_label_rtx): Remove dead call of find_function_data.
+
+2008-09-11 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/37448
+ * cgraph.c (cgraph_create_edge): Use !cgraph_edge for sanity check.
+
+2008-09-11 Jan Hubicka <jh@suse.cz>
+
+ * tree-ssa-pre.c (phi_translate_1): Fix memory leak
+
+2008-09-11 Jan Hubicka <jh@suse.cz>
+
+ * tree-ssa.c (redirect_edge_var_map_clear): Fix formatting.
+ (free_var_map_entry): New function.
+ (redirect_edge_var_map_destroy): Use it.
+
+2008-09-11 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/37448
+ * tree-inline.c (add_lexical_block): Replace with ...
+ (prepend_lexical_block): ... prepend at begginig.
+ (remap_blocks): Use it and reverse later.
+ (expand_call_inline): Use prepend_lexical_block.
+
+2008-09-11 Jan Hubicka <jh@suse.cz>
+
+ * gimplify.c (pop_gimplify_context): Free bind_expr_stack.
+