gcc.git
9 years agore PR libstdc++/65839 (xmethods need updating once gdb decides how to fix 18285)
Doug Evans [Wed, 29 Apr 2015 22:50:31 +0000 (22:50 +0000)]
re PR libstdc++/65839 (xmethods need updating once gdb decides how to fix 18285)

PR libstdc++/65839
* python/libstdcxx/v6/xmethods.py (get_bool_type): New function.
Replace all lookups of "bool" with this.
(get_std_size_type): New function.  Replace all lookups of std::size_t
with this.
(*Worker): New method get_result_type.
(DequeWorkerBase.__init__): New arg val_type.  All callers updated.
(ListWorkerBase.__init__): New arg val_type.  All callers updated.
(UniquePtrGetWorker.__init__): New arg elem_type.  All callers updated.
Delete setting of name, enabled.
(UniquePtrDerefWorker.__init__): New arg elem_type.  All callers
updated.  Delete setting of name.
(UniquePtrMethodsMatcher): Rewrite for consistency with all other
libstdc++ xmethod matchers.
* testsuite/libstdc++-xmethods/array.cc: Add whatis tests.
* testsuite/libstdc++-xmethods/associative-containers.cc: Ditto.
* testsuite/libstdc++-xmethods/deque.cc: Ditto.
* testsuite/libstdc++-xmethods/forwardlist.cc: Ditto.
* testsuite/libstdc++-xmethods/list.cc: Ditto.
* testsuite/libstdc++-xmethods/unique_ptr.cc: Ditto.
* testsuite/libstdc++-xmethods/vector.cc: Ditto.

From-SVN: r222599

9 years agocompiler: Consider multi-result calls in escape analysis.
Ian Lance Taylor [Wed, 29 Apr 2015 22:40:07 +0000 (22:40 +0000)]
compiler: Consider multi-result calls in escape analysis.

When building connection graphs between objects, the analysis
only handled calls of the form `call(...)` or `var := call(...)`.
Functions with multiple results being used e.g. `var, _ = call(...)`
were not analyzed, causing some escaping variables to be marked as
non-escaping.

From-SVN: r222598

9 years agocompiler: Propagate escape info from closures to enclosed variables.
Ian Lance Taylor [Wed, 29 Apr 2015 22:14:34 +0000 (22:14 +0000)]
compiler: Propagate escape info from closures to enclosed variables.

If a closure escapes, the enclosed variables must escape via the
closure.  Reachability analysis had a bug where the enclosed
variables were not considered as reachable from the closure.

From-SVN: r222597

9 years agoUse consistent naming for value type attributes.
Doug Evans [Wed, 29 Apr 2015 21:57:04 +0000 (21:57 +0000)]
Use consistent naming for value type attributes.

* python/libstdcxx/v6/xmethods.py (ArrayWorkerBase): Rename _valtype
to _val_type.
(ArraySizeWorker, ArrayEmptyWorker): Ditto.
(ArrayFrontWorker, ArrayBackWorker): Ditto.
(ArrayAtWorker, ArraySubscriptWorker): Ditto.
(DequeWorkerBase): Rename elemtype to val_type.
(ForwardListWorkerBase): Rename _elem_type to _val_type.
(ForwardListFrontWorker): Ditto.  And rename elem_address to
val_address.
(ForwardListMethodsMatcher): Rename elem_type to val_type.
(VectorWorkerBase): Rename _elemtype to _val_type.

From-SVN: r222596

9 years agoruntime: Support -buildmode=c-shared.
Ian Lance Taylor [Wed, 29 Apr 2015 21:31:53 +0000 (21:31 +0000)]
runtime: Support -buildmode=c-shared.

These changes permit using the go tool from the upcoming Go
1.5 release with -buildmode=c-archive to build gccgo code into
an archive file that can be linked with a C program.

From-SVN: r222594

9 years agomips-cpus.def: (mips4): Change default processor from PROCESSOR_R8000 to PROCESSOR_R1...
Steve Ellcey [Wed, 29 Apr 2015 21:09:10 +0000 (21:09 +0000)]
mips-cpus.def: (mips4): Change default processor from PROCESSOR_R8000 to PROCESSOR_R10000.

2015-04-29  Steve Ellcey  <sellcey@imgtec.com>

* config/mips/mips-cpus.def: (mips4): Change default processor
from PROCESSOR_R8000 to PROCESSOR_R10000.

From-SVN: r222593

9 years agore PR target/65871 (bzhi builtin/intrinsic wrongly assumes bzhi instruction doesn...
Uros Bizjak [Wed, 29 Apr 2015 20:58:25 +0000 (22:58 +0200)]
re PR target/65871 (bzhi builtin/intrinsic wrongly assumes bzhi instruction doesn't set the ZF flag)

PR target/65871
        * config/i386/i386.md (*bmi_bextr_<mode>_cczonly): New pattern.
        (*bmi2_bzhi_<mode>3_1_cczonly): Ditto.
        (setcc+movzbl peephole2): Check also clobbered reg.
        (setcc+andl peephole2): Ditto.

From-SVN: r222592

9 years agore PR c++/50800 (Internal compiler error in finish_member_declarations, possibly...
Jason Merrill [Wed, 29 Apr 2015 20:51:05 +0000 (16:51 -0400)]
re PR c++/50800 (Internal compiler error in finish_member_declarations, possibly related to may_alias attribute)

PR c++/50800
* tree.c (apply_identity_attributes): Fix handling of classes.

From-SVN: r222591

9 years agoc-common.c (handle_section_attribute): Refactor to reduce nesting and distinguish...
Josh Triplett [Wed, 29 Apr 2015 20:32:41 +0000 (20:32 +0000)]
c-common.c (handle_section_attribute): Refactor to reduce nesting and distinguish between error cases.

        * c-common.c (handle_section_attribute): Refactor to reduce
        nesting and distinguish between error cases.

From-SVN: r222590

9 years agomips.h (CRT_CALL_STATIC_FUNCTION): Fix the macro to use la/jalr instead of jal.
Petar Jovanovic [Wed, 29 Apr 2015 20:28:52 +0000 (20:28 +0000)]
mips.h (CRT_CALL_STATIC_FUNCTION): Fix the macro to use la/jalr instead of jal.

gcc/ChangeLog:

2015-04-21  Petar Jovanovic  <petar.jovanovic@rt-rk.com>

* config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Fix the macro to use
la/jalr instead of jal.

gcc/testsuite/ChangeLog:

2015-04-21  Petar Jovanovic  <petar.jovanovic@rt-rk.com>

* gcc.target/mips/call-from-init.c: New test.
* gcc.target/mips/mips.exp: Add section_start to mips_option_groups.

From-SVN: r222589

9 years agore PR target/65871 (bzhi builtin/intrinsic wrongly assumes bzhi instruction doesn...
Uros Bizjak [Wed, 29 Apr 2015 18:53:19 +0000 (20:53 +0200)]
re PR target/65871 (bzhi builtin/intrinsic wrongly assumes bzhi instruction doesn't set the ZF flag)

PR target/65871
* config/i386/i386.md (*bmi_bextr_<mode>_cczonly): New pattern.
(*bmi2_bzhi_<mode>3_1_cczonly): Ditto.

testsuite/ChangeLog:

PR target/65871
* gcc.target/i386/pr65871-1.c: New test
* gcc.target/i386/pr65871-2.c: Ditto.

From-SVN: r222588

9 years agore PR c/64610 (No -Wbool-compare warning on "(0 != a) >= 0")
Marek Polacek [Wed, 29 Apr 2015 18:13:44 +0000 (18:13 +0000)]
re PR c/64610 (No -Wbool-compare warning on "(0 != a) >= 0")

PR c/64610
* c-common.c (maybe_warn_bool_compare): Warn when comparing a boolean
with 0/1.

* c-c++-common/Wbool-compare-1.c (fn1): Remove a few lines.
* c-c++-common/Wbool-compare-2.c: New test.

From-SVN: r222587

9 years agoFix libgcc installation for offload targets.
Bernd Schmidt [Wed, 29 Apr 2015 16:52:45 +0000 (16:52 +0000)]
Fix libgcc installation for offload targets.

* Makefile.in (real_host_noncanonical): New variable.
(libsubdir): Use it.
* configure.ac (real_host_noncanonical): Compute.  Remove special
case for intelmicemul.
* configure: Regenerate.

From-SVN: r222585

9 years ago[PR libgomp/65099] nvptx mkoffload: pass "-m32" or "-m64" to the compiler
Thomas Schwinge [Wed, 29 Apr 2015 16:23:26 +0000 (18:23 +0200)]
[PR libgomp/65099] nvptx mkoffload: pass "-m32" or "-m64" to the compiler

... depending on "-foffload-abi=[...]".

Coding style/code copied from gcc/config/i386/intelmic-mkoffload.c for
consistency.

gcc/
* config/nvptx/mkoffload.c (target_ilp32): New variable.
(main): Set it depending on "-foffload-abi=[...]".
(compile_native, main): Use it to pass "-m32" or "-m64" to the
compiler.

From-SVN: r222583

9 years ago[AArch64] Fix PR/65770 vstN_lane on bigendian
Alan Lawrence [Wed, 29 Apr 2015 16:10:27 +0000 (16:10 +0000)]
[AArch64] Fix PR/65770 vstN_lane on bigendian

gcc/:

* config/aarch64/aarch64-simd.md (vec_store_lanesoi_lane<mode>,
vec_store_lanesci_lane<mode>, vec_store_lanesxi_lane<mode>):
Flip lane index back at assembly time for bigendian.

gcc/testsuite/:

* gcc.target/aarch64/vstN_lane_1.c: New file.

From-SVN: r222582

9 years agore PR libstdc++/65760 (invalid use of incomplete type with std::is_convertible<C...
Jonathan Wakely [Wed, 29 Apr 2015 16:07:47 +0000 (17:07 +0100)]
re PR libstdc++/65760 (invalid use of incomplete type with std::is_convertible<C, C>)

PR libstdc++/65760
* include/std/functional (__check_func_return_type): Use is_same to
avoid using _is_convertible on incomplete types.
* testsuite/20_util/function/65760.cc: New.

From-SVN: r222581

9 years agoAdd OMP_STANDALONE_CLAUSES.
Thomas Schwinge [Wed, 29 Apr 2015 15:44:41 +0000 (17:44 +0200)]
Add OMP_STANDALONE_CLAUSES.

gcc/
* tree.h (OMP_STANDALONE_CLAUSES): New macro.
* gimplify.c (gimplify_omp_workshare): Use it.
gcc/c/
* c-parser.c (c_parser_oacc_enter_exit_data): Use
OMP_STANDALONE_CLAUSES.
gcc/cp/
* parser.c (cp_parser_oacc_enter_exit_data): Use
OMP_STANDALONE_CLAUSES.

From-SVN: r222580

9 years agore PR libstdc++/64657 (Support iterators with overloaded operator-comma)
Jonathan Wakely [Wed, 29 Apr 2015 15:22:13 +0000 (16:22 +0100)]
re PR libstdc++/64657 (Support iterators with overloaded operator-comma)

PR libstdc++/64657
* include/bits/basic_string (basic_string::_S_copy_chars): Cast
expression to void.
* include/bits/locale_facets_nonio.tcc (money_get::_M_extract,
time_get::_M_extract_num, time_get::_M_extract_name,
time_get::_M_extract_wday_or_month): Likewise.
* include/bits/stl_algo.h (__includes, __replace_copy_if,
__is_sorted_until, __is_permutation, transform): Likewise.
* include/bits/stl_algobase.h (swap_ranges, __copy_move::__copy_m,
__equal::equal, __lexicographical_compare_impl, equal): Likewise.
* include/bits/stl_numeric.h (inner_product): Likewise.
* include/bits/stl_uninitialized.h (__uninitialized_copy_a): Likewise.
* testsuite/util/testsuite_iterators.h (output_iterator_wrapper,
input_iterator_wrapper): Declare unusable comma operator.
* testsuite/21_strings/basic_string/cons/char/64657.cc: New.
* testsuite/21_strings/basic_string/modifiers/assign/char/64657.cc:
New.

From-SVN: r222579

9 years agore PR c++/64667 (-Winit-self ignored for reference fields)
Paolo Carlini [Wed, 29 Apr 2015 14:06:27 +0000 (14:06 +0000)]
re PR c++/64667 (-Winit-self ignored for reference fields)

/cp
2015-04-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/64667
* init.c (perform_member_init): Handle references for -Winit-self.

/testsuite
2015-04-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/64667
* g++.dg/warn/Winit-self-3.C: New.

From-SVN: r222577

9 years agoMakefile.in (build/genrecog.o): Depend on inchash.h.
Richard Sandiford [Wed, 29 Apr 2015 13:32:59 +0000 (13:32 +0000)]
Makefile.in (build/genrecog.o): Depend on inchash.h.

gcc/
* Makefile.in (build/genrecog.o): Depend on inchash.h.
(build/genrecog$(build_exeext): Depend on build/hash-table.o and
build/inchash.o
* genrecog.c: Rewrite most of the code except for the third page.

From-SVN: r222575

9 years agoinchash.h, inchash.c: Include bconfig.h for build objects.
Richard Sandiford [Wed, 29 Apr 2015 13:32:34 +0000 (13:32 +0000)]
inchash.h, inchash.c: Include bconfig.h for build objects.

gcc/
* inchash.h, inchash.c: Include bconfig.h for build objects.
* Makefile.in (build/inchash.o): New rule.

From-SVN: r222574

9 years agonamelist_87.f90: Use dg-add-options ieee.
Uros Bizjak [Wed, 29 Apr 2015 11:53:39 +0000 (13:53 +0200)]
namelist_87.f90: Use dg-add-options ieee.

* gfortran.dg/namelist_87.f90: Use dg-add-options ieee.

From-SVN: r222573

9 years agore PR target/65924 (ICE const_int_operand failed on arm-none-eabi)
Yvan Roux [Wed, 29 Apr 2015 11:31:40 +0000 (11:31 +0000)]
re PR target/65924 (ICE const_int_operand failed on arm-none-eabi)

gcc/
2015-04-29  Yvan Roux  <yvan.roux@linaro.org>

PR target/65924
* config/arm/thumb2.md (*thumb2_addsi3_compare0_scratch): Fix operand
number in type attribute expression.

gcc/testsuite/
2015-04-29  Yvan Roux  <yvan.roux@linaro.org>

PR target/65924
* gcc.target/arm/pr65924.c: New test.

From-SVN: r222572

9 years agoloop-iv.c (canon_condition): Generalize to all types of integer constant.
Richard Sandiford [Wed, 29 Apr 2015 11:12:17 +0000 (11:12 +0000)]
loop-iv.c (canon_condition): Generalize to all types of integer constant.

gcc/
* loop-iv.c (canon_condition): Generalize to all types of integer
constant.

From-SVN: r222571

9 years agogimple-walk.c #include TLC
Bernhard Reutner-Fischer [Wed, 29 Apr 2015 10:45:31 +0000 (12:45 +0200)]
gimple-walk.c #include TLC

Also look at return values of parse_input_constraint and
parse_output_constraint.

From-SVN: r222569

9 years ago[ARM]Remove vec_shr and vec_shr optabs
Alan Lawrence [Wed, 29 Apr 2015 10:13:36 +0000 (10:13 +0000)]
[ARM]Remove vec_shr and vec_shr optabs

        * config/arm/neon.md (vec_shl<mode>, vec_shr<mode>): Remove.

From-SVN: r222568

9 years agoMove pass_stdarg to after pass_dce in pass_all_optimizations
Tom de Vries [Wed, 29 Apr 2015 09:13:49 +0000 (09:13 +0000)]
Move pass_stdarg to after pass_dce in pass_all_optimizations

2015-04-29  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/65893
* passes.def (pass_all_optimizations): Move pass_stdarg to after
pass_dce.

From-SVN: r222567

9 years agoFix OpenMP's target update directive in templated code.
Thomas Schwinge [Wed, 29 Apr 2015 09:04:31 +0000 (11:04 +0200)]
Fix OpenMP's target update directive in templated code.

    FAIL: g++.dg/gomp/tpl-target-update.C  -std=c++98 (internal compiler error)
    FAIL: g++.dg/gomp/tpl-target-update.C  -std=c++98 (test for excess errors)
    FAIL: g++.dg/gomp/tpl-target-update.C  -std=c++11 (internal compiler error)
    FAIL: g++.dg/gomp/tpl-target-update.C  -std=c++11 (test for excess errors)
    FAIL: g++.dg/gomp/tpl-target-update.C  -std=c++14 (internal compiler error)
    FAIL: g++.dg/gomp/tpl-target-update.C  -std=c++14 (test for excess errors)

    [...]/source-gcc/gcc/testsuite/g++.dg/gomp/tpl-target-update.C: In instantiation of 'void f(T, T) [with T = int]':
    [...]/source-gcc/gcc/testsuite/g++.dg/gomp/tpl-target-update.C:19:9:   required from here
    [...]/source-gcc/gcc/testsuite/g++.dg/gomp/tpl-target-update.C:10:9: internal compiler error: tree check: expected oacc_parallel or oacc_kernels or oacc_data or oacc_host_data or omp_parallel or omp_task or omp_for or omp_simd or cilk_simd or cilk_for or omp_distribute or oacc_loop or omp_teams or omp_target_data or omp_target or omp_sections or omp_single, have omp_target_update in tsubst_expr, at cp/pt.c:14209
    0xf5aae1 tree_range_check_failed(tree_node const*, char const*, int, char const*, tree_code, tree_code)
            [...]/source-gcc/gcc/tree.c:9384
    0x66e201 tree_range_check
            [...]/source-gcc/gcc/tree.h:2979
    0x66e201 tsubst_expr
            [...]/source-gcc/gcc/cp/pt.c:14209
    0x6695e3 tsubst_expr
            [...]/source-gcc/gcc/cp/pt.c:13752
    0x66ac07 tsubst_expr
            [...]/source-gcc/gcc/cp/pt.c:13938
    0x667c41 instantiate_decl(tree_node*, int, bool)
            [...]/source-gcc/gcc/cp/pt.c:20367
    0x6ae386 instantiate_pending_templates(int)
            [...]/source-gcc/gcc/cp/pt.c:20484
    0x6edc3d cp_write_global_declarations()
            [...]/source-gcc/gcc/cp/decl2.c:4456

gcc/cp/
* pt.c (tsubst_expr) <OMP_TARGET_UPDATE>: Use
OMP_TARGET_UPDATE_CLAUSES instead of OMP_CLAUSES.
gcc/testsuite/
* g++.dg/gomp/tpl-target-update.C: New file.

From-SVN: r222564

9 years agore PR tree-optimization/65917 (XFAIL: gcc.dg/tree-ssa/20030922-2.c scan-tree-dump...
Richard Biener [Wed, 29 Apr 2015 08:51:08 +0000 (08:51 +0000)]
re PR tree-optimization/65917 (XFAIL: gcc.dg/tree-ssa/20030922-2.c scan-tree-dump-times dom1 "if " 2)

2015-04-29  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65917
* gcc.dg/tree-ssa/20030922-2.c: Disable ifcombine and XFAIL.

From-SVN: r222562

9 years agoc-common.h (omp_clause_mask): Unconditionally define as a class.
Jakub Jelinek [Wed, 29 Apr 2015 08:25:11 +0000 (10:25 +0200)]
c-common.h (omp_clause_mask): Unconditionally define as a class.

* c-common.h (omp_clause_mask): Unconditionally define as a class.
Use uint64_t instead of unsigned HOST_WIDE_INT and 64 instead of
HOST_BITS_PER_WIDE_INT.

From-SVN: r222561

9 years agotree-vect-data-refs.c (vect_analyze_group_access): Properly compute GROUP_SIZE for...
Richard Biener [Wed, 29 Apr 2015 08:15:52 +0000 (08:15 +0000)]
tree-vect-data-refs.c (vect_analyze_group_access): Properly compute GROUP_SIZE for basic-block SLP.

2015-04-29  Richard Biener  <rguenther@suse.de>

* tree-vect-data-refs.c (vect_analyze_group_access): Properly
compute GROUP_SIZE for basic-block SLP.
* tree-vect-slp.c (vect_get_place_in_interleaving_chain): Properly
take into account gaps.
(vect_get_mask_element): Properly reject references to previous
vectors.
(vect_transform_slp_perm_load): Likewise.

From-SVN: r222560

9 years agore PR target/64835 (-fno-ipa-cp is inconsitently supported when attributes optimize...
Christian Bruel [Wed, 29 Apr 2015 06:52:23 +0000 (08:52 +0200)]
re PR target/64835 (-fno-ipa-cp is inconsitently supported when attributes optimize or target are used)

2015-04-29  Christian Bruel  <christian.bruel@st.com>

PR target/64835
* config/i386/i386.c (ix86_default_align): New function.
(ix86_override_options_after_change): Call ix86_default_align.
(TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE): New hook.
(ix86_override_options_after_change): New function.

From-SVN: r222559

9 years agolist.cc (_GLIBCXX_USE_CXX11_ABI): Define to zero.
Doug Evans [Wed, 29 Apr 2015 00:17:09 +0000 (00:17 +0000)]
list.cc (_GLIBCXX_USE_CXX11_ABI): Define to zero.

* testsuite/libstdc++-xmethods/list.cc (_GLIBCXX_USE_CXX11_ABI):
Define to zero.

From-SVN: r222556

9 years agoDaily bump.
GCC Administrator [Wed, 29 Apr 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222555

9 years ago* tree-ssa-dom.c (record_equality); Fix comment typos.
Jeff Law [Tue, 28 Apr 2015 23:18:27 +0000 (17:18 -0600)]
* tree-ssa-dom.c (record_equality); Fix comment typos.

From-SVN: r222551

9 years agore PR c++/65896 (Erroneous uninitialized variable access error in constexpr function...
Jason Merrill [Tue, 28 Apr 2015 21:27:17 +0000 (17:27 -0400)]
re PR c++/65896 (Erroneous uninitialized variable access error in constexpr function with temporary variables)

PR c++/65896
* constexpr.c (cxx_eval_store_expression): Don't try to actually
store an empty class.

From-SVN: r222549

9 years ago* fr.po: Update.
Joseph Myers [Tue, 28 Apr 2015 21:21:24 +0000 (22:21 +0100)]
* fr.po: Update.

From-SVN: r222547

9 years agoRemove ifn_va_arg ap fixup
Tom de Vries [Tue, 28 Apr 2015 20:58:51 +0000 (20:58 +0000)]
Remove ifn_va_arg ap fixup

2015-04-28  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/65887
* gimplify.c (gimplify_modify_expr): Remove ifn_va_arg ap fixup.

* c-common.c (build_va_arg): Mark va_arg ap argument as addressable.

From-SVN: r222546

9 years agoextend.texi (Declaring Attributes of Functions): Split into subsections by target.
Sandra Loosemore [Tue, 28 Apr 2015 20:15:59 +0000 (16:15 -0400)]
extend.texi (Declaring Attributes of Functions): Split into subsections by target.

2015-04-28  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/extend.texi (Declaring Attributes of Functions): Split into
subsections by target.  Alphabetize the table of common attributes.
Rewrite some of the introductory text to reflect the new structure.
Update some cross-references to point to the new subsections.
(Attribute Syntax): Put paragraph about "__" naming here.  Remove
duplicate copies in the discussion of function, label, and type
attributes.

From-SVN: r222543

9 years agostl_algo.h (random_shuffle): Only define for hosted implementations.
Jonathan Wakely [Tue, 28 Apr 2015 19:42:56 +0000 (20:42 +0100)]
stl_algo.h (random_shuffle): Only define for hosted implementations.

* include/bits/stl_algo.h (random_shuffle): Only define for hosted
implementations.

From-SVN: r222542

9 years agoMakefile.am (SUBDIRS): Move python to hosted_source.
Jonathan Wakely [Tue, 28 Apr 2015 19:42:51 +0000 (20:42 +0100)]
Makefile.am (SUBDIRS): Move python to hosted_source.

* Makefile.am (SUBDIRS): Move python to hosted_source.
* Makefile.in: Regenerate.
* acinclude.m4 (glibcxx_SUBDIRS): Reorder.
* configure: Regenerate.

From-SVN: r222541

9 years agore PR libstdc++/65883 (numeric_limits<unsigned __int128>::max() returns incorrect...
Marc Glisse [Tue, 28 Apr 2015 19:35:49 +0000 (21:35 +0200)]
re PR libstdc++/65883 (numeric_limits<unsigned __int128>::max() returns incorrect value)

2015-04-28  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/65883
* include/std/limits (numeric_limits): Add missing unsigned.

From-SVN: r222540

9 years agointerface.c (gfc_compare_types): Check for unlimited polymorphism flag in the correct...
Andre Vehreschild [Tue, 28 Apr 2015 19:03:01 +0000 (21:03 +0200)]
interface.c (gfc_compare_types): Check for unlimited polymorphism flag in the correct position indepent of the...

gcc/fortran/ChangeLog:

2015-04-28  Andre Vehreschild  <vehre@gmx.de>

* interface.c (gfc_compare_types): Check for unlimited
polymorphism flag in the correct position indepent of the _data
component being present or not.  This prevents a segfault, when
the _data component is not present.
* symbol.c (gfc_type_compatible): Same.

gcc/testsuite/ChangeLog:

2015-04-28  Andre Vehreschild  <vehre@gmx.de>

* gfortran.dg/implicit_class_1.f90: Adding flag to check, if
segfault is fixed.

From-SVN: r222539

9 years ago* c-parser.c (c_parser_binary_expression): Remove duplicate line.
Marek Polacek [Tue, 28 Apr 2015 17:29:24 +0000 (17:29 +0000)]
* c-parser.c (c_parser_binary_expression): Remove duplicate line.

From-SVN: r222537

9 years agoFix typos in entry from yesterday, as requested.
Caroline Tice [Tue, 28 Apr 2015 17:27:19 +0000 (10:27 -0700)]
Fix typos in entry from yesterday, as requested.

From-SVN: r222536

9 years agore PR bootstrap/65910 (r222473 breaks x86_64 darwin bootstrap)
Dominique d'Humieres [Tue, 28 Apr 2015 17:16:19 +0000 (19:16 +0200)]
re PR bootstrap/65910 (r222473 breaks x86_64 darwin bootstrap)

2015-04-28  Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR bootstrap/65910
        * varasm.c (assemble_end_function): Guard ASM_DECLARE_FUNCTION_SIZE.

From-SVN: r222535

9 years agovect-33.c: Remove spurious line.
Bill Schmidt [Tue, 28 Apr 2015 15:44:24 +0000 (15:44 +0000)]
vect-33.c: Remove spurious line.

2015-04-28  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vect/vect-33.c: Remove spurious line.

From-SVN: r222533

9 years agovector (_Safe_vector::operator=): Add missing returns.
Stephan Bergmann [Tue, 28 Apr 2015 15:05:27 +0000 (15:05 +0000)]
vector (_Safe_vector::operator=): Add missing returns.

2015-04-28  Stephan Bergmann  <sbergman@redhat.com>

* include/debug/vector (_Safe_vector::operator=): Add missing returns.

From-SVN: r222532

9 years agore PR c++/65656 (__builtin_constant_p should always be constexpr)
Jason Merrill [Tue, 28 Apr 2015 14:43:59 +0000 (10:43 -0400)]
re PR c++/65656 (__builtin_constant_p should always be constexpr)

PR c++/65656
* constexpr.c (cxx_eval_builtin_function_call): Fix
__builtin_constant_p.

From-SVN: r222531

9 years agore PR c++/50800 (Internal compiler error in finish_member_declarations, possibly...
Jason Merrill [Tue, 28 Apr 2015 14:43:54 +0000 (10:43 -0400)]
re PR c++/50800 (Internal compiler error in finish_member_declarations, possibly related to may_alias attribute)

PR c++/50800
* tree.c (strip_typedefs): Add remove_attributes parm.
(strip_typedefs_expr): Likewise.
(apply_identity_attributes): New subroutine of strip_typedefs.
* pt.c (canonicalize_type_argument): Let strip_typedefs handle attrs.
(convert_nontype_argument, unify): Likewise.
* cp-tree.h: Adjust.

From-SVN: r222530

9 years agore PR c++/65734 (Yet another case of lost alignment by stor_layout)
Jason Merrill [Tue, 28 Apr 2015 14:43:48 +0000 (10:43 -0400)]
re PR c++/65734 (Yet another case of lost alignment by stor_layout)

PR c++/65734
gcc/
* stor-layout.c (layout_type): Layout the TYPE_MAIN_VARIANT.
(finalize_type_size): Respect TYPE_USER_ALIGN.
(layout_type) [ARRAY_TYPE]: Likewise.
gcc/cp/
* class.c (fixup_attribute_variants): Respect TYPE_USER_ALIGN.

From-SVN: r222529

9 years agoarm.md (*arm_movt): Fix type attribute.
Yvan Roux [Tue, 28 Apr 2015 14:41:04 +0000 (14:41 +0000)]
arm.md (*arm_movt): Fix type attribute.

2015-04-28  Yvan Roux  <yvan.roux@linaro.org>

* config/arm/arm.md (*arm_movt): Fix type attribute.
(*cmpsi_shiftsi): Likewise.
(*cmpsi_shiftsi_swp): Likewise.
(*movsicc_insn): Likewise.
(*cond_move): Likewise.
(*if_plus_move): Likewise.
(*if_move_plus): Likewise.
(*if_arith_move): Likewise.
(*if_move_arith): Likewise.
(*if_shift_move): Likewise.
(*if_move_shift): Likewise.
(*arm_movtas_ze): Likewise.
* config/arm/thumb2.md (*thumb2_movsicc_insn): Fix alternative
redundancy and type attribute.
(*thumb2_movsi_insn): Fix type attribute.
(*thumb2_addsi_short): Likewise.
(thumb2_addsi3_compare0): Likewise.
(*thumb2_addsi3_compare0_scratch): Merge alternatives and fix
attributes accordingly.

From-SVN: r222528

9 years ago* g++.dg/tree-ssa/pr61034.C: Add temporary; fix template.
Jan Hubicka [Tue, 28 Apr 2015 14:13:59 +0000 (16:13 +0200)]
* g++.dg/tree-ssa/pr61034.C: Add temporary; fix template.

From-SVN: r222527

9 years agore PR libstdc++/60333 (type_traits make_signed, make_unsigned missing support for...
Jonathan Wakely [Tue, 28 Apr 2015 13:21:54 +0000 (14:21 +0100)]
re PR libstdc++/60333 (type_traits make_signed, make_unsigned missing support for long long enumerations)

PR libstdc++/60333
* include/std/type_traits (__make_unsigned_selector<_Tp, false, true>):
Handle enumeration types larger than sizeof(long).
(__make_signed_selector<_Tp, false, true>): Find unsigned type then
make it signed.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/make_signed/requirements/typedefs-3.cc: New.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust
dg-error.
* testsuite/20_util/make_unsigned/requirements/typedefs-3.cc: New.

From-SVN: r222526

9 years agore PR libstdc++/61645 (forward_list::splice_after shall not throw exceptions)
Jonathan Wakely [Tue, 28 Apr 2015 13:05:33 +0000 (14:05 +0100)]
re PR libstdc++/61645 (forward_list::splice_after shall not throw exceptions)

PR libstdc++/61645
* include/bits/forward_list.h (forward_list::splice_after): Add
noexcept.
* include/bits/forward_list.tcc (forward_list::splice_after):
Likewise.

From-SVN: r222525

9 years agore PR libstdc++/65631 (seed_seq should not be copyable)
Jonathan Wakely [Tue, 28 Apr 2015 12:35:30 +0000 (13:35 +0100)]
re PR libstdc++/65631 (seed_seq should not be copyable)

PR libstdc++/65631
* include/bits/random.h (seed_seq) Define copy constructor and copy
assignment as deleted.
* testsuite/26_numerics/random/seed_seq/cons/65631.cc: New.

From-SVN: r222524

9 years agoexception (uncaught_exceptions): Add comment.
Jonathan Wakely [Tue, 28 Apr 2015 12:07:40 +0000 (13:07 +0100)]
exception (uncaught_exceptions): Add comment.

* libsupc++/exception (uncaught_exceptions): Add comment. Reorder #if.
* testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
Use -std=gnu++1z. Check feature-test macro.

From-SVN: r222523

9 years agotype_traits (void_t): Add.
Jonathan Wakely [Tue, 28 Apr 2015 12:07:34 +0000 (13:07 +0100)]
type_traits (void_t): Add.

* include/std/type_traits (void_t): Add.
* testsuite/20_util/void_t/1.cc: New.

From-SVN: r222522

9 years agore PR middle-end/65911 (r222508 breaks clang-tblgen)
Markus Trippelsdorf [Tue, 28 Apr 2015 10:09:43 +0000 (10:09 +0000)]
re PR middle-end/65911 (r222508 breaks clang-tblgen)

Fix PR65911

2015-04-28  Markus Trippelsdorf  <markus@trippelsdorf.de>

PR other/65911
* function.c (pad_to_arg_alignment): Add parentheses.

From-SVN: r222521

9 years agoelf-lib.h: New file.
Uros Bizjak [Tue, 28 Apr 2015 09:23:40 +0000 (11:23 +0200)]
elf-lib.h: New file.

libgcc/ChangeLog:

* config/frv/elf-lib.h: New file.
(CRT_GET_RFIB_DATA): Move definition from gcc/config/frv/frv.h.
* libgcc/config.host (frv-*elf, frv-*-*linux*): Add frv/elf-lib.h
to tm_file.

* config/frv/frvbengin.c: Do not include defaults.h
* config/frv/frvend.c: Ditto.

gcc/ChangeLog:

* config/frv/frv.h (CRT_GET_RFIB_DATA): Move definition to
libgcc/config/frv/elf-lib.h.

From-SVN: r222519

9 years agoc-ada-spec.c (in_function): Delete.
Eric Botcazou [Tue, 28 Apr 2015 08:54:07 +0000 (08:54 +0000)]
c-ada-spec.c (in_function): Delete.

* c-ada-spec.c (in_function): Delete.
(dump_generic_ada_node): Do not change in_function and remove the
redundant code dealing with it.
(print_ada_declaration): Do not change in_function.  Use INDENT_INCR.
(print_ada_methods): Output the static member functions in a nested
package after the regular methods as well as associated renamings.

Co-Authored-By: Pierre-Marie de Rodat <derodat@adacore.com>
From-SVN: r222517

9 years agoFix example in header comment in tree-call-cdce.c
Tom de Vries [Tue, 28 Apr 2015 08:46:37 +0000 (08:46 +0000)]
Fix example in header comment in tree-call-cdce.c

2015-04-28  Tom de Vries  <tom@codesourcery.com>

* tree-call-cdce.c: Fix example in header comment.

From-SVN: r222516

9 years agore PR c/65901 (no warning or error for va_arg (ap, void))
Marek Polacek [Tue, 28 Apr 2015 08:36:50 +0000 (08:36 +0000)]
re PR c/65901 (no warning or error for va_arg (ap, void))

PR c/65901
* c-typeck.c (c_build_va_arg): Require TYPE be a complete type.

* gcc.c-torture/compile/pr48767.c (foo): Add dg-error.
* gcc.dg/pr65901.c: New test.

From-SVN: r222515

9 years agore PR fortran/62283 (basic-block vectorization fails)
Richard Biener [Tue, 28 Apr 2015 08:30:44 +0000 (08:30 +0000)]
re PR fortran/62283 (basic-block vectorization fails)

2015-04-28  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62283
* tree-vect-slp.c (vect_build_slp_tree): When the SLP build
fails fatally and we are vectorizing a basic-block simply
cause the child to be constructed piecewise.
(vect_analyze_slp_cost_1): Adjust.
(vect_detect_hybrid_slp_stmts): Likewise.
(vect_bb_slp_scalar_cost): Likewise.
(vect_get_constant_vectors): For piecewise constructed
constants place them after the last def.
(vect_get_slp_defs): Adjust.
* tree-vect-stmts.c (vect_is_simple_use): Detect in-BB
externals for basic-block vectorization.

* gfortran.dg/vect/pr62283-2.f: New testcase.
* gcc.dg/vect/bb-slp-14.c: Adjust.

From-SVN: r222514

9 years agore PR target/63503 ([AArch64] A57 executes fused multiply-add poorly in some situations)
Thomas Preud'homme [Tue, 28 Apr 2015 08:10:44 +0000 (08:10 +0000)]
re PR target/63503 ([AArch64] A57 executes fused multiply-add poorly in some situations)

2015-04-28  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR target/63503
    * config.gcc: Add cortex-a57-fma-steering.o to extra_objs for
    aarch64-*-*.
    * config/aarch64/t-aarch64: Add a rule for cortex-a57-fma-steering.o.
    * config/aarch64/aarch64.h (AARCH64_FL_USE_FMA_STEERING_PASS): Define.
    (AARCH64_TUNE_FMA_STEERING): Likewise.
    * config/aarch64/aarch64-cores.def: Set
    AARCH64_FL_USE_FMA_STEERING_PASS for cores with dynamic steering of
    FMUL/FMADD instructions.
    * config/aarch64/aarch64.c (aarch64_register_fma_steering): Declare.
    (aarch64_override_options): Include cortex-a57-fma-steering.h. Call
    aarch64_register_fma_steering () if AARCH64_TUNE_FMA_STEERING is true.
    * config/aarch64/cortex-a57-fma-steering.h: New file.
    * config/aarch64/cortex-a57-fma-steering.c: Likewise.

From-SVN: r222512

9 years agogensupport.c (std_preds): Add missing codes to address_operand entry.
Richard Sandiford [Tue, 28 Apr 2015 07:46:40 +0000 (07:46 +0000)]
gensupport.c (std_preds): Add missing codes to address_operand entry.

gcc/
* gensupport.c (std_preds): Add missing codes to address_operand entry.

From-SVN: r222511

9 years agore PR c++/65851 (ice in set_lattice_value at tree-ssa-cc p.c:535)
Richard Biener [Tue, 28 Apr 2015 07:26:41 +0000 (07:26 +0000)]
re PR c++/65851 (ice in set_lattice_value at tree-ssa-cc p.c:535)

2015-04-28  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65851
* tree-ssa-ccp.c (set_lattice_value): Perform a meet when
changing CONSTANT to CONSTANT non-copy.  Get new_val by reference.
(ccp_lattice_meet): Remove stray argument.  Use operand_equal_p
rather than simple_cst_equal as the latter doesn't handle COMPLEX_CST.
(ccp_visit_phi_node): Adjust.
(evaluate_stmt): For simplifications to SSA names return its
lattice value if that isn't VARYING.  Return immediately when
simplified to a constant.
(visit_assignment): Adjust.
(ccp_visit_stmt): Likewise.

* g++.dg/torture/pr65851.C: New testcase.

From-SVN: r222510

9 years agoEvaluate side-effects in expand_ifn_va_arg_1
Tom de Vries [Tue, 28 Apr 2015 06:05:14 +0000 (06:05 +0000)]
Evaluate side-effects in expand_ifn_va_arg_1

2015-04-28  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/65818
* tree-stdarg.c (expand_ifn_va_arg_1): Ensure that side-effects are
evaluated.

From-SVN: r222509

9 years agoremove #if ARGS_GROW_DOWNWARD
Trevor Saunders [Tue, 28 Apr 2015 04:47:09 +0000 (04:47 +0000)]
remove #if ARGS_GROW_DOWNWARD

gcc/ChangeLog:

2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* calls.c (save_fixed_argument_area): Don't check
ARGS_GROW_DOWNWARD with the preprocessor.
(restore_fixed_argument_area): Likewise.
(mem_overlaps_already_clobbered_arg_p): Likewise.
(check_sibcall_argument_overlap): Likewise.
(expand_call): Likewise.
(emit_library_call_value_1): Likewise.
(store_one_arg): Likewise.
* function.c (assign_parms): Likewise.
(locate_and_pad_parm): Likewise.
(pad_to_arg_alignment): Likewise.
* targhooks.c (std_gimplify_va_arg_expr): Likewise.

From-SVN: r222508

9 years agoalways define ARGS_GROW_DOWNWARD
Trevor Saunders [Tue, 28 Apr 2015 04:46:20 +0000 (04:46 +0000)]
always define ARGS_GROW_DOWNWARD

gcc/ChangeLog:

2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* config/pa/pa.h (ARGS_GROW_DOWNWARD): Define to 1.
* defaults.h (ARGS_GROW_DOWNWARD): Define it to 0 by default.
* calls.c (save_fixed_argument_area): Don't chekc if
ARGS_GROW_DOWNWARD is defined.
(restore_fixed_argument_area): Likewise.
(mem_overlaps_already_clobbered_arg_p): Likewise.
(check_sibcall_argument_overlap): Likewise.
(expand_call): Likewise.
(emit_library_call_value_1): Likewise.
(store_one_arg): Likewise.
* function.c (assign_parms): Likewise.
(locate_and_pad_parm): Likewise.
(pad_to_arg_alignment): Likewise.
* targhooks.c (std_gimplify_va_arg_expr): Likewise.

From-SVN: r222507

9 years agoalways define HAVE_epilogue
Trevor Saunders [Tue, 28 Apr 2015 04:45:12 +0000 (04:45 +0000)]
always define HAVE_epilogue

gcc/ChangeLog:

2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* defaults.h (gen_epilogue): New function.
(HAVE_epilogue): Add default definition to false.
* alias.c (init_alias_analysis): don't check if HAVE_epilogue is
defined.
* cfgrtl.c (cfg_layout_finalize): Likewise.
* df-scan.c: Likewise.
* function.c (thread_prologue_and_epilogue_insns): Likewise.
(reposition_prologue_and_epilogue_notes): Likewise.
* reorg.c (find_end_label): Likewise.
* toplev.c: Likewise.

From-SVN: r222506

9 years agoalways define HAVE_simple_return and HAVE_return
Trevor Saunders [Tue, 28 Apr 2015 04:44:09 +0000 (04:44 +0000)]
always define HAVE_simple_return and HAVE_return

gcc/ChangeLog:

2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* bb-reorder.c (HAVE_return): Don't check if its undefined.
* defaults.h (gen_simple_return): New function.
(gen_simple_return): Likewise.
(HAVE_return): Add default definition to false.
(HAVE_simple_return): Likewise.
* cfgrtl.c (force_nonfallthru_and_redirect): Remove checks if
HAVE_return and HAVE_simple_return are defined.
* function.c (gen_return_pattern): Likewise.
(convert_jumps_to_returns): Likewise.
(thread_prologue_and_epilogue_insns): Likewise.
* reorg.c (find_end_label): Likewise.
(dbr_schedule): Likewise.
* shrink-wrap.c: Likewise.
* shrink-wrap.h: Likewise.

From-SVN: r222505

9 years agoadd default for EPILOGUE_USES
Trevor Saunders [Tue, 28 Apr 2015 04:43:12 +0000 (04:43 +0000)]
add default for EPILOGUE_USES

gcc/ChangeLog:

2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* defaults.h (EPILOGUE_USES): Add default definition of false.
* df-scan.c (EPILOGUE_USES): Remove check if its undefined.
* resource.c (init_resource_info): Likewise.

From-SVN: r222504

9 years agoadd default for PCC_BITFIELD_TYPE_MATTERS
Trevor Saunders [Tue, 28 Apr 2015 04:42:04 +0000 (04:42 +0000)]
add default for PCC_BITFIELD_TYPE_MATTERS

gcc/ChangeLog:

2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* defaults.h (PCC_BITFIELD_TYPE_MATTERS): Add default definition
to false.
* dwarf2out.c (field_byte_offset): REmove check if
PCC_BITFIELD_TYPE_MATTERS is defined.
* stor-layout.c (layout_decl): Likewise.
(update_alignment_for_field): Likewise.
(place_field): Likewise.

gcc/cp/ChangeLog:

2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* class.c (layout_class_type): Remove check if
PCC_BITFIELD_TYPE_MATTERS is defined.

From-SVN: r222503

9 years agoadd default for HARD_REGNO_RENAME_OK
Trevor Saunders [Tue, 28 Apr 2015 04:40:43 +0000 (04:40 +0000)]
add default for HARD_REGNO_RENAME_OK

gcc/ChangeLog:

2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* defaults.h (HARD_REGNO_RENAME_OK): Add default definition to
true.
* regrename.c (check_new_reg_p): Remove check if
HARD_REGNO_RENAME_OK is defined.
* sel-sched.c (sel_hard_regno_rename_ok): Likewise.

From-SVN: r222502

9 years agoadd default for NO_FUNCTION_CSE
Trevor Saunders [Tue, 28 Apr 2015 04:40:00 +0000 (04:40 +0000)]
add default for NO_FUNCTION_CSE

gcc/ChangeLog:

2015-04-27  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* calls.c (prepare_call_address): Remove ifdef NO_FUNCTION_CSE.
* cse.c (fold_rtx): Likewise.
* config/alpha/alpha.h (NO_FUNCTION_CSE): Define to 1.
* config/arc/arc.h (NO_FUNCTION_CSE): Likewise.
* config/avr/avr.h (NO_FUNCTION_CSE): Likewise.
* config/cr16/cr16.h (NO_FUNCTION_CSE): Likewise.
* config/epiphany/epiphany.h (NO_FUNCTION_CSE): Likewise.
* config/frv/frv.h (NO_FUNCTION_CSE): Likewise.
* config/h8300/h8300.h (NO_FUNCTION_CSE): Likewise.
* config/i386/i386.h (NO_FUNCTION_CSE): Likewise.
* config/ia64/ia64.h (NO_FUNCTION_CSE): Likewise.
* config/lm32/lm32.h (enum reg_class) (NO_FUNCTION_CSE):
* Likewise.
* config/m32r/m32r.h (NO_FUNCTION_CSE): Likewise.
* config/mep/mep.h (NO_FUNCTION_CSE): Likewise.
* config/mn10300/mn10300.h (NO_FUNCTION_CSE): Likewise.
* config/nds32/nds32.h (NO_FUNCTION_CSE): Likewise.
* config/nios2/nios2.h (NO_FUNCTION_CSE): Likewise.
* config/pa/pa.h (NO_FUNCTION_CSE): Likewise.
* config/rs6000/rs6000.h (NO_FUNCTION_CSE): Likewise.
* config/s390/s390.h (NO_FUNCTION_CSE): Likewise.
* config/sparc/sparc.h (NO_FUNCTION_CSE): Likewise.
* config/spu/spu.h (NO_FUNCTION_CSE): Likewise.
* config/stormy16/stormy16.h (NO_FUNCTION_CSE): Likewise.
* config/v850/v850.h (NO_FUNCTION_CSE): Likewise.
* defaults.h (NO_FUNCTION_CSE): Provide default definition to 0.
* doc/tm.texi: Regenerate.
* doc/tm.texi.in: Document NO_FUNCTION_CSE is always defined to
either true or false.

From-SVN: r222501

9 years agoregex.tcc: Handle regex_constants::__polynomial.
Tim Shen [Tue, 28 Apr 2015 04:16:48 +0000 (04:16 +0000)]
regex.tcc: Handle regex_constants::__polynomial.

* include/bits/regex.tcc: Handle regex_constants::__polynomial.
* include/bits/regex_automaton.tcc: Throw exception when parsing
back-reference with flag __polynomial.
* include/bits/regex_constants.h: Add extension flag
syntax_option_type __polynomial.
* bits/regex_executor.tcc: Still let BFS process ECMAScript.
Alternative operation will be fixed in the coming refactoring.
* testsuite/28_regex/algorithms/regex_search/61424.cc: Turn
loose match_search_debug to use DFS only.

From-SVN: r222500

9 years agore PR tree-optimization/65217 (__builtin_unreachable in if statement causes bad assem...
Jeff Law [Tue, 28 Apr 2015 04:01:28 +0000 (22:01 -0600)]
re PR tree-optimization/65217 (__builtin_unreachable in if statement causes bad assembly generation)

PR tree-optimization/65217
* tree-ssa-dom.c (record_equality): Given two SSA_NAMEs, if just one
of them has a single use, make sure it is the LHS of the implied
copy.

        PR tree-optimization/65217
* gcc.target/i386/pr65217.c: Remove XFAIL.

From-SVN: r222499

9 years agore PR target/65810 (powerpc64 alignment of r2 insufficient for loading long-double...
Alan Modra [Tue, 28 Apr 2015 03:47:19 +0000 (13:17 +0930)]
re PR target/65810 (powerpc64 alignment of r2 insufficient for loading long-double constants)

PR target/65810
* config/rs6000/rs6000.c (POWERPC64_TOC_POINTER_ALIGNMENT): Define.
(offsettable_ok_by_alignment): Use minimum of decl and toc
pointer alignment.  Replace dead code with assertion.
(use_toc_relative_ref): Add mode arg.  Return false in -mcmodel=medium
case if size exceeds toc pointer alignment.
(rs6000_legitimize_reload_address): Update use_toc_relative_ref call.
(rs6000_emit_move): Likewise.
* configure.ac: Add linker toc pointer alignment check.
* configure: Regenerate.
* config.in: Regenerate.

From-SVN: r222498

9 years agore PR libstdc++/65909 (check_v3_target_namedlocale blows up on targets that don't...
Sandra Loosemore [Tue, 28 Apr 2015 02:40:56 +0000 (22:40 -0400)]
re PR libstdc++/65909 (check_v3_target_namedlocale blows up on targets that don't support command-line arguments)

2015-04-27  Sandra Loosemore  <sandra@codesourcery.com>

PR libstdc++/65909

libstdc++-v3/
* testsuite/lib/libstdc++.exp (check_v3_target_namedlocale):
Make the generated test program fail gracefully if the target
doesn't support passing command-line arguments.

From-SVN: r222497

9 years agoDaily bump.
GCC Administrator [Tue, 28 Apr 2015 00:16:22 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222496

9 years agoMakefile-lan.in (ada.mostlyclean): Remove gnatbind and gnat1.
Jim Wilson [Mon, 27 Apr 2015 22:59:06 +0000 (22:59 +0000)]
Makefile-lan.in (ada.mostlyclean): Remove gnatbind and gnat1.

ada/
* gcc-interface/Makefile-lan.in (ada.mostlyclean): Remove gnatbind
and gnat1.
cp/
* Make-lang.in (c++.mostlyclean): Remove xg++, g++-cross, and cc1plus.
fortran/
* Make-lang.in (fortran.mostlyclean): Remove gfortran and
gfortran-cross.
go/
* Make-lang.in (go.mostlyclean): Remove gccgo, gccgo-cross, and go1.
jit/
* Make-lang.in (jit.mostlyclean): Remove shared libraries and object
files.
objc/
* Make-lang.in (objc.mostlyclean): Remove cc1obj.
objcp/
* Make-lang.in (obj-c++.mostlyclean): Remove cc1objplus.

From-SVN: r222492

9 years agoeh_catch.cc (uncaught_exception, [...]): Return false or zero if the library is built...
Federico Lenarduzzi [Mon, 27 Apr 2015 21:06:17 +0000 (21:06 +0000)]
eh_catch.cc (uncaught_exception, [...]): Return false or zero if the library is built without exceptions.

2015-04-27  Federico Lenarduzzi  <federico.lenarduzzi@tallertechnologies.com>
    Jonathan Wakely  <jwakely@redhat.com>

* libsupc++/eh_catch.cc (uncaught_exception, uncaught_exceptions):
Return false or zero if the library is built without exceptions.
* libsupc++/eh_term_handler.cc: Disable verbose terminate handler if
the library is built without exceptions.

Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>
From-SVN: r222484

9 years agognu.ver: Fix comment.
Ville Voutilainen [Mon, 27 Apr 2015 20:52:14 +0000 (23:52 +0300)]
gnu.ver: Fix comment.

2015-04-27  Ville Voutilainen  <ville.voutilainen@gmail.com>

* config/abi/pre/gnu.ver: Fix comment.

From-SVN: r222483

9 years agoAdd support for std::uncaught_exceptions.
Ville Voutilainen [Mon, 27 Apr 2015 20:40:29 +0000 (23:40 +0300)]
Add support for std::uncaught_exceptions.

2015-04-27  Ville Voutilainen  <ville.voutilainen@gmail.com>

Add support for std::uncaught_exceptions.
* acinclude.m4: Bump libtool_VERSION.
* config/abi/pre/gnu.ver: Export the new symbol.
* configure: Regenerate.
* libsupc++/eh_catch.cc (uncaught_exceptions): New.
* libsupc++/exception (uncaught_exceptions): New.
* testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc: New.
* testsuite/util/testsuite_abi.cc: Add 3.4.22 as the latest version.

From-SVN: r222482

9 years agore PR libstdc++/62258 (uncaught_exception() equals to `true' after rethrow_exception())
Dmitry Prokoptsev [Mon, 27 Apr 2015 19:44:30 +0000 (19:44 +0000)]
re PR libstdc++/62258 (uncaught_exception() equals to `true' after rethrow_exception())

2015-04-27  Dmitry Prokoptsev  <dprokoptsev@gmail.com>
    Michael Hanselmann  <public@hansmi.ch>

PR libstdc++/62258
* libsupc++/eh_ptr.cc (rethrow_exception): Increment count of
uncaught exceptions.
* testsuite/18_support/exception_ptr/62258.cc: New.

Co-Authored-By: Michael Hanselmann <public@hansmi.ch>
From-SVN: r222480

9 years agoconfig.gcc: Add h8300-*-linux.
Yoshinori Sato [Mon, 27 Apr 2015 19:16:27 +0000 (04:16 +0900)]
config.gcc: Add h8300-*-linux.

gcc/
* config.gcc: Add h8300-*-linux.
* config/h8300/linux.h: New.
* config/h8300/t-linux: New.
* config/h8300/h8300.c (h8300_option_override): Normal mode
is not supported for h8300-*-linux.
(h8300_file_start): Target priority change.
(get_shift_alg): Likewise.
(h8300_shift_need_scratch_p): Likewise.
* config/h8300/h8300.h (TARGET_CPU_CPP_BUILTINS): Likewise.
* config/h8300/h8300.md (define_peephole2): Remove duplicate condition.

libgcc/

* config.host: Add h8300-*-linux
* config/h8300/t-linux: New file.
* config/h8300/lib1funs.s: Change symbol prefix.
* config/h8300/sfp-machine.h: 64bit double support.

From-SVN: r222479

9 years agore PR fortran/60322 ([OOP] Incorrect bounds on polymorphic dummy array)
Andre Vehreschild [Mon, 27 Apr 2015 17:41:01 +0000 (19:41 +0200)]
re PR fortran/60322 ([OOP] Incorrect bounds on polymorphic dummy array)

2015-04-27  Andre Vehreschild  <vehre@gmx.de>

        PR fortran/60322
        Add tests forgotten to svn-add.
        * gfortran.dg/class_allocate_19.f03: New test.
        * gfortran.dg/class_array_20.f03: New test.
        * gfortran.dg/class_array_21.f03: New test.
        * gfortran.dg/finalize_29.f08: New test.

From-SVN: r222478

9 years agore PR fortran/59678 ([F03] Segfault on equalizing variables of a complex derived...
Andre Vehreschild [Mon, 27 Apr 2015 17:34:11 +0000 (19:34 +0200)]
re PR fortran/59678 ([F03] Segfault on equalizing variables of a complex derived type)

gcc/fortran
2015-04-27  Andre Vehreschild  <vehre@gmx.de>

        PR fortran/59678
        PR fortran/65841
        * trans-array.c (duplicate_allocatable): Fixed deep copy of
        allocatable components, which are liable for copy only, when
        they are allocated.
        (gfc_duplicate_allocatable): Add deep-copy code into if
        component allocated block. Needed interface change for that.
        (gfc_copy_allocatable_data): Supplying NULL_TREE for code to
        add into if-block for checking whether a component was
        allocated.
        (gfc_duplicate_allocatable_nocopy): Likewise.
        (structure_alloc_comps): Likewise.
        * trans-array.h: Likewise.
        * trans-expr.c (gfc_trans_alloc_subarray_assign): Likewise.
        * trans-openmp.c (gfc_walk_alloc_comps): Likewise.

gcc/testsuite
2015-04-27  Andre Vehreschild  <vehre@gmx.de>

        PR fortran/59678
        PR fortran/65841
        * gfortran.dg/alloc_comp_deep_copy_1.f03: New test.
        * gfortran.dg/alloc_comp_deep_copy_2.f03: New test.

From-SVN: r222477

9 years agoGive proper type and size to named cold partitions.
Caroline Tice [Mon, 27 Apr 2015 16:44:35 +0000 (09:44 -0700)]
Give proper type and size to named cold partitions.

2015-04-27  Caroline Tice  <cmtice@google.com>

* final.c (final_scan_insn):  Output cold_function_nmae as function
type.
* varasm.c (cold_function_name):  Make gloval.
(assemble_start_function):  Re-set cold_function_name.
(assemble_end_function): Output cold partition size.
* varasm.h (cold_fun ction_name):  Declare global.

2015-04-27  Caroline Tice  <cmtice@google.com>

* gcc.dg/tree-prof/cold_partition_label.c (main): Check for cold
partition size.

From-SVN: r222473

9 years agoi386.h (EXT_REX_SSE_REG_P): New.
Ilya Tocar [Mon, 27 Apr 2015 15:24:48 +0000 (15:24 +0000)]
i386.h (EXT_REX_SSE_REG_P): New.

2015-04-27  Ilya Tocar  <ilya.tocar@intel.com>

* config/i386/i386.h (EXT_REX_SSE_REG_P): New.
* config/i386/i386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed): Use "v"
constraint.
(*movxi_internal_avx512f): Ditto.
(define_split): Check for xmm16+, when splitting scalar float_extend.
(*extendsfdf2_mixed): Use "v" constraint.
(define_split): Check for xmm16+, when splitting scalar float_truncate.
(*truncdfsf_fast_sse): Use "v" constraint.
(fix_trunc<MODEF:mode><SWI48:mode>_sse): Ditto.
(*float<SWI48:mode><MODEF:mode>2_sse): Ditto.
(define_peephole2): Check for xmm16+, when converting scalar
float_truncate.
(define_peephole2): Check for xmm16+, when converting scalar
float_extend.
(*fop_<mode>_comm_mixed): Use "v" constraint.
(*fop_<mode>_comm_sse): Ditto.
(*fop_<mode>_1_mixed): Ditto.
(*sqrt<mode>2_sse): Ditto.
(*ieee_s<ieee_maxmin><mode>3): Ditto.

From-SVN: r222470

9 years agoconfigure.ac: Drop AC_PROG_CXX and friends, since libmpx has no C++ sources.
Steven Noonan [Mon, 27 Apr 2015 15:02:46 +0000 (15:02 +0000)]
configure.ac: Drop AC_PROG_CXX and friends, since libmpx has no C++ sources.

libmpx/

* configure.ac: Drop AC_PROG_CXX and friends, since libmpx has no C++
sources.
* configure: Regenerate.

From-SVN: r222469

9 years ago[combine][obvious] Use std::swap instead of manually swapping
Kyrylo Tkachov [Mon, 27 Apr 2015 14:56:10 +0000 (14:56 +0000)]
[combine][obvious] Use std::swap instead of manually swapping

* combine.c (simplify_if_then_else): Use std::swap instead
of manually swapping.
(known_cond): Likewise.
(simplify_comparison): Likewise.

From-SVN: r222468

9 years agore PR target/64579 (__TM_end __builtin_tend failed to return transactional state)
Peter Bergner [Mon, 27 Apr 2015 14:52:50 +0000 (09:52 -0500)]
re PR target/64579 (__TM_end __builtin_tend failed to return transactional state)

gcc/
PR target/64579
* config/rs6000/htm.md: Remove all define_expands.
(UNSPECV_HTM_TABORTDC, UNSPECV_HTM_TABORTDCI, UNSPECV_HTM_TABORTWC,
UNSPECV_HTM_TABORTWCI): Remove.
(UNSPECV_HTM_TABORTXC, UNSPECV_HTM_TABORTXCI, UNSPECV_HTM_TTEST): New.
(tabort_internal, tbegin_internal, tcheck_internal, tend_internal,
trechkpt_internal, treclaim_internal, tsr_internal): Rename from this...
(tabort, tbegin, tcheck, tend, trechkpt, treclaim, tsr): ...to this.
(tabortdc_internal, tabortdci_internal, tabortwc_internal,
tabortwci_internal): Remove define_insns.
(tabort<wd>c, tabort<wd>ci): New define_insns.
(tabort): Use gpc_reg_operand.
(tcheck): Remove operand.
(htm_mfspr_<mode>, htm_mtspr_<mode>): Use GPR mode macro.
* config/rs6000/htmxlintrin.h (__TM_end): Use _HTM_TRANSACTIONAL as
expected value.
* config/rs6000/rs6000-builtin.def (BU_HTM_SPR0): Remove.
(BU_HTM_SPR1): Rename to BU_HTM_V1.  Remove use of RS6000_BTC_SPR.
(tabort, tabortdc, tabortdci, tabortwc, tabortwci, tbegin,
tcheck, tend, tendall, trechkpt, treclaim, tresume, tsuspend,
tsr, ttest): Pass in the RS6000_BTC_CR attribute.
(get_tfhar, set_tfhar, get_tfiar, set_tfiar, get_texasr, set_texasr,
get_texasru, set_texasru): Pass in the RS6000_BTC_SPR attribute.
(tcheck): Remove builtin argument.
* config/rs6000/rs6000.c (rs6000_htm_spr_icode): Use TARGET_POWERPC64
not TARGET_64BIT.
(htm_expand_builtin): Fix usage of expandedp.  Disallow usage of the
tabortdc and tabortdci builtins when not in 64-bit mode.
Modify code to handle the loss of the HTM define_expands.
Emit code to copy the CR register to TARGET.
(htm_init_builtins): Modify code to handle the loss of the HTM
define_expands.
* config/rs6000/rs6000.h (RS6000_BTC_32BIT): Delete.
(RS6000_BTC_64BIT): Likewise.
(RS6000_BTC_CR): New macro.
* doc/extend.texi: Update documentation for htm builtins.

gcc/testsuite/

PR target/64579
* gcc.target/powerpc/htm-1.c: New test.
* gcc.target/powerpc/htm-builtin-1.c (__builtin_tabortdc): Only test
on 64-bit compiles.
(__builtin_tabortdci): Likewise.
(__builtin_tcheck): Remove operand.
* lib/target-supports.exp (check_htm_hw_available): New function.

From-SVN: r222467

9 years ago[simplify-rtx][trivial] Use std::swap instead of manually swapping
Kyrylo Tkachov [Mon, 27 Apr 2015 13:45:26 +0000 (13:45 +0000)]
[simplify-rtx][trivial] Use std::swap instead of manually swapping

* simplify-rtx.c (simplify_gen_binary): Use std::swap instead
of manually swapping.
(simplify_associative_operation): Likewise.
(simplify_binary_operation): Likewise.
(simplify_plus_minus): Likewise.
(simplify_relational_operation): Likewise.
(simplify_ternary_operation): Likewise.

From-SVN: r222465

9 years agopredicates.md (xs_hi_general_operand): Delete.
Richard Sandiford [Mon, 27 Apr 2015 13:25:56 +0000 (13:25 +0000)]
predicates.md (xs_hi_general_operand): Delete.

gcc/
* config/stormy16/predicates.md (xs_hi_general_operand): Delete.
(xs_hi_nonmemory_operand): Remove error.
* config/stormy16/stormy16.md (movhi, movhi_internal): Use
general_operand rather than xs_hi_general_operand.

From-SVN: r222464

9 years agotree-ssa-dom.c (record_equivalences_from_phis): Valueize PHI arg.
Richard Biener [Mon, 27 Apr 2015 12:46:58 +0000 (12:46 +0000)]
tree-ssa-dom.c (record_equivalences_from_phis): Valueize PHI arg.

2015-04-27  Richard Biener  <rguenther@suse.de>

* tree-ssa-dom.c (record_equivalences_from_phis): Valueize PHI arg.
(record_equivalences_from_stmt): Valueize rhs.
(record_equality): Canonicalize x and y order via
tree_swap_operands_p.  Do not swap operands for same loop depth.

* gcc.target/i386/pr65217.c: XFAIL.

From-SVN: r222463

9 years agoextensions.xml: Add cross-reference.
Jonathan Wakely [Mon, 27 Apr 2015 12:30:26 +0000 (13:30 +0100)]
extensions.xml: Add cross-reference.

* doc/xml/manual/extensions.xml: Add cross-reference.
* doc/html/manual/ext_compile_checks.html: Regenerate.

From-SVN: r222462

9 years agore PR target/65296 ([avr] fix various issues with specs file generation)
Georg-Johann Lay [Mon, 27 Apr 2015 11:43:20 +0000 (11:43 +0000)]
re PR target/65296 ([avr] fix various issues with specs file generation)

PR target/65296
PR target/65895
* config/avr/gen-avr-mmcu-specs.c (print_mcu): Close file.
Add hint how to use own spec file.

From-SVN: r222459

9 years agore PR tree-optimization/65875 (ICE: Segmentation fault)
Jakub Jelinek [Mon, 27 Apr 2015 11:26:12 +0000 (13:26 +0200)]
re PR tree-optimization/65875 (ICE: Segmentation fault)

PR tree-optimization/65875
* tree-vrp.c (update_value_range): If in is_new case setting
old_vr to VR_VARYING, also set new_vr to it.  Remove
old_vr->type == VR_VARYING test.
(vrp_visit_phi_node): Return SSA_PROP_VARYING instead of
SSA_PROP_INTERESTING if update_value_range returned true,
but new range is VR_VARYING.

* gcc.c-torture/compile/pr65875.c: New test.

From-SVN: r222458