platform/upstream/gcc.git
10 years agoalloc_traits.h (__allow_copy_cons): Remove.
Jonathan Wakely [Thu, 14 Nov 2013 12:43:00 +0000 (12:43 +0000)]
alloc_traits.h (__allow_copy_cons): Remove.

* include/bits/alloc_traits.h (__allow_copy_cons): Remove.
(__check_copy_constructible): Likewise.
* include/bits/unordered_map.h (unordered_map, unordered_multimap):
Do not derive from __check_copy_constructible.
* include/bits/unordered_set.h (unordered_set, unordered_multiset):
Likewise.
* testsuite/23_containers/unordered_map/55043.cc: It is no longer
necessary for is_copy_constructible to be correct to use nested
unordered containers.
* testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
* testsuite/23_containers/unordered_set/55043.cc: Likewise.
* testsuite/23_containers/unordered_multiset/55043.cc: Likewise.

From-SVN: r204790

10 years agoXFAIL addr1.ads and atomic1.ads on x32
H.J. Lu [Thu, 14 Nov 2013 12:40:15 +0000 (12:40 +0000)]
XFAIL addr1.ads and atomic1.ads on x32

* gnat.dg/specs/addr1.ads: XFAIL on x32.
* gnat.dg/specs/atomic1.ads: Likewise.

From-SVN: r204789

10 years agoFix typo in ChangeLog entry.
Christophe Lyon [Thu, 14 Nov 2013 10:25:31 +0000 (11:25 +0100)]
Fix typo in ChangeLog entry.

From-SVN: r204787

10 years ago[AArch64] [-mtune cleanup 5/5] Update invoke.texi
James Greenhalgh [Thu, 14 Nov 2013 10:02:10 +0000 (10:02 +0000)]
[AArch64] [-mtune cleanup 5/5] Update invoke.texi

gcc/
* doc/invoke.texi: Update documentation for AArch64's -mcpu
and -mtune options.

From-SVN: r204785

10 years ago[AArch64] [-mtune cleanup 4/5] Remove "example-1", "example-2" tuning options.
James Greenhalgh [Thu, 14 Nov 2013 10:00:49 +0000 (10:00 +0000)]
[AArch64] [-mtune cleanup 4/5] Remove "example-1", "example-2" tuning options.

gcc/
* config/aarch64/aarch64-cores.def (example-1): Remove.
(example-2): Likewise.
* config/aarch64/aarch64-tune.md: Regenerate.
* config/aarch64/aarch64.md: Do not include "large.md" or "small.md".
(generic_sched): Remove "large", "small".
* config/aarch64/large.md: Delete.
* config/aarch64/small.md: Delete.

gcc/testsuite/
* gcc.target/aarch64/cpu-diagnostics-2.c: Change "-mcpu="
to "cortex-a53".
* gcc.target/aarch64/cpu-diagnostics-3.c: Change "-mcpu="
to "cortex-a53".

From-SVN: r204784

10 years ago[AArch64] [-mtune cleanup 3/5] [Temporary] When asked to tune for
James Greenhalgh [Thu, 14 Nov 2013 09:58:37 +0000 (09:58 +0000)]
[AArch64] [-mtune cleanup 3/5] [Temporary] When asked to tune for
 Cortex-A57, tune for Cortex-A15

gcc/
* config/aarch64/aarch64-cores.def (cortex-a57): Tune for cortexa15.
* config/aarch64/aarch64-tune.md: Regenerate.
* config/aarch64/aarch64.md: Include cortex-a15 pipeline model.
(generic_sched): "no" if we are tuning for cortexa15.
* config/arm/cortex-a15.md: Include cortex-a15-neon.md by
relative path.

From-SVN: r204783

10 years ago[AArch64] [-mtune cleanup 2/5] Tune for Cortex-A53 by default.
James Greenhalgh [Thu, 14 Nov 2013 09:56:30 +0000 (09:56 +0000)]
[AArch64] [-mtune cleanup 2/5] Tune for Cortex-A53 by default.

gcc/
* config/aarch64/aarch64-arches.def (armv8-a): Tune for cortex-a53.
* config/aarch64/aarch64.md: Do not include aarch64-generic.md.
* config/aarch64/aarch64.c (aarch64_tune): Initialize to cortexa53.
(all_cores): Use cortexa53 when tuning for "generic".
(aarch64_override_options): Fix comment.
* config/aarch64/aarch64.h (TARGET_CPU_DEFAULT): Set to cortexa53.
* config/aarch64/aarch64-generic.md: Delete.

From-SVN: r204782

10 years ago[AArch64] [-mtune cleanup 1/5] Remove -march=generic.
James Greenhalgh [Thu, 14 Nov 2013 09:52:34 +0000 (09:52 +0000)]
[AArch64] [-mtune cleanup 1/5] Remove -march=generic.

gcc/
* config/aarch64/aarch64.c (all_architectures): Remove "generic".

From-SVN: r204781

10 years agoFix gcc.dg/atomic/c11-atomic-exec-[45].c tests on Solaris 10+
Rainer Orth [Thu, 14 Nov 2013 09:34:16 +0000 (09:34 +0000)]
Fix gcc.dg/atomic/c11-atomic-exec-[45].c tests on Solaris 10+

* gcc.dg/atomic/c11-atomic-exec-4.c: Define _XOPEN_SOURCE=600 on
*-*-solaris2.1[0-9]*.
* gcc.dg/atomic/c11-atomic-exec-5.c: Likewise.

From-SVN: r204780

10 years agoaarch64.c: Include aarch-cost-tables.h.
Kyrylo Tkachov [Thu, 14 Nov 2013 09:22:51 +0000 (09:22 +0000)]
aarch64.c: Include aarch-cost-tables.h.

* config/aarch64/aarch64.c: Include aarch-cost-tables.h.
(generic_rtx_cost_table): Remove.
(aarch64_rtx_costs): Use fields from cpu_cost_table.
* config/aarch64/aarch64-protos.h (tune_params): Use cpu_cost_table for
insn_extra_cost.
(cpu_rtx_cost_table): Remove.

From-SVN: r204779

10 years ago[multiple changes]
Joey Ye [Thu, 14 Nov 2013 08:38:54 +0000 (08:38 +0000)]
[multiple changes]

2013-11-14  Julian Brown  <julian@codesourcery.com>
        Joey Ye  <joey.ye@arm.com>

        * config/arm/arm.c (arm_cortex_m_branch_cost): New.
        (arm_v7m_tune): New.
        (arm_slowmul_tune, arm_fastmul_tune,
        arm_strongarm_tune, arm_9e_tune, arm_v6t2_tune,
        arm_cortex_tune, arm_cortex_a15_tune,
        arm_cortex_a5_tune, arm_v6m_tune): Add comments
        for Sched adj cost.
        * config/arm/arm-cores.def (cortex-m4, cortex-m3):
        Use arm_v7m_tune.

testsuite:
2013-11-14  Joey Ye  <joey.ye@arm.com>

        * gcc.dg/tree-ssa/forwprop-28.c: Disable for cortex_m.
        * gcc.dg/tree-ssa/vrp47.c: Likewise.
        * gcc.dg/tree-ssa/vrp87.c: Likewise.
        * gcc.dg/tree-ssa/ssa-dom-thread-4.c: Ingore for cortex_m.
        * gcc.dg/tree-ssa/ssa-vrp-thread-1.c: Likewise.

From-SVN: r204778

10 years agore PR target/57491 ([ia64] internal compiler error: in ia64_split_tmode -O2, quadmath)
Kirill Yukhin [Thu, 14 Nov 2013 08:33:21 +0000 (08:33 +0000)]
re PR target/57491 ([ia64] internal compiler error: in ia64_split_tmode -O2, quadmath)

        PR target/57491
        * config/ia64/ia64.c (ia64_split_tmode_move): Relax `dead'
        flag setting.

From-SVN: r204777

10 years agoAdded testcase for 58533, fixed by rev 204714.
Adam Butcher [Thu, 14 Nov 2013 08:26:21 +0000 (08:26 +0000)]
Added testcase for 58533, fixed by rev 204714.

gcc/testsuite/
PR c++/58533
* g++.dg/cpp1y/pr58533.C: New testcase (fixed by r204714).

From-SVN: r204776

10 years agore PR target/59101 (integer wrong code bug)
Jakub Jelinek [Thu, 14 Nov 2013 08:11:36 +0000 (09:11 +0100)]
re PR target/59101 (integer wrong code bug)

PR target/59101
* config/i386/i386.md (*anddi_2): Only allow CCZmode if
operands[2] satisfies_constraint_Z that might have bit 31 set.

* gcc.c-torture/execute/pr59101.c: New test.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r204774

10 years agore PR tree-optimization/59102 (ICE on valid code at -Os and above on x86_64-linux...
Jeff Law [Thu, 14 Nov 2013 03:18:17 +0000 (20:18 -0700)]
re PR tree-optimization/59102 (ICE on valid code at -Os and above on x86_64-linux-gnu)

PR tree-optimization/59102
* gimple-ssa-isolate-paths.c
(insert_trap_and_remove_trailing_statments): Ensure STMT is a
gimple assignment before looking at gimple_assign_lhs.

PR tree-optimization/59102
* gcc.c-torture/compile/pr59102.c: New test.

From-SVN: r204773

10 years agoira.c: Add comment about threads at the top of file.
Vladimir Makarov [Thu, 14 Nov 2013 01:51:07 +0000 (01:51 +0000)]
ira.c: Add comment about threads at the top of file.

2013-11-13  Vladimir Makarov  <vmakarov@redhat.com>

* ira.c: Add comment about threads at the top of file.

From-SVN: r204772

10 years agoira-color.c (coalesce_allocnos): Don't allocate and free sorted_copies.
Vladimir Makarov [Thu, 14 Nov 2013 01:33:09 +0000 (01:33 +0000)]
ira-color.c (coalesce_allocnos): Don't allocate and free sorted_copies.

2013-11-13  Vladimir Makarov  <vmakarov@redhat.com>

* ira-color.c (coalesce_allocnos): Don't allocate and free
sorted_copies.

From-SVN: r204771

10 years agoDaily bump.
GCC Administrator [Thu, 14 Nov 2013 00:16:27 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r204770

10 years agoHandle GIMPLE_ASSIGNs with different vuse in gimple_equal_p
Tom de Vries [Thu, 14 Nov 2013 00:10:42 +0000 (00:10 +0000)]
Handle GIMPLE_ASSIGNs with different vuse in gimple_equal_p

2013-11-14  Tom de Vries  <tom@codesourcery.com>

* tree-ssa-tail-merge.c (gimple_equal_p): Add test for structural
equality for GIMPLE_ASSIGN.

* gcc.dg/tail-merge-store.c: New test.

From-SVN: r204767

10 years agoFactor out gimple_operand_equal_value_p from gimple_equal_p
Tom de Vries [Thu, 14 Nov 2013 00:10:33 +0000 (00:10 +0000)]
Factor out gimple_operand_equal_value_p from gimple_equal_p

2013-11-14  Tom de Vries  <tom@codesourcery.com>

* tree-ssa-tail-merge.c (gimple_operand_equal_value_p): Factor new
function out of ...
(gimple_equal_p): ... here.

From-SVN: r204766

10 years agoAdd is_tm_ending
Tom de Vries [Thu, 14 Nov 2013 00:10:24 +0000 (00:10 +0000)]
Add is_tm_ending

2013-11-14  Tom de Vries  <tom@codesourcery.com>

* trans-mem.c (is_tm_ending): New function.
* gimple.h (is_tm_ending): Declare.
* tree-ssa-tail-merge.c (gimple_equal_p): Remove test on
BUILT_IN_TM_COMMIT.
(find_duplicate): Use is_tm_ending instead of is_tm_ending_fndecl.

From-SVN: r204765

10 years agoSimplify code in gimple_equal_p
Tom de Vries [Thu, 14 Nov 2013 00:10:13 +0000 (00:10 +0000)]
Simplify code in gimple_equal_p

2013-11-14  Tom de Vries  <tom@codesourcery.com>

* tree-ssa-tail-merge.c (gimple_equal_p): Remove equal variable.

From-SVN: r204764

10 years agogimple-walk.h: New File.
Andrew Macleod [Wed, 13 Nov 2013 23:54:17 +0000 (23:54 +0000)]
gimple-walk.h: New File.

* gimple-walk.h: New File.  Relocate prototypes from gimple.h.
(struct walk_stmt_info):  Relocate here from gimple.h.
* gimple-iterator.h: New File.  Relocate prototypes from gimple.h.
(struct gimple_stmt_iterator_d): Relocate here from gimple.h.
(gsi_start_1, gsi_none, gsi_start_bb, gsi_last_1, gsi_last_bb,
gsi_end_p, gsi_one_before_end_p, gsi_next, gsi_prev, gsi_stmt,
gsi_after_labels, gsi_next_nondebug, gsi_prev_nondebug,
gsi_start_nondebug_bb, gsi_start_nondebug_after_labels_bb,
gsi_last_nondebug_bb, gsi_bb, gsi_seq): Relocate here from gimple.h.
* gimple.h (struct gimple_stmt_iterator_d): Move to gimple-iterator.h.
(gsi_start_1, gsi_none, gsi_start_bb, gsi_last_1, gsi_last_bb,
gsi_end_p, gsi_one_before_end_p, gsi_next, gsi_prev, gsi_stmt,
gsi_after_labels, gsi_next_nondebug, gsi_prev_nondebug,
gsi_start_nondebug_bb, gsi_start_nondebug_after_labels_bb,
gsi_last_nondebug_bb, gsi_bb, gsi_seq): Move to gimple-iterator.h.
(struct walk_stmt_info): Move to gimple-walk.h.
(gimple_seq_set_location): Move to gimple.c
* gimple-walk.c: New File.
(walk_gimple_seq_mod, walk_gimple_seq, walk_gimple_asm, walk_gimple_op,
walk_gimple_stmt, get_base_loadstore, walk_stmt_load_store_addr_ops,
walk_stmt_load_store_ops): Relocate here from gimple.c.
* gimple-iterator.c: Include gimple-iterator.h.
* gimple.c (walk_gimple_seq_mod, walk_gimple_seq, walk_gimple_asm,
walk_gimple_op, walk_gimple_stmt, get_base_loadstore,
walk_stmt_load_store_addr_ops, walk_stmt_load_store_ops): Move to
gimple-walk.c.
(gimple_seq_set_location): Relocate from gimple.h.
* tree-phinodes.h (set_phi_nodes): Move to tree-phinodes.c.
* tree-phinodes.c (set_phi_nodes): Relocate from tree-phinodes.h.
* gengtype.c (open_base_files): Add gimple-iterator.h to include list.
* Makefile.in (OBJS): Add gimple-walk.o

* asan.c: Update Include list as required for gimple-iterator.h and
gimple-walk.h.
* cfgexpand.c: Likewise.
* cfgloop.c: Likewise.
* cfgloopmanip.c: Likewise.
* cgraph.c: Likewise.
* cgraphbuild.c: Likewise.
* cgraphunit.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-low.c: Likewise.
* gimple-pretty-print.c: Likewise.
* gimple-ssa-isolate-paths.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimple-streamer-in.c: Likewise.
* gimple-streamer-out.c: Likewise.
* gimplify.c: Likewise.
* graphite-blocking.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-profile.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-pure-const.c: Likewise.
* ipa-split.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* omp-low.c: Likewise.
* predict.c: Likewise.
* profile.c: Likewise.
* sese.c: Likewise.
* tracer.c: Likewise.
* trans-mem.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-complex.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-dfa.c: Likewise.
* tree-eh.c: Likewise.
* tree-emutls.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-nested.c: Likewise.
* tree-nrv.c: Likewise.
* tree-object-size.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-copyrename.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-dse.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sink.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-ter.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-ssa.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* tsan.c: Likewise.
* value-prof.c: Likewise.
* vtable-verify.c: Likewise.

* config/aarch64/aarch64-builtins.c: Include gimple-iterator.h.
* config/rs6000/rs6000.c: Include gimple-iterator.h and gimple-walk.h.
* testsuite/g++.dg/plugin/selfassign.c: Include gimple-iterator.h.
* testsuite/gcc.dg/plugin/selfassign.c: Likewise.

From-SVN: r204763

10 years agogimple-ssa-isolate-paths.c (pass_isolate_erroneous_paths): Comment fix.
Steven Bosscher [Wed, 13 Nov 2013 23:23:18 +0000 (23:23 +0000)]
gimple-ssa-isolate-paths.c (pass_isolate_erroneous_paths): Comment fix.

* gimple-ssa-isolate-paths.c (pass_isolate_erroneous_paths): Comment fix.

From-SVN: r204762

10 years agore PR middle-end/59119 (Segfault in -fisolate-erroneous-paths pass)
Jeff Law [Wed, 13 Nov 2013 23:10:34 +0000 (16:10 -0700)]
re PR middle-end/59119 (Segfault in -fisolate-erroneous-paths pass)

* PR middle-end/59119
* gimple-ssa-isolate-paths.c (find_implicit_erroneous_behaviour): New
function, extracted from gimple_ssa_isolate_erroneous_paths.
(find_explicit_erroneous_behaviour): Similarly.
(insert_trap_and_remove_trailing_statements): Remove statements
in reverse order.

* PR middle-end/59119
* gcc.c-torture/compile/pr59119.c: New test.

From-SVN: r204760

10 years agotypo fix
Steven Bosscher [Wed, 13 Nov 2013 22:58:03 +0000 (22:58 +0000)]
typo fix

From-SVN: r204759

10 years agocfgrtl.c (can_fallthru): Reorder code to move tablejump check up.
Steven Bosscher [Wed, 13 Nov 2013 22:55:49 +0000 (22:55 +0000)]
cfgrtl.c (can_fallthru): Reorder code to move tablejump check up.

* cfgrtl.c (can_fallthru): Reorder code to move tablejump check up.
Make that check explicit.  BB_HEAD cannot be NULL, remove check for it.
* haifa-sched.c (ready_remove_first_dispatch): Check INSN_P before
looking at INSN_CODE.
* reload1.c (delete_dead_insn) Do not expect JUMP_TABLE_DATA to be an
active_insn_p object, respect basic block boundaries.
* reorg.c (follow_jumps): Use invariant that JUMP_TABLE_DATA always
follows immediately after the jump table data label.
* config/nds32/nds32.c (nds32_output_casesi_pc_relative): Likewise.
* config/sh/sh.c (barrier_align): Likewise.  Rearrange code such
that JUMP_TABLE_DATA is not expected to be an active_insn_p object.

From-SVN: r204758

10 years agore PR sanitizer/59009 (libsanitizer merge from upstream r191666 breaks bootstrap...
Peter Bergner [Wed, 13 Nov 2013 22:34:33 +0000 (16:34 -0600)]
re PR sanitizer/59009 (libsanitizer merge from upstream r191666 breaks bootstrap on powerpc64-linux and aarch64-linux)

PR sanitizer/59009
* sanitizer_common/sanitizer_platform_limits_posix.cc: Temporarily
ifdef out more source.

From-SVN: r204757

10 years agore PR ipa/58862 (LTO profiledbootstrap failure: lto1: ICE in edge_badness, at ipa...
Teresa Johnson [Wed, 13 Nov 2013 21:51:44 +0000 (21:51 +0000)]
re PR ipa/58862 (LTO profiledbootstrap failure: lto1: ICE in edge_badness, at ipa-inline.c:1008)

2013-11-13  Teresa Johnson  <tejohnson@google.com>

PR ipa/58862
* predict.c (drop_profile): Error is currently too strict.
(handle_missing_profiles): Pass call_count to drop_profile.

From-SVN: r204756

10 years agore PR ipa/58862 (LTO profiledbootstrap failure: lto1: ICE in edge_badness, at ipa...
Teresa Johnson [Wed, 13 Nov 2013 21:48:59 +0000 (21:48 +0000)]
re PR ipa/58862 (LTO profiledbootstrap failure: lto1: ICE in edge_badness, at ipa-inline.c:1008)

2013-11-13  Teresa Johnson  <tejohnson@google.com>

PR ipa/58862
* ipa-inline.c (edge_badness): Fix overflow.

From-SVN: r204755

10 years agore PR rtl-optimization/59036 (Performance degradation after r204212 on 32-bit x86...
Vladimir Makarov [Wed, 13 Nov 2013 18:00:43 +0000 (18:00 +0000)]
re PR rtl-optimization/59036 (Performance degradation after r204212 on 32-bit x86 targets.)

2013-11-13  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/59036
* ira-color.c (struct allocno_color_data): Add new members
first_thread_allocno, next_thread_allocno, thread_freq.
(sorted_copies): New static var.
(allocnos_conflict_by_live_ranges_p, copy_freq_compare_func): Move
up.
(allocno_thread_conflict_p, merge_threads)
(form_threads_from_copies, form_threads_from_bucket)
(form_threads_from_colorable_allocno, init_allocno_threads): New
functions.
(bucket_allocno_compare_func): Add comparison by thread frequency
and threads.
(add_allocno_to_ordered_bucket): Rename to
add_allocno_to_ordered_colorable_bucket.  Remove parameter.
        (push_only_colorable): Call form_threads_from_bucket.
(color_pass): Call init_allocno_threads.  Use
consideration_allocno_bitmap instead of coloring_allocno_bitmap
for nuillify allocno color data.
(ira_initiate_assign, ira_finish_assign): Allocate/free
sorted_copies.
(coalesce_allocnos): Use static sorted copies.

From-SVN: r204752

10 years agopasses.c (execute_todo): Don't call do_per_function if flags are zero.
Jakub Jelinek [Wed, 13 Nov 2013 17:34:29 +0000 (18:34 +0100)]
passes.c (execute_todo): Don't call do_per_function if flags are zero.

* passes.c (execute_todo): Don't call do_per_function if
flags are zero.
(execute_one_ipa_transform_pass, execute_one_pass): Don't call
execute_function_dump if dump_file is NULL.

From-SVN: r204751

10 years agore PR libstdc++/59087 (Issues including complex.h in C++11/1y mode because of C's...
Marc Glisse [Wed, 13 Nov 2013 15:47:04 +0000 (16:47 +0100)]
re PR libstdc++/59087 (Issues including complex.h in C++11/1y mode because of C's complex.h)

2013-11-13  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/59087
* include/ext/pod_char_traits.h: Uglify V, I and S.

From-SVN: r204750

10 years agoira-shrinkwrap-prep-1.c: Add lp64 to target requirements.
Martin Jambor [Wed, 13 Nov 2013 15:41:39 +0000 (16:41 +0100)]
ira-shrinkwrap-prep-1.c: Add lp64 to target requirements.

2013-11-13  Martin Jambor  <mjambor@suse.cz>

* gcc.dg/ira-shrinkwrap-prep-1.c: Add lp64 to target requirements.
* gcc.dg/ira-shrinkwrap-prep-2.c: Likewise.
* gcc.dg/pr10474.c: Likewise.

From-SVN: r204749

10 years agocgraph.c (cgraph_get_create_node): Do what cgraph_get_create_real_symbol_node used...
Martin Jambor [Wed, 13 Nov 2013 15:34:47 +0000 (16:34 +0100)]
cgraph.c (cgraph_get_create_node): Do what cgraph_get_create_real_symbol_node used to do.

2013-11-13  Martin Jambor  <mjambor@suse.cz>

* cgraph.c (cgraph_get_create_node): Do what
cgraph_get_create_real_symbol_node used to do.
(cgraph_get_create_real_symbol_node): Removed.  Changed all users to
call cgraph_get_create_node.
* cgraph.h (cgraph_get_create_real_symbol_node): Removed.
* lto-streamer-in.c (input_function): Call cgraph_get_node instead of
cgraph_get_create_node.  Assert we get a node.

From-SVN: r204748

10 years agoaarch64-simd.md (vec_extract): New.
Tejas Belagod [Wed, 13 Nov 2013 15:07:27 +0000 (15:07 +0000)]
aarch64-simd.md (vec_extract): New.

2013-11-13  Tejas Belagod  <tejas.belagod@arm.com>

gcc/
* config/aarch64/aarch64-simd.md (vec_extract): New.

From-SVN: r204747

10 years agoaarch64-simd.md (vec_set<mode>): Add w -> w option to the constraint.
Tejas Belagod [Wed, 13 Nov 2013 15:04:44 +0000 (15:04 +0000)]
aarch64-simd.md (vec_set<mode>): Add w -> w option to the constraint.

2013-11-13  Tejas Belagod  <tejas.belagod@arm.com>

gcc/
* config/aarch64/aarch64-simd.md (vec_set<mode>): Add w -> w option to
the constraint.

From-SVN: r204746

10 years ago2013-11-13 Cesar Philippidis <cesar@codesourcery.com>
Cesar Philippidis [Wed, 13 Nov 2013 14:18:31 +0000 (06:18 -0800)]
2013-11-13  Cesar Philippidis  <cesar@codesourcery.com>

    * lib/target-supports.exp
    (check_effective_target_vect_cmdline_neeed): Add AArch64 to the list
    of targets that do not need command line argument to enable SIMD.

From-SVN: r204745

10 years agoRemove ada/ prefix
Eric Botcazou [Wed, 13 Nov 2013 12:27:09 +0000 (12:27 +0000)]
Remove ada/ prefix

From-SVN: r204743

10 years agocfgexpand.c (expand_used_vars): Allocate space for partitions based on PARM_DECLs...
Eric Botcazou [Wed, 13 Nov 2013 12:15:47 +0000 (12:15 +0000)]
cfgexpand.c (expand_used_vars): Allocate space for partitions based on PARM_DECLs or RESULT_DECLs only if...

* cfgexpand.c (expand_used_vars): Allocate space for partitions based
on PARM_DECLs or RESULT_DECLs only if they are ignored for debug info
or if optimization is enabled.
* tree-ssa-coalesce.c (coalesce_ssa_name): If optimization is disabled,
require that all the names based on a PARM_DECL or a RESULT_DECL that
isn't ignored for debug info be coalesced.

From-SVN: r204742

10 years agoc6x.c: Include "gimple-expr.h".
Jan-Benedict Glaw [Wed, 13 Nov 2013 12:14:40 +0000 (12:14 +0000)]
c6x.c: Include "gimple-expr.h".

2013-11-13  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

* config/c6x/c6x.c: Include "gimple-expr.h".

[BR]: http://gcc.gnu.org/ml/gcc-patches/2013-11/msg01411.html

From-SVN: r204741

10 years agogimple-streamer-out.c (output_gimple_stmt): Also wrap decls in ADDR_EXPR operands...
Richard Biener [Wed, 13 Nov 2013 11:58:12 +0000 (11:58 +0000)]
gimple-streamer-out.c (output_gimple_stmt): Also wrap decls in ADDR_EXPR operands inside a MEM_REF and optimize that.

2013-11-13  Richard Biener  <rguenther@suse.de>

* gimple-streamer-out.c (output_gimple_stmt): Also wrap
decls in ADDR_EXPR operands inside a MEM_REF and optimize that.
* gimple-streamer-in.c (input_gimple_stmt): Remove now dead
code dealing with type mismatches inside component reference
chains.

From-SVN: r204740

10 years agore PR tree-optimization/59077 (ipa-pure-const.c (better_state): comment and code...
Marc Glisse [Wed, 13 Nov 2013 11:55:01 +0000 (12:55 +0100)]
re PR tree-optimization/59077 (ipa-pure-const.c (better_state): comment and code mistmatch)

2013-11-13  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/59077
* ipa-pure-const.c (better_state): Update *state.

From-SVN: r204739

10 years agoaarch64.h (FRAME_GROWS_DOWNWARD): Define to 1.
Christophe Lyon [Wed, 13 Nov 2013 10:11:00 +0000 (10:11 +0000)]
aarch64.h (FRAME_GROWS_DOWNWARD): Define to 1.

2013-11-13  Christophe Lyon  <christophe.lyon@linaro.org>

* config/aarch64/aarch64.h (FRAME_GROWS_DOWNWARD): Define to 1.
* config/aarch64/aarch64.c (aarch64_initial_elimination_offset):
Update offset calculations.

From-SVN: r204737

10 years agore PR ada/35998 (debug info invalid x86_64 DW_AT_byte_size 0xffffffff)
Eric Botcazou [Wed, 13 Nov 2013 10:07:14 +0000 (10:07 +0000)]
re PR ada/35998 (debug info invalid x86_64 DW_AT_byte_size 0xffffffff)

PR ada/35998
* dwarf2out.c (add_byte_size_attribute): Also use int_size_in_bytes
for fields.  Do not add the attribute if the size is negative.

From-SVN: r204736

10 years agoarm.c: Include aarch-cost-tables.h.
Kyrylo Tkachov [Wed, 13 Nov 2013 09:45:20 +0000 (09:45 +0000)]
arm.c: Include aarch-cost-tables.h.

* config/arm/arm.c: Include aarch-cost-tables.h.
(generic_extra_costs): Move from here...
* config/arm/aarch-cost-tables.h: ... To here.  New file.

From-SVN: r204735

10 years agoi386.c (ix86_print_operand): Support z-masking.
Alexander Ivchenko [Wed, 13 Nov 2013 08:21:57 +0000 (08:21 +0000)]
i386.c (ix86_print_operand): Support z-masking.

* config/i386/i386.c (ix86_print_operand): Support z-masking.
* config/i386/predicate.md (const_0_to_4_operand): New.
(const_0_to_5_operand): Ditto.
* config/i386/sse.md (UNSPEC_COMPRESS): New.
(UNSPEC_COMPRESS_STORE): Ditto.
(UNSPEC_EXPAND): Ditto.
(UNSPEC_EMBEDDED_ROUNDING): Ditto.
(define_mode_attr ssescalarsize): Ditto.
(avx512f_load<mode>_mask): Ditto.
(avx512f_store<mode>_mask): Ditto.
(avx512f_storedqu<mode>_mask): Ditto.
(avx512f_vmcmp<mode>3_mask): Ditto.
(avx512f_fmadd_<mode>_mask): Ditto.
(avx512f_fmadd_<mode>_mask3): Ditto.
(avx512f_fmsub_<mode>_mask): Ditto.
(avx512f_fmsub_<mode>_mask3): Ditto.
(avx512f_fnmadd_<mode>_mask): Ditto.
(avx512f_fnmadd_<mode>_mask3): Ditto.
(avx512f_fnmsub_<mode>_mask): Ditto.
(avx512f_fnmsub_<mode>_mask3): Ditto.
(avx512f_fmaddsub_<mode>_mask): Ditto.
(avx512f_fmaddsub_<mode>_mask3): Ditto.
(avx512f_fmsubadd_<mode>_mask): Ditto.
(avx512f_fmsubadd_<mode>_mask3): Ditto.
(vec_unpacku_float_lo_v16si): Ditto.
(avx512f_vextract<shuffletype>32x4_mask): Ditto.
(avx512f_vextract<shuffletype>32x4_1_maskm): Ditto.
(avx512f_vextract<shuffletype>64x4_mask): Ditto.
(vec_extract_lo_<mode>_maskm): Ditto.
(vec_extract_hi_<mode>_maskm): Ditto.
(avx512f_vternlog<mode>_mask): Ditto.
(avx512f_shufps512_mask): Ditto.
(avx512f_fixupimm<mode>_mask): Ditto.
(avx512f_shufpd512_mask): Ditto.
(avx512f_<code><pmov_src_lower><mode>2_mask): Ditto.
(avx512f_<code>v8div16qi2_mask/trunc): Ditto.
(*avx512f_<code>v8div16qi2_store_mask): Ditto.
(ashr<mode>3<mask_name>): Ditto.
(avx512f_vinsert<shuffletype>32x4_mask): Ditto.
(avx512f_vinsert<shuffletype>64x4_mask): Ditto.
(avx512f_shuf_<shuffletype>64x2_mask): Ditto.
(avx512f_shuf_<shuffletype>32x4_mask): Ditto.
(avx512f_pshufdv3_mask): Ditto.
(avx512f_perm<mode>_mask): Ditto.
(avx512f_vpermi2var<mode>3_mask): Ditto.
(avx512f_vpermt2var<mode>3_mask): Ditto.
(avx512f_compress<mode>_mask): Ditto.
(avx512f_compressstore<mode>_mask): Ditto.
(avx512f_expand<mode>_mask): Ditto.
(<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>): Extend
to support masking.
(avx512f_storeu<ssemodesuffix>512_mask): Ditto.
(<plusminus_insn><mode>3<mask_name>): Ditto.
(*<plusminus_insn><mode>3<mask_name>): Ditto.
(mul<mode>3<mask_name>): Ditto.
(*mul<mode>3<mask_name>): Ditto.
(<sse>_div<mode>3<mask_name>): Ditto.
(<mask_codefor>rcp14<mode><mask_name>): Ditto.
(<sse>_sqrt<mode>2<mask_name>): Ditto.
(<mask_codefor>rsqrt14<mode><mask_name>): Ditto.
(<code><mode>3<mask_name>/smaxmin): Ditto.
(*<code><mode>3_finite<mask_name>/smaxmin): Ditto.
(*<code><mode>3<mask_name>/smaxmin): Ditto.
(float<sseintvecmodelower><mode>2<mask_name>): Ditto.
(ufloatv16siv16sf2<mask_name>): Ditto.
(<mask_codefor>avx512f_fix_notruncv16sfv16si<mask_name>): Ditto.
(<mask_codefor>avx512f_ufix_notruncv16sfv16si<mask_name>): Ditto.
(<fixsuffix>fix_truncv16sfv16si2<mask_name>): Ditto.
(float<si2dfmodelower><mode>2<mask_name>): Ditto.
(ufloatv8siv8df<mask_name>): Ditto.
(<mask_codefor>avx512f_cvtpd2dq512<mask_name>): Ditto.
(avx512f_ufix_notruncv8dfv8si<mask_name>): Ditto.
(<fixsuffix>fix_truncv8dfv8si2<mask_name>): Ditto.
(<mask_codefor>avx512f_cvtpd2ps512<mask_name>): Ditto.
(<sse2_avx_avx512f>_cvtps2pd<avxsizesuffix><mask_name>): Ditto.
(<mask_codefor>avx512f_unpckhps512<mask_name>): Ditto.
(<mask_codefor>avx512f_unpcklps512<mask_name>): Ditto.
(<mask_codefor>avx512f_movshdup512<mask_name>): Ditto.
(<mask_codefor>avx512f_movsldup512<mask_name>): Ditto.
(<mask_codefor>avx512f_vextract<shuffletype>32x4_1<mask_name>): Ditto.
(vec_extract_lo_<mode><mask_name>): Ditto.
(vec_extract_hi_<mode><mask_name>): Ditto.
(<mask_codefor>avx512f_unpckhpd512<mask_name>): Ditto.
(avx512f_movddup512<mask_name>): Ditto.
(avx512f_unpcklpd512<mask_name>): Ditto.
(*avx512f_unpcklpd512<mask_name>): Ditto.
(*avx512f_vmscalef<mode>): Ditto.
(avx512f_scalef<mode><mask_name>): Ditto.
(avx512f_getexp<mode><mask_name>): Ditto.
(<mask_codefor>avx512f_align<mode><mask_name>): Ditto.
(avx512f_rndscale<mode><mask_name>): Ditto.
(avx512f_shufps512_1<mask_name>): Ditto.
(avx512f_shufpd512_1<mask_name>): Ditto.
(<plusminus_insn><mode>3<mask_name>): Ditto.
(*<plusminus_insn><mode>3<mask_name>): Ditto.
(vec_widen_umult_even_v16si<mask_name>): Ditto.
(*vec_widen_umult_even_v16si<mask_name>): Ditto.
(vec_widen_smult_even_v16si<mask_name>): Ditto.
(*vec_widen_smult_even_v16si<mask_name>): Ditto.
(mul<mode>3<mask_name>): Ditto.
(*<sse4_1_avx2>_mul<mode>3<mask_name>): Ditto.
(<shift_insn><mode>3<mask_name>): Ditto.
(avx512f_<rotate>v<mode><mask_name>/rotate): Ditto.
(avx512f_<rotate><mode><mask_name>): Ditto.
(<code><mode>3<mask_name>/maxmin): Ditto.
(*avx2_<code><mode>3<mask_name>/maxmin): Ditto.
(<sse2_avx2>_andnot<mode>3<mask_name>): Ditto.
(*andnot<mode>3<mask_name>): Ditto.
(<mask_codefor><code><mode>3<mask_name>/any_logic): Ditto.
(<mask_codefor>avx512f_interleave_highv16si<mask_name>): Ditto.
(<mask_codefor>avx512f_interleave_lowv16si<mask_name>): Ditto.
(<mask_codefor>avx512f_vinsert<shuffletype>32x4_1<mask_name>): Ditto.
(vec_set_lo_<mode><mask_name>): Ditto.
(vec_set_hi_<mode><mask_name>): Ditto.
(avx512f_shuf_<shuffletype>64x2_1<mask_name>): Ditto.
(avx512f_shuf_<shuffletype>32x4_1<mask_name>): Ditto.
(avx512f_pshufd_1<mask_name>): Ditto.
(<mask_codefor>abs<mode>2<mask_name>): Ditto.
(<mask_codefor>avx512f_<code>v16qiv16si2<mask_name>): Ditto.
(avx512f_<code>v16hiv16si2<mask_name>/any_extend): Ditto.
(avx512f_<code>v8qiv8di2<mask_name>/any_extend): Ditto.
(avx512f_<code>v8hiv8di2<mask_name>/any_extend): Ditto.
(avx512f_<code>v8siv8di2<mask_name>/any_extend): Ditto.
(avx512er_exp2<mode><mask_name>): Ditto.
(<mask_codefor>avx512er_rcp28<mode><mask_name>): Ditto.
(<mask_codefor>avx512er_rsqrt28<mode><mask_name>): Ditto.
(<avx2_avx512f>_permvar<mode><mask_name>): Ditto.
(<avx2_avx512f>_perm<mode>_1<mask_name>): Ditto.
(<mask_codefor>avx512f_vec_dup<mode><mask_name>): Ditto.
(<mask_codefor>avx512f_broadcast<mode><mask_name>/V16FI): Ditto.
(<mask_codefor>avx512f_broadcast<mode><mask_name>/V8FI): Ditto.
(<mask_codefor>avx512f_vec_dup_gpr<mode><mask_name>): Ditto.
(<mask_codefor>avx512f_vec_dup_mem<mode><mask_name>): Ditto.
(<sse2_avx_avx512f>_vpermil<mode><mask_name>/VF2): Ditto.
(<sse2_avx_avx512f>_vpermil<mode><mask_name>/VF1): Ditto.
(*<sse2_avx_avx512f>_vpermilp<mode><mask_name>): Ditto.
(<sse2_avx_avx512f>_vpermilvar<mode>3<mask_name>): Ditto.
(<avx2_avx512f>_ashrv<mode><mask_name>): Ditto.
(<avx2_avx512f>_<shift_insn>v<mode><mask_name>): Ditto.
(<mask_codefor>avx512f_vcvtph2ps512<mask_name>): Ditto.
(<mask_codefor>avx512f_vcvtps2ph512<mask_name>): Ditto.
(avx512f_getmant<mode><mask_name>): Ditto.
(clz<mode>2<mask_name>): Ditto.
(<mask_codefor>conflict<mode><mask_name>): Ditto.
(*srcp14<mode>): Remove visibility.
(*rsqrt14<mode>): Ditto.
(*fma_fmsub_<mode>): Ditto.
(*fma_fnmadd_<mode>): Ditto.
(*avx512f_rndscale<mode>): Ditto.
* config/i386/subst.md: New file.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>
From-SVN: r204734

10 years ago* gcc.dg/c11-complex-1.c: New test.
Joseph Myers [Wed, 13 Nov 2013 00:43:03 +0000 (00:43 +0000)]
* gcc.dg/c11-complex-1.c: New test.

From-SVN: r204732

10 years agoextend.texi (Statement Exprs, Typeof): Discuss __auto_type.
Joseph Myers [Wed, 13 Nov 2013 00:38:49 +0000 (00:38 +0000)]
extend.texi (Statement Exprs, Typeof): Discuss __auto_type.

* doc/extend.texi (Statement Exprs, Typeof): Discuss __auto_type.
* ginclude/stdatomic.h (kill_dependency, atomic_store_explicit)
(atomic_load_explicit, atomic_exchange_explicit)
(atomic_compare_exchange_strong_explicit)
(atomic_compare_exchange_weak_explicit): Use __auto_type to
declare variable initialized with PTR argument.

c-family:
* c-common.h (enum rid): Add RID_AUTO_TYPE.
* c-common.c (c_common_reswords): Add __auto_type.
(keyword_begins_type_specifier): Handle RID_AUTO_TYPE.

c:
* c-tree.h (c_typespec_keyword): Add cts_auto_type.
* c-decl.c (declspecs_add_type, finish_declspecs): Handle
__auto_type.
* c-parser.c (c_token_starts_typename, c_token_starts_declspecs)
(c_parser_attribute_any_word, c_parser_objc_selector): Handle
RID_AUTO_TYPE.
(c_parser_declspecs): Take argument AUTO_TYPE_OK.
(c_parser_declaration_or_fndef, c_parser_struct_declaration)
(c_parser_declarator, c_parser_direct_declarator_inner)
(c_parser_parameter_declaration, c_parser_type_name): All callers
changed.
(c_parser_declaration_or_fndef): Handle declarations with type
determined from the initializer.

testsuite:
* gcc.dg/atomic/stdatomic-vm.c, gcc.dg/auto-type-1.c,
gcc.dg/auto-type-2.c: New tests.

From-SVN: r204731

10 years agoThe patch re-factors libgcov.c to make it better modulelized.
Rong Xu [Wed, 13 Nov 2013 00:24:49 +0000 (00:24 +0000)]
The patch re-factors libgcov.c to make it better modulelized.

2013-11-12  Rong Xu  <xur@google.com>

The patch re-factors libgcov.c to make it better modulelized.
It contains two pieces of work:
1. break gcov_exit() into the following structure:
   gcov_exit()
      --> gcov_exit_compute_summary()
      --> allocate_filename_struct()
          for gi_ptr in gcov_list
            --> gcov_exit_dump_gcov()
                   --> gcov_exit_open_gcda_file()
                   --> gcov_exit_merge_gcda ()
                   --> gcov_exit_merge_summary ()
                   --> gcov_exit_write_gcda ()
2. split libgcov.c into the following files:
     libgcov-profiler.c
     libgcov-merge.c
     libgcov-interface.c
     libgcov-driver.c
       libgcov-driver-system.c (source included into libgcov-driver.c)

* libgcc/libgcov.c: Delete as part of re-factoring.
* gcc/gcov-io.h (__gcov_indirect_call_profiler): Add the decl to
        avoid warning.
* libgcc/libgcov-interface.c (init_mx): Moved from libgcov.c.
(init_mx_once): Ditto.
(__gcov_flush): Ditto.
(__gcov_reset): Ditto.
(__gcov_dump): Ditto.
(__gcov_fork): Ditto.
(__gcov_execl): Ditto.
(__gcov_execlp): Ditto.
(__gcov_execle): Ditto.
(__gcov_execv): Ditto.
(__gcov_execvp): Ditto.
(__gcov_execve): Ditto.
        * libgcc/libgcov-merge.c (__gcov_merge_time_profile): Moved from
        libgcov.c.
(__gcov_merge_add): Ditto.
(__gcov_merge_ior): Ditto.
(__gcov_merge_single): Ditto.
(__gcov_merge_delta): Ditto.
* libgcc/libgcov-profiler.c
(__gcov_interval_profiler): Ditto.
(__gcov_pow2_profiler): Ditto.
(__gcov_one_value_profiler_body): Ditto.
(__gcov_one_value_profiler): Ditto.
(__gcov_indirect_call_profiler): Ditto.
(__gcov_indirect_call_profiler_v2): Ditto.
(__gcov_time_profiler): Ditto.
(__gcov_average_profiler): Ditto.
(__gcov_ior_profiler): Ditto.
* libgcc/libgcov-driver.c (set_gcov_list): New.
(get_gcov_dump_complete): Ditto.
(set_gcov_dump_complete):Ditto.
(reset_gcov_dump_complete):Ditto.
(gcov_exit_compute_summary): New function split from gcov_exit().
(gcov_exit_merge_gcda): Ditto.
(gcov_exit_write_gcda): Ditto.
(gcov_exit_merge_summary): Ditto.
(gcov_exit_dump_gcov): Ditto.
(struct gcov_fn_buffer): Moved from libgcov.c
(struct gcov_summary_buffer): Ditto.
(free_fn_data): Ditto.
(buffer_fn_data): Ditto.
(crc32_unsigned): Ditto.
(gcov_version): Ditto.
(gcov_histogram_insert): Ditto.
(gcov_compute_histogram): Ditto.
(gcov_exit): Ditto.
(gcov_clear): Ditto.
(__gcov_init): Ditto.
        (this_prg): Make it file scope static variable.
        (all_prg): Ditto.
        (crc32): Ditto.
        (gi_filename): Ditto.
        (fn_buffer): Ditto.
        (sum_buffer): Ditto.
        (struct gcov_filename_aux): New types to store auxiliary information
        for gi_filename.
* libgcc/libgcov-driver-system.c (gcov_error): New utility function.
(allocate_filename_struct): New function split from gcov_exit().
(gcov_exit_open_gcda_file): Ditto.
(create_file_directory): Moved from libgcov.c
* libgcc/Makefile.in: Change to build newly added files.

From-SVN: r204730

10 years agoDaily bump.
GCC Administrator [Wed, 13 Nov 2013 00:17:16 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r204729

10 years agosanitizer_platform_limits_linux.cc: Temporarily ifdef out almost the whole source.
Jakub Jelinek [Tue, 12 Nov 2013 23:42:55 +0000 (00:42 +0100)]
sanitizer_platform_limits_linux.cc: Temporarily ifdef out almost the whole source.

* sanitizer_common/sanitizer_platform_limits_linux.cc: Temporarily
ifdef out almost the whole source.
* sanitizer_common/sanitizer_common_syscalls.inc: Likewise.

From-SVN: r204726

10 years ago+2013-11-12 Balaji V.
Balaji V. Iyer [Tue, 12 Nov 2013 23:17:26 +0000 (23:17 +0000)]
+2013-11-12 Balaji V.

+2013-11-12  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * gcc.dg/cilk-plus/cilk-plus.exp: Added a check for LTO before running
+       LTO tests.
+

From-SVN: r204725

10 years agotree-ssa-threadedge.c (thread_around_empty_blocks): New argument backedge_seen_p.
Jeff Law [Tue, 12 Nov 2013 23:15:13 +0000 (16:15 -0700)]
tree-ssa-threadedge.c (thread_around_empty_blocks): New argument backedge_seen_p.

* tree-ssa-threadedge.c (thread_around_empty_blocks): New
argument backedge_seen_p.  Set, use and pass it to children
appropriately.
(thread_through_normal_block): Similarly.
(thread_across_edge): Similarly.

From-SVN: r204724

10 years agoMakefile.am (libcilkrts_la_LDFLAGS): Added a check for availability of "-ldl" flag.
Balaji V. Iyer [Tue, 12 Nov 2013 23:13:13 +0000 (23:13 +0000)]
Makefile.am (libcilkrts_la_LDFLAGS): Added a check for availability of "-ldl" flag.

2013-11-12  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * Makefile.am (libcilkrts_la_LDFLAGS): Added a check for availability
        of "-ldl" flag.
        * configure.ac: Likewise.
        * configure: Regenerate
        * Makefile.in: Likewise.

From-SVN: r204723

10 years agogimple-ssa-isolate-paths.c (check_loadstore): Mark discovered memory references as...
Jeff Law [Tue, 12 Nov 2013 23:09:09 +0000 (16:09 -0700)]
gimple-ssa-isolate-paths.c (check_loadstore): Mark discovered memory references as volatile.

* gimple-ssa-isolate-paths.c (check_loadstore): Mark discovered
memory references as volatile.
(insert_trap_and_remove_trailing_statements): Fix comment.

* gcc.dg/tree-ssa/isolate-1.c: Update expected output.
* gcc.dg/tree-ssa/isolate-5.c: Verify the load survives through
the SSA optimizers.

From-SVN: r204722

10 years agocompiler: Update for mainline changes.
Ian Lance Taylor [Tue, 12 Nov 2013 22:44:15 +0000 (22:44 +0000)]
compiler: Update for mainline changes.

From Andrew MacLeod.

From-SVN: r204721

10 years agore PR other/58712 (issues found by --enable-checking=valgrind)
Vladimir Makarov [Tue, 12 Nov 2013 21:33:06 +0000 (21:33 +0000)]
re PR other/58712 (issues found by --enable-checking=valgrind)

2013-11-12  Vladimir Makarov  <vmakarov@redhat.com>

PR other/58712
* ira-costs.c (record_operand_costs): Check operands number for
the single set.

From-SVN: r204720

10 years agore PR target/59054 (Powerpc -O0 -mcpu=power7 generates sub-optimal code to load 0)
Michael Meissner [Tue, 12 Nov 2013 20:55:58 +0000 (20:55 +0000)]
re PR target/59054 (Powerpc -O0 -mcpu=power7 generates sub-optimal code to load 0)

2013-11-12  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/59054
* config/rs6000/rs6000.md (movdi_internal32): Eliminate
constraints that would allow DImode into the traditional Altivec
registers, but cause undesirable code generation when loading 0 as
a constant.
(movdi_internal64): Likewise.
(cmp<mode>_fpr): Do not use %x for CR register output.
(extendsfdf2_fpr): Fix constraints when -mallow-upper-df and
-mallow-upper-sf debug switches are used.

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

PR target/59054
* gcc.target/powerpc/pr59054.c: New test.

From-SVN: r204718

10 years agogimple-expr.h (create_tmp_var_name, [...]): Relocate prototypes from gimple.h.
Andrew MacLeod [Tue, 12 Nov 2013 20:26:43 +0000 (20:26 +0000)]
gimple-expr.h (create_tmp_var_name, [...]): Relocate prototypes from gimple.h.

2013-11-12  Andrew MacLeod  <amacleod@redhat.com>

* gimple-expr.h (create_tmp_var_name, create_tmp_var_raw,
create_tmp_var, create_tmp_reg, mark_addressable, is_gimple_reg_rhs):
Relocate prototypes from gimple.h.
* gimplify.h: New File.  Relocate some prototypes from gimple.h here.
(gimple_predicate, enum fallback, enum gimplify_status): Relocate
from gimple.h.
* gimple.h: Move some prototypes to gimplify.h.
(gimple_predicate, enum fallback, enum gimplify_status): Move to
gimplify.h.
(gimple_do_not_emit_location_p, gimple_set_do_not_emit_location):
Relocate from gimpify.c.
* gimple-expr.c (remove_suffix, tmp_var_id_num, create_tmp_var_name,
create_tmp_var_raw, create_tmp_var, create_tmp_reg, mark_addressable,
is_gimple_reg_rhs) Relocate from gimplify.c.
* gimplify.c (mark_addressable): Move to gimple-expr.c.
(gimple_seq_add_stmt_without_update): Move to gimple.c.
(remove_suffix, tmp_var_id_num, create_tmp_var_name, create_tmp_var_raw,
create_tmp_var, create_tmp_reg, is_gimple_reg_rhs): Move to
gimple-expr.c.
(should_carry_location_p): Move to gimple.c.
(gimple_do_not_emit_location_p, gimple_set_do_not_emit_location): Move
to gimple.h.
(annotate_one_with_location, annotate_all_with_location_after,
annotate_all_with_location): Move to gimple.c.
(compare_case_labels, sort_case_labels,
preprocess_case_label_vec_for_gimple): Move to gimple.c.
(rhs_predicate_for): Make static.
(gimplify_assign): Relocate from gimple.c.
* gimple.c (gimplify_assign): Move to gimplify.c.
(gimple_seq_add_stmt_without_update, should_carry_location_p,
annotate_one_with_location, annotate_all_with_location_after,
annotate_all_with_location, compare_case_labels, sort_case_labels,
preprocess_case_label_vec_for_gimple): Relocate from gimplify.c.
* tree.h (unshare_expr, unshare_expr_without_location,
mark_addressable): Move prototypes to gimplify.h.
* Makefile.in (GTFILES): gimple-expr.c now has the GTY tag for
tmp_var_id_num
* asan.c: Include gimplify.h rather than gimple.h.
* cfgloopmanip.c: Likewise.
* cgraphunit.c: Likewise.
* cilk-common.c: Likewise.
* dwarf2out.c: Dont include gimple.h.
* fold-const.c: Include gimplify.h rather than gimple.h.
* function.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-split.c: Likewise.
* ipa.c: Likewise.
* langhooks.c: Dont include gimple.h.
* loop-init.c: Include gimplify.h rather than gimple.h.
* omp-low.c: Likewise.
* sese.c: Likewise.
* stor-layout.c: Likewise.
* targhooks.c: Likewise.
* trans-mem.c: Likewise.
* tree-affine.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-complex.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-iterator.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-nested.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa.c: Likewise.
* tree-switch-conversio: Likewise.n.c
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tsan.c: Likewise.
* value-prof.c: Likewise.
* config/aarch64/aarch64.c: Include gimplify.h instead of gimple.h.
* config/alpha/alpha.c: Likewise.
* config/darwin.c: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/mep/mep.c: Likewise.
* config/mips/mips.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/xtensa/xtensa.c: Likewise.

* ada/gcc-interface/trans.c: Include gimplify.h.

* c/c-typeck.c: Include gimplify.h.

* c-family/c-common.c: Include gimplify.h.
* c-family/c-gimplify.c: Likewise.
* c-family/cilk.c: Likewise.
* c-family/c-omp.c: Include gimple-expr.h instead of gimple.h.
* c-family/c-ubsan.c: Don't include gimple.h.

* cp/class.c: Include gimplify.h.
* cp/cp-gimplify.c: Likewise.
* cp/error.c: Likewise.
* cp/init.c: Likewise.
* cp/optimize.c: Likewise.
* cp/pt.c: Likewise.
* cp/semantics.c: Likewise.
* cp/tree.c: Likewise.
* cp/vtable-class-hierarchy.c: Likewise.
* cp/decl2.c: Don't include gimple.h.
* cp/except.c: Likewise.
* cp/method.c: Include pointer-set.h instead of gimple.h.

* fortran/f95-lang.c: Don't include gimple.h.
* fortran/trans-array.c: Include gimple-expr.h instead of gimple.h.
* fortran/trans.c: Likewise.
* fortran/trans-decl.c: Likewise.
* fortran/trans-expr.c: Include gimplify.h.
* fortran/trans-openmp.c: Likewise.

* go/go-lang.c: Include gimplify.h.

* java/java-gimplify.c: Include gimplify.h.

* objc/objc-act.c: Include gimplify.h.

From-SVN: r204717

10 years agoAdd some generic lambda test cases.
Adam Butcher [Tue, 12 Nov 2013 20:17:54 +0000 (20:17 +0000)]
Add some generic lambda test cases.

gcc/testsuite/g++.dg/cpp1y/
* lambda-generic.C: New test case.
* lambda-generic-cfun.C: New test case.
* lambda-generic-dep.C: New test case.
* lambda-generic-udt.C: New test case.
* lambda-generic-variadic.C: New test case.
* lambda-generic-x.C: New test case.
* lambda-generic-xcfun.C: New test case.
* lambda-generic-xudt.C: New test case.
* lambda-generic-mixed.C: New test case.

From-SVN: r204716

10 years agoSupport implicit parameter packs.
Adam Butcher [Tue, 12 Nov 2013 20:17:44 +0000 (20:17 +0000)]
Support implicit parameter packs.

* pt.c (convert_generic_types_to_packs): New function to transform
a range of implicitly introduced non-pack template parms to be parameter
packs.
* cp-tree.h (convert_generic_types_to_packs): Declare.
* parser.c (cp_parser_parameter_declaration_list): If a function
parameter pack contains generic types, convert them to packs prior to
grokdeclarator.

From-SVN: r204715

10 years agoRefactor implicit function template implementation and fix 58534, 58536, 58548, 58549...
Adam Butcher [Tue, 12 Nov 2013 20:17:33 +0000 (20:17 +0000)]
Refactor implicit function template implementation and fix 58534, 58536, 58548, 58549 and 58637.

gcc/
* tree.c (grow_tree_vec_stat): New function ...
* tree.h (grow_tree_vec_stat) (grow_tree_vec): ... and its declaration
and macro front-end.

gcc/cp/
PR c++/58534
PR c++/58536
PR c++/58548
PR c++/58549
PR c++/58637
* parser.h (struct cp_parser): New members implicit_template_parms,
implicit_template_scope and auto_is_implicit_function_template_parm_p.
* parser.c (add_implicit_template_parms): Refactor as ...
(synthesize_implicit_template_parm): ... this to append a new template
type parm to the current template parameter list (introducing a new list
if necessary).  Removed push_deferring_access_checks.
(finish_fully_implicit_template): Removed pop_deferring_access_checks.
(cp_parser_new): Initialize new cp_parser members.
(cp_parser_parameter_declaration_clause): Consider auto as implicit
template parm when parsing a parameter declaration (unless parsing an
explicit specialization).
(cp_parser_parameter_declaration_list): Remove local
implicit_template_parms counter and reset cp_parser implicit template
state when complete.
(cp_parser_lambda_expression): Reset implicit template cp_parser members
whilst generating lambda class.
(cp_parser_function_definition_after_declarator): Reset implicit
template cp_parser members whilst parsing function definition.
(make_generic_type_name): Respell '<autoN>' as 'auto:N' which works
better with template diagnostics.
(cp_parser_simple_type_specifier): Synthesize implicit template parm on
parsing 'auto' if auto_is_implicit_function_template_parm_p and provide
diagnostics ...
* decl.c (grokdeclarator): ... that were previously done here.

gcc/testsuite/g++.dg/
* cpp1y/pr58534.C: New testcase.
* cpp1y/pr58536.C: New testcase.
* cpp1y/pr58548.C: New testcase.
* cpp1y/pr58549.C: New testcase.
* cpp1y/pr58637.C: New testcase.

From-SVN: r204714

10 years agocp-demangle.c (d_copy_templates): Cast result of malloc to (struct d_print_template *).
Uros Bizjak [Tue, 12 Nov 2013 20:02:21 +0000 (21:02 +0100)]
cp-demangle.c (d_copy_templates): Cast result of malloc to (struct d_print_template *).

* cp-demangle.c (d_copy_templates): Cast result of malloc
to (struct d_print_template *).
(d_print_comp): Cast result of realloc to (struct d_saved scope *).

From-SVN: r204713

10 years agofinal.c (update_alignments): Initialize label to NULL_RTX.
Marek Polacek [Tue, 12 Nov 2013 17:56:48 +0000 (17:56 +0000)]
final.c (update_alignments): Initialize label to NULL_RTX.

2013-11-12  Marek Polacek  <polacek@redhat.com>

* final.c (update_alignments): Initialize label to NULL_RTX.

From-SVN: r204712

10 years agoc-common.c (c_common_reswords): Add _Thread_local.
Joseph Myers [Tue, 12 Nov 2013 17:38:47 +0000 (17:38 +0000)]
c-common.c (c_common_reswords): Add _Thread_local.

c-family:
* c-common.c (c_common_reswords): Add _Thread_local.

c:
* c-tree.h (struct c_declspecs): Add thread_gnu_p field.
* c-parser.c (c_parser_declspecs): Mention _Thread_local in
comment.
* c-decl.c (shadow_tag_warned, grokdeclarator): Mention __thread
or _Thread_local as appropriate in diagnostics.
(build_null_declspecs): Initialize ret->thread_gnu_p.
(declspecs_add_scspec): Handle either __thread or _Thread_local
for RID_THREAD.  Diagnose _Thread_local for pre-C11 standards if
pedantic.  Do not disallow _Thread_local extern and _Thread_local
static.

testsuite:
* gcc.dg/c90-thread-local-1.c, gcc.dg/c99-thread-local-1.c,
gcc.dg/c11-thread-local-1.c, gcc.dg/c11-thread-local-2.c: New
tests.
* gcc.dg/tls/diag-2.c, objc.dg/tls/diag-2.m: Update expected
diagnostics.

From-SVN: r204711

10 years agoaggr21.adb: New test.
Tristan Gingold [Tue, 12 Nov 2013 17:34:16 +0000 (17:34 +0000)]
aggr21.adb: New test.

* gnat.dg/aggr21.adb: New test.
* gnat.dg/aggr21_pkg.ad[sb]: New helper.

From-SVN: r204710

10 years agogimple-ssa-isolate-paths.c (check_loadstore): New function.
Jeff Law [Tue, 12 Nov 2013 16:41:51 +0000 (09:41 -0700)]
gimple-ssa-isolate-paths.c (check_loadstore): New function.

* gimple-ssa-isolate-paths.c (check_loadstore): New function.
(insert_trap_and_remove_trailing_statements): New argument OP which
is the NULL pointer.  Emit the trap after the load/store through
the NULL pointer.  Simplify the RHS of a store through a NULL pointer
when trivial to do so.
(isolate_path): Corresponding changes.
(gimple_ssa_isolate_erroneous_path): Likewise.

* gcc.dg/tree-ssa/isolate-1.c: Update expected output.
* gcc.dg/tree-ssa/isolate-5.c: New test.

From-SVN: r204708

10 years agopredict.c (drop_profile): New function.
Teresa Johnson [Tue, 12 Nov 2013 15:03:28 +0000 (15:03 +0000)]
predict.c (drop_profile): New function.

2013-11-12  Teresa Johnson  <tejohnson@google.com>
    Jan Hubicka  <jh@suse.cz>

* predict.c (drop_profile): New function.
(handle_missing_profiles): Ditto.
(counts_to_freqs): Don't overwrite estimated frequencies
when function has no profile counts.
* predict.h (handle_missing_profiles): Declare.
* tree-inline.c (freqs_to_counts): New function.
(copy_cfg_body): Invoke freqs_to_counts as needed.
* tree-profile.c (tree_profiling): Invoke handle_missing_profiles.

Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r204704

10 years agoTurn on SEE unaligned load and store for Haswell
H.J. Lu [Tue, 12 Nov 2013 13:52:08 +0000 (13:52 +0000)]
Turn on SEE unaligned load and store for Haswell

PR target/59088
* config/i386/x86-tune.def (X86_TUNE_SSE_UNALIGNED_LOAD_OPTIMAL):
Set for m_HASWELL.
(X86_TUNE_SSE_UNALIGNED_STORE_OPTIMAL): Set for m_HASWELL.

From-SVN: r204701

10 years agoProperly handle AVX256 unaligned load and store
H.J. Lu [Tue, 12 Nov 2013 13:26:51 +0000 (13:26 +0000)]
Properly handle AVX256 unaligned load and store

PR target/59084
* config/i386/i386.c (ix86_option_override_internal): Check
X86_TUNE_AVX256_UNALIGNED_LOAD_OPTIMAL and
X86_TUNE_AVX256_UNALIGNED_STORE_OPTIMAL for
MASK_AVX256_SPLIT_UNALIGNED_LOAD and
MASK_AVX256_SPLIT_UNALIGNED_STORE.

* config/i386/x86-tune.def (X86_TUNE_AVX256_UNALIGNED_LOAD_OPTIMAL):
Clear m_COREI7_AVX and update comments.
(X86_TUNE_AVX256_UNALIGNED_STORE_OPTIMAL): Likewise.

From-SVN: r204700

10 years agore PR rtl-optimization/10474 (shrink wrapping for functions)
Martin Jambor [Tue, 12 Nov 2013 12:53:53 +0000 (13:53 +0100)]
re PR rtl-optimization/10474 (shrink wrapping for functions)

2013-11-12  Martin Jambor  <mjambor@suse.cz>

PR rtl-optimization/10474
* ira.c (interesting_dest_for_shprep): New function.
(split_live_ranges_for_shrink_wrap): Likewise.
(find_moveable_pseudos): Move calculation of dominance info,
df_analysios and the final anlyses to...
(ira): ...here, call split_live_ranges_for_shrink_wrap.

testsuite/
* gcc.dg/pr10474.c: New testcase.
* gcc.dg/ira-shrinkwrap-prep-1.c: Likewise.
* gcc.dg/ira-shrinkwrap-prep-2.c: Likewise.

From-SVN: r204698

10 years agore PR c++/57734 (Returning template alias to enum class fails with "invalid declarator")
Paolo Carlini [Tue, 12 Nov 2013 09:21:45 +0000 (09:21 +0000)]
re PR c++/57734 (Returning template alias to enum class fails with "invalid declarator")

/cp
2013-11-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57734
* pt.c (lookup_template_class_1): Handle alias template declarations
of enumeration types.

/testsuite
2013-11-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57734
* g++.dg/cpp0x/alias-decl-enum-1.C: New.

From-SVN: r204697

10 years agotree-ssa-loop-ivopts.c (force_expr_to_var_cost): Refactor the code.
Bin Cheng [Tue, 12 Nov 2013 06:42:05 +0000 (06:42 +0000)]
tree-ssa-loop-ivopts.c (force_expr_to_var_cost): Refactor the code.

* tree-ssa-loop-ivopts.c (force_expr_to_var_cost): Refactor the code.
Handle type conversion.

From-SVN: r204695

10 years agoDaily bump.
GCC Administrator [Tue, 12 Nov 2013 00:17:00 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r204693

10 years agoTime profiler introduced.
Martin Liska [Mon, 11 Nov 2013 23:21:02 +0000 (23:21 +0000)]
Time profiler introduced.

Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r204690

10 years agonet: Fix TCP keepalive handling for Solaris.
Ian Lance Taylor [Mon, 11 Nov 2013 21:25:42 +0000 (21:25 +0000)]
net: Fix TCP keepalive handling for Solaris.

From-SVN: r204688

10 years agomksysinfo, net: Always define F_DUPFD_CLOEXEC.
Ian Lance Taylor [Mon, 11 Nov 2013 21:21:50 +0000 (21:21 +0000)]
mksysinfo, net: Always define F_DUPFD_CLOEXEC.

For Solaris and CentOS portability.

From-SVN: r204687

10 years agotree-ssa-alias.c (stmt_kills_ref_p_1): Use ao_ref_init_from_ptr_and_size for builtins.
Marc Glisse [Mon, 11 Nov 2013 20:56:19 +0000 (21:56 +0100)]
tree-ssa-alias.c (stmt_kills_ref_p_1): Use ao_ref_init_from_ptr_and_size for builtins.

2013-11-11  Marc Glisse  <marc.glisse@inria.fr>
    Jeff Law  <law@redhat.com>

gcc/
* tree-ssa-alias.c (stmt_kills_ref_p_1): Use
ao_ref_init_from_ptr_and_size for builtins.

gcc/testsuite/
* gcc.dg/tree-ssa/alias-27.c: New testcase.

Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r204686

10 years agore PR target/58853 (ICE in expand_set_or_movmem_prologue_epilogue_by_misaligned_moves)
Uros Bizjak [Mon, 11 Nov 2013 20:02:19 +0000 (21:02 +0100)]
re PR target/58853 (ICE in expand_set_or_movmem_prologue_epilogue_by_misaligned_moves)

PR target/58853
* config/i386/x86-tune.def
(X86_TUNE_MISALIGNED_MOVE_STRING_PRO_EPILOGUES): Rename from
TARGET_MISALIGNED_MOVE_STRING_PROLOGUES.
* config/i386/i386.h
(TARGET_MISALIGNED_MOVE_STRING_PRO_EPILOGUES): Rename from
TARGET_MISALIGNED_MOVE_STRING_PROLOGUES_EPILOGUES.  Update for renamed
X86_TUNE_MISALIGNED_MOVE_STRING_PRO_EPILOGUES.
* config/i386/i386.c (ix86_expand_set_or_movmem): Use
TARGET_MISALIGNED_MOVE_STRING_PRO_EPILOGUES to calculate
misaligned_prologue_used.  Check that
desired_aling <= epilogue_size_needed.

testsuite/ChangeLog:

PR target/58853
* gcc.target/i386/pr58853.c: New test.

Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
From-SVN: r204685

10 years agoos: Do not try to run go command in test.
Ian Lance Taylor [Mon, 11 Nov 2013 19:41:00 +0000 (19:41 +0000)]
os: Do not try to run go command in test.

From-SVN: r204684

10 years agore PR tree-optimization/59050 (ICE: tree check: expected integer_cst, have nop_expr...
Cong Hou [Mon, 11 Nov 2013 19:03:39 +0000 (14:03 -0500)]
re PR tree-optimization/59050 (ICE: tree check: expected integer_cst, have nop_expr in tree_int_cst_lt, at tree.c:7083)

2013-11-11  Cong Hou  <congh@google.com>

    PR tree-optimization/59050
    * tree-vect-data-refs.c (comp_dr_addr_with_seg_len_pair): Bug fix.

From-SVN: r204683

10 years agore PR middle-end/59049 (Two VOIDmode constant in comparison passed to cstoresi4)
Joern Rennecke [Mon, 11 Nov 2013 18:57:25 +0000 (18:57 +0000)]
re PR middle-end/59049 (Two VOIDmode constant in comparison passed to cstoresi4)

        PR middle-end/59049
        * expmed.c (emit_store_flag): Fail for const-const comparison.

From-SVN: r204682

10 years agoforwprop-28.c: Adjust for ARC LOGICAL_OP_NON_SHORT_CIRCUIT definition.
Joern Rennecke [Mon, 11 Nov 2013 18:46:33 +0000 (18:46 +0000)]
forwprop-28.c: Adjust for ARC LOGICAL_OP_NON_SHORT_CIRCUIT definition.

        * gcc.dg/tree-ssa/forwprop-28.c: Adjust for ARC
        LOGICAL_OP_NON_SHORT_CIRCUIT definition.
        * gcc.dg/tree-ssa/ssa-dom-thread-4.c: Likewise.
        * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-1.c: Likewise.
        * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-4.c: Likewise.
        * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-5.c: Likewise.
        * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-6.c: Likewise.
        * gcc.dg/tree-ssa/vrp47.c: Likewise.
        * gcc.dg/tree-ssa/vrp87.c: Likewise.

From-SVN: r204681

10 years agoRemove ChangeLog merge turd from r204590.
Joern Rennecke [Mon, 11 Nov 2013 18:40:04 +0000 (18:40 +0000)]
Remove ChangeLog merge turd from r204590.

From-SVN: r204680

10 years agocompiler: Support Go 1.2 nil checks.
Ian Lance Taylor [Mon, 11 Nov 2013 17:49:10 +0000 (17:49 +0000)]
compiler: Support Go 1.2 nil checks.

From-SVN: r204679

10 years agogimplify.c (gimplify_init_constructor): Do not clear the object when the constructor...
Eric Botcazou [Mon, 11 Nov 2013 16:59:23 +0000 (16:59 +0000)]
gimplify.c (gimplify_init_constructor): Do not clear the object when the constructor is incomplete and...

* gimplify.c (gimplify_init_constructor): Do not clear the object when
the constructor is incomplete and CONSTRUCTOR_NO_CLEARING is set.

From-SVN: r204678

10 years agotree.h (CONSTRUCTOR_NO_CLEARING): Define.
Tristan Gingold [Mon, 11 Nov 2013 16:55:29 +0000 (16:55 +0000)]
tree.h (CONSTRUCTOR_NO_CLEARING): Define.

* tree.h (CONSTRUCTOR_NO_CLEARING): Define.
* tree-core.h (CONSTRUCTOR_NO_CLEARING): Document it.
* tree.def (CONSTRUCTOR): Likewise.
* doc/generic.texi (CONSTRUCTOR): Likewise.  Update description.
* gimplify.c (gimplify_init_constructor): Do not clear the object when
the constructor is incomplete and CONSTRUCTOR_NO_CLEARING is set.
ada/
* gcc-interface/utils2.c (gnat_build_constructor): Also set the flag
CONSTRUCTOR_NO_CLEARING on the constructor.

From-SVN: r204677

10 years agotoplev.c (toplev_main): Move PLUGIN_FINISH invocation before diagnostic_finish.
Basile Starynkevitch [Mon, 11 Nov 2013 14:54:14 +0000 (14:54 +0000)]
toplev.c (toplev_main): Move PLUGIN_FINISH invocation before diagnostic_finish.

2013-11-11  Basile Starynkevitch  <basile@starynkevitch.net>

         * toplev.c (toplev_main): Move PLUGIN_FINISH invocation before
           diagnostic_finish.

From-SVN: r204674

10 years agoarm.c (arm_new_rtx_costs): Return after handling comparisons.
Kyrylo Tkachov [Mon, 11 Nov 2013 13:53:26 +0000 (13:53 +0000)]
arm.c (arm_new_rtx_costs): Return after handling comparisons.

* config/arm/arm.c (arm_new_rtx_costs): Return after handling
comparisons.

From-SVN: r204673

10 years agore PR libstdc++/54562 (mutex and condition variable timers)
Jonathan Wakely [Mon, 11 Nov 2013 13:33:48 +0000 (13:33 +0000)]
re PR libstdc++/54562 (mutex and condition variable timers)

PR libstdc++/54562
* include/std/mutex (__timed_mutex_impl::__clock_t): Use
high_resolution_clock for absolute timeouts, because
pthread_mutex_timedlock uses CLOCK_REALTIME not CLOCK_MONOTONIC.
(__timed_mutex_impl::_M_try_lock_for): Use steady_clock for relative
timeouts as per [thread.req.timing].
(__timed_mutex_impl::_M_try_lock_until<Clock,Duration>): Convert to
__clock_t time point instead of using _M_try_lock_for.

From-SVN: r204672

10 years agoconfig.host (arm-wrs-vxworks): Replace arm/t-vxworks with arm/t-elf in tmake_file.
Eric Botcazou [Mon, 11 Nov 2013 11:46:17 +0000 (11:46 +0000)]
config.host (arm-wrs-vxworks): Replace arm/t-vxworks with arm/t-elf in tmake_file.

* config.host (arm-wrs-vxworks): Replace arm/t-vxworks with arm/t-elf
in tmake_file.
* config/arm/t-vxworks: Delete.

From-SVN: r204669

10 years ago* config/arc/arc.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Define.
Joern Rennecke [Mon, 11 Nov 2013 10:22:58 +0000 (10:22 +0000)]
* config/arc/arc.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Define.

From-SVN: r204666

10 years agotree-ssa-threadupdate.c (mark_threaded_blocks): Truncate jump threading paths first...
Jeff Law [Mon, 11 Nov 2013 03:04:57 +0000 (20:04 -0700)]
tree-ssa-threadupdate.c (mark_threaded_blocks): Truncate jump threading paths first, then perform PHI node checks if applicable.

       * tree-ssa-threadupdate.c (mark_threaded_blocks): Truncate jump
        threading paths first, then perform PHI node checks if applicable.

From-SVN: r204659

10 years agoDaily bump.
GCC Administrator [Mon, 11 Nov 2013 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r204658

10 years agocvt.c (cp_convert_to_pointer): Call build_ptrmemfunc before maybe_warn_zero_as_null_p...
Paolo Carlini [Sun, 10 Nov 2013 23:40:57 +0000 (23:40 +0000)]
cvt.c (cp_convert_to_pointer): Call build_ptrmemfunc before maybe_warn_zero_as_null_pointer_constant to avoid...

2013-11-10  Paolo Carlini  <paolo.carlini@oracle.com>

* cvt.c (cp_convert_to_pointer): Call build_ptrmemfunc before
maybe_warn_zero_as_null_pointer_constant to avoid duplicate
-Wzero-as-null-pointer-constant diagnostics.

* typeck.c (build_ptrmemfunc): Use cp_build_c_cast.

From-SVN: r204655

10 years agoSet close-on-exec flag when opening files.
Janne Blomqvist [Sun, 10 Nov 2013 20:34:29 +0000 (22:34 +0200)]
Set close-on-exec flag when opening files.

2013-11-10  Janne Blomqvist  <jb@gcc.gnu.org>

* configure.ac: Check presence of mkostemp.
* io/unix.c (set_close_on_exec): New function.
(tempfile_open): Use mkostemp and O_CLOEXEC if available, fallback
to calling set_close_on_exec.
(regular_file): Add O_CLOEXEC to flags if defined.
(open_external): Call set_close_on_exec if O_CLOEXEC is not
defined.
* config.h.in: Regenerated.
* configure: Regenerated.
* Makefile.in: Regenerated.
* aclocal.m4: Regenerated.

From-SVN: r204654

10 years agoFixed typo about bug-number ...
Kai Tietz [Sun, 10 Nov 2013 19:27:38 +0000 (20:27 +0100)]
Fixed typo about bug-number ...

        PR plugin/52872
        * configure.ac: Adding for exported symbols check
        and for rdynamic-check executable-extension.
        * configure: Regenerated.

From-SVN: r204651

10 years agore PR plugins/52872 (--enable-plugin; incorrect test for "exported symbols" and ...
Karlson2k [Sun, 10 Nov 2013 19:24:43 +0000 (19:24 +0000)]
re PR plugins/52872 (--enable-plugin; incorrect test for "exported symbols" and "-rdynamic" in gcc/configure.ac)

        PR plugin/52862
        * configure.ac: Adding for exported symbols check
        and for rdynamic-check executable-extension.
        * configure: Regenerated.

Co-Authored-By: Kai Tietz <ktietz@redhat.com>
From-SVN: r204650

10 years agomode-switching.c (optimize_mode_switching): Mark block as nontransparent, if last_mod...
Uros Bizjak [Sun, 10 Nov 2013 18:38:36 +0000 (19:38 +0100)]
mode-switching.c (optimize_mode_switching): Mark block as nontransparent, if last_mode at block exit is different from no_mode.

* mode-switching.c (optimize_mode_switching): Mark block as
nontransparent, if last_mode at block exit is different from no_mode.

From-SVN: r204649