gcc.git
9 years agore PR fortran/54687 (Use gcc option machinery for gfortran)
Tobias Burnus [Tue, 16 Dec 2014 20:44:45 +0000 (21:44 +0100)]
re PR fortran/54687 (Use gcc option machinery for gfortran)

2014-12-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54687
        * gfortran.h (gfc_option_t): Remove flags which now
        have a Var().
        * lang.opt (flag-aggressive_function_elimination,
        flag-align_commons, flag-all_intrinsics,
        flag-allow_leading_underscore, flag-automatic, flag-backslash,
        flag-backtrace, flag-blas_matmul_limit, flag-cray_pointer,
        flag-dollar_ok, flag-dump_fortran_original,
        flag-dump_fortran_optimized, flag-external_blas, flag-f2c,
        flag-implicit_none, flag-max_array_constructor,
        flag-module_private, flag-pack_derived, flag-range_check,
        flag-recursive, flag-repack_arrays, flag-sign_zero,
        flag-underscoring): Add Var() and, where applicable, Enum().
        * options.c (gfc_init_options, gfc_post_options,
        gfc_handle_option): Update for *.opt changes.
        * arith.c: Update for flag-variable name changes.
        * array.c: Ditto.
        * cpp.c: Ditto.
        * decl.c: Ditto.
        * expr.c: Ditto.
        * f95-lang.c: Ditto.
        * frontend-passes.c: Ditto.
        * intrinsic.c: Ditto.
        * io.c: Ditto.
        * match.c: Ditto.
        * module.c: Ditto.
        * parse.c: Ditto.
        * primary.c: Ditto.
        * resolve.c: Ditto.
        * scanner.c: Ditto.
        * simplify.c: Ditto.
        * symbol.c: Ditto.
        * trans-array.c: Ditto.
        * trans-common.c: Ditto.
        * trans-decl.c: Ditto.
        * trans-expr.c: Ditto.
        * trans-intrinsic.c: Ditto.
        * trans-openmp.c: Ditto.
        * trans-types.c: Ditto.

From-SVN: r218792

9 years agohwint.c (abs_hwi, absu_hwi): Move to ...
Jan Hubicka [Tue, 16 Dec 2014 19:59:56 +0000 (20:59 +0100)]
hwint.c (abs_hwi, absu_hwi): Move to ...

* hwint.c (abs_hwi, absu_hwi): Move to ...
* hwint.h (abs_hwi, absu_hwi): ... here; make inline.

From-SVN: r218791

9 years ago2014-12-15 Tobias Burnus <burnus@net-b.de>
Tobias Burnus [Tue, 16 Dec 2014 19:24:50 +0000 (20:24 +0100)]
2014-12-15  Tobias Burnus  <burnus@net-b.de>

        * lang.opt (fsecond-underscore, frecord-marker=8,
        * frecord-marker=4,
        frealloc-lhs, freal-8-real-16, freal-8-real-10, freal-8-real-4,
        freal-4-real-16, freal-4-real-10, freal-4-real-8, fprotect-parens,
        fstack-arrays, fmax-stack-var-size=, fmax-subrecord-length=,
        ffrontend-optimize, ffree-line-length-, ffixed-line-length-,
        finteger-4-integer-8, fdefault-real-8, fdefault-integer-8,
        fdefault-double-8): Add Var() and Init().
        * gfortran.h (gfc_option_t): Remove moved flags.
        * options.c (gfc_init_options, gfc_handle_option): Ditto.
        (gfc_post_options): Update for name change.
        * decl.c (gfc_match_old_kind_spec, gfc_match_kind_spec): Handle
        flag-name change.
        * frontend-passes.c (gfc_run_passes): Ditto.
        * module.c (use_iso_fortran_env_module): Ditto.
        * primary.c (match_integer_constant, match_real_constant):
        * Ditto.
        * resolve.c (resolve_ordinary_assign): Ditto.
        * scanner.c (gfc_next_char_literal, load_line): Ditto.
        * trans-array.c (gfc_trans_allocate_array_storage,
        gfc_conv_resolve_dependencies, gfc_trans_auto_array_allocation,
        gfc_conv_ss_startstride): Ditto.
        * trans-common.c (gfc_sym_mangled_common_id): Ditto.
        * trans-decl.c (gfc_sym_mangled_function_id,
        create_main_function): Ditto.
        * trans-expr.c (gfc_conv_expr_op, gfc_conv_procedure_call,
        arrayfunc_assign_needs_temporary, gfc_trans_arrayfunc_assign,
        gfc_trans_assignment_1): Ditto.
        * trans-stmt.c (gfc_trans_allocate): Ditto.
        * trans-types.c (gfc_init_kinds): Ditto.

From-SVN: r218790

9 years agore PR go/61264 (gccgo: ICE in __normal_iterator [GoSmith])
Ian Lance Taylor [Tue, 16 Dec 2014 19:14:54 +0000 (19:14 +0000)]
re PR go/61264 (gccgo: ICE in __normal_iterator [GoSmith])

PR go/61264
compiler: Fix copying behavior for empty composite literals.

From-SVN: r218789

9 years agore PR go/61273 (gccgo: ICE in Unsafe_type_conversion_expression::do_get_backend ...
Ian Lance Taylor [Tue, 16 Dec 2014 18:53:46 +0000 (18:53 +0000)]
re PR go/61273 (gccgo: ICE in Unsafe_type_conversion_expression::do_get_backend [GoSmith])

PR go/61273
compiler: Send statements should contextually permit composite literals.

From-SVN: r218788

9 years agore PR middle-end/64309 (if (1 & (1 << n)) not simplified to if (n == 0))
Marek Polacek [Tue, 16 Dec 2014 18:29:01 +0000 (18:29 +0000)]
re PR middle-end/64309 (if (1 & (1 << n)) not simplified to if (n == 0))

PR middle-end/64309
* match.pd: Add ((1 << A) & 1) != 0 -> A == 0 and
((1 << A) & 1) == 0 -> A != 0.

* gcc.dg/pr64309.c: New test.

From-SVN: r218787

9 years agogenmatch.c (parser::parser): Initialize capture_ids.
Richard Biener [Tue, 16 Dec 2014 18:24:55 +0000 (18:24 +0000)]
genmatch.c (parser::parser): Initialize capture_ids.

2014-12-16  Richard Biener  <rguenther@suse.de>

* genmatch.c (parser::parser): Initialize capture_ids.
(parser::parse_pattern): Properly allocate capture_ids before
using them.  Set capture_ids to zero when its lifetime is
supposed to finish.
(parser::parse_simplify): Allocate capture_ids only if
required.

From-SVN: r218786

9 years agognu.ver (CXXABI_1.3.9): Export not just _Zd[la]Pvm...
Jakub Jelinek [Tue, 16 Dec 2014 17:42:24 +0000 (18:42 +0100)]
gnu.ver (CXXABI_1.3.9): Export not just _Zd[la]Pvm...

* config/abi/pre/gnu.ver (CXXABI_1.3.9): Export not just
_Zd[la]Pvm, but also _Zd[la]Pv[jy] to cover other std::size_t
manglings.

From-SVN: r218785

9 years agognu-versioned-namespace.ver: And other size_t manglings.
Jason Merrill [Tue, 16 Dec 2014 17:21:42 +0000 (12:21 -0500)]
gnu-versioned-namespace.ver: And other size_t manglings.

* config/abi/pre/gnu-versioned-namespace.ver: And other size_t
manglings.

From-SVN: r218784

9 years agoBoth config.h and system.h define ABI/API macros for system headers.
Michael Haubenwallner [Tue, 16 Dec 2014 17:14:49 +0000 (17:14 +0000)]
Both config.h and system.h define ABI/API macros for system headers.

* sreal.c: Include math.h later.

From-SVN: r218783

9 years agoMAINTAINERS (Write After Approval): Add myself.
Michael Haubenwallner [Tue, 16 Dec 2014 16:10:23 +0000 (16:10 +0000)]
MAINTAINERS (Write After Approval): Add myself.

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r218782

9 years agognu-versioned-namespace.ver: Export _ZdlPvm and _ZdaPvm.
Jason Merrill [Tue, 16 Dec 2014 15:48:58 +0000 (10:48 -0500)]
gnu-versioned-namespace.ver: Export _ZdlPvm and _ZdaPvm.

* config/abi/pre/gnu-versioned-namespace.ver: Export _ZdlPvm and
_ZdaPvm.

From-SVN: r218781

9 years agore PR target/64240 ([AArch64] SMS-3.c causes runtime exception(segfault).)
Felix Yang [Tue, 16 Dec 2014 14:58:03 +0000 (14:58 +0000)]
re PR target/64240 ([AArch64] SMS-3.c causes runtime exception(segfault).)

+       PR rtl-optimization/64240
+       * ddg.c (mark_mem_use): Check *iter instead of *x.

From-SVN: r218780

9 years agore PR other/64278 (/sreal.c:254:22: error: call of overloaded 'abs(const int64_t...
Martin Liska [Tue, 16 Dec 2014 14:55:29 +0000 (15:55 +0100)]
re PR other/64278 (/sreal.c:254:22: error: call of overloaded 'abs(const int64_t&)' is ambiguous)

Fix for PR ipa/64278

* sreal.c (sreal::operator*): Replace std::abs with absu_hwi.

From-SVN: r218779

9 years agosanitizer_symbolizer_libbacktrace.cc, [...]: Cherry pick upstream r224308.
Jakub Jelinek [Tue, 16 Dec 2014 11:35:34 +0000 (12:35 +0100)]
sanitizer_symbolizer_libbacktrace.cc, [...]: Cherry pick upstream r224308.

* sanitizer_common/sanitizer_symbolizer_libbacktrace.cc,
sanitizer_common/sanitizer_symbolizer_libbacktrace.h,
sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc: Cherry pick
upstream r224308.

From-SVN: r218778

9 years agoi386.c (ix86_address_cost): Add explicit restriction to RTL level for the check for...
Igor Zamyatin [Tue, 16 Dec 2014 08:35:29 +0000 (08:35 +0000)]
i386.c (ix86_address_cost): Add explicit restriction to RTL level for the check for PIC register.

gcc/
* config/i386/i386.c (ix86_address_cost): Add explicit restriction
to RTL level for the check for PIC register.

From-SVN: r218777

9 years agore PR fortran/64244 (ICE at class.c:236 when using non_overridable)
Janus Weil [Tue, 16 Dec 2014 08:15:38 +0000 (09:15 +0100)]
re PR fortran/64244 (ICE at class.c:236 when using non_overridable)

2014-12-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/64244
* resolve.c (resolve_typebound_call): New argument to pass out the
non-overridable attribute of the specific procedure.
(resolve_typebound_subroutine): Get overridable flag from
resolve_typebound_call.

2014-12-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/64244
* gfortran.dg/typebound_call_26.f90: New.

From-SVN: r218776

9 years agognu-user.h (TARGET_CAN_SPLIT_STACK): Move from here ...
Uros Bizjak [Tue, 16 Dec 2014 07:49:53 +0000 (08:49 +0100)]
gnu-user.h (TARGET_CAN_SPLIT_STACK): Move from here ...

* config/i386/gnu-user.h (TARGET_CAN_SPLIT_STACK): Move from here ...
* config/i386/gnu-user64.h (TARGET_CAN_SPLIT_STACK): ... and here ...
* config/i386/gnu-user-common.h (TARGET_CAN_SPLIT_STACK): ... to here.

From-SVN: r218775

9 years agore PR target/64217 (LRA: generate wrong liveness info after r217947 for clobber in...
Chung-Ju Wu [Tue, 16 Dec 2014 06:22:35 +0000 (06:22 +0000)]
re PR target/64217 (LRA: generate wrong liveness info after r217947 for clobber in jump_insn)

PR target/64217
* config/nds32/nds32.md (casesi_internal): Add '=r' for clobber
register constraint.

From-SVN: r218774

9 years agoDaily bump.
GCC Administrator [Tue, 16 Dec 2014 00:16:40 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r218772

9 years agodecl2.c (decl_needed_p): When not optimizing, do not consider external decls as needed.
Jan Hubicka [Mon, 15 Dec 2014 22:50:18 +0000 (23:50 +0100)]
decl2.c (decl_needed_p): When not optimizing, do not consider external decls as needed.

* decl2.c (decl_needed_p): When not optimizing, do not consider external
decls as needed.

From-SVN: r218769

9 years ago* config/rl78/rl78.h: Remove SHORT_IMMEDIATES_SIGN_EXTEND.
DJ Delorie [Mon, 15 Dec 2014 22:41:22 +0000 (17:41 -0500)]
* config/rl78/rl78.h: Remove SHORT_IMMEDIATES_SIGN_EXTEND.

From-SVN: r218768

9 years agore PR lto/64043 (ICE (segfault) with LTO: in tree_check/tree.h:2758 get_binfo_at_offs...
Jan Hubicka [Mon, 15 Dec 2014 22:35:20 +0000 (23:35 +0100)]
re PR lto/64043 (ICE (segfault) with LTO: in tree_check/tree.h:2758 get_binfo_at_offset/tree.c:11914)

PR lto/64043
* gcc.dg/lto/20110201-1_0.c: New testcase.

* tree-streamer.c (preload_common_nodes): Skip preloading
of main_identifier_node, pid_type and optimization/option nodes.

From-SVN: r218767

9 years agore PR rtl-optimization/63397 (signed integer overflows in ira.c)
Vladimir Makarov [Mon, 15 Dec 2014 22:18:51 +0000 (22:18 +0000)]
re PR rtl-optimization/63397 (signed integer overflows in ira.c)

2014-12-15  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/63397
* ira-int.h (ira_overall_cost, ira_reg_cost, ira_mem_cost): Use
int64_t.
(ira_load_cost, ira_store_cost, ira_shuffle_cost): Ditto.
* ira.c (ira_overall_cost, ira_overall_cost_before): Ditto.
(ira_reg_cost, ira_mem_cost): Ditto.
(ira_load_cost, ira_store_cost, ira_shuffle_cost): Ditto.
(calculate_allocation_cost, do_reload): Use the right
format for int64_t values.

From-SVN: r218766

9 years agosreal.h (to_double): New method.
Jan Hubicka [Mon, 15 Dec 2014 22:03:11 +0000 (23:03 +0100)]
sreal.h (to_double): New method.

* sreal.h (to_double): New method.
(shift): Do not ICE on 0.
* sreal.c: Include math.h
(sreal::to_double): New.

From-SVN: r218765

9 years agore PR go/61255 (gccgo: spurious "error: argument 2 has incompatible type" [GoSmith])
Ian Lance Taylor [Mon, 15 Dec 2014 20:20:22 +0000 (20:20 +0000)]
re PR go/61255 (gccgo: spurious "error: argument 2 has incompatible type" [GoSmith])

PR go/61255
compiler: Copied variadic calls should copy lowering state of arguments.

From-SVN: r218764

9 years agore PR c++/64297 (ICE: canonical types differ for identical types)
Jason Merrill [Mon, 15 Dec 2014 20:19:51 +0000 (15:19 -0500)]
re PR c++/64297 (ICE: canonical types differ for identical types)

PR c++/64297
* typeck.c (apply_memfn_quals): Correct wrong TYPE_CANONICAL.

From-SVN: r218763

9 years agore PR rtl-optimization/64316 (ICE in simplify_const_unary_operation after r218503)
Jakub Jelinek [Mon, 15 Dec 2014 20:10:45 +0000 (21:10 +0100)]
re PR rtl-optimization/64316 (ICE in simplify_const_unary_operation after r218503)

PR rtl-optimization/64316
* simplify-rtx.c (simplify_relational_operation_1): For
(eq/ne (and x y) x) and (eq/ne (and x y) y) optimizations use
CONST0_RTX instead of const0_rtx.

* gcc.dg/pr64316.c: New test.

From-SVN: r218762

9 years agore PR target/62642 (x86 rdtsc is moved through barrier)
Vladimir Makarov [Mon, 15 Dec 2014 20:04:04 +0000 (20:04 +0000)]
re PR target/62642 (x86 rdtsc is moved through barrier)

2014-12-15  Vladimir Makarov  <vmakarov@redhat.com>

PR target/62642
* ira.c (rtx_moveable_p): Prevent UNSPEC_VOLATILE moves.

From-SVN: r218761

9 years agoira-int.h (ira_prohibited_class_mode_regs): Remove.
Vladimir Makarov [Mon, 15 Dec 2014 19:51:31 +0000 (19:51 +0000)]
ira-int.h (ira_prohibited_class_mode_regs): Remove.

2014-12-15  Vladimir Makarov  <vmakarov@redhat.com>

* ira-int.h (ira_prohibited_class_mode_regs): Remove.
(struct target_ira_int): Move x_ira_prohibited_class_mode_regs to
...
* ira.h (struct target_ira_int): ... here.
(ira_prohibited_class_mode_regs): Define.
* lra-constraints.c (process_alt_operands): Add one more condition
to refuse alternative when reload pseudo of given class can not
hold value of given mode.

From-SVN: r218760

9 years agore PR libgcc/63832 (crtstuff.c:400:19: warning: array subscript is above array bounds...
Uros Bizjak [Mon, 15 Dec 2014 18:43:26 +0000 (19:43 +0100)]
re PR libgcc/63832 (crtstuff.c:400:19: warning: array subscript is above array bounds [-Warray-bounds])

PR libgcc/63832
* crtstuff.c (__do_global_dtors_aux) [HIDDEN_DTOR_LIST_END]: Use
func_ptr *dtor_list temporary variable to avoid "array subscript
is above array bounds" warnings.

From-SVN: r218759

9 years agore PR rtl-optimization/63804 (ice in find_oldest_value_reg with -g -O2)
Jakub Jelinek [Mon, 15 Dec 2014 18:40:35 +0000 (19:40 +0100)]
re PR rtl-optimization/63804 (ice in find_oldest_value_reg with -g -O2)

PR rtl-optimization/63804
* gcc.dg/pr63804.c: New test.

From-SVN: r218758

9 years agore PR fortran/61669 (Error recovery ICE)
Steven Bosscher [Mon, 15 Dec 2014 18:37:59 +0000 (18:37 +0000)]
re PR fortran/61669 (Error recovery ICE)

PR fortran/61669
* gfortran.h (struct gfc_namespace): Add OLD_DATA field.
* decl.c (gfc_reject_data): New function.
* parse.c *use_modules): Record roll-back point.
(next_statement): Likewise.
(reject_statement): Roll back to last accepted DATA.

* gfortran.dg/pr61669.f90: New test.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r218757

9 years agore PR tree-optimization/64312 (ICE: Segmentation fault)
Richard Biener [Mon, 15 Dec 2014 18:33:16 +0000 (18:33 +0000)]
re PR tree-optimization/64312 (ICE: Segmentation fault)

2014-12-15  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64312
* tree-ssa-sccvn.c (vn_reference_lookup_pieces): Use
vuse_ssa_val as callback to walk_non_aliased_vuses.
(vn_reference_lookup): Likewise.

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

From-SVN: r218756

9 years agoN3778: Sized Deallocation
Jason Merrill [Mon, 15 Dec 2014 18:31:40 +0000 (13:31 -0500)]
N3778: Sized Deallocation

N3778: Sized Deallocation
gcc/c-family/
* c.opt (-fsized-deallocation, -Wc++14-compat): New.
(-Wsized-deallocation): New.
* c-opts.c (c_common_post_options): -fsized-deallocation defaults
to on in C++14 and up.
gcc/cp/
* call.c (non_placement_deallocation_fn_p): A global sized
operator delete is not a usual deallocation function until C++14.
(build_op_delete_call): Choose the global sized op delete if we
know the size.
* cp-tree.h: Declare non_placement_deallocation_fn_p.
(enum cp_tree_index): Remove CPTI_GLOBAL_DELETE_FNDECL.
(global_delete_fndecl): Remove.
* decl.c (cxx_init_decl_processing): Also declare sized op deletes.
(grok_op_properties): Warn about sized dealloc without the flag.
* init.c (build_builtin_delete_call): Remove.
(build_vec_delete_1, build_delete): Don't call it.
* decl2.c (maybe_warn_sized_delete): New.
(cp_write_global_declarations): Call it.
libstdc++-v3/
* libsupc++/del_ops.cc: New.
* libsupc++/del_opvs.cc: New.
* libsupc++/Makefile.am: Add them.
* libsupc++/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Export _ZdlPvm and _ZdaPvm.

From-SVN: r218755

9 years agore PR go/61248 (gccgo: spurious "error: too many arguments" [GoSmith])
Ian Lance Taylor [Mon, 15 Dec 2014 17:33:43 +0000 (17:33 +0000)]
re PR go/61248 (gccgo: spurious "error: too many arguments" [GoSmith])

PR go/61248
compiler: Ignore argument when typechecking converted recover calls.

From-SVN: r218754

9 years agore PR go/61253 (gccgo: spurious "error: expected '<-' or '='" [GoSmith])
Ian Lance Taylor [Mon, 15 Dec 2014 17:12:26 +0000 (17:12 +0000)]
re PR go/61253 (gccgo: spurious "error: expected '<-' or '='" [GoSmith])

PR go/61253
compiler: Support RecvStmt = ExpressionList "=" RecvExpr.

From-SVN: r218753

9 years agore PR c++/58882 (ICE with invalid C99 style designated initializers)
Paolo Carlini [Mon, 15 Dec 2014 16:16:29 +0000 (16:16 +0000)]
re PR c++/58882 (ICE with invalid C99 style designated initializers)

/cp
2014-12-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58882
* decl.c (check_array_designated_initializer): Diagnose gracefully
C99 designators which aren't integral constant-expressions; allow
constexpr user-defined type conversion operators.

/testsuite
2014-12-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58882
* g++.dg/ext/desig8.C: New.
* g++.dg/cpp0x/desig1.C: Likewise.

From-SVN: r218752

9 years agore PR fortran/63727 ([F03] Checks missing for proc-pointer components: Usage as actua...
Janus Weil [Mon, 15 Dec 2014 16:10:50 +0000 (17:10 +0100)]
re PR fortran/63727 ([F03] Checks missing for proc-pointer components: Usage as actual argument when elemental)

2014-12-15  Janus Weil  <janus@gcc.gnu.org>

PR fortran/63727
* resolve.c (resolve_actual_arglist): Check for elemental procedure
pointer components.

2014-12-15  Janus Weil  <janus@gcc.gnu.org>

PR fortran/63727
* gfortran.dg/coarray_collectives_14.f90: Address FIXME item.

From-SVN: r218751

9 years ago* gcc/config/rs6000/rs6000.md (*add>mode>3_imm_dot,
Segher Boessenkool [Mon, 15 Dec 2014 14:39:26 +0000 (15:39 +0100)]
* gcc/config/rs6000/rs6000.md (*add>mode>3_imm_dot,

*add<mode>3_imm_dot2): Change the constraint for the second
alternative for operand 1 from "r" to "b".

From-SVN: r218750

9 years agovec.h (vec::safe_grow): Guard against a grow to zero size.
Richard Biener [Mon, 15 Dec 2014 14:24:06 +0000 (14:24 +0000)]
vec.h (vec::safe_grow): Guard against a grow to zero size.

2014-12-15  Richard Biener  <rguenther@suse.de>

* vec.h (vec::safe_grow): Guard against a grow to zero size.

From-SVN: r218749

9 years agore PR tree-optimization/64295 (ICE: SIGSEGV (infinite recursion) with -frounding...
Richard Biener [Mon, 15 Dec 2014 13:01:47 +0000 (13:01 +0000)]
re PR tree-optimization/64295 (ICE: SIGSEGV (infinite recursion) with -frounding-math -funsafe-math-optimizations)

2014-12-15  Richard Biener  <rguenther@suse.de>

PR middle-end/64295
* match.pd (X / CST -> X * (1 / CST): Use const_binop instead of
fold_binary to compute the constant to multiply with.

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

From-SVN: r218748

9 years agore PR middle-end/64246 (ICE building libada for Windows due to NULL loop header)
Richard Biener [Mon, 15 Dec 2014 12:20:10 +0000 (12:20 +0000)]
re PR middle-end/64246 (ICE building libada for Windows due to NULL loop header)

2014-12-15  Richard Biener  <rguenther@suse.de>

PR middle-end/64246
* cfgloop.c (mark_loop_for_removal): Make safe against multiple
invocations on the same loop.

* gnat.dg/opt46.adb: New testcase.
* gnat.dg/opt46.ads: Likewise.
* gnat.dg/opt46_pkg.adb: Likewise.
* gnat.dg/opt46_pkg.ads: Likewise.

From-SVN: r218746

9 years agore PR middle-end/64292 (FAIL: g++.dg/torture/pr60474.C -O1 (internal compiler...
Marek Polacek [Mon, 15 Dec 2014 12:15:14 +0000 (12:15 +0000)]
re PR middle-end/64292 (FAIL: g++.dg/torture/pr60474.C   -O1  (internal compiler error))

PR middle-end/64292
* fold-const.c (negate_expr_p): Add INTEGRAL_TYPE_P check.

From-SVN: r218745

9 years agoBuild machinery cleanup.
Thomas Schwinge [Mon, 15 Dec 2014 10:54:43 +0000 (11:54 +0100)]
Build machinery cleanup.

* configure.ac (--enable-as-accelerator-for): Don't set
ENABLE_AS_ACCELERATOR_FOR.  Update all users.
* configure: Regenerate.

From-SVN: r218744

9 years agore PR target/64210 (FAIL: gcc.target/i386/avx512vl-(vmovdqa64|vpbroadcastd)-1.c ...
Jakub Jelinek [Mon, 15 Dec 2014 10:50:52 +0000 (11:50 +0100)]
re PR target/64210 (FAIL: gcc.target/i386/avx512vl-(vmovdqa64|vpbroadcastd)-1.c  ... with -fpic)

PR target/64210
* gcc.target/i386/avx512f-broadcast-gpr-1.c: Use %(?:e|r\[0-9\]+d)
instead of %e in regexps trying to match 32-bit GPR.
* gcc.target/i386/avx512f-vpbroadcastd-1.c: Likewise.
* gcc.target/i386/avx512vl-vpbroadcastd-1.c: Likewise.
* gcc.target/i386/avx512vl-vmovdqa64-1.c: Restrict some scan-assembler-times
lines to nonpic targets only.  Fix up \[^\n^x^y\] to \[^\nxy\].

From-SVN: r218743

9 years agopr63996.C: Fix.
Paolo Carlini [Mon, 15 Dec 2014 10:47:53 +0000 (10:47 +0000)]
pr63996.C: Fix.

2014-12-15  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp1y/pr63996.C: Fix.

From-SVN: r218742

9 years agore PR tree-optimization/63551 (wrong code (segfaults) at -Os on x86_64-linux-gnu)
Jakub Jelinek [Mon, 15 Dec 2014 10:44:53 +0000 (11:44 +0100)]
re PR tree-optimization/63551 (wrong code (segfaults) at -Os on x86_64-linux-gnu)

PR tree-optimization/63551
* gcc.dg/ipa/pr63551.c (fn2): Use 4294967286U instead of
4294967286 to avoid warnings.

From-SVN: r218740

9 years agore PR fortran/63674 ([F03] procedure pointer and non/pure procedure)
Janus Weil [Mon, 15 Dec 2014 10:34:46 +0000 (11:34 +0100)]
re PR fortran/63674 ([F03] procedure pointer and non/pure procedure)

2014-12-15  Janus Weil  <janus@gcc.gnu.org>

PR fortran/63674
* resolve.c (check_pure_function): Rewording in error message.

2014-12-15  Janus Weil  <janus@gcc.gnu.org>

PR fortran/63674
* gfortran.dg/forall_5.f90: Modified error message.
* gfortran.dg/proc_ptr_comp_39.f90: Ditto.
* gfortran.dg/pure_dummy_length_1.f90: Ditto.
* gfortran.dg/stfunc_6.f90: Ditto.
* gfortran.dg/typebound_operator_4.f90: Ditto.

From-SVN: r218738

9 years ago[AARCH64]Fix CLZ_DEFINED_AT_ZERO and CTZ_DEFINED_AT_ZERO definition.
Renlin Li [Mon, 15 Dec 2014 09:56:29 +0000 (09:56 +0000)]
[AARCH64]Fix CLZ_DEFINED_AT_ZERO and CTZ_DEFINED_AT_ZERO definition.

gcc/

2014-12-15  Renlin Li  <renlin.li@arm.com>

* config/aarch64/aarch64.h (CLZ_DEFINED_VALUE_AT_ZERO): Return 2.
(CTZ_DEFINED_VALUE_AT_ZERO): Update to support more modes.

From-SVN: r218737

9 years agore PR sanitizer/64265 (r217669 broke tsan)
Jakub Jelinek [Mon, 15 Dec 2014 09:37:47 +0000 (10:37 +0100)]
re PR sanitizer/64265 (r217669 broke tsan)

PR sanitizer/64265
* tsan.c (instrument_func_entry): Insert __tsan_func_entry
call on edge from entry block to single succ instead
of after labels of single succ of entry block.

From-SVN: r218734

9 years agore PR tree-optimization/64284 (ICE: Segmentation fault)
Richard Biener [Mon, 15 Dec 2014 08:19:55 +0000 (08:19 +0000)]
re PR tree-optimization/64284 (ICE: Segmentation fault)

2014-12-15  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64284
* tree-ssa-threadupdate.c (duplicate_seme_region): Mark
the loop for removal if we copied the loop header.

* gcc.dg/torture/pr64284.c: New testcase.

From-SVN: r218733

9 years agoserver.c (server_setup): Check return value of getcwd and in case of error set buff...
Uros Bizjak [Mon, 15 Dec 2014 08:10:41 +0000 (09:10 +0100)]
server.c (server_setup): Check return value of getcwd and in case of error set buff[0] to 0.

* server.c (server_setup): Check return value of
getcwd and in case of error set buff[0] to 0.

From-SVN: r218732

9 years agore PR ipa/61602 (ICE in lto1 on x86_64-linux-gnu in ipa_single_use, at ipa.c:1257)
Jan Hubicka [Mon, 15 Dec 2014 06:19:51 +0000 (07:19 +0100)]
re PR ipa/61602 (ICE in lto1 on x86_64-linux-gnu in ipa_single_use, at ipa.c:1257)

PR ipa/61602
* gcc.dg/torture/pr61602.c: New testcase.

* cgraph.h (ipa_discover_readonly_nonaddressable_vars): Return bool.
* ipa.c (set_writeonly_bit): Track if reference was removed.
(ipa_discover_readonly_nonaddressable_vars): Return true if any
references was removed.
* ipa-reference.c (propagate): Return TODO_remove_functions if
reference was removed.

From-SVN: r218731

9 years ago* ipa.c (process_references): Fix conditoinal on flag_optimize
Jan Hubicka [Mon, 15 Dec 2014 03:47:18 +0000 (04:47 +0100)]
* ipa.c (process_references): Fix conditoinal on flag_optimize

From-SVN: r218730

9 years agore PR middle-end/61558 (ICE: Segmentation fault)
Jan Hubicka [Mon, 15 Dec 2014 03:44:58 +0000 (04:44 +0100)]
re PR middle-end/61558 (ICE: Segmentation fault)

PR ipa/61558
* symtab.c (symbol_table::insert_to_assembler_name_hash
symbol_table::unlink_from_assembler_name_hash): Do not ICE when
DECL_ASSEMBLER_NAME is NULL.

From-SVN: r218729

9 years ago* cgraphunit.c (analyze_functions): Always analyze targets of aliases.
Jan Hubicka [Mon, 15 Dec 2014 03:42:14 +0000 (03:42 +0000)]
* cgraphunit.c (analyze_functions): Always analyze targets of aliases.

From-SVN: r218728

9 years agore PR lto/64043 (ICE (segfault) with LTO: in tree_check/tree.h:2758 get_binfo_at_offs...
Jan Hubicka [Mon, 15 Dec 2014 03:41:41 +0000 (03:41 +0000)]
re PR lto/64043 (ICE (segfault) with LTO: in tree_check/tree.h:2758 get_binfo_at_offset/tree.c:11914)

PR lto/64043
* tree.c (virtual_method_call_p): Return false when OTR type has
no BINFO.
* g++.dg/lto/pr64043_0.C: New testcase.

From-SVN: r218727

9 years agocgraphunit.c (analyze_functions): Do not analyze extern inline funtions when not...
Jan Hubicka [Mon, 15 Dec 2014 00:21:21 +0000 (00:21 +0000)]
cgraphunit.c (analyze_functions): Do not analyze extern inline funtions when not optimizing; skip comdat locals.

* cgraphunit.c (analyze_functions): Do not analyze extern inline
funtions when not optimizing; skip comdat locals.

From-SVN: r218726

9 years agoDaily bump.
GCC Administrator [Mon, 15 Dec 2014 00:16:29 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r218725

9 years agocompiler: Fix crash when tracked field used in global initializer.
Ian Lance Taylor [Sun, 14 Dec 2014 19:39:15 +0000 (19:39 +0000)]
compiler: Fix crash when tracked field used in global initializer.

From-SVN: r218722

9 years agoPass unpromoted argument to promote_function_mode
H.J. Lu [Sun, 14 Dec 2014 16:04:11 +0000 (16:04 +0000)]
Pass unpromoted argument to promote_function_mode

This patch updates setup_incoming_promotions in combine.c to match what
is actually passed in assign_parm_setup_reg in function.c.

gcc/

PR rtl-optimization/64037
* combine.c (setup_incoming_promotions): Pass the argument
before any promotions happen to promote_function_mode.

gcc/testsuite/

PR rtl-optimization/64037
* g++.dg/pr64037.C: New test.

From-SVN: r218720

9 years agore PR fortran/63674 ([F03] procedure pointer and non/pure procedure)
Janus Weil [Sun, 14 Dec 2014 12:04:49 +0000 (13:04 +0100)]
re PR fortran/63674 ([F03] procedure pointer and non/pure procedure)

2014-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/63674
* resolve.c (pure_function): Treat procedure-pointer components.
(check_pure_function): New function.
(resolve_function): Use it.
(pure_subroutine): Return a bool to indicate success and modify
arguments.
(resolve_generic_s0,resolve_specific_s0,resolve_unknown_s): Use return
value of 'pure_subroutine'.
(resolve_ppc_call): Call 'pure_subroutine'.
(resolve_expr_ppc): Call 'check_pure_function'.

2014-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/63674
* gfortran.dg/proc_ptr_comp_39.f90: New.
* gfortran.dg/pure_dummy_length_1.f90: Modified error message.
* gfortran.dg/stfunc_6.f90: Ditto.
* gfortran.dg/typebound_operator_4.f90: Ditto.

From-SVN: r218717

9 years agore PR go/61244 (gccgo: ICE in write_specific_type_functions [GoSmith])
Ian Lance Taylor [Sun, 14 Dec 2014 00:55:01 +0000 (00:55 +0000)]
re PR go/61244 (gccgo: ICE in write_specific_type_functions [GoSmith])

PR go/61244
compiler: Traverse type descriptor expressions.

From-SVN: r218715

9 years agoDaily bump.
GCC Administrator [Sun, 14 Dec 2014 00:16:33 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r218714

9 years agore PR libstdc++/64239 (regex_iterator::operator= should copy match_results::position)
Tim Shen [Sat, 13 Dec 2014 22:19:18 +0000 (22:19 +0000)]
re PR libstdc++/64239 (regex_iterator::operator= should copy match_results::position)

PR libstdc++/64239
* include/bits/regex.h (match_results<>::match_results,
match_results<>::operator=, match_results<>::position,
match_results<>::swap): Remove match_results::_M_in_iterator.
Fix ctor/assign/swap.
* include/bits/regex.tcc: (__regex_algo_impl<>,
regex_iterator<>::operator++): Set match_results::_M_begin as
"start position".
* testsuite/28_regex/iterators/regex_iterator/char/
string_position_01.cc: Test cases.

From-SVN: r218710

9 years agoPost-Urbana updates to Library Fundamentals v1.
Jonathan Wakely [Sat, 13 Dec 2014 20:44:06 +0000 (20:44 +0000)]
Post-Urbana updates to Library Fundamentals v1.

* include/experimental/any (any): Remove allocator support and update
feature-testing macro.
* include/experimental/functional: Update feature-testing macro.
* include/experimental/optional (optional::_M_get()): Add constexpr.
(optional::operator*(), optional::value()): Overload and add
ref-qualifiers. Update feature-testing macro.
* include/experimental/string_view (basic_string_view::clear): Remove
and update feature-testing macro.
* testsuite/experimental/any/cons/3.cc: Remove.
* testsuite/experimental/any/cons/4.cc: Remove.
* testsuite/experimental/any/misc/any_cast.cc: Remove allocator tests.
* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
* testsuite/experimental/string_view/capacity/1.cc: Don't test clear().

From-SVN: r218709

9 years agore PR target/53513 ([SH] Add support for fpchg insn and improve fenv support)
Oleg Endo [Sat, 13 Dec 2014 13:17:55 +0000 (13:17 +0000)]
re PR target/53513 ([SH] Add support for fpchg insn and improve fenv support)

gcc/testsuite/
PR target/53513
* gcc.target/sh/attr-isr-nosave_low_regs.c: Fix matching of expected
register push/pop sequences.
* gcc.target/sh/attr-isr.c: Likewise.
* gcc.target/sh/attr-isr-trapa.c: Likewise.
* gcc.target/sh/pragma-isr-nosave_low_regs.c: Likewise.
* gcc.target/sh/pragma-isr-trapa.c: Likewise.
* gcc.target/sh/pragma-isr-trapa2.c: Likewise.

From-SVN: r218707

9 years agosp-switch.c: Match zero or more underscores in alt_stack symbol.
Oleg Endo [Sat, 13 Dec 2014 13:02:23 +0000 (13:02 +0000)]
sp-switch.c: Match zero or more underscores in alt_stack symbol.

gcc/testsuite/
* gcc.target/sh/sp-switch.c: Match zero or more underscores in
alt_stack symbol.

From-SVN: r218706

9 years agore PR bootstrap/64023 (r216964 breaks bootstrap on darwin when using gcc as the boots...
Jakub Jelinek [Sat, 13 Dec 2014 11:24:37 +0000 (12:24 +0100)]
re PR bootstrap/64023 (r216964 breaks bootstrap on darwin when using gcc as the bootstrap compiler.)

PR bootstrap/64023
* Makefile.tpl (EXTRA_TARGET_FLAGS): Set STAGE1_LDFLAGS
to POSTSTAGE1_LDFLAGS and STAGE1_LIBS to POSTSTAGE1_LIBS.
Add -B to libstdc++-v3/src/.libs and libstdc++-v3/libsupc++/.libs
to CXX.
* Makefile.in: Regenerated.

From-SVN: r218705

9 years agore PR go/61258 (gccgo: assertion failure go-map-delete.c:37 [GoSmith])
Ian Lance Taylor [Sat, 13 Dec 2014 01:58:46 +0000 (01:58 +0000)]
re PR go/61258 (gccgo: assertion failure go-map-delete.c:37 [GoSmith])

PR go/61258
runtime: Don't crash when deleting zero-sized key.

From-SVN: r218702

9 years agore PR go/61254 (gccgo: spurious "error: slice end must be integer" [GoSmith])
Ian Lance Taylor [Sat, 13 Dec 2014 01:41:49 +0000 (01:41 +0000)]
re PR go/61254 (gccgo: spurious "error: slice end must be integer" [GoSmith])

PR go/61254
compiler: Don't move nil subexpressions into temporaries.

From-SVN: r218701

9 years agotesting: Add testing.MainStart function.
Ian Lance Taylor [Sat, 13 Dec 2014 01:00:49 +0000 (01:00 +0000)]
testing: Add testing.MainStart function.

This patches in the Go 1.4 function, for convenience for
people using the Go 1.4 go tool with mainline gccgo.

From-SVN: r218700

9 years agoruntime: Clear stack pointers for extra G's.
Ian Lance Taylor [Sat, 13 Dec 2014 00:52:20 +0000 (00:52 +0000)]
runtime: Clear stack pointers for extra G's.

Fix an unusual C to Go callback case.  Newly created C threads
call into Go code, forcing the Go code to allocate new M and G
structures.  While executing Go code, the stack is split.  The
Go code then returns.  Returning from a Go callback is treated
as entering a system call, so the G gcstack field is set to
point to the Go stack.  In this case, though, we were called
from a newly created C thread, so we drop the extra M and G
structures.  The C thread then exits.

Then a new C thread calls into Go code, reusing the previously
created M and G.  The Go code requires a larger stack frame,
causing the old stack segment to be unmapped and a new stack
segment allocated.  At this point the gcstack field is
pointing to the old stack segment.

Then a garbage collection occurs.  The garbage collector sees
that the gcstack field is not nil, so it scans it as the first
stack segment.  Unfortunately it points to memory that was
unmapped.  So the program crashes.

The fix is simple: when handling extra G structures created
for callbacks from new C threads, clear the gcstack field.

From-SVN: r218699

9 years agore PR libstdc++/58594 (std::make_shared does not accept const types as parameters)
Jonathan Wakely [Sat, 13 Dec 2014 00:44:17 +0000 (00:44 +0000)]
re PR libstdc++/58594 (std::make_shared does not accept const types as parameters)

PR libstdc++/58594
* include/bits/shared_ptr_base.h: Real fix for cv-qualified types.

From-SVN: r218698

9 years agoDaily bump.
GCC Administrator [Sat, 13 Dec 2014 00:16:40 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r218697

9 years agoerror.c (gfc_error): Add variant which takes a va_list.
Tobias Burnus [Fri, 12 Dec 2014 23:12:06 +0000 (00:12 +0100)]
error.c (gfc_error): Add variant which takes a va_list.

2014-12-13  Tobias Burnus  <burnus@net-b.de>
            Manuel López-Ibáñez  <manu@gcc.gnu.org>

fortran/
        * error.c (gfc_error): Add variant which takes a va_list.
        (gfc_notify_std): Convert to common diagnostic.
        * array.c: Use %qs, %<...%> in more gfc_error calls and
        for gfc_notify_std.
        * check.c: Ditto.
        * data.c: Ditto.
        * decl.c: Ditto.
        * expr.c: Ditto.
        * interface.c: Ditto.
        * intrinsic.c: Ditto.
        * io.c: Ditto.
        * match.c: Ditto.
        * matchexp.c: Ditto.
        * module.c: Ditto.
        * openmp.c: Ditto.
        * parse.c: Ditto.
        * primary.c: Ditto.
        * resolve.c: Ditto.
        * simplify.c: Ditto.
        * symbol.c: Ditto.
        * trans-common.c: Ditto.
        * trans-intrinsic.c: Ditto.

gcc/testsuite/
        * gfortran.dg/realloc_on_assign_21.f90: Update dg-error.
        * gfortran.dg/warnings_are_errors_1.f: Ditto.
        * gfortran.dg/warnings_are_errors_1.f90: Ditto.

Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
From-SVN: r218694

9 years agore PR c++/59240 (ICE in varpool_get_node)
Paolo Carlini [Fri, 12 Dec 2014 22:40:29 +0000 (22:40 +0000)]
re PR c++/59240 (ICE in varpool_get_node)

2014-12-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/59240
* g++.dg/torture/pr59240.C: New.

From-SVN: r218693

9 years agore PR c++/59628 (ICE with invalid OpenMP "declare reduction" clause)
Paolo Carlini [Fri, 12 Dec 2014 21:50:12 +0000 (21:50 +0000)]
re PR c++/59628 (ICE with invalid OpenMP "declare reduction" clause)

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

PR c++/59628
* semantics.c (finish_omp_reduction_clause): Early return true
if DECL_SAVED_TREE (id) is NULL_TREE.

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

PR c++/59628
* g++.dg/gomp/pr59628.C: New.

From-SVN: r218692

9 years agore PR libstdc++/58594 (std::make_shared does not accept const types as parameters)
Jonathan Wakely [Fri, 12 Dec 2014 21:05:35 +0000 (21:05 +0000)]
re PR libstdc++/58594 (std::make_shared does not accept const types as parameters)

PR libstdc++/58594
* include/bits/shared_ptr_base.h: Cast away cv-quals.
* testsuite/20_util/shared_ptr/creation/58594-no-rtti.cc: New.
* testsuite/20_util/shared_ptr/creation/private.cc: Make allocator
rebindable so test passes with -fno-rtti.

From-SVN: r218691

9 years agore PR c++/61924 ([C++11] ICE in instantiate_template_1, at cp/pt.c:15618)
Paolo Carlini [Fri, 12 Dec 2014 20:30:11 +0000 (20:30 +0000)]
re PR c++/61924 ([C++11] ICE in instantiate_template_1, at cp/pt.c:15618)

2014-12-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/61924
* g++.dg/cpp0x/pr61924.C: New.

From-SVN: r218690

9 years agonvptx: Define valid ASM_OUTPUT_ALIGN.
Thomas Schwinge [Fri, 12 Dec 2014 20:14:10 +0000 (21:14 +0100)]
nvptx: Define valid ASM_OUTPUT_ALIGN.

gcc/
* config/nvptx/nvptx.h (ASM_OUTPUT_ALIGN): Define as a C statment.

    gcc/doc/tm.texi:@defmac ASM_OUTPUT_ALIGN (@var{stream}, @var{power})
    gcc/doc/tm.texi-A C statement to output to the stdio stream @var{stream} an assembler
    gcc/doc/tm.texi-command to advance the location counter to a multiple of 2 to the
    gcc/doc/tm.texi-@var{power} bytes.  @var{power} will be a C expression of type @code{int}.
    gcc/doc/tm.texi-@end defmac

    gcc/config/nvptx/nvptx.h:#define ASM_OUTPUT_ALIGN(FILE, POWER)

"Empty" is not a C statement, and so in code such as:

    gcc/dwarf2out.c-              if (lsda_encoding == DW_EH_PE_aligned)
    gcc/dwarf2out.c:                ASM_OUTPUT_ALIGN (asm_out_file, floor_log2 (PTR_SIZE));
    gcc/dwarf2out.c-              dw2_asm_output_data (size_of_encoded_value (lsda_encoding), 0,
    gcc/dwarf2out.c-                                   "Language Specific Data Area (none)");

    gcc/varasm.c-      if (align > BITS_PER_UNIT)
    gcc/varasm.c:        ASM_OUTPUT_ALIGN (asm_out_file, floor_log2 (align / BITS_PER_UNIT));
    gcc/varasm.c-      assemble_variable_contents (decl, name, dont_output_data);

    gcc/varasm.c-  if (align > 0)
    gcc/varasm.c:    ASM_OUTPUT_ALIGN (asm_out_file, align);
    gcc/varasm.c-
    gcc/varasm.c-  targetm.asm_out.internal_label (asm_out_file, "LTRAMP", 0);

    gcc/varasm.c-      if (align > BITS_PER_UNIT)
    gcc/varasm.c:        ASM_OUTPUT_ALIGN (asm_out_file, floor_log2 (align / BITS_PER_UNIT));
    gcc/varasm.c-      assemble_constant_contents (exp, XSTR (symbol, 0), align);

..., GCC warns:

    [...]/source-gcc/gcc/dwarf2out.c: In function 'void output_fde(dw_fde_ref, bool, bool, char*, int, char*, bool, int)':
    [...]/source-gcc/gcc/dwarf2out.c:665:3: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
       ASM_OUTPUT_ALIGN (asm_out_file, floor_log2 (PTR_SIZE));
       ^

    [...]/source-gcc/gcc/varasm.c: In function 'void assemble_variable(tree, int, int, int)':
    [...]/source-gcc/gcc/varasm.c:2217:2: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
      ASM_OUTPUT_ALIGN (asm_out_file, floor_log2 (align / BITS_PER_UNIT));
      ^
    [...]/source-gcc/gcc/varasm.c: In function 'rtx_def* assemble_trampoline_template()':
    [...]/source-gcc/gcc/varasm.c:2603:5: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
         ASM_OUTPUT_ALIGN (asm_out_file, align);
         ^
    [...]/source-gcc/gcc/varasm.c: In function 'void output_constant_def_contents(rtx)':
    [...]/source-gcc/gcc/varasm.c:3413:2: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
      ASM_OUTPUT_ALIGN (asm_out_file, floor_log2 (align / BITS_PER_UNIT));
      ^

Also, "use" the values, to get rid of that one:

    [...]/source-gcc/gcc/final.c: In function 'rtx_insn* final_scan_insn(rtx_insn*, FILE*, int, int, int*)':
    [...]/source-gcc/gcc/final.c:2450:12: warning: variable 'log_align' set but not used [-Wunused-but-set-variable]
            int log_align;
                ^

From-SVN: r218689

9 years agore PR rtl-optimization/64110 (ICE: Max. number of generated reload insns per insn...
Vladimir Makarov [Fri, 12 Dec 2014 20:11:10 +0000 (20:11 +0000)]
re PR rtl-optimization/64110 (ICE: Max. number of generated reload insns per insn is achieved (90))

2014-12-12  Vladimir Makarov  <vmakarov@redhat.com>

PR target/64110
* lra-constraints.c (process_alt_operands): Refuse alternative
when reload pseudo of given class can not hold value of given
mode.

2014-12-12  Vladimir Makarov  <vmakarov@redhat.com>

PR target/64110
* gcc.target/i386/pr64110.c: New.

From-SVN: r218688

9 years agoOpenMP target nesting tests.
Thomas Schwinge [Fri, 12 Dec 2014 20:01:29 +0000 (21:01 +0100)]
OpenMP target nesting tests.

gcc/testsuite/
* c-c++-common/gomp/nesting-1.c: New file.
* c-c++-common/gomp/nesting-warn-1.c: Likewise.

From-SVN: r218687

9 years agoA bit of walk_gimple_op maintenance.
Thomas Schwinge [Fri, 12 Dec 2014 20:01:18 +0000 (21:01 +0100)]
A bit of walk_gimple_op maintenance.

* gimple-walk.c (walk_gimple_op) <GIMPLE_OMP_FOR>: Also check
intermediate walk_tree results for for_incr.
<GIMPLE_OMP_TARGET>: Walk child_fn and data_arg, too.
<GIMPLE_OMP_CRITICAL, GIMPLE_OMP_ATOMIC_STORE>: Pretty printing.

From-SVN: r218686

9 years agopt.c (do_auto_deduction): In direct-init context, { x } deduces from x.
Jason Merrill [Fri, 12 Dec 2014 17:52:28 +0000 (12:52 -0500)]
pt.c (do_auto_deduction): In direct-init context, { x } deduces from x.

N3922
* pt.c (do_auto_deduction): In direct-init context, { x } deduces
from x.

From-SVN: r218685

9 years agocp-tree.h (NAMESPACE_ABI_TAG): New.
Jason Merrill [Fri, 12 Dec 2014 17:52:21 +0000 (12:52 -0500)]
cp-tree.h (NAMESPACE_ABI_TAG): New.

* cp-tree.h (NAMESPACE_ABI_TAG): New.
* name-lookup.c (handle_namespace_attrs): Set it.
* class.c (check_tag): Split out from find_abi_tags_r.
(find_abi_tags_r): Also check namespace tags.
(mark_type_abi_tags): Also mark namespace tags.

From-SVN: r218684

9 years agore PR c++/63996 (Infinite loop in invalid C++14 constexpr fn)
Kai Tietz [Fri, 12 Dec 2014 17:17:58 +0000 (18:17 +0100)]
re PR c++/63996 (Infinite loop in invalid C++14 constexpr fn)

PR c++/63996
* g++.dg/cpp1y/pr63996.C: New file.

From-SVN: r218683

9 years agore PR c++/63996 (Infinite loop in invalid C++14 constexpr fn)
Kai Tietz [Fri, 12 Dec 2014 17:14:54 +0000 (18:14 +0100)]
re PR c++/63996 (Infinite loop in invalid C++14 constexpr fn)

PR c++/63996
* constexpr.c (cxx_eval_loop_expr): Don't loop
endless on none-constant expression.

From-SVN: r218682

9 years ago* g++.dg/ubsan/cxx1y-vla.C: Remove.
Jason Merrill [Fri, 12 Dec 2014 16:43:21 +0000 (11:43 -0500)]
* g++.dg/ubsan/cxx1y-vla.C: Remove.

From-SVN: r218681

9 years agore PR c++/61402 (-Wsequence-point doesn't notice unsequenced lambda init and function...
Jason Merrill [Fri, 12 Dec 2014 16:43:16 +0000 (11:43 -0500)]
re PR c++/61402 (-Wsequence-point doesn't notice unsequenced lambda init and function argument)

PR c++/61402
* lambda.c (add_capture): Don't pass a dependent type to
variably_modified_type_p.

From-SVN: r218680

9 years agore PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIO...
Jonathan Wakely [Fri, 12 Dec 2014 15:58:49 +0000 (15:58 +0000)]
re PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIONS to determine whether exceptions are available)

PR libstdc++/64276
* doc/doxygen/user.cfg.in: Define __cpp_exceptions and __cpp_rtti.
* doc/html/manual/using_exceptions.html: Regenerate.
* doc/xml/manual/using_exceptions.xml: Use SD-6 feature-testing
macros, __cpp_exceptions and __cpp_rtti, instead of __EXCEPTIONS and
__GXX_RTTI.
* include/bits/c++config: Likewise.
* include/bits/locale_classes.tcc: Likewise.
* include/bits/shared_ptr.h: Likewise.
* include/bits/shared_ptr_base.h: Likewise.
* include/debug/formatter.h: Likewise.
* include/experimental/any: Likewise.
* include/ext/rope: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/std/functional: Likewise.
* include/tr1/functional: Likewise.
* include/tr1/shared_ptr.h: Likewise.
* libsupc++/eh_call.cc: Likewise.
* libsupc++/eh_personality.cc: Likewise.
* libsupc++/exception_defines.h: Likewise.
* libsupc++/exception_ptr.h: Likewise.
* libsupc++/guard.cc: Likewise.
* libsupc++/pbase_type_info.cc: Likewise.
* libsupc++/pointer_type_info.cc: Likewise.
* libsupc++/vterminate.cc: Likewise.
* src/c++11/thread.cc: Likewise.

From-SVN: r218679

9 years agore PR middle-end/64182 (wide-int rounding division is broken)
Richard Sandiford [Fri, 12 Dec 2014 15:46:57 +0000 (15:46 +0000)]
re PR middle-end/64182 (wide-int rounding division is broken)

gcc/
PR middle-end/64182
* wide-int.h (wi::div_round, wi::mod_round): Fix rounding of tied
cases.
* double-int.c (div_and_round_double): Fix handling of unsigned
cases.  Use same rounding approach as wide-int.h.

gcc/testsuite/
2014-xx-xx  Richard Sandiford  <richard.sandiford@arm.com>
    Joseph Myers  <joseph@codesourcery.com>

PR middle-end/64182
* gcc.dg/plugin/wide-int-test-1.c,
gcc.dg/plugin/wide-int_plugin.c: New test.
* gcc.dg/plugin/plugin.exp: Register it.
* gnat.dg/round_div.adb: New test.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r218678

9 years agore PR libstdc++/64241 (make_exception_ptr returns garbage with -fno-exceptions)
Jonathan Wakely [Fri, 12 Dec 2014 15:10:08 +0000 (15:10 +0000)]
re PR libstdc++/64241 (make_exception_ptr returns garbage with -fno-exceptions)

PR libstdc++/64241
* libsupc++/exception_ptr.h: Return empty object when exceptions are
disabled.
* testsuite/18_support/exception_ptr/64241.cc: New.

From-SVN: r218675

9 years agore PR middle-end/64274 ([ARM] gcc.target/arm/fixed-point-exec.c ICE in fold_binary_loc)
Marek Polacek [Fri, 12 Dec 2014 14:02:37 +0000 (14:02 +0000)]
re PR middle-end/64274 ([ARM] gcc.target/arm/fixed-point-exec.c ICE in fold_binary_loc)

PR middle-end/64274
* fold-const.c (fold_binary_loc): Add ANY_INTEGRAL_TYPE_P check.

From-SVN: r218671

9 years agostl_iterator.h (make_reverse_iterator): LWG DR 2285.
Jonathan Wakely [Fri, 12 Dec 2014 13:35:55 +0000 (13:35 +0000)]
stl_iterator.h (make_reverse_iterator): LWG DR 2285.

* include/bits/stl_iterator.h (make_reverse_iterator): LWG DR 2285.
* include/std/tuple: Add feature-test macro.
* testsuite/24_iterators/reverse_iterator/make.cc: New.

From-SVN: r218670

9 years agore PR tree-optimization/64269 (ICE with -O3 enabled on Ubuntu 14.04)
Jakub Jelinek [Fri, 12 Dec 2014 13:32:16 +0000 (14:32 +0100)]
re PR tree-optimization/64269 (ICE with -O3 enabled on Ubuntu 14.04)

PR tree-optimization/64269
* tree-ssa-forwprop.c (simplify_builtin_call): Bail out if
len2 or diff are too large.

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

From-SVN: r218669

9 years agore PR tree-optimization/64280 (ICE in replace_uses_by, at tree-cfg.c:1789)
Richard Biener [Fri, 12 Dec 2014 13:26:15 +0000 (13:26 +0000)]
re PR tree-optimization/64280 (ICE in replace_uses_by, at tree-cfg.c:1789)

2014-12-12  Richard Biener  <rguenther@suse.de>

PR middle-end/64280
* tree-cfg.c (replace_uses_by): Guard assert properly.

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

From-SVN: r218668

9 years agoAdd use of zex instruction for moxie port
Anthony Green [Fri, 12 Dec 2014 12:52:45 +0000 (12:52 +0000)]
Add use of zex instruction for moxie port

From-SVN: r218666

9 years agore PR rtl-optimization/64255 (failures with -O2 optimization on i >= 0 ? (unsigned...
Jakub Jelinek [Fri, 12 Dec 2014 12:43:34 +0000 (13:43 +0100)]
re PR rtl-optimization/64255 (failures with -O2 optimization on i >= 0 ? (unsigned long) i : - (unsigned long) i)

PR rtl-optimization/64255
* gcc.c-torture/execute/pr64255.c: New test.

PR rtl-optimization/64260
* gcc.c-torture/execute/pr64260.c: New test.

From-SVN: r218665