gcc.git
10 years agotree-ssa-phiopts.c (rhs_is_fed_for_value_replacement): New function.
Zhenqiang Chen [Wed, 9 Oct 2013 18:57:14 +0000 (18:57 +0000)]
tree-ssa-phiopts.c (rhs_is_fed_for_value_replacement): New function.

* tree-ssa-phiopts.c (rhs_is_fed_for_value_replacement): New function.
(operand_equal_for_value_replacement): New function, extracted from
value_replacement and enhanced to catch more cases.
(value_replacement): Use operand_equal_for_value_replacement.

* gcc.dg/tree-ssa/phi-opt-11.c: New test.

From-SVN: r203327

10 years ago58659.cc: Use VERIFY instead of aborting.
Jonathan Wakely [Wed, 9 Oct 2013 18:37:26 +0000 (18:37 +0000)]
58659.cc: Use VERIFY instead of aborting.

* testsuite/20_util/shared_ptr/cons/58659.cc: Use VERIFY instead of
aborting.

From-SVN: r203325

10 years agoloop-doloop.c (doloop_modify, [...]): Use get_max_loop_iterations.
Andrew MacLeod [Wed, 9 Oct 2013 15:35:46 +0000 (15:35 +0000)]
loop-doloop.c (doloop_modify, [...]): Use get_max_loop_iterations.

* loop-doloop.c (doloop_modify, doloop_optimize): Use
get_max_loop_iterations.

From-SVN: r203324

10 years agore PR c++/58635 ([c++11] ICE with __transaction_atomic and noexcept(false))
Marek Polacek [Wed, 9 Oct 2013 14:51:28 +0000 (14:51 +0000)]
re PR c++/58635 ([c++11] ICE with __transaction_atomic and noexcept(false))

PR c++/58635
cp/
* semantics.c (finish_return_stmt): Return error_mark_node
when error_operand_p of the expr is true.
(build_transaction_expr): Check for EXPR_P before setting the
expr location.
testsuite/
* g++.dg/tm/pr58635-1.C: New test.
* g++.dg/tm/pr58635-2.C: New test.

From-SVN: r203323

10 years agoaarch-common.c (arm_early_load_addr_dep): Place comment above function.
Kyrylo Tkachov [Wed, 9 Oct 2013 14:27:47 +0000 (14:27 +0000)]
aarch-common.c (arm_early_load_addr_dep): Place comment above function.

[gcc/]
2013-10-09  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/aarch-common.c (arm_early_load_addr_dep):
Place comment above function.

From-SVN: r203322

10 years agoFix unprototyped abort() introduced in libstdc++/58659.cc testcase.
Marcus Shawcroft [Wed, 9 Oct 2013 14:26:52 +0000 (14:26 +0000)]
Fix unprototyped abort() introduced in libstdc++/58659.cc testcase.

From-SVN: r203321

10 years agotree-flow.h: Remove all remaining prototypes...
Andrew MacLeod [Wed, 9 Oct 2013 14:11:30 +0000 (14:11 +0000)]
tree-flow.h: Remove all remaining prototypes...

* tree-flow.h: Remove all remaining prototypes, enums and structs that
are not related to tree-cfg.c.
* tree-ssa-address.h: New file.  Relocate prototypes.
* tree-ssa-address.c: (struct mem_address): Relocate from tree-flow.h.
(addr_for_mem_ref): New.  Combine call to get_address_description and
return addr_for_mem_ref.
* expr.c (expand_expr_real_1): Use new addr_for_mem_ref routine.
* tree-ssa-live.h: Adjust prototypes.
* passes.c: Include tree-ssa-live.h.
* gimple-pretty-print.h (gimple_dump_bb): Add prototype.
* graphite.c (graphite_transform_loops): Make static.
(graphite_transforms, gate_graphite_transforms, pass_data_graphite,
make_pass_graphite, pass_data_graphite_transforms,
make_pass_graphite_transforms): Relocate here from tree-ssa-loop.c.
* ipa-pure-const.c (warn_function_noreturn): Make static.
(execute_warn_function_noreturn, gate_warn_function_noreturn,
class pass_warn_function_noreturn, make_pass_warn_function_noreturn):
Relocate from tree-cfg.c
* tree-cfg.c (tree_node_can_be_shared, gimple_empty_block_p): Make
static.
(execute_warn_function_noreturn, gate_warn_function_noreturn,
class pass_warn_function_noreturn, make_pass_warn_function_noreturn):
Move to ipa-pure-const.c.
(execute_fixup_cfg, class pass_fixup_cfg, make_pass_fixup_cfg): Relocate
from tree-optimize.c.
* tree-optimize.c (execute_fixup_cfg, class pass_fixup_cfg,
make_pass_fixup_cfg): Move to tree-cfg.c.
* tree-chrec.h: (enum ev_direction): Relocate here from tree-flow.h.
Relocate some prototypes.
* tree-data-ref.h (tree_check_data_deps) Add prototype.
* tree-dump.c (dump_function_to_file): Remove prototype.
Add tree-flow.h to the include file.
* tree-dump.h: Remove prototype.
* tree-parloops.h: New File.  Add prototypes.
* tree-parloops.c (gate_tree_parallelize_loops, tree_parallelize_loops,
pass_data_parallelize_loops,  make_pass_parallelize_loops): Relocate
from tree-ssa-loop.c.
* tree-predcom.c (run_tree_predictive_commoning,
gate_tree_predictive_commoning, pass_data_predcom, make_pass_predcom):
Relocate here from tree-ssa-loop.c.
* tree-ssa-dom.c (tree_ssa_dominator_optimize) Don't call
ssa_name_values.release ().
* tree-ssa-threadedge.h: New File.  Relocate prototypes here.
(ssa_name_values): Relocate from tree-flow.h.
* tree-ssa.h: Include tree-ssa-threadedge.h and tree-ssa-address.h.
* tree-ssa-loop.c (run_tree_predictive_commoning,
gate_tree_predictive_commoning, pass_data_predcom, make_pass_predcom,
graphite_transforms, gate_graphite_transforms, pass_data_graphite,
make_pass_graphite, pass_data_graphite_transforms,
make_pass_graphite_transforms, gate_tree_parallelize_loops,
tree_parallelize_loops, pass_data_parallelize_loops,
make_pass_parallelize_loops): Move to other files.
* tree-vectorizer.h (lpeel_tree_duplicate_loop_to_edge_cfg): Prototype
moved here.
* tree.h: Remove prototypes from tree-address.c.

From-SVN: r203320

10 years ago* gcc.dg/vect/bb-slp-31.c: Add cleanup-tree-dump.
Jakub Jelinek [Wed, 9 Oct 2013 13:55:59 +0000 (15:55 +0200)]
* gcc.dg/vect/bb-slp-31.c: Add cleanup-tree-dump.

From-SVN: r203319

10 years agotree-flow.h (tm_restart_node, gimple_df): Move to gimple-ssa.h.
Andrew MacLeod [Wed, 9 Oct 2013 13:42:17 +0000 (13:42 +0000)]
tree-flow.h (tm_restart_node, gimple_df): Move to gimple-ssa.h.

* tree-flow.h (tm_restart_node, gimple_df): Move to gimple-ssa.h.
(struct int_tree_map): Move to tree-hasher.h
(SCALE, LABEL, PERCENT): Move to gimple.h
* tree-flow-inline.h: Delete.  Move functions to other files.
(unmodifiable_var_p, ref_contains_array_ref): Unused, so delete.
* gimple-ssa.h (tm_restart_node, gimple_df): Relocate from tree-flow.h.
(gimple_in_ssa_p, gimple_vop): Relocate from tree-flow-inline.h
* gimple.h (imple_stmt_max_uid, set_gimple_stmt_max_uid,
inc_gimple_stmt_max_uid, get_lineno): Relocate from tree-flow-inline.h.
(SCALE, LABEL, PERCENT): Relocate from tree-flow.h
* tree-hasher.h: Don't include tree-flow.h.
(struct int_tree_map): Relocate from tree-flow.h.
* tree-sra.c (contains_view_convert_expr_p): Relocate from
tree-flow-inline.h and make static.
* tree-ssa-alias.h (ranges_overlap_p): Relocate from tree-flow-inline.h.
* tree-ssa-operands.c (gimple_ssa_operands): Relocate from
tree-flow-inline.h and make static.
* tree.h (is_global_var, may_be_aliased): Relocate from
tree-flow-inline.h.
* Makefile.in (GTFILES): Remove tree-flow.h and add gimple-ssa.h.
* value-prof.c: No longer include tree-flow-inline.h.
* tree-switch-conversion.c: No longer include tree-flow-inline.h.

From-SVN: r203318

10 years agotree-flow.h: Move some protoypes.
Andrew MacLeod [Wed, 9 Oct 2013 13:09:23 +0000 (13:09 +0000)]
tree-flow.h: Move some protoypes.

* tree-flow.h: Move some protoypes.  Include new tree-ssa-loop.h.
(struct affine_iv, struct tree_niter_desc): Move to tree-ssa-loop.h.
(enum move_pos): Move to tree-ssa-loop-im.h
* cfgloop.h: Move some prototypes.
(gcov_type_to_double_int): relocate from tree-ssa-loop.niter.c.
* tree-flow-inline.h (loop_containing_stmt): Move to tree-ssa-loop.h.
* tree-ssa-loop.h: New File.  Include other tree-ssa-loop-*.h files.
(struct affine_iv, struct tree_niter_desc): Relocate from tree-flow.h.
(loop_containing_stmt): Relocate from tree-flow-inline.h.
* tree-ssa-loop-ch.c: (do_while_loop_p): Make static.
* tree-ssa-loop-im.c (for_each_index): Move to tree-ssa-loop.c.
(enum move_pos): Relocate here.
(lsm_tmp_name_add, gen_lsm_tmp_name, get_lsm_tmp_name): Move to
tree-ssa-loop.c.
(execute_sm_if_changed_flag_set): Change get_lsm_tmp_name call.
(tree_ssa_loop_im, gate_tree_ssa_loop_im, pass_data_lim, make_pass_lim):
Relocate here from tree-ssa-loop.c.
* tree-ssa-loop-ivcanon.c (tree_num_loop_insns): Move to
tree-ssa-loop.c.
(loop_edge_to_cancel, unloop_loops): Make static.
(tree_ssa_loop_ivcanon, gate_tree_ssa_loop_ivcanon, pass_data_iv_canon,
make_pass_iv_canon): Relocate from tree-ssa-loop.c.
(tree_complete_unroll, gate_tree_complete_unroll,
pass_data_complete_unroll, make_pass_complete_unroll): Relocate here.
(tree_complete_unroll_inner, gate_tree_complete_unroll_inner,
pass_data_complete_unrolli, make_pass_complete_unrolli): Relocate here.
* tree-ssa-loop-ivopts.c: Remove local prototypes.
(stmt_invariant_in_loop_p): Remove unused function.
* tree-ssa-loop-ivopts.h: New file.  Add prototypes.
* tree-ssa-loop-manip.h: New file.  Add prototypes.
* tree-ssa-loop-niter.c (record_niter_bound): Move to cfgloop.c.
(gcov_type_to_double_int): Move to cfgloop.h.
(double_int_cmp, bound_index,
estimate_numbers_of_iterations_loop): Make static.
(estimated_loop_iterations): Factor out get_estimated_loop_iterations.
(max_loop_iterations): Factor out get_max_loop_iterations.
(estimated_loop_iterations_int, max_stmt_executions_int): Move to
cfgloop.c.
* tree-ssa-loop-niter.h: New file.  Add prototypes.
* tree-ssa-loop-prefetch.c (tree_ssa_loop_prefetch,
gate_tree_ssa_loop_prefetch, pass_data_loop_prefetch,
make_pass_loop_prefetch): Relocate from tree-ssa-loop.c.
* tree-ssa-loop-unswitch.c (tree_ssa_loop_unswitch,
gate_tree_ssa_loop_unswitch, pass_data_tree_unswitch,
make_pass_tree_unswitch): Relocate from tree-ssa-loop.c.
* tree-ssa-loop.c (tree_ssa_loop_im, gate_tree_ssa_loop_im,
pass_data_lim, make_pass_lim): Move to tree-ssa-loop-im.c.
(tree_ssa_loop_unswitch, gate_tree_ssa_loop_unswitch,
pass_data_tree_unswitch, make_pass_tree_unswitch): Move.
(tree_ssa_loop_ivcanon, gate_tree_ssa_loop_ivcanon, pass_data_iv_canon,
make_pass_iv_canon, tree_complete_unroll, gate_tree_complete_unroll,
pass_data_complete_unroll, make_pass_complete_unroll,
tree_complete_unroll_inner, gate_tree_complete_unroll_inner,
pass_data_complete_unrolli, make_pass_complete_unrolli): Move to
tree-ssa-loop-ivcanon.c.
(tree_ssa_loop_prefetch, gate_tree_ssa_loop_prefetch,
pass_data_loop_prefetch, make_pass_loop_prefetch): Move to
tree-ssa-loop-prefetch.c.
(for_each_index, lsm_tmp_name_add, gen_lsm_tmp_name): Relocate from
tree-ssa-loop-im.c.
(get_lsm_tmp_name): Relocate and add suffix parameter.
(tree_num_loop_insns): Relocate from tree-ssa-ivcanon.c.
* tree-scalar-evolution.h (simple_iv): Don't use affive_iv typedef.
* cfgloop.c (record_niter_bound, estimated_loop_iterations_int,
max_stmt_executions_int): Move from tree-ssa-loop-niter.c.
(get_estimated_loop_iterations): Factor out accessor from
estimated_loop_iterations in tree-ssa-loop-niter.c.
(get_max_loop_iterations): Factor out accessor from _max_loop_iterations
in tree-ssa-niter.c.
* loop-unroll.c (decide_unroll_constant_iterations,
decide_unroll_runtime_iterations, decide_peel_simple,
decide_unroll_stupid): Use new get_* accessors.

From-SVN: r203317

10 years agore PR c/20318 (RFE: add attribute to specify that a function never returns NULL)
Marc Glisse [Wed, 9 Oct 2013 13:03:13 +0000 (15:03 +0200)]
re PR c/20318 (RFE: add attribute to specify that a function never returns NULL)

2013-10-09  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/20318
gcc/c-family/
* c-common.c (handle_returns_nonnull_attribute): New function.
(c_common_attribute_table): Add returns_nonnull.

gcc/
* doc/extend.texi (returns_nonnull): New function attribute.
* fold-const.c (tree_expr_nonzero_warnv_p): Look for returns_nonnull
attribute.
* tree-vrp.c (gimple_stmt_nonzero_warnv_p): Likewise.
(stmt_interesting_for_vrp): Accept all GIMPLE_CALL.

gcc/testsuite/
* c-c++-common/pr20318.c: New file.
* gcc.dg/tree-ssa/pr20318.c: New file.

From-SVN: r203316

10 years agore PR middle-end/58570 (wrong code for bitfields at -O2 and above)
Eric Botcazou [Wed, 9 Oct 2013 12:59:02 +0000 (12:59 +0000)]
re PR middle-end/58570 (wrong code for bitfields at -O2 and above)

PR middle-end/58570
* tree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p): Return
false if both components are bitfields.

From-SVN: r203315

10 years ago[AArch64] Implement vclz ADVSimd intrinsic.
Alex Velenko [Wed, 9 Oct 2013 12:09:11 +0000 (12:09 +0000)]
[AArch64] Implement vclz ADVSimd intrinsic.

From-SVN: r203314

10 years ago[AArch64] Implement vadd_f64 and vsub_f64 ADVSimd intrinsics.
Alex Velenko [Wed, 9 Oct 2013 11:59:38 +0000 (11:59 +0000)]
[AArch64] Implement vadd_f64 and vsub_f64 ADVSimd intrinsics.

From-SVN: r203313

10 years ago[AArch64] Implemented vdiv_f64 ADVSimd intrinsic.
Alex Velenko [Wed, 9 Oct 2013 11:51:15 +0000 (11:51 +0000)]
[AArch64] Implemented vdiv_f64 ADVSimd intrinsic.

From-SVN: r203312

10 years ago[AArch64] vneg ADVSimd intrinsics rewritten in C.
Alex Velenko [Wed, 9 Oct 2013 11:05:15 +0000 (11:05 +0000)]
[AArch64] vneg ADVSimd intrinsics rewritten in C.

From-SVN: r203310

10 years agoarm.c (arm_output_mi_thunk): Use plus_constant.
Renlin Li [Wed, 9 Oct 2013 10:51:39 +0000 (10:51 +0000)]
arm.c (arm_output_mi_thunk): Use plus_constant.

[gcc/]
2013-10-09  Renlin Li  <Renlin.Li@arm.com>

* config/arm/arm.c (arm_output_mi_thunk): Use plus_constant.

From-SVN: r203309

10 years agos390.c (s390_register_info_stdarg_fpr): Remove packed stack special handling.
Andreas Krebbel [Wed, 9 Oct 2013 07:24:35 +0000 (07:24 +0000)]
s390.c (s390_register_info_stdarg_fpr): Remove packed stack special handling.

2013-10-09  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_register_info_stdarg_fpr): Remove
packed stack special handling.
(s390_frame_info, s390_emit_prologue, s390_emit_epilogue): Switch
back to fixed stack slots for FPRs saved due to stdarg.

From-SVN: r203305

10 years agos390.c (s390_frame_info): Restructure function.
Andreas Krebbel [Wed, 9 Oct 2013 07:23:53 +0000 (07:23 +0000)]
s390.c (s390_frame_info): Restructure function.

2013-10-09  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_frame_info): Restructure function.

From-SVN: r203304

10 years agos390.c (struct s390_frame_layout): New field gpr_save_slots.
Andreas Krebbel [Wed, 9 Oct 2013 07:22:52 +0000 (07:22 +0000)]
s390.c (struct s390_frame_layout): New field gpr_save_slots.

2013-10-09  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (struct s390_frame_layout): New field
gpr_save_slots.
(cfun_save_arg_fprs_p, cfun_gpr_save_slot): New macros.
(s390_reg_clobbered_rtx, s390_regs_ever_clobbered): Change type of
regs_ever_clobbered to char*.
(s390_regs_ever_clobbered): Check crtl->saves_all_registers
instead of cfun->has_nonlocal_label.  Ignore frame related restore
INSNs.
(s390_register_info): Enable FPR save slots.  Move/Copy some
functionality into ...
(s390_register_info_gprtofpr, s390_register_info_stdarg_fpr)
(s390_register_info_stdarg_gpr, s390_optimize_register_info): New
function.
(s390_frame_info): Do gpr slot allocation here now.  stdarg does
not imply a stack frame.
(s390_init_frame_layout): Remove variable clobbered_regs.
(s390_update_register_info): Remove function.
(s390_hard_regno_rename_ok): Call-saved regs without a save slot
cannot be used for register renaming.
(s390_hard_regno_scratch_ok): New function.
(TARGET_HARD_REGNO_SCRATCH_OK): Define target hook.
(s390_initial_elimination_offset): Change offset calculation of
the return address pointer.
(save_gprs): Deal with only r6 being saved from the call-saved
regs.
(restore_gprs): Set frame related flag.
(s390_save_gprs_to_fprs, s390_restore_gprs_from_fprs): New
functions.
(s390_emit_prologue): Call s390_register_info instead of
s390_update_frame_layout.  Call s390_save_gprs_to_fprs.
(s390_emit_epilogue): Call s390_restore_gprs_from_fprs.
(s390_optimize_prologue): Call s390_optimize_register_info.
Try to remove also FPR slot save/restore INSNs.  Remove frame
related flags from restore INSNs.

From-SVN: r203303

10 years agorl78-expand.md (movqi): use operands[] not operandN.
DJ Delorie [Wed, 9 Oct 2013 01:44:31 +0000 (21:44 -0400)]
rl78-expand.md (movqi): use operands[] not operandN.

* config/rl78/rl78-expand.md (movqi): use operands[] not operandN.
(movhi): Likewise.

From-SVN: r203300

10 years agorl78.c (rl78_print_operand_1): Change %c to %C to avoid conflict with the MI use...
DJ Delorie [Wed, 9 Oct 2013 01:05:07 +0000 (21:05 -0400)]
rl78.c (rl78_print_operand_1): Change %c to %C to avoid conflict with the MI use of %c.

* config/rl78/rl78.c (rl78_print_operand_1): Change %c to %C to
avoid conflict with the MI use of %c.
* config/rl78/rl78-real.md: change %c to %C throughout.
* config/rl78/rl78-virt.md: Likewise.

From-SVN: r203299

10 years agoDaily bump.
GCC Administrator [Wed, 9 Oct 2013 00:16:54 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r203298

10 years agoruntime: Do not report thunks and recover functions in backtrace.
Ian Lance Taylor [Wed, 9 Oct 2013 00:02:14 +0000 (00:02 +0000)]
runtime: Do not report thunks and recover functions in backtrace.

From-SVN: r203294

10 years agocompiler: Error for qualified ID as field name in struct literal.
Ian Lance Taylor [Tue, 8 Oct 2013 23:54:15 +0000 (23:54 +0000)]
compiler: Error for qualified ID as field name in struct literal.

From-SVN: r203292

10 years agoi386.c (ix86_option_override_internal): Switch to SSE math for -ffast-math when targe...
Jan Hubicka [Tue, 8 Oct 2013 23:33:34 +0000 (01:33 +0200)]
i386.c (ix86_option_override_internal): Switch to SSE math for -ffast-math when target ISA supports SSE2.

* config/i386/i386.c (ix86_option_override_internal): Switch
to SSE math for -ffast-math when target ISA supports SSE2.

From-SVN: r203291

10 years agore PR c++/58568 ([c++11] ICE with lambda in invalid template variable definition)
Paolo Carlini [Tue, 8 Oct 2013 21:58:58 +0000 (21:58 +0000)]
re PR c++/58568 ([c++11] ICE with lambda in invalid template variable definition)

/cp
2013-10-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58568
* lambda.c (begin_lambda_type): Check return value of xref_tag
for error_mark_node; tidy.
* decl.c (grokdeclarator): Tweak error message.

/testsuite
2013-10-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58568
* g++.dg/cpp0x/lambda/lambda-ice10.C: New.
* g++.old-deja/g++.mike/misc9.C: Adjust.

From-SVN: r203289

10 years agore PR c++/58665 (ICE with using incomplete struct)
Paolo Carlini [Tue, 8 Oct 2013 21:54:06 +0000 (21:54 +0000)]
re PR c++/58665 (ICE with using incomplete struct)

/cp
2013-10-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58665
Revert:
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58448
* pt.c (tsubst): Use error_operand_p on parameter t.

/testsuite
2013-10-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58665
Revert:
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58448
* g++.dg/template/crash117.C: New.

From-SVN: r203288

10 years ago* testsuite/*: Remove stray semi-colons after function definitions.
Jonathan Wakely [Tue, 8 Oct 2013 13:54:26 +0000 (13:54 +0000)]
* testsuite/*: Remove stray semi-colons after function definitions.

From-SVN: r203279

10 years agohtm-nofloat-2.c: Add -mzarch to asm options.
Andreas Krebbel [Tue, 8 Oct 2013 13:37:25 +0000 (13:37 +0000)]
htm-nofloat-2.c: Add -mzarch to asm options.

2013-10-08  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* gcc.target/s390/htm-nofloat-2.c: Add -mzarch to asm options.

From-SVN: r203276

10 years agore PR libstdc++/58659 (Construction of shared_ptr from unique_ptr mismatches new...
Jonathan Wakely [Tue, 8 Oct 2013 12:33:37 +0000 (12:33 +0000)]
re PR libstdc++/58659 (Construction of shared_ptr from unique_ptr mismatches new/delete and std::allocator for __shared_ptr_count)

PR libstdc++/58659
* include/bits/shared_ptr_base.h (__shared_count::__shared_count(P,D)):
Delegate to constructor taking allocator.
(__shared_count::_S_create_from_up): Inline into ...
(__shared_count::__shared_count(unique_ptr<Y,D>&&): Here. Use
std::conditional instead of constrained overloads. Allocate memory
using the allocator type that will be used for deallocation.
* testsuite/20_util/shared_ptr/cons/58659.cc: New.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust.

From-SVN: r203274

10 years agotree-flow.h: Remove some prototypes.
Andrew MacLeod [Tue, 8 Oct 2013 12:13:13 +0000 (12:13 +0000)]
tree-flow.h: Remove some prototypes.

* tree-flow.h: Remove some prototypes.
* tree.h: Remove some protypes, add a couple.
* tree.c (using_eh_for_cleanups_flag, using_eh_for_cleanups,
using_eh_for_cleanups_p): Add interface routines for front ends.
* tree-eh.h: New file.  Add protoptyes.
* tree-eh.c (using_eh_for_cleanups_p, using_eh_for_cleanups): Delete.
(add_stmt_to_eh_lp_fn): Make static.
(lower_try_finally): Use new using_eh_for_cleanups_p.
* emit-rtl.c: Include tree-eh.h.
* gimple.h: Include tree-eh.h.

From-SVN: r203273

10 years agore PR tree-optimization/58480 (Use attribute((nonnull)) to optimize callers)
Marc Glisse [Tue, 8 Oct 2013 10:39:49 +0000 (12:39 +0200)]
re PR tree-optimization/58480 (Use attribute((nonnull)) to optimize callers)

2013-10-08  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/58480
gcc/
* tree-vrp.c (infer_nonnull_range): New function.
(infer_value_range): Call infer_nonnull_range.

gcc/testsuite/
* gcc.dg/tree-ssa/pr58480.c: New file.

From-SVN: r203271

10 years agore PR tree-optimization/58619 (ICE building in gen_combined_adhoc_loc)
Dehao Chen [Tue, 8 Oct 2013 08:34:28 +0000 (08:34 +0000)]
re PR tree-optimization/58619 (ICE building in gen_combined_adhoc_loc)

PR tree-optimization/58619

2013-10-08  Dehao Chen  <dehao@google.com>

* tree-inline.c (copy_phis_for_bb): Combine location data
only if non-null.

From-SVN: r203269

10 years agore PR target/58423 ([ARM]ICE with shrink-wrap-sibcall.c on a15/neon/hard)
Zhenqiang Chen [Tue, 8 Oct 2013 07:58:08 +0000 (07:58 +0000)]
re PR target/58423 ([ARM]ICE with shrink-wrap-sibcall.c on a15/neon/hard)

2013-10-08  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

PR target/58423
* config/arm/arm.c (arm_emit_ldrd_pop): Attach
RTX_FRAME_RELATED_P on INSN.

From-SVN: r203267

10 years agoregex_executor.h: Add _TodoList class.
Tim Shen [Tue, 8 Oct 2013 03:41:14 +0000 (03:41 +0000)]
regex_executor.h: Add _TodoList class.

2013-10-08  Tim Shen  <timshen91@gmail.com>

* include/bits/regex_executor.h: Add _TodoList class.
* include/bits/regex_executor.tcc (_BFSExecutor<>::_M_main): Add
_M_match_stack and _M_stack to make everything faster. Break if
_M_stack is empty, to reduce unnecessary idling.
* testsuite/performance/28_regex/split.cc: New.

From-SVN: r203261

10 years agoDaily bump.
GCC Administrator [Tue, 8 Oct 2013 00:16:54 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r203259

10 years agoreflect: Use C style comments in 386 assembly for Solaris assembler.
Ian Lance Taylor [Mon, 7 Oct 2013 15:32:08 +0000 (15:32 +0000)]
reflect: Use C style comments in 386 assembly for Solaris assembler.

From Rainer Orth.

From-SVN: r203249

10 years agors6000.c (altivec_expand_vec_perm_const_le): New.
Bill Schmidt [Mon, 7 Oct 2013 13:01:28 +0000 (13:01 +0000)]
rs6000.c (altivec_expand_vec_perm_const_le): New.

2013-10-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (altivec_expand_vec_perm_const_le): New.
(altivec_expand_vec_perm_const): Call it.

From-SVN: r203247

10 years agovector.md (mov<mode>): Emit permuted move sequences for LE VSX loads and stores at...
Bill Schmidt [Mon, 7 Oct 2013 12:56:08 +0000 (12:56 +0000)]
vector.md (mov<mode>): Emit permuted move sequences for LE VSX loads and stores at expand time.

gcc:

2013-10-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/vector.md (mov<mode>): Emit permuted move
sequences for LE VSX loads and stores at expand time.
* config/rs6000/rs6000-protos.h (rs6000_emit_le_vsx_move): New
prototype.
* config/rs6000/rs6000.c (rs6000_const_vec): New.
(rs6000_gen_le_vsx_permute): New.
(rs6000_gen_le_vsx_load): New.
(rs6000_gen_le_vsx_store): New.
(rs6000_gen_le_vsx_move): New.
* config/rs6000/vsx.md (*vsx_le_perm_load_v2di): New.
(*vsx_le_perm_load_v4si): New.
(*vsx_le_perm_load_v8hi): New.
(*vsx_le_perm_load_v16qi): New.
(*vsx_le_perm_store_v2di): New.
(*vsx_le_perm_store_v4si): New.
(*vsx_le_perm_store_v8hi): New.
(*vsx_le_perm_store_v16qi): New.
(*vsx_xxpermdi2_le_<mode>): New.
(*vsx_xxpermdi4_le_<mode>): New.
(*vsx_xxpermdi8_le_V8HI): New.
(*vsx_xxpermdi16_le_V16QI): New.
(*vsx_lxvd2x2_le_<mode>): New.
(*vsx_lxvd2x4_le_<mode>): New.
(*vsx_lxvd2x8_le_V8HI): New.
(*vsx_lxvd2x16_le_V16QI): New.
(*vsx_stxvd2x2_le_<mode>): New.
(*vsx_stxvd2x4_le_<mode>): New.
(*vsx_stxvd2x8_le_V8HI): New.
(*vsx_stxvd2x16_le_V16QI): New.

gcc/testsuite:

2013-10-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/pr43154.c: Skip for ppc64 little endian.
* gcc.target/powerpc/fusion.c: Likewise.

From-SVN: r203246

10 years agoarm-cores.def (cortex-a53): Use cortex tuning.
Renlin Li [Mon, 7 Oct 2013 09:00:34 +0000 (09:00 +0000)]
arm-cores.def (cortex-a53): Use cortex tuning.

[gcc/]
2013-10-07  Renlin Li  <Renlin.Li@arm.com>

* config/arm/arm-cores.def (cortex-a53): Use cortex tuning.

From-SVN: r203241

10 years agos390.c (s390_register_info): Make the call-saved FPR loop to work also for 31bit...
Andreas Krebbel [Mon, 7 Oct 2013 07:52:25 +0000 (07:52 +0000)]
s390.c (s390_register_info): Make the call-saved FPR loop to work also for 31bit ABI.

2013-10-07  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_register_info): Make the call-saved FPR
loop to work also for 31bit ABI.
Save the stack pointer for frame_size > 0.

2013-10-07  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* gcc.target/s390/htm-nofloat-2.c: New testcase.

From-SVN: r203240

10 years ago2013-10-07 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Andreas Krebbel [Mon, 7 Oct 2013 07:50:25 +0000 (07:50 +0000)]
2013-10-07  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.md ("tbegin", "tbegin_nofloat", "tbegin_retry")
("tbegin_retry_nofloat", "tend", "tabort", "tx_assist"): Remove
constraint letters from expanders.
("tbegin_retry", "tbegin_retry_nofloat"): Change predicate of the
retry count to general_operand.
("tabort"): Give operand 0 a mode.
("tabort_1"): Add mode and constraint letter for operand 0.
* doc/extend.texi: Fix protoype of __builtin_non_tx_store.

2013-10-07  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* gcc.target/s390/htm-1.c: Add more tests to cover different
operand types.

From-SVN: r203239

10 years agoDaily bump.
GCC Administrator [Mon, 7 Oct 2013 00:16:52 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r203235

10 years agore PR c++/58126 (No diagnostic when inheriting an uninitialized const or reference...
Paolo Carlini [Sun, 6 Oct 2013 21:41:19 +0000 (21:41 +0000)]
re PR c++/58126 (No diagnostic when inheriting an uninitialized const or reference member)

/cp
2013-10-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58126
* class.c (check_bases): Propagate CLASSTYPE_READONLY_FIELDS_NEED_INIT
and CLASSTYPE_REF_FIELDS_NEED_INIT from bases to derived.
* init.c (diagnose_uninitialized_cst_or_ref_member_1): Extend error
messages about uninitialized const and references members to mention
the base class.

/testsuite
2013-10-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58126
* g++.dg/init/uninitialized1.C: New.

From-SVN: r203232

10 years agoregex.h: (regex_token_iterator<>::regex_token_iterator): Fix compile error.
Tim Shen [Sun, 6 Oct 2013 17:53:14 +0000 (17:53 +0000)]
regex.h: (regex_token_iterator<>::regex_token_iterator): Fix compile error.

2013-10-06  Tim Shen  <timshen91@gmail.com>

* include/bits/regex.h: (regex_token_iterator<>::regex_token_iterator):
Fix compile error.
* include/bits/regex.tcc: (regex_replace<>): Remove default parameter.

2013-10-06  Tim Shen  <timshen91@gmail.com>

* include/bits/regex.h (__regex_algo_impl<>, regex_match<>,
regex_search<>): New abstract function for regex_match and regex_search.
* include/bits/regex.tcc (__regex_algo_impl<>): Implement.
* include/bits/regex_executor.h
(_Executor<>::_M_lookahead,
 _DFSExecutor<>::_M_clone,
 _BFSExecutor<>::_M_clone): Let _M_clone to choose which executor to
use.
* include/bits/regex_executor.tcc (__get_executor<>): Update the
definition to support __policy.
* testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Use
*_debug.
* testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc: Same.
* testsuite/28_regex/algorithms/regex_match/basic/string_01.cc: Same.
* testsuite/28_regex/algorithms/regex_match/basic/string_range_00_03.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/basic/string_range_01_03.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/basic/string_range_02_03.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc: Same.
* testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc: Same.
* testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc: Same.
* testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc: Same.
* testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Same.
* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/anymatcher.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc: Same.
* testsuite/28_regex/algorithms/regex_match/extended/
string_bracket_01.cc: Same.
* testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/extended/
string_questionmark.cc: Same.
* testsuite/28_regex/algorithms/regex_match/extended/cstring_range.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/extended/string_any.cc:
Same.
* testsuite/28_regex/algorithms/regex_match/extended/
string_dispatch_01.cc: Same.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_00_03.cc: Same.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_01_03.cc: Same.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_02_03.cc: Same.
* testsuite/28_regex/algorithms/regex_match/extended/wstring_locale.cc:
Same.
* testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: Same.
* testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc: Same.
* testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Same.
* testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Same.
* testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc: Same.
* testsuite/28_regex/match_results/format.cc: Same.
* testsuite/util/testsuite_regex.h
(regex_match_debug<>, regex_search_debug<>): Implement.

From-SVN: r203231

10 years agore PR c++/56060 (ICE on invalid code in type_dependent_expression_p, at cp/pt.c:19742)
Paolo Carlini [Sun, 6 Oct 2013 14:43:07 +0000 (14:43 +0000)]
re PR c++/56060 (ICE on invalid code in type_dependent_expression_p, at cp/pt.c:19742)

/cp
2013-10-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56060
* pt.c (type_dependent_expression_p): Handle EXPR_PACK_EXPANSION.

/testsuite
2013-10-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56060
* g++.dg/cpp0x/variadic144.C: New.

From-SVN: r203229

10 years agore PR libstdc++/58625 (std::signbit always converts to double)
Oleg Endo [Sun, 6 Oct 2013 13:44:47 +0000 (13:44 +0000)]
re PR libstdc++/58625 (std::signbit always converts to double)

2013-10-06  Oleg Endo  <olegendo@gcc.gnu.org>
    Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/58625
* include/c_global/cmath (signbit): Use __builtin_signbitf and
__builtin_signbitl.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r203228

10 years agoDaily bump.
GCC Administrator [Sun, 6 Oct 2013 00:16:38 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r203227

10 years agoDaily bump.
GCC Administrator [Sat, 5 Oct 2013 00:17:08 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r203223

10 years agore PR c++/58560 ([c++11] ICE with auto in typedef)
Paolo Carlini [Fri, 4 Oct 2013 23:48:29 +0000 (23:48 +0000)]
re PR c++/58560 ([c++11] ICE with auto in typedef)

/cp
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58560
* typeck2.c (build_functional_cast): Use error_operand_p on exp.

/testsuite
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58560
* g++.dg/cpp0x/auto39.C: New.

From-SVN: r203220

10 years agore PR c++/58503 ([c++11] ICE with invalid range in range-based for-loop)
Paolo Carlini [Fri, 4 Oct 2013 23:17:51 +0000 (23:17 +0000)]
re PR c++/58503 ([c++11] ICE with invalid range in range-based for-loop)

/cp
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58503
* parser.c (cp_parser_perform_range_for_lookup): If eventually
either *begin or *end is type-dependent, return NULL_TREE.
(do_range_for_auto_deduction): If cp_parser_perform_range_for_lookup
returns NULL_TREE, don't actually do_auto_deduction.

/testsuite
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58503
* g++.dg/cpp0x/range-for26.C: New.
* g++.dg/cpp0x/range-for27.C: Likewise.

From-SVN: r203219

10 years agore PR c++/58448 (ICE on invalid: tree_class_check_failed)
Paolo Carlini [Fri, 4 Oct 2013 23:13:59 +0000 (23:13 +0000)]
re PR c++/58448 (ICE on invalid: tree_class_check_failed)

/cp
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58448
* pt.c (tsubst): Use error_operand_p on parameter t.

/testsuite
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58448
* g++.dg/template/crash117.C: New.

From-SVN: r203218

10 years agotree-ssa-threadedge.c: Fix some trailing whitespace problems.
Jeff Law [Fri, 4 Oct 2013 20:36:27 +0000 (14:36 -0600)]
tree-ssa-threadedge.c: Fix some trailing whitespace problems.

        * tree-ssa-threadedge.c: Fix some trailing whitespace problems.

        * tree-ssa-threadedge.c (thread_through_normal_block): Broken out of ...
        (thread_across_edge): Here.  Call it.

From-SVN: r203217

10 years agoreflect: Fix calling Interface method on value created by MakeFunc.
Ian Lance Taylor [Fri, 4 Oct 2013 18:52:22 +0000 (18:52 +0000)]
reflect: Fix calling Interface method on value created by MakeFunc.

From-SVN: r203212

10 years agocompiler: Use backend interface for temporary reference expressions.
Chris Manghane [Fri, 4 Oct 2013 18:07:20 +0000 (18:07 +0000)]
compiler: Use backend interface for temporary reference expressions.

* go-gcc.cc (Backend::convert_expression): New function.

From-SVN: r203209

10 years agodwarf2out.c (dw_sra_loc_expr): Release addr_table entries when discarding a location...
Cary Coutant [Fri, 4 Oct 2013 16:25:23 +0000 (16:25 +0000)]
dwarf2out.c (dw_sra_loc_expr): Release addr_table entries when discarding a location list expression (or a...

gcc/
* dwarf2out.c (dw_sra_loc_expr): Release addr_table entries when
        discarding a location list expression (or a piece of one).

From-SVN: r203206

10 years agoFix changelog.
Jan Hubicka [Fri, 4 Oct 2013 16:19:23 +0000 (16:19 +0000)]
Fix changelog.

From-SVN: r203205

10 years ago* ChangeLog: Some further fixes.
Uros Bizjak [Fri, 4 Oct 2013 07:06:16 +0000 (09:06 +0200)]
* ChangeLog: Some further fixes.

From-SVN: r203199

10 years agoChangeLog: Fix ChangeLog.
Uros Bizjak [Fri, 4 Oct 2013 07:04:51 +0000 (09:04 +0200)]
ChangeLog: Fix ChangeLog.

* ChangeLog: Fix ChangeLog.
* testsuite/ChangeLog: Ditto.

From-SVN: r203198

10 years agoDaily bump.
GCC Administrator [Fri, 4 Oct 2013 00:16:56 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r203197

10 years agore PR c++/19476 (Missed null checking elimination with new)
Marc Glisse [Thu, 3 Oct 2013 23:48:18 +0000 (01:48 +0200)]
re PR c++/19476 (Missed null checking elimination with new)

2013-10-04  Marc Glisse  <marc.glisse@inria.fr>

PR c++/19476
gcc/cp/
* decl.c (cxx_init_decl_processing): Set operator_new_flag.

gcc/testsuite/
* g++.dg/tree-ssa/pr19476-5.C: New file.
* g++.dg/tree-ssa/pr19476-1.C: Mention pr19476-5.C.

From-SVN: r203194

10 years agore PR c++/58584 ([c++11] ICE with invalid argument for alignas)
Paolo Carlini [Thu, 3 Oct 2013 22:50:59 +0000 (22:50 +0000)]
re PR c++/58584 ([c++11] ICE with invalid argument for alignas)

/cp
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58584
* decl2.c (save_template_attributes): Handle error_mark_node as
*attr_p argument.
(cp_check_const_attributes): Likewise for attributes.
* parser.c (cp_parser_std_attribute_spec): When alignas_expr is an
error_mark_node call cp_parser_skip_to_end_of_statement.

/testsuite
2013-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58584
* g++.dg/cpp0x/gen-attrs-55.C: New.

From-SVN: r203193

10 years ago* sr.po: Update.
Joseph Myers [Thu, 3 Oct 2013 21:44:12 +0000 (22:44 +0100)]
* sr.po: Update.

From-SVN: r203191

10 years agoregex_executor.tcc (_DFSExecutor<>::_M_dfs): Fix wrong backup variable initialization.
Tim Shen [Thu, 3 Oct 2013 20:54:01 +0000 (20:54 +0000)]
regex_executor.tcc (_DFSExecutor<>::_M_dfs): Fix wrong backup variable initialization.

2013-10-03  Tim Shen  <timshen91@gmail.com>

* include/bits/regex_executor.tcc (_DFSExecutor<>::_M_dfs): Fix wrong
backup variable initialization.

From-SVN: r203190

10 years agore PR libstdc++/58604 (Text truncation in comments of /usr/include/c++/4.7/vector)
John Woolverton [Thu, 3 Oct 2013 20:33:05 +0000 (20:33 +0000)]
re PR libstdc++/58604 (Text truncation in comments of /usr/include/c++/4.7/vector)

2013-10-03  John Woolverton  <jdwoolverton@gmail.com>

PR libstdc++/58604
* include/std/vector: Fix garbled line in HP Copyright.

From-SVN: r203187

10 years agore PR c++/33911 (attribute deprecated vs. templates)
Easwaran Raman [Thu, 3 Oct 2013 17:39:35 +0000 (17:39 +0000)]
re PR c++/33911 (attribute deprecated vs. templates)

2013-10-03  Easwaran Raman  <eraman@google.com>

        PR c++/33911
        * parser.c (cp_parser_init_declarator): Do not drop attributes
        of template member functions.

2013-10-03  Easwaran Raman  <eraman@google.com>

        PR c++/33911
        * g++.dg/ext/attribute47.C: New.

From-SVN: r203174

10 years agoi386.c (ix86_issue_rate): Pentium4, Nocona has issue rate of 2.
Jan Hubicka [Thu, 3 Oct 2013 17:27:32 +0000 (19:27 +0200)]
i386.c (ix86_issue_rate): Pentium4, Nocona has issue rate of 2.

* i386.c (ix86_issue_rate): Pentium4, Nocona has issue rate of 2.
Core2, Corei7 and Haswell has issue rate of 4.
(ix86_adjust_cost): Remove ATOM case; fix core2/corei7/Haswell case.

From-SVN: r203172

10 years agoi386.c (ix86_option_override_internal): Do not enable accumulate-outgoing-args when...
Jan Hubicka [Thu, 3 Oct 2013 17:25:42 +0000 (19:25 +0200)]
i386.c (ix86_option_override_internal): Do not enable accumulate-outgoing-args when producing unwind info.

* i386.c (ix86_option_override_internal): Do not enable
accumulate-outgoing-args when producing unwind info.

From-SVN: r203171

10 years agolra-constraints.c (insert_move_for_subreg): New function extracted from simplify_oper...
Wei Mi [Thu, 3 Oct 2013 17:18:26 +0000 (17:18 +0000)]
lra-constraints.c (insert_move_for_subreg): New function extracted from simplify_operand_subreg.

2013-10-03  Wei Mi  <wmi@google.com>

        * lra-constraints.c (insert_move_for_subreg): New function
        extracted from simplify_operand_subreg.
        (simplify_operand_subreg): Add reload for paradoxical subreg.

From-SVN: r203169

10 years agoipa-inline-analysis.c (find_foldable_builtin_expect): Find the candidate of builtin_e...
Rong Xu [Thu, 3 Oct 2013 17:15:56 +0000 (17:15 +0000)]
ipa-inline-analysis.c (find_foldable_builtin_expect): Find the candidate of builtin_expect such that we should fix the size/time...

        * ipa-inline-analysis.c (find_foldable_builtin_expect): Find
        the candidate of builtin_expect such that we should fix the
        size/time estimation.
        (estimate_function_body_sizes): Do the acutally size/time fix-up
        for builtin_expect.

From-SVN: r203168

10 years agopredict.c (tree_predict_by_opcode): Get the probability for builtin_expect from param...
Rong Xu [Thu, 3 Oct 2013 17:13:50 +0000 (17:13 +0000)]
predict.c (tree_predict_by_opcode): Get the probability for builtin_expect from param builtin_expect_probability.

        * predict.c (tree_predict_by_opcode): Get the probability
        for builtin_expect from param builtin_expect_probability.
        * params.def (BUILTIN_EXPECT_PROBABILITY): New parameter.
        * predict.def (PRED_BUILTIN_EXPECT_RELAXED): Fix comments.
        * doc/invoke.texi: Add documentation for builtin-expect-probability.
        * gcc.target/i386/cold-attribute-2.c: Fix the test by using original
        probability.
        * gcc.dg/tree-ssa/ipa-split-5.c: Ditto.
        * gcc.dg/tree-ssa/ipa-split-6.c: Ditto.

--This li (t)ene, and those below, will be ignored--

M    gcc/params.def
M    gcc/predict.def
M    gcc/ChangeLog
M    gcc/testsuite/gcc.dg/tree-ssa/ipa-split-5.c
M    gcc/testsuite/gcc.dg/tree-ssa/ipa-split-6.c
M    gcc/testsuite/gcc.target/i386/cold-attribute-2.c
M    gcc/predict.c
M    gcc/doc/invoke.texi

From-SVN: r203167

10 years agore PR c++/58510 ([c++11] ICE with multiple non-static data initializations in union)
Marek Polacek [Thu, 3 Oct 2013 16:33:23 +0000 (16:33 +0000)]
re PR c++/58510 ([c++11] ICE with multiple non-static data initializations in union)

PR c++/58510
cp/
* init.c (sort_mem_initializers): Splice when giving an error.
testsuite/
* g++.dg/cpp0x/pr58510.C: New test.

From-SVN: r203165

10 years agodel_op.cc (operator delete): Don't test for 0 before free.
Marc Glisse [Thu, 3 Oct 2013 16:16:40 +0000 (18:16 +0200)]
del_op.cc (operator delete): Don't test for 0 before free.

2013-10-03  Marc Glisse  <marc.glisse@inria.fr>

* libsupc++/del_op.cc (operator delete): Don't test for 0 before free.
* libsupc++/del_opnt.cc (free): Only declare if freestanding.
(operator delete): Qualify free with std::.

From-SVN: r203164

10 years agore PR c++/19476 (Missed null checking elimination with new)
Marc Glisse [Thu, 3 Oct 2013 16:13:54 +0000 (18:13 +0200)]
re PR c++/19476 (Missed null checking elimination with new)

2013-10-03  Marc Glisse  <marc.glisse@inria.fr>

PR c++/19476
gcc/c-family/
* c.opt (fcheck-new): Move to common.opt.

gcc/
* common.opt (fcheck-new): Moved from c.opt. Make it 'Common'.
* calls.c (alloca_call_p): Use get_callee_fndecl.
* fold-const.c (tree_expr_nonzero_warnv_p): Handle operator new.
* tree-vrp.c (gimple_stmt_nonzero_warnv_p, stmt_interesting_for_vrp):
Likewise.
(vrp_visit_stmt): Remove duplicated code.

gcc/testsuite/
* g++.dg/tree-ssa/pr19476-1.C: New file.
* g++.dg/tree-ssa/pr19476-2.C: Likewise.
* g++.dg/tree-ssa/pr19476-3.C: Likewise.
* g++.dg/tree-ssa/pr19476-4.C: Likewise.

From-SVN: r203163

10 years agors6000-builtin.def (XSRDPIM): Use floatdf2, ceildf2, btruncdf2, instead of vsx_*...
Michael Meissner [Thu, 3 Oct 2013 16:08:53 +0000 (16:08 +0000)]
rs6000-builtin.def (XSRDPIM): Use floatdf2, ceildf2, btruncdf2, instead of vsx_* name.

[gcc]
2013-10-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000-builtin.def (XSRDPIM): Use floatdf2,
ceildf2, btruncdf2, instead of vsx_* name.

* config/rs6000/vsx.md (vsx_add<mode>3): Change arithmetic
iterators to only do V2DF and V4SF here.  Move the DF code to
rs6000.md where it is combined with SF mode.  Replace <VSv> with
just 'v' since only vector operations are handled with these insns
after moving the DF support to rs6000.md.
(vsx_sub<mode>3): Likewise.
(vsx_mul<mode>3): Likewise.
(vsx_div<mode>3): Likewise.
(vsx_fre<mode>2): Likewise.
(vsx_neg<mode>2): Likewise.
(vsx_abs<mode>2): Likewise.
(vsx_nabs<mode>2): Likewise.
(vsx_smax<mode>3): Likewise.
(vsx_smin<mode>3): Likewise.
(vsx_sqrt<mode>2): Likewise.
(vsx_rsqrte<mode>2): Likewise.
(vsx_fms<mode>4): Likewise.
(vsx_nfma<mode>4): Likewise.
(vsx_copysign<mode>3): Likewise.
(vsx_btrunc<mode>2): Likewise.
(vsx_floor<mode>2): Likewise.
(vsx_ceil<mode>2): Likewise.
(vsx_smaxsf3): Delete scalar ops that were moved to rs6000.md.
(vsx_sminsf3): Likewise.
(vsx_fmadf4): Likewise.
(vsx_fmsdf4): Likewise.
(vsx_nfmadf4): Likewise.
(vsx_nfmsdf4): Likewise.
(vsx_cmpdf_internal1): Likewise.

* config/rs6000/rs6000.h (TARGET_SF_SPE): Define macros to make it
simpler to select whether a target has SPE or traditional floating
point support in iterators.
(TARGET_DF_SPE): Likewise.
(TARGET_SF_FPR): Likewise.
(TARGET_DF_FPR): Likewise.
(TARGET_SF_INSN): Macros to say whether floating point support
exists for a given operation for expanders.
(TARGET_DF_INSN): Likewise.

* config/rs6000/rs6000.c (Ftrad): New mode attributes to allow
combining of SF/DF mode operations, using both traditional and VSX
registers.
(Fvsx): Likewise.
(Ff): Likewise.
(Fv): Likewise.
(Fs): Likewise.
(Ffre): Likewise.
(FFRE): Likewise.
(abs<mode>2): Combine SF/DF modes using traditional floating point
instructions.  Add support for using the upper DF registers with
VSX support, and SF registers with power8-vector support.  Update
expanders for operations supported by both the SPE and traditional
floating point units.
(abs<mode>2_fpr): Likewise.
(nabs<mode>2): Likewise.
(nabs<mode>2_fpr): Likewise.
(neg<mode>2): Likewise.
(neg<mode>2_fpr): Likewise.
(add<mode>3): Likewise.
(add<mode>3_fpr): Likewise.
(sub<mode>3): Likewise.
(sub<mode>3_fpr): Likewise.
(mul<mode>3): Likewise.
(mul<mode>3_fpr): Likewise.
(div<mode>3): Likewise.
(div<mode>3_fpr): Likewise.
(sqrt<mode>3): Likewise.
(sqrt<mode>3_fpr): Likewise.
(fre<Fs>): Likewise.
(rsqrt<mode>2): Likewise.
(cmp<mode>_fpr): Likewise.
(smax<mode>3): Likewise.
(smin<mode>3): Likewise.
(smax<mode>3_vsx): Likewise.
(smin<mode>3_vsx): Likewise.
(negsf2): Delete SF operations that are merged with DF.
(abssf2): Likewise.
(addsf3): Likewise.
(subsf3): Likewise.
(mulsf3): Likewise.
(divsf3): Likewise.
(fres): Likewise.
(fmasf4_fpr): Likewise.
(fmssf4_fpr): Likewise.
(nfmasf4_fpr): Likewise.
(nfmssf4_fpr): Likewise.
(sqrtsf2): Likewise.
(rsqrtsf_internal1): Likewise.
(smaxsf3): Likewise.
(sminsf3): Likewise.
(cmpsf_internal1): Likewise.
(copysign<mode>3_fcpsgn): Add VSX/power8-vector support.
(negdf2): Delete DF operations that are merged with SF.
(absdf2): Likewise.
(nabsdf2): Likewise.
(adddf3): Likewise.
(subdf3): Likewise.
(muldf3): Likewise.
(divdf3): Likewise.
(fred): Likewise.
(rsqrtdf_internal1): Likewise.
(fmadf4_fpr): Likewise.
(fmsdf4_fpr): Likewise.
(nfmadf4_fpr): Likewise.
(nfmsdf4_fpr): Likewise.
(sqrtdf2): Likewise.
(smaxdf3): Likewise.
(smindf3): Likewise.
(cmpdf_internal1): Likewise.
(lrint<mode>di2): Use TARGET_<MODE>_FPR macro.
(btrunc<mode>2): Delete separate expander, and combine with the
insn and add VSX instruction support.  Use TARGET_<MODE>_FPR.
(btrunc<mode>2_fpr): Likewise.
(ceil<mode>2): Likewise.
(ceil<mode>2_fpr): Likewise.
(floor<mode>2): Likewise.
(floor<mode>2_fpr): Likewise.
(fma<mode>4_fpr): Combine SF and DF fused multiply/add support.
Add support for using the upper registers with VSX and
power8-vector.  Move insns to be closer to the define_expands. On
VSX systems, prefer the traditional form of FMA over the VSX
version, since the traditional form allows the target not to
overlap with the inputs.
(fms<mode>4_fpr): Likewise.
(nfma<mode>4_fpr): Likewise.
(nfms<mode>4_fpr): Likewise.

[gcc/testsuite]
2013-10-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

* gcc.target/powerpc/p8vector-fp.c: New test for floating point
scalar operations when using -mupper-regs-sf and -mupper-regs-df.
* gcc.target/powerpc/ppc-target-1.c: Update tests to allow either
VSX scalar operations or the traditional floating point form of
the instruction.
* gcc.target/powerpc/ppc-target-2.c: Likewise.
* gcc.target/powerpc/recip-3.c: Likewise.
* gcc.target/powerpc/recip-5.c: Likewise.
* gcc.target/powerpc/pr72747.c: Likewise.
* gcc.target/powerpc/vsx-builtin-3.c: Likewise.

From-SVN: r203162

10 years agoaarch-common-protos.h (struct alu_cost_table): New.
Kyrylo Tkachov [Thu, 3 Oct 2013 13:58:42 +0000 (13:58 +0000)]
aarch-common-protos.h (struct alu_cost_table): New.

[gcc/]
2013-10-03  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
            Richard Earnshaw  <richard.earnshaw@arm.com>

* config/arm/aarch-common-protos.h (struct alu_cost_table): New.
(struct mult_cost_table): Likewise.
(struct mem_cost_table): Likewise.
(struct fp_cost_table): Likewise.
(struct vector_cost_table): Likewise.
(cpu_cost_table): Likewise.
* config/arm/arm.opt (mold-rts-costs): New option.
(mnew-generic-costs): Likewise.
* config/arm/arm.c (generic_extra_costs): New table.
(cortexa15_extra_costs): Likewise.
(arm_slowmul_tune): Use NULL as new costs.
(arm_fastmul_tune): Likewise.
(arm_strongarm_tune): Likewise.
(arm_xscale_tune): Likewise.
(arm_9e_tune): Likewise.
(arm_v6t2_tune): Likewise.
(arm_cortex_a5_tune): Likewise.
(arm_cortex_a9_tune): Likewise.
(arm_v6m_tune): Likewise.
(arm_fa726te_tune): Likewise.
(arm_cortex_a15_tune): Use cortex15_extra_costs.
(arm_cortex_tune): Use generict_extra_costs.
(shifter_op_p): New function.
(arm_unspec_cost): Likewise.
(LIBCALL_COST): Define.
(arm_new_rtx_costs): New function.
(arm_rtx_costs): Use arm_new_rtx_costs when core-specific
table is available. Use old costs otherwise unless mnew-generic-costs
is specified.
* config/arm/arm-protos.h (tune_params): Add insn_extra_cost field.
(cpu_cost_table): Declare.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r203160

10 years ago[AArch64] Fix PR58460
Marcus Shawcroft [Thu, 3 Oct 2013 10:54:36 +0000 (10:54 +0000)]
[AArch64] Fix PR58460

PR58460, the add and sub shifted register instruction forms in AArch64
do not permit the stack register.  This patch removes k constraint
from the relevant patterns and adds reduced form of the test case.

From-SVN: r203157

10 years ago[AArch64] Remove un-necessary secondary reload for addition to SP.
Ian Bolton [Thu, 3 Oct 2013 09:50:21 +0000 (09:50 +0000)]
[AArch64] Remove un-necessary secondary reload for addition to SP.

From-SVN: r203156

10 years agopredict.c (probably_never_executed): New function.
Teresa Johnson [Thu, 3 Oct 2013 05:06:05 +0000 (05:06 +0000)]
predict.c (probably_never_executed): New function.

2013-10-02  Teresa Johnson  <tejohnson@google.com>

* predict.c (probably_never_executed): New function.
(probably_never_executed_bb_p): Invoke probably_never_executed.
(probably_never_executed_edge_p): Ditto.
* bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges):
Treat profile insanities conservatively.

From-SVN: r203152

10 years agoconfig.host (hppa*64*-*-linux*): Define extra_parts.
John David Anglin [Thu, 3 Oct 2013 01:11:41 +0000 (01:11 +0000)]
config.host (hppa*64*-*-linux*): Define extra_parts.

* config.host (hppa*64*-*-linux*): Define extra_parts.
(hppa*-*-linux*): Likewise.

From-SVN: r203151

10 years agoconfig.gcc (hppa*64*-*-linux*): Don't add pa/t-linux to tmake_file.
John David Anglin [Thu, 3 Oct 2013 00:42:58 +0000 (00:42 +0000)]
config.gcc (hppa*64*-*-linux*): Don't add pa/t-linux to tmake_file.

* config.gcc (hppa*64*-*-linux*): Don't add pa/t-linux to tmake_file.

From-SVN: r203148

10 years agolra-constraints.c (process_alt_operand): Calculate scratch_p and use it.
Vladimir Makarov [Thu, 3 Oct 2013 00:35:43 +0000 (00:35 +0000)]
lra-constraints.c (process_alt_operand): Calculate scratch_p and use it.

2013-10-02  Vladimir Makarov  <vmakarov@redhat.com>

* lra-constraints.c (process_alt_operand): Calculate scratch_p and
use it.  Use smaller increase for scratch.  Don't increase reject
for early clobber scratch.
* lra-eliminations.c (eliminate_regs_in_insn): Remove all insns
setting eliminated regs except setting fp from hfp.
(lra_eliminate): Check lra_insn_recog_data on NULL.

From-SVN: r203147

10 years agoDaily bump.
GCC Administrator [Thu, 3 Oct 2013 00:17:10 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r203146

10 years agore PR target/58587 (Bootstrap error with ada with -mcpu=power7)
Michael Meissner [Thu, 3 Oct 2013 00:01:45 +0000 (00:01 +0000)]
re PR target/58587 (Bootstrap error with ada with -mcpu=power7)

2013-10-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/58587
* config/rs6000/rs6000-cpus.def (ISA_2_6_MASKS_SERVER): Turn off
setting -mvsx-timode by default until the underlying problem is
fixed.
(RS6000_CPU, power7 defaults): Likewise.

From-SVN: r203142

10 years agoruntime: Fix append of slice with elements of zero size.
Ian Lance Taylor [Wed, 2 Oct 2013 23:49:39 +0000 (23:49 +0000)]
runtime: Fix append of slice with elements of zero size.

From-SVN: r203140

10 years agox-linux (host-linux.o): Remove header dependencies.
Uros Bizjak [Wed, 2 Oct 2013 21:24:50 +0000 (23:24 +0200)]
x-linux (host-linux.o): Remove header dependencies.

* config/x-linux (host-linux.o): Remove header dependencies.
Use $(COMPILE) and $(POSTCOMPILE).
* config/t-linux-android (linux-android.o): Ditto.

From-SVN: r203136

10 years agore PR fortran/58593 (internal compiler error: in gfc_conv_string_tmp, at fortran...
Tobias Burnus [Wed, 2 Oct 2013 21:02:14 +0000 (23:02 +0200)]
re PR fortran/58593 (internal compiler error: in gfc_conv_string_tmp, at fortran/trans-expr.c:2360)

2013-10-02  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58593
        * trans-expr.c (gfc_conv_string_tmp): Fix obtaining
        the byte size of a single character.

2013-10-02  Tobias Burnus  <burnus@net-b.de>

        PR fortran/58593
        * gfortran.dg/char_length_19.f90: New.

From-SVN: r203135

10 years agore PR libstdc++/58569 (Compilation error when a class contains multiple std::function)
Jonathan Wakely [Wed, 2 Oct 2013 20:21:52 +0000 (20:21 +0000)]
re PR libstdc++/58569 (Compilation error when a class contains multiple std::function)

2013-10-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
    Daniel Krugler  <daniel.kruegler@gmail.com>

PR libstdc++/58569
* include/std/functional (function::_CheckResult): Move to namespace
scope and rename to __check_func_return_type.
* testsuite/20_util/function/58569.cc: New.

Co-Authored-By: Daniel Kruegler <daniel.kruegler@gmail.com>
From-SVN: r203132

10 years agore PR libstdc++/58594 (std::make_shared does not accept const types as parameters)
Jonathan Wakely [Wed, 2 Oct 2013 19:55:14 +0000 (19:55 +0000)]
re PR libstdc++/58594 (std::make_shared does not accept const types as parameters)

PR libstdc++/58594
* include/bits/shared_ptr_base.h
(_Sp_counted_ptr_inplace::_M_get_deleter()): Cast away cv-quals.
* testsuite/20_util/shared_ptr/creation/58594.cc: New.

From-SVN: r203131

10 years agoMakefile.in (expmed.o-warn): Remove.
Uros Bizjak [Wed, 2 Oct 2013 19:52:27 +0000 (21:52 +0200)]
Makefile.in (expmed.o-warn): Remove.

* Makefile.in (expmed.o-warn): Remove.

From-SVN: r203130

10 years agographite-scop-detection.c: Include tree-ssa-propagate,h.
Andrew MacLeod [Wed, 2 Oct 2013 19:41:14 +0000 (19:41 +0000)]
graphite-scop-detection.c: Include tree-ssa-propagate,h.

* graphite-scop-detection.c: Include tree-ssa-propagate,h.
* graphite-sese-to-poly.c: Include tree-ssa-propagate.h.

From-SVN: r203129

10 years agocompiler: Use backend interface for numeric expressions.
Chris Manghane [Wed, 2 Oct 2013 19:22:07 +0000 (19:22 +0000)]
compiler: Use backend interface for numeric expressions.

* go-gcc.cc: Include "real.h" and "realmpfr.h".
(Backend::integer_constant_expression): New function.
(Backend::float_constant_expression): New function.
(Backend::complex_constant_expression): New function.

From-SVN: r203127

10 years agoThis patch fixes an issue where expansion of an ORIF expression arbitrarily...
Teresa Johnson [Wed, 2 Oct 2013 19:18:17 +0000 (19:18 +0000)]
This patch fixes an issue where expansion of an ORIF expression arbitrarily...

This patch fixes an issue where expansion of an ORIF expression arbitrarily
applied the probability that the entire condition was true to just the
first condition. When the ORIF true probability was 100%, this resulted
in the second condition's jump being given a count of zero (since the
first condition's jump got 100% of the count), leading to incorrect function
splitting when it had a non-zero probability in reality. Since there
currently isn't better information about which condition resulted
in the ORIF being true, apply a 50-50 probability that it is the first
vs. second condition that caused the entire expression to be true,
so that neither condition's true label ends up as a 0-count bb.

An equivalent fix is made for ANDIF expansion.

2013-10-02  Teresa Johnson  <tejohnson@google.com>

* dojump.c (do_jump_1): Divide probability between
both conditions of a TRUTH_ORIF_EXPR.

From-SVN: r203126

10 years ago* Makefile.in (DRIVER_DEFINES): Use $(if), not $(and).
Tom Tromey [Wed, 2 Oct 2013 18:46:18 +0000 (18:46 +0000)]
* Makefile.in (DRIVER_DEFINES): Use $(if), not $(and).

From-SVN: r203125

10 years agore PR c++/58535 (ICE with virtual template function)
Paolo Carlini [Wed, 2 Oct 2013 18:25:55 +0000 (18:25 +0000)]
re PR c++/58535 (ICE with virtual template function)

/cp
2013-10-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58535
* parser.c (cp_parser_function_specifier_opt): Upon error about
virtual templates don't set ds_virtual.
(finish_fully_implicit_template): Reject virtual implicit templates.

/testsuite
2013-10-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58535
* g++.dg/parse/crash65.C: New.
* g++.dg/cpp1y/pr58535.C: Likewise.

From-SVN: r203123

10 years agotree-flow.h: Remove some prototypes.
Andrew MacLeod [Wed, 2 Oct 2013 17:57:54 +0000 (17:57 +0000)]
tree-flow.h: Remove some prototypes.

* tree-flow.h: Remove some prototypes.
* tree-ssa-dce.c (mark_virtual_operand_for_renaming,
mark_virtual_phi_result_for_renaming): Move to tree-into-ssa.c.
* tree-into-ssa.c (mark_virtual_operand_for_renaming,
mark_virtual_phi_result_for_renaming): Relocate here.
* tree-into-ssa.h: Add prototypes.
* tree-ssa-phiopt.c: (tree_ssa_phiopt_worker) Use
single_pred_before_succ_order.
(blocks_in_phiopt_order): Rename and move to cfganal.c.
(nonfreeing_call_p) Move to gimple.c.
* cfganal.c (single_pred_before_succ_order): Move and renamed from
tree-ssa-phiopt.c.
* basic-block.h (single_pred_before_succ_order): Add prototype.
* gimple.c (nonfreeing_call_p): Relocate here.
* gimple.h: Add prototype.
* tree-ssa-ifcombine.c: Include tree-ssa-phiopt.h.
* tree-ssa-dom.h: New file.  Relocate prototypes here.
* tree-ssa.h: Include tree-ssa-dom.h.

From-SVN: r203122

10 years agoreflect: Use hand-coded .eh_frame section rather than CFI directives.
Ian Lance Taylor [Wed, 2 Oct 2013 17:30:07 +0000 (17:30 +0000)]
reflect: Use hand-coded .eh_frame section rather than CFI directives.

From Rainer Orth.

From-SVN: r203120

10 years agox-i386 (driver-i386.o): Remove header dependencies.
Uros Bizjak [Wed, 2 Oct 2013 16:43:16 +0000 (18:43 +0200)]
x-i386 (driver-i386.o): Remove header dependencies.

* config/i386/x-i386 (driver-i386.o): Remove header dependencies.
Use $(COMPILE) and $(POSTCOMPILE).

* config/alpha/x-alpha (driver-alpha.o): Ditto.

From-SVN: r203119

10 years agotree-flow.h: Remove some prototypes.
Andrew MacLeod [Wed, 2 Oct 2013 15:29:35 +0000 (15:29 +0000)]
tree-flow.h: Remove some prototypes.

2013-10-02  Andrew MacLeod  <amacleod@redhat.com>

* tree-flow.h: Remove some prototypes.
* gimple-fold.h: Add prototypes from gimple.h and tree-flow.h.
* tree-ssa-propagate.h: Relocate prototypes from tree-flow.h.
* tree-ssa-copy.c (may_propagate*, propagate_value, replace_exp,
propagate_tree_value*): Move from here to...
* tree-ssa-propagate.c (may_propagate*, propagate_value, replace_exp,
propagate_tree_value*): Relocate here.
* tree-ssa-propagate.h: Relocate prototypes from tree-flow.h.
* gimple.h: Include gimple-fold.h, move prototypes into gimple-fold.h.
* gimple-fold.c: Remove gimple-fold.h from include list.
* tree-vrp.c: Remove gimple-fold.h from include list.
* tree-ssa-sccvn.c: Remove gimple-fold.h from include list.
* tree-ssa-ccp.c: Remove gimple-fold.h from include list.
* tree-scalar-evolution.c: Add tree-ssa-propagate.h to include list.
* tree-ssa-pre.c: Add tree-ssa-propagate.h to include list.
* sese.c: Add tree-ssa-propagate.h to include list.

From-SVN: r203118