[Bug libstdc++/69744] OpenBSD does not define max_align_t

2016-02-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69744

--- Comment #2 from Richard Biener  ---
stddef.h is provided by GCC itself and thus likely needs "fixing" for OpenBSD
(see gcc/ginclude/stddef.h)

[Bug tree-optimization/69652] [6 Regression] [ICE] verify_ssa fail w/ -O2 -ffast-math -ftree-vectorize

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69652

Jakub Jelinek  changed:

   What|Removed |Added

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

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

[Bug tree-optimization/69702] [4.9/5/6 Regression] excessive stack usage with -fprofile-arcs, LIM store motion lacks a register pressure aware cost model

2016-02-10 Thread arnd at linaro dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69702

--- Comment #2 from Arnd Bergmann  ---
Thanks, I have now added -fno-tree-loop-im to the kernel gcov cflags, so files
we profile will be built with that. I can confirm that it fixes all stack size
warnings that show up with -fprofile-arcs, I found around a dozen of them in
various parts of the kernel.

Are there any downsides to doing this for all compiler versions? I don't think
we care much about a missed optimization when CGOV is used, and nobody ships
that on production systems. I guess for older gcc releases it's not necessary
to disable tree-loop-im, but it's not easy to make this conditional on the gcc
version without major surgery in the kernel build system.

I'm also adding -Wno-maybe-uninitialized now, because -fprofile-arcs also
introduces countless "error: '...' may be used uninitialized in this function
[-Werror=maybe-uninitialized]" warnings that I don't see without
-fprofile-arcs, and those are all false positives. Let me know if I should open
another bug report for those (I assume there isn't really much to do, based on
my reading of https://gcc.gnu.org/wiki/Better_Uninitialized_Warnings).

I also found two other files in the kernel that doen't build correctly once
-fprofile-arcs is enabled (with or without tree-loop-im), I'll report those as
separate bugs.

[Bug libstdc++/69744] OpenBSD does not define max_align_t

2016-02-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69744

Jonathan Wakely  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-02-10
 Ever confirmed|0   |1

--- Comment #1 from Jonathan Wakely  ---
Libstdc++ should have a configure test for max_align_t and only use the using
-declaration conditionally.

[Bug fortran/67451] [5/6 Regression] [F08] ICE with sourced allocation from coarray.

2016-02-10 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67451

--- Comment #13 from Dominique d'Humieres  ---
The patch fixes the two issues I saw on x86_64-apple-darwin15 (comment 10 and
an ICE when compiling the test with -fcoarray=lib).

[Bug go/67180] Gccgo does not support MIPS

2016-02-10 Thread ian at airs dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67180

Ian Lance Taylor  changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2016-02-10
 Ever confirmed|0   |1

[Bug c++/10200] [6 Regression] Weird clash with same names in different scopes

2016-02-10 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10200

Jason Merrill  changed:

   What|Removed |Added

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

[Bug c/69746] New: [6 Regression] diagnostic about non-constant expression not helpful

2016-02-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69746

Bug ID: 69746
   Summary: [6 Regression] diagnostic about non-constant
expression not helpful
   Product: gcc
   Version: 6.0
Status: UNCONFIRMED
  Keywords: diagnostic
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: rguenth at gcc dot gnu.org
  Target Milestone: ---

#define SIZEOF_INT 4
#define ASSERT(e) extern int test[1-2*!(e)];

ASSERT((1 << (8*SIZEOF_INT-1)) < 0)

since GCC 6 results in

t.c:2:30: error: variably modified ‘test’ at file scope
 #define ASSERT(e) extern int test[1-2*!(e)];
  ^

t.c:4:1: note: in expansion of macro ‘ASSERT’
 ASSERT((1 << (8*SIZEOF_INT-1)) < 0)
 ^~


but no mentioning of the signed overflow occuring in 1 << 31 and thus the
non-constant result.

GCC 5 accepts this without complaining.

[Bug target/69748] SIGSEGV received on vmovdqa instruction during avx-vectorized array initialization

2016-02-10 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69748

Markus Trippelsdorf  changed:

   What|Removed |Added

 Target||x86_64-*-*
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-02-10
 CC||trippels at gcc dot gnu.org
  Component|c++ |target
 Ever confirmed|0   |1

--- Comment #2 from Markus Trippelsdorf  ---
Confirmed. Only gcc-4.9 is affected. gcc-5 and 6 are fine.

[Bug target/69748] SIGSEGV received on vmovdqa instruction during avx-vectorized array initialization

2016-02-10 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69748

Markus Trippelsdorf  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |INVALID

--- Comment #3 from Markus Trippelsdorf  ---
On the other hand you're invoking undefined behavior:

/home/trippels/exam.cpp:32:26: runtime error: constructor call on misaligned
address 0x013b6c20 for type 'CoreData', which requires 64 byte alignment
0x013b6c20: note: pointer points here
 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00
00 00 00  00 00 00 00
  ^ 
/home/trippels/exam.cpp:33:26: runtime error: constructor call on misaligned
address 0x013ce370 for type 'CoreData', which requires 64 byte alignment
0x013ce370: note: pointer points here
 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00
00 00 00  00 00 00 00
  ^ 
exam.cpp:35:20: runtime error: member access within misaligned address
0x013b6c20 for type 'CoreData', which requires 64 byte alignment
0x013b6c20: note: pointer points here
 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00
00 00 00  00 00 00 00
  ^ 
exam.cpp:35:51: runtime error: member access within misaligned address
0x013ce370 for type 'CoreData', which requires 64 byte alignment
0x013ce370: note: pointer points here
 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  00 00 00 00 00
00 00 00  00 00 00 00
  ^

[Bug ipa/69241] [6 Regression] ICE with noreturn and function that return non-POD

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69241

--- Comment #24 from Jakub Jelinek  ---
The #c1 testcase doesn't bother to return a value from the function, does
Chromium has similar garbage in it?

[Bug libstdc++/69744] New: OpenBSD does not define max_align_t

2016-02-10 Thread edd at theunixzoo dot co.uk
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69744

Bug ID: 69744
   Summary: OpenBSD does not define max_align_t
   Product: gcc
   Version: 4.9.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libstdc++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: edd at theunixzoo dot co.uk
  Target Milestone: ---

Hi,

I needed to build a "vanilla" (without all the packaging-related patches in
OpenBSD ports) gcc-4.9.3 on OpenBSD-5.8/amd64.

When building libstdc++ the build bombs out like this:

libtool: compile: 
/home/vext01/research/warmup_experiment/work/gcc/sd_build/./gcc/xgcc
-shared-libgcc
-B/home/vext01/research/warmup_experiment/work/gcc/sd_build/./gcc -nostdinc++
-L/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/src
-L/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/src/.libs
-L/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/libsupc++/.libs
-B/home/vext01/research/warmup_experiment/work/gcc-inst/x86_64-unknown-openbsd5.8/bin/
-B/home/vext01/research/warmup_experiment/work/gcc-inst/x86_64-unknown-openbsd5.8/lib/
-isystem
/home/vext01/research/warmup_experiment/work/gcc-inst/x86_64-unknown-openbsd5.8/include
-isystem
/home/vext01/research/warmup_experiment/work/gcc-inst/x86_64-unknown-openbsd5.8/sys-include
-I/home/vext01/research/warmup_experiment/work/gcc/libstdc++-v3/../libgcc
-I/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/include/x86_64-unknown-openbsd5.8
-I/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/include
-I/home/vext01/research/warmup_experiment/work/gcc/libstdc++-v3/libsupc++
-D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra -Wwrite-strings
-Wcast-qual -Wabi -fdiagnostics-show-location=once -ffunction-sections
-fdata-sections -frandom-seed=eh_aux_runtime.lo -g -O2 -std=gnu++11 -c
../../../../libstdc++-v3/libsupc++/eh_aux_runtime.cc  -fPIC -DPIC
-D_GLIBCXX_SHARED -o eh_aux_runtime.o
In file included from ../../../../libstdc++-v3/libsupc++/unwind-cxx.h:35:0,
 from ../../../../libstdc++-v3/libsupc++/eh_aux_runtime.cc:29:
/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/include/cstddef:51:11:
error: '::max_align_t' has not been declared
   using ::max_align_t;
   ^
Makefile:820: recipe for target 'eh_aux_runtime.lo' failed
gmake[5]: *** [eh_aux_runtime.lo] Error 1
gmake[5]: Leaving directory
'/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/libsupc++'


Having spoken to `redi' on IRC, it seems the problem is that OpenBSD's stddef.h
does not define max_align_t. Redi asked me to raise an issue.

Cheers

[Bug fortran/69742] [4.9/5/6 Regression] ICE with -O3 and ASSOCIATE containing repeated expression

2016-02-10 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69742

Dominique d'Humieres  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
  Known to work||4.6.4
  Known to fail||4.7.3

--- Comment #5 from Dominique d'Humieres  ---
The change occurred between revisions r17 (2011-10-14, OK) and r180086
(2011-10-17, ICE), likely r180063.

[Bug ipa/69241] [6 Regression] ICE with noreturn and function that return non-POD

2016-02-10 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69241

Markus Trippelsdorf  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |---

--- Comment #23 from Markus Trippelsdorf  ---
(In reply to Jakub Jelinek from comment #22)
> Fixed.

Unfortunately, no.
Chromium and the testcase from comment1 still ICE.

[Bug c++/69687] Buffer Overflow in libiberty

2016-02-10 Thread boehme.marcel at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69687

Marcel Böhme  changed:

   What|Removed |Added

   Severity|normal  |major

--- Comment #8 from Marcel Böhme  ---
Downstream:
* Valgrind: https://bugs.kde.org/show_bug.cgi?id=359181
* GDB: https://sourceware.org/bugzilla/show_bug.cgi?id=19597
* Binutils: https://sourceware.org/bugzilla/show_bug.cgi?id=19571

[Bug ipa/69241] [6 Regression] ICE with noreturn and function that return non-POD

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69241

Jakub Jelinek  changed:

   What|Removed |Added

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

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

[Bug target/68973] [6 regression] Internal compiler error on power for gcc/testsuite/g++.dg/pr67211.C

2016-02-10 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68973

Segher Boessenkool  changed:

   What|Removed |Added

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

[Bug target/69747] c6x cross-compiler fails with "Error: inconsistent uses of .cfi_sections"

2016-02-10 Thread dhowells at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69747

--- Comment #1 from dhowells at redhat dot com  ---
This gcc also fails:

%global DATE 20160205
%global SVNREV 233185
%global gcc_version 6.0.0

[Bug target/69750] New: ICE in sh64 targetted gcc-6

2016-02-10 Thread dhowells at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69750

Bug ID: 69750
   Summary: ICE in sh64 targetted gcc-6
   Product: gcc
   Version: 6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: dhowells at redhat dot com
  Target Milestone: ---

When cross-building gcc-6 for sh64, the builds fail when configuring libgcc
with an ICE.  This can be replicated by running the following command in the
build directory:

  echo 'int main() { return 0; }' | ./gcc/xgcc -x c -c -g - -B ./gcc
-fexceptions

The gcc being built is the following:

%global DATE 20160205
%global SVNREV 233185
%global gcc_version 6.0.0

gcc is configured as follows:

CC=gcc \
CXX=g++ \
CFLAGS='-O2 -g -Wall -Wformat-security -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -mtune=generic' \
+echo ' -O2 -g -Wall -Wformat-security -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -mtune=generic ' \
+sed 's/ -Wall / /g;s/ -fexceptions / /g' \
+sed 's/ -Werror=format-security / -Wformat -Werror=format-security /' \
CXXFLAGS=' -O2 -g -Wformat-security -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -mtune=generic ' \
CFLAGS_FOR_TARGET='-g -O2 -Wall -fexceptions' \
AR_FOR_TARGET=/usr/bin/sh64-linux-gnu-ar \
AS_FOR_TARGET=/usr/bin/sh64-linux-gnu-as \
DLLTOOL_FOR_TARGET=/usr/bin/sh64-linux-gnu-dlltool \
LD_FOR_TARGET=/usr/bin/sh64-linux-gnu-ld \
NM_FOR_TARGET=/usr/bin/sh64-linux-gnu-nm \
OBJDUMP_FOR_TARGET=/usr/bin/sh64-linux-gnu-objdump \
RANLIB_FOR_TARGET=/usr/bin/sh64-linux-gnu-ranlib \
READELF_FOR_TARGET=/usr/bin/sh64-linux-gnu-readelf \
STRIP_FOR_TARGET=/usr/bin/sh64-linux-gnu-strip \
WINDRES_FOR_TARGET=/usr/bin/sh64-linux-gnu-windres \
WINDMC_FOR_TARGET=/usr/bin/sh64-linux-gnu-windmc \
LDFLAGS='-Wl,-z,relro ' \
../gcc-6.0.0-20160205/configure --bindir=/usr/bin
--build=x86_64-redhat-linux-gnu --datadir=/usr/share --disable-decimal-float
--disable-dependency-tracking --disable-gold --disable-libgcj --disable-libgomp
--disable-libmpx --disable-libquadmath --disable-libssp
--disable-libunwind-exceptions --disable-shared --disable-silent-rules
--disable-sjlj-exceptions --disable-threads
--with-ld=/usr/bin/sh64-linux-gnu-ld --enable-__cxa_atexit
--enable-checking=release --enable-gnu-unique-object --enable-initfini-array
--enable-languages=c,c+--enable-linker-build-id --enable-lto --enable-nls
--enable-obsolete --enable-plugin --enable-targets=all --exec-prefix=/usr
--host=x86_64-redhat-linux-gnu --includedir=/usr/include
--infodir=/usr/share/info --libexecdir=/usr/libexec --localstatedir=/var
--mandir=/usr/share/man --prefix=/usr --program-prefix=sh64-linux-gnu-
--sbindir=/usr/sbin --sharedstatedir=/var/lib --sysconfdir=/etc
--target=sh64-linux-elf --with-bugurl=http://bugzilla.redhat.com/bugzilla/
--with-isl --with-linker-hash-style=gnu --with-newlib
--with-plugin-ld=/usr/bin/sh64-linux-gnu-ld
--with-sysroot=/usr/sh64-linux-gnu/sys-root --with-system-libunwind
--with-system-zlib --without-headers
--with-multilib-list=m5-32media,m5-32media-nofpu,m5-compact,m5-compact-nofpu,m5-64media,m5-64media-nofpu

The binutils is binutils-2.26 configured for the same target.

[Bug c++/62134] [C++11] ICE with template alias

2016-02-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62134

--- Comment #7 from Jonathan Wakely  ---
FWIW probably a dup of PR 61198 and so fixed by r218955

[Bug target/68273] [5 Regression] Wrong code on mips/mipsel due to (invalid?) peeking at alignments in function_arg.

2016-02-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68273

--- Comment #22 from Richard Biener  ---
If -fno-ipa-sra helps can you try

Index: gcc/tree-sra.c
===
--- gcc/tree-sra.c  (revision 233268)
+++ gcc/tree-sra.c  (working copy)
@@ -4696,7 +4696,7 @@ get_replaced_param_substitute (struct ip
 {
   char *pretty_name = make_fancy_name (adj->base);

-  repl = create_tmp_reg (TREE_TYPE (adj->base), "ISR");
+  repl = create_tmp_reg (TYPE_MAIN_VARIANT (TREE_TYPE (adj->base)),
"ISR");
   DECL_NAME (repl) = get_identifier (pretty_name);
   obstack_free (_obstack, pretty_name);

as well?

[Bug target/69747] New: c6x cross-compiler fails with "Error: inconsistent uses of .cfi_sections"

2016-02-10 Thread dhowells at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69747

Bug ID: 69747
   Summary: c6x cross-compiler fails with "Error: inconsistent
uses of .cfi_sections"
   Product: gcc
   Version: 6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: dhowells at redhat dot com
  Target Milestone: ---

When building both gcc-5.3.1 and gcc-6 for c6x, the builds fail when
configuring libgcc with the following error:

/tmp/cc6wIVaX.s: Assembler messages:
/tmp/cc6wIVaX.s:12: Error: inconsistent uses of .cfi_sections

This can be tested in the build tree with:

   echo 'int main() { return 0; }' | ./gcc/xgcc -x c -c -g - -B ./gcc
-fexceptions

The gcc being built is the following:

%global DATE 20151207
%global SVNREV 231358
%global gcc_version 5.3.1

gcc is configured as follows:

CC=gcc \
CXX=g++ \
CFLAGS='-O2 -g -Wall -Wformat-security -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -mtune=generic' \
CXXFLAGS=' -O2 -g -Wformat-security -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -mtune=generic ' \
CFLAGS_FOR_TARGET='-g -O2 -Wall -fexceptions' \
AR_FOR_TARGET=/usr/bin/c6x-linux-gnu-ar \
AS_FOR_TARGET=/usr/bin/c6x-linux-gnu-as \
DLLTOOL_FOR_TARGET=/usr/bin/c6x-linux-gnu-dlltool \
LD_FOR_TARGET=/usr/bin/c6x-linux-gnu-ld \
NM_FOR_TARGET=/usr/bin/c6x-linux-gnu-nm \
OBJDUMP_FOR_TARGET=/usr/bin/c6x-linux-gnu-objdump \
RANLIB_FOR_TARGET=/usr/bin/c6x-linux-gnu-ranlib \
READELF_FOR_TARGET=/usr/bin/c6x-linux-gnu-readelf \
STRIP_FOR_TARGET=/usr/bin/c6x-linux-gnu-strip \
WINDRES_FOR_TARGET=/usr/bin/c6x-linux-gnu-windres \
WINDMC_FOR_TARGET=/usr/bin/c6x-linux-gnu-windmc \
LDFLAGS='-Wl,-z,relro ' \
../gcc-5.3.1-20151207/configure --bindir=/usr/bin
--build=x86_64-redhat-linux-gnu --datadir=/usr/share --disable-decimal-float
--disable-dependency-tracking --disable-gold --disable-libgcj --disable-libgomp
--disable-libmudflap --disable-libquadmath --disable-libssp
--disable-libunwind-exceptions --disable-shared --disable-silent-rules
--disable-sjlj-exceptions --disable-threads --with-ld=/usr/bin/c6x-linux-gnu-ld
--enable-__cxa_atexit --enable-checking=release --enable-gnu-indirect-function
--enable-gnu-unique-object --enable-initfini-array --enable-languages=c,c++
--enable-linker-build-id --enable-lto --enable-nls --enable-obsolete
--enable-plugin --enable-targets=all --exec-prefix=/usr
--host=x86_64-redhat-linux-gnu --includedir=/usr/include
--infodir=/usr/share/info --libexecdir=/usr/libexec --localstatedir=/var
--mandir=/usr/share/man --prefix=/usr --program-prefix=c6x-linux-gnu-
--sbindir=/usr/sbin --sharedstatedir=/var/lib --sysconfdir=/etc
--target=c6x-uclinux --with-bugurl=http://bugzilla.redhat.com/bugzilla/
--with-isl --with-linker-hash-style=gnu --with-newlib
--with-plugin-ld=/usr/bin/c6x-linux-gnu-ld
--with-sysroot=/usr/c6x-linux-gnu/sys-root --with-system-libunwind
--with-system-zlib --without-headers

The binutils is binutils-2.26 configured for the same target.

[Bug go/68562] morestack misaligns stack on x86_64

2016-02-10 Thread ian at airs dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68562

Ian Lance Taylor  changed:

   What|Removed |Added

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

--- Comment #12 from Ian Lance Taylor  ---
Thanks for testing it.  Patch committed to mainline and GCC 5 branch.

[Bug c++/20679] [3.4 Regression] Parse error when accessing attributes of an inner class. Enclosing class is template and have methods with the same name.

2016-02-10 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=20679
Bug 20679 depends on bug 10200, which changed state.

Bug 10200 Summary: [6 Regression] Weird clash with same names in different 
scopes
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10200

   What|Removed |Added

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

[Bug c++/10200] [6 Regression] Weird clash with same names in different scopes

2016-02-10 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10200

Jason Merrill  changed:

   What|Removed |Added

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

--- Comment #35 from Jason Merrill  ---
Fixed for GCC 6.

--- Comment #36 from Jason Merrill  ---
Author: jason
Date: Wed Feb 10 15:34:52 2016
New Revision: 233277

URL: https://gcc.gnu.org/viewcvs?rev=233277=gcc=rev
Log:
PR c++/10200

* parser.c (cp_parser_lookup_name): When looking for a template
after . or ->, only consider class templates.
(cp_parser_postfix_dot_deref_expression): Handle the current
instantiation.  Remember a dependent object expression.
* typeck2.c (build_x_arrow): Handle the current instantiation.

Added:
trunk/gcc/testsuite/g++.dg/lookup/member2.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/parser.c
trunk/gcc/cp/typeck2.c

[Bug c++/12944] [meta-bug] C++ name-lookup problems

2016-02-10 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=12944
Bug 12944 depends on bug 10200, which changed state.

Bug 10200 Summary: [6 Regression] Weird clash with same names in different 
scopes
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10200

   What|Removed |Added

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

[Bug c++/10200] [6 Regression] Weird clash with same names in different scopes

2016-02-10 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10200

Jason Merrill  changed:

   What|Removed |Added

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

--- Comment #35 from Jason Merrill  ---
Fixed for GCC 6.

[Bug tree-optimization/68021] [6 Regression] ice in rewrite_use_nonlinear_expr with -O3

2016-02-10 Thread amker at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68021

--- Comment #16 from amker at gcc dot gnu.org ---
Author: amker
Date: Wed Feb 10 14:09:05 2016
New Revision: 233269

URL: https://gcc.gnu.org/viewcvs?rev=233269=gcc=rev
Log:

PR tree-optimization/68021
* tree-ssa-loop-ivopts.c (get_computation_aff): Set ratio to 1 if
when computing the value of biv cand by itself.

gcc/testsuite/ChangeLog
PR tree-optimization/68021
* gcc.dg/tree-ssa/pr68021.c: New test.


Added:
trunk/gcc/testsuite/gcc.dg/tree-ssa/pr68021.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-loop-ivopts.c

[Bug pch/69745] New: Too big precompiled headers seem to result in a silent compilation failure

2016-02-10 Thread vz-gcc at zeitlins dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69745

Bug ID: 69745
   Summary: Too big precompiled headers seem to result in a silent
compilation failure
   Product: gcc
   Version: 4.9.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: pch
  Assignee: unassigned at gcc dot gnu.org
  Reporter: vz-gcc at zeitlins dot org
  Target Milestone: ---

This problem had been previously reported in
https://gcc.gnu.org/ml/gcc-help/2011-12/msg00019.html and also
http://stackoverflow.com/q/21008274/15275 and we've just run into it again:
creating a precompiled header somehow "succeeds" while creating a 0 byte .gch
file and the subsequent compilation using it _silently_ fails, i.e. the
compiler exits with 1 without any error messages, not even when called with
"-v" option.

This was observed using the MinGW-w64 version of gcc (see the full specs
below), but from the URLs given above it doesn't seem to be MinGW-specific, so
I'm reporting it here.

Target: i686-w64-mingw32
Configured with: ../../../src/gcc-4.9.1/configure --host=i686-w64-mingw32
--build=i686-w64-mingw32 --target=i686-w64-mingw32 --prefix=/mingw32
--with-sysroot=/c/mingw491/i686-491-win32-sjlj-rt_v3-rev3/mingw32
--with-gxx-include-dir=/mingw32/i686-w64-mingw32/include/c++ --enable-shared
--enable-static --enable-targets=all --enable-multilib
--enable-languages=ada,c,c++,fortran,objc,obj-c++,lto
--enable-libstdcxx-time=yes --enable-threads=win32 --enable-libgomp
--enable-libatomic --enable-lto
--enable-graphite --enable-checking=release --enable-fully-dynamic-string
--enable-version-specific-runtime-libs --enable-sjlj-exceptions
--disable-isl-version-check --disable-cloog-version-check
--disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap
--disable-rpath --disable-win32-registry --disable-nls --disable-werror
--disable-symvers --with-gnu-as --with-gnu-ld --with-arch-32=i686
--with-arch-64=nocona --with-tune-32=generic --with-tune-64=core2
--with-libiconv
--with-system-zlib --with-gmp=/c/mingw491/prerequisites/i686-w64-mingw32-static
--with-mpfr=/c/mingw491/prerequisites/i686-w64-mingw32-static
--with-mpc=/c/mingw491/prerequisites/i686-w64-mingw32-static
--with-isl=/c/mingw491/prerequisites/i686-w64-mingw32-static
--with-cloog=/c/mingw491/prerequisites/i686-w64-mingw32-static
--enable-cloog-backend=isl --with-pkgversion='i686-win32-sjlj-rev3, Built by
MinGW-W64 project' --with-bugurl=http://sourceforge.net/projects/mingw-w64
CFLAGS='-O2 -pipe
-I/c/mingw491/i686-491-win32-sjlj-rt_v3-rev3/mingw32/opt/include
-I/c/mingw491/prerequisites/i686-zlib-static/include
-I/c/mingw491/prerequisites/i686-w64-mingw32-static/include' CXXFLAGS='-O2
-pipe -I/c/mingw491/i686-491-win32-sjlj-rt_v3-rev3/mingw32/opt/include
-I/c/mingw491/prerequisites/i686-zlib-static/include
-I/c/mingw491/prerequisites/i686-w64-mingw32-static/include' CPPFLAGS=
LDFLAGS='-pipe -L/c/mingw491/i686-491-win32-sjlj-rt_v3-rev3/mingw32/opt/lib
-L/c/mingw491/prerequisites/i686-zlib-static/lib
-L/c/mingw491/prerequisites/i686-w64-mingw32-static/lib
-Wl,--large-address-aware'
Thread model: win32
gcc version 4.9.1 (i686-win32-sjlj-rev3, Built by MinGW-W64 project)

[Bug c++/69687] Buffer Overflow in libiberty

2016-02-10 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69687

Markus Trippelsdorf  changed:

   What|Removed |Added

   Severity|major   |normal

[Bug go/68562] morestack misaligns stack on x86_64

2016-02-10 Thread ian at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68562

--- Comment #10 from ian at gcc dot gnu.org  ---
Author: ian
Date: Wed Feb 10 15:14:05 2016
New Revision: 233273

URL: https://gcc.gnu.org/viewcvs?rev=233273=gcc=rev
Log:
PR go/68562
* config/i386/morestack.S (__stack_split_initialize): Align
stack.

Modified:
trunk/libgcc/ChangeLog
trunk/libgcc/config/i386/morestack.S

[Bug c++/69748] New: SIGSEGV received on vmovdqa instruction during avx-vectorized array initialization

2016-02-10 Thread vladyslav.buslov at harmonicinc dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69748

Bug ID: 69748
   Summary: SIGSEGV received on vmovdqa instruction during
avx-vectorized array initialization
   Product: gcc
   Version: 4.9.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: vladyslav.buslov at harmonicinc dot com
  Target Milestone: ---

Created attachment 37652
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37652=edit
Example program

Recently we switched to march=core-avx2 and got unexpected crash during array
initialization in class constructor.
Problem only appears when __attribute__((__aligned__(64))) is specified for
structure that contains instance of that class.
According to generated asm code it seems that gcc assumes that array memory is
always aligned to 32 and doesn't generate prologue code to process starting
bytes up to aligned address.

I was able to reproduce this issue with very simple and convoluted example
program.

Relevant info:
ccap@daa-52:~/Sandbox/vb$ g++ -std=gnu++11 -g -v -m64 -pthread -march=core-avx2
-O3 -Wall -Wextra -save-temps testavx.cpp
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.9/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.9.2-10'
--with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs
--enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr
--program-suffix=-4.9 --enable-shared --enable-linker-build-id
--libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.9 --libdir=/usr/lib --enable-nls
--with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug
--enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-vtable-verify
--enable-plugin --with-system-zlib --disable-browser-plugin
--enable-java-awt=gtk --enable-gtk-cairo
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64/jre --enable-java-home
--with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64
--with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-amd64
--with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
--enable-objc-gc --enable-multiarch --with-arch-32=i586 --with-abi=m64
--with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic
--enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu
--target=x86_64-linux-gnu
Thread model: posix
gcc version 4.9.2 (Debian 4.9.2-10) 
COLLECT_GCC_OPTIONS='-std=gnu++11' '-g' '-v' '-m64' '-pthread'
'-march=core-avx2' '-O3' '-Wall' '-Wextra' '-save-temps' '-shared-libgcc'
 /usr/lib/gcc/x86_64-linux-gnu/4.9/cc1plus -E -quiet -v -imultiarch
x86_64-linux-gnu -D_GNU_SOURCE -D_REENTRANT testavx.cpp -m64 -march=core-avx2
-std=gnu++11 -Wall -Wextra -g -fworking-directory -O3 -fpch-preprocess -o
testavx.ii
ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/4.9"
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory
"/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/include/c++/4.9
 /usr/include/x86_64-linux-gnu/c++/4.9
 /usr/include/c++/4.9/backward
 /usr/lib/gcc/x86_64-linux-gnu/4.9/include
 /usr/local/include
 /usr/lib/gcc/x86_64-linux-gnu/4.9/include-fixed
 /usr/include/x86_64-linux-gnu
 /usr/include
End of search list.
COLLECT_GCC_OPTIONS='-std=gnu++11' '-g' '-v' '-m64' '-pthread'
'-march=core-avx2' '-O3' '-Wall' '-Wextra' '-save-temps' '-shared-libgcc'
 /usr/lib/gcc/x86_64-linux-gnu/4.9/cc1plus -fpreprocessed testavx.ii -quiet
-dumpbase testavx.cpp -m64 -march=core-avx2 -auxbase testavx -g -O3 -Wall
-Wextra -std=gnu++11 -version -o testavx.s
GNU C++ (Debian 4.9.2-10) version 4.9.2 (x86_64-linux-gnu)
compiled by GNU C version 4.9.2, GMP version 6.0.0, MPFR version
3.1.2-p3, MPC version 1.0.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C++ (Debian 4.9.2-10) version 4.9.2 (x86_64-linux-gnu)
compiled by GNU C version 4.9.2, GMP version 6.0.0, MPFR version
3.1.2-p3, MPC version 1.0.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: ff85870e740eb08c48a56c2c170390f8
COLLECT_GCC_OPTIONS='-std=gnu++11' '-g' '-v' '-m64' '-pthread'
'-march=core-avx2' '-O3' '-Wall' '-Wextra' '-save-temps' '-shared-libgcc'
 as -v --64 -o testavx.o testavx.s
GNU assembler version 2.25 (x86_64-linux-gnu) using BFD version (GNU Binutils
for Debian) 2.25
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.9/:/usr/lib/gcc/x86_64-linux-gnu/4.9/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.9/:/usr/lib/gcc/x86_64-linux-gnu/

[Bug libstdc++/69744] OpenBSD does not define max_align_t

2016-02-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69744

--- Comment #3 from Jonathan Wakely  ---
(In reply to Richard Biener from comment #2)
> stddef.h is provided by GCC itself and thus likely needs "fixing" for OpenBSD
> (see gcc/ginclude/stddef.h)

Yeah, for some reason that header isn't used for this target:

# 1
"/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/include/cstddef"
1
# 42
"/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/include/cstddef"

# 43
"/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/include/cstddef"
3


# 1
"/home/vext01/research/warmup_experiment/work/gcc/sd_build/gcc/include-fixed/stddef.h"
1 3 4
# 54
"/home/vext01/research/warmup_experiment/work/gcc/sd_build/gcc/include-fixed/stddef.h"
3 4
typedef long int ptrdiff_t;
# 80
"/home/vext01/research/warmup_experiment/work/gcc/sd_build/gcc/include-fixed/stddef.h"
3 4
typedef __wint_t wint_t;




typedef __mbstate_t mbstate_t;
# 46
"/home/vext01/research/warmup_experiment/work/gcc/sd_build/x86_64-unknown-openbsd5.8/libstdc++-v3/include/cstddef"
2 3


namespace std
{

  using ::max_align_t;
}


Does include-fixed/stddef.h take priority over GCC's own stddef.h ?

[Bug target/69749] New: Use aligned spill/fill for vector register in interrupt handler

2016-02-10 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69749

Bug ID: 69749
   Summary: Use aligned spill/fill for vector register in
interrupt handler
   Product: gcc
   Version: 5.3.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: hjl.tools at gmail dot com
CC: vaalfreja at gmail dot com
  Target Milestone: ---

On hjl/interrupt/stage1 branch, I got

[hjl@gnu-6 interrupt-2]$ cat y.c
extern void bar (void);

 __attribute__((interrupt))
void
foo (void *frame)
{
  bar ();
}
[hjl@gnu-6 interrupt-2]$ make y.s
/export/build/gnu/gcc/build-x86_64-linux/gcc/xgcc
-B/export/build/gnu/gcc/build-x86_64-linux/gcc/ -S -O2 y.c
[hjl@gnu-6 interrupt-2]$ cat y.s
.file   "y.c"
.text
.p2align 4,,15
.globl  foo
.type   foo, @function
foo:
.LFB0:
.cfi_startproc
pushq   %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq%rsp, %rbp
.cfi_def_cfa_register 6
pushq   %r11
pushq   %r10
pushq   %r9
pushq   %r8
pushq   %rdi
pushq   %rsi
pushq   %rcx
pushq   %rdx
pushq   %rax
andq$-16, %rsp
subq$256, %rsp
movups  %xmm0, -328(%rbp)
.cfi_escape 0x10,0x11,0x3,0x76,0xb8,0x7d
.cfi_offset 11, -24
.cfi_offset 10, -32
.cfi_offset 9, -40
.cfi_offset 8, -48
.cfi_offset 5, -56
.cfi_offset 4, -64
.cfi_offset 2, -72
.cfi_offset 1, -80
.cfi_offset 0, -88
movups  %xmm1, -312(%rbp)
.cfi_escape 0x10,0x12,0x3,0x76,0xc8,0x7d
movups  %xmm2, -296(%rbp)
.cfi_escape 0x10,0x13,0x3,0x76,0xd8,0x7d
movups  %xmm3, -280(%rbp)
.cfi_escape 0x10,0x14,0x3,0x76,0xe8,0x7d
movups  %xmm4, -264(%rbp)
.cfi_escape 0x10,0x15,0x3,0x76,0xf8,0x7d
movups  %xmm5, -248(%rbp)
.cfi_escape 0x10,0x16,0x3,0x76,0x88,0x7e
movups  %xmm6, -232(%rbp)
.cfi_escape 0x10,0x17,0x3,0x76,0x98,0x7e
movups  %xmm7, -216(%rbp)
.cfi_escape 0x10,0x18,0x3,0x76,0xa8,0x7e
movups  %xmm8, -200(%rbp)
.cfi_escape 0x10,0x19,0x3,0x76,0xb8,0x7e
movups  %xmm9, -184(%rbp)
.cfi_escape 0x10,0x1a,0x3,0x76,0xc8,0x7e
movups  %xmm10, -168(%rbp)
.cfi_escape 0x10,0x1b,0x3,0x76,0xd8,0x7e
movups  %xmm11, -152(%rbp)
.cfi_escape 0x10,0x1c,0x3,0x76,0xe8,0x7e
movups  %xmm12, -136(%rbp)
.cfi_escape 0x10,0x1d,0x3,0x76,0xf8,0x7e
movups  %xmm13, -120(%rbp)
.cfi_escape 0x10,0x1e,0x3,0x76,0x88,0x7f
movups  %xmm14, -104(%rbp)
.cfi_escape 0x10,0x1f,0x3,0x76,0x98,0x7f
movups  %xmm15, -88(%rbp)
.cfi_escape 0x10,0x20,0x3,0x76,0xa8,0x7f
cld
callbar
movups  -328(%rbp), %xmm0
movups  -312(%rbp), %xmm1
movups  -296(%rbp), %xmm2
movups  -280(%rbp), %xmm3
movups  -264(%rbp), %xmm4
movups  -248(%rbp), %xmm5
movups  -232(%rbp), %xmm6
movups  -216(%rbp), %xmm7
movups  -200(%rbp), %xmm8
movups  -184(%rbp), %xmm9
movups  -168(%rbp), %xmm10
movups  -152(%rbp), %xmm11
movups  -136(%rbp), %xmm12
movups  -120(%rbp), %xmm13
movups  -104(%rbp), %xmm14
movups  -88(%rbp), %xmm15
leaq-72(%rbp), %rsp
.cfi_restore 29
.cfi_restore 28
.cfi_restore 27
.cfi_restore 26
.cfi_restore 25
.cfi_restore 24
.cfi_restore 23
.cfi_restore 22
.cfi_restore 21
.cfi_restore 20
.cfi_restore 19
.cfi_restore 18
.cfi_restore 17
popq%rax
popq%rdx
popq%rcx
popq%rsi
popq%rdi
popq%r8
popq%r9
popq%r10
popq%r11
popq%rbp
.cfi_def_cfa 7, 8
iretq
.cfi_endproc
.LFE0:
.size   foo, .-foo
.ident  "GCC: (GNU) 6.0.0 20160209 (experimental)"
.section.note.GNU-stack,"",@progbits
[hjl@gnu-6 interrupt-2]$ 

We should use aligned spill/fill for vector registers.

[Bug tree-optimization/69702] [4.9/5/6 Regression] excessive stack usage with -fprofile-arcs, LIM store motion lacks a register pressure aware cost model

2016-02-10 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69702

--- Comment #3 from rguenther at suse dot de  ---
On Wed, 10 Feb 2016, arnd at linaro dot org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69702
> 
> --- Comment #2 from Arnd Bergmann  ---
> Thanks, I have now added -fno-tree-loop-im to the kernel gcov cflags, so files
> we profile will be built with that. I can confirm that it fixes all stack size
> warnings that show up with -fprofile-arcs, I found around a dozen of them in
> various parts of the kernel.
> 
> Are there any downsides to doing this for all compiler versions? I don't think
> we care much about a missed optimization when CGOV is used, and nobody ships
> that on production systems. I guess for older gcc releases it's not necessary
> to disable tree-loop-im, but it's not easy to make this conditional on the gcc
> version without major surgery in the kernel build system.

Downsides are only missed optimizations.  Esp. for profiling it was
requested that the couter updates were combined which only will happen
(possibly) when we apply store motion.

> I'm also adding -Wno-maybe-uninitialized now, because -fprofile-arcs also
> introduces countless "error: '...' may be used uninitialized in this function
> [-Werror=maybe-uninitialized]" warnings that I don't see without
> -fprofile-arcs, and those are all false positives. Let me know if I should 
> open
> another bug report for those (I assume there isn't really much to do, based on
> my reading of https://gcc.gnu.org/wiki/Better_Uninitialized_Warnings).

I don't remember seeing such bug so yes please.

> I also found two other files in the kernel that doen't build correctly once
> -fprofile-arcs is enabled (with or without tree-loop-im), I'll report those as
> separate bugs.

Thanks.

[Bug tree-optimization/68021] [6 Regression] ice in rewrite_use_nonlinear_expr with -O3

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68021

Jakub Jelinek  changed:

   What|Removed |Added

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

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

[Bug c++/69649] [6 Regression] ICE in assign_temp

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69649

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 15:06:20 2016
New Revision: 233271

URL: https://gcc.gnu.org/viewcvs?rev=233271=gcc=rev
Log:
PR ipa/69241
PR c++/69649
* gimplify.c (gimplify_modify_expr): Set lhs even for noreturn
calls if the return type is TREE_ADDRESSABLE.
* cgraphunit.c (cgraph_node::expand_thunk): Likewise.
* ipa-split.c (split_function): Fix doubled "we" in comment.
Use void return type for the split part even if
!split_point->split_part_set_retval.

* g++.dg/ipa/pr69241-1.C: New test.
* g++.dg/ipa/pr69241-2.C: New test.
* g++.dg/ipa/pr69241-3.C: New test.
* g++.dg/ipa/pr69649.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/ipa/pr69241-1.C
trunk/gcc/testsuite/g++.dg/ipa/pr69241-2.C
trunk/gcc/testsuite/g++.dg/ipa/pr69241-3.C
trunk/gcc/testsuite/g++.dg/ipa/pr69649.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cgraphunit.c
trunk/gcc/gimplify.c
trunk/gcc/ipa-split.c
trunk/gcc/testsuite/ChangeLog

[Bug c/69746] [6 Regression] diagnostic about non-constant expression not helpful

2016-02-10 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69746

Marek Polacek  changed:

   What|Removed |Added

 CC||mpolacek at gcc dot gnu.org

--- Comment #1 from Marek Polacek  ---
I think it was intentional that we only warn here with -Wshift-overflow=2, but
consider the shift expression as non-constant in any case.

[Bug ipa/69241] [6 Regression] ICE with noreturn and function that return non-POD

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69241

--- Comment #21 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 15:06:20 2016
New Revision: 233271

URL: https://gcc.gnu.org/viewcvs?rev=233271=gcc=rev
Log:
PR ipa/69241
PR c++/69649
* gimplify.c (gimplify_modify_expr): Set lhs even for noreturn
calls if the return type is TREE_ADDRESSABLE.
* cgraphunit.c (cgraph_node::expand_thunk): Likewise.
* ipa-split.c (split_function): Fix doubled "we" in comment.
Use void return type for the split part even if
!split_point->split_part_set_retval.

* g++.dg/ipa/pr69241-1.C: New test.
* g++.dg/ipa/pr69241-2.C: New test.
* g++.dg/ipa/pr69241-3.C: New test.
* g++.dg/ipa/pr69649.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/ipa/pr69241-1.C
trunk/gcc/testsuite/g++.dg/ipa/pr69241-2.C
trunk/gcc/testsuite/g++.dg/ipa/pr69241-3.C
trunk/gcc/testsuite/g++.dg/ipa/pr69649.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cgraphunit.c
trunk/gcc/gimplify.c
trunk/gcc/ipa-split.c
trunk/gcc/testsuite/ChangeLog

[Bug go/68562] morestack misaligns stack on x86_64

2016-02-10 Thread ian at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68562

--- Comment #11 from ian at gcc dot gnu.org  ---
Author: ian
Date: Wed Feb 10 15:14:24 2016
New Revision: 233274

URL: https://gcc.gnu.org/viewcvs?rev=233274=gcc=rev
Log:
PR go/68562
* config/i386/morestack.S (__stack_split_initialize): Align
stack.

Modified:
branches/gcc-5-branch/libgcc/ChangeLog
branches/gcc-5-branch/libgcc/config/i386/morestack.S

[Bug c++/69748] SIGSEGV received on vmovdqa instruction during avx-vectorized array initialization

2016-02-10 Thread vladyslav.buslov at harmonicinc dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69748

--- Comment #1 from Vladyslav Buslov  
---
Created attachment 37653
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37653=edit
temp ii file for example program

[Bug tree-optimization/69652] [6 Regression] [ICE] verify_ssa fail w/ -O2 -ffast-math -ftree-vectorize

2016-02-10 Thread ienkovich at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69652

--- Comment #8 from Ilya Enkovich  ---
Author: ienkovich
Date: Wed Feb 10 15:22:17 2016
New Revision: 233275

URL: https://gcc.gnu.org/viewcvs?rev=233275=gcc=rev
Log:
gcc/

2016-02-10  Yuri Rumyantsev  

PR tree-optimization/69652
* tree-vect-loop.c (optimize_mask_stores): Move declaration of STMT1
to nested loop, did source re-formatting, skip debug statements,
add check on statement with volatile operand, remove dead scalar
statements.

gcc/testsuite/

2016-02-10  Yuri Rumyantsev  

PR tree-optimization/69652
* gcc.dg/torture/pr69652.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/torture/pr69652.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-vect-loop.c

[Bug c++/69657] [6 Regression] abs() not inlined after including math.h

2016-02-10 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69657

--- Comment #12 from Jason Merrill  ---
Author: jason
Date: Wed Feb 10 15:34:59 2016
New Revision: 233278

URL: https://gcc.gnu.org/viewcvs?rev=233278=gcc=rev
Log:
PR c++/69657

* name-lookup.c (ambiguous_decl): Call remove_hidden_names.
(lookup_name_real_1): Likewise.
(remove_hidden_names): Handle non-functions too.

Added:
trunk/gcc/testsuite/g++.dg/lookup/builtin7.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/name-lookup.c

[Bug bootstrap/68404] [6 Regression] PGO/LTO bootstrap failure on ppc64le

2016-02-10 Thread dje at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68404

David Edelsohn  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |---

--- Comment #27 from David Edelsohn  ---
As Bernd said, this is a work-around, not a fix.

[Bug rtl-optimization/59811] [4.9/5/6 Regression] Huge increase in memory usage and compile time in combine

2016-02-10 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59811

Jeffrey A. Law  changed:

   What|Removed |Added

 CC||law at redhat dot com

--- Comment #12 from Jeffrey A. Law  ---
So Jan fixed the combine issue when he committed his changes to remove
statements which set write-only variables.  That essentially brought the
combiner down to nothing.  Hard to believe since it was just a dozen or so
nodes that were determined to be write-only.  But that was double-checked by
just hacking out the call to set_writeonly_bit in one of the older compilers I
was testing.

Richi's change to improve DOM's handling of aliased loads helps considerably if
someone were to disable the IPA propagation bits.

Unfortunately we're still burning a lot of time in the alias walking.  So we
can't reasonably consider this resolved for gcc-6:


 alias stmt walking  :  38.67 (64%) usr   0.01 ( 7%) sys  38.64 (64%) wall 
 2 kB ( 0%) ggc
 tree copy propagation   :   0.01 ( 0%) usr   0.00 ( 0%) sys   0.00 ( 0%) wall 
 0 kB ( 0%) ggc
 combiner:   0.35 ( 1%) usr   0.01 ( 7%) sys   0.36 ( 1%) wall 
  2709 kB ( 2%) ggc
 integrated RA   :   2.27 ( 4%) usr   0.00 ( 0%) sys   2.31 ( 4%) wall 
  6634 kB ( 4%) ggc
 LRA hard reg assignment :   4.39 ( 7%) usr   0.01 ( 7%) sys   4.41 ( 7%) wall 
 0 kB ( 0%) ggc

The alias statement walking is a bit surprising.  This is Fortran code after
all, I wouldn't expect a lot of aliasing, I guess it's just a lot of calls into
the alias statement walking code (but I haven't looked to confirm that theory).

I think the RA/LRA times are probably worth some investigation as well once we
get a handle on what's causing alias stmt walking to go nuts.

[Bug c++/69098] [5/6 regression] Member function pointer template flagged with 'is not a function template'

2016-02-10 Thread ppalka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69098

Patrick Palka  changed:

   What|Removed |Added

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

--- Comment #9 from Patrick Palka  ---
(In reply to Jakub Jelinek from comment #7)
> (In reply to Patrick Palka from comment #6)
> > This fixes it:
> 
> Are you going to post it to gcc-patches (with ChangeLog and testcase)?

It doesn't yet make sense to me why r226642 introduces this regression. Once I
figure it out I'll post the patch.

[Bug testsuite/69573] FAIL: gcc.dg/pr61053.c (test for excess errors)

2016-02-10 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69573

--- Comment #10 from Martin Sebor  ---
Sorry, the first comment on the assembly should have said -m32, like so:

.long   16<<< _Alignof(long double) with -m32

[Bug libstdc++/69751] New: error: call of overloaded 'abs(size_t)' is ambiguous

2016-02-10 Thread martin.gansser at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69751

Bug ID: 69751
   Summary: error: call of overloaded 'abs(size_t)' is ambiguous
   Product: gcc
   Version: 6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libstdc++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: martin.gansser at gmail dot com
  Target Milestone: ---

g++ -c -ggdb -O0 -O2 -g -pipe -Wall -Werror=format-security
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -fPIC
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/mysql
-I/usr/include/python2.7 -I/usr/include/python2.7 -D_GNU_SOURCE
-DBINDEST='"/usr/bin"' -DTARGET='"epgd"' -DLOG_PREFIX='""'
-DPLGDIR='"/usr/lib64/epgd"' -DUSEUUID -DUSEMD5 -DUSELIBXML -DUSELIBARCHIVE
-DUSEJSON -DUSEGUNZIP -I/usr/include/libxml2 -I/usr/include/libxml2 
-DGIT_REV='""' -o series.o series.c
series.c: In member function 'int cEpgd::evaluateEpisodes()':
series.c:90:99: error: call of overloaded 'abs(size_t)' is ambiguous
if (::abs(strlen(evtCompShortText) -
strlen(episodeDb->getStrValue("COMPPARTNAME"))) >= dMin)
   
   ^
In file included from /usr/include/c++/6.0.0/cstdlib:75:0,
 from /usr/include/c++/6.0.0/stdlib.h:36,
 from /usr/include/libxml2/libxml/SAX.h:16,
 from /usr/include/libxml2/libxml/globals.h:20,
 from /usr/include/libxml2/libxml/xmlIO.h:117,
 from /usr/include/libxml2/libxml/parser.h:811,
 from /usr/include/libxslt/transform.h:15,
 from epgd.h:11,
 from series.c:8:
/usr/include/stdlib.h:774:12: note: candidate: int abs(int)
 extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur;
^~~
the program compiles fine with gcc-5.3.1

[Bug ipa/69241] [6 Regression] ICE with noreturn and function that return non-POD

2016-02-10 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69241

--- Comment #25 from Markus Trippelsdorf  ---
(In reply to Jakub Jelinek from comment #24)
> The #c1 testcase doesn't bother to return a value from the function, does
> Chromium has similar garbage in it?

Actually, the chromium file, from which the testcase was reduced,
compiles fine now.
I will run a full chromium build and close this bug if it succeeds.

[Bug ipa/69241] [6 Regression] ICE with noreturn and function that return non-POD

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69241

--- Comment #26 from Jakub Jelinek  ---
Created attachment 37654
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37654=edit
gcc6-pr69241.patch

Well, we shouldn't ICE even on questionable testcases where -Wreturn-type
complains on them.  Untested patch that ought to fix that.

[Bug testsuite/69573] FAIL: gcc.dg/pr61053.c (test for excess errors)

2016-02-10 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69573

--- Comment #9 from Martin Sebor  ---
I built the x86_64-apple-darwin15.3.0 cross-compiler to better understand what
the problem is but I don't see it.  The cross compiler says the size and
alignment of long double is 16 in both ILP32 (with -m32) and LP64.  So the
patched test should pass without any further changes.

Can you let me know the target triple of your GCC and the result of
_Alignof(long double)?  Below is what I get:

$ (set -x; cat t.c && for m in 32 64; do
/build/sysroot/x86_64-apple-darwin15.3.0/bin/x86_64-apple-darwin15.3.0-gcc -S
-Wall -m$m -o/dev/stdout -std=c11 t.c; done)
+ cat t.c
int alignof_long_double = _Alignof (long double);
long double ld = 1;
+ for m in 32 64
+ /build/sysroot/x86_64-apple-darwin15.3.0/bin/x86_64-apple-darwin15.3.0-gcc -S
-Wall -m32 -o/dev/stdout -std=c11 t.c
.globl _alignof_long_double
.data
.align 2
_alignof_long_double:
.long   16<<< _Alignof(long double) in -m64
.globl _ld
.align 4  <<< alignment of ld (2^4 bytes)
_ld:
.long   0
.long   2147483648
.long   16383
.long   0
.subsections_via_symbols
+ for m in 32 64
+ /build/sysroot/x86_64-apple-darwin15.3.0/bin/x86_64-apple-darwin15.3.0-gcc -S
-Wall -m64 -o/dev/stdout -std=c11 t.c
.globl _alignof_long_double
.data
.align 2
_alignof_long_double:
.long   16<<< _Alignof(long double) with -m64
.globl _ld
.align 4  <<< alignment of ld (2^4 bytes)
_ld:
.long   0
.long   2147483648
.long   16383
.long   0
.subsections_via_symbols

[Bug rtl-optimization/69752] New: Reload removing instruction with side-effect

2016-02-10 Thread andre.simoesdiasvieira at arm dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69752

Bug ID: 69752
   Summary: Reload removing instruction with side-effect
   Product: gcc
   Version: 6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: rtl-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: andre.simoesdiasvieira at arm dot com
  Target Milestone: ---

This behavior was caught when debugging the following fail for -mcpu=cortex-m0:
FAIL: g++.dg/torture/vshuf-v2di.C -O2 execution test


After some debugging I noticed that reload would remove an insn that contained
a post_inc which would cause the shuffle to be off by 4 (the value of the post
increase).

Using the exact same sources as the testsuite, if you compile with
-fdump-rtl-all you can observe that pre reload (ira) you encounter the
following sequence of RTL:

(insn 455 191 213 6 (set (reg/f:SI 267)
(reg/f:SI 379)) 748 {*thumb1_movsi_insn}
 (nil))
(insn 213 455 216 6 (set (reg:SI 266)
(mem/u/c:SI (post_inc:SI (reg/f:SI 267)) [4  S4 A32])) 748
{*thumb1_movsi_insn}
 (expr_list:REG_EQUIV (const_int -1044200508 [0xc1c2c3c4])
(expr_list:REG_INC (reg/f:SI 267)
(nil
(insn 216 213 218 6 (set (reg:SI 268)
(mem/u/c:SI (reg/f:SI 267) [4  S4 A64])) 748 {*thumb1_movsi_insn}
 (expr_list:REG_DEAD (reg/f:SI 267)
(nil)))

Where pseudo register 267 is post_incremented in insn 213 and used in insn 216
right after.

After reload:

...
Removing equiv init insn 443 (freq=107)
  443: r381:SI=sfp:SI+0x10
  REG_EQUIV sfp:SI-0x40
deleting insn with uid = 443.
...
(insn 455 191 213 6 (set (reg/f:SI 5 r5 [267])
(reg/f:SI 2 r2 [379])) 748 {*thumb1_movsi_insn}
 (nil))
(note 213 455 216 6 NOTE_INSN_DELETED)
(insn 216 213 521 6 (set (reg:SI 5 r5 [268])
(mem/u/c:SI (reg/f:SI 5 r5 [267]) [4  S4 A64])) 748
{*thumb1_movsi_insn}
 (nil))

As you see pseudo register 268 (now in r5), will be loaded from mem (r5) which
is still pointing to the old value of 267 and not the increased one, causing an
offset error of 4. I checked and pseudo register 748 is the same in both cases.
Also adding -fno-auto-inc to the test will yield a PASS result.

[Bug target/69750] ICE in sh64 targetted gcc-6

2016-02-10 Thread dhowells at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69750

--- Comment #1 from dhowells at redhat dot com  ---
Doing gdb ./gcc/cc1 and running it with:

r -quiet foo.c -g -fexceptions -o /tmp/cc5gm5ki.s 

shows the failure as:

Program received signal SIGSEGV, Segmentation fault.
_IO_vfprintf_internal (s=s@entry=0x7bfff4e0, 
format=format@entry=0xea2d7b "*%s%s%ld", ap=ap@entry=0x7bfff608)
at vfprintf.c:1311
1311  f = lead_str_end = __find_specmb ((const UCHAR_T *) format);


Asking for a backtrace gives at least 6000 entries, starting like this:

#0  _IO_vfprintf_internal (s=s@entry=0x7bfff4e0, 
format=format@entry=0xea2d7b "*%s%s%ld", ap=ap@entry=0x7bfff608)
at vfprintf.c:1311
#1  0x766e488b in __IO_vsprintf (string=0x7bfff7b0 "\004", 
format=0xea2d7b "*%s%s%ld", args=args@entry=0x7bfff608)
at iovsprintf.c:42
#2  0x766c7e57 in __sprintf (s=s@entry=0x7bfff7b0 "\004", 
format=format@entry=0xea2d7b "*%s%s%ld") at sprintf.c:32
#3  0x00b716f4 in force_const_mem (mode=mode@entry=SImode, 
x=x@entry=0x7fffea163e70) at ../../gcc-6.0.0-20160205/gcc/varasm.c:3732
#4  0x006cdc43 in emit_move_insn (x=x@entry=0x7fffea163eb8, 
y=y@entry=0x7fffea163e70) at ../../gcc-6.0.0-20160205/gcc/expr.c:3559
#5  0x006b3c70 in force_reg (mode=mode@entry=SImode, 
x=x@entry=0x7fffea163e70) at ../../gcc-6.0.0-20160205/gcc/explow.c:631
#6  0x006b490e in force_reg (x=0x7fffea163e70, mode=SImode)
at ../../gcc-6.0.0-20160205/gcc/explow.c:451
#7  memory_address_addr_space (mode=SImode, x=0x7fffea163e70, 
as=) at ../../gcc-6.0.0-20160205/gcc/explow.c:457
#8  0x006a0775 in change_address_1 (memref=0x7fffea163ea0, 
mode=SImode, mode@entry=VOIDmode, addr=0x7fffea163e70, 
validate=validate@entry=1, inplace=)
at ../../gcc-6.0.0-20160205/gcc/emit-rtl.c:2127
#9  0x006a3880 in replace_equiv_address (memref=, 
addr=, inplace=inplace@entry=true)
at ../../gcc-6.0.0-20160205/gcc/emit-rtl.c:2399
#10 0x006b467a in validize_mem (ref=, 
ref@entry=0x7fffea163ea0) at ../../gcc-6.0.0-20160205/gcc/explow.c:495

at this point, #4-#10 repeat:

#11 0x006cdbbb in emit_move_insn (x=x@entry=0x7fffea163e58, 
y=0x7fffea163ea0, y@entry=0x7fffea163e10)
at ../../gcc-6.0.0-20160205/gcc/expr.c:3582
#12 0x006b3c70 in force_reg (mode=mode@entry=SImode, 
x=x@entry=0x7fffea163e10) at ../../gcc-6.0.0-20160205/gcc/explow.c:631
#13 0x006b490e in force_reg (x=0x7fffea163e10, mode=SImode)
at ../../gcc-6.0.0-20160205/gcc/explow.c:451
#14 memory_address_addr_space (mode=SImode, x=0x7fffea163e10, 
as=) at ../../gcc-6.0.0-20160205/gcc/explow.c:457
#15 0x006a0775 in change_address_1 (memref=0x7fffea163e40, 
mode=SImode, mode@entry=VOIDmode, addr=0x7fffea163e10, 
validate=validate@entry=1, inplace=)
at ../../gcc-6.0.0-20160205/gcc/emit-rtl.c:2127
#16 0x006a3880 in replace_equiv_address (memref=, 
addr=, inplace=inplace@entry=true)
at ../../gcc-6.0.0-20160205/gcc/emit-rtl.c:2399

and repeat:

#17 0x006b467a in validize_mem (ref=, 
ref@entry=0x7fffea163e40) at ../../gcc-6.0.0-20160205/gcc/explow.c:495
#18 0x006cdbbb in emit_move_insn (x=x@entry=0x7fffea163df8, 
...

[Bug c++/54483] undefined reference to static constexpr in .so

2016-02-10 Thread ddsherstennikov at ya dot ru
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54483

Denis Sherstennikov  changed:

   What|Removed |Added

 CC||ddsherstennikov at ya dot ru

--- Comment #10 from Denis Sherstennikov  ---
Still an issue at gcc 5.3.0.

[Bug target/69748] SIGSEGV received on vmovdqa instruction during avx-vectorized array initialization

2016-02-10 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69748

Andrew Pinski  changed:

   What|Removed |Added

 Resolution|INVALID |DUPLICATE

--- Comment #4 from Andrew Pinski  ---
Dup of bug 15795.  The real issue is operator new does not know about alignment
requirements.

*** This bug has been marked as a duplicate of bug 15795 ***

[Bug c++/15795] No way to teach operator new anything about alignment requirements

2016-02-10 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=15795

Andrew Pinski  changed:

   What|Removed |Added

 CC||vladyslav.buslov@harmonicin
   ||c.com

--- Comment #43 from Andrew Pinski  ---
*** Bug 69748 has been marked as a duplicate of this bug. ***

[Bug libstdc++/69751] error: call of overloaded 'abs(size_t)' is ambiguous

2016-02-10 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69751

--- Comment #2 from Jonathan Wakely  ---
(In reply to mgans...@alice.de from comment #0)
> series.c:90:99: error: call of overloaded 'abs(size_t)' is ambiguous
> if (::abs(strlen(evtCompShortText) -
> strlen(episodeDb->getStrValue("COMPPARTNAME"))) >= dMin)
> 

This doesn't do what the author of that code thinks it does. If the second
string is longer than the first then the difference between them is not a
negative number, it's a huge unsigned value. Calling abs(int) on a huge
unsigned value will overflow and is undefined behaviour.

This is exactly why calling abs() here should be an error: the code has
undefined behaviour and should be fixed.

[Bug rtl-optimization/69752] Reload removing instruction with side-effect

2016-02-10 Thread andre.simoesdiasvieira at arm dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69752

--- Comment #1 from Andre Vieira  ---
Tried it with GCC 5.2.1 and 6.0, all show the same behavior. For 4.9 I couldnt
reproduce the issue.

[Bug go/68503] [powerpc64le] miscompilation of composite literal

2016-02-10 Thread ian at airs dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68503

Ian Lance Taylor  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |WONTFIX

--- Comment #1 from Ian Lance Taylor  ---
I can't rebuild this any more.  With gc I get

# github.com/juju/juju/environs/configstore
../environs/configstore/disk.go:488: not enough arguments in call to
fslock.NewLock
# github.com/juju/juju/provider/gce/google
../provider/gce/google/instance.go:231: cannot use value (type string) as type
*string in field value
../provider/gce/google/instance.go:247: cannot use item.Value (type *string) as
type string in assignment


I'm going to close this.  If you see anything similar, please attach the first
GIMPLE file.  That should be enough to identify the problem, or put the blame
on the assembler or linker.  Thanks.

[Bug libstdc++/69751] error: call of overloaded 'abs(size_t)' is ambiguous

2016-02-10 Thread martin.gansser at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69751

--- Comment #3 from mgansser at alice dot de  
---
many thanks for supporting me, problem was solved.

[Bug c++/69098] [5/6 regression] Member function pointer template flagged with 'is not a function template'

2016-02-10 Thread ppalka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69098

--- Comment #10 from Patrick Palka  ---
(In reply to Patrick Palka from comment #9)
> (In reply to Jakub Jelinek from comment #7)
> > (In reply to Patrick Palka from comment #6)
> > > This fixes it:
> > 
> > Are you going to post it to gcc-patches (with ChangeLog and testcase)?
> 
> It doesn't yet make sense to me why r226642 introduces this regression. Once
> I figure it out I'll post the patch.

This change

--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -8187,14 +8187,14 @@ lookup_template_class (tree d1, tree arglist, tree
in_decl, tree context,
 tree
 lookup_template_variable (tree templ, tree arglist)
 {
-  tree type = unknown_type_node;
+  tree type = NULL_TREE;
   return build2 (TEMPLATE_ID_EXPR, type, templ, arglist);
 }

made finish_id_expression later wrap the variable-template expression in a
SCOPE_REF since the expression is now considered dependent (dependent_type_p
returns true for a NULL_TREE).  But later during instantiation, tsubst is not
yet prepared to handle a SCOPE_REF whose RHS is a variable template and the
patch I posted seems to address that.

[Bug testsuite/69573] FAIL: gcc.dg/pr61053.c (test for excess errors)

2016-02-10 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69573

--- Comment #8 from Martin Sebor  ---
(In reply to Chen Gang from comment #7)
> Can we check __APPLE_CC__ instead of __SIZEOF_LONG_DOUBLE__ ?

Thanks for testing the patch!  It sounds like on this target, even though
sizeof(long double) is 16, its alignment requirement is less than that.  Let me
see if I can come up with a general solution for this.  If not, I'll go with
your suggestion and poste an updated patch for review.

[Bug libstdc++/69751] error: call of overloaded 'abs(size_t)' is ambiguous

2016-02-10 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69751

Marek Polacek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||mpolacek at gcc dot gnu.org
 Resolution|--- |INVALID

--- Comment #1 from Marek Polacek  ---
This is invalid; calling abs() on an unsigned value does not make sense.
Cf. http://cplusplus.github.io/LWG/lwg-active.html#2192

[Bug target/69671] [6 Regression] FAIL: gcc.target/i386/avx512vl-vpmovqb-1.c scan-assembler-times vpmovqb[ \\t]+[^{\n]*%ymm[0-9]+[^\n]*%xmm[0-9]+{%k[1-7]}{z}(?

2016-02-10 Thread vmakarov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69671

--- Comment #13 from Vladimir Makarov  ---
(In reply to Jakub Jelinek from comment #9)
> But something like that might remove the flexibility from the register
> allocator.
> 
> Wonder why the RA in this case doesn't see that the value loaded into that
> pseudo register is CONST0_RTX which satisfies the C constraint and doesn't
> undo CSE (rematerialize) in that case if it doesn't have that value already
> loaded in the matching register to the output one.

LRA remat is a simple global scope subpass to remove reload loads from memory
by reusing values held in registers.  It does not check constraints at all. 
Adding some checks will complicate the sub-pass much.

I think Kirill proposed a good solution:

"Split all patterns into match_dup and 0_operand by hand"

I believe it will work well for RA.

[Bug libstdc++/69744] OpenBSD does not define max_align_t

2016-02-10 Thread joseph at codesourcery dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69744

--- Comment #4 from joseph at codesourcery dot com  ---
The issue would be t-openbsd setting USER_H to avoid using GCC's own 
headers - thus requiring fixincludes to be set up to fix OpenBSD's own 
headers if they are missing required functionality.

[Bug preprocessor/57580] Repeated _Pragma message directives in macro causes problems

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57580

--- Comment #9 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:22:19 2016
New Revision: 233284

URL: https://gcc.gnu.org/viewcvs?rev=233284=gcc=rev
Log:
Backported from mainline
2015-12-03  Jakub Jelinek  

PR preprocessor/57580
* c-ppoutput.c (print): Change printed field to bool.
Move src_file last for smaller padding.
(init_pp_output): Set print.printed to false instead of 0.
(scan_translation_unit): Fix up formatting.  Set print.printed
to true after printing something other than newline.
(scan_translation_unit_trad): Set print.printed to true instead of 1.
(maybe_print_line_1): Set print.printed to false instead of 0.
(print_line_1): Likewise.
(do_line_change): Set print.printed to true instead of 1.
(cb_define, dump_queued_macros, cb_include, cb_def_pragma,
dump_macro): Set print.printed to false after printing newline.

* c-c++-common/cpp/pr57580.c: New test.
* c-c++-common/gomp/pr57580.c: New test.

Added:
branches/gcc-5-branch/gcc/testsuite/c-c++-common/cpp/pr57580.c
branches/gcc-5-branch/gcc/testsuite/c-c++-common/gomp/pr57580.c
Modified:
branches/gcc-5-branch/gcc/c-family/ChangeLog
branches/gcc-5-branch/gcc/c-family/c-ppoutput.c
branches/gcc-5-branch/gcc/testsuite/ChangeLog

[Bug target/69187] ICE: Aborted when native compiling neon code with __builtin_neon_vmlals_lanev4hi

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69187

--- Comment #14 from Jakub Jelinek  ---
Fixed for 5.4+/6+ so far.

[Bug c++/69753] [6 Regression] bogus: expected primary-expression before ‘>’ token

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69753

Jakub Jelinek  changed:

   What|Removed |Added

   Keywords|ice-on-valid-code   |
 Status|NEW |UNCONFIRMED
   Last reconfirmed|2016-02-10 00:00:00 |
 CC||jakub at gcc dot gnu.org
 Ever confirmed|1   |0

--- Comment #2 from Jakub Jelinek  ---
Most likely related to r233277 aka DR141.

[Bug c++/68926] [4.9/5/6 Regression] decltype and sfinae to check for template instance availability fails to compile

2016-02-10 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68926

--- Comment #7 from Jason Merrill  ---
Author: jason
Date: Wed Feb 10 19:36:19 2016
New Revision: 233306

URL: https://gcc.gnu.org/viewcvs?rev=233306=gcc=rev
Log:
PR c++/68926

* pt.c (resolve_nondeduced_context): Add complain parm.
(do_auto_deduction): Pass it.
* cvt.c (convert_to_void): Likewise.
* decl.c (cp_finish_decl): Likewise.
* init.c (build_new): Likewise.
* rtti.c (get_tinfo_decl_dynamic): Likewise.
* semantics.c (finish_decltype_type): Likewise.
* typeck.c (decay_conversion): Likewise.
* cp-tree.h: Adjust declaration.
* call.c (standard_conversion): Add complain parm, pass it along.
(implicit_conversion): Pass it.

Added:
branches/gcc-5-branch/gcc/testsuite/g++.dg/cpp0x/sfinae56.C
Modified:
branches/gcc-5-branch/gcc/cp/ChangeLog
branches/gcc-5-branch/gcc/cp/call.c
branches/gcc-5-branch/gcc/cp/cp-tree.h
branches/gcc-5-branch/gcc/cp/cvt.c
branches/gcc-5-branch/gcc/cp/decl.c
branches/gcc-5-branch/gcc/cp/init.c
branches/gcc-5-branch/gcc/cp/pt.c
branches/gcc-5-branch/gcc/cp/rtti.c
branches/gcc-5-branch/gcc/cp/semantics.c
branches/gcc-5-branch/gcc/cp/typeck.c

[Bug tree-optimization/66992] [4.9/5/6 Regression] Incorrect array subscript is above bounds warning

2016-02-10 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66992

Jeffrey A. Law  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #5 from Jeffrey A. Law  ---
Definitely a dup of 59124 given the interaction between complete loop unrolling
& VRP.

*** This bug has been marked as a duplicate of bug 59124 ***

[Bug tree-optimization/59124] [4.9/5/6 Regression] Wrong warnings "array subscript is above array bounds"

2016-02-10 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59124

--- Comment #34 from Jeffrey A. Law  ---
*** Bug 66992 has been marked as a duplicate of this bug. ***

[Bug middle-end/67653] [4.9/5 Regression] ICE on valid code on x86_64-linux-gnu: verify_gimple failed

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67653

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:38:42 2016
New Revision: 233295

URL: https://gcc.gnu.org/viewcvs?rev=233295=gcc=rev
Log:
Backported from mainline
2016-01-21  Jakub Jelinek  

PR middle-end/67653
* gimplify.c (gimplify_asm_expr): Warn if it is too late to
attempt to mark memory input operand addressable and
call prepare_gimple_addressable in that case.  Don't adjust
input_location for diagnostics, use error_at instead.

* c-c++-common/pr67653.c: New test.
* gcc.dg/torture/pr29119.c: Add dg-warning.

Added:
branches/gcc-5-branch/gcc/testsuite/c-c++-common/pr67653.c
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/gimplify.c
branches/gcc-5-branch/gcc/testsuite/ChangeLog
branches/gcc-5-branch/gcc/testsuite/gcc.dg/torture/pr29119.c

[Bug c/69669] [5 Regression] ICE with enum __attribute__((mode(QI)))

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69669

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:44:52 2016
New Revision: 233301

URL: https://gcc.gnu.org/viewcvs?rev=233301=gcc=rev
Log:
Backported from mainline
2016-02-04  Jakub Jelinek  

PR c/69669
* c-decl.c (finish_enum): When honoring mode attribute,
make sure to use proper TYPE_MIN_VALUE and TYPE_MAX_VALUE.

* c-c++-common/pr69669.c: New test.

Added:
branches/gcc-5-branch/gcc/testsuite/c-c++-common/pr69669.c
Modified:
branches/gcc-5-branch/gcc/c/ChangeLog
branches/gcc-5-branch/gcc/c/c-decl.c
branches/gcc-5-branch/gcc/testsuite/ChangeLog

[Bug tree-optimization/69714] [5/6 Regression] ffmpeg crc.c test miscompiled

2016-02-10 Thread bernds at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69714

Bernd Schmidt  changed:

   What|Removed |Added

  Attachment #37649|0   |1
is obsolete||

--- Comment #20 from Bernd Schmidt  ---
Created attachment 37655
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37655=edit
Candidate patch v2

Gah. Try this one instead.

[Bug middle-end/69546] [5 Regression] wrong code with -O and simple int128 arithmetics

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69546

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:44:07 2016
New Revision: 233300

URL: https://gcc.gnu.org/viewcvs?rev=233300=gcc=rev
Log:
Backported from mainline
2016-01-30  Jakub Jelinek  

PR tree-optimization/69546
* wide-int.cc (wi::divmod_internal): For unsigned division
where both operands fit into uhwi, if o1 is 1 and o0 has
msb set, if divident_prec is larger than bits per hwi,
clear another quotient word and return 2 instead of 1.
Similarly for remainder with msb in HWI set, if dividend_prec
is larger than bits per hwi.

* gcc.dg/torture/pr69546.c: New test.

Added:
branches/gcc-5-branch/gcc/testsuite/gcc.dg/torture/pr69546-1.c
branches/gcc-5-branch/gcc/testsuite/gcc.dg/torture/pr69546-2.c
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/testsuite/ChangeLog
branches/gcc-5-branch/gcc/wide-int.cc

[Bug sanitizer/69055] Internal compiler error -fsanitize=float-cast-overflow

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69055

Jakub Jelinek  changed:

   What|Removed |Added

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

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

[Bug target/69015] ICE: RTL check: expected code 'code_label', have 'return' in find_cond_trap, at ifcvt.c:3715 with -fno-if-conversion and __builtin_trap()

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69015

--- Comment #6 from Jakub Jelinek  ---
Fixed also for 5.4+.

[Bug tree-optimization/69214] [4.9 Regression] ICE (segfault) at -Os on x86_64-linux-gnu in "fail_abnormal_edge_coalesce"

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69214

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[4.9/5 Regression] ICE  |[4.9 Regression] ICE
   |(segfault) at -Os on|(segfault) at -Os on
   |x86_64-linux-gnu in |x86_64-linux-gnu in
   |"fail_abnormal_edge_coalesc |"fail_abnormal_edge_coalesc
   |e"  |e"

--- Comment #9 from Jakub Jelinek  ---
Fixed also for 5.4+.

[Bug c++/69753] [6 Regression] bogus: expected primary-expression before ‘>’ token

2016-02-10 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69753

Markus Trippelsdorf  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-02-10
 CC||jason at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Markus Trippelsdorf  ---
markus@x4 Release % cat guest_view.ii
class A {
public:
  template  void As();
  static A *FromWebContents();
};
template  class B : A {
  void FromWebContents() {
auto guest = A::FromWebContents();
guest ? guest->As() : nullptr;
  }
};

markus@x4 Release % g++ -c guest_view.ii
guest_view.ii: In member function ‘void B::FromWebContents()’:
guest_view.ii:9:24: error: expected primary-expression before ‘>’ token
 guest ? guest->As() : nullptr;
^
guest_view.ii:9:26: error: expected primary-expression before ‘)’ token
 guest ? guest->As() : nullptr;
  ^

[Bug testsuite/69573] FAIL: gcc.dg/pr61053.c (test for excess errors)

2016-02-10 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69573

Dominique d'Humieres  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-02-10
 Ever confirmed|0   |1

--- Comment #11 from Dominique d'Humieres  ---
On x86_64-apple-darwin15 the test succeeds with the following patch

--- ../_clean/gcc/testsuite/gcc.dg/pr61053.c2014-09-19 12:53:07.0
+0200
+++ gcc/testsuite/gcc.dg/pr61053.c  2016-02-10 19:08:52.0 +0100
@@ -67,9 +67,9 @@ _Alignas (long double) double dld;

 _Alignas (char) long double ldc; /* { dg-error "cannot reduce alignment" } */
 _Alignas (short int) long double lds; /* { dg-error "cannot reduce alignment"
} */
-_Alignas (int) long double ldi; /* { dg-error "cannot reduce alignment" "" {
target { ! { ia32 } } } } */
-_Alignas (long int) long double ldl; /* { dg-error "cannot reduce alignment"
"" { target { ! { ia32 } } } } */
-_Alignas (long long int) long double ldll; /* { dg-error "cannot reduce
alignment" "" { target { ! { ia32 } } } } */
-_Alignas (float) long double ldf; /* { dg-error "cannot reduce alignment" "" {
target { ! { ia32 } } } } */
-_Alignas (double) long double ldd; /* { dg-error "cannot reduce alignment" ""
{ target { ! { ia32 } } } } */
+_Alignas (int) long double ldi; /* { dg-error "cannot reduce alignment" } */
+_Alignas (long int) long double ldl; /* { dg-error "cannot reduce alignment" }
*/
+_Alignas (long long int) long double ldll; /* { dg-error "cannot reduce
alignment" } */
+_Alignas (float) long double ldf; /* { dg-error "cannot reduce alignment" } */
+_Alignas (double) long double ldd; /* { dg-error "cannot reduce alignment" }
*/
 _Alignas (long double) long double ldld;

[Bug c/68960] __attribute__ ((aligned ())) is ignored for OpenMP private variables

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68960

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:28:44 2016
New Revision: 233288

URL: https://gcc.gnu.org/viewcvs?rev=233288=gcc=rev
Log:
Backported from mainline
2016-01-07  Jakub Jelinek  

PR middle-end/68960
* gimple-expr.c (copy_var_decl): If var has DECL_USER_ALIGN set, copy
it and DECL_ALIGN too.

* testsuite/libgomp.c/pr68960.c: New test.

Added:
branches/gcc-5-branch/libgomp/testsuite/libgomp.c/pr68960.c
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/gimple-expr.c
branches/gcc-5-branch/libgomp/ChangeLog

[Bug c/69669] [5 Regression] ICE with enum __attribute__((mode(QI)))

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69669

Jakub Jelinek  changed:

   What|Removed |Added

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

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

[Bug testsuite/69573] FAIL: gcc.dg/pr61053.c (test for excess errors)

2016-02-10 Thread msebor at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69573

--- Comment #12 from Martin Sebor  ---
(In reply to Dominique d'Humieres from comment #11)

Thanks for the update.  That is what I would expect as well.  But removing the
"{ target { ! { ia32 } } }" directives without doing anything for targets where
the alignment of long double is less than 16 (such as IA32 where it's 4) will
cause failures there.  The patch I referenced in comment #2 is designed to
avoid those failures.  Does the patch let the test pass on
x86_64-apple-darwin15, both with -m32 and -m64?

[Bug fortran/69128] [4.9/5 Regression] OpenMP workshare problem with SUM()

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69128

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:29:49 2016
New Revision: 233289

URL: https://gcc.gnu.org/viewcvs?rev=233289=gcc=rev
Log:
Backported from mainline
2016-01-08  Jakub Jelinek  

PR fortran/69128
* trans.h (OMPWS_SCALARIZER_BODY): Define.
(OMPWS_NOWAIT): Renumber.
* trans-stmt.c (gfc_trans_where_3): Only set OMPWS_SCALARIZER_WS
if OMPWS_SCALARIZER_BODY is not set already, and set also
OMPWS_SCALARIZER_BODY until the final loop creation.
* trans-expr.c (gfc_trans_assignment_1): Likewise.
* trans-openmp.c (gfc_trans_omp_workshare): Also clear
OMPWS_SCALARIZER_BODY.
* trans-array.c (gfc_trans_scalarized_loop_end): Don't create
OMP_FOR if OMPWS_SCALARIZER_BODY is set.

* gfortran.dg/gomp/pr69128.f90: New test.

Added:
branches/gcc-5-branch/gcc/testsuite/gfortran.dg/gomp/pr69128.f90
Modified:
branches/gcc-5-branch/gcc/fortran/ChangeLog
branches/gcc-5-branch/gcc/fortran/trans-array.c
branches/gcc-5-branch/gcc/fortran/trans-expr.c
branches/gcc-5-branch/gcc/fortran/trans-openmp.c
branches/gcc-5-branch/gcc/fortran/trans-stmt.c
branches/gcc-5-branch/gcc/fortran/trans.h
branches/gcc-5-branch/gcc/testsuite/ChangeLog

[Bug bootstrap/68404] [6 Regression] PGO/LTO bootstrap failure on ppc64le

2016-02-10 Thread bernds at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68404

--- Comment #29 from Bernd Schmidt  ---
Mike, this isn't about addresses. It's about an earlyclobber output overlapping
an input. Maybe there's an invalid peephole creating such a pattern, or maybe
the output need not be marked earlyclobber - that's the direction you need to
be looking.

[Bug rtl-optimization/64557] get_addr in true_dependence_1 cannot handle VALUE inside an expr

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64557

--- Comment #9 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:34:30 2016
New Revision: 233293

URL: https://gcc.gnu.org/viewcvs?rev=233293=gcc=rev
Log:
Backported from mainline
2016-01-19  Jakub Jelinek  

PR rtl-optimization/68955
PR rtl-optimization/64557
* dse.c (record_store, check_mem_read_rtx): Don't call get_addr
here.  Fix up formatting.
* alias.c (get_addr): Handle VALUE +/- CONST_SCALAR_INT_P.

* gcc.dg/torture/pr68955.c: New test.

Added:
branches/gcc-5-branch/gcc/testsuite/gcc.dg/torture/pr68955.c
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/alias.c
branches/gcc-5-branch/gcc/dse.c
branches/gcc-5-branch/gcc/testsuite/ChangeLog

[Bug rtl-optimization/68955] [6 Regression] wrong code at -O3 on x86-64-linux-gnu in 32-bit mode

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68955

--- Comment #13 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:34:30 2016
New Revision: 233293

URL: https://gcc.gnu.org/viewcvs?rev=233293=gcc=rev
Log:
Backported from mainline
2016-01-19  Jakub Jelinek  

PR rtl-optimization/68955
PR rtl-optimization/64557
* dse.c (record_store, check_mem_read_rtx): Don't call get_addr
here.  Fix up formatting.
* alias.c (get_addr): Handle VALUE +/- CONST_SCALAR_INT_P.

* gcc.dg/torture/pr68955.c: New test.

Added:
branches/gcc-5-branch/gcc/testsuite/gcc.dg/torture/pr68955.c
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/alias.c
branches/gcc-5-branch/gcc/dse.c
branches/gcc-5-branch/gcc/testsuite/ChangeLog

[Bug target/65624] ICE in aarch64-builtins.c when expanding 4-argument aarch64 intrinsic.

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65624

--- Comment #9 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:40:54 2016
New Revision: 233296

URL: https://gcc.gnu.org/viewcvs?rev=233296=gcc=rev
Log:
Backported from mainline
2016-01-21  Stefan Sørensen  
Jakub Jelinek  

PR target/69187
PR target/65624
* config/arm/arm-builtins.c (arm_expand_neon_builtin): Increase
args array size by one to avoid buffer overflow.

* gcc.target/arm/pr69187.c: New test.

Added:
branches/gcc-5-branch/gcc/testsuite/gcc.target/arm/pr69187.c
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/config/arm/arm-builtins.c
branches/gcc-5-branch/gcc/testsuite/ChangeLog

[Bug target/69187] ICE: Aborted when native compiling neon code with __builtin_neon_vmlals_lanev4hi

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69187

--- Comment #13 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:40:54 2016
New Revision: 233296

URL: https://gcc.gnu.org/viewcvs?rev=233296=gcc=rev
Log:
Backported from mainline
2016-01-21  Stefan Sørensen  
Jakub Jelinek  

PR target/69187
PR target/65624
* config/arm/arm-builtins.c (arm_expand_neon_builtin): Increase
args array size by one to avoid buffer overflow.

* gcc.target/arm/pr69187.c: New test.

Added:
branches/gcc-5-branch/gcc/testsuite/gcc.target/arm/pr69187.c
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/config/arm/arm-builtins.c
branches/gcc-5-branch/gcc/testsuite/ChangeLog

[Bug c/68960] __attribute__ ((aligned ())) is ignored for OpenMP private variables

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68960

--- Comment #6 from Jakub Jelinek  ---
Fixed also for 5.4+.

[Bug fortran/69128] [4.9/5 Regression] OpenMP workshare problem with SUM()

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69128

--- Comment #6 from Jakub Jelinek  ---
Fixed also for 5.4+.

[Bug c++/59627] ICE with OpenMP "declare reduction" and -flto

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59627

--- Comment #11 from Jakub Jelinek  ---
Fixed for 5.4+ too.

[Bug driver/69754] New: --print-{file,prog}-name don't work for liblto_plugin.so

2016-02-10 Thread glebfm at altlinux dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69754

Bug ID: 69754
   Summary: --print-{file,prog}-name don't work for
liblto_plugin.so
   Product: gcc
   Version: 6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: driver
  Assignee: unassigned at gcc dot gnu.org
  Reporter: glebfm at altlinux dot org
CC: amker.cheng at gmail dot com, unassigned at gcc dot gnu.org
  Target Milestone: ---
Target: x86_64,arm,aarch64

Created attachment 37656
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37656=edit
proposed fix

+++ This bug was initially created as a clone of Bug #62290 +++

$ gcc -print-file-name=liblto_plugin.so
liblto_plugin.so
$ gcc -print-prog-name=liblto_plugin.so
liblto_plugin.so

gcc -print-prog-name checks for X_OK, but liblto_plugin.so is not executable:
-rw-r--r-- /usr/libexec/gcc/x86_64-alt-linux/5/liblto_plugin.so.0.0.0

The problem is that liblto_plugin.so is installed into $(libexecdir) which is
intended for executable files. The correct location is inside $(libdir) along
with other non-executable files.

[Bug fortran/69741] forall array scalar loop counters

2016-02-10 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69741

Dominique d'Humieres  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-02-10
 Ever confirmed|0   |1

--- Comment #1 from Dominique d'Humieres  ---
Confirmed from 4.8 up to trunk (6.0). I don't see why the code should be
invalid.

[Bug fortran/69741] forall array scalar loop counters

2016-02-10 Thread nickpapior at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69741

Nick  changed:

   What|Removed |Added

   Severity|minor   |critical

--- Comment #2 from Nick  ---
Note that in regular do loops array elements are also not allowed:

```
do ii(2) = 1 , 2
 do ii(1) = 1 , 3
a(ii(1),ii(2)) = ii(1) * ii(2)
 end do
  end do
```

is also illegal. I think they are related, but if you want me to create a new
bug, please let me know. :)

[Bug c++/69098] [5/6 regression] Member function pointer template flagged with 'is not a function template'

2016-02-10 Thread ppalka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69098

--- Comment #11 from Patrick Palka  ---
There is another bug lurking here, though.  The following test case fails to
compile, even with my proposed patch:

struct A
{
  template 
  static void *pf;
};

template 
bool foo () {
  return B::template pf;
}

bool bar () {
  return foo();
}


69098.C: In instantiation of ‘bool foo() [with B = A]’:
69098.C:16:17:   required from here
69098.C:12:10: error: ‘A::pf<0>’ is not a template [-fpermissive]
   return B::template pf;
  ^

[Bug tree-optimization/69468] tail merge should ignore private edge flags

2016-02-10 Thread vmakarov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69468

--- Comment #1 from Vladimir Makarov  ---
Author: vmakarov
Date: Wed Feb 10 18:01:40 2016
New Revision: 233283

URL: https://gcc.gnu.org/viewcvs?rev=233283=gcc=rev
Log:
2016-02-10  Vladimir Makarov  

PR target/69148
* lra-constraints.c (curr_insn_transform): Find in/out operands
for secondary memory moves.  Update dups.

2016-02-10  Vladimir Makarov  

PR target/69468
* gcc.target/s390/pr69148.c: New.


Added:
trunk/gcc/testsuite/gcc.target/s390/pr69148.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/lra-constraints.c
trunk/gcc/testsuite/ChangeLog

[Bug target/69148] [5/6 Regression] ICE (floating point exception) on s390x-linux-gnu

2016-02-10 Thread vmakarov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69148

--- Comment #6 from Vladimir Makarov  ---
Author: vmakarov
Date: Wed Feb 10 18:01:40 2016
New Revision: 233283

URL: https://gcc.gnu.org/viewcvs?rev=233283=gcc=rev
Log:
2016-02-10  Vladimir Makarov  

PR target/69148
* lra-constraints.c (curr_insn_transform): Find in/out operands
for secondary memory moves.  Update dups.

2016-02-10  Vladimir Makarov  

PR target/69468
* gcc.target/s390/pr69148.c: New.


Added:
trunk/gcc/testsuite/gcc.target/s390/pr69148.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/lra-constraints.c
trunk/gcc/testsuite/ChangeLog

[Bug rtl-optimization/57676] [4.9/5/6 Regression] ICE: Maximum number of LRA constraint passes is achieved (30)

2016-02-10 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57676

--- Comment #9 from Jeffrey A. Law  ---
Vlad, would it make sense to record what insns needed a reload & what insns
were generated for reloads.  Then on the next iteration, if the insns needing a
reload are different than the ones needing reloads in previous iterations +
insns generated for reloads in previous iterations, allow iteration to
continue.

ie, detect the case when we've got this kind of cascading effect and we're
still making progress and as long as we're still making progress allow
iteration to continue.

[Bug sanitizer/69055] Internal compiler error -fsanitize=float-cast-overflow

2016-02-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69055

--- Comment #11 from Jakub Jelinek  ---
Author: jakub
Date: Wed Feb 10 18:27:20 2016
New Revision: 233287

URL: https://gcc.gnu.org/viewcvs?rev=233287=gcc=rev
Log:
Backported from mainline
2016-01-01  Jakub Jelinek  

PR sanitizer/69055
* ubsan.c (ubsan_instrument_float_cast): Call
initialize_sanitizer_builtins.

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

Added:
branches/gcc-5-branch/gcc/testsuite/gfortran.dg/pr69055.f90
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/testsuite/ChangeLog
branches/gcc-5-branch/gcc/ubsan.c

  1   2   3   >