aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2014-10-03lra-constraints.c (inherit_in_ebb): Handle calls with multiple return values.Ilya Enkovich3-12/+28
gcc/ * lra-constraints.c (inherit_in_ebb): Handle calls with multiple return values. * caller-save.c (save_call_clobbered_regs): Likewise. From-SVN: r215839
2014-10-03tree-vect-data-refs.c (vect_permute_load_chain, [...]): Fix a typo in ↵Jakub Jelinek2-3/+7
temporary var names, suffle3 to shuffle3. * tree-vect-data-refs.c (vect_permute_load_chain, vect_shift_permute_load_chain): Fix a typo in temporary var names, suffle3 to shuffle3. From-SVN: r215837
2014-10-03re PR libgomp/61200 (internal compiler error: Segmentation fault, assert & ↵Jakub Jelinek4-10/+100
openmp) PR libgomp/61200 * omp-low.c (taskreg_contexts): New variable. (scan_omp_parallel): Push newly created context into taskreg_contexts vector and move record layout code to finish_taskreg_scan. (scan_omp_task): Likewise. (finish_taskreg_scan): New function. (execute_lower_omp): Call finish_taskreg_scan on all taskreg_contexts vector elements and release it. * c-c++-common/gomp/pr61200.c: New test. * testsuite/libgomp.c/pr61200.c: New test. From-SVN: r215835
2014-10-03re PR target/62128 (Use vpalignr for AVX2 rotation)Jakub Jelinek5-11/+60
PR target/62128 * config/i386/i386.c (expand_vec_perm_palignr): If op1, op0 order of palignr arguments can't be used due to min 0 or max - min too high, try also op0, op1 order of palignr arguments. * gcc.dg/torture/vshuf-16.inc (TESTS): Add 2 new permutations. * gcc.dg/torture/vshuf-32.inc (TESTS): Add 5 new permutations. From-SVN: r215834
2014-10-03cgraph.h (ipa_polymorphic_call_context): Turn bools into bitfields...Jan Hubicka4-24/+85
* cgraph.h (ipa_polymorphic_call_context): Turn bools into bitfields; add DYNAMIC; make MAKE_SPECULATIVE private, add POSSIBLE_DYNAMIC_TYPE_CHANGE. * ipa-polymorphic-call.c (ipa_polymorphic_call_context::restrict_to_inner_class): Allow accesses past end of dynamic types. (ipa_polymorphic_call_context::stream_out, speculative_outer_type): Stream dynamic flag. (ipa_polymorphic_call_context::set_by_decl): Clear DYNAMIC. (ipa_polymorphic_call_context::ipa_polymorphic_call_context): Clear DYNAMIC. (ipa_polymorphic_call_context::get_dynamic_type): Use DYNAMIC; set it. (ipa_polymorphic_call_context::combine_with): Propagate dynamic. * ipa-prop.c (update_jump_functions_after_inlining, try_make_edge_direct_virtual_call): Use possible_dynamic_type_change. From-SVN: r215833
2014-10-03tree-ssa-threadupdate.c (freqs_to_counts_path): Scale frequencies up when ↵Teresa Johnson2-3/+18
synthesizing counts to avoid rounding errors. 2014-10-02 Teresa Johnson <tejohnson@google.com> * tree-ssa-threadupdate.c (freqs_to_counts_path): Scale frequencies up when synthesizing counts to avoid rounding errors. From-SVN: r215830
2014-10-03Daily bump.GCC Administrator1-1/+1
From-SVN: r215829
2014-10-02feat-cxx98-neg.C: Fix double negative thinko and add many more tests.Edward Smith-Rowland2-1/+99
2014-10-02 Edward Smith-Rowland <3dw4rd@verizon.net> * g++.dg/cpp1y/feat-cxx98-neg.C: Fix double negative thinko and add many more tests. From-SVN: r215823
2014-10-02re PR middle-end/63422 (ICE in freqs_to_counts_path, at ↵Teresa Johnson2-8/+8
tree-ssa-threadupdate.c:981) 2014-10-01 Teresa Johnson <tejohnson@google.com> PR middle-end/63422 * tree-ssa-threadupdate.c (freqs_to_counts_path): Remove asserts to handle incoming insanities. From-SVN: r215822
2014-10-0220030731-1.c: Use -std=gnu89.Marek Polacek155-38/+431
* gcc.dg/tree-ssa/20030731-1.c: Use -std=gnu89. * gcc.dg/tree-ssa/20030729-1.c: Likewise. * gcc.dg/tree-ssa/20030807-8.c: Likewise. * gcc.dg/tree-ssa/20040326-1.c: Likewise. * gcc.dg/tree-ssa/vrp27.c: Likewise. * gcc.dg/tree-ssa/ssa-ccp-2.c: Likewise. * gcc.dg/tree-ssa/ssa-dom-thread-4.c: Likewise. * gcc.dg/tree-ssa/20040302-1.c: Likewise. * gcc.dg/tree-ssa/vrp09.c: Likewise. * gcc.dg/tree-ssa/inline-7.c: Likewise. * gcc.dg/tree-ssa/attr-alias.c: Likewise. * gcc.dg/tree-ssa/loadpre8.c: Likewise. * gcc.dg/tree-ssa/20041008-1.c: Likewise. * gcc.dg/tree-ssa/20030917-1.c: Likewise. * gcc.dg/tree-ssa/20030917-2.c: Likewise. * gcc.dg/tree-ssa/20030530-2.c: Add function declarations. * gcc.dg/tree-ssa/20030708-1.c: Likewise. * gcc.dg/tree-ssa/20030709-2.c: Likewise. * gcc.dg/tree-ssa/20030710-1.c: Likewise. * gcc.dg/tree-ssa/20030711-1.c: Likewise. * gcc.dg/tree-ssa/20030711-2.c: Likewise. * gcc.dg/tree-ssa/20030711-3.c: Likewise. * gcc.dg/tree-ssa/20030728-1.c: Likewise. * gcc.dg/tree-ssa/20030731-2.c: Likewise. * gcc.dg/tree-ssa/20030807-1.c: Likewise. * gcc.dg/tree-ssa/20030807-3.c: Likewise. * gcc.dg/tree-ssa/20030807-7.c: Likewise. * gcc.dg/tree-ssa/20030807-9.c: Likewise. * gcc.dg/tree-ssa/20030814-2.c: Likewise. * gcc.dg/tree-ssa/20030814-3.c: Likewise. * gcc.dg/tree-ssa/20030814-4.c: Likewise. * gcc.dg/tree-ssa/20030814-5.c: Likewise. * gcc.dg/tree-ssa/20030820-1.c: Likewise. * gcc.dg/tree-ssa/20030820-2.c: Likewise. * gcc.dg/tree-ssa/20030821-1.c: Likewise. * gcc.dg/tree-ssa/20031022-1.c: Likewise. * gcc.dg/tree-ssa/20040209-1.c: Likewise. * gcc.dg/tree-ssa/20040211-1.c: Likewise. * gcc.dg/tree-ssa/alias-13.c: Likewise. * gcc.dg/tree-ssa/alias-28.c: Likewise. * gcc.dg/tree-ssa/asm-3.c: Likewise. * gcc.dg/tree-ssa/coalesce-1.c: Likewise. * gcc.dg/tree-ssa/foldstring-1.c: Likewise. * gcc.dg/tree-ssa/forwprop-25.c: Likewise. * gcc.dg/tree-ssa/forwprop-26.c: Likewise. * gcc.dg/tree-ssa/isolate-3.c: Likewise. * gcc.dg/tree-ssa/isolate-5.c: Likewise. * gcc.dg/tree-ssa/loadpre7.c: Likewise. * gcc.dg/tree-ssa/pr22117.c: Likewise. * gcc.dg/tree-ssa/pr23744.c: Likewise. * gcc.dg/tree-ssa/pr24117.c: Likewise. * gcc.dg/tree-ssa/pr24840.c: Likewise. * gcc.dg/tree-ssa/pr25734.c: Likewise. * gcc.dg/tree-ssa/pr33723.c: Likewise. * gcc.dg/tree-ssa/pr33920.c: Likewise. * gcc.dg/tree-ssa/pr34146-2.c: Likewise. * gcc.dg/tree-ssa/pr34146.c: Likewise. * gcc.dg/tree-ssa/pr38385.c: Likewise. * gcc.dg/tree-ssa/pr49642-1.c: Likewise. * gcc.dg/tree-ssa/pr49642-2.c: Likewise. * gcc.dg/tree-ssa/pr59597.c: Likewise. * gcc.dg/tree-ssa/sra-1.c: Likewise. * gcc.dg/tree-ssa/sra-2.c: Likewise. * gcc.dg/tree-ssa/sra-5.c: Likewise. * gcc.dg/tree-ssa/sra-6.c: Likewise. * gcc.dg/tree-ssa/ssa-ccp-10.c: Likewise. * gcc.dg/tree-ssa/ssa-ccp-31.c: Likewise. * gcc.dg/tree-ssa/ssa-pre-14.c: Likewise. * gcc.dg/tree-ssa/ssa-pre-29.c: Likewise. * gcc.dg/tree-ssa/ssa-vrp-thread-1.c: Likewise. * gcc.dg/tree-ssa/vrp46.c: Likewise. * gcc.dg/tree-ssa/vrp56.c: Likewise. * gcc.dg/tree-ssa/vrp67.c: Likewise. * gcc.dg/tree-ssa/vrp72.c: Likewise. * gcc.dg/tree-ssa/vrp73.c: Likewise. * gcc.dg/tree-ssa/vrp75.c: Likewise. * gcc.dg/tree-ssa/20030611-1.c: Fix defaulting to int. * gcc.dg/tree-ssa/20030703-1.c: Likewise. * gcc.dg/tree-ssa/20030807-11.c: Likewise. * gcc.dg/tree-ssa/20030917-3.c: Likewise. * gcc.dg/tree-ssa/20040121-1.c: Likewise. * gcc.dg/tree-ssa/20040216-1.c: Likewise. * gcc.dg/tree-ssa/20040319-1.c: Likewise. * gcc.dg/tree-ssa/20040326-2.c: Likewise. * gcc.dg/tree-ssa/20040729-1.c: Likewise. * gcc.dg/tree-ssa/attr-alias-2.c: Likewise. * gcc.dg/tree-ssa/cunroll-1.c: Likewise. * gcc.dg/tree-ssa/cunroll-3.c: Likewise. * gcc.dg/tree-ssa/cunroll-5.c: Likewise. * gcc.dg/tree-ssa/foldconst-4.c: Likewise. * gcc.dg/tree-ssa/foldconst-5.c: Likewise. * gcc.dg/tree-ssa/ifc-4.c: Likewise. * gcc.dg/tree-ssa/ifc-6.c: Likewise. * gcc.dg/tree-ssa/inline-10.c: Likewise. * gcc.dg/tree-ssa/inline-9.c: Likewise. * gcc.dg/tree-ssa/ipa-cp-1.c: Likewise. * gcc.dg/tree-ssa/ipa-split-5.c: Likewise. * gcc.dg/tree-ssa/local-pure-const.c: Likewise. * gcc.dg/tree-ssa/nonzero-1.c: Likewise. * gcc.dg/tree-ssa/pr23434.c: Likewise. * gcc.dg/tree-ssa/pr33922.c: Likewise. * gcc.dg/tree-ssa/scev-3.c: Likewise. * gcc.dg/tree-ssa/scev-4.c: Likewise. * gcc.dg/tree-ssa/scev-5.c: Likewise. * gcc.dg/tree-ssa/ssa-dce-1.c: Likewise. * gcc.dg/tree-ssa/ssa-dse-4.c: Likewise. * gcc.dg/tree-ssa/ssa-dse-9.c: Likewise. * gcc.dg/tree-ssa/vrp01.c: Likewise. * gcc.dg/tree-ssa/vrp02.c: Likewise. * gcc.dg/tree-ssa/vrp03.c: Likewise. * gcc.dg/tree-ssa/vrp04.c: Likewise. * gcc.dg/tree-ssa/vrp05.c: Likewise. * gcc.dg/tree-ssa/vrp07.c: Likewise. * gcc.dg/tree-ssa/vrp08.c: Likewise. * gcc.dg/tree-ssa/vrp10.c: Likewise. * gcc.dg/tree-ssa/vrp11.c: Likewise. * gcc.dg/tree-ssa/vrp14.c: Likewise. * gcc.dg/tree-ssa/wholeprogram-1.c: Likewise. * gcc.dg/tree-ssa/writeonly.c: Likewise. * gcc.dg/tree-ssa/20030807-2.c: Add function declarations. Fix defaulting to int. * gcc.dg/tree-ssa/20030814-1.c: Likewise. * gcc.dg/tree-ssa/20050719-1.c: Likewise. * gcc.dg/tree-ssa/20070302-1.c: Likewise. * gcc.dg/tree-ssa/builtin-expect-1.c: Likewise. * gcc.dg/tree-ssa/builtin-expect-2.c: Likewise. * gcc.dg/tree-ssa/builtin-expect-3.c: Likewise. * gcc.dg/tree-ssa/builtin-expect-4.c: Likewise. * gcc.dg/tree-ssa/builtin-expect-5.c: Likewise. * gcc.dg/tree-ssa/cunroll-2.c: Likewise. * gcc.dg/tree-ssa/cunroll-4.c: Likewise. * gcc.dg/tree-ssa/cunroll-9.c: Likewise. * gcc.dg/tree-ssa/foldconst-2.c: Likewise. * gcc.dg/tree-ssa/foldconst-3.c: Likewise. * gcc.dg/tree-ssa/forwprop-28.c: Likewise. * gcc.dg/tree-ssa/inline-5.c: Likewise. * gcc.dg/tree-ssa/inline-6.c: Likewise. * gcc.dg/tree-ssa/ipa-split-1.c: Likewise. * gcc.dg/tree-ssa/ipa-split-2.c: Likewise. * gcc.dg/tree-ssa/ivopts-2.c: Likewise. * gcc.dg/tree-ssa/ivopts-3.c: Likewise. * gcc.dg/tree-ssa/loop-20.c: Likewise. * gcc.dg/tree-ssa/loop-38.c: Likewise. * gcc.dg/tree-ssa/pr20913.c: Likewise. * gcc.dg/tree-ssa/pr21582.c: Likewise. * gcc.dg/tree-ssa/pr24670.c: Likewise. * gcc.dg/tree-ssa/ssa-ccp-12.c: Likewise. * gcc.dg/tree-ssa/vrp06.c: Likewise. * gcc.dg/tree-ssa/vrp12.c: Likewise. * gcc.dg/tree-ssa/vrp13.c: Likewise. * gcc.dg/tree-ssa/vrp23.c: Likewise. * gcc.dg/tree-ssa/vrp24.c: Likewise. * gcc.dg/tree-ssa/vrp25.c: Likewise. * gcc.dg/tree-ssa/vrp55.c: Likewise. * gcc.dg/tree-ssa/recip-6.c: Fix typo. From-SVN: r215816
2014-10-0220091013.c: Fix defaulting to int.Marek Polacek22-7/+51
* gcc.dg/tm/20091013.c: Fix defaulting to int. * gcc.dg/tm/20091221.c: Likewise. * gcc.dg/tm/debug-1.c: Likewise. * gcc.dg/tm/irrevocable-1.c: Likewise. * gcc.dg/tm/irrevocable-2.c: Likewise. * gcc.dg/tm/irrevocable-3.c: Likewise. * gcc.dg/tm/irrevocable-4.c: Likewise. * gcc.dg/tm/memopt-1.c: Likewise. * gcc.dg/tm/pr52173-1.c: Likewise. * gcc.dg/tm/props-1.c: Likewise. * gcc.dg/tm/props-2.c: Likewise. * gcc.dg/tm/props-3.c: Likewise. * gcc.dg/tm/20100125.c: Fix implicit declarations. * gcc.dg/tm/memopt-11.c: Likewise. * gcc.dg/tm/memopt-12.c: Likewise. * gcc.dg/tm/memopt-16.c: Likewise. * gcc.dg/tm/memopt-3.c: Likewise. * gcc.dg/tm/memopt-4.c: Likewise. * gcc.dg/tm/memopt-5.c: Likewise. * gcc.dg/tm/memopt-6.c: Likewise. * gcc.dg/tm/wrap-4.c: Likewise. From-SVN: r215815
2014-10-02pr24049.c: Fix implicit declarations.Marek Polacek19-2/+48
* gcc.dg/vect/pr24049.c: Fix implicit declarations. * gcc.dg/vect/pr37730.c: Likewise. * gcc.dg/vect/pr52870.c: Likewise. * gcc.dg/vect/pr60092-2.c: Likewise. * gcc.dg/vect/pr60092.c: Likewise. * gcc.dg/vect/vect-reduc-sad.c: Likewise. * gcc.dg/vect/pr26359.c: Fix defaulting to int. * gcc.dg/vect/pr31041.c: Likewise. * gcc.dg/vect/pr32216.c: Likewise. * gcc.dg/vect/pr32224.c: Likewise. * gcc.dg/vect/pr32366.c: Likewise. * gcc.dg/vect/pr33866.c: Likewise. * gcc.dg/vect/pr43430-2.c: Likewise. * gcc.dg/vect/pr43842.c: Likewise. * gcc.dg/vect/vect-1.c: Likewise. * gcc.dg/vect/vect-1-big-array.c: Likewise. * gcc.dg/vect/vect-93.c: Likewise. * gcc.dg/vect/pr28952.c: Fix implicit declarations and defaulting to int. From-SVN: r215814
2014-10-02re PR c++/53025 ([C++11] noexcept operator depends on copy-elision)Paolo Carlini8-1/+65
/cp 2014-10-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/53025 * cp-tree.h (struct saved_scope): Add noexcept_operand. (cp_noexcept_operand): Define. * call.c (build_over_call): Use it. * parser.c (cp_parser_unary_expression, [RID_NOEXCEPT]): Likewise. * pt.c (tsubst_copy_and_build, [NOEXCEPT_EXPR]): Likewise. /testsuite 2014-10-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/53025 * g++.dg/cpp0x/noexcept23.C: New. * g++.dg/cpp0x/noexcept24.C: Likewise. From-SVN: r215813
2014-10-0220020130-1.c: Use -std=gnu89.Marek Polacek14-3/+37
* gcc.dg/noncompile/20020130-1.c: Use -std=gnu89. * gcc.dg/noncompile/20050120-1.c: Likewise. * gcc.dg/noncompile/old-style-parm-2.c: Likewise. * gcc.dg/noncompile/920616-2.c: Fix defaulting to int. * gcc.dg/noncompile/930301-1.c: Likewise. * gcc.dg/noncompile/930622-1.c: Likewise. * gcc.dg/noncompile/930622-2.c: Likewise. * gcc.dg/noncompile/950825-1.c: Likewise. * gcc.dg/noncompile/invalid_asm.c: Likewise. * gcc.dg/noncompile/scope.c: Likewise. * gcc.dg/noncompile/va-arg-1.c: Likewise. * gcc.dg/noncompile/920923-1.c: Fix implicit declarations. * gcc.dg/noncompile/971104-1.c: Likewise. From-SVN: r215811
2014-10-02re PR go/61880 (Linking with external functions in C does not work in GO ↵Ian Lance Taylor1-4/+1
when using gccgo, while it works in gc) PR go/61880 compiler: symbol names should have '.' replaced with '_' Package and symbol names issued by the cgo tool and compiler should be the same for the object files to link. A minimal change to fix only: https://code.google.com/p/gofrontend/issues/detail?id=36 and https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61880 From-SVN: r215810
2014-10-02crossmodule-indircall-1.c: Fix defaulting to int.Marek Polacek17-2/+42
* gcc.dg/tree-prof/crossmodule-indircall-1.c: Fix defaulting to int. * gcc.dg/tree-prof/crossmodule-indircall-1a.c: Likewise. * gcc.dg/tree-prof/merge_block.c: Likewise. * gcc.dg/tree-prof/peel-1.c: Likewise. * gcc.dg/tree-prof/stringop-1.c: Likewise. * gcc.dg/tree-prof/stringop-2.c: Likewise. * gcc.dg/tree-prof/unroll-1.c: Likewise. * gcc.dg/tree-prof/update-cunroll-2.c: Likewise. * gcc.dg/tree-prof/val-prof-1.c: Likewise. * gcc.dg/tree-prof/val-prof-2.c: Likewise. * gcc.dg/tree-prof/val-prof-3.c: Likewise. * gcc.dg/tree-prof/val-prof-4.c: Likewise. * gcc.dg/tree-prof/val-prof-5.c: Likewise. * gcc.dg/tree-prof/val-prof-6.c: Likewise. * gcc.dg/tree-prof/cmpsf-1.c: Likewise. * gcc.dg/tree-prof/inliner-1.c: Use -fgnu89-inline. Fix defaulting to int. From-SVN: r215809
2014-10-02re PR rtl-optimization/63375 (reordering of reads across fences)Martin Jambor2-0/+11
2014-10-02 Martin Jambor <mjambor@suse.cz> PR tree-optimization/63375 * tree-sra.c (build_access_from_expr_1): Disqualify volatile references. From-SVN: r215804
2014-10-02Add file I forgot to add before.Segher Boessenkool1-0/+22
From-SVN: r215802
2014-10-02Makefile.in (CROSS): Define, to @CROSS@.Olivier Hainque2-0/+8
2014-10-02 Olivier Hainque <hainque@adacore.com> * Makefile.in (CROSS): Define, to @CROSS@. From-SVN: r215799
2014-10-0220000120-2.c: Use -fgnu89-inline.Marek Polacek35-12/+127
* gcc.c-torture/compile/20000120-2.c: Use -fgnu89-inline. * gcc.c-torture/compile/20011119-1.c: Likewise. * gcc.c-torture/compile/20011119-2.c: Likewise. * gcc.c-torture/compile/20021120-1.c: Likewise. * gcc.c-torture/compile/20021120-2.c: Likewise. * gcc.c-torture/compile/20050215-1.c: Likewise. * gcc.c-torture/compile/20050215-2.c: Likewise. * gcc.c-torture/compile/20050215-3.c: Likewise. * gcc.c-torture/compile/pr37669.c: Likewise. * gcc.c-torture/execute/20020107-1.c: Likewise. * gcc.c-torture/execute/restrict-1.c: Likewise. * gcc.c-torture/compile/20090721-1.c: Fix defaulting to int. * gcc.c-torture/execute/930529-1.c: Likewise. * gcc.c-torture/execute/920612-1.c: Likewise. * gcc.c-torture/execute/920711-1.c: Likewise. * gcc.c-torture/execute/990127-2.c: Likewise. * gcc.c-torture/execute/pr40386.c: Likewise. * gcc.c-torture/execute/pr57124.c: Likewise. * gcc.c-torture/compile/pr34808.c: Add function declarations. * gcc.c-torture/compile/pr42299.c: Likewise. * gcc.c-torture/compile/pr48517.c: Use -std=gnu89. * gcc.c-torture/compile/simd-6.c: Likewise. * gcc.c-torture/execute/pr53645-2.c: Likewise. * gcc.c-torture/execute/pr53645.c: Likewise. * gcc.c-torture/execute/20001121-1.c: Use -fgnu89-inline. Add function declarations. * gcc.c-torture/execute/980608-1.c: Likewise. * gcc.c-torture/execute/bcp-1.c: Likewise. * gcc.c-torture/execute/p18298.c: Likewise. * gcc.c-torture/execute/unroll-1.c: Likewise. * gcc.c-torture/execute/va-arg-7.c: Likewise. * gcc.c-torture/execute/va-arg-8.c: Likewise. * gcc.c-torture/execute/930526-1.c: Use -fgnu89-inline. Add function declarations. Fix defaulting to int. * gcc.c-torture/execute/961223-1.c: Likewise. * gcc.c-torture/execute/loop-2c.c: Use -fgnu89-inline and -Wno-pointer-to-int-cast. Fix defaulting to int. From-SVN: r215798
2014-10-02re PR target/62128 (Use vpalignr for AVX2 rotation)Jakub Jelinek2-6/+28
PR target/62128 * config/i386/i386.c (expand_vec_perm_1): Try expand_vec_perm_palignr if it expands to a single insn only. (expand_vec_perm_palignr): Add SINGLE_INSN_ONLY_P argument. If true, fail unless in_order is true. Add forward declaration. (expand_vec_perm_vperm2f128): Fix up comment about which permutation is useful for one_operand_p. (ix86_expand_vec_perm_const_1): Adjust expand_vec_perm_palignr caller. From-SVN: r215796
2014-10-02cgraphclones.c (build_function_type_skip_args): Do not make new type variant ↵Jan Hubicka2-17/+6
of old. * cgraphclones.c (build_function_type_skip_args): Do not make new type variant of old. From-SVN: r215795
2014-10-02ipa-prop.h (ipa_get_controlled_uses): Add hack to avoid ICE when speculation ↵Jan Hubicka5-40/+272
is added. * ipa-prop.h (ipa_get_controlled_uses): Add hack to avoid ICE when speculation is added. (ipa_edge_args): Add polymorphic_call_contexts. (ipa_get_ith_polymorhic_call_context): New accesor. (ipa_make_edge_direct_to_target): Add SPECULATIVE parameter. * ipa-prop.c (ipa_print_node_jump_functions_for_edge): Print contexts. (ipa_compute_jump_functions_for_edge): Compute contexts. (update_jump_functions_after_inlining): Update contexts. (ipa_make_edge_direct_to_target): Add SPECULATIVE argument; update dumping; add speculative edge creation. (try_make_edge_direct_virtual_call): Add CTX_PTR parameter; handle context updating. (update_indirect_edges_after_inlining): Pass down context. (ipa_edge_duplication_hook): Duplicate contexts. (ipa_write_node_info): Stream out contexts. (ipa_read_node_info): Stream in contexts. * ipa-devirt.c (type_all_derivations_known_p): Avoid ICE on non-ODR types. (try_speculative_devirtualization): New function. * ipa-utils.h (try_speculative_devirtualization): Declare. From-SVN: r215794
2014-10-02gcc/testsuite/Andrew Pinski10-59/+102
2014-10-01 Andrew Pinski <apinski@cavium.com> Max Ostapenko <m.ostapenko@partner.samsung.com> * lib/ubsan-dg.exp (check_effective_target_fsanitize_address): New function. (ubsan_init): Save off ALWAYS_CXXFLAGS. (ubsan_finish): Restore ALWAYS_CXXFLAGS correctly. * lib/asan-dg.exp (check_effective_target_faddress_sanitizer): Rename to ... (check_effective_target_fsanitize_address): ... this. Change to creating an executable. (asan_init): Save off ALWAYS_CXXFLAGS. (asan_finish): Restore ALWAYS_CXXFLAGS correctly. * lib/tsan-dg.exp (check_effective_target_fthread_sanitizer): Rename to ... (check_effective_target_fsanitize_thread): ... this. Change to creating an executable. (tsan_init): Save off ALWAYS_CXXFLAGS. (tsan_finish): Restore ALWAYS_CXXFLAGS correctly. Set dg-do-what-default to run as a default behaviour. * gcc.dg/ubsan/ubsan.exp: Don't check the return value of ubsan_init. Check check_effective_target_fsanitize_undefined before running the tests. * g++.dg/ubsan/ubsan.exp: Likewise. * gcc.dg/asan/asan.exp: Don't check the return value of asan_init. check_effective_target_fsanitize_address too early. Check check_effective_target_fsanitize_address before running the tests. * g++.dg/asan/asan.exp: Likewise. * gcc.dg/tsan/tsan.exp: Don't check the return value of tsan_init. check_effective_target_fsanitize_thread too early. Check check_effective_target_fsanitize_thread before running the tests. * g++.dg/tsan/tsan.exp: Likewise. Co-Authored-By: Max Ostapenko <m.ostapenko@partner.samsung.com> From-SVN: r215793
2014-10-02ipa.c (walk_polymorphic_call_targets): Avoid ICE when dumping during WPA.Jan Hubicka2-3/+12
* ipa.c (walk_polymorphic_call_targets): Avoid ICE when dumping during WPA. From-SVN: r215792
2014-10-02ipa-prop.c (ipa_modify_formal_parameters): Do not merge type variants.Jan Hubicka2-15/+5
* ipa-prop.c (ipa_modify_formal_parameters): Do not merge type variants. From-SVN: r215791
2014-10-02* ipa-polymorphic-call.cJan Hubicka3-84/+617
(ipa_polymorphic_call_context::restrict_to_inner_class): Rename EXPECTED_TYPE to OTR_TYPE; Validate speculation late; use speculation_consistent_p to do so; Add CONSDER_BASES and CONSIDER_PLACEMENT_NEW parameters. (contains_type_p): Add CONSDER_PLACEMENT_NEW and CONSIDER_BASES; short circuit obvious cases. (ipa_polymorphic_call_context::dump): Improve formatting. (ipa_polymorphic_call_context::ipa_polymorphic_call_context): Use combine_speculation_with to record speculations; Do not ICE when object is located in pointer type decl; do not ICE for methods of UNION_TYPE; do not record nonpolymorphic types. (ipa_polymorphic_call_context::speculation_consistent_p): New method. (ipa_polymorphic_call_context::combine_speculation_with): New method. (ipa_polymorphic_call_context::combine_with): New method. (ipa_polymorphic_call_context::make_speculative): Move here; use combine speculation. * cgraph.h (ipa_polymorphic_call_context): Update restrict_to_inner_class prototype; add offset_by, make_speculative, combine_with, useless_p, combine_speculation_with and speculation_consistent_p methods. (ipa_polymorphic_call_context::offset_by): New method. (ipa_polymorphic_call_context::useless_p): New method. From-SVN: r215790
2014-10-02re PR rtl-optimization/62151 (wrong code at -O2 and -O3 on x86_64-linux-gnu)Segher Boessenkool3-4/+16
2014-10-01 Segher Boessenkool <segher@kernel.crashing.org> gcc/ PR rtl-optimization/62151 * combine.c (can_combine_p): Allow the destination register of INSN to be clobbered in I3. (subst): Do not substitute into clobbers of registers. gcc/testsuite/ * gcc.dg/combine-clobber.c: New. From-SVN: r215789
2014-10-02Daily bump.GCC Administrator1-1/+1
From-SVN: r215788
2014-10-01re PR debug/63342 (ICE in loc_list_from_tree, at dwarf2out.c:14698)Jakub Jelinek4-2/+42
PR debug/63342 * dwarf2out.c (loc_list_from_tree): Handle MEM_REF with non-zero offset, TARGET_MEM_REF and SSA_NAME. * gcc.dg/pr63342.c: New test. From-SVN: r215782
2014-10-01re PR c++/63306 (ICE: Segmentation fault in analyze_functions())Jakub Jelinek2-0/+17
PR c++/63306 * g++.dg/ipa/pr63306.C: New test. From-SVN: r215779
2014-10-01i386.c (expand_vec_perm_palignr): Handle 256-bit vectors for TARGET_AVX2.Jakub Jelinek2-15/+49
* config/i386/i386.c (expand_vec_perm_palignr): Handle 256-bit vectors for TARGET_AVX2. From-SVN: r215778
2014-10-01i386.c (expand_vec_perm_vperm2f128): Canonicalize dfirst permutation.Jakub Jelinek2-2/+6
* config/i386/i386.c (expand_vec_perm_vperm2f128): Canonicalize dfirst permutation. From-SVN: r215777
2014-10-01re PR target/63428 (vshuf-v4di.c miscompilation)Jakub Jelinek4-5/+17
PR target/63428 * config/i386/i386.c (expand_vec_perm_pshufb): Fix up rperm[0] argument to avx2_permv2ti. * gcc.dg/torture/vshuf-4.inc: Move test 122 from EXPTESTS to test 24 in TESTS. From-SVN: r215776
2014-10-01re PR c++/63362 (The c++11 triviality-traits need front-end help)Jason Merrill5-2/+24
PR c++/63362 * method.c (constructible_expr): Handle value-init of non-class. * parser.c (cp_parser_trait_expr): Allow pack expansion. * pt.c (tsubst_copy_and_build): Handle pack expansion. From-SVN: r215772
2014-10-01re PR c++/63362 (The c++11 triviality-traits need front-end help)Jason Merrill7-20/+59
PR c++/63362 * class.c (type_has_non_user_provided_default_constructor): Rename from type_has_user_provided_default_constructor, reverse sense. (default_init_uninitialized_part, explain_non_literal_class): Adjust. (check_bases_and_members): Set TYPE_HAS_COMPLEX_DFLT. * call.c (build_new_method_call_1): Adjust. * cp-tree.h: Adjust. * decl.c (grok_special_member_properties): Don't set TYPE_HAS_COMPLEX_DFLT. * init.c (build_value_init_noctor): Don't use type_has_user_provided_default_constructor. From-SVN: r215771
2014-10-01[PATCH][ARM] Disable store_minmaxsi pattern for arm_restrict_iKyrylo Tkachov2-1/+5
* config/arm/arm.md (*store_minmaxsi): Disable for arm_restrict_it. From-SVN: r215760
2014-10-01testsuite: error out with tested condition instead of FOOBernhard Reutner-Fischer2-34/+39
Use the (abbreviated) proprocessor condition for #error instead of FOO so one can see the test issued. 2012-12-01 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> * lib/target-supports.exp: error out with preprocessor condition instead of FOO everywhere. From-SVN: r215759
2014-10-01Implement SD-6: SG10 Feature Test RecommendationsEdward Smith-Rowland10-0/+449
2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net> Implement SD-6: SG10 Feature Test Recommendations * internal.h (lexer_state, spec_nodes): Add in__has_include__. * directives.c: Support __has_include__ builtin. * expr.c (parse_has_include): New function to parse __has_include__ builtin; (eval_token()): Use it. * files.c (_cpp_has_header()): New funtion to look for header; (open_file_failed()): Not an error to not find a header file for __has_include__. * identifiers.c (_cpp_init_hashtable()): Add entry for __has_include__. * pch.c (cpp_read_state): Lookup __has_include__. * traditional.c (enum ls, _cpp_scan_out_logical_line()): Walk through __has_include__ statements. 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net> Implement SD-6: SG10 Feature Test Recommendations * c-cppbuiltin.c (c_cpp_builtins()): Define language feature macros and the __has_header macro. 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net> Implement SD-6: SG10 Feature Test Recommendations * include/bits/basic_string.h: Add __cpp_lib feature test macro. * include/bits/stl_algobase.h: Ditto. * include/bits/stl_function.h: Ditto. * include/bits/unique_ptr.h: Ditto. * include/std/chrono: Ditto. * include/std/complex: Ditto. * include/std/iomanip: Ditto. * include/std/shared_mutex: Ditto. * include/std/tuple: Ditto. * include/std/type_traits: Ditto. * include/std/utility: Ditto. * testsuite/experimental/feat-cxx14.cc: New. * testsuite/experimental/feat-lib-fund.cc: New. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust. * testsuite/20_util/duration/literals/range.cc: Adjust. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust. * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust. * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: Adjust. 2014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net> Implement SD-6: SG10 Feature Test Recommendations * g++.dg/cpp1y/feat-cxx11-neg.C: New. * g++.dg/cpp1y/feat-cxx11.C: New. * g++.dg/cpp1y/feat-cxx14.C: New. * g++.dg/cpp1y/feat-cxx98.C: New. * g++.dg/cpp1y/feat-cxx98-neg.C: New. * g++.dg/cpp1y/phoobhar.h: New. * g++.dg/cpp1y/testinc/phoobhar.h: New. From-SVN: r215752
2014-10-01Daily bump.GCC Administrator1-1/+1
From-SVN: r215747
2014-09-30i386.md (fmodxf3): Enable for flag_finite_math_only only.Uros Bizjak2-6/+21
* config/i386/i386.md (fmodxf3): Enable for flag_finite_math_only only. (fmod<mode>3): Ditto. (fpremxf4_i387): Ditto. (reminderxf3): Ditto. (reminder<mode>3): Ditto. (fprem1xf4_i387): Ditto. From-SVN: r215740
2014-09-30Redesign jump threading profile updates to avoid introducing insanities.Teresa Johnson5-29/+881
gcc: 2014-09-30 Teresa Johnson <tejohnson@google.com> * tree-ssa-threadupdate.c (struct ssa_local_info_t): New duplicate_blocks bitmap. (remove_ctrl_stmt_and_useless_edges): Ditto. (create_block_for_threading): Ditto. (compute_path_counts): New function. (update_profile): Ditto. (recompute_probabilities): Ditto. (update_joiner_offpath_counts): Ditto. (freqs_to_counts_path): Ditto. (clear_counts_path): Ditto. (ssa_fix_duplicate_block_edges): Update profile info. (ssa_create_duplicates): Pass new parameter. (ssa_redirect_edges): Remove old profile update. (thread_block_1): New duplicate_blocks bitmap, remove old profile update. (thread_single_edge): Pass new parameter. gcc/testsuite: 2014-09-30 Teresa Johnson <tejohnson@google.com> * testsuite/gcc.dg/tree-prof/20050826-2.c: New test. * testsuite/gcc.dg/tree-prof/cmpsf-1.c: Ditto. From-SVN: r215739
2014-09-30c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and ↵Jason Merrill10-9/+221
RID_IS_TRIVIALLY_CONSTRUCTIBLE. c-family/ * c-common.h (enum rid): Add RID_IS_TRIVIALLY_ASSIGNABLE and RID_IS_TRIVIALLY_CONSTRUCTIBLE. * c-common.c (c_common_reswords): Add __is_trivially_copyable. cp/ * cp-tree.h (cp_trait_kind): Add CPTK_IS_TRIVIALLY_ASSIGNABLE and CPTK_IS_TRIVIALLY_CONSTRUCTIBLE. * cxx-pretty-print.c (pp_cxx_trait_expression): Likewise. * parser.c (cp_parser_primary_expression): Likewise. (cp_parser_trait_expr): Likewise. Handle variadic trait. * semantics.c (trait_expr_value): Likewise. (finish_trait_expr): Likewise. (check_trait_type): Handle variadic trait. Return bool. * method.c (build_stub_object): Add rvalue reference here. (locate_fn_flags): Not here. (check_nontriv, assignable_expr, constructible_expr): New. (is_trivially_xible): New. From-SVN: r215738
2014-09-30c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE.Jason Merrill8-0/+24
c-family/ * c-common.h (enum rid): Add RID_IS_TRIVIALLY_COPYABLE. * c-common.c (c_common_reswords): Add __is_trivially_copyable. cp/ * cp-tree.h (cp_trait_kind): Add CPTK_IS_TRIVIALLY_COPYABLE. * cxx-pretty-print.c (pp_cxx_trait_expression): Likewise. * parser.c (cp_parser_primary_expression): Likewise. (cp_parser_trait_expr): Likewise. * semantics.c (trait_expr_value): Likewise. (finish_trait_expr): Likewise. From-SVN: r215737
2014-09-30method.c (build_stub_object): Use CONVERT_EXPR.Jason Merrill3-3/+7
* method.c (build_stub_object): Use CONVERT_EXPR. * tree.c (build_dummy_object): Likewise. (is_dummy_object): Adjust. From-SVN: r215736
2014-09-30c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO.Jason Merrill10-68/+19
c-family/ * c-common.h (enum rid): Remove RID_IS_CONVERTIBLE_TO. * c-common.c (c_common_reswords): Remove __is_convertible_to. cp/ * cp-tree.h (cp_trait_kind): Remove CPTK_IS_CONVERTIBLE_TO. * cxx-pretty-print.c (pp_cxx_trait_expression): Likewise. * semantics.c (trait_expr_value): Likewise. (finish_trait_expr): Likewise. * parser.c (cp_parser_primary_expression): Likewise. (cp_parser_trait_expr): Likewise. Remove redundant grokdeclarator. From-SVN: r215735
2014-09-30re PR c++/16564 (g++ seems to go into an infinite loop after errors)Paolo Carlini1-0/+10
cp/ 2014-09-30 Manuel López-Ibáñez <manu@gcc.gnu.org> PR c++/16564 * error.c (print_instantiation_context): Delete. * typeck2.c (build_x_arrow): Record location when pushing template instantiation. * pt.c (push_tinst_level): Make it a wrapper around ... (push_tinst_level_loc): ... this. New function. Make excessive template instantiation depth a fatal error. Record location. Use bool as return type. (instantiate_pending_templates): Make excessive template instantiation depth a fatal error. (problematic_instantiation_changed): Use bool as return type. * cp-tree.h (print_instantiation_context): Delete. (push_tinst_level): Update declaration. (problematic_instantiation_changed): Likewise. (push_tinst_level_loc): New. testsuite/ 2014-09-30 Manuel López-Ibáñez <manu@gcc.gnu.org> PR c++/16564 * lib/gcc.exp: Accept "fatal error:" as error prefix. * lib/g++.exp: Likewise. * lib/obj-c++.exp: Likewise. * lib/objc.exp: Likewise. * g++.dg/template/pr16564.C: New test. 2014-09-30 Paolo Carlini <paolo.carlini@oracle.com> PR c++/16564 * g++.dg/cpp0x/decltype26.C: Adjust. * g++.dg/cpp0x/decltype28.C: Likewise. * g++.dg/cpp0x/decltype29.C: Likewise. * g++.dg/cpp0x/decltype32.C: Likewise. * g++.dg/cpp0x/enum11.C: Likewise. * g++.dg/template/arrow1.C: Likewise. * g++.dg/template/pr23510.C: Likewise. * g++.dg/template/recurse.C: Likewise. * g++.dg/template/recurse2.C: Likewise. * g++.dg/template/vtable2.C: Likewise. * g++.old-deja/g++.pt/infinite1.C: Likewise. From-SVN: r215734
2014-09-30re PR c++/16564 (g++ seems to go into an infinite loop after errors)Paolo Carlini21-78/+115
cp/ 2014-09-30 Manuel López-Ibáñez <manu@gcc.gnu.org> PR c++/16564 * error.c (print_instantiation_context): Delete. * typeck2.c (build_x_arrow): Record location when pushing template instantiation. * pt.c (push_tinst_level): Make it a wrapper around ... (push_tinst_level_loc): ... this. New function. Make excessive template instantiation depth a fatal error. Record location. Use bool as return type. (instantiate_pending_templates): Make excessive template instantiation depth a fatal error. (problematic_instantiation_changed): Use bool as return type. * cp-tree.h (print_instantiation_context): Delete. (push_tinst_level): Update declaration. (problematic_instantiation_changed): Likewise. (push_tinst_level_loc): New. testsuite/ 2014-09-30 Manuel López-Ibáñez <manu@gcc.gnu.org> PR c++/16564 * lib/gcc.exp: Accept "fatal error:" as error prefix. * lib/g++.exp: Likewise. * lib/obj-c++.exp: Likewise. * lib/objc.exp: Likewise. * g++.dg/template/pr16564.C: New test. 2014-09-30 Paolo Carlini <paolo.carlini@oracle.com> PR c++/16564 * g++.dg/cpp0x/decltype26.C: Adjust. * g++.dg/cpp0x/decltype28.C: Likewise. * g++.dg/cpp0x/decltype29.C: Likewise. * g++.dg/cpp0x/decltype32.C: Likewise. * g++.dg/cpp0x/enum11.C: Likewise. * g++.dg/template/arrow1.C: Likewise. * g++.dg/template/pr23510.C: Likewise. * g++.dg/template/recurse.C: Likewise. * g++.dg/template/recurse2.C: Likewise. * g++.dg/template/vtable2.C: Likewise. * g++.old-deja/g++.pt/infinite1.C: Likewise. From-SVN: r215733
2014-09-30re PR preprocessor/58893 (<command-line>:0:0: internal compiler error: ↵Bernd Edlinger3-0/+12
Segmentation fault) 2014-09-30 Bernd Edlinger <bernd.edlinger@hotmail.de> PR preprocessor/58893 * errors.c (cpp_diagnostic): Fix possible out of bounds access. * files.c (_cpp_stack_include): Initialize src_loc for IT_CMDLINE. testsuite: 2014-09-30 Bernd Edlinger <bernd.edlinger@hotmail.de> PR preprocessor/58893 * gcc.dg/pr58893.c: New test case. * gcc.dg/pr58893-0.h: New include. From-SVN: r215730
2014-09-30re PR target/62120 ([ICE] ADDITIONAL_REGISTER_NAMES for [YZ]MMs, regno>8 ↵Ilya Tocar5-3/+25
should be disable in 32-bit) Fix PR 62120. gcc/ 2014-09-30 Ilya Tocar <ilya.tocar@intel.com> PR middle-end/62120 * varasm.c (decode_reg_name_and_count): Check availability for registers from ADDITIONAL_REGISTER_NAMES. testsuite/ 2014-09-30 Ilya Tocar <ilya.tocar@intel.com> PR middle-end/62120 * gcc.target/i386/avx512f-additional-reg-names.c: Use register valid in 32-bit mode. * gcc.target/i386/pr62120.c: New. From-SVN: r215729