]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

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

From-SVN: r218725

10 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

10 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

10 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

10 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

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

From-SVN: r218714

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

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

From-SVN: r218697

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 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

10 years agoAdd load of target-utils.exp to libatomic, libitm, libvtv, libgo testsuite drivers
Kyrylo Tkachov [Fri, 12 Dec 2014 12:00:01 +0000 (12:00 +0000)] 
Add load of target-utils.exp to libatomic, libitm, libvtv, libgo testsuite drivers

* testsuite/lib/libatomic.exp: Load target-utils.exp

* testsuite/lib/libitm.exp: Load target-utils.exp.
Move load of target-supports.exp earlier.

* testsuite/lib/libvtv.exp: Load target-utils.exp

From-SVN: r218664

10 years agoreal.h (HONOR_SNANS, [...]): Replace macros with 3 overloaded declarations.
Marc Glisse [Fri, 12 Dec 2014 10:46:00 +0000 (11:46 +0100)] 
real.h (HONOR_SNANS, [...]): Replace macros with 3 overloaded declarations.

2014-12-12  Marc Glisse  <marc.glisse@inria.fr>

* real.h (HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
HONOR_SIGN_DEPENDENT_ROUNDING): Replace macros with 3 overloaded
declarations.
* real.c (HONOR_NANS): Fix indentation.
(HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
HONOR_SIGN_DEPENDENT_ROUNDING): Define three overloads.
* builtins.c (fold_builtin_cproj, fold_builtin_signbit,
fold_builtin_fmin_fmax, fold_builtin_classify): Simplify argument
of HONOR_*.
* fold-const.c (operand_equal_p, fold_comparison, fold_binary_loc):
Likewise.
* gimple-fold.c (gimple_val_nonnegative_real_p): Likewise.
* ifcvt.c (noce_try_move, noce_try_minmax, noce_try_abs): Likewise.
* omp-low.c (omp_reduction_init): Likewise.
* rtlanal.c (may_trap_p_1): Likewise.
* simplify-rtx.c (simplify_const_relational_operation): Likewise.
* tree-ssa-dom.c (record_equality, record_edge_info): Likewise.
* tree-ssa-phiopt.c (value_replacement, abs_replacement): Likewise.
* tree-ssa-reassoc.c (eliminate_using_constants): Likewise.
* tree-ssa-uncprop.c (associate_equivalences_with_edges): Likewise.

From-SVN: r218663

10 years ago[libgomp][testsuite] Explicitly include target-utils.exp (fix libgomp testsuite ERROR)
Kyrylo Tkachov [Fri, 12 Dec 2014 10:31:44 +0000 (10:31 +0000)] 
[libgomp][testsuite] Explicitly include target-utils.exp (fix libgomp testsuite ERROR)

* testsuite/lib/libgomp.exp: Load target-utils.exp.
Move load of target-supportes.exp earlier.

From-SVN: r218662

10 years ago[libstdc++][testsuite] Mark as UNSUPPORTED tests that don't fit into tiny memory...
Kyrylo Tkachov [Fri, 12 Dec 2014 09:36:35 +0000 (09:36 +0000)] 
[libstdc++][testsuite] Mark as UNSUPPORTED tests that don't fit into tiny memory model

* testsuite/lib/libstdc++.exp: Include target-utils.exp.
(v3_target_compile): Check if test is unsupported.
(v3_target_compile_as_c): Likewise.

From-SVN: r218661

10 years agoipa-inline.c (ipa_inline): Fix condition on when TODO_remove_unreachable_functions...
Jan Hubicka [Fri, 12 Dec 2014 09:05:56 +0000 (10:05 +0100)] 
ipa-inline.c (ipa_inline): Fix condition on when TODO_remove_unreachable_functions is needed.

* ipa-inline.c (ipa_inline): Fix condition on when
TODO_remove_unreachable_functions is needed.

From-SVN: r218660

10 years agoipa-devirt.c (possible_polymorphic_call_targets): Return early if otr_type has no...
Jan Hubicka [Fri, 12 Dec 2014 08:46:56 +0000 (09:46 +0100)] 
ipa-devirt.c (possible_polymorphic_call_targets): Return early if otr_type has no BINFO.

* ipa-devirt.c (possible_polymorphic_call_targets): Return early
if otr_type has no BINFO.

From-SVN: r218659

10 years agore PR rtl-optimization/63917 (r217646 caused many failures)
Zhenqiang Chen [Fri, 12 Dec 2014 05:51:19 +0000 (05:51 +0000)] 
re PR rtl-optimization/63917 (r217646 caused many failures)

2014-12-12  Zhenqiang Chen  <zhenqiang.chen@arm.com>

PR rtl-optimization/63917
* ifcvt.c (cc_in_cond): New function.
(end_ifcvt_sequence): Make sure new generated insns do not clobber CC.
(noce_process_if_block, check_cond_move_block): Check CC references.

testsuite/ChangeLog:
2014-12-12  Zhenqiang Chen  <zhenqiang.chen@arm.com>

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

From-SVN: r218658

10 years agoldp_stp_2.c: Make test less vulnerable.
Bin Cheng [Fri, 12 Dec 2014 04:45:58 +0000 (04:45 +0000)] 
ldp_stp_2.c: Make test less vulnerable.

gcc/testsuite
* gcc.target/aarch64/ldp_stp_2.c: Make test less vulnerable.
* gcc.target/aarch64/ldp_stp_3.c: Ditto.

From-SVN: r218657

10 years ago* c-cppbuiltin.c (c_cpp_builtins): Enable C++14 __cpp_constexpr.
Jason Merrill [Fri, 12 Dec 2014 03:49:19 +0000 (22:49 -0500)] 
* c-cppbuiltin.c (c_cpp_builtins): Enable C++14 __cpp_constexpr.

From-SVN: r218656

10 years agoRemove N3639 "array of runtime length" from -std=c++14.
Jason Merrill [Fri, 12 Dec 2014 03:49:13 +0000 (22:49 -0500)] 
Remove N3639 "array of runtime length" from -std=c++14.

gcc/cp/
* decl.c (compute_array_index_type): VLAs are not part of C++14.
(create_array_type_for_decl, grokdeclarator): Likewise.
* lambda.c (add_capture): Likewise.
* pt.c (tsubst): Likewise.
* rtti.c (get_tinfo_decl): Likewise.
* semantics.c (finish_decltype_type): Likewise.
* typeck.c (cxx_sizeof_or_alignof_type): Likewise.
(cp_build_addr_expr_1): Likewise.
* init.c (build_vec_init): Don't throw bad_array_length.
gcc/c-family/
* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_runtime_arrays if
we aren't complaining about VLAs.
libstdc++-v3/
* libsupc++/new (bad_array_length): Move...
* bad_array_length.cc: ...here.
* cxxabi.h, eh_aux_runtime.cc (__cxa_throw_bad_array_new_length): Also
move to bad_array_length.cc.

* c-cppbuiltin.c (c_cpp_builtins): Define __cpp_runtime_arrays if
we aren't complaining about VLAs.

From-SVN: r218655

10 years agore PR c++/64248 (Error: declarator-id missing; using reserved word ‘__FUNCTION__’)
Jason Merrill [Fri, 12 Dec 2014 03:49:03 +0000 (22:49 -0500)] 
re PR c++/64248 (Error: declarator-id missing; using reserved word ‘__FUNCTION__’)

PR c++/64248
Revert:
* parser.c (cp_parser_unqualified_id): Handle __func__ here.
(cp_parser_primary_expression): Not here.

From-SVN: r218654

10 years agore PR c++/57510 (subobjects not destroyed when exception thrown during list-initializ...
Jason Merrill [Fri, 12 Dec 2014 03:48:55 +0000 (22:48 -0500)] 
re PR c++/57510 (subobjects not destroyed when exception thrown during list-initialization)

PR c++/57510
* typeck2.c (split_nonconstant_init_1): Handle arrays here.
(store_init_value): Not here.
(split_nonconstant_init): Look through TARGET_EXPR.  No longer static.
* cp-tree.h: Declare split_nonconstant_init.
* call.c (set_up_extended_ref_temp): Use split_nonconstant_init.

From-SVN: r218653

10 years agoAdjust the comment in contrib/download_prerequisties.
Chung-Ju Wu [Fri, 12 Dec 2014 03:23:16 +0000 (03:23 +0000)] 
Adjust the comment in contrib/download_prerequisties.

contrib/
* download_prerequisites: Modify the comment for GRAPHITE_LOOP_OPT.

From-SVN: r218652

10 years agoDaily bump.
GCC Administrator [Fri, 12 Dec 2014 00:16:29 +0000 (00:16 +0000)] 
Daily bump.

From-SVN: r218651

10 years agoaarch64-protos.h (tune_params): Add align field.
Andrew Pinski [Thu, 11 Dec 2014 23:11:03 +0000 (23:11 +0000)] 
aarch64-protos.h (tune_params): Add align field.

2014-12-11  Andrew Pinski  <apinski@cavium.com>

        * config/aarch64/aarch64-protos.h (tune_params): Add align field.
        * config/aarch64/aarch64.c (generic_tunings): Specify align.
        (cortexa53_tunings): Likewise.
        (cortexa57_tunings): Likewise.
        (thunderx_tunings): Likewise.
        (aarch64_override_options): Set align_loops, align_jumps,
        align_functions based on what the tuning struct.

From-SVN: r218645

10 years ago* doc/md.texi (Insn Lengths): Fix description of (pc).
Eric Botcazou [Thu, 11 Dec 2014 22:37:56 +0000 (22:37 +0000)] 
* doc/md.texi (Insn Lengths): Fix description of (pc).

From-SVN: r218642

10 years agobuiltin-arith-overflow-1.c (fn2): Take signed char.
Eric Botcazou [Thu, 11 Dec 2014 22:16:09 +0000 (22:16 +0000)] 
builtin-arith-overflow-1.c (fn2): Take signed char.

* gcc.dg/builtin-arith-overflow-1.c (fn2): Take signed char.
(fn3): Likewise.

From-SVN: r218641

10 years agore PR ipa/61324 (ICE: SIGSEGV at ipa-comdats.c:321 with -fno-use-cxa-atexit -fkeep...
Jan Hubicka [Thu, 11 Dec 2014 21:48:48 +0000 (22:48 +0100)] 
re PR ipa/61324 (ICE: SIGSEGV at ipa-comdats.c:321 with -fno-use-cxa-atexit -fkeep-inline-functions)

PR ipa/61324
* testsuite/g++.dg/pr61324.C: New testcase by Trevor Saunders.
* testsuite/g++.dg/tm/pr51411-2.C: Update se the extern function is
not eliminated early.
* testsuite/gcc.target/i386/pr57756.c: Turn extern inline into static
inline.

* passes.c (execute_todo): Update call of remove_unreachable_nodes.
* ipa-chkp.c (chkp_produce_thunks): Use TODO_remove_functions.
* cgraphunit.c (symbol_table::process_new_functions): Add
IPA_SSA_AFTER_INLINING.
(ipa_passes): Update call of remove_unreachable_nodes.
(symbol_table::compile): Remove call of remove_unreachable_nodes.
* ipa-inline.c (inline_small_functions): Do not ICE with
-flto-partition=none
(ipa_inline): Update symtab->state; fix formatting
update call of remove_unreachable_nodes.
* cgraphclones.c (symbol_table::materialize_all_clones): Likewise.
* cgraph.h (enum symtab_state): Add IPA_SSA_AFTER_INLINING.
(remove_unreachable_nodes): Update.
* ipa.c (process_references): Keep external references only
when optimizing.
(walk_polymorphic_call_targets): Keep possible polymorphic call
target only when devirtualizing.
(symbol_table::remove_unreachable_nodes): Remove BEFORE_INLINING_P
parameter.
(ipa_single_use): Update comment.
* ipa-pure-const.c (cdtor_p): New function.
(propagate_pure_const): Track if some cdtor was turned pure/const.
(execute): Return TODO_remove_functions if needed.
* ipa-comdats.c (ipa_comdats): Update comment.

* lto.c (read_cgraph_and_symbols): Update call of
remove_unreachable_nodes.
(do_whole_program_analysis): Remove call of
symtab->remove_unreachable_nodes

From-SVN: r218640

10 years agodwarf2out.c (gen_lexical_block_die): Remove unused `depth' parameter.
Aldy Hernandez [Thu, 11 Dec 2014 19:13:57 +0000 (19:13 +0000)] 
dwarf2out.c (gen_lexical_block_die): Remove unused `depth' parameter.

* dwarf2out.c (gen_lexical_block_die): Remove unused `depth'
parameter.
(gen_inlined_subroutine_die): Same.
(gen_block_die): Same.
(decls_for_scope): Same.

From-SVN: r218639

10 years ago3.cc: Only use a thread_local when __cxa_thread_atexit_impl is available.
Jonathan Wakely [Thu, 11 Dec 2014 17:58:22 +0000 (17:58 +0000)] 
3.cc: Only use a thread_local when __cxa_thread_atexit_impl is available.

* testsuite/30_threads/condition_variable/members/3.cc: Only use
a thread_local when __cxa_thread_atexit_impl is available.

From-SVN: r218638

10 years agoMove changelog entries from r218617 from gcc/ChangeLog to gcc/jit/ChangeLog
David Malcolm [Thu, 11 Dec 2014 17:55:22 +0000 (17:55 +0000)] 
Move changelog entries from r218617 from gcc/ChangeLog to gcc/jit/ChangeLog

From-SVN: r218637

10 years agoDocument gccjit::context::set_str_option
David Malcolm [Thu, 11 Dec 2014 17:50:56 +0000 (17:50 +0000)] 
Document gccjit::context::set_str_option

gcc/jit/ChangeLog:
* docs/cp/topics/contexts.rst (gccjit::context::set_str_option):
Document new function.
* docs/_build/texinfo/libgccjit.texi: Regenerate.

From-SVN: r218636

10 years ago[AArch64]Use AARCH64_FL_FPSIMD flags for all cores in aarch64-cores.def
Renlin Li [Thu, 11 Dec 2014 17:30:39 +0000 (17:30 +0000)] 
[AArch64]Use AARCH64_FL_FPSIMD flags for all cores in aarch64-cores.def

gcc/

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

* config/aarch64/aarch64-cores.def: Change all AARCH64_FL_FPSIMD to
AARCH64_FL_FOR_ARCH8.
* config/aarch64/aarch64.c (all_cores): Use FLAGS from
aarch64-cores.def file only.

From-SVN: r218635

10 years agore PR tree-optimization/42108 (50% performance regression)
Richard Biener [Thu, 11 Dec 2014 15:52:47 +0000 (15:52 +0000)] 
re PR tree-optimization/42108 (50% performance regression)

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

PR tree-optimization/42108
* trans-stmt.c (gfc_trans_do): Execute the division computing
countm1 before the loop entry check.

* gfortran.dg/pr42108.f90: Amend.

From-SVN: r218630

10 years agotypeck.c (maybe_warn_about_useless_cast): Remove unnecessary conditional.
Paolo Carlini [Thu, 11 Dec 2014 15:45:32 +0000 (15:45 +0000)] 
typeck.c (maybe_warn_about_useless_cast): Remove unnecessary conditional.

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

* typeck.c (maybe_warn_about_useless_cast): Remove unnecessary
conditional.

From-SVN: r218629

10 years agodo_iterator.f90: Remove bogus dg-warning.
Manuel López-Ibáñez [Thu, 11 Dec 2014 15:28:27 +0000 (15:28 +0000)] 
do_iterator.f90: Remove bogus dg-warning.

gcc/testsuite/ChangeLog:

2014-12-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>

        * gfortran.dg/do_iterator.f90: Remove bogus dg-warning.

From-SVN: r218628

10 years agore PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$ diagn...
Manuel López-Ibáñez [Thu, 11 Dec 2014 15:13:33 +0000 (15:13 +0000)] 
re PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$ diagnostic (pragmas) and color)

gcc/ChangeLog:

2014-12-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* diagnostic.c (diagnostic_action_after_output): Make it extern.
Take diagnostic_t argument instead of diagnostic_info. Count also
DK_WERROR towards max_errors.
(diagnostic_report_diagnostic): Update call according to the above.
(error_recursion): Likewise.
* diagnostic.h (diagnostic_action_after_output): Declare.
* pretty-print.c (pp_formatted_text_data): Delete.
(pp_append_r): Call output_buffer_append_r.
(pp_formatted_text): Call output_buffer_formatted_text.
(pp_last_position_in_text): Call output_buffer_last_position_in_text.
* pretty-print.h (output_buffer_formatted_text): New.
(output_buffer_append_r): New.
(output_buffer_last_position_in_text): New.

gcc/fortran/ChangeLog:

2014-12-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* error.c (pp_error_buffer): New static variable.
(pp_warning_buffer): Make it a pointer.
(gfc_output_buffer_empty_p): New.
(gfc_error_init_1): Call gfc_buffer_error.
(gfc_buffer_error): Do not use pp_warning_buffer.flush_p as the
buffered_p flag.
(gfc_clear_warning): Likewise.
(gfc_warning_check): Call gfc_clear_warning. Only check the new
pp_warning_buffer if the old warning_buffer was empty. Call
diagnostic_action_after_output.
(gfc_error_1): Renamed from gfc_error.
(gfc_error): New.
(gfc_clear_error): Clear also pp_error_buffer.
(gfc_error_flag_test): Check also pp_error_buffer.
(gfc_error_check): Likewise. Only check the new pp_error_buffer
if the old error_buffer was empty.
(gfc_move_output_buffer_from_to): New.
(gfc_push_error): Use it here. Take also an output_buffer as argument.
(gfc_pop_error): Likewise.
(gfc_free_error): Likewise.
(gfc_diagnostics_init): Use XNEW and placement-new to init
pp_error_buffer and pp_warning_buffer. Set flush_p to false for
both pp_warning_buffer and pp_error_buffer.

* Update gfc_push_error, gfc_pop_error and gfc_free_error calls
according to the above changes.
* Use gfc_error_1 for all gfc_error calls that use multiple
locations.
* Use %qs instead of '%s' for many gfc_error calls.

From-SVN: r218627

10 years ago[AArch64] Fix usage of +no in error message for aarch64_parse_extension
Kyrylo Tkachov [Thu, 11 Dec 2014 15:09:01 +0000 (15:09 +0000)] 
[AArch64] Fix usage of +no in error message for aarch64_parse_extension

* config/aarch64/aarch64.c (aarch64_parse_extension): Update error
message to say +no only when removing extension.

From-SVN: r218626

10 years agogen-mul-tables.cc: Add insn-codes.h to include list for generator file.
Andrew MacLeod [Thu, 11 Dec 2014 14:57:00 +0000 (14:57 +0000)] 
gen-mul-tables.cc: Add insn-codes.h to include list for generator file.

2014-12-11  Andrew MacLeod  <amacleod@redhat.com>

* config/tilepro/gen-mul-tables.cc: Add insn-codes.h to include list
for generator file.  Add comment indicating it is a generated file.
* config/tilepro/mul-tables.c: Update generated file.
* config/tilegx/mul-tables.c: Likewise.

From-SVN: r218624

10 years agocombine.c (try_combine): Do not allow combining a PARALLEL I2 with a register move...
Segher Boessenkool [Thu, 11 Dec 2014 14:29:14 +0000 (15:29 +0100)] 
combine.c (try_combine): Do not allow combining a PARALLEL I2 with a register move I3 if that I2 is an asm.

* combine.c (try_combine): Do not allow combining a PARALLEL I2
with a register move I3 if that I2 is an asm.

From-SVN: r218623

10 years ago[ARM] Fix names of some rounding intrinsics, impement vrndx_f32 and vrndxq_f32
Kyrylo Tkachov [Thu, 11 Dec 2014 13:34:22 +0000 (13:34 +0000)] 
[ARM] Fix names of some rounding intrinsics, impement vrndx_f32 and vrndxq_f32

* config/arm/arm_neon.h (vrndqn_f32): Rename to...
(vrndnq_f32): ... this.
(vrndqa_f32): Rename to...
(vrndaq_f32): ... this.
(vrndqp_f32): Rename to...
(vrndpq_f32): ... this.
(vrndqm_f32): Rename to...
(vrndmq_f32): ... this.
(vrndx_f32): New intrinsic.
(vrndxq_f32): Likewise.

* config/arm/arm_neon.h (vrndqn_f32): Rename to...
(vrndnq_f32): ... this.
(vrndqa_f32): Rename to...
(vrndaq_f32): ... this.
(vrndqp_f32): Rename to...
(vrndpq_f32): ... this.
(vrndqm_f32): Rename to...
(vrndmq_f32): ... this.
(vrndx_f32): New intrinsic.
(vrndxq_f32): Likewise.

From-SVN: r218622

10 years agofold-const.c (fold_negate_expr): Add ANY_INTEGRAL_TYPE_P check.
Marek Polacek [Thu, 11 Dec 2014 11:07:58 +0000 (11:07 +0000)] 
fold-const.c (fold_negate_expr): Add ANY_INTEGRAL_TYPE_P check.

* fold-const.c (fold_negate_expr): Add ANY_INTEGRAL_TYPE_P check.
(extract_muldiv_1): Likewise.
(maybe_canonicalize_comparison_1): Likewise.
(fold_comparison): Likewise.
(tree_binary_nonnegative_warnv_p): Likewise.
(tree_binary_nonzero_warnv_p): Likewise.
* gimple-ssa-strength-reduction.c (legal_cast_p_1): Likewise.
* tree-scalar-evolution.c (simple_iv): Likewise.
(scev_const_prop): Likewise.
* tree-ssa-loop-niter.c (expand_simple_operations): Likewise.
* tree-vect-generic.c (expand_vector_operation): Likewise.
* tree.h (ANY_INTEGRAL_TYPE_CHECK): Define.
(ANY_INTEGRAL_TYPE_P): Define.
(TYPE_OVERFLOW_WRAPS, TYPE_OVERFLOW_UNDEFINED, TYPE_OVERFLOW_TRAPS):
Add ANY_INTEGRAL_TYPE_CHECK.
(any_integral_type_check): New function.

From-SVN: r218621

10 years ago[testsuite][1/2] Move ${tool}_check_unsupported_p into separate file
Kyrylo Tkachov [Thu, 11 Dec 2014 09:43:53 +0000 (09:43 +0000)] 
[testsuite][1/2] Move ${tool}_check_unsupported_p into separate file

* lib/target-utils.exp: New file.
* lib/gcc-defs.exp (${tool}_check_unsupported_p): Delete.
Include target-utils.exp.
* lib/objc.exp: Likewise.
* lib/mike-gcc.exp: Load target-utils.exp.
* lib/mike-g++.exp: Likewise.
* lib/go-torture.exp: Likewise.
* lib/fortran-torture.exp: Likewise.
* lib/c-torture.exp: Likewise.

From-SVN: r218620

10 years agodiagnostic.c (get_terminal_width): Renamed from
Tobias Burnus [Thu, 11 Dec 2014 08:20:24 +0000 (09:20 +0100)] 
diagnostic.c (get_terminal_width): Renamed from

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

gcc/
        * diagnostic.c (get_terminal_width): Renamed from
        * getenv_columns,
        removed static, and additionally use ioctl to get width.
        (diagnostic_set_caret_max_width): Update call.
        * diagnostic.h (get_terminal_width): Add prototype.
        * opts.c (print_specific_help): Use it for x_help_columns.
        * doc/invoke.texi (fdiagnostics-show-caret): Document how the
        width is set.

gcc/fortran/
        * error.c (gfc_get_terminal_width): Renamed from
        get_terminal_width and use same-named common function.
        (gfc_error_init_1): Update call.

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

10 years agoxvasprintf.c: New file.
Uros Bizjak [Thu, 11 Dec 2014 08:15:37 +0000 (09:15 +0100)] 
xvasprintf.c: New file.

* xvasprintf.c: New file.
* vprintf-support.h: Likewise.
* vprintf-support.c: Likewise.
* Makefile.in (CFILES): Add vprintf-support.c, xvasprintf.c.
(REQUIRED_OFILES): Add vprintf-support.$(objext), xvasprintf.$(objext).
(vprintf-support.$(objext), xvasprintf.$(objext)): New targets.
(vasprintf.$(objext)): Depend on $(srcdir)/vprintf-support.h.
* functions.texi: Regenerate.
* vasprintf.c (int_vasprintf): Use libiberty_vprintf_buffer_size.

include/ChangeLog:

* libiberty.h (xvasprintf): Declare.

libcpp/ChangeLog:

* directives.c (cpp_define_formatted): Use xvasprintf.

Co-Authored-By: Ben Elliston <bje@au.ibm.com>
Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
From-SVN: r218618

10 years agoMinor interface cleanups of libgccjit
Ulrich Drepper [Thu, 11 Dec 2014 04:31:52 +0000 (04:31 +0000)] 
Minor interface cleanups of libgccjit

        Minor interface cleanups of libgccjit
        * jit/jit-playback.c (convert_to_dso): Use auto_vec instead
        of automatic array to build up command line.
        * jit/jit-recording.c (recording::context::set_str_option):
        Make copy of the string.
        (recording::context::~context): Free string options.
        * jit/jit-recording.h (recording::context): Adjust type
        of m_str_options member.
        * jit/libgccjit.h: Adjust comment about
        gcc_jit_context_set_str_option parameter begin used after
        the call.
        Update comment now that all interfaces are copy strings
        if necessary.
        * jit/libgccjit++.h (gccjit::context): Add set_str_option
        member function.

From-SVN: r218617

10 years agoDaily bump.
GCC Administrator [Thu, 11 Dec 2014 00:16:24 +0000 (00:16 +0000)] 
Daily bump.

From-SVN: r218616

10 years agogdbhooks.py (class DWDieRefPrinter): New class.
Aldy Hernandez [Wed, 10 Dec 2014 23:16:42 +0000 (23:16 +0000)] 
gdbhooks.py (class DWDieRefPrinter): New class.

* gdbhooks.py (class DWDieRefPrinter): New class.
(build_pretty_printer): Register dw_die_ref's.

From-SVN: r218612

10 years agoAdd march=knl.
Ilya Tocar [Wed, 10 Dec 2014 21:25:12 +0000 (21:25 +0000)] 
Add march=knl.

gcc/

* config.gcc: Support "knl".
* config/i386/driver-i386.c (host_detect_local_cpu): Detect "knl".
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
PROCESSOR_KNL.
* config/i386/i386.c (m_KNL): Define.
(processor_target_table): Add "knl".
(PTA_KNL): Define.
(ix86_issue_rate): Add PROCESSOR_KNL.
(ix86_adjust_cost): Ditto.
(ia32_multipass_dfa_lookahead): Ditto.
(get_builtin_code_for_version): Handle "knl".
(fold_builtin_cpu): Ditto.
* config/i386/i386.h (TARGET_KNL): Define.
(processor_type): Add PROCESSOR_KNL.
* config/i386/i386.md (attr "cpu"): Add knl.
* config/i386/x86-tune.def: Add m_KNL.

gcc/testsuite/

* gcc.target/i386/funcspec-5.c: Test avx512f and knl.

From-SVN: r218610

10 years agoinvoke.texi: (-devirtualize-at-ltrans): Document.
Jan Hubicka [Wed, 10 Dec 2014 21:17:28 +0000 (22:17 +0100)] 
invoke.texi: (-devirtualize-at-ltrans): Document.

* doc/invoke.texi: (-devirtualize-at-ltrans): Document.
* lto-cgraph.c (lto_output_varpool_node): Mark initializer as removed
when it is not streamed to the given ltrans.
(compute_ltrans_boundary): Make code adding all polymorphic
call targets conditional with !flag_wpa || flag_ltrans_devirtualize.
* common.opt (fdevirtualize-at-ltrans): New flag.

From-SVN: r218609