Commit Graph

117873 Commits

Author SHA1 Message Date
Matthew Gretton-Dann 76f722f452 iterators.md (SDF): New mode iterator.
* gcc/config/arm/iterators.md (SDF): New mode iterator.
	(V_if_elem): Add support for SF and DF modes.
	(V_reg): Likewise.
	(F_constraint): New mode iterator attribute.
	(F_fma_type): Likewise.
	config/arm/vfp.md (fma<SDF:mode>4): New pattern.
	(*fmsub<SDF:mode>4): Likewise.
	(*fmnsub<SDF:mode>4): Likewise.
	(*fmnadd<SDF:mode>4): Likewise.
	* gcc/testsuite/gcc.target/arm/fma-sp.c: New testcase.
	* gcc/testsuite/gcc.target/arm/fma.c: Likewise.
	* gcc/testsuite/gcc.target/arm/fma.h: Likewise.

From-SVN: r189283
2012-07-05 09:07:00 +00:00
Uros Bizjak 4b68f9ee5a re PR fortran/53449 (fortran fails to build with LTO bootstrap)
* expmed.c (expand_mult): Initialize coeff and is_neg.

java/ChangeLog:

	* jcf-io.c (read_zip_member): Initialize d_stream.

fortran/ChangLog:

	PR fortran/53449
	* parse.c (gfc_parse_file): Initialize errors_before.

From-SVN: r189281
2012-07-05 09:22:17 +02:00
Sandra Loosemore 3d3949df0f libgomp.texi (Library Index): Renamed from "Index" to prevent conflict with index.html on case-insensitive...
2012-07-04  Sandra Loosemore <sandra@codesourcery.com>

	libgomp/
	* libgomp.texi (Library Index): Renamed from "Index" to prevent
	conflict with index.html on case-insensitive file systems.

From-SVN: r189278
2012-07-04 22:53:03 -04:00
Jonathan Wakely b63d8901d1 * include/std/condition_variable: Update copyright years.
From-SVN: r189277
2012-07-05 02:14:35 +01:00
GCC Administrator 9f8550f8aa Daily bump.
From-SVN: r189272
2012-07-05 00:17:30 +00:00
Oleg Endo 33344a62c4 predicates.md (zero_extend_operand): New predicate.
* config/sh/predicates.md (zero_extend_operand): New predicate.
	* config/sh/sh.md (zero_extendhisi2): Simplify by using new
	zero_extend_operand predicate.
	(zero_extendqisi2): Likewise.

From-SVN: r189269
2012-07-04 23:32:13 +00:00
Jonathan Wakely 7f426c93a7 re PR libstdc++/53830 (condition_variable_any - deadlock issue)
PR libstdc++/53830
	* include/std/condition_variable (condition_variable_any::wait):
	Move _Unlock type to class scope.
	(condition_variable_any::wait_until): Reuse it.
	* testsuite/30_threads/condition_variable_any/53830.cc: New.

From-SVN: r189268
2012-07-04 23:17:18 +01:00
Jason Merrill fece06368c re PR c++/53848 (ICE in decl_linkage at ../../gcc-trunk/gcc/cp/tree.c:3215)
PR c++/53848
	* decl.c (build_enumerator): Don't use build_lang_decl_loc.

From-SVN: r189267
2012-07-04 17:34:07 -04:00
Uros Bizjak 3f1ae7424c re PR middle-end/53321 (LTO bootstrap failed with bootstrap-profiled)
PR middle-end/53321
	* ipa.c (symtab_remove_unreachable_nodes): Partially revert r187375
	to not call cgraph_propagate_frequency if something was changed.

testsuite/ChangLog:

	PR middle-end/53321
	* g++.dg/torture/pr53321.C: New test.

From-SVN: r189261
2012-07-04 15:49:19 +02:00
Richard Guenther 23af816cc9 re PR middle-end/53433 (ICE in int_mode_for_mode, at stor-layout.c:424 during lto-bootstrap)
2012-07-04  Richard Guenther  <rguenther@suse.de>

	PR middle-end/53433
	* gimple-fold.c (get_base_constructor): Do not return an
	error_mark_node DECL_INITIAL.

From-SVN: r189260
2012-07-04 13:47:18 +00:00
Tristan Gingold 2b2d7c53bb isl.m4 (ISL_CHECK_VERSION): Set to yes if cross-compiling.
config/
2012-07-04  Tristan Gingold  <gingold@adacore.com>

	* isl.m4 (ISL_CHECK_VERSION): Set to yes if cross-compiling.
	Fix comments.

2012-07-04  Tristan Gingold  <gingold@adacore.com>

	* configure: Regenerate.

From-SVN: r189257
2012-07-04 12:26:55 +00:00
Richard Guenther 6c9df5a001 re PR middle-end/53844 (GCC generates suboptimal code for unused members of classes in some cases on multiple targets.)
2012-07-04  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/53844
	* tree-ssa-dse.c (dse_possible_dead_store_p): Properly handle
	the loop virtual PHI.

	* g++.dg/tree-ssa/pr53844.C: New testcase.

From-SVN: r189256
2012-07-04 12:10:40 +00:00
Richard Guenther e1b6bbea37 re PR middle-end/53849 (ICE: in add_referenced_var_1, at tree-dfa.c:567 with -O2 -ftree-parallelize-loops=2 -fno-tree-loop-im)
2012-07-04  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/53849
	* tree-cfg.c (move_stmt_op): Only call add_referenced_var
	for duplicated locals.  Use add_referenced_var_1 to avoid
	pushing/popping cfun.

	* gcc.dg/pr53849.c: New testcase.

From-SVN: r189255
2012-07-04 12:09:09 +00:00
Kai Tietz 463d5aa029 winnt.c (i386_pe_reloc_rw_mask): New function.
* config/i386/winnt.c (i386_pe_reloc_rw_mask): New function.
        * config/i386/i386-protos.h (i386_pe_reloc_rw_mask): Add
        prototype.
        * config/i386/cygming.h (TARGET_ASM_RELOC_RW_MASK): Define
        as i386_pe_reloc_rw_mask.

From-SVN: r189254
2012-07-04 13:22:02 +02:00
Richard Guenther cef8c10098 tree.c (find_decls_types_r): Handle TYPE_CONTEXT the same as in free_lang_data_in_type.
2012-07-04  Richard Guenther  <rguenther@suse.de>

	* tree.c (find_decls_types_r): Handle TYPE_CONTEXT the same
	as in free_lang_data_in_type.

From-SVN: r189252
2012-07-04 10:36:07 +00:00
Tobias Grosser b60cc080f3 Makefile.in (OBJS): Add graphite-optimize-isl.o.
2012-07-04  Tobias Grosser <tobias@grosser.es>
	Michael Matz  <matz@suse.de>

	* Makefile.in (OBJS): Add graphite-optimize-isl.o.
	(graphite-optimize-isl.o): Add dependencies.
	* common.opt (floop-nest-optimize): New flag.
	* doc/invoke.texi (floop-nest-optimize): Document.
	* graphite-dependences.c (compute_deps): Export.
	* graphite-poly.h (compute_deps): Declare.
	* graphite-optimize-isl.c: New file.
	* graphite-poly.c (apply_poly_transforms): Run the loop
	nest optimizer.
	* tree-ssa-loop.c (gate_graphite_transforms): Enable graphite
	if -floop-nest-optimize is enabled.

Co-Authored-By: Michael Matz <matz@suse.de>

From-SVN: r189249
2012-07-04 09:15:09 +00:00
Matthias Klose 9a9eca46a8 04_header: Remove empty directory.
2012-07-04  Matthias Klose  <doko@ubuntu.com>

        * testsuite/28_regex/headers/04_header: Remove empty directory.
        * testsuite/28_regex/algorithms/02_match: Likewise.

From-SVN: r189248
2012-07-04 07:50:30 +00:00
GCC Administrator 5ceb560498 Daily bump.
From-SVN: r189245
2012-07-04 00:18:24 +00:00
Oleg Endo 5e204a6e8b predicates.md (logical_and_operand): New predicate.
* config/sh/predicates.md (logical_and_operand): New predicate.
	* config/sh/constraints.md (Jmb, Jmw): New constraints.
	* config/sh/sh.md (andsi3): Move expander above insns.  Add handling
	of 0xFFFF constant.  Use logical_and_operand predicate and
	satisfies_constraint_Jmb, satisfies_constraint_Jmw.
	(*andsi3_compact): Make it an insn_and_split.  Use
	logical_and_operand predicate.  Add Jmb,Jmw alternatives.

From-SVN: r189241
2012-07-03 22:26:23 +00:00
Paolo Carlini c128d2031e re PR libstdc++/53840 ([C++11] DR 921. Rational Arithmetic should use template aliases)
2012-07-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/53840
	* include/std/ratio (ratio_multiply, ratio_divide, ratio_add,
	ratio_subtract): Use template aliases.
	* include/std/chrono (duration<>::duration(const duration<>&),
	duration_cast): Adjust.
	* testsuite/20_util/ratio/operations/53840.cc: New.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
	* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.

From-SVN: r189239
2012-07-03 19:24:07 +00:00
Jason Merrill f5d306802c re PR c++/53826 ([alpha]: ICE in fold_convert_loc, at fold-const.c:2008)
PR c++/53826
	* tree.c (build_zero_cst): Handle NULLPTR_TYPE.

From-SVN: r189238
2012-07-03 14:10:39 -04:00
Nick Clifton f758c26c04 mep.c (mep_reorg_regmove): Use next_nonnote_non_debug_insn to advance to the next insn.
* config/mep/mep.c (mep_reorg_regmove): Use
	next_nonnote_non_debug_insn to advance to the next insn.  Do not
	expect delete_insn to return an rtx.

From-SVN: r189234
2012-07-03 15:49:25 +00:00
Richard Guenther 9795be396e install.texi (CLooG): Clarify how CLooG needs to be configured and that it needs to be built against...
2012-07-03  Richard Guenther  <rguenther@suse.de>

	* doc/install.texi (CLooG): Clarify how CLooG needs to be
	configured and that it needs to be built against ISL 0.10.

From-SVN: r189228
2012-07-03 13:38:37 +00:00
Jakub Jelinek 5340631568 re PR c++/53812 (lower_stmt (4.6), verify_gimple_stmt (4.7.0, 4.7.1))
PR c++/53812
	* semantics.c (finish_goto_stmt): Surround computed goto argument
	with CLEANUP_POINT_EXPR if needed.

	* g++.dg/ext/label14.C: New test.

From-SVN: r189225
2012-07-03 15:09:16 +02:00
Uros Bizjak 95a3d9ee86 i386.c (ix86_option_override_internal): Fix wrong code model string in the error message.
* config/i386/i386.c (ix86_option_override_internal): Fix wrong
	code model string in the error message.

From-SVN: r189219
2012-07-03 14:02:33 +02:00
Uros Bizjak 19d7dc0dfa re PR target/53811 (ICE: in insn_default_length, at config/i386/i386.md:529 (unrecognizable insn) with -mcmodel=large)
PR target/53811
	* config/i386/i386.c (x86_output_mi_thunk): Check if fnaddr satisfies
	sibcall_insn_operand.  Move it to a temporary register if not.

testsuite/ChangLog:

	PR target/53811
	* g++.dg/other/pr53811.C: New test.

From-SVN: r189218
2012-07-03 13:58:12 +02:00
Richard Guenther 1fcd23ac0d Makfile.def (isl): Remove not necessary extra_exports and extra_make_flags.
2012-07-03  Richard Guenther  <rguenther@suse.de>

	* Makfile.def (isl): Remove not necessary extra_exports and
	extra_make_flags.
	(cloog): Use $$CPPFLAGS instead of ${CPPFLAGS}.
	* Makefile.in: Regenerated.

From-SVN: r189212
2012-07-03 10:12:34 +00:00
Andreas Schwab 8e22f79f4d re PR target/28896 (-fstack-limit-symbol and m68k and non 68020)
PR target/28896
	* config/m68k/m68k.c (m68k_option_override): Reset stack_limit_rtx
	if !TARGET_68020.

testsuite/
	* gcc.target/m68k/stack-limit-1.c: New testcase.

From-SVN: r189210
2012-07-03 09:46:01 +00:00
Richard Guenther 32d024bfd2 cloog.m4: Remove debugging print.
2012-07-03  Richard Guenther  <rguenther@suse.de>

	config/
	* cloog.m4: Remove debugging print.

	* Makefile.def (cloog): Add V=1 to extra_make_flags.
	* configure.ac: If either the ISL or the CLooG check failed
	do not try to build in-tree versions.
	* Makefile.in: Regenerated.
	* configure: Regenerated.

From-SVN: r189209
2012-07-03 09:44:53 +00:00
Rainer Orth 90d4f2330e Fix ISL check with static libisl
toplevel:
	* configure: Regenerate.

	config:
	* isl.m4 (ISL_CHECK_VERSION): Add -lisl to LIBS, not LDFLAGS.

From-SVN: r189207
2012-07-03 09:26:58 +00:00
Eric Botcazou b83053bf42 trans.c (Call_to_gnu): Robustify test for function case if the CICO mechanism is used.
* gcc-interface/trans.c (Call_to_gnu): Robustify test for function case
	if the CICO mechanism is used.

From-SVN: r189204
2012-07-03 09:06:08 +00:00
Eric Botcazou 4a147e4e04 utils2.c (build_simple_component_ref): Do not look through an extension if the type contains a placeholder.
* gcc-interface/utils2.c (build_simple_component_ref): Do not look
	through an extension if the type contains a placeholder.

From-SVN: r189202
2012-07-03 08:49:54 +00:00
Eric Botcazou 28dd005525 exp_disp.adb (Expand_Dispatching_Call): Propagate the convention on the designated subprogram type and also set...
* exp_disp.adb (Expand_Dispatching_Call): Propagate the convention on
	the designated subprogram type and also set Is_Dispatch_Table_Entity.
	(Expand_Interface_Thunk): Propagate the convention on the thunk.
	(Set_CPP_Constructors_Old): Set Is_Constructor and Convention_CPP on
	the internal view of the constructors.
	(Set_CPP_Constructors): Likewise.
	* sem_prag.adb (Analyze_Pragma) <Pragma_CPP_Constructor>: Set the
	convention on the function.
	* gcc-interface/gigi.h (is_cplusplus_method): Declare.
	* gcc-interface/decl.c (Has_Thiscall_Convention): New macro.
	(gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the `thiscall'
	calling convention
	(get_minimal_subprog_decl): Likewise.
	(is_cplusplus_method): New predicate.
	* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Access>: Issue an
	error on access to C++ constructor or member function.

From-SVN: r189199
2012-07-03 08:28:34 +00:00
Eric Botcazou d4d05b5247 utils.c (gnat_pushdecl): Set TYPE_CONTEXT for types attached to a TYPE_DECL.
* gcc-interface/utils.c (gnat_pushdecl): Set TYPE_CONTEXT for types
	attached to a TYPE_DECL.

From-SVN: r189195
2012-07-03 07:57:46 +00:00
Uros Bizjak 68a12ef35b xmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.
gcc/

2012-07-03  Uros Bizjak  <ubizjak@gmail.com>

	* config/i386/xmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.

libgomp/

2012-07-03  Uros Bizjak  <ubizjak@gmail.com>

	* config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
	* testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.

libitm/

2012-07-03  Uros Bizjak  <ubizjak@gmail.com>

	* config/x86/target.h (cpu_relax): Use __builtin_ia32_pause.

From-SVN: r189194
2012-07-03 09:24:10 +02:00
Uros Bizjak 43283548c1 configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): Also require that the assembler accept 'rep bsf ...'...
* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): Also require that the
	assembler accept 'rep bsf ...', 'rep bsr ...', 'rep ret' and 'rep nop'.
	* configure: Regenerated.
	* config/i386/i386.md (simple_return_internal_long): Use %;
	(ctz<mode>2): Likewise.
	(*pause): Likewise.

From-SVN: r189193
2012-07-03 09:15:09 +02:00
Oleg Endo 05437ab595 packed1.C: Remove SH from xfail list.
* g++.dg/other/packed1.C: Remove SH from xfail list.

From-SVN: r189192
2012-07-03 07:15:08 +00:00
Jason Merrill e0e1b35743 re PR c++/53619 ([C++11] wrong capture of "this" in lambda in case of multiple inheritance)
PR c++/53619
	* pt.c (in_template_function): New.
	* cp-tree.h: Declare it.
	* class.c (build_base_path, resolves_to_fixed_type_p): Use it.

From-SVN: r189191
2012-07-03 01:03:34 -04:00
Jason Merrill 39fa0adb69 re PR c++/53783 (lambda in lambda in template function rejected)
PR c++/53783
	* pt.c (tsubst_copy_and_build) [LAMBDA_EXPR]: Use tsubst
	for LAMBDA_EXPR_EXTRA_SCOPE.

From-SVN: r189190
2012-07-03 01:03:21 -04:00
Jason Merrill e961d86e32 re PR c++/53788 (C++11 decltype sfinae static member function check (4.7.1))
PR c++/53788
	* pt.c (build_non_dependent_expr): Don't wrap a dummy object.

From-SVN: r189188
2012-07-02 23:30:09 -04:00
Jason Merrill 65f0c5b308 re PR c++/53816 (internal compiler error: tree check: expected field_decl, have identifier_node in fixed_type_or_null, at cp/class.c:6419, with -std=c++11 option)
PR c++/53816
	* class.c (resolves_to_fixed_type_p): Check uses_template_parms
	(current_function_decl) instead of processing_template_decl.

From-SVN: r189187
2012-07-02 23:29:58 -04:00
Paolo Carlini d695f91575 revert: re PR libstdc++/49561 ([C++0x] std::list::size complexity)
2012-07-02  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert:
	2011-10-04  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/49561
	* include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
	Add in C++0x mode.
	(_List_base<>::_List_impl, _List_base<>::_M_get_node,
	_List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
	list<>::size, list<>::swap, list<>::splice): Use it.
	(operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
	* include/bits/list.tcc (list<>::erase): Likewise.
	(list<>::merge): Adjust in C++0x mode.
	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/
	constructor_2_neg.cc: Likewise.

From-SVN: r189185
2012-07-03 00:47:17 +00:00
GCC Administrator eeddef55da Daily bump.
From-SVN: r189184
2012-07-03 00:17:42 +00:00
Oleg Endo 0f676cfe57 re PR target/53568 (SH Target: Add support for bswap built-ins)
PR target/53568
	* gcc.target/sh/pr53568-1.c: New.

From-SVN: r189181
2012-07-02 22:59:59 +00:00
Oleg Endo f031c3441f re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
PR target/51244
	* config/sh/predicates.md (t_reg_operand, negt_reg_operand): New
	predicates.
	* config/sh/sh-protos.h (get_t_reg_rtx): New prototype.
	* config/sh/sh.c (get_t_reg_rtx): New function.  Use it when invoking
	gen_branch_true and gen_branch_false.
	* config/sh/sh.md: Use get_t_reg_rtx when invoking gen_branch_true and
	gen_branch_false.
	(branch_true, branch_false): Use t_reg_operand predicate.
	(*branch_true, *branch_false): Delete.
	(movt): Use t_reg_operand predicate.
	(*negnegt): Use negt_reg_operand predicate and fold little and big
	endian variants.
	(*movtt): Use t_reg_operand and fold little and big endian variants.
	(*movt_qi): Delete.

	PR target/51244
	* gcc.target/sh/pr51244-1.c: Check that movt insn is not generated.

From-SVN: r189177
2012-07-02 19:23:56 +00:00
Jason Merrill 73a1569582 re PR c++/53821 ([c++11] multiple definitions of lambda)
PR c++/53821
	* semantics.c (maybe_add_lambda_conv_op): Don't set
	DECL_INTERFACE_KNOWN.

From-SVN: r189175
2012-07-02 15:14:34 -04:00
Jason Merrill 8d0d1915d9 re PR c++/53524 (Bogus enum comparison warning)
PR c++/53524
gcc/cp/
	* call.c (build_conditional_expr_1): Don't warn about comparison of
	two enumerators before their enumeration is complete.
	(build_new_op_1): Call decay_conversion before warn_logical_operator.
	* decl.c (build_enumerator): Set DECL_CONTEXT of an enumerator to
	its enumeration.
	* decl2.c (mark_used): Call used_types_insert for enums.
	* semantics.c (finish_id_expression): Don't decay CONST_DECL.
	(finish_member_declaration): Don't change DECL_CONTEXT of enumerators.
	* class.c (check_field_decls): Don't change DECL_CONTEXT of enums.
	* typeck.c (convert_for_assignment): Don't decay CONST_DECL.
	(build_class_member_access_expr): Look through unscoped enums.
	* search.c (context_for_name_lookup): Look through unscoped enums.
	* pt.c (tsubst_copy_and_build): Don't decay CONST_DECL.
	(tsubst_copy): Use DECL_CONTEXT to find the enumeration.
	* tree.c (decl_linkage): Likewise.
	* cvt.c (ocp_convert): Check decayed expr for enum range warning.
gcc/c-family/
	* c-common.c (get_priority): Call default_conversion.

From-SVN: r189174
2012-07-02 15:14:23 -04:00
Steven Bosscher 531b10fcb0 stmt.c (emit_case_bit_tests): Remove.
gcc/
	* stmt.c (emit_case_bit_tests): Remove.
	(expand_case): Remove expand_switch_using_bit_tests_p code.
	* tree-switch-conversion.c (hoist_edge_and_branch_if_true): New.
	(MAX_CASE_BIT_TESTS): Moved from stmt.c to here.
	(lshift_cheap_p): Likewise.
	(expand_switch_using_bit_tests_p): Likewise.
	(struct case_bit_test): Likewise.
	(case_bit_test_cmp): Likewise.
	(emit_case_bit_tests): New implementation for GIMPLE.
	(gen_inbound_check): Do not release post-dominator info here.
	(process_switch): Reorder code.  Expand as bit tests if it
	looks like a win.
	(do_switchconv): Release post-dominator info here if something
	changed.
	(struct gimple_opt_pass): Verify more.
	* tree.h (expand_switch_using_bit_tests_p): Remove prototype.

testsuite/
	* gcc.dg/tree-ssa/pr36881.c: Fix test case to not expand as bit tests.

From-SVN: r189173
2012-07-02 18:50:51 +00:00
Janis Johnson 8153b03d4b fix typo in previous commit
From-SVN: r189167
2012-07-02 16:32:02 +00:00
Janis Johnson 1116de1a71 MAINTAINERS (Various Mainterers): Add myself as testsuite maintainer.
* MAINTAINERS (Various Mainterers): Add myself as testsuite
	maintainer.

From-SVN: r189166
2012-07-02 16:24:26 +00:00