[Bug libfortran/48925] Code cleanup in write_float.def

2016-05-31 Thread jvdelisle at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48925

Jerry DeLisle  changed:

   What|Removed |Added

   Assignee|unassigned at gcc dot gnu.org  |jvdelisle at gcc dot 
gnu.org

--- Comment #4 from Jerry DeLisle  ---
Working on this.

[Bug tree-optimization/71077] [7 Regression] gcc -lto raises ICE

2016-05-31 Thread ppalka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71077

Patrick Palka  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Patrick Palka  ---
Should be fixed.

[Bug tree-optimization/71314] test case gcc.dg/tree-ssa/ssa-thread-14.c fails starting with its introduction in r235653

2016-05-31 Thread ppalka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71314

Patrick Palka  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Patrick Palka  ---
Should be fixed.

[Bug tree-optimization/71314] test case gcc.dg/tree-ssa/ssa-thread-14.c fails starting with its introduction in r235653

2016-05-31 Thread ppalka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71314

--- Comment #2 from Patrick Palka  ---
Author: ppalka
Date: Wed Jun  1 02:37:50 2016
New Revision: 236974

URL: https://gcc.gnu.org/viewcvs?rev=236974=gcc=rev
Log:
Fix PR tree-optimization/71314

gcc/testsuite/ChangeLog:

PR tree-optimization/71314
* gcc.dg/tree-ssa/ssa-thread-14.c: Adjust target selector.  Pass
-mbranch-cost=2.


Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-thread-14.c

[Bug tree-optimization/71077] [7 Regression] gcc -lto raises ICE

2016-05-31 Thread ppalka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71077

--- Comment #3 from Patrick Palka  ---
Author: ppalka
Date: Wed Jun  1 02:36:27 2016
New Revision: 236973

URL: https://gcc.gnu.org/viewcvs?rev=236973=gcc=rev
Log:
Fix PR tree-optimization/71077

gcc/ChangeLog:

PR tree-optimization/71077
* tree-ssa-threadedge.c (simplify_control_stmt_condition_1): In
the combining step, use boolean_false_node and boolean_true_node
as the designated false/true return values.

gcc/testsuite/ChangeLog:

PR tree-optimization/71077
* gcc.dg/tree-ssa/pr71077.c: New test.


Added:
trunk/gcc/testsuite/gcc.dg/tree-ssa/pr71077.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-threadedge.c

[Bug c++/31158] wrong line number in warning: overflow in implicit constant conversion

2016-05-31 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=31158

--- Comment #5 from Martin Sebor  ---
I didn't test carefully enough.  The C front end does the right thing (below)
but as you noted the C++ front end does still suffer from the problem.  Thanks
for double checking me!

$ /build/gcc-trunk-svn/gcc/xgcc -B /build/gcc-trunk-svn/gcc -S -Wall -Wextra
gcc-31158.c
gcc-31158.c: In function ‘main’:
gcc-31158.c:5:21: warning: overflow in implicit constant conversion
[-Woverflow]
 /*   5 */ { 65536U }
 ^~


$ /build/gcc-trunk-svn/gcc/xgcc -B /build/gcc-trunk-svn/gcc -S -Wall -Wextra
-std=c++98 -xc++ gcc-31158.c
gcc-31158.c: In function ‘int main()’:
gcc-31158.c:6:15: warning: narrowing conversion of ‘65535u’ from ‘unsigned int’
to ‘short int’ inside { } is ill-formed in C++11 [-Wnarrowing]
 /*   6 */ };
   ^
gcc-31158.c:6:15: warning: narrowing conversion of ‘65536u’ from ‘unsigned int’
to ‘short int’ inside { } is ill-formed in C++11 [-Wnarrowing]
gcc-31158.c:6:15: warning: overflow in implicit constant conversion
[-Woverflow]

[Bug target/70957] testsuite/gcc.target/powerpc/vsx-elemrev-4.c fails on power7

2016-05-31 Thread wschmidt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70957

Bill Schmidt  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed|2016-05-06 00:00:00 |2016-06-01
 Ever confirmed|0   |1

--- Comment #10 from Bill Schmidt  ---
I've found a system where I can reliably reproduce the problem with both a
bootstrap compiler and a debug compiler.  I'll look into it.

[Bug c++/31158] wrong line number in warning: overflow in implicit constant conversion

2016-05-31 Thread manu at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=31158

Manuel López-Ibáñez  changed:

   What|Removed |Added

 Status|RESOLVED|NEW
 Resolution|FIXED   |---

--- Comment #4 from Manuel López-Ibáñez  ---
(In reply to Martin Sebor from comment #3)
> This problem has been resolved since at least 4.8.3.

??? Yesterday's trunk (using -Wno-narrowing):

prog.cc:6:15: warning: overflow in implicit constant conversion [-Woverflow]
 /*   6 */ };
   ^

It seems still broken, just that -Wnarrowing hides the -Woverflow warning.

Possibly still broken in the C FE. In both FEs, the overflow warnings probably
happen way later than the parsing, and once the parsing is done the locations
of the constants are not available anymore. Thus, until either the warnings are
moved somehow closer to the parsing or the locations of the individual
initializers is remembered somehow, this won't get magically fixed.

Note that for re-using the GCC FEs for tooling, the latter approach would be
much more desirable, but we are so far away from such tooling that I'm not sure
it is even a distant goal.

[Bug c++/57342] [C++11] Warning for narrowing conversion has ugly formatting for floating point number

2016-05-31 Thread manu at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57342
Bug 57342 depends on bug 31158, which changed state.

Bug 31158 Summary: wrong line number in warning: overflow in implicit constant 
conversion
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=31158

   What|Removed |Added

 Status|RESOLVED|NEW
 Resolution|FIXED   |---

[Bug target/71186] PowerPC64: Autovectorised code hits ICE with -O3 -mpower9 -mlra

2016-05-31 Thread meissner at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71186

--- Comment #1 from Michael Meissner  ---
Created attachment 38617
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38617=edit
Proposed patch to fix the problem

[Bug target/70589] PowerPC target attribute/pragma cannot set/disable -mfloat128

2016-05-31 Thread meissner at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70589

Michael Meissner  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2016-05-31
 Ever confirmed|0   |1

[Bug target/71186] PowerPC64: Autovectorised code hits ICE with -O3 -mpower9 -mlra

2016-05-31 Thread meissner at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71186

Michael Meissner  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2016-05-31
 Ever confirmed|0   |1

[Bug jit/71334] gccjit's sized integers have different underlying types than stdint.h

2016-05-31 Thread b.r.longbons at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71334

--- Comment #3 from Ben Longbons  ---
What I'm trying to do is:

* parse some source code from a new language I'm developing.
* Emit that to machine code via some backend (C, GCCJIT, LLVM, firm, etc.)
* Also emit a header file so that the library is callable from C code.

Doing this requires knowing what the underlying type was, in order to have
compatible function declarations. In future I suspect it will also be useful
for C++-compatible mangling, which is also used for
__attribute__((overloaded)).

Functions to get the size/align of any given primitive type would also be very
useful.

Dealing with all the edge-cases with cross-compiling is hard, especially when
the target supports multilib ... even if target-gcc exists, it might not be the
same version, and in general (if the preprocessor doesn't have a way to emit
that info) you can only get 1 bit of information out per fork+exec.

Enumerating possible target info is already way too hard in general, e.g. I
can't even find a way to get the current -m32 or -mx32 target names ... with
clang at least I can inspect the output of `clang -m32 -x c - -S -emit-llvm -o
- <<< ''`

[Bug c++/38677] extern template declaration accepted after explicit instantiation

2016-05-31 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=38677

Martin Sebor  changed:

   What|Removed |Added

   Keywords||accepts-invalid
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-05-31
 Ever confirmed|0   |1
  Known to fail||4.3.1, 4.9.3, 5.3.0, 6.1.0,
   ||7.0

--- Comment #1 from Martin Sebor  ---
Confirming with all recent versions of GCC.  Both Clang and EDG eccp reject the
test case.

[Bug c++/31158] wrong line number in warning: overflow in implicit constant conversion

2016-05-31 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=31158

Martin Sebor  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to work||4.8.5, 4.9.3, 5.3.0, 6.1.0
 Resolution|--- |FIXED
  Known to fail||4.1.0

--- Comment #3 from Martin Sebor  ---
This problem has been resolved since at least 4.8.3.

[Bug c++/57342] [C++11] Warning for narrowing conversion has ugly formatting for floating point number

2016-05-31 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57342
Bug 57342 depends on bug 31158, which changed state.

Bug 31158 Summary: wrong line number in warning: overflow in implicit constant 
conversion
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=31158

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

[Bug c++/69009] [5/6 Regression] ICE in instantiate_decl, at cp/pt.c:21511

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69009

--- Comment #10 from Jason Merrill  ---
Author: jason
Date: Tue May 31 21:36:34 2016
New Revision: 236953

URL: https://gcc.gnu.org/viewcvs?rev=236953=gcc=rev
Log:
PR c++/60095 - partial specialization of variable templates

PR c++/69515
PR c++/69009
* pt.c (instantiate_template_1): Don't put the partial
specialization in DECL_TI_TEMPLATE.
(partial_specialization_p, impartial_args): Remove.
(regenerate_decl_from_template): Add args parm.
(instantiate_decl): Look up the partial specialization again.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ39a.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ51.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ52.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/pt.c
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ39.C

[Bug c++/71173] [6/7 regression] Qualified name lookup

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71173

--- Comment #4 from Jason Merrill  ---
Author: jason
Date: Tue May 31 21:36:28 2016
New Revision: 236952

URL: https://gcc.gnu.org/viewcvs?rev=236952=gcc=rev
Log:
PR c++/71173 - wrong qualified lookup

PR c++/70522
* cp-tree.h (enum tag_types): Add scope_type.
* parser.c (cp_parser_class_name): Use scope_type.
(prefer_type_arg): Handle scope_type.
(cp_parser_lookup_name): Use prefer_type_arg.
* name-lookup.c (lookup_qualified_name): Change bool is_type_p to
int prefer_type, use lookup_flags.
* name-lookup.h: Adjust.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/lookup/scoped10.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/lookup/scoped9.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/cp-tree.h
branches/gcc-6-branch/gcc/cp/name-lookup.c
branches/gcc-6-branch/gcc/cp/name-lookup.h
branches/gcc-6-branch/gcc/cp/parser.c

[Bug c++/70522] Hidden friend functions block qualified name lookup into nested unnamed namespace

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70522

--- Comment #7 from Jason Merrill  ---
Author: jason
Date: Tue May 31 21:36:28 2016
New Revision: 236952

URL: https://gcc.gnu.org/viewcvs?rev=236952=gcc=rev
Log:
PR c++/71173 - wrong qualified lookup

PR c++/70522
* cp-tree.h (enum tag_types): Add scope_type.
* parser.c (cp_parser_class_name): Use scope_type.
(prefer_type_arg): Handle scope_type.
(cp_parser_lookup_name): Use prefer_type_arg.
* name-lookup.c (lookup_qualified_name): Change bool is_type_p to
int prefer_type, use lookup_flags.
* name-lookup.h: Adjust.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/lookup/scoped10.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/lookup/scoped9.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/cp-tree.h
branches/gcc-6-branch/gcc/cp/name-lookup.c
branches/gcc-6-branch/gcc/cp/name-lookup.h
branches/gcc-6-branch/gcc/cp/parser.c

[Bug c++/71166] [6/7 Regression] ICE with nested constexpr/initializer

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71166

--- Comment #7 from Jason Merrill  ---
Author: jason
Date: Tue May 31 21:36:46 2016
New Revision: 236955

URL: https://gcc.gnu.org/viewcvs?rev=236955=gcc=rev
Log:
PR c++/71166 - constexpr array init

* decl2.c (c_parse_final_cleanups): Don't call fini_constexpr.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp0x/constexpr-array16.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/decl2.c

[Bug c++/69515] partial specialization of variable templates is broken

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69515

--- Comment #7 from Jason Merrill  ---
Author: jason
Date: Tue May 31 21:36:34 2016
New Revision: 236953

URL: https://gcc.gnu.org/viewcvs?rev=236953=gcc=rev
Log:
PR c++/60095 - partial specialization of variable templates

PR c++/69515
PR c++/69009
* pt.c (instantiate_template_1): Don't put the partial
specialization in DECL_TI_TEMPLATE.
(partial_specialization_p, impartial_args): Remove.
(regenerate_decl_from_template): Add args parm.
(instantiate_decl): Look up the partial specialization again.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ39a.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ51.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ52.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/pt.c
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ39.C

[Bug c++/70735] [5/6/7 Regression] problem combining std::function, generic lambdas and static variables

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70735

--- Comment #14 from Jason Merrill  ---
Author: jason
Date: Tue May 31 21:36:16 2016
New Revision: 236950

URL: https://gcc.gnu.org/viewcvs?rev=236950=gcc=rev
Log:
PR c++/70735 - generic lambda and local static variable

* pt.c (tsubst_copy): Just return a local variable from
non-template context.  Don't call rest_of_decl_compilation for
duplicated static locals.
(tsubst_decl): Set DECL_CONTEXT of local static from another
function.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/lambda-generic-static1.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/lambda-generic-static2.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/pt.c

[Bug c++/70584] constexpr variables cannot be used as intrinsic arguments where an immediate is expected

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70584

--- Comment #8 from Jason Merrill  ---
Author: jason
Date: Tue May 31 21:36:22 2016
New Revision: 236951

URL: https://gcc.gnu.org/viewcvs?rev=236951=gcc=rev
Log:
PR c++/70584 - error with parenthesized builtin arg

* cp-gimplify.c (cp_fold_maybe_rvalue): Loop in case cp_fold
returns a decl.
(cp_fold) [INDIRECT_REF]: Call maybe_undo_parenthesized_ref.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/other/i386-10.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/cp-gimplify.c

[Bug c++/71227] [6/7 Regression] template friend function cannot be resolved

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71227

--- Comment #4 from Jason Merrill  ---
Author: jason
Date: Tue May 31 21:36:40 2016
New Revision: 236954

URL: https://gcc.gnu.org/viewcvs?rev=236954=gcc=rev
Log:
PR c++/71227 - specializing hidden friend

* pt.c (check_explicit_specialization): Give better diagnostic about
specializing a hidden friend.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/template/friend62.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/pt.c

[Bug c++/60095] Dubious diagnostics for attempted surrogate call function

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60095

--- Comment #2 from Jason Merrill  ---
Author: jason
Date: Tue May 31 21:36:34 2016
New Revision: 236953

URL: https://gcc.gnu.org/viewcvs?rev=236953=gcc=rev
Log:
PR c++/60095 - partial specialization of variable templates

PR c++/69515
PR c++/69009
* pt.c (instantiate_template_1): Don't put the partial
specialization in DECL_TI_TEMPLATE.
(partial_specialization_p, impartial_args): Remove.
(regenerate_decl_from_template): Add args parm.
(instantiate_decl): Look up the partial specialization again.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ39a.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ51.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ52.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/pt.c
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/var-templ39.C

[Bug ada/71317] Compiling gnat for rtems fails at s-taprop.adb

2016-05-31 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71317

Eric Botcazou  changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |5.4

--- Comment #6 from Eric Botcazou  ---
Thanks for reporting and fixing the problem.

[Bug ada/71317] Compiling gnat for rtems fails at s-taprop.adb

2016-05-31 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71317

--- Comment #5 from Eric Botcazou  ---
Author: ebotcazou
Date: Tue May 31 21:28:26 2016
New Revision: 236949

URL: https://gcc.gnu.org/viewcvs?rev=236949=gcc=rev
Log:
* s-osinte-kfreebsd-gnu.ads (clock_getres): Define.

PR ada/71317
* s-osinte-rtems.ads (clock_getres): Define.

Modified:
branches/gcc-5-branch/gcc/ada/ChangeLog
branches/gcc-5-branch/gcc/ada/s-osinte-kfreebsd-gnu.ads
branches/gcc-5-branch/gcc/ada/s-osinte-rtems.ads

[Bug jit/71334] gccjit's sized integers have different underlying types than stdint.h

2016-05-31 Thread dmalcolm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71334

--- Comment #2 from David Malcolm  ---
For reference, I get this output on x86_64-pc-linux-gnu:

underlying size_t: gcc long unsigned int, gccjit unknown
underlying uint32_t: gcc unsigned int, gccjit unsigned int
underlying uint64_t: gcc long unsigned int, gccjit long long unsigned int

What's happening is that:

(a) gcc_jit_context_get_type returns pointer values
to a type internal to libgccjit (gcc::jit::recording::memento_of_get_type
within jit/jit-recording.[ch]).
The pointer you get back will be the same within a given gcc_jit_context
for a given value of enum gcc_jit_types.

(b) gcc_jit_context_get_int_type looks up the appropriate value for
enum gcc_jit_types and effectively calls gcc_jit_context_get_type on it,
so you get one of the pointer values above.

(c) GCC_JIT_TYPE_SIZE_T is its own value within enum gcc_jit_types, hence you
get a different pointer back.

(d) When the context is compiled, these instances get turned into gcc's "tree"
representation (see jit/jit-playback.c:get_tree_node_for_type), and at this
point, it will be using the same "tree" pointer internally if it's the same
type.   This is all opaque from the POV of the libgccjit client code.

Hopefully this clarifies things.

Is any of this a problem from the point of view of you using the library?  I
know we do some type-checking at the API boundary using pointer comparisons of
gcc_jit_type  * (in recording::type::accepts_writes_from, called from
libgccjit.c:compatible_types).

Hope this is helpful

[Bug libstdc++/71367] New: std::time_get does not implement 'r' or 'p'

2016-05-31 Thread beroset at ieee dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71367

Bug ID: 71367
   Summary: std::time_get does not implement 'r' or 'p'
   Product: gcc
   Version: 5.3.1
Status: UNCONFIRMED
  Severity: minor
  Priority: P3
 Component: libstdc++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: beroset at ieee dot org
  Target Milestone: ---

Created attachment 38616
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38616=edit
Short program demonstrating lack of %r support in std::time_get

The "%r" and "%p" formats don't seem to be supported yet for time_get, even
though they are both supported by time_put.  The %p is supposed to be the
locale's version of "AM" and "PM" (if any) and %r is equivalent to %I:%M:%S  %p
in the POSIX locale.

The compiler version:
Using built-in specs.
COLLECT_GCC=/usr/bin/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/5.3.1/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap
--enable-languages=c,c++,objc,obj-c++,fortran,ada,go,lto --prefix=/usr
--mandir=/usr/share/man --infodir=/usr/share/info
--with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared
--enable-threads=posix --enable-checking=release --enable-multilib
--with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions
--enable-gnu-unique-object --enable-linker-build-id
--with-linker-hash-style=gnu --enable-plugin --enable-initfini-array
--disable-libgcj --with-isl --enable-libmpx --enable-gnu-indirect-function
--with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 5.3.1 20160406 (Red Hat 5.3.1-6) (GCC) 

Attached is a short program illustrated the bug.

[Bug tree-optimization/71366] New: ICE on valid code at -O3 on x86_64-linux-gnu: Segmentation fault

2016-05-31 Thread su at cs dot ucdavis.edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71366

Bug ID: 71366
   Summary: ICE on valid code at -O3 on x86_64-linux-gnu:
Segmentation fault
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: su at cs dot ucdavis.edu
  Target Milestone: ---

The following code causes an ICE when compiled with the current gcc trunk at
-O3 on x86_64-linux-gnu in both 32-bit and 64-bit modes.

It is a regression from 6.1.x. 


$ gcc-trunk -v
Using built-in specs.
COLLECT_GCC=gcc-trunk
COLLECT_LTO_WRAPPER=/usr/local/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../gcc-source-trunk/configure --enable-languages=c,c++,lto
--prefix=/usr/local/gcc-trunk --disable-bootstrap
Thread model: posix
gcc version 7.0.0 20160531 (experimental) [trunk revision 236912] (GCC)
$
$ gcc-trunk -O2 -c small.c
$ gcc-6.1 -O3 -c small.c
$
$ gcc-trunk -O3 -c small.c
small.c: In function ‘fn1’:
small.c:4:1: internal compiler error: Segmentation fault
 fn1 ()
 ^~~
0xbbd02f crash_signal
../../gcc-source-trunk/gcc/toplev.c:333
0xd08d70 vec_safe_length<loop*, va_gc>
../../gcc-source-trunk/gcc/vec.h:529
0xd08d70 loop_outer
../../gcc-source-trunk/gcc/cfgloop.h:456
0xd08d70 tree_unroll_loops_completely_1
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1347
0xd08ce0 tree_unroll_loops_completely_1
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1314
0xd08ce0 tree_unroll_loops_completely_1
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1314
0xd09013 tree_unroll_loops_completely(bool, bool)
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1384
0xd09583 execute
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1593
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
$


---


int a[1][2], b, c;

int
fn1 ()
{ 
  int d;
  for (; c;)
for (d = 2; d >= 0;)
  { 
int e[4], f = e[3];
if (f)
  return b;
d--;
for (;;)
  { 
c = a[0][d];
break;
  }
  }
  return 0;
}

[Bug libstdc++/71364] [7 regression] recent tuple changes break range-v3 merge.cpp

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71364

--- Comment #1 from Jason Merrill  ---
Error message:

In file included from include/range/v3/begin_end.hpp:23:0,
 from include/range/v3/core.hpp:17,
 from test/algorithm/merge.cpp:19:
include/range/v3/utility/dangling.hpp: In instantiation of ‘constexpr
ranges::v3::tagged, ranges::v3::tag::in1, ranges::v3::tag::in2,
ranges::v3::tag::out>
ranges::v3::sanitize_fn::operator(),
ranges::v3::dangling, int*>, ranges::v3::tag::in1, ranges::v3::tag::in2,
ranges::v3::tag::out>(ranges::v3::tagged,
ranges::v3::dangling, int*>, ranges::v3::tag::in1, ranges::v3::tag::in2,
ranges::v3::tag::out>&) const’:
test/algorithm/merge.cpp:88:37:   required from here
include/range/v3/utility/dangling.hpp:154:56: error: could not convert
‘ranges::v3::sanitize_fn::operator(),
ranges::v3::dangling, int*>(std::tuple,
ranges::v3::dangling, int*>&) const((&
tup)->ranges::v3::tagged,
ranges::v3::dangling, int*>, ranges::v3::tag::in1, ranges::v3::tag::in2,
ranges::v3::tag::out>::)’ from
‘std::tuple’ to
‘ranges::v3::tagged, ranges::v3::tag::in1, ranges::v3::tag::in2,
ranges::v3::tag::out>’

[Bug libstdc++/71364] New: [7 regression] recent tuple changes break range-v3 merge.cpp

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71364

Bug ID: 71364
   Summary: [7 regression] recent tuple changes break range-v3
merge.cpp
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Keywords: rejects-valid
  Severity: normal
  Priority: P3
 Component: libstdc++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: jason at gcc dot gnu.org
CC: ville.voutilainen at gmail dot com
  Target Milestone: ---

Created attachment 38614
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38614=edit
unincluded testcase

I periodically check that G++ still builds Eric Niebler's range-v3 properly;
recently the merge.cpp test started failing.  This seems to be due to Ville's
recent tuple change.

[Bug c++/71365] New: [7 Regression] g++ reject access to parent's parent virtual method

2016-05-31 Thread zsojka at seznam dot cz
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71365

Bug ID: 71365
   Summary: [7 Regression] g++ reject access to parent's parent
virtual method
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Keywords: rejects-valid
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: zsojka at seznam dot cz
  Target Milestone: ---
  Host: x86_64-pc-linux-gnu

Created attachment 38615
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38615=edit
testcase (from openttd)

Compiler output:
$ g++ accept.C 
accept.C: In member function 'virtual void C::foo()':
accept.C:7:55: error: 'A' is not a base of 'C'
 class C : public B { virtual void foo() { this->A::foo(); } };
   ^~~
I think this code is valid, and it is accepted by all GCC versions up to 6.1.1.
If it is invalid, the error message should be improved to mention, for example,
"direct base". Note the code is accepted if B is not a template.

[Bug c++/69515] partial specialization of variable templates is broken

2016-05-31 Thread tom at honermann dot net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69515

--- Comment #6 from Tom Honermann  ---
(In reply to Jason Merrill from comment #5)
>   PR c++/60095 - partial specialization of variable templates

I believe this was intended to refer to PR c++/70095.

[Bug c++/71330] [6/7 Regression] Compile time regression

2016-05-31 Thread ppalka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71330

--- Comment #11 from Patrick Palka  ---
(In reply to Patrick Palka from comment #10)
> I think the problem is with cp_fold_function() which does
> 
>   cp_walk_tree (_SAVED_TREE (fndecl), cp_fold_r, NULL, NULL);
> 
> and cp_fold_r is itself recursive so the number of calls made to cp_fold_r
> via cp_fold_function() is quadratic with respect to the size of the
> function's subexpressions.  The test case features a huge subexpression
> arising from the chain of overloaded <

[Bug ada/71358] GNAT.Command_Line.Getopt fails if there are no switches

2016-05-31 Thread simon at pushface dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71358

--- Comment #2 from simon at pushface dot org ---
(In reply to Eric Botcazou from comment #1)
> The testcase yields a STORAGE_ERROR (segfault), which is not pretty indeed.

Presumably because the GNAT RTS is compiled with checks disabled? Here
(x86_64-apple-darwin15) I get

$ ./bug 

Execution terminated by unhandled exception
raised CONSTRAINT_ERROR : erroneous memory access

[Bug libfortran/71363] New: Issue when sizeof(double) = sizeof(long double)

2016-05-31 Thread paul.mustiere at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71363

Bug ID: 71363
   Summary: Issue when sizeof(double) = sizeof(long double)
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libfortran
  Assignee: unassigned at gcc dot gnu.org
  Reporter: paul.mustiere at gmail dot com
  Target Milestone: ---

Hello,

I am building the GNU toolchain for Android with support for Fortran, and
encountered an issue when targeting x86 for the runtime library.

Note: I'm using the toolchain sources provided by Google, but as far as I can
tell the Fortran part is simply 4.9 since they are not trying to build with
Fortran.

In intrisics/cshift0.c, I get a 'duplicate case value'
(http://paste.ubuntu.com/16861425/). As far as I can tell:

- GFC_DTYPE_REAL_16 is defined (but not GFC_DTYPE_REAL_10), hence GFC_REAL_16
is defined as long double.
- sizeof(long double) = sizeof(double) = 8, which causes the duplicate case.

I find a workaround which consists of detecting both sizes in mk-kinds-h.sh and
checking that they are not equal before defining GFC_REAL_16. The rest of the
toolchain compiles fine, but I am not sure it's ideal.
Also, I'm curious as to why Fortran seems to be fine with real (kind=16) but C
doesn't seem to be able to hold variables that big.

I know I'm not using the regular GNU toolchain but any help is appreciated.

Cheers,
Paul Mustiere

[Bug fortran/70350] [5 Regression] ICE with -fcheck=all and array initialization

2016-05-31 Thread kristopher.kuhlman at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70350

Kris  changed:

   What|Removed |Added

 CC||kristopher.kuhlman at gmail 
dot co
   ||m

--- Comment #7 from Kris  ---
I can confirm this problem, but I didn't upload my similar 13-line test case.
Will a fix for this make it into 5.3.1 eventually?

It is a real bummer that --fcheck=all crashes gfortran on Ubuntu 16.04 LTS,
which will be supported for nearly 5 more years. 

gfortran --version
GNU Fortran (Ubuntu 5.3.1-14ubuntu2) 5.3.1 20160413

[Bug c++/60095] Dubious diagnostics for attempted surrogate call function

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60095

--- Comment #1 from Jason Merrill  ---
Author: jason
Date: Tue May 31 19:49:16 2016
New Revision: 236946

URL: https://gcc.gnu.org/viewcvs?rev=236946=gcc=rev
Log:
PR c++/60095 - partial specialization of variable templates

PR c++/69515
PR c++/69009
* pt.c (instantiate_template_1): Don't put the partial
specialization in DECL_TI_TEMPLATE.
(partial_specialization_p, impartial_args): Remove.
(regenerate_decl_from_template): Add args parm.
(instantiate_decl): Look up the partial specialization again.

Added:
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ39a.C
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ51.C
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ52.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ39.C

[Bug c++/69515] partial specialization of variable templates is broken

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69515

--- Comment #5 from Jason Merrill  ---
Author: jason
Date: Tue May 31 19:49:16 2016
New Revision: 236946

URL: https://gcc.gnu.org/viewcvs?rev=236946=gcc=rev
Log:
PR c++/60095 - partial specialization of variable templates

PR c++/69515
PR c++/69009
* pt.c (instantiate_template_1): Don't put the partial
specialization in DECL_TI_TEMPLATE.
(partial_specialization_p, impartial_args): Remove.
(regenerate_decl_from_template): Add args parm.
(instantiate_decl): Look up the partial specialization again.

Added:
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ39a.C
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ51.C
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ52.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ39.C

[Bug c++/69009] [5/6 Regression] ICE in instantiate_decl, at cp/pt.c:21511

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69009

--- Comment #9 from Jason Merrill  ---
Author: jason
Date: Tue May 31 19:49:16 2016
New Revision: 236946

URL: https://gcc.gnu.org/viewcvs?rev=236946=gcc=rev
Log:
PR c++/60095 - partial specialization of variable templates

PR c++/69515
PR c++/69009
* pt.c (instantiate_template_1): Don't put the partial
specialization in DECL_TI_TEMPLATE.
(partial_specialization_p, impartial_args): Remove.
(regenerate_decl_from_template): Add args parm.
(instantiate_decl): Look up the partial specialization again.

Added:
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ39a.C
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ51.C
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ52.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/g++.dg/cpp1y/var-templ39.C

[Bug c/71362] New: Wrong position for "error: size of unnamed array is negative"

2016-05-31 Thread ch3root at openwall dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71362

Bug ID: 71362
   Summary: Wrong position for "error: size of unnamed array is
negative"
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: ch3root at openwall dot com
  Target Milestone: ---

Source code:

--
int main()
{
  123 + sizeof(int[-1]);
}
--

Results:

--
$ gcc -std=c11 -pedantic test.c && ./a.out
test.c: In function ‘main’:
test.c:3:3: error: size of unnamed array is negative
   123 + sizeof(int[-1]);
   ^~~
--

gcc version: gcc (GCC) 7.0.0 20160531 (experimental)

[Bug c++/55813] Poorly named/documented option Wctor-dtor-privacy

2016-05-31 Thread kyle.strand at beckman dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55813

Kyle J Strand  changed:

   What|Removed |Added

 CC||kyle.strand at beckman dot com

--- Comment #4 from Kyle J Strand  ---
The behavior (even as of 5.1) still seems at odds with the documentation. In
particular, classes with *public* constructors *can* trigger this warning.

See http://stackoverflow.com/q/33157248/1858225 for discussion and sample code.

[Bug c/70813] Wrong warning "'0' flag ignored with precision and ‘%d’ gnu_printf format"

2016-05-31 Thread ch3root at openwall dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70813

--- Comment #1 from Alexander Cherepanov  ---
Wrong position of this warning seems to be a separate issue, so I filed it as
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70813 . This PR is about the fact
that this warning is emitted at all in this corner case.

[Bug c/71360] Wrong position for "warning: '0' flag ignored with precision and ‘%d’ gnu_printf format [-Wformat=]"

2016-05-31 Thread ch3root at openwall dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71360

--- Comment #1 from Alexander Cherepanov  ---
Sorry, old bug number is wrong, this is split from
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70813.

[Bug tree-optimization/71361] New: [7 Regression] Changes in ivopts caused perf regression on x86

2016-05-31 Thread iverbin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71361

Bug ID: 71361
   Summary: [7 Regression] Changes in ivopts caused perf
regression on x86
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: iverbin at gcc dot gnu.org
CC: amker.cheng at gmail dot com, izamyatin at gmail dot com,
kyukhin at gcc dot gnu.org
  Target Milestone: ---

r235805 leads to performance regression on x86.

Reduced testcase:

int arr_1[512];
int arr_2[512];

int main ()
{
int c1[512];
int c2[512];
int res[512];

for (int i = 0; i < 512; i++)
  arr_1[i] = arr_2[i] = c1[i] = c2[i] = i;

for (int l = 0; l < 100; l++)
  for (int k = 1; k <= 9; k++)
{
  int n1 = 1 << k;
  int n2 = n1 >> 1;

  for (int j = 0; j < n2; j++)
for (int i = j; i < 512; i += n1)
  {
int idx = i + n2;
int x1 = arr_1[idx] * c1[j] + arr_2[idx] * c2[j];
int x2 = arr_2[idx] * c1[j] + arr_1[idx] * c2[j];

arr_1[i] = x1;
arr_2[i] = x2;
arr_1[idx] = x1;
arr_2[idx] = x2;
  }
}

return 0;
}

Compilation options: -Ofast -m32 -fPIE
GCC is configured --with-arch=corei7 --with-cpu=corei7 --with-fpmath=sse
Run time on Sandy Bridge increased by ~20%
Run time on Atom increased by ~60%

Below are the dumps of the innermost loop after ivopts pass.

Before regression there are 2 induction variables, which are used as bases for
all 6 memory accesses:

  # i_66 = PHI 
  # ivtmp.19_63 = PHI 
  # ivtmp.20_17 = PHI 
  _59 = (void *) ivtmp.19_63;
  _58 = (sizetype) n2_20;
  _22 = MEM[base: _59, index: _58, step: 4, offset: 0B];
  _24 = _22 * pretmp_105;
  _55 = (void *) ivtmp.20_17;
  _54 = (sizetype) n2_20;
  _25 = MEM[base: _55, index: _54, step: 4, offset: 0B];
  _27 = _25 * pretmp_107;
  x1_28 = _24 + _27;
  _30 = _25 * pretmp_105;
  _31 = _22 * pretmp_107;
  x2_32 = _30 + _31;
  _51 = (void *) ivtmp.19_63;
  MEM[base: _51, offset: 0B] = x1_28;
  _50 = (void *) ivtmp.20_17;
  MEM[base: _50, offset: 0B] = x2_32;
  _57 = (void *) ivtmp.19_63;
  _56 = (sizetype) n2_20;
  MEM[base: _57, index: _56, step: 4, offset: 0B] = x1_28;
  _53 = (void *) ivtmp.20_17;
  _52 = (sizetype) n2_20;
  MEM[base: _53, index: _52, step: 4, offset: 0B] = x2_32;
  i_37 = n1_19 + i_66;
  ivtmp.19_95 = ivtmp.19_63 + _77;
  ivtmp.20_15 = ivtmp.20_17 + _12;
  if (i_37 <= 511)
goto ;
  else
goto ;

After regression there is only one induction variable, which is used as index
for 4 memory accesses.

  # i_66 = PHI 
  # ivtmp.22_63 = PHI 
  _22 = MEM[symbol: arr_1, index: ivtmp.22_63, offset: 0B];
  _24 = _22 * pretmp_105;
  _25 = MEM[symbol: arr_2, index: ivtmp.22_63, offset: 0B];
  _27 = _25 * pretmp_107;
  x1_28 = _24 + _27;
  _30 = _25 * pretmp_105;
  _31 = _22 * pretmp_107;
  x2_32 = _30 + _31;
  _17 = (sizetype) i_66;
  _15 = _17 * 4;
  MEM[symbol: arr_1, index: _15, offset: 0B] = x1_28;
  _14 = (sizetype) i_66;
  _12 = _14 * 4;
  MEM[symbol: arr_2, index: _12, offset: 0B] = x2_32;
  MEM[symbol: arr_1, index: ivtmp.22_63, offset: 0B] = x1_28;
  MEM[symbol: arr_2, index: ivtmp.22_63, offset: 0B] = x2_32;
  i_37 = n1_19 + i_66;
  ivtmp.22_95 = ivtmp.22_63 + _77;
  if (i_37 <= 511)
goto ;
  else
goto ;

As a result, the final assembly contains 13% more instructions.

Before regression:

  .L5:
movl(%edi,%ebx,4), %eax
movd%xmm1, %edx
movd%xmm0, %ecx
imull   (%esi,%ebx,4), %ecx
imull   %eax, %edx
addl%ecx, %edx
movd%xmm0, %ecx
imull   %ecx, %eax
movd%xmm1, %ecx
imull   (%esi,%ebx,4), %ecx
movl%edx, (%esi)
movl%edx, (%esi,%ebx,4)
movd%xmm5, %edx
addl%edx, %esi
addl%ecx, %eax
movl%eax, (%edi)
movl%eax, (%edi,%ebx,4)
movd%xmm4, %eax
addl%edx, %edi
addl%eax, -4124(%ebp)
movl-4124(%ebp), %ecx
cmpl$511, %ecx
jle .L5

After regression:

  .L5:
movd%xmm5, %edi
movd%xmm3, %edx
movd%xmm1, %ebx
imull   (%eax,%edx), %ebx
movd%xmm4, %ecx
movd%xmm4, %edx
imull   (%eax,%edi), %ecx
addl%ecx, %ebx
movd%xmm1, %ecx
imull   (%eax,%edi), %ecx
movd%ecx, %xmm0
movd%xmm3, %ecx
imull   (%eax,%ecx), %edx
movd%xmm0, %ecx
addl%edx, %ecx
movd%xmm3, %edx
movl%ebx, (%edx,%esi,4)
 

[Bug c/71360] New: Wrong position for "warning: '0' flag ignored with precision and ‘%d’ gnu_printf format [-Wformat=]"

2016-05-31 Thread ch3root at openwall dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71360

Bug ID: 71360
   Summary: Wrong position for "warning: '0' flag ignored with
precision and ‘%d’ gnu_printf format [-Wformat=]"
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: ch3root at openwall dot com
  Target Milestone: ---

Source code:

--
#include 

int main()
{
  printf("abc" "%05.3d\n", 1);
}
--

Results:

--
$ gcc -std=c11 -pedantic -Wall -Wextra -O3 test.c && ./a.out
test.c: In function ‘main’:
test.c:5:10: warning: '0' flag ignored with precision and ‘%d’ gnu_printf
format [-Wformat=]
   printf("abc" "%05.3d\n", 1);
  ^
abc  001
------

gcc version: gcc (GCC) 7.0.0 20160531 (experimental)

This is split from https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70924 as it
seems to be a separate issue.

[Bug c++/71227] [6/7 Regression] template friend function cannot be resolved

2016-05-31 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71227

--- Comment #3 from Jason Merrill  ---
Author: jason
Date: Tue May 31 19:16:26 2016
New Revision: 236941

URL: https://gcc.gnu.org/viewcvs?rev=236941=gcc=rev
Log:
PR c++/71227 - specializing hidden friend

* pt.c (check_explicit_specialization): Give better diagnostic about
specializing a hidden friend.

Added:
trunk/gcc/testsuite/g++.dg/template/friend62.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c

[Bug ada/71358] GNAT.Command_Line.Getopt fails if there are no switches

2016-05-31 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71358

Eric Botcazou  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-05-31
 CC||ebotcazou at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Eric Botcazou  ---
The testcase yields a STORAGE_ERROR (segfault), which is not pretty indeed.

[Bug sanitizer/71291] Firefox with GCC reports stack-buffer-overflow but clang does not

2016-05-31 Thread gk at torproject dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71291

Georg Koppen  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #11 from Georg Koppen  ---
Thanks a lot! I've informed the Mozilla people and updated their bug. Sorry for
the noise.

[Bug ada/71317] Compiling gnat for rtems fails at s-taprop.adb

2016-05-31 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71317

--- Comment #4 from Eric Botcazou  ---
Author: ebotcazou
Date: Tue May 31 18:59:45 2016
New Revision: 236939

URL: https://gcc.gnu.org/viewcvs?rev=236939=gcc=rev
Log:
* s-osinte-kfreebsd-gnu.ads (clock_getres): Define.
(Get_Page_Size): Remove duplicate and return int.

PR ada/71317
* s-osinte-rtems.ads (clock_getres): Define.
(Get_Page_Size): Remove duplicate and return int.

Modified:
branches/gcc-6-branch/gcc/ada/ChangeLog
branches/gcc-6-branch/gcc/ada/s-osinte-kfreebsd-gnu.ads
branches/gcc-6-branch/gcc/ada/s-osinte-rtems.ads

[Bug ada/71317] Compiling gnat for rtems fails at s-taprop.adb

2016-05-31 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71317

--- Comment #3 from Eric Botcazou  ---
Author: ebotcazou
Date: Tue May 31 18:59:36 2016
New Revision: 236938

URL: https://gcc.gnu.org/viewcvs?rev=236938=gcc=rev
Log:
* s-osinte-kfreebsd-gnu.ads (clock_getres): Define.
(Get_Page_Size): Remove duplicate and return int.

PR ada/71317
* s-osinte-rtems.ads (clock_getres): Define.
(Get_Page_Size): Remove duplicate and return int.

Modified:
trunk/gcc/ada/ChangeLog
trunk/gcc/ada/s-osinte-kfreebsd-gnu.ads
trunk/gcc/ada/s-osinte-rtems.ads

[Bug sanitizer/71291] Firefox with GCC reports stack-buffer-overflow but clang does not

2016-05-31 Thread m.ostapenko at samsung dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71291

--- Comment #10 from Maxim Ostapenko  ---
I've build Firefox locally with clang with optimizations disabled
(CFLAGS="-fsanitize=address -fsanitize-recover=address -O0") and got pretty the
same backtrace:

==12707==ERROR: AddressSanitizer: stack-buffer-underflow on address
0x7fe22dbc417c at pc 0x7fe25e3b9ee5 bp 0x7fe22dbc40b0 sp 0x7fe22dbc40a8
READ of size 4 at 0x7fe22dbc417c thread T39 (Compositor)
#0 0x7fe25e3b9ee4 in mozilla::gfx::BasePoint4D
>::DotProduct(mozilla::gfx::Point4DTyped
const&) const /home/max/src/firefox/gfx/2d/BasePoint4D.h:101:68
#1 0x7fe25e3b7e6e in unsigned long
mozilla::gfx::Matrix4x4Typed::TransformAndClipRect(mozilla::gfx::RectTyped const&, mozilla::gfx::RectTyped
const&, mozilla::gfx::PointTyped*) const
/home/max/src/firefox/gfx/2d/Matrix.h:738:19
#2 0x7fe25e3a2329 in mozilla::gfx::RectTyped mozilla::gfx::Matrix4x4Typed::TransformAndClipBounds(mozilla::gfx::RectTyped const&, mozilla::gfx::RectTyped
const&) const /home/max/src/firefox/gfx/2d/Matrix.h:675:24
#3 0x7fe25ea08163 in
mozilla::layers::BasicCompositor::DrawQuad(mozilla::gfx::RectTyped const&, mozilla::gfx::RectTyped
const&, mozilla::layers::EffectChain const&, float,
mozilla::gfx::Matrix4x4Typed const&,
mozilla::gfx::RectTyped const&)
/home/max/src/firefox/gfx/layers/basic/BasicCompositor.cpp:311:23
#4 0x7fe25e888778 in
mozilla::layers::Compositor::DrawQuad(mozilla::gfx::RectTyped const&, mozilla::gfx::RectTyped
const&, mozilla::layers::EffectChain const&, float,
mozilla::gfx::Matrix4x4Typed const&)
/home/max/src/firefox/objdir-ff-asan-O0/dist/include/mozilla/layers/Compositor.h:331:7
#5 0x7fe25eb0b14f in
mozilla::layers::ColorLayerComposite::RenderLayer(mozilla::gfx::IntRectTyped
const&)::$_1::operator()(mozilla::layers::EffectChain&,
mozilla::gfx::RectTyped const&) const
/home/max/src/firefox/gfx/layers/composite/ColorLayerComposite.cpp:31:5
#6 0x7fe25ead8bdd in void
mozilla::layers::RenderWithAllMasks(mozilla::layers::Layer*, mozilla::layers::Compositor*,
mozilla::gfx::IntRectTyped const&,
mozilla::layers::ColorLayerComposite::RenderLayer(mozilla::gfx::IntRectTyped
const&)::$_1)
/home/max/src/firefox/gfx/layers/composite/LayerManagerComposite.h:616:5
#7 0x7fe25ead8437 in
mozilla::layers::ColorLayerComposite::RenderLayer(mozilla::gfx::IntRectTyped
const&) /home/max/src/firefox/gfx/layers/composite/ColorLayerComposite.cpp:28:3
#8 0x7fe25eb749e6 in void
mozilla::layers::RenderLayers(mozilla::layers::ContainerLayerComposite*,
mozilla::layers::LayerManagerComposite*,
mozilla::gfx::IntRectTyped const&)
/home/max/src/firefox/gfx/layers/composite/ContainerLayerComposite.cpp:662:7
...
Address 0x7fe22dbc417c is located in stack of thread T39 (Compositor) at offset
28 in frame
#0 0x7fe25e3b6b8f in unsigned long
mozilla::gfx::Matrix4x4Typed::TransformAndClipRect(mozilla::gfx::RectTyped const&, mozilla::gfx::RectTyped
const&, mozilla::gfx::PointTyped*) const
/home/max/src/firefox/gfx/2d/Matrix.h:709

  This frame has 20 object(s):
[32, 1056) 'points' <== Memory access at offset 28 underflows this variable
[1184, 1200) 'ref.tmp'
[1216, 1232) 'ref.tmp2'
[1248, 1264) 'ref.tmp4'
[1280, 1296) 'ref.tmp5'
[1312, 1328) 'ref.tmp11'
[1344, 1360) 'ref.tmp12'
[1376, 1392) 'ref.tmp18'
[1408, 1424) 'ref.tmp19'
[1440, 1504) 'planeNormals'
[1536, 1552) 'ref.tmp32'
[1568, 1584) 'ref.tmp35'
[1600, 1616) 'ref.tmp38'
[1632, 1648) 'ref.tmp42'
[1664, 1680) 'ref.tmp68'
[1696, 1712) 'coerce'
[1728, 1744) 'ref.tmp71'
[1760, 1768) 'p'
[1792, 1800) 'ref.tmp99'
[1824, 1832) 'ref.tmp100'
HINT: this may be a false positive if your program uses some custom stack
unwind mechanism or swapcontext
  (longjmp and C++ exceptions *are* supported)
SUMMARY: AddressSanitizer: stack-buffer-underflow
/home/max/src/firefox/gfx/2d/BasePoint4D.h:101:68 in
mozilla::gfx::BasePoint4D

[Bug c++/71248] crash on in-class initializer of array of pointer to member

2016-05-31 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71248

Paolo Carlini  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED
   Assignee|paolo.carlini at oracle dot com|unassigned at gcc dot 
gnu.org
   Target Milestone|--- |7.0

--- Comment #5 from Paolo Carlini  ---
Location fixed in trunk (for 7).

[Bug c++/71306] bogus -Wplacement-new with an array element

2016-05-31 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71306

Martin Sebor  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Martin Sebor  ---
Fixed in 7.0 via 236902 and backported to 6.x in r236934.

[Bug c++/71306] bogus -Wplacement-new with an array element

2016-05-31 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71306

--- Comment #3 from Martin Sebor  ---
Author: msebor
Date: Tue May 31 17:24:22 2016
New Revision: 236934

URL: https://gcc.gnu.org/viewcvs?rev=236934=gcc=rev
Log:
PR c++/71306 - bogus -Wplacement-new with an array element

gcc/cp/ChangeLog:
2016-05-31  Martin Sebor  

PR c++/71306
* init.c (warn_placement_new_too_small): Handle placement new arguments
that are elements of arrays more carefully.  Remove a pointless loop.

gcc/testsuite/ChangeLog:
2016-05-31  Martin Sebor  

PR c++/71306
* g++.dg/warn/Wplacement-new-size-3.C: New test.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/warn/Wplacement-new-size-3.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/init.c
branches/gcc-6-branch/gcc/testsuite/ChangeLog

[Bug c++/71248] crash on in-class initializer of array of pointer to member

2016-05-31 Thread paolo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71248

--- Comment #4 from paolo at gcc dot gnu.org  ---
Author: paolo
Date: Tue May 31 17:17:29 2016
New Revision: 236931

URL: https://gcc.gnu.org/viewcvs?rev=236931=gcc=rev
Log:
/cp
2016-05-31  Paolo Carlini  

PR c++/71248
* decl.c (check_static_variable_definition): Use DECL_SOURCE_LOCATION
to obtain correct locations; avoid redundant diagnostics on
out-of-class definitions.

/testsuite
2016-05-31  Paolo Carlini  

PR c++/71248
* g++.dg/cpp0x/pr71248.C: New.
* g++.dg/cpp0x/auto7.C: Test column numbers too.
* g++.dg/cpp0x/constexpr-static8.C: Likewise.
* g++.dg/init/new37.C: Likewise.
* g++.dg/template/static1.C: Likewise.
* g++.dg/template/static2.C: Likewise.

Added:
trunk/gcc/testsuite/g++.dg/cpp0x/pr71248.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/cpp0x/auto7.C
trunk/gcc/testsuite/g++.dg/cpp0x/constexpr-static8.C
trunk/gcc/testsuite/g++.dg/init/new37.C
trunk/gcc/testsuite/g++.dg/template/static1.C
trunk/gcc/testsuite/g++.dg/template/static2.C

[Bug sanitizer/71291] Firefox with GCC reports stack-buffer-overflow but clang does not

2016-05-31 Thread m.ostapenko at samsung dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71291

Maxim Ostapenko  changed:

   What|Removed |Added

 CC||m.ostapenko at samsung dot com

--- Comment #9 from Maxim Ostapenko  ---
Hm, looking to corresponding source code (dist/include/mozilla/gfx/Matrix.h):

 705   template
 706   size_t TransformAndClipRect(const RectTyped& aRect,
 707   const RectTyped& aClip,
 708   PointTyped* aVerts) const
 709   {
 710 // Initialize a double-buffered array of points in homogenous space 
 711 // with the input rectangle, aRect.
 712 Point4DTyped points[2]kTransformAndClipRectMaxVerts];
 713 Point4DTyped* dstPoint = points[0];

 727 // Iterate through each clipping plane and clip the polygon.
 728 // In each pass, we double buffer, alternating between points[0] and
 729 // points[1].
 730 for (int plane=0; plane < 4; plane++) {
 731   planeNormals[plane].Normalize();
 732 
 733   Point4DTyped* srcPoint = points[plane & 1];
 734   Point4DTyped* srcPointEnd = dstPoint;
 735   dstPoint = points[~plane & 1];
 736 
 737   Point4DTyped* prevPoint = srcPointEnd - 1;
 738   F prevDot = planeNormals[plane].DotProduct(*prevPoint);



I suspect this scenario to happen:

1) On iteration 2 (i == 1) dstPoint becomes points[0] at line 735.
2) Later on iteration 1 dstPoint doesn't change for some reason.
3) On iteration 3 (i == 2) srcPointEnd becomes srcPointEnd = dstPoint (==
point[0]) at line 734.
4) Later on iteration 3 prevPoint = srcPointEnd - 1 (point[-1]) at line 737.
5) At line 738 we use *prevPoint (points[-1]) that leads to ASan report (valid,
because points[-1] overflows).

Could you check this? If this is what happens, than ASan is innocent and
something else went wrong here.

[Bug debug/71057] [6 Regression] ICE in schedule_generic_params_dies_gen, at dwarf2out.c:24142

2016-05-31 Thread romain.geissler at amadeus dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71057

--- Comment #10 from Romain Geissler  ---
Thanks ! The current gcc6 branch works fine now.

[Bug tree-optimization/71359] [7 Regression] ICE at -Os and above in 32-bit and 64-bit modes on x86_64-linux-gnu (Segmentation fault, vec_safe_length<loop*, va_gc>)

2016-05-31 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71359

Marek Polacek  changed:

   What|Removed |Added

   Keywords|ice-on-valid-code   |ice-on-invalid-code

--- Comment #4 from Marek Polacek  ---
Whoops, this is actually invalid code.

[Bug target/71151] [avr] -fmerge-constants and -fdata-sections/-ffunction-sections results in string constants in .progmem.gcc_sw section

2016-05-31 Thread senthil.thecoder at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71151

--- Comment #7 from Senthil Kumar Selvaraj  
---
Created attachment 38613
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38613=edit
Tentative patch for 6.1

Looks like the right fix will need to somehow differentiate between jump tables
and other per function data when the function_rodata_section target hook is
invoked. I'll submit a tentative patch in the next couple of days that does
that.

However, I don't think that patch will get into 6.x, given that it changes the
target hook interface. The attached patch instead tries to work around the
problem, by letting default_elf_select_section run as usual, but then returning
a different section with the name reverted to the right prefix (rodata instead
of progmem), with the correct flags (MERGE and STRINGS)

[Bug tree-optimization/71359] [7 Regression] ICE at -Os and above in 32-bit and 64-bit modes on x86_64-linux-gnu (Segmentation fault, vec_safe_length<loop*, va_gc>)

2016-05-31 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71359

--- Comment #3 from Marek Polacek  ---
Also ICEs if I change
char a[];
to
char a[1];

[Bug tree-optimization/71359] [7 Regression] ICE at -Os and above in 32-bit and 64-bit modes on x86_64-linux-gnu (Segmentation fault, vec_safe_length<loop*, va_gc>)

2016-05-31 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71359

--- Comment #2 from Marek Polacek  ---
commit eedd711b1de214484021ed233aef3d88b0c3988c
Author: hubicka 
Date:   Mon May 30 10:40:33 2016 +

* predict.h (force_edge_cold): Declare.
* predict.c (force_edge_cold): New function.
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Fix profile
updating.
(canonicalize_loop_induction_variables): Fix formating.

* gcc.dg/tree-ssa/cunroll-12.c: New testcase.
* gcc.dg/tree-ssa/cunroll-13.c: New testcase.
* gcc.dg/tree-ssa/cunroll-14.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@236874
138bc75d-0d04-0410-961f-82ee72b054a4

[Bug tree-optimization/71359] [7 Regression] ICE at -Os and above in 32-bit and 64-bit modes on x86_64-linux-gnu (Segmentation fault, vec_safe_length<loop*, va_gc>)

2016-05-31 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71359

Marek Polacek  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-05-31
 CC||mpolacek at gcc dot gnu.org
   Target Milestone|--- |7.0
Summary|ICE at -Os and above in |[7 Regression] ICE at -Os
   |32-bit and 64-bit modes on  |and above in 32-bit and
   |x86_64-linux-gnu|64-bit modes on
   |(Segmentation fault,|x86_64-linux-gnu
   |vec_safe_length) |vec_safe_length)
 Ever confirmed|0   |1

--- Comment #1 from Marek Polacek  ---
Confirmed.

[Bug tree-optimization/71359] New: ICE at -Os and above in 32-bit and 64-bit modes on x86_64-linux-gnu (Segmentation fault, vec_safe_length<loop*, va_gc>)

2016-05-31 Thread chengniansun at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71359

Bug ID: 71359
   Summary: ICE at -Os and above in 32-bit and 64-bit modes on
x86_64-linux-gnu (Segmentation fault,
vec_safe_length<loop*, va_gc>)
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: chengniansun at gmail dot com
  Target Milestone: ---

$: gcc-trunk -v
Using built-in specs.
COLLECT_GCC=gcc-trunk
COLLECT_LTO_WRAPPER=/usr/local/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../gcc-source-trunk/configure --enable-languages=c,c++,lto
--prefix=/usr/local/gcc-trunk --disable-bootstrap
Thread model: posix
gcc version 7.0.0 20160531 (experimental) [trunk revision 236912] (GCC) 
$: gcc-trunk -w -O3 small.c
small.c: In function ‘fn1’:
small.c:3:6: internal compiler error: Segmentation fault
 void fn1() {
  ^~~
0xbbd02f crash_signal
../../gcc-source-trunk/gcc/toplev.c:333
0xd08d70 vec_safe_length<loop*, va_gc>
../../gcc-source-trunk/gcc/vec.h:529
0xd08d70 loop_outer
../../gcc-source-trunk/gcc/cfgloop.h:456
0xd08d70 tree_unroll_loops_completely_1
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1347
0xd08ce0 tree_unroll_loops_completely_1
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1314
0xd08ce0 tree_unroll_loops_completely_1
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1314
0xd09013 tree_unroll_loops_completely(bool, bool)
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1384
0xd09583 execute
../../gcc-source-trunk/gcc/tree-ssa-loop-ivcanon.c:1593
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
$: cat small.c
char a[];
int b;
void fn1() {
  int i;
  for (;;) {
i = 0;
for (; i < 6; i++) {
  if (b)
for (;;)
  ;
  int c = a[i];
  printf("", i);
}
  }
}

int main() {}
$:

[Bug tree-optimization/69184] [6/7 Regression] ICE in copy_cond_phi_nodes, at graphite-isl-ast-to-gimple.c:2685

2016-05-31 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69184

--- Comment #7 from vries at gcc dot gnu.org ---
No longer reproduces on trunk and 6 branch, due to fix for PR69068.

[Bug c++/70847] [6/7 Regression] exponential time in cp_fold for chained virtual function calls

2016-05-31 Thread sirl at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70847

Franz Sirl  changed:

   What|Removed |Added

 CC||sirl at gcc dot gnu.org

--- Comment #6 from Franz Sirl  ---
Created attachment 38612
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38612=edit
Testcase for -fsanitize=alignment

For this testcase compiled with -fsanitize=alignment/-fsanitize=undefined the
patch from comment#3 only shaves off about 4 seconds. The compiletime still
roughly doubles with each string added to the operator<< chain.

1)
time g++-6 -fsanitize=alignment tc3.cpp -c -ftime-report

Execution times (seconds)
 phase setup :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall 
  1575 kB (54%) ggc
 phase parsing   : 143.08 (100%) usr   0.00 ( 0%) sys 143.09 (100%)
wall 756 kB (26%) ggc
 phase opt and generate  :   0.02 ( 0%) usr   0.00 ( 0%) sys   0.02 ( 0%) wall 
   597 kB (20%) ggc
 register information:   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall 
 0 kB ( 0%) ggc
 parser function body: 143.08 (100%) usr   0.00 ( 0%) sys 143.09 (100%)
wall 151 kB ( 5%) ggc
 integrated RA   :   0.01 ( 0%) usr   0.00 ( 0%) sys   0.00 ( 0%) wall 
49 kB ( 2%) ggc
 initialize rtl  :   0.01 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall 
12 kB ( 0%) ggc
 TOTAL : 143.10 0.00   143.12  
2939 kB

real2m23.132s
user2m23.108s
sys 0m0.008s

2)
g++-6 -v
Using built-in specs.
COLLECT_GCC=g++-6
COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/6/lto-wrapper
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info
--mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64
--enable-languages=c,c++,objc,fortran,obj-c++,java,ada,go
--enable-checking=release --with-gxx-include-dir=/usr/include/c++/6
--enable-ssp --disable-libssp --disable-libvtv --disable-plugin
--with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux'
--disable-libgcj --with-slibdir=/lib64 --with-system-zlib --enable-__cxa_atexit
--enable-libstdcxx-allocator=new --disable-libstdcxx-pch
--with-default-libstdcxx-abi=gcc4-compatible
--enable-version-specific-runtime-libs --enable-linker-build-id
--enable-linux-futex --program-suffix=-6 --without-system-libunwind
--enable-multilib --with-arch-32=x86-64 --with-tune=generic
--build=x86_64-suse-linux --host=x86_64-suse-linux
Thread model: posix
gcc version 6.1.1 20160531 (SUSE Linux)

[Bug c/71287] Possibly broken invocation of connect (and maybe other) syscalls

2016-05-31 Thread artpol84 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71287

Artem Polyakov  changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution|--- |INVALID

[Bug ada/71358] New: GNAT.Command_Line.Getopt fails if there are no switches

2016-05-31 Thread simon at pushface dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71358

Bug ID: 71358
   Summary: GNAT.Command_Line.Getopt fails if there are no
switches
   Product: gcc
   Version: 6.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: ada
  Assignee: unassigned at gcc dot gnu.org
  Reporter: simon at pushface dot org
  Target Milestone: ---

Created attachment 38611
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38611=edit
Demonstrators

A program had no switches (yet), and calling Getopt resulted in CE. Having
patched this, calling the program with -h or --help resulted in a different
crash.

A GDB session for the first (no switches) case gave

Catchpoint 1, CONSTRAINT_ERROR at 0x00011c1f in _ada_aes ()
at /Users/simon/Analytical_Engine/src/aes.adb:53
53 GNAT.Command_Line.Getopt (Command_Line_Config);
(gdb) bt
[...]
#5  0x00010009cad3 in __gnat_rcheck_CE_Access_Check (file=, 
line=) at a-except.adb:1202
#6  0x000100047c94 in gnat__command_line__getopt__2 (callback=0x0,
parser=0x101002000, 
concatenate=true) at /Users/simon/Analytical_Engine/src/g-comlin.adb:3457
#7  0x00011c1f in _ada_aes () at
/Users/simon/Analytical_Engine/src/aes.adb:53
(gdb) fr 6
#6  0x000100047c94 in gnat__command_line__getopt__2 (callback=0x0,
parser=0x101002000, 
concatenate=true) at /Users/simon/Analytical_Engine/src/g-comlin.adb:3457
3457  for S in Config.Switches'Range loop
(gdb) fr 6
#6  0x000100047c94 in gnat__command_line__getopt__2 (callback=0x0,
parser=0x101002000, 
concatenate=true) at /Users/simon/Analytical_Engine/src/g-comlin.adb:3457
3457  for S in Config.Switches'Range loop
(gdb) p config
$1 = (access gnat.command_line.command_line_configuration_record) 0x10070
(gdb) p config.all
$2 = (prefixes => 0x0, sections => 0x1003000a8, star_switch => false, aliases
=> 0x0, 
  usage => 0x1003029a8, help => 0x1003029c8, help_msg => 0x1003014a8, switches
=> 0x0)

I have a demonstrator and a patch.

[Bug c/71287] Possibly broken invocation of connect (and maybe other) syscalls

2016-05-31 Thread artpol84 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71287

--- Comment #13 from Artem Polyakov  ---
Oh, now I see what was going on!

This is a really masked error:

while( (rc = connect(sd, (struct sockaddr*), addrlen) < 0) && (errno ==
EAGAIN) );

instead of:

while( (rc = connect(sd, (struct sockaddr*), addrlen)) < 0 && (errno ==
EAGAIN) );

so the problem is in the code, not GCC: wrong operation sequence:
rc = (connect(sd, (struct sockaddr*), addrlen) < 0)

instead of

(rc = (connect(sd, (struct sockaddr*), addrlen)) < 0


So we can safely close this bug report. Sorry for the false alarm.

[Bug c/71287] Possibly broken invocation of connect (and maybe other) syscalls

2016-05-31 Thread artpol84 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71287

--- Comment #12 from Artem Polyakov  ---
Created attachment 38610
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38610=edit
req.s_gcc-6.1.0

[Bug c/71287] Possibly broken invocation of connect (and maybe other) syscalls

2016-05-31 Thread artpol84 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71287

--- Comment #11 from Artem Polyakov  ---
Created attachment 38609
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38609=edit
req.i_gcc-6.1.0

[Bug c/71287] Possibly broken invocation of connect (and maybe other) syscalls

2016-05-31 Thread artpol84 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71287

--- Comment #10 from Artem Polyakov  ---
The same with gcc-6.1.0 (attached)

[Bug tree-optimization/70923] [7 regression] gcc.dg/vect/pr60092.c etc. FAIL

2016-05-31 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70923

--- Comment #5 from Richard Biener  ---
(In reply to Marc Glisse from comment #3)
> (In reply to Richard Biener from comment #1)
> > We have vect_recog_mult_pattern that should have triggered here but that
> > only tries replacement with LSHIFT_EXPR rather than also a simple plus
> > for 2 * x.
> 
> I guess that would be something like
> 
> --- tree-vect-patterns.c  (revision 236808)
> +++ tree-vect-patterns.c  (working copy)
> @@ -2226,7 +2226,13 @@ vect_recog_mult_pattern (vec *
>power2_neg_val = wi::exact_log2 (wi::neg (oprnd1));
>  
>/* Handle constant operands that are postive or negative powers of 2.  */
> -  if (power2_val != -1)
> +  if (power2_val == 1)
> +{
> +  pattern_stmt
> + = gimple_build_assign (vect_recog_temp_ssa_var (itype, NULL),
> +PLUS_EXPR, oprnd0, oprnd0);
> +}
> +  else if (power2_val != -1)
>  {
>shift = build_int_cst (itype, power2_val);
>pattern_stmt
> 
> and something similar for the case *-2, it may be nicer to put this new ==1
> case inside the !=-1 case (especially for power2_neg_val). But I don't think
> I can easily test that, no sparc in the compile farm.

It bails out before the above with the vecotr shift availability check.

[Bug tree-optimization/71357] [7 Regression] [graphite] ICE: verify_ssa failed (error: definition in block follows the use for SSA_NAME) w/ -O2 -floop-nest-optimize

2016-05-31 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71357

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|--- |7.0

[Bug tree-optimization/70923] [7 regression] gcc.dg/vect/pr60092.c etc. FAIL

2016-05-31 Thread ro at CeBiTec dot Uni-Bielefeld.DE
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70923

--- Comment #4 from ro at CeBiTec dot Uni-Bielefeld.DE  ---
> --- Comment #3 from Marc Glisse  ---
> (In reply to Richard Biener from comment #1)
>> We have vect_recog_mult_pattern that should have triggered here but that
>> only tries replacement with LSHIFT_EXPR rather than also a simple plus
>> for 2 * x.
>
> I guess that would be something like
>
> --- tree-vect-patterns.c(revision 236808)
> +++ tree-vect-patterns.c(working copy)
> @@ -2226,7 +2226,13 @@ vect_recog_mult_pattern (vec *
>power2_neg_val = wi::exact_log2 (wi::neg (oprnd1));
>
>/* Handle constant operands that are postive or negative powers of 2.  */
> -  if (power2_val != -1)
> +  if (power2_val == 1)
> +{
> +  pattern_stmt
> +   = gimple_build_assign (vect_recog_temp_ssa_var (itype, NULL),
> +  PLUS_EXPR, oprnd0, oprnd0);
> +}
> +  else if (power2_val != -1)
>  {
>shift = build_int_cst (itype, power2_val);
>pattern_stmt
>
> and something similar for the case *-2, it may be nicer to put this new ==1
> case inside the !=-1 case (especially for power2_neg_val). But I don't think I
> can easily test that, no sparc in the compile farm.

That patch alone didn't make a difference when just rebuilding cc1 and
running the affected test cases.  If you provide me with a
complete patch, I can easily run it through its paces, though.

Rainer

[Bug tree-optimization/71357] New: [7 Regression] [graphite] ICE: verify_ssa failed (error: definition in block follows the use for SSA_NAME) w/ -O2 -floop-nest-optimize

2016-05-31 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71357

Bug ID: 71357
   Summary: [7 Regression] [graphite] ICE: verify_ssa failed
(error: definition in block follows the use for
SSA_NAME) w/ -O2 -floop-nest-optimize
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: asolokha at gmx dot com
  Target Milestone: ---

gcc-7.0.0-alpha20160529 snapshot fails to compile the following reduced
testcase w/ -O2 (and above) -floop-nest-optimize:

int aj;
int xt[3];

void
qy (void)
{
  int e7;
  for (e7 = 0; e7 < 2; ++e7)
{
  int bs;
  for (bs = 1; bs < 4; ++bs)
for (aj = 0; aj < 2; ++aj)
  xt[e7 + e7] = xt[bs];
}
}

% gcc-7.0.0-alpha20160529 -c -O2 -floop-nest-optimize fj4zwaxo.c 
fj4zwaxo.c: In function 'qy':
fj4zwaxo.c:5:1: error: definition in block 30 follows the use
 qy (void)
 ^~
for SSA_NAME: _42 in statement:
_43 = _42 - graphite_IV.8_9;
fj4zwaxo.c:5:1: internal compiler error: verify_ssa failed

[Bug tree-optimization/70923] [7 regression] gcc.dg/vect/pr60092.c etc. FAIL

2016-05-31 Thread glisse at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70923

--- Comment #3 from Marc Glisse  ---
(In reply to Richard Biener from comment #1)
> We have vect_recog_mult_pattern that should have triggered here but that
> only tries replacement with LSHIFT_EXPR rather than also a simple plus
> for 2 * x.

I guess that would be something like

--- tree-vect-patterns.c(revision 236808)
+++ tree-vect-patterns.c(working copy)
@@ -2226,7 +2226,13 @@ vect_recog_mult_pattern (vec *
   power2_neg_val = wi::exact_log2 (wi::neg (oprnd1));

   /* Handle constant operands that are postive or negative powers of 2.  */
-  if (power2_val != -1)
+  if (power2_val == 1)
+{
+  pattern_stmt
+   = gimple_build_assign (vect_recog_temp_ssa_var (itype, NULL),
+  PLUS_EXPR, oprnd0, oprnd0);
+}
+  else if (power2_val != -1)
 {
   shift = build_int_cst (itype, power2_val);
   pattern_stmt

and something similar for the case *-2, it may be nicer to put this new ==1
case inside the !=-1 case (especially for power2_neg_val). But I don't think I
can easily test that, no sparc in the compile farm.

[Bug tree-optimization/71352] [7 Regression] ICE at -O1 and above on x86_64-linux-gnu: in zero_one_operation, at tree-ssa-reassoc.c:1251

2016-05-31 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71352

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Richard Biener  ---
Fixed.

[Bug tree-optimization/71352] [7 Regression] ICE at -O1 and above on x86_64-linux-gnu: in zero_one_operation, at tree-ssa-reassoc.c:1251

2016-05-31 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71352

--- Comment #4 from Richard Biener  ---
Author: rguenth
Date: Tue May 31 12:18:15 2016
New Revision: 236920

URL: https://gcc.gnu.org/viewcvs?rev=236920=gcc=rev
Log:
2016-05-31  Richard Biener  

PR tree-optimization/71352
* tree-ssa-reassoc.c (zero_one_operation): Handle op equal to
minus one and a negate.

* gcc.dg/tree-ssa/reassoc-45.c: New testcase.

Added:
trunk/gcc/testsuite/gcc.dg/tree-ssa/reassoc-45.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-reassoc.c

[Bug middle-end/71311] [7 Regression] spec2006 test case 416.gamess fails since r235817

2016-05-31 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71311

--- Comment #4 from Richard Biener  ---
It's rhfuhf.F:ROFOCK.  Disabling vectorization fixes it.  One notable
difference
before vectorization MIN/MAX recognition caused by missing swapped comparison
handling in

/* Transform (@0 < @1 and @0 < @2) to use min,
   (@0 > @1 and @0 > @2) to use max */
(for op (lt le gt ge)
 ext (min min max max)
 (simplify
  (bit_and (op:s @0 @1) (op:s @0 @2))
  (if (INTEGRAL_TYPE_P (TREE_TYPE (@0)))
   (op @0 (ext @1 @2)

we'd need to add

/* Transform (@1 < @0 and @2 < @0) to use min,
   (@1 > @0 and @2 > @0) to use max */
(for op (lt le gt ge)
 ext (max max min min)
 (simplify
  (bit_and (op:s @1 @0) (op:s @2 @0))
  (if (INTEGRAL_TYPE_P (TREE_TYPE (@0)))
   (op (ext @1 @2) @0

plus a case for the operand order with @1 @0 @0 @2 (and adding :c to the
bit_and).

Adding the above "fixes" gamess, making the issue latent again.

[Bug tree-optimization/70390] [6/7 Regression] internal compiler error: in copy_loop_close_phi_args, at graphite-isl-ast-to-gimple.c:2114

2016-05-31 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70390

vries at gcc dot gnu.org changed:

   What|Removed |Added

 CC||vries at gcc dot gnu.org

--- Comment #4 from vries at gcc dot gnu.org ---
Still reproduces on 6 branch at r236908.

No longer reproduces on trunk since r236440:
...
2016-05-19  Richard Biener  

PR tree-optimization/70729
* passes.def: Move LIM pass before PRE.  Remove no longer
required copyprop and move first DCE out of the loop pipeline.
...

[Bug target/68696] [6 Regression] FAIL: gcc.target/aarch64/vbslq_u64_1.c scan-assembler-times bif\\tv 1

2016-05-31 Thread ktkachov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68696

--- Comment #4 from ktkachov at gcc dot gnu.org ---
Author: ktkachov
Date: Tue May 31 11:23:59 2016
New Revision: 236918

URL: https://gcc.gnu.org/viewcvs?rev=236918=gcc=rev
Log:
[AArch64] PR target/68696 FAIL: gcc.target/aarch64/vbslq_u64_1.c
scan-assembler-times bif\tv 1

PR target/68696
* config/aarch64/aarch64-simd.md (*aarch64_simd_bsl_alt):
New pattern.
(aarch64_simd_bsl_internal): Update comment to reflect
the above.


Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/config/aarch64/aarch64-simd.md

[Bug debug/71057] [6 Regression] ICE in schedule_generic_params_dies_gen, at dwarf2out.c:24142

2016-05-31 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71057

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #9 from Richard Biener  ---
Fixed.

[Bug middle-end/71311] [7 Regression] spec2006 test case 416.gamess fails since r235817

2016-05-31 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71311

--- Comment #3 from Richard Biener  ---
It's rhfuhf.F (exclusively).  Bisected with train, verified with ref.  Now I'd
need the equivalent of the optimize attribute for fortran...

Well.  Let's see if I can spot a reasonable difference in dumps.

[Bug target/71340] [RL78] -m64bit-doubles option is documented but not present

2016-05-31 Thread olegendo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71340

Oleg Endo  changed:

   What|Removed |Added

 CC||kaushik.phatak@kpitcummins.
   ||com

--- Comment #1 from Oleg Endo  ---
CCing the author of the patch.

[Bug tree-optimization/71354] [7 Regression] gcc.dg/vect/vect-23.c FAILs

2016-05-31 Thread amker at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71354

--- Comment #1 from amker at gcc dot gnu.org ---
I think the case requires vect_cond which isn't enabled for sparc in
target-supports.exp.
I will add the requirement to the test.

[Bug web/71356] Unable to reach trunk

2016-05-31 Thread sch...@linux-m68k.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71356

--- Comment #1 from Andreas Schwab  ---
Anonymous connections are limited.  Try again later.

[Bug web/71356] Unable to reach trunk

2016-05-31 Thread sch...@linux-m68k.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71356

Andreas Schwab  changed:

   What|Removed |Added

  Component|target  |web
Version|7.0 |unknown
   Severity|blocker |normal

[Bug lto/66295] [5/6/7 Regression] LTO generates incorrect resolver call for function multiversioning

2016-05-31 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66295

Jan Hubicka  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |hubicka at gcc dot 
gnu.org

--- Comment #3 from Jan Hubicka  ---
I will take a look.

[Bug lto/66295] [5/6/7 Regression] LTO generates incorrect resolver call for function multiversioning

2016-05-31 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66295

--- Comment #2 from Markus Trippelsdorf  ---
__attribute__((target("default"))) int foo() { return 1; }
__attribute__((target("arch=core2"))) int foo() { return 2; }
int main() {
  if (foo() != 1 && foo() != 2)
__builtin_abort();
}

[Bug tree-optimization/71347] [7 regression] Performance drop after r235513 on x86-64 in 32-bit mode.

2016-05-31 Thread amker at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71347

--- Comment #2 from amker at gcc dot gnu.org ---
Thanks for reporting this.

The dump after IVOPT now is:


  :
  # prephitmp_21 = PHI 
  # prephitmp_23 = PHI 
  # ivtmp.17_16 = PHI 
  _6 = prephitmp_21 * prephitmp_23;
  _4 = (void *) ivtmp.17_16;
  MEM[base: _4, offset: 0B] = _6;
  ivtmp.17_9 = ivtmp.17_16 + 8;
  if (ivtmp.17_9 != _26)
goto ;
  else
goto ;

  :
  _5 = (void *) ivtmp.17_9;
  pretmp_20 = MEM[base: _5, offset: 4294967288B];
  pretmp_22 = X[1];
  goto ;

That patch skips computing cost for sub iv_uses in a group:
Group 0:
  Type: ADDRESS
  Use 0.0:
At stmt:X[i_18] = _6;
At pos: X[i_18]
IV struct:
  Type: double *
  Base: (double *) ( + 16)
  Step: 8
  Object:   (void *) 
  Biv:  N
  Overflowness wrto loop niter: Overflow
  Use 0.1:
At stmt:pretmp_20 = X[_15];
At pos: X[_15]
IV struct:
  Type: double *
  Base: (double *) ( + 16)
  Step: 8
  Object:   (void *) 
  Biv:  N
  Overflowness wrto loop niter: Overflow

Though use 0.0/0.1 have same {base, step}, but there are in different program
point, so if iv_cand is increased before use 0.0, the first use is transformed
into: MEM[var_before, 0], and use 0.1 will be transformed into: MEM[var_after,
-8].  Now the two memory reference have different expressions, though access to
the same object.  Afterwards, DOM failed to CSE them.

It is hard to decide which sub iv_use we should compute the cost, and which one
we can skip computing the cost.  Maybe I should revert this part of code which
was introduced to save a small amount of compilation time.

[Bug lto/66295] [5/6/7 Regression] LTO generates incorrect resolver call for function multiversioning

2016-05-31 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66295

Markus Trippelsdorf  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-05-31
 CC||trippels at gcc dot gnu.org
  Known to work||4.9.3
Summary|LTO generates incorrect |[5/6/7 Regression] LTO
   |resolver call for function  |generates incorrect
   |multiversioning |resolver call for function
   ||multiversioning
 Ever confirmed|0   |1

--- Comment #1 from Markus Trippelsdorf  ---
Confirmed.

[Bug debug/71057] [6 Regression] ICE in schedule_generic_params_dies_gen, at dwarf2out.c:24142

2016-05-31 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71057

--- Comment #8 from Richard Biener  ---
Author: rguenth
Date: Tue May 31 09:58:50 2016
New Revision: 236912

URL: https://gcc.gnu.org/viewcvs?rev=236912=gcc=rev
Log:
2016-05-31  Richard Biener  

Backport from mainline
2016-05-11  Richard Biener  

PR debug/71057
* dwarf2out.c (retry_incomplete_types): Set early_dwarf.
(dwarf2out_finish): Move retry_incomplete_types call ...
(dwarf2out_early_finish): ... here.

* g++.dg/debug/pr71057.C: New testcase.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/debug/pr71057.C
Modified:
branches/gcc-6-branch/gcc/ChangeLog
branches/gcc-6-branch/gcc/dwarf2out.c
branches/gcc-6-branch/gcc/testsuite/ChangeLog

[Bug target/71356] New: Unable to reach trunk

2016-05-31 Thread meerabo_shah at persistent dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71356

Bug ID: 71356
   Summary: Unable to reach trunk
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: blocker
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: meerabo_shah at persistent dot com
  Target Milestone: ---

Hi Team, 

we are getting below error while accessing trunk.

svn co svn://gcc.gnu.org/svn/gcc/trunk

Kindly provide alternative path to download source code

bash-4.2# svn co svn://gcc.gnu.org/svn/gcc/trunk
svn: E210002: Unable to connect to a repository at URL
'svn://gcc.gnu.org/svn/gcc/trunk'
svn: E210002: Network connection closed unexpectedly



Regards,
Meerabo Shah

[Bug target/67310] [PATCH] gcc 4.8.4 fails to compile with -march=native on VIA nano CPU

2016-05-31 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67310

Uroš Bizjak  changed:

   What|Removed |Added

  Attachment #38607|0   |1
is obsolete||

--- Comment #9 from Uroš Bizjak  ---
Created attachment 38608
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38608=edit
Updated patch

Oops, please try this patch instead.

[Bug web/71355] Target not reachable svn link svn co svn://gcc.gnu.org/svn/gcc/trunk@223813

2016-05-31 Thread sch...@linux-m68k.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71355

Andreas Schwab  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
  Component|target  |web
 Resolution|--- |INVALID
   Severity|major   |normal

--- Comment #1 from Andreas Schwab  ---
r223813 doesn't exist on trunk.

[Bug target/67310] [PATCH] gcc 4.8.4 fails to compile with -march=native on VIA nano CPU

2016-05-31 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67310

Uroš Bizjak  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2016-05-31
   Assignee|unassigned at gcc dot gnu.org  |ubizjak at gmail dot com
 Ever confirmed|0   |1

--- Comment #8 from Uroš Bizjak  ---
Created attachment 38607
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38607=edit
Proposed patch

Can you please test the attached patch?

(The patch also cleans up signature_CENTAUR_ebx handling considerably.)

[Bug target/71346] [AVX-512] AVX-512VL insn emitted when it is disabled

2016-05-31 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71346

Jakub Jelinek  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 CC||jakub at gcc dot gnu.org
 Resolution|--- |FIXED

--- Comment #4 from Jakub Jelinek  ---
Fixed.

[Bug target/71355] Target not reachable svn link svn co svn://gcc.gnu.org/svn/gcc/trunk@223813

2016-05-31 Thread meerabo_shah at persistent dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71355

meerabo  changed:

   What|Removed |Added

   Severity|normal  |major

  1   2   >