137714 Commits

Author SHA1 Message Date
Jan Hubicka
b0845a1e51 dwarf2out.c (gen_type_die_with_usage): Call verify_type.
* dwarf2out.c (gen_type_die_with_usage): Call verify_type.
	* ipa-chkp.c (chkp_copy_function_type_adding_bounds): Do not produce
	bugus variants.
	* tree.c: Include print-tree.h and ipa-utils.h
	(free_lang_data_in_type): Clear TYPE_VFIELD leaked by C FE.
	(free_lang_data_in_cgraph): Call verify_type.
	(verify_type_variant): New function.
	(verify_type): New function.
	* tree.h (verify_type): Declare.

	* lto.c (lto_fixup_state): Call verify_type.

From-SVN: r222606
2015-04-30 02:45:54 +00:00
Trevor Saunders
e022edafa0 fixup libobjc's usage of PCC_BITFIELD_TYPE_MATTERS
libobjc/ChangeLog:

	* encoding.c (objc_layout_structure_next_member): check value of
	PCC_BITFIELD_TYPE_MATTERS instead of if it is defined.

From-SVN: r222605
2015-04-30 02:08:05 +00:00
GCC Administrator
631dc4f85e Daily bump.
From-SVN: r222603
2015-04-30 00:16:16 +00:00
Doug Evans
8996b63b09 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
2015-04-29 22:50:31 +00:00
Ian Lance Taylor
1dea42c94b 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
2015-04-29 22:40:07 +00:00
Ian Lance Taylor
67b68b8139 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
2015-04-29 22:14:34 +00:00
Doug Evans
b693b8792e 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
2015-04-29 21:57:04 +00:00
Ian Lance Taylor
081564faed 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
2015-04-29 21:31:53 +00:00
Steve Ellcey
2f79da78f3 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
2015-04-29 21:09:10 +00:00
Uros Bizjak
ec4c68c8d0 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
2015-04-29 22:58:25 +02:00
Jason Merrill
9f7fb685d9 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
2015-04-29 16:51:05 -04:00
Josh Triplett
0373796b4d 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
2015-04-29 14:32:41 -06:00
Petar Jovanovic
8d92d2743c 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
2015-04-29 16:28:52 -04:00
Uros Bizjak
3c908a5b5c 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
2015-04-29 20:53:19 +02:00
Marek Polacek
716c0ba6bf 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
2015-04-29 18:13:44 +00:00
Bernd Schmidt
d28ad5d4c5 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
2015-04-29 16:52:45 +00:00
Thomas Schwinge
f82a9d904e [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
2015-04-29 18:23:26 +02:00
Alan Lawrence
aaf3de7ab2 [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
2015-04-29 16:10:27 +00:00
Jonathan Wakely
952bc7a64c 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
2015-04-29 17:07:47 +01:00
Thomas Schwinge
b811915de1 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
2015-04-29 17:44:41 +02:00
Jonathan Wakely
f970a17d6f 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
2015-04-29 16:22:13 +01:00
Paolo Carlini
0aa359c18f 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
2015-04-29 14:06:27 +00:00
Richard Sandiford
72d33bd3d2 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
2015-04-29 13:32:59 +00:00
Richard Sandiford
34ba5affde 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
2015-04-29 13:32:34 +00:00
Uros Bizjak
94a8281152 namelist_87.f90: Use dg-add-options ieee.
* gfortran.dg/namelist_87.f90: Use dg-add-options ieee.

From-SVN: r222573
2015-04-29 13:53:39 +02:00
Yvan Roux
b43482db17 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
2015-04-29 11:31:40 +00:00
Richard Sandiford
674dd7103b 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
2015-04-29 11:12:17 +00:00
Bernhard Reutner-Fischer
917c68f565 gimple-walk.c #include TLC
Also look at return values of parse_input_constraint and
parse_output_constraint.

From-SVN: r222569
2015-04-29 12:45:31 +02:00
Alan Lawrence
ee9da432b6 [ARM]Remove vec_shr and vec_shr optabs
* config/arm/neon.md (vec_shl<mode>, vec_shr<mode>): Remove.

From-SVN: r222568
2015-04-29 10:13:36 +00:00
Tom de Vries
32966af8aa 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
2015-04-29 09:13:49 +00:00
Thomas Schwinge
2c8f068300 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
2015-04-29 11:04:31 +02:00
Richard Biener
b504063421 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
2015-04-29 08:51:08 +00:00
Jakub Jelinek
8848828bec 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
2015-04-29 10:25:11 +02:00
Richard Biener
c804769945 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
2015-04-29 08:15:52 +00:00
Christian Bruel
b4d1725b54 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
2015-04-29 08:52:23 +02:00
Doug Evans
874ef163cf list.cc (_GLIBCXX_USE_CXX11_ABI): Define to zero.
* testsuite/libstdc++-xmethods/list.cc (_GLIBCXX_USE_CXX11_ABI):
	Define to zero.

From-SVN: r222556
2015-04-29 00:17:09 +00:00
GCC Administrator
6e2a868d04 Daily bump.
From-SVN: r222555
2015-04-29 00:16:15 +00:00
Jeff Law
11da52a9ce * tree-ssa-dom.c (record_equality); Fix comment typos.
From-SVN: r222551
2015-04-28 17:18:27 -06:00
Jason Merrill
3f8e2835ae 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
2015-04-28 17:27:17 -04:00
Joseph Myers
db6113067c * fr.po: Update.
From-SVN: r222547
2015-04-28 22:21:24 +01:00
Tom de Vries
ecd0e56213 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
2015-04-28 20:58:51 +00:00
Sandra Loosemore
2a26eef835 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
2015-04-28 16:15:59 -04:00
Jonathan Wakely
2e7e2075d1 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
2015-04-28 20:42:56 +01:00
Jonathan Wakely
0088583b25 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
2015-04-28 20:42:51 +01:00
Marc Glisse
fa9ac91269 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
2015-04-28 19:35:49 +00:00
Andre Vehreschild
77b7d71e79 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
2015-04-28 21:03:01 +02:00
Marek Polacek
f307500830 * c-parser.c (c_parser_binary_expression): Remove duplicate line.
From-SVN: r222537
2015-04-28 17:29:24 +00:00
Caroline Tice
f11fcf6a1e Fix typos in entry from yesterday, as requested.
From-SVN: r222536
2015-04-28 10:27:19 -07:00
Dominique d'Humieres
68d15e8cce 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
2015-04-28 13:16:19 -04:00
Bill Schmidt
0a5946254c 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
2015-04-28 15:44:24 +00:00