Age | Commit message (Collapse) | Author | Files | Lines |
|
2011-04-29 Tobias Burnus <burnus@net-b.de>
PR fortran/48810
* resolve.c (resolve_typebound_generic_call): Don't check access
flags of the specific function.
PR fortran/48800
* resolve.c (resolve_formal_arglist): Don't change AS_DEFERRED
to AS_ASSUMED_SHAPE for function results.
(resolve_fl_var_and_proc): Print also for function results with
AS_DEFERRED an error, if they are not a pointer or allocatable.
(resolve_types): Make sure arguments of procedures in interface
blocks are resolved.
2011-04-29 Tobias Burnus <burnus@net-b.de>
PR fortran/48810
* gfortran.dg/typebound_proc_22.f90: New.
PR fortran/48800
* gfortran.dg/interface_36.f90: New.
From-SVN: r173175
|
|
2011-04-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/48488
PR libgfortran/48602
PR libgfortran/48615
PR libgfortran/48684
PR libgfortran/48787
* gfortran.dg/fmt_g.f: Adjust test.
* gfortran.dg/fmt_g0_1.f08: Adjust test.
* gfortran.dg/round_3.f08: New test.
* gfortran.dg/namelist_print_1.f: Adjust test.
* gfortran.dg/char4_iunit_1.f03: Adjust test.
* gfortran.dg/f2003_io_5.f03: Adjust test.
* gfortran.dg/coarray_15.f90: Adjust test.
* gfortran.dg/namelist_65.f90: Adjust test.
* gfortran.dg/fmt_cache_1.f: Adjust test.
* gfortran.dg/char4_iunit_2.f03: Adjust test.
* gfortran.dg/real_const_3.f90: Adjust test.
From-SVN: r173168
|
|
of the result.
2011-04-29 Richard Guenther <rguenther@suse.de>
* builtins.c (fold_builtin_classify_type): Use integer_type_node
for the type of the result.
(fold_builtin_isascii): Likewise.
(fold_builtin_toascii): Use integer_type_node where appropriate.
(fold_builtin_logb): Likewise.
(fold_builtin_frexp): Likewise.
(fold_builtin_strstr): Likewise.
(fold_builtin_strpbrk): Likewise.
(fold_builtin_fputs): Likewise.
(fold_builtin_sprintf): Likewise.
(fold_builtin_snprintf): Likewise.
(fold_builtin_printf): Likewise.
(do_mpfr_remquo): Use a proper type for the assigned constant.
(do_mpfr_lgamma_r): Likewise.
* dwarf2out.c (resolve_one_addr): Use size_int.
* except.c (init_eh): Likewise.
(assign_filter_values): Use integer_type_node for filter values.
(sjlj_emit_dispatch_table): Use integer_type_node for dispatch
indices.
* tree-cfg.c (move_stmt_eh_region_tree_nr): Use integer_type_node
for EH region numbers.
* tree-vrp.c (simplify_div_or_mod_using_ranges): Use integer_type_node
for the shift amount.
From-SVN: r173167
|
|
2011-04-29 Richard Guenther <rguenther@suse.de>
* expr.h (expand_shift): Rename to ...
(expand_variable_shift): ... this.
(expand_shift): Take a constant shift amount.
* expmed.c (expand_shift): Rename to ...
(expand_variable_shift): ... this.
(expand_shift): New wrapper around expand_variable_shift.
* expr.c (convert_move, emit_group_load_1, emit_group_store,
optimize_bitfield_assignment_op, store_field, expand_expr_real_2,
expand_expr_real_1, reduce_to_bit_field_precision): Adjust.
* expmed.c (store_fixed_bit_field, extract_bit_field_1,
extract_fixed_bit_field, extract_split_bit_field, expand_mult_const,
expand_mult, expand_widening_mult, expand_mult_highpart_adjust,
extract_high_half, expand_sdiv_pow2, expand_divmod, emit_cstore,
emit_store_flag_1, emit_store_flag): Likewise.
* builtins.c (expand_builtin_signbit): Likewise.
* calls.c (load_register_parameters): Likewise.
* function.c (assign_parm_setup_block): Likewise.
* lower-subreg.c (resolve_shift_zext): Likewise.
* optabs.c (widen_bswap, expand_abs_nojump,
expand_one_cmpl_abs_nojump, expand_float): Likewise.
* spu/spu.c (spu_expand_extv): Likewise.
* sparc/sparc.c (sparc32_initialize_trampoline): Likewise.
From-SVN: r173157
|
|
remapped region number.
2011-04-29 Richard Guenther <rguenther@suse.de>
* tree-inline.c (remap_eh_region_tree_nr): Use integer_type_node
for the remapped region number.
* predict.c (build_predict_expr): Use integer_type_node for the
predict kind.
* fold-const.c (fold_binary_loc): Use integer_type_node for
the shift amount. Use a proper type for the PLUS_EXPR operand.
From-SVN: r173156
|
|
that just builtins.
* lto-streamer.c (lto_streamer_cache_insert_1): Accept to override
other trees that just builtins.
(lto_record_common_node): Don't leave NULL TYPE_CANONICAL.
lto/
* lto.c (toplevel): Include tree-flow.h.
(lto_read_in_decl_state): Don't merge types here.
(tree_with_vars): New static hash table.
(remember_with_vars): New static functions.
(LTO_FIXUP_TYPE): New macro.
(lto_ft_common, lto_ft_decl_minimal, lto_ft_decl_common,
lto_ft_decl_with_vis, lto_ft_decl_non_common, lto_ft_function,
lto_ft_field_decl, lto_ft_type, lto_ft_binfo, lto_ft_constructor,
lto_ft_expr, lto_fixup_types, uniquify_nodes): New static functions.
(lto_read_decls): Uniquify while reading in trees.
(lto_fixup_data_t, LTO_FIXUP_SUBTREE,
LTO_REGISTER_TYPE_AND_FIXUP_SUBTREE, no_fixup_p, lto_fixup_common,
lto_fixup_decl_minimal, lto_fixup_decl_common, lto_fixup_decl_with_vis,
lto_fixup_decl_non_common, lto_fixup_function, lto_fixup_field_decl,
lto_fixup_type, lto_fixup_binfo, lto_fixup_constructor,
lto_fixup_tree): Remove.
(lto_fixup_state): Remove data argument. Use
lto_symtab_prevailing_decl.
(LTO_SET_PREVAIL, LTO_NO_PREVAIL): New macros.
(lto_fixup_prevailing_decls): New function.
(lto_fixup_state_aux): Argument aux is unused.
(lto_fixup_decls): Don't allocate pointer sets, don't use
lto_fixup_tree, use lto_fixup_prevailing_decls.
(read_cgraph_and_symbols): Allocate and remove tree_with_vars.
* Make-lang.in (lto/lto.o): Depend on $(TREE_FLOW_H).
From-SVN: r173155
|
|
ada/
* gcc-interface/misc.c (gnat_handle_option): Set
warn_maybe_uninitialized.
fortran/
* options.c (options.c): Set warn_maybe_uninitialized.
From-SVN: r173154
|
|
2011-04-29 Richard Guenther <rguenther@suse.de>
* tree-nested.c (get_trampoline_type): Use size_int.
(get_nl_goto_field): Likewise.
* tree-eh.c (lower_try_finally_switch): Use integer_type_node
for all indexes.
(lower_eh_constructs_2): Likewise.
(lower_resx): Likewise.
(lower_eh_dispatch): Likewise.
* tree-mudflap.c (mf_build_string): Use size_int.
(mudflap_register_call): Use integer_type_node for the flag.
(mudflap_enqueue_constant): Use size_int.
* tree-chrec.c (reset_evolution_in_loop): Copy CHREC_VAR
instead of rebuilding it.
From-SVN: r173153
|
|
2011-04-29 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (get_fi_for_callee): Restructure.
Handle OBJ_TYPE_REF.
(find_func_aliases_for_call): Use it more consistently.
From-SVN: r173152
|
|
* haifa-sched.c (last_nondebug_scheduled_insn): New.
(rank_for_schedule): Use it.
(schedule_block): Set it.
From-SVN: r173150
|
|
From-SVN: r173147
|
|
From-SVN: r173146
|
|
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
unspec plus offset. Tidy macho code.
From-SVN: r173141
|
|
of a decl.
2011-04-29 Martin Jambor <mjambor@suse.cz>
* cgraphunit.c (cgraph_preserve_function_body_p): Accept a cgraph
node instead of a decl. Update all callers.
* cgraph.h: Update declaration.
From-SVN: r173138
|
|
From-SVN: r173135
|
|
PR tree-optimization/48765
* tree-vectorizer.h (vect_make_slp_decision): Return bool.
* tree-vect-loop.c (vect_analyze_loop_operations): Add new
argument to indicate if loop aware SLP is being used. Scan
the statements and update the vectorization factor
according to the type of
vectorization before statement analysis.
(vect_analyze_loop_2): Get a return value from
vect_make_slp_decision, pass it to
vect_analyze_loop_operations.
(vectorizable_reduction): Set number of copies to 1 in case of
pure SLP statement.
* tree-vect-stmts.c (vectorizable_conversion,
vectorizable_assignment, vectorizable_shift,
vectorizable_operation, vectorizable_type_demotion,
vectorizable_type_promotion, vectorizable_store,
vectorizable_load): Likewise.
(vectorizable_condition): Move the check that it is not SLP
vectorization before the number of copies check.
* tree-vect-slp.c (vect_make_slp_decision): Return TRUE if
decided to vectorize the loop using SLP.
From-SVN: r173132
|
|
From-SVN: r173128
|
|
PR tree-optimization/48775
* gcc.dg/pr48616.c: Also add -fno-common on alpha*-dec-osf*.
From-SVN: r173125
|
|
/cp
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48798
* semantics.c (finish_base_specifier): cv-qualified base class
is fine, per DR 484.
/testsuite
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48798
* g++.dg/inherit/pr48798.C: New.
* g++.old-deja/g++.other/base1.C: Adjust.
From-SVN: r173124
|
|
Fix PR c++/48656
gcc/cp/
* semantics.c (finish_call_expr): Don't forget BASELINK nodes when
considering call expressions involving a member function.
gcc/testsuite/
* gcc/testsuite/g++.dg/template/inherit7.C: New test case.
From-SVN: r173123
|
|
half-register write?)
PR middle-end/48597
* final.c (final_scan_insn): Call dwarf2out_frame_debug even for
inline asm.
From-SVN: r173120
|
|
*-*-kopensolaris*-gnu): Don't define SINGLE_LIBC.
(i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu): Don't use
linux*.h headers.
* config/gnu-user.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
Define.
* config/i386/gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
* config/i386/kfreebsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
* config/i386/knetbsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
* config/i386/kopensolaris-gnu.h (MD_UNWIND_SUPPORT): Don't
undefine.
* config/i386/linux-unwind.h (x86_fallback_frame_state): Don't use
REG_NAME.
* config/i386/linux.h (REG_NAME): Don't define.
* config/i386/linux64.h (REG_NAME): Don't define.
* config/linux.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
Undefine before defining.
From-SVN: r173119
|
|
nonconstant_names array.
* ipa-inline-analysis.c (will_be_nonconstant_predicate): Take nonconstant_names
array.
(estimate_function_body_sizes): Build nonconstant_names array; handle
BUILT_IN_CONSTANT_P.
From-SVN: r173070
|
|
2011-04-28 Richard Guenther <rguenther@suse.de>
PR bootstrap/48804
Revert
2011-04-28 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (solve_constraints): Build succ graph
as late as possible.
From-SVN: r173067
|
|
types: (x | 1) --> 1)
2011-04-28 Richard Guenther <rguenther@suse.de>
PR tree-optimization/40052
PR tree-optimization/15347
* gcc.dg/tree-ssa/vrp57.c: New testcase.
* gcc.dg/pr15347.c: Likewise.
From-SVN: r173064
|
|
/cp
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48530
* tree.c (build_cplus_new): Check build_target_expr return
value for error_mark_node.
/testsuite
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48530
* g++.dg/cpp0x/sfinae18.C: New.
From-SVN: r173063
|
|
non-literal types)
/cp
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48771
* semantics.c (literal_type_p): Reference types are literal types,
per the FDIS.
(valid_type_in_constexpr_fundecl_p): Remove.
(is_valid_constexpr_fn): Adjust.
/testsuite
2011-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/48771
* g++.dg/ext/is_literal_type1.C: New.
From-SVN: r173062
|
|
2011-04-28 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (dump_constraint): Don't end the line.
(debug_constraint): Do it here.
(dump_constraints): And here.
(rewrite_constraints): And here.
(dump_constraint_edge): Remove.
(dump_constraint_graph): Rewrite to produce DOT output.
(solve_constraints): Build succ graph as late as possible.
Dump constraint graphs before and after solving.
From-SVN: r173061
|
|
split out from ...
2011-04-28 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
New function split out from ...
(find_func_aliases): ... here. Call it.
(find_func_aliases_for_call): Likewise.
From-SVN: r173060
|
|
2011-04-28 Tobias Burnus <burnus@net-b.de>
PR fortran/48112
* resolve.c (resolve_fl_var_and_proc): Print diagnostic of
function results only once.
(resolve_symbol): Always resolve function results.
PR fortran/48279
* expr.c (gfc_check_vardef_context): Fix handling of generic
EXPR_FUNCTION.
* interface.c (check_interface0): Reject internal functions
in generic interfaces, unless -std=gnu.
2011-04-28 Tobias Burnus <burnus@net-b.de>
PR fortran/48112
PR fortran/48279
* gfortran.dg/interface_35.f90: New.
* gfortran.dg/erfc_scaled_1.f90: Don't compile with -pedantic.
* gfortran.dg/func_result_6.f90: Add dg-warning.
* gfortran.dg/bessel_1.f90: Ditto.
* gfortran.dg/hypot_1.f90: Ditto.
* gfortran.dg/proc_ptr_comp_20.f90: Ditto.
* gfortran.dg/proc_ptr_comp_21.f90: Ditto.
* gfortran.dg/interface_assignment_4.f90: Ditto.
From-SVN: r173059
|
|
PR libstdc++/48760
Implement list-initialization of _Complex.
* decl.c (reshape_init_r): Allow {real,imag} for _Complex.
(check_initializer): Likewise.
* call.c (build_complex_conv): New.
(implicit_conversion): Call it.
(convert_like_real): Handle it.
* typeck2.c (check_narrowing): Handle it.
From-SVN: r173058
|
|
whether to delete.
* init.c (build_vec_delete_1): Look for sfk_deleting_destructor to
decide whether to delete.
(build_vec_init): Pass sfk_complete_destructor.
From-SVN: r173057
|
|
PR c++/40975
* cp-tree.def (VEC_INIT_EXPR): Add third operand.
* cp-tree.h (VEC_INIT_EXPR_NELTS): New.
* cp-gimplify.c (cp_gimplify_expr) [VEC_INIT_EXPR]: Handle it.
* tree.c (build_vec_init_expr): Handle getting pointer/nelts.
(build_vec_init_elt): Don't expect an array type.
(build_array_copy): Adjust.
* init.c (perform_member_init): Adjust.
(build_new_1): Use build_vec_init_expr.
From-SVN: r173056
|
|
* internal-fn.h (internal_fn_name_array): Declare.
(internal_fn_flags_array): Likewise.
From-SVN: r173055
|
|
From-SVN: r173054
|
|
(resolve.c:2190) on invalid (?) fortran code)
2011-04-27 Tobias Burnus <burnus@net-b.de>
PR fortran/48788
* resolve.c (resolve_global_procedure): Error recovery -
avoid segfault for (non)character-returning functions.
2011-04-27 Tobias Burnus <burnus@net-b.de>
PR fortran/48788
* gfortran.dg/whole_file_34.f90: New.
From-SVN: r173048
|
|
ssescalarmodesuffix and avxmodesuffixp.
* config/i386/i386.md (ssemodesuffix): Merge with ssevecsize,
ssemodefsuffix, ssescalarmodesuffix and avxmodesuffixp.
Move from sse.md.
(ssemodefsuffix): Remove.
(ssevecmodesuffix): New mode attribute.
(fix_trunc<mode>di_sse, fix_trunc<mode>si_sse,
*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit,
*float<SSEMODEI24:mode><MODEF:mode>2_mixed_nointerunit,
*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit,
*float<SSEMODEI24:mode><MODEF:mode>2_sse_nointerunit, setcc_<mode>_sse,
*sqrt<mode>2_sse, sse4_1_round<mode>2, <smaxmin:code><mode>3,
*ieee_smin<mode>3, *ieee_smax<mode>3): Adjust assembler templates for
ssemodesuffix mode attribute.
(float splitters): Use ssevecmodesuffix mode attribute.
* config/i386/sse.md (ssescalarmode): Merge with avxscalarmode.
(sseinsmode): Rename from avxvecmode.
(avxsizesuffix): Rename from avxmodesuffix.
(sseintvecmode): Rename from avxpermvecmode.
(ssedoublevecmode): Rename from ssedoublesizemode.
(ssehalfvecmode): Rename from avxhalfvecmode.
(ssescalarmode): Rename from avxscalarmode.
(<sse>_comi, <sse>_ucomi, sse4a_movnt<mode>): Adjust assembler
templates for ssemodesuffix mode attribute.
(*andnot<mode>3, *<any_logic:code><mode>3): Use ssevecmodesuffix
mode attribute.
Adjust RTX patterns globally for renamed mode attributes.
From-SVN: r173043
|
|
* testsuite/gcc.dg/tree-ssa/inline-9.c: New testcase.
* ipa-inline.h (struct inline_edge_summary): Add predicate pointer.
* ipa-inline-analysis.c: Include alloc-pool.h.
(edge_predicate_pool): New.
(trye_predicate_p): New function
(false_predicate_p): New function.
(add_clause): Sanity check that false clauses are "optimized";
never add clauses to predicate that is already known to be false.
(and_predicate): Use flase_predicate_p.
(evaulate_predicate): Rename to ...
(evaluate_predicate): ... this one; update all callers; assert
that false is not listed among possible truths.
(dump_predicate): Use true_predicate_p.
(account_size_time): Use false_predicate_p.
(evaulate_conditions_for_edge): Rename to ...
(evaluate_conditions_for_edge) ... this one.
(edge_set_predicate): New function.
(inline_edge_duplication_hook): Duplicate edge predicates.
(inline_edge_removal_hook): Free edge predicates.
(dump_inline_edge_summary): Add INFO parameter; dump
edge predicates.
(dump_inline_summary): Update.
(estimate_function_body_sizes): Set edge predicates.
(estimate_calls_size_and_time): Handle predicates.
(estimate_callee_size_and_time): Update.
(remap_predicate): Add toplev_predicate; update comment.
(remap_edge_predicates): New function.
(inline_merge_summary): Compute toplev predicate; update.
(read_predicate): New function.
(read_inline_edge_summary): Use it.
(inline_read_section): Likewise.
(write_predicate): New function.
(write_inline_edge_summary): Use it.
(inline_write_summary): Likewise.
(inline_free_summary): Free alloc pool and edge summary vec.
From-SVN: r173042
|
|
2011-04-27 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (changed_count): Remove.
(changed): Use a bitmap.
(unify_nodes): Adjust.
(do_sd_constraint): Likewise.
(do_ds_constraint): Likewise.
(do_complex_constraint): Likewise.
(solve_graph): Likewise.
From-SVN: r173040
|
|
From-SVN: r173039
|
|
TREE_LIST.
* class.c (resolve_address_of_overloaded_function): Don't
change OVERLOAD to TREE_LIST.
* pt.c (print_candidates_1): Remove nonsensical assert.
From-SVN: r173037
|
|
given for function-local static declaration)
PR c++/48046
* parser.c (cp_parser_diagnose_invalid_type_name): Commit
to tentative parse sooner.
From-SVN: r173036
|
|
* gcc.dg/20020312-2.c: Add definition for RX.
* lib/target-supports.exp (add_options_for_ieee): Use -mnofpu
option with RX targets.
* gcc.target/rx/pack.c: Replace C++ style // comments with C style
/* */ comments.
From-SVN: r173034
|
|
* config/i386/predicates.md (avx_vpermilp_*_operand): Remove.
(avx_vperm2f128_*_operand): Ditto.
* config/i386/sse.md (*avx_vpermilp<mode>): Remove operand2 predicate.
Use avx_vpermilp_parallel in insn condition.
(*avx_vperm2f128<mode>_nozero): Remove operand3 predicate.
Use avx_vperm2f128_parallel in insn condition.
From-SVN: r173031
|
|
dependency.
2011-04-27 Richard Guenther <rguenther@suse.de>
* Makefile.in (tree-ssa-structalias.o): Remove
gt-tree-ssa-structalias.h dependency.
(GTFILES): Remove tree-ssa-structalias.c.
* tree.c (allocate_decl_uid): New function.
(make_node_stat): Use it.
(copy_node_stat): Likewise.
* tree.h (allocate_decl_uid): Declare.
* tree-ssa-alias.h (delete_alias_heapvars): Remove.
* tree-ssa.c (delete_tree_ssa): Do not call delete_alias_heapvars.
* tree-flow.h (struct var_ann_d): Remove is_heapvar flag.
* tree-ssa-live.c (remove_unused_locals): Do not check is_heapvar
flag.
* tree-ssa-structalias.c (heapvar_for_stmt): Remove.
(struct heapvar_map): Likewise.
(heapvar_map_eq, heapvar_map_hash, heapvar_lookup,
heapvar_insert): Likewise.
(make_heapvar_for): Rename to ...
(make_heapvar): ... this. Simplify.
(fake_var_decl_obstack): New global var.
(build_fake_var_decl): New function.
(make_constraint_from_heapvar): Adjust.
(handle_lhs_call): Likewise.
(create_function_info_for): Likewise.
(intra_create_variable_infos): Likewise.
(init_alias_vars): Allocate fake_var_decl_obstack.
(init_alias_heapvars, delete_alias_heapvars): Remove.
(compute_points_to_sets): Do not call init_alias_heapvars.
(ipa_pta_execute): Likewise.
(delete_points_to_sets): Free fake_var_decl_obstack.
* gcc.dg/tree-ssa/pr23382.c: Remove.
From-SVN: r173030
|
|
* config/spu/divmovti4.c (union qword_UTItype): New data type.
(si_from_UTItype, si_to_UTItype): New functions.
(__udivmodti4): Use them to implement type-punning.
* config/spu/multi3.c (union qword_TItype): New data type.
(si_from_TItype, si_to_TItype): New functions.
(__multi3): Use them to implement type-punning.
From-SVN: r173029
|
|
From-SVN: r173028
|
|
* ipa-prop.c (function_insertion_hook_holder): New holder.
(ipa_add_new_function): New function.
(ipa_register_cgraph_hooks, ipa_unregister_cgraph_hooks): Register/deregister
holder.
From-SVN: r173026
|
|
* gcc.c-torture/compile/pr48767.c: New test.
From-SVN: r173020
|
|
(gimple.h:1100) with -O -fnon-call-exceptions -fno-tree-ccp -fno-tree-dce)
2011-04-27 Richard Guenther <rguenther@suse.de>
PR tree-optimization/48772
* tree-ssa-pre.c (eliminate): Update call stmts after elimination
only.
* g++.dg/pr48772.C: New testcase.
From-SVN: r173019
|