)漂/2019年05月27日

2019-05-27 Thread 開#发+
代開各行业【普通、增值税】
电、微:139-2552-3045唐经理;gcc-bugs

[Bug middle-end/85598] [7/8 Regression] Incorrect -Wformat-truncation in a loop only at -O2 and -O3

2019-05-27 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85598

--- Comment #25 from rguenther at suse dot de  ---
On Fri, 24 May 2019, msebor at gcc dot gnu.org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85598
> 
> Martin Sebor  changed:
> 
>What|Removed |Added
> 
>   Known to work||9.0
> Summary|[7/8 Regression] Incorrect  |[7/8 Regression] Incorrect
>|warning only at -O2 and -O3 |-Wformat-truncation in a
>||loop only at -O2 and -O3
>   Known to fail||6.3.0, 7.3.0, 8.2.0
> 
> --- Comment #24 from Martin Sebor  ---
> I'm guessing this is not going to be backported, correct?

I don't see a reason why it could not be.

[Bug debug/90441] [9/10 Regression] corrupt debug info with LTO

2019-05-27 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90441

--- Comment #25 from rguenther at suse dot de  ---
On Sun, 26 May 2019, hoganmeier at gmail dot com wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90441
> 
> --- Comment #22 from krux  ---
> I can also reproduce it without any linker script, simplified code:
> 
> int serial3_available() {}
> struct HardwareSerial3 {
> int available() { serial3_available(); }
> };
> HardwareSerial3 Serial3;
> 
> void yield() { serial3_available(); }
> int main()
> {
> yield();
> }
> 
> $ g++-9 -c -fno-exceptions -fno-rtti -flto -g -O2 main.cpp
> $ g++-9 -o firmware.elf -g -O2 main.o
> $ nm -ClS --radix=d --size-sort firmware.elf
> 4496 0001 T __libc_csu_fininm: DWARF error: could not
> find abbrev number 8

I fear this is the libbfd dwarf reader simply not coping with
DW_AT_abstract_origin in other CUs, being confused as to which
abbrev section it needs to look into (probably using that of
the refering CU instead of the referred to one).

We have

  Compilation Unit @ offset 0xce:
   Length:0x7a (32-bit)
   Version:   4
   Abbrev Offset: 0x64
   Pointer Size:  8
 <0>: Abbrev Number: 1 (DW_TAG_compile_unit)
   DW_AT_producer: (indirect string, offset: 0x1ac): GNU 
GIMPLE 9.1.
0 -mtune=generic -march=x86-64 -g -O2 -O2 -fno-openmp -fno-openacc 
-fno-pie -flt
rans

with 5 abbrev entries refering to the DIE:

  Compilation Unit @ offset 0x14c:
   Length:0x83 (32-bit)
   Version:   4
   Abbrev Offset: 0xb9
   Pointer Size:  8
 <0><157>: Abbrev Number: 1 (DW_TAG_compile_unit)
<158>   DW_AT_producer: (indirect string, offset: 0x26f): GNU 
C++14 9.1.
0 -mtune=generic -march=x86-64 -g -O2 -fno-exceptions -fno-rtti -flto
...
 <1><1aa>: Abbrev Number: 8 (DW_TAG_subprogram)
<1ab>   DW_AT_external: 1
<1ab>   DW_AT_name: (indirect string, offset: 0x2cc): main
<1af>   DW_AT_decl_file   : 1
<1b0>   DW_AT_decl_line   : 8
<1b1>   DW_AT_decl_column : 5
<1b2>   DW_AT_type: <0x191>


so I think this is a BFD bug and to be filed in sourceware bugzilla
(probably enough to have an actual binary with this kind of DWARF
as testcase).

Disclaimer: I didn't actually see whether my guess above is true
(but it looks so obvious ;))

[Bug middle-end/88784] Middle end is missing some optimizations about unsigned

2019-05-27 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88784

--- Comment #19 from rguenther at suse dot de  ---
On Mon, 27 May 2019, ffengqi at gcc dot gnu.org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88784
> 
> --- Comment #18 from Qi Feng  ---
> I only learned gcc for about 2 months, and I have to say that I don't fully
> understand what you guys were saying. Is match.pd the right place to fix this
> issue? Am I in the wrong direction?

Yes, match.pd is the correct place to add this kind of simplifications.
No, please don't use *_{and,or}if codes there if possible.  Yes, as
I said upthread it might be necessary to rewrite some of GCCs
infrastructure to get the pattern applied in all situations.

[Bug testsuite/90615] [10 regression] several vector test cases fail starting with r271553

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90615

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED
   Assignee|unassigned at gcc dot gnu.org  |rguenth at gcc dot 
gnu.org
   Target Milestone|--- |10.0

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

[Bug testsuite/90615] [10 regression] several vector test cases fail starting with r271553

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90615

--- Comment #2 from Richard Biener  ---
Author: rguenth
Date: Mon May 27 07:39:14 2019
New Revision: 271645

URL: https://gcc.gnu.org/viewcvs?rev=271645&root=gcc&view=rev
Log:
2019-05-27  Richard Biener  

PR testsuite/90615
* gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c: Add
-fno-tree-loop-distribute-patterns.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c: Likewise.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c: Likewise.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c: Likewise.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c: Likewise.
* gcc.target/powerpc/vsx-vectorize-1.c: Likewise.

Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c
trunk/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c
trunk/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c
trunk/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
trunk/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c
trunk/gcc/testsuite/gcc.target/powerpc/vsx-vectorize-1.c

[Bug target/90616] Suboptimal code generated for accessing an aligned array.

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90616

--- Comment #1 from Richard Biener  ---
Note GCC 5 is no longer maintained.  Eventually the target could make use of
nonzero_bits knowledge here.

[Bug c++/90617] GCC 9 miscompiles Qt4 "foreach" macro

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90617

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #3 from Richard Biener  ---
There's a duplicate (closed as INVALID) and upstream is aware of this and fixes
are out in the wild.

[Bug target/90619] [10 regression] spec 2017 tests 527.cam4_r and 521.wrf_r segfault while running after r271386

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90619

Richard Biener  changed:

   What|Removed |Added

   Keywords||wrong-code
 Blocks||26163
   Target Milestone|--- |10.0

--- Comment #2 from Richard Biener  ---
I think there's a duplicate and some Fortran rev. was identified as the cause.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26163
[Bug 26163] [meta-bug] missed optimization in SPEC (2k17, 2k and 2k6 and 95)

[Bug target/90619] [10 regression] spec 2017 tests 527.cam4_r and 521.wrf_r segfault while running after r271386

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90619

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||marxin at gcc dot gnu.org
 Resolution|--- |DUPLICATE

--- Comment #3 from Martin Liška  ---
Yes, it's dup of PR90539. Thomas now has a test-case and he's working on a
patch.

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

[Bug middle-end/26163] [meta-bug] missed optimization in SPEC (2k17, 2k and 2k6 and 95)

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26163
Bug 26163 depends on bug 90619, which changed state.

Bug 90619 Summary: [10 regression] spec 2017 tests 527.cam4_r and 521.wrf_r 
segfault while running after r271386
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90619

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |DUPLICATE

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

Martin Liška  changed:

   What|Removed |Added

 CC||seurer at gcc dot gnu.org

--- Comment #27 from Martin Liška  ---
*** Bug 90619 has been marked as a duplicate of this bug. ***

[Bug tree-optimization/90625] fold strcmp(a, b) == 0 to zero for strings of unequal but non-const lengths

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90625

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2019-05-27
 CC||aph at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Richard Biener  ---
Hmm.  So I guess the strlen pass would need to track relations of string
lengths as it operates down the dominator tree.  For example strstr(a, b) is
known
to return NULL in case strlen(b) > strlen(a) and could be folded to
strcmp if strlen(a) == strlen(b)?  So not only [in]equalities are interesting.

Confirmed.

As separately noted in several places GCC misses infrastructure for
representing and simplifying relations.  I'd build these ontop
of tree-affine so we can represent / simplify relations of affine
expressions so we can handle a + 5 < b.  It would also allow to
handle 2*a + b + 3 < c of course, not sure if useful (well, we already
have ISL as a build requirement so ...).  Extending tree-affine to
specify an optional maximum number of sub-expressions might be useful
in this context.

Consider as other obvious user of such infrastructure the late
uninit pass which needs to combine predicates on conditional
initialization to see whether it's true (always initialized).

[Bug c++/90640] New: -Wpointer-arith appears to be enabled by default, but is not reported by --help

2019-05-27 Thread gennaro.prota+gccbugzilla at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90640

Bug ID: 90640
   Summary: -Wpointer-arith appears to be enabled by default, but
is not reported by --help
   Product: gcc
   Version: 7.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: gennaro.prota+gccbugzilla at gmail dot com
  Target Milestone: ---

The following program:

# 1 "pointer_arith_by_default.cpp"
# 1 ""
# 1 ""
# 1 "pointer_arith_by_default.cpp"
int
main()
{
int a = 0 ;
void * p = &a ;
static_cast< void >( p + 1 ) ;
}

compiled, under Cygwin, with the command line below, gives (note the warning):

$ g++ -v -save-temps "pointer_arith_by_default.cpp"
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/lto-wrapper.exe
Target: x86_64-pc-cygwin
Configured with:
/cygdrive/i/szsz/tmpp/gcc/gcc-7.4.0-1.x86_64/src/gcc-7.4.0/configure
--srcdir=/cygdrive/i/szsz/tmpp/gcc/gcc-7.4.0-1.x86_64/src/gcc-7.4.0
--prefix=/usr --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc
--docdir=/usr/share/doc/gcc --htmldir=/usr/share/doc/gcc/html -C
--build=x86_64-pc-cygwin --host=x86_64-pc-cygwin --target=x86_64-pc-cygwin
--without-libiconv-prefix --without-libintl-prefix --libexecdir=/usr/lib
--enable-shared --enable-shared-libgcc --enable-static
--enable-version-specific-runtime-libs --enable-bootstrap --enable-__cxa_atexit
--with-dwarf2 --with-tune=generic
--enable-languages=ada,c,c++,fortran,lto,objc,obj-c++ --enable-graphite
--enable-threads=posix --enable-libatomic --enable-libcilkrts --enable-libgomp
--enable-libitm --enable-libquadmath --enable-libquadmath-support
--disable-libssp --enable-libada --disable-symvers --with-gnu-ld --with-gnu-as
--with-cloog-include=/usr/include/cloog-isl --without-libiconv-prefix
--without-libintl-prefix --with-system-zlib --enable-linker-build-id
--with-default-libstdcxx-abi=gcc4-compatible --enable-libstdcxx-filesystem-ts
Thread model: posix
gcc version 7.4.0 (GCC)
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-shared-libgcc' '-mtune=generic'
'-march=x86-64'
 /usr/lib/gcc/x86_64-pc-cygwin/7.4.0/cc1plus.exe -E -quiet -v -idirafter
/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/../../../../lib/../include/w32api
-idirafter
/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/../../../../x86_64-pc-cygwin/lib/../lib/../../include/w32api
pointer_arith_by_default.cpp -mtune=generic -march=x86-64 -fpch-preprocess -o
pointer_arith_by_default.ii
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory
"/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/include-fixed"
ignoring nonexistent directory
"/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/../../../../x86_64-pc-cygwin/include"
ignoring duplicate directory
"/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/../../../../x86_64-pc-cygwin/lib/../lib/../../include/w32api"
#include "..." search starts here:
#include <...> search starts here:
 /usr/lib/gcc/x86_64-pc-cygwin/7.4.0/include/c++
 /usr/lib/gcc/x86_64-pc-cygwin/7.4.0/include/c++/x86_64-pc-cygwin
 /usr/lib/gcc/x86_64-pc-cygwin/7.4.0/include/c++/backward
 /usr/lib/gcc/x86_64-pc-cygwin/7.4.0/include
 /usr/include
 /usr/lib/gcc/x86_64-pc-cygwin/7.4.0/../../../../lib/../include/w32api
End of search list.
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-shared-libgcc' '-mtune=generic'
'-march=x86-64'
 /usr/lib/gcc/x86_64-pc-cygwin/7.4.0/cc1plus.exe -fpreprocessed
pointer_arith_by_default.ii -quiet -dumpbase pointer_arith_by_default.cpp
-mtune=generic -march=x86-64 -auxbase pointer_arith_by_default -version -o
pointer_arith_by_default.s
GNU C++14 (GCC) version 7.4.0 (x86_64-pc-cygwin)
compiled by GNU C version 7.4.0, GMP version 6.1.2, MPFR version
4.0.1-p11, MPC version 1.1.0, isl version isl-0.16.1-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C++14 (GCC) version 7.4.0 (x86_64-pc-cygwin)
compiled by GNU C version 7.4.0, GMP version 6.1.2, MPFR version
4.0.1-p11, MPC version 1.1.0, isl version isl-0.16.1-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: fad625746d9e5a9fde6f0a54da0c00b5
pointer_arith_by_default.cpp: In function ‘int main()’:
pointer_arith_by_default.cpp:6:28: warning: pointer of type ‘void *’ used in
arithmetic [-Wpointer-arith]
 static_cast< void >( p + 1 ) ;
  ~~^~~
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-shared-libgcc' '-mtune=generic'
'-march=x86-64'
 /usr/lib/gcc/x86_64-pc-cygwin/7.4.0/../../../../x86_64-pc-cygwin/bin/as.exe -v
-o pointer_arith_by_default.o pointer_arith_by_default.s
GNU assembler version 2.29.1 (x86_64-pc-cygwin) using BFD version (GNU
Binutils) 2.29.1.20171006
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/:/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/:/usr/lib/gcc/x86_64-pc-cygwin/:/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/:/usr/lib/gcc/x86_64-pc-cygwin/:/usr/lib/gcc/x86_64-pc-cygwin/

[Bug tree-optimization/90637] [10 Regression] ICE in vect_loop_versioning, at tree-vect-loop-manip.c:3055

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90637

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2019-05-27
 CC||jakub at gcc dot gnu.org,
   ||marxin at gcc dot gnu.org
  Known to work||9.1.0
   Target Milestone|--- |10.0
 Ever confirmed|0   |1
  Known to fail||10.0

--- Comment #1 from Martin Liška  ---
Confirmed, started with r271298.

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2019-05-27
  Component|c   |target
 Ever confirmed|0   |1

--- Comment #1 from Richard Biener  ---
The place of the ICE suggests a problem in target code.  Please provide
preprocessed source, the attached has #include directives.

[Bug c++/90631] this statement may fall through

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90631

Richard Biener  changed:

   What|Removed |Added

   Keywords||diagnostic
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2019-05-27
 Ever confirmed|0   |1

--- Comment #1 from Richard Biener  ---
Confirmed.

[Bug libgomp/90641] New: libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL

2019-05-27 Thread ro at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90641

Bug ID: 90641
   Summary: libgomp.c-c++-common/lastprivate-conditional-1.c etc
FAIL
   Product: gcc
   Version: 10.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libgomp
  Assignee: unassigned at gcc dot gnu.org
  Reporter: ro at gcc dot gnu.org
CC: jakub at gcc dot gnu.org
  Target Milestone: ---
Target: sparc*-*-solaris2.11

The new libgomp.c-c++-common/lastprivate-conditional-[12].c tests FAIL on
32-bit
SPARC:

+FAIL: libgomp.c/../libgomp.c-c++-common/lastprivate-conditional-1.c execution
test
+FAIL: libgomp.c/../libgomp.c-c++-common/lastprivate-conditional-2.c execution
test
+FAIL: libgomp.c++/../libgomp.c-c++-common/lastprivate-conditional-1.c
execution test
+FAIL: libgomp.c++/../libgomp.c-c++-common/lastprivate-conditional-2.c
execution test

Thread 98 received signal SIGSEGV, Segmentation fault.
[Switching to Thread 11 (LWP 11)]
0x000132b0 in foo ()
(gdb) where
#0  0x000132b0 in foo ()
#1  0xff04f22c in gomp_thread_start (xdata=0xffbfcd34)
at /vol/gcc/src/hg/trunk/local/libgomp/team.c:123
#2  0xfec54828 in _lwp_start () from /lib/libc.so.1
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

SIGSEGV above is due a gdb bug, this is really SIGBUS according to truss

0x000132b0 in foo ()
1: x/i $pc
=> 0x132b0 :  sttw  %o0, [ %l0 ]
(gdb) p/x $o0
$1 = 0x0
(gdb) p/x $l0
$2 = 0x2515c

sttw requires 8-byte alignment, so this might be an issue on other
strict-alignment
targets, too.

[Bug libgomp/90641] libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL

2019-05-27 Thread ro at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90641

Rainer Orth  changed:

   What|Removed |Added

   Target Milestone|--- |10.0

[Bug c++/90640] -Wpointer-arith appears to be enabled by default, but is not reported as enabled by --help

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90640

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||marxin at gcc dot gnu.org
 Resolution|--- |FIXED

--- Comment #1 from Martin Liška  ---
Fixed on trunk in r270788.

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

Thomas Koenig  changed:

   What|Removed |Added

 Status|WAITING |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |tkoenig at gcc dot 
gnu.org

--- Comment #28 from Thomas Koenig  ---
https://gcc.gnu.org/ml/fortran/2019-05/msg00173.html reports
the same symptoms for netcdf-fortran-4.4.5, presumably due
to the same issue.

I'll try to fix that one and then see if the SPEC failure disappears
along with it.

Martin, one additional question: When you step up from the segfault
in the executable, is an array constructor passed as an argument
somewhere up the call chain?  This is what appears to cause the trouble
int netcdf.

[Bug libstdc++/90638] Wrong results of pow(complex , T1) function when the T1 type differs from T and from int

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90638

--- Comment #3 from Richard Biener  ---
GCC 7, 8 and 9 for me output

(1,1.46292e-09)
2147483647 2147483648
 (-1,7.77156e-16) (-1,-1.46292e-09)

(1.55377,0.643594)
(1.55377,0.643594) (1.55377,0.643594) (1.55377,0.643594)

(1.55377,0.643594)
(1.55377,0.643594) (1.55377,0.643594) (1.55377,0.643594)

(1.55377,0.643594)
(1.55377,0.643594) (1.55377,0.643594) (1.55377,0.643594)

if this is the correct result this is FIXED.  I can confirm your
reported result with GCC 4.8 but as said that's out of maintainance.
The change in output occurs with GCC 6 so that might be the version
this was fixed.

[Bug tree-optimization/90610] [10 Regression] 526.blender_r miscompared on znver1 with -Ofast -march=native since r271463

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90610

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #6 from Richard Biener  ---
Looking.

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread bogi788 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

--- Comment #2 from bogi788 at hotmail dot com ---
Created attachment 46414
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46414&action=edit
gcc 8.3.0 preprocessed source

The .i file was generated using gcc 8.3.0, since (as mentioned in the
bugreport) gcc 9.1.0 writes an almost empty file.

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread bogi788 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

--- Comment #3 from bogi788 at hotmail dot com ---
Created attachment 46415
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46415&action=edit
gcc 9.1.0 preprocessed source

the same file preprocessed with gcc 9.1.0, though i doubt it'll be much help.

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

--- Comment #29 from Martin Liška  ---
(In reply to Thomas Koenig from comment #28)
> https://gcc.gnu.org/ml/fortran/2019-05/msg00173.html reports
> the same symptoms for netcdf-fortran-4.4.5, presumably due
> to the same issue.
> 
> I'll try to fix that one and then see if the SPEC failure disappears
> along with it.
> 
> Martin, one additional question: When you step up from the segfault
> in the executable, is an array constructor passed as an argument
> somewhere up the call chain?  This is what appears to cause the trouble
> int netcdf.

How can I investigate that? Backtrace:

#0  0x008f706c in netcdf::nf90_put_var_1d_eightbytereal (ncid=7,
varid=23, values=..., start=, count=, 
stride=, map=...) at
netcdf_expanded.f90:1471
#1  0x00453a94 in pionfput_mod::put_var_1d_double (file=..., varid=23,
ival=...) at pionfput_mod.fppized.f90:1476
#2  0x00453b06 in pionfput_mod::put_var_vdesc_1d_double (file=...,
vardesc=..., ival=...) at pionfput_mod.fppized.f90:2468
#3  0x005be633 in cam_history::h_define (restart=4294949912, t=-17380)
at cam_history.fppized.f90:3822
#4  cam_history::wshist (rgnht_in=) at cam_history.fppized.f90:4461
#5  0x007811dc in cam_comp::cam_run4 (cam_out=..., cam_in=...,
rstwr=.FALSE., nlend=.FALSE., yr_spec=0, mon_spec=1, day_spec=1, sec_spec=1800)
at cam_comp.fppized.f90:325
#6  0x0079d809 in atm_comp_mct::atm_run_mct (eclock=..., cdata_a=...,
x2a_a=..., a2x_a=...) at atm_comp_mct.fppized.f90:513
#7  0x007deb03 in ccsm_comp_mod::ccsm_run () at
ccsm_comp_mod.fppized.f90:2408
#8  0x00403772 in ccsm_driver () at ccsm_driver.fppized.f90:58
#9  main (argc=argc@entry=1, argv=0x7fffdffe) at ccsm_driver.fppized.f90:25
#10 0x779b6b7b in __libc_start_main (main=0x403740 , argc=1,
argv=0x7fffdb98, init=, fini=,
rtld_fini=, stack_end=0x7fffdb88) at ../csu/libc-start.c:308
#11 0x004037ba in _start () at ../sysdeps/x86_64/start.S:120

#2  0x00453b06 in pionfput_mod::put_var_vdesc_1d_double (file=...,
vardesc=..., ival=...) at pionfput_mod.fppized.f90:2468
2468ierr = put_var_1d_double (File, vardesc%varid, ival)
(gdb) info locals 
ierr = 

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

--- Comment #4 from Martin Liška  ---
(In reply to bogi788 from comment #2)
> Created attachment 46414 [details]
> gcc 8.3.0 preprocessed source
> 
> The .i file was generated using gcc 8.3.0, since (as mentioned in the
> bugreport) gcc 9.1.0 writes an almost empty file.

Do you see the ICE if you use 8.3.0 generated file? Can you please provide
output of --verbose?

[Bug c/90628] __builtin_mul_overflow writes to const qualified integer

2019-05-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90628

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #3 from Jakub Jelinek  ---
Created attachment 46416
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46416&action=edit
gcc10-pr90628.patch

Untested fix.  I think we should apply this to GCC10+ only.

[Bug tree-optimization/90610] [10 Regression] 526.blender_r miscompared on znver1 with -Ofast -march=native since r271463

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90610

--- Comment #7 from Richard Biener  ---
It's actually cunroll that exposes the issue in zbufclip.  Ah, oops.

[Bug c/90628] __builtin_mul_overflow writes to const qualified integer

2019-05-27 Thread glisse at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90628

--- Comment #4 from Marc Glisse  ---
I wonder if in C it should be controlled by -Wdiscarded-qualifiers. I am happy
with the unconditional error, just asking.

[Bug c/90628] __builtin_mul_overflow writes to const qualified integer

2019-05-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90628

--- Comment #5 from Jakub Jelinek  ---
-Wdiscarded-qualifiers is for when the prototype requires pointer to non-const
and pointer to const is passed, which is the case for the clang style builtins,
but not for __builtin_{add,sub,mul}_overflow, where the function is
type-generic.
So I think the error is better.

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread bogi788 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

--- Comment #5 from bogi788 at hotmail dot com ---
(In reply to Martin Liška from comment #4)
> (In reply to bogi788 from comment #2)
> > Created attachment 46414 [details]
> > gcc 8.3.0 preprocessed source
> > 
> > The .i file was generated using gcc 8.3.0, since (as mentioned in the
> > bugreport) gcc 9.1.0 writes an almost empty file.
> 
> Do you see the ICE if you use 8.3.0 generated file? Can you please provide
> output of --verbose?

gcc 8.3.0 compiles the source file without error, but gcc 9.1.0 still results
in the internal compiler error using gcc 8.3.0's .i file with following output:

Using built-in specs.
COLLECT_GCC=gcc
Target: x86_64-pc-linux-gnu
Configured with: /opt/src/gcc-9.1.0/configure --prefix=/opt --disable-multilib
--enable-languages=c,c++,lto --with-arch=native --with-system-zlib
Thread model: posix
gcc version 9.1.0 (GCC) 
COLLECT_GCC_OPTIONS='-v' '-pthread' '-Wno-unused-result' '-Wsign-compare' '-D'
'NDEBUG' '-g' '-fwrapv' '-O3' '-Wall' '-fdata-sections' '-flto' '-march=native'
'-s' '-fPIC' '-c' '-o' 'build/temp.linux-x86_64-3.7/ti/cache/_time.o' '-g0'
 /opt/libexec/gcc/x86_64-pc-linux-gnu/9.1.0/cc1 -fpreprocessed _time.i
-march=x86-64 -mmmx -mno-3dnow -msse -msse2 -msse3 -mno-ssse3 -mno-sse4a -mcx16
-msahf -mno-movbe -mno-aes -mno-sha -mno-pclmul -mno-popcnt -mno-abm -mno-lwp
-mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-sgx -mno-bmi2 -mno-pconfig
-mno-wbnoinvd -mno-tbm -mno-avx -mno-avx2 -mno-sse4.2 -mno-sse4.1 -mno-lzcnt
-mno-rtm -mno-hle -mno-rdrnd -mno-f16c -mno-fsgsbase -mno-rdseed -mno-prfchw
-mno-adx -mfxsr -mno-xsave -mno-xsaveopt -mno-avx512f -mno-avx512er
-mno-avx512cd -mno-avx512pf -mno-prefetchwt1 -mno-clflushopt -mno-xsavec
-mno-xsaves -mno-avx512dq -mno-avx512bw -mno-avx512vl -mno-avx512ifma
-mno-avx512vbmi -mno-avx5124fmaps -mno-avx5124vnniw -mno-clwb -mno-mwaitx
-mno-clzero -mno-pku -mno-rdpid -mno-gfni -mno-shstk -mno-avx512vbmi2
-mno-avx512vnni -mno-vaes -mno-vpclmulqdq -mno-avx512bitalg -mno-movdiri
-mno-movdir64b -mno-waitpkg -mno-cldemote -mno-ptwrite --param l1-cache-size=32
--param l1-cache-line-size=64 --param l2-cache-size=4096 -mtune=generic -quiet
-dumpbase _time.i -auxbase-strip build/temp.linux-x86_64-3.7/ti/cache/_time.o
-g -g0 -O3 -Wno-unused-result -Wsign-compare -Wall -version -fwrapv
-fdata-sections -flto -fPIC -o /tmp/cchXskmr.s
GNU C17 (GCC) version 9.1.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 9.1.0, GMP version 6.1.2, MPFR version 4.0.2,
MPC version 1.1.0, isl version isl-0.21-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C17 (GCC) version 9.1.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 9.1.0, GMP version 6.1.2, MPFR version 4.0.2,
MPC version 1.1.0, isl version isl-0.21-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
: internal compiler error: in build_common_tree_nodes, at
tree.c:10521

[Bug libgomp/90641] libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL

2019-05-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90641

--- Comment #1 from Jakub Jelinek  ---
Does malloc guarantee sufficient alignment for long long?
What is offsetof (struct gomp_work_share, inline_ordered_team_ids) on the
target?

[Bug c++/90642] New: g++ fails to resolve template function overload

2019-05-27 Thread oknenavin at outlook dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90642

Bug ID: 90642
   Summary: g++ fails to resolve template function overload
   Product: gcc
   Version: 4.8.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: oknenavin at outlook dot com
  Target Milestone: ---

the following code fails to compile:

template 
inline void func(const T&, R...) {}

template 
struct S {};

template 
inline void func(const S&, R...) {}

int main() {
func(42);
func(S()); // OK
func(S(), 1); // NOK
func(S(), 1); // NOK
}

with:

: In function 'int main()':
:13:21: error: call of overloaded 'func(S, int)' is ambiguous
 func(S(), 1); // NOK
 ^
:13:21: note: candidates are:
:2:17: note: void func(const T&, R ...) [with X = int; T = S;
R = {int}]
 inline void func(const T&, R...) {}
 ^
:8:17: note: void func(const S&, R ...) [with X = int; T = int;
R = {int}]
 inline void func(const S&, R...) {}
 ^
:14:26: error: call of overloaded 'func(S, int)' is ambiguous
 func(S(), 1); // NOK
  ^
...

Reproducible with 4.8.1 and 9.1. Compiles with clang (v3.0.0 and v8.0.0), icc
(v13.0.1 and v19.0.1), msvc (v19.14 and v19.20).

[Bug tree-optimization/90610] [10 Regression] 526.blender_r miscompared on znver1 with -Ofast -march=native since r271463

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90610

--- Comment #8 from Richard Biener  ---
Testing

Index: gcc/match.pd
===
--- gcc/match.pd(revision 271644)
+++ gcc/match.pd(working copy)
@@ -5453,8 +5453,8 @@ (define_operator_list COND_TERNARY
   first vector we only can insert the first elt from
   the first vector.  */
at = 0;
-   ins = fold_read_from_vector (cop0, 0);
-   op0 = op1;
+   if ((ins = fold_read_from_vector (cop0, 0)))
+ op0 = op1;
  }
else
  {

[Bug tree-optimization/90637] [10 Regression] ICE in vect_loop_versioning, at tree-vect-loop-manip.c:3055

2019-05-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90637

--- Comment #2 from Jakub Jelinek  ---
Cleaned up testcase.

/* PR tree-optimization/90637 */
/* { dg-do compile } */
/* { dg-options "-fopenmp -O1 --param sink-frequency-threshold=90" } */

int v;

void
foo (int c)
{
  int i;
#pragma omp for simd if (c) lastprivate (v) schedule (static, 16)
  for (i = 0; i < 64; ++i)
v = i;
}

This is something where I had initially punting rather than assert.
I must say what the sinking pass is doing looks very bad, mainly the sinking of
the omp_get_num_threads () from before the outer loop to inside of the outer
loop (but not inner loop), how that can ever be an advantage, instead of
calling it just once, call it several times?
For the reason of the ICE, sinking of the _1 = c_22(D) != 0, perhaps we could
add a hack/workaround to the sink pass not to sink with flag_openmp{,_simd} if
an immediate use is the .GOMP_SIMD_LANE call, or we could try to hoist it out
of the loop again (which wouldn't work if sinking sinks more than one statement
dependent on each other into the loop).

[Bug libstdc++/90634] filesystem::path insane memory allocations

2019-05-27 Thread 1000hz.radiowave at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90634

--- Comment #7 from baltic <1000hz.radiowave at gmail dot com> ---
(In reply to Jonathan Wakely from comment #5)

> So don't store them as filesystem::path objects then, store them as strings
> and create a path as needed.

Type system is here for a reason. And it has advantages to type something,
which is naturally a path, as such, not as an arbitrary string.

> GCC's implementation creates the path components eagerly, so that
> path::iterator meets the requirements of a forward iterator, whereas the
> libc++ implementation creates them lazily during iteration, and so is not a
> valid forward iterator. 

It doesn't have to be. See standard 30.11.7.5:

A path::iterator is a constant iterator satisfying all the requirements of a
bidirectional iterator (27.2.6)
except that, for dereferenceable iterators a and b of type path::iterator with
a == b, there is no requirement
that *a and *b are bound to the same object. Its value_type is path.

> The implementations have different trade-offs. That is not a bug.

Poorly considered trade-offs are called "bad design" ;)
Besides, your implementation breaks the fundamental C++ design principle "you
don't pay for what you don't use". now everyone has to pay x10 memory overhead
even if they are not ever going to iterate over a path object. I agree, that is
not a bug, in C++ world, its a pure crime ;)

[Bug libstdc++/90638] Wrong results of pow(complex , T1) function when the T1 type differs from T and from int

2019-05-27 Thread Igor.Smirnov at cern dot ch
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90638

--- Comment #4 from Igor Smirnov  ---
Richard, thanks for checks. 
Yes this is correct result.
I am wondering, do they correct this problem for complex<> and for inbuilt
types only? 
Is there a possibility for you to run the following program on these new
versions and to show the results:



#include 

template< class T>
double fun(const T& x, int i)
{
  std::cout<<"fun(const T&,  int) is working.\n";
  return x * i;
}


template< class T>
double fun(const T& x, const T& d)
{
  std::cout<<"fun(const T&, const T&) is working.\n";
  return x * d;
}

int main(void)
{
  std::cout<<"fun(1.1, 1)="<<'\n';
  std::cout<

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

--- Comment #6 from Martin Liška  ---
Sorry, I can't reproduce that. Maybe you could test a vanilla GCC built from
source files?

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

--- Comment #7 from Martin Liška  ---
Or you can provide a docker image that will show that?

[Bug tree-optimization/90637] [10 Regression] ICE in vect_loop_versioning, at tree-vect-loop-manip.c:3055

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90637

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #3 from Richard Biener  ---
OK, so sinking computes the correct block to sink to in

  sinkbb = gimple_bb (use);
  sinkbb = select_best_block (frombb, gimple_bb (use), stmt);

  if (sinkbb == frombb)
return false;

  *togsi = gsi_for_stmt (use);

but then picks 'use' for togsi even though that is in a different block...

The following fixes it:

Index: gcc/tree-ssa-sink.c
===
--- gcc/tree-ssa-sink.c (revision 271644)
+++ gcc/tree-ssa-sink.c (working copy)
@@ -439,7 +439,10 @@ statement_sink_location (gimple *stmt, b
  if (sinkbb == frombb)
return false;

- *togsi = gsi_for_stmt (use);
+ if (sinkbb == gimple_bb (use))
+   *togsi = gsi_for_stmt (use);
+ else
+   *togsi = gsi_after_labels (sinkbb);

  return true;
}

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

--- Comment #30 from Thomas Koenig  ---
Hi,

what I mean is if you use "up" several times and list the
source of the calling routines, do you encounter something like

  call foo([1.0, 2.0, 3.0, 4.0])

or

  call foo((/1.0, 2.0, 3.0, 4.0/))

?

This is what I see for netcdf, and then I can also understand what
goes wrong. Such an array constructor would be in read-only memory,
and the current version would try to write back to it on exit -
ouch :-)

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

--- Comment #31 from Martin Liška  ---
I see this:

(gdb) frame
#2  0x00453b06 in pionfput_mod::put_var_vdesc_1d_double (file=...,
vardesc=..., ival=...) at pionfput_mod.fppized.f90:2468
2468ierr = put_var_1d_double (File, vardesc%varid, ival)
(gdb) up
#3  0x005be633 in cam_history::h_define (restart=4294949912, t=-17380)
at cam_history.fppized.f90:3822
3822 ierr = pio_put_var (tape(t)%File, ps0var, (/ps0/))
(gdb) up
#4  cam_history::wshist (rgnht_in=) at cam_history.fppized.f90:4461
4461  call h_define (t, restart)
(gdb) up
#5  0x007811dc in cam_comp::cam_run4 (cam_out=..., cam_in=...,
rstwr=.FALSE., nlend=.FALSE., yr_spec=0, mon_spec=1, day_spec=1, sec_spec=1800)
at cam_comp.fppized.f90:325
325call wshist ()
(gdb) up
#6  0x0079d809 in atm_comp_mct::atm_run_mct (eclock=..., cdata_a=...,
x2a_a=..., a2x_a=...) at atm_comp_mct.fppized.f90:513
513 yr_spec=yr_sync, mon_spec=mon_sync, day_spec=day_sync,
sec_spec=tod_sync)
(gdb) up
#7  0x007deb03 in ccsm_comp_mod::ccsm_run () at
ccsm_comp_mod.fppized.f90:2408
2408 call atm_run_mct( EClock_a, cdata_aa, x2a_aa, a2x_aa)
(gdb) up
#8  0x00403772 in ccsm_driver () at ccsm_driver.fppized.f90:58
58 call ccsm_run()
(gdb) up
#9  main (argc=argc@entry=1, argv=0x7fffdffe) at ccsm_driver.fppized.f90:25
25 use shr_sys_mod,   only: shr_sys_abort
(gdb) up
#10 0x779b6b7b in __libc_start_main (main=0x403740 , argc=1,
argv=0x7fffdb98, init=, fini=,
rtld_fini=, stack_end=0x7fffdb88) at ../csu/libc-start.c:308
308   result = main (argc, argv, __environ MAIN_AUXVEC_PARAM);
(gdb) up
#11 0x004037ba in _start () at ../sysdeps/x86_64/start.S:120
120 ../sysdeps/x86_64/start.S: No such file or directory.

[Bug libstdc++/90638] Wrong results of pow(complex , T1) function when the T1 type differs from T and from int

2019-05-27 Thread glisse at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90638

--- Comment #5 from Marc Glisse  ---
Igor, there are free websites that let you check it for yourself very easily,
for instance https://wandbox.org/ , you can test many versions of the compiler
online there.

[Bug tree-optimization/90610] [10 Regression] 526.blender_r miscompared on znver1 with -Ofast -march=native since r271463

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90610

Richard Biener  changed:

   What|Removed |Added

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

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

[Bug middle-end/26163] [meta-bug] missed optimization in SPEC (2k17, 2k and 2k6 and 95)

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26163
Bug 26163 depends on bug 90610, which changed state.

Bug 90610 Summary: [10 Regression] 526.blender_r miscompared on znver1 with 
-Ofast -march=native since r271463
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90610

   What|Removed |Added

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

[Bug tree-optimization/90610] [10 Regression] 526.blender_r miscompared on znver1 with -Ofast -march=native since r271463

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90610

--- Comment #10 from Richard Biener  ---
Author: rguenth
Date: Mon May 27 10:52:14 2019
New Revision: 271652

URL: https://gcc.gnu.org/viewcvs?rev=271652&root=gcc&view=rev
Log:
2019-05-27  Richard Biener  

PR middle-end/90610
* match.pd (vec_perm): Avoid clobbering op0 when not generating
a bit-insert.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/match.pd

[Bug libgomp/90641] libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL

2019-05-27 Thread ro at CeBiTec dot Uni-Bielefeld.DE
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90641

--- Comment #2 from ro at CeBiTec dot Uni-Bielefeld.DE  ---
> --- Comment #1 from Jakub Jelinek  ---
> Does malloc guarantee sufficient alignment for long long?

It does: 8 bytes for 32-bit, 16 bytes for 64-bit with the libc malloc.

> What is offsetof (struct gomp_work_share, inline_ordered_team_ids) on the
> target?

ptype/o shows

/*  140  | 0 */unsigned int inline_ordered_team_ids[0];
/* XXX 52-byte padding */

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread bogi788 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

--- Comment #8 from bogi788 at hotmail dot com ---
(In reply to Martin Liška from comment #6)
> Sorry, I can't reproduce that. Maybe you could test a vanilla GCC built from
> source files?

This was on gcc 9.1 compiled from source on rhel7. I can't provide a docker
image, but I can try compiling gcc on an Arch Linux box.

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

Martin Liška  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #9 from Martin Liška  ---
(In reply to bogi788 from comment #8)
> (In reply to Martin Liška from comment #6)
> > Sorry, I can't reproduce that. Maybe you could test a vanilla GCC built from
> > source files?
> 
> This was on gcc 9.1 compiled from source on rhel7. I can't provide a docker
> image, but I can try compiling gcc on an Arch Linux box.

@Jakub: Can you please reproduce that?

[Bug c++/90643] New: Code works with differences on ICC and GNU++

2019-05-27 Thread karaul0v at yandex dot ru
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90643

Bug ID: 90643
   Summary: Code works with differences on ICC and GNU++
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: karaul0v at yandex dot ru
  Target Milestone: ---

Users complain that in GNU ++ very strange incredible errors appear in the
game. Which are not in the ICC compilers.

How to find code that can work in ICC with other result than in GNU ++?
(undefined behaviour?)

Any static analyzer can found this problems?

[Bug c++/90643] Code works with differences on ICC and GNU++

2019-05-27 Thread karaul0v at yandex dot ru
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90643

Monster  changed:

   What|Removed |Added

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

--- Comment #1 from Monster  ---
Users complain that in GNU ++ very strange incredible errors appear in the
game. Which are not in the ICC compilers.

How to find code that can work in ICC with other result than in GNU ++?
(undefined behaviour?)

Any static analyzer can found this problems?

[Bug libstdc++/90638] Wrong results of pow(complex , T1) function when the T1 type differs from T and from int

2019-05-27 Thread Igor.Smirnov at cern dot ch
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90638

--- Comment #6 from Igor Smirnov  ---
Mark, thank you for useful advice.

So, my conclusion is that the rules for resolution in the presence of 
function templates are not changed in gcc. For all versions of C++ 
the result generated by this site was the same. The program is compiled without 
"call ... is ambiguous" complaints, and calls the variant of the function 
for "int" argument when called with long double: 

fun(1.1, 1)=
fun(T,  int) is working.
1.1
fun(1.1, 1/2.0)=
fun(T, const T&) is working.
0.55
fun(1.1, (long double)1/2.0)=
fun(T,  int) is working.
0

This behaviour is counter to logic because an identical program with 
with almost identical ordinary functions is NOT compiled with complaint
"prog.cc:21:28: error: call of overloaded 'fun(double, double)' is ambiguous",
see an example below.
Since the user may not even know that the functions are template
(an ordinary function can depend on agruments having a fully specified 
template type), he may not notice this error. 



#include 

double fun(double x, int i)
{
  std::cout<<"fun(double,  int) is working.\n";
  return x * i;
}

double fun(double x, const long double& d)
{
  std::cout<<"fun(double, const long double&) is working.\n";
  return x * d;
}

int main(void)
{
  std::cout<<"fun(1.1, 1)="<<'\n';
  std::cout<

[Bug target/90644] New: Call to __builtin_memcmp not folded for identical vectors

2019-05-27 Thread prathamesh3492 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90644

Bug ID: 90644
   Summary: Call to __builtin_memcmp not folded for identical
vectors
   Product: gcc
   Version: 10.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: prathamesh3492 at gcc dot gnu.org
  Target Milestone: ---

Hi,
For following test-case:

#include 

typedef int32_t vnx4si __attribute__((vector_size (32)));

void foo(int a, int b)
{
  vnx4si v = (vnx4si) { a, b, 1, 2 };
  vnx4si expected = (vnx4si) { a, b, 1, 2 };

  if (__builtin_memcmp (&v, &expected, sizeof (vnx4si)) != 0)
__builtin_abort ();
}

-O2 -ftree-vectorize -march=armv8.2-a+sve folds call to __builtin_memcmp
correctly, since both vectors are identical.

But with -msve-vector-bits=256, it fails to fold the call to
__builtin_memcmp().

The issue can also be reproduced with AdvSIMD: Fails to fold the call to
__builtin_memcmp with vector_size == 16 but folds with vector_size == 32.

Thanks,
Prathamesh

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

--- Comment #32 from Thomas Koenig  ---
Hi Martin,

this

3822 ierr = pio_put_var (tape(t)%File, ps0var, (/ps0/))

looks like the culprit (or rather, where gfortran currently
generates wrong code).  This is consistent with the problem seen
in netcdf, so I feel pretty confident that this is indeed the problem.

To double-check, could you maybe do the following? Assume ps0 is a
real(kind=8) variable, do

...

   real(kind=8) :: ps0_array(1) ! Use the type as ps0

and then

ps0_array(1) = ps0
ierr = pio_put_var (tape(t)%File, ps0var, ps0_array)

and see if the segfault goes away, or at least if this one has
been removed, and there is a different one now :-)

[Bug tree-optimization/90594] [9/10 regression] Spurious popcount emitted

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90594

Richard Biener  changed:

   What|Removed |Added

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

[Bug tree-optimization/90594] [9/10 regression] Spurious popcount emitted

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90594

--- Comment #3 from Richard Biener  ---
Created attachment 46417
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46417&action=edit
prerequesite

This is the prerequesite for getting rid of the seprate pass doing final value
replacement.  It makes DCE elide LC PHI nodes if there's a DEF to eliminate.

Note the patch isn't 100% finished because it doesn't yet deal with the
undefined overflow issue (easy to add) and I've left out cost considerations
(also to incerase coverage for testing).  The factoring is also not actually
factoring (well, if the pass vanishes...).

As followup we'd remove the SCEV cprop pass.

There are still other passes that could consider doing final value replacement
more aggressively of course (unvectorizable/parallelizable reductions,
IVOPTs, etc.).  So the chance is that with the DCE approach mainly aiming
at pattern detection and loop removal we'd regress elsewhere.

I've looked at mitigating the bad decision done for the testcase in this
bug in the final value replacement pass itself but doing so doesn't look
possible w/o replicating DCE.

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

--- Comment #33 from Martin Liška  ---
(In reply to Thomas Koenig from comment #32)
> Hi Martin,
> 
> this
> 
> 3822   ierr = pio_put_var (tape(t)%File, ps0var, (/ps0/))
> 
> looks like the culprit (or rather, where gfortran currently
> generates wrong code).  This is consistent with the problem seen
> in netcdf, so I feel pretty confident that this is indeed the problem.
> 
> To double-check, could you maybe do the following? Assume ps0 is a
> real(kind=8) variable, do
> 
> ...
> 
>real(kind=8) :: ps0_array(1) ! Use the type as ps0
> 
> and then
> 
> ps0_array(1) = ps0
> ierr = pio_put_var (tape(t)%File, ps0var, ps0_array)
> 
> and see if the segfault goes away, or at least if this one has
> been removed, and there is a different one now :-)

Yes, I can confirm it helps. I see a segfault later then.
Thank you.

[Bug tree-optimization/90644] Call to __builtin_memcmp not folded for identical vectors

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90644

Richard Biener  changed:

   What|Removed |Added

   Keywords||missed-optimization
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2019-05-27
  Component|target  |tree-optimization
 Ever confirmed|0   |1

--- Comment #1 from Richard Biener  ---
I think we simply miss folding __builtin_memcmp_eq (&x, &y, CST) to
x != y for compatible register types x/y and CST equal to the registers size.
Of course only for integral typed registers (we might be able to use
VIEW_CONVERT_EXPR to convert to an integer [vector] we can compare though).

I think there's a related bug to "inline" memcmp_eq if it can be performed
with a single register compare (similar to how we inline memcpy).  I
thought we already do this (but IIRC only for size == 1).  Might be we
only do this during RTL expansion.

[Bug tree-optimization/90644] Call to __builtin_memcmp not folded for identical vectors

2019-05-27 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90644

Andrew Pinski  changed:

   What|Removed |Added

   Severity|normal  |enhancement

[Bug libstdc++/90638] Wrong results of pow(complex , T1) function when the T1 type differs from T and from int

2019-05-27 Thread Igor.Smirnov at cern dot ch
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90638

--- Comment #7 from Igor Smirnov  ---
There can be still problems with big integer powers of complex numbers in the
latest versions.
I just don't see a single correct answer.
As above the expected correct responses are marked by "should be" and the
received by "actually".
Notations of version started from "C++" are from the above mentioned site:

---


#include 
#include 
#include 

int main(void)
{
  double phi = M_PI / LONG_MAX;
  std::cout< var0 = std::polar(1.0, phi);
  std::cout< vard0 = std::polar((long double)1.0, phid);
  std::cout< var1 = std::polar(1.0, phi1);
  std::cout<

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread bogi788 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

--- Comment #10 from bogi788 at hotmail dot com ---
(In reply to bogi788 from comment #8)
> (In reply to Martin Liška from comment #6)
> > Sorry, I can't reproduce that. Maybe you could test a vanilla GCC built from
> > source files?
> 
> This was on gcc 9.1 compiled from source on rhel7. I can't provide a docker
> image, but I can try compiling gcc on an Arch Linux box.

gcc 9.1.0 built from the same sources (using the same flags) on arch linux
instead of rhel7 compiles the .c file without internal compiler error.

[Bug tree-optimization/90637] [10 Regression] ICE in vect_loop_versioning, at tree-vect-loop-manip.c:3055

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90637

--- Comment #5 from Richard Biener  ---
Author: rguenth
Date: Mon May 27 13:18:12 2019
New Revision: 271661

URL: https://gcc.gnu.org/viewcvs?rev=271661&root=gcc&view=rev
Log:
2019-05-27  Richard Biener  

PR tree-optimization/90637
* tree-ssa-sink.c (statement_sink_location): Honor the
computed sink location for single-uses.

* gcc.dg/gomp/pr90637.c: New testcase.

Added:
trunk/gcc/testsuite/gcc.dg/gomp/pr90637.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-sink.c

[Bug tree-optimization/90637] [10 Regression] ICE in vect_loop_versioning, at tree-vect-loop-manip.c:3055

2019-05-27 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90637

Richard Biener  changed:

   What|Removed |Added

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

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

[Bug libgomp/90641] libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL

2019-05-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90641

--- Comment #3 from Jakub Jelinek  ---
Created attachment 46418
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46418&action=edit
gcc10-pr90641.patch

Untested fix.

[Bug libstdc++/90638] Wrong results of pow(complex , T1) function when the T1 type differs from T and from int

2019-05-27 Thread Igor.Smirnov at cern dot ch
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90638

--- Comment #8 from Igor Smirnov  ---
Let me add corrections to my previous post.
1. It needs to add (long double) before M_PI / LONG_MAX in the line
long double phid = M_PI / LONG_MAX; 
in the above example. But the result is not changed significantly.
2. Two results for the very last expression for C++ and C++17 are correct.
3. In the other expressions only the versions 4.8.5, C++03 and C++03(GNU) give
completely wrong results. Do you support "C++03"? The other versions give the
correct real component and the imaginary component with wrong sign, but since
this component is anyway extremely small, this can be explained by precision
problems.

[Bug tree-optimization/88440] size optimization of memcpy-like code

2019-05-27 Thread clyon at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88440

--- Comment #26 from Christophe Lyon  ---
Author: clyon
Date: Mon May 27 13:37:57 2019
New Revision: 271662

URL: https://gcc.gnu.org/viewcvs?rev=271662&root=gcc&view=rev
Log:
[testsuite,aarch64,arm] PR88440: Fix testcases

2019-05-27  Christophe Lyon  

PR tree-optimization/88440
gcc/testsuite/
* gcc.target/aarch64/sve/index_offset_1.c: Add
-fno-tree-loop-distribute-patterns.
* gcc.target/aarch64/sve/single_1.c: Likewise.
* gcc.target/aarch64/sve/single_2.c: Likewise.
* gcc.target/aarch64/sve/single_3.c: Likewise.
* gcc.target/aarch64/sve/single_4.c: Likewise.
* gcc.target/aarch64/sve/vec_init_1.c: Likewise.
* gcc.target/aarch64/vect-fmovd-zero.c: Likewise.
* gcc.target/aarch64/vect-fmovf-zero.c: Likewise.
* gcc.target/arm/ivopts.c: Likewise.


Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.target/aarch64/sve/index_offset_1.c
trunk/gcc/testsuite/gcc.target/aarch64/sve/single_1.c
trunk/gcc/testsuite/gcc.target/aarch64/sve/single_2.c
trunk/gcc/testsuite/gcc.target/aarch64/sve/single_3.c
trunk/gcc/testsuite/gcc.target/aarch64/sve/single_4.c
trunk/gcc/testsuite/gcc.target/aarch64/sve/vec_init_1.c
trunk/gcc/testsuite/gcc.target/aarch64/vect-fmovd-zero.c
trunk/gcc/testsuite/gcc.target/aarch64/vect-fmovf-zero.c
trunk/gcc/testsuite/gcc.target/arm/ivopts.c

[Bug libgomp/90641] libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL

2019-05-27 Thread ro at CeBiTec dot Uni-Bielefeld.DE
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90641

--- Comment #4 from ro at CeBiTec dot Uni-Bielefeld.DE  ---
> --- Comment #3 from Jakub Jelinek  ---
> Created attachment 46418
>   --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46418&action=edit
> gcc10-pr90641.patch
>
> Untested fix.

Worked for me: I've rebuilt libgomp with the patch and ran the two
affected tests (as C and C++) for 32 and 64-bit.  All PASS now.

Thanks.
Rainer

[Bug go/90614] gcc-9.1.0/libgo/go/syscall/wait.c:54:22: error: unused parameter ‘w’ [-Werror=unused-parameter] Continued (uint32_t *w)

2019-05-27 Thread mfe at live dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90614

--- Comment #7 from martin  ---
(In reply to Ian Lance Taylor from comment #6)
> Fixed on trunk and GCC 9 branch.

Many thanks!

[Bug go/90645] New: sparc-unknown-linux-gnu/libgo/.libs/libgo.so: undefined reference to `fdopendir'

2019-05-27 Thread mfe at live dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90645

Bug ID: 90645
   Summary: sparc-unknown-linux-gnu/libgo/.libs/libgo.so:
undefined reference to `fdopendir'
   Product: gcc
   Version: 9.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: go
  Assignee: ian at airs dot com
  Reporter: mfe at live dot de
CC: cmang at google dot com
  Target Milestone: ---

the exact version of GCC:
gcc-9.1.0

the system type:
NetgearReadyNAS Duo
(http://wiki.dietpc.org/index.php/DIET-PC_on_SPARC_ReadyNAS)

the options given when GCC was configured/built:
../gcc-9.1.0/configure CC=/opt/gcc-7.1/bin/gcc CXX=/opt/gcc-7.1/bin/g++
--enable-languages=c,c++,go --prefix=/opt/gcc-9.1 --with-cpu=v7
--with-mpc=/usr/local --with-mpfr=/usr/local --with-gmp=/usr/local
--with-isl=/usr/local/ --disable-libstdcxx-pch --disable-linux-futex
--disable-libsanitizer --enable-__cxa_atexit --enable-nls --enable-clocale=gnu
--enable-debug --disable-doc --disable-libcilkrts --disable-libitm


the complete command line that triggers the bug;
/usr/local/bin/make

the compiler output (error messages, warnings, etc.);
[...]
make[2]: Entering directory
'/c/backup/fes-readynasduo/gcc-9.1.0-compiled/gotools'
/backup/fes-readynasduo/gcc-9.1.0-compiled/./gcc/gccgo
-B/backup/fes-readynasduo/gcc-9.1.0-compiled/./gcc/
-B/opt/gcc-9.1/sparc-unknown-linux-gnu/bin/
-B/opt/gcc-9.1/sparc-unknown-linux-gnu/lib/ -isystem
/opt/gcc-9.1/sparc-unknown-linux-gnu/include -isystem
/opt/gcc-9.1/sparc-unknown-linux-gnu/sys-include   -g -O2 -I
../sparc-unknown-linux-gnu/libgo -static-libstdc++ -static-libgcc  -L
../sparc-unknown-linux-gnu/libgo -L ../sparc-unknown-linux-gnu/libgo/.libs -o
go ../../gcc-9.1.0/gotools/../libgo/go/cmd/go/alldocs.go
../../gcc-9.1.0/gotools/../libgo/go/cmd/go/go11.go
../../gcc-9.1.0/gotools/../libgo/go/cmd/go/main.go
../sparc-unknown-linux-gnu/libgo/libgotool.a
../sparc-unknown-linux-gnu/libgo/.libs/libgo.so: undefined reference to
`fdopendir'
../sparc-unknown-linux-gnu/libgo/.libs/libgo.so: undefined reference to
`__sync_bool_compare_and_swap_4'
../sparc-unknown-linux-gnu/libgo/.libs/libgo.so: undefined reference to
`__tls_get_addr'
../sparc-unknown-linux-gnu/libgo/.libs/libgo.so: undefined reference to
`__go_openat'
../sparc-unknown-linux-gnu/libgo/.libs/libgo.so: undefined reference to
`fstatat64'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:821: go] Error 1
make[2]: Leaving directory
'/c/backup/fes-readynasduo/gcc-9.1.0-compiled/gotools'
make[1]: *** [Makefile:15520: all-gotools] Error 2
make[1]: Leaving directory '/c/backup/fes-readynasduo/gcc-9.1.0-compiled'
make: *** [Makefile:993: all] Error 2

 ldd -r /backup/fes-readynasduo/gcc-9.1.0-compiled/gcc/gccgo   
   
  libiconv.so.2 => /usr/local/lib/libiconv.so.2 (0x2002c000)   
   
  libm.so.6 => /lib/libm.so.6 (0x20124000) 
   
  libc.so.6 => /lib/libc.so.6
(0x201b8000)   
   
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x2000)

/backup/fes-readynasduo/gcc-9.1.0-compiled/gcc/gccgo --version 
   
  gccgo (GCC) 9.1.0
   
  Copyright (C) 2019 Free Software Foundation, Inc.
   
  This is free software; see the source
for copying conditions.  There is NO   
  warranty; not
even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 

Not sure which information is important for this bug.

[Bug go/90645] sparc-unknown-linux-gnu/libgo/.libs/libgo.so: undefined reference to `fdopendir'

2019-05-27 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90645

--- Comment #1 from Andrew Pinski  ---
>fdopendir() is available in glibc since version 2.4.

What glibc version are you using?

[Bug go/90645] sparc-unknown-linux-gnu/libgo/.libs/libgo.so: undefined reference to `fdopendir'

2019-05-27 Thread mfe at live dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90645

--- Comment #2 from martin  ---
Created attachment 46419
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46419&action=edit
usr\include\bits

ldd --version  
   
  ldd (GNU libc) 2.3.2 
   
  Copyright (C) 2003 Free Software Foundation, Inc.
   
  This is free software; see the source
for copying conditions.  There is NO   
  warranty; not
even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
   
  Written by Roland McGrath and Ulrich Drepper.

[Bug target/90627] : internal compiler error when compiling cython-generated python3 modules

2019-05-27 Thread bogi788 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90627

--- Comment #11 from bogi788 at hotmail dot com ---
(In reply to Martin Liška from comment #6)
> Sorry, I can't reproduce that. Maybe you could test a vanilla GCC built from
> source files?

I tried again in a new rhel7 vm, going straight from distibution gcc (4.8.5) to
9.1 rather than upgrading from gcc 8.3. That resulted in a gcc 9.1 that didn't
cause an internal compiler error, but since I used the 3 stage build in both
cases I'm not sure how that might have caused the problem.

[Bug c++/90646] New: std::filesystem::absolute( "yourpathhere" ) segfaults

2019-05-27 Thread myLC at gmx dot net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90646

Bug ID: 90646
   Summary: std::filesystem::absolute( "yourpathhere" ) segfaults
   Product: gcc
   Version: 9.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: myLC at gmx dot net
  Target Milestone: ---

This used to work with g++-8.1.0, but segfaults with g++-9.1.0:

std::optional< std::string > Config::read( const std::filesystem::path &path,
const std::string &filename ) {
std::string s;
if( !filename.empty() ) {
std::filesystem::path file( path );
file /= filename;
if( std::filesystem::exists( file ) ) {
std::ifstream input( std::filesystem::absolute( file )
);
std::stringstream buffer;
buffer << input.rdbuf();
if( input.bad() )
goto errout;
s = buffer.str();
}
} else {
errout: return {};
}
return s;
}

Now it crashes at calling "std::filesystem::absolute( file )":
Thread 1 "config_module" received signal SIGSEGV, Segmentation fault.
0x00462b2f in std::unique_ptr::~unique_ptr (
this=0xb, __in_chrg=) at
/usr/include/c++/9/bits/unique_ptr.h:288
288 if (__ptr != nullptr)

(gdb) p __ptr
$1 = (std::filesystem::path::_List::_Impl *&) @0x7fffd1d8: 0x0
(gdb)

[Bug c++/90646] std::filesystem::absolute( "yourpathhere" ) segfaults

2019-05-27 Thread myLC at gmx dot net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90646

--- Comment #1 from myLC at gmx dot net ---
Forgot to mention that it's C++20 (-std=c++2a).

[Bug libstdc++/90646] std::filesystem::absolute( "yourpathhere" ) segfaults

2019-05-27 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90646

Andrew Pinski  changed:

   What|Removed |Added

  Component|c++ |libstdc++

--- Comment #2 from Andrew Pinski  ---
Can you provide a compilable example?

[Bug libstdc++/90646] std::filesystem::absolute( "yourpathhere" ) segfaults

2019-05-27 Thread myLC at gmx dot net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90646

--- Comment #3 from myLC at gmx dot net ---
(In reply to Andrew Pinski from comment #2)
> Can you provide a compilable example?

Good point. The example works, hence the problem seems to be somewhere else:

#include 
#include 
#include 
#include 

std::optional< std::string > read( const std::filesystem::path &path, const
std::string &filename ) {
std::string s;
if( !filename.empty() ) {
std::filesystem::path file( path );
file /= filename;
if( std::filesystem::exists( file ) ) {
std::ifstream input( std::filesystem::absolute( file )
);
std::stringstream buffer;
buffer << input.rdbuf();
if( input.bad() )
goto errout;
s = buffer.str();
}
} else {
errout: return {};
}
return s;
}

int main( int argc, char **argv ) {
std::string read_write_test;
if( auto rwt = read( "./", argv[ 0 ] ) )
read_write_test = *rwt;
if( !read_write_test.empty() )
  std::cout << "fine" << std::endl;
return 0;
}

I need to investigate this further...

[Bug libstdc++/90646] std::filesystem::absolute( "yourpathhere" ) segfaults

2019-05-27 Thread myLC at gmx dot net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90646

myLC at gmx dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |WORKSFORME

--- Comment #4 from myLC at gmx dot net ---
The example works with the same path. The real code is correct, though.
I'm guessing this might have something to do with a 3rd-party library
corrupting memory, The library needs to be built with the same compiler and
options (Nana C++).
I need to rebuild that thing and see, if this fixes it.
I apologize. I should have created an example first.

[Bug c++/90617] GCC 9 miscompiles Qt4 "foreach" macro

2019-05-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90617

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #4 from Jakub Jelinek  ---
See PR44715 and
https://github.com/qt/qtbase/commit/c35a3f519007af44c3b364b9af86f6a336f6411b

[Bug c++/90647] New: Warn on returning a lambda with captured local variables

2019-05-27 Thread antoshkka at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90647

Bug ID: 90647
   Summary: Warn on returning a lambda with captured local
variables
   Product: gcc
   Version: 10.0
Status: UNCONFIRMED
  Keywords: diagnostic
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: antoshkka at gmail dot com
  Target Milestone: ---

Consider the example:

auto test(int s) {
return [&s] { return s; };
}


`s` is a local variable, so we return a lambda that has a dangling reference.

It would be nice to have a warning for such cases.

[Bug c/44715] Break in increment expression of "for" statement inconsistent with g++

2019-05-27 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=44715

Andrew Pinski  changed:

   What|Removed |Added

 CC||bastian.beischer@rwth-aache
   ||n.de

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

[Bug c++/90617] GCC 9 miscompiles Qt4 "foreach" macro

2019-05-27 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90617

Andrew Pinski  changed:

   What|Removed |Added

 Resolution|INVALID |DUPLICATE

--- Comment #5 from Andrew Pinski  ---
So mark as a dup of bug 44715.

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

[Bug c/90648] New: [8/9/10 Regression] ICE tree check: accessed operand 4 of call_expr with 3 operands in generic_simplify_MULT_EXPR, at generic-match.c:27222

2019-05-27 Thread gs...@t-online.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90648

Bug ID: 90648
   Summary: [8/9/10 Regression] ICE tree check: accessed operand 4
of call_expr with 3 operands in
generic_simplify_MULT_EXPR, at generic-match.c:27222
   Product: gcc
   Version: 10.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: gs...@t-online.de
  Target Milestone: ---

Started with gcc-8, compiles with gcc-7 :


$ cat z1.c
extern _Float128 copysignf128 ();
_Float128 foo (_Float128 x)
{
  return x * copysignf128 ();
}


$ cat z2.c
extern _Float128 copysignf128 (x);
double foo (double x)
{
  return x * copysignf128 ();
}


$ gcc-7 -c z1.c
$
$ gcc-10-20190526 -c z1.c
z1.c: In function 'foo':
z1.c:4:14: warning: too few arguments to built-in function 'copysignf128'
expecting 2 [-Wbuiltin-declaration-mismatch]
4 |   return x * copysignf128 ();
  |  ^~~~
z1.c:1:18: note: declared here
1 | extern _Float128 copysignf128 ();
  |  ^~~~
z1.c:4:3: internal compiler error: tree check: accessed operand 4 of call_expr
with 3 operands in generic_simplify_MULT_EXPR, at generic-match.c:27222
4 |   return x * copysignf128 ();
  |   ^~
0x5bd990 tree_operand_check_failed(int, tree_node const*, char const*, int,
char const*)
../../gcc/tree.c:10116
0x64cbb1 tree_operand_check(tree_node*, int, char const*, int, char const*)
../../gcc/tree.h:3685
0x116a717 generic_simplify_MULT_EXPR
.../gcc/generic-match.c:27222
0x11da8fd generic_simplify(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
.../gcc/generic-match.c:53387
0x8d49dd fold_binary_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
../../gcc/fold-const.c:9387
0x8ddeba fold_build2_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
../../gcc/fold-const.c:12327
0x8d4c1d fold_binary_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
../../gcc/fold-const.c:9379
0x8f6ef4 fold(tree_node*)
../../gcc/fold-const.c:11949
0x683cca c_fully_fold_internal
../../gcc/c/c-fold.c:373
0x6850a7 c_fully_fold(tree_node*, bool, bool*, bool)
../../gcc/c/c-fold.c:125
0x629175 c_finish_return(unsigned int, tree_node*, tree_node*)
../../gcc/c/c-typeck.c:10523
0x673c3a c_parser_statement_after_labels
../../gcc/c/c-parser.c:5524
0x6757ce c_parser_compound_statement_nostart
../../gcc/c/c-parser.c:5149
0x675f56 c_parser_compound_statement
../../gcc/c/c-parser.c:4983
0x677873 c_parser_declaration_or_fndef
../../gcc/c/c-parser.c:2355
0x67fea3 c_parser_external_declaration
../../gcc/c/c-parser.c:1653
0x680969 c_parser_translation_unit
../../gcc/c/c-parser.c:1534
0x680969 c_parse_file()
../../gcc/c/c-parser.c:19884
0x6e26d0 c_common_parse_file()
../../gcc/c-family/c-opts.c:1156

[Bug c/90649] New: ICE tree check: accessed operand 4 of call_expr with 3 operands in generic_simplify_EQ_EXPR, at generic-match.c:42857

2019-05-27 Thread gs...@t-online.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90649

Bug ID: 90649
   Summary: ICE tree check: accessed operand 4 of call_expr with 3
operands in generic_simplify_EQ_EXPR, at
generic-match.c:42857
   Product: gcc
   Version: 10.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: gs...@t-online.de
  Target Milestone: ---

Affects versions down to at least gcc-5 :
(release versions need -Ofast)


$ cat z1.c
double sqrt ();
void f ()
{
  !sqrt ();
}


$ gcc-10-20190526 -c z1.c -Ofast
z1.c: In function 'f':
z1.c:4:4: warning: too few arguments to built-in function 'sqrt' expecting 1
[-Wbuiltin-declaration-mismatch]
4 |   !sqrt ();
  |^~~~
z1.c:1:8: note: declared here
1 | double sqrt ();
  |^~~~
z1.c:4:3: internal compiler error: tree check: accessed operand 4 of call_expr
with 3 operands in generic_simplify_EQ_EXPR, at generic-match.c:42857
4 |   !sqrt ();
  |   ^
0x5bd990 tree_operand_check_failed(int, tree_node const*, char const*, int,
char const*)
../../gcc/tree.c:10116
0x64cbb1 tree_operand_check(tree_node*, int, char const*, int, char const*)
../../gcc/tree.h:3685
0x118c201 generic_simplify_EQ_EXPR
.../gcc/generic-match.c:42857
0x11da03d generic_simplify(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
.../gcc/generic-match.c:53417
0x8d49dd fold_binary_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
../../gcc/fold-const.c:9387
0x8ddeba fold_build2_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
../../gcc/fold-const.c:12327
0x6833a9 c_fully_fold_internal
../../gcc/c/c-fold.c:370
0x6850a7 c_fully_fold(tree_node*, bool, bool*, bool)
../../gcc/c/c-fold.c:125
0x61f6d1 c_process_expr_stmt(unsigned int, tree_node*)
../../gcc/c/c-typeck.c:11058
0x61fabd c_finish_expr_stmt(unsigned int, tree_node*)
../../gcc/c/c-typeck.c:11103
0x673898 c_parser_statement_after_labels
../../gcc/c/c-parser.c:5611
0x6757ce c_parser_compound_statement_nostart
../../gcc/c/c-parser.c:5149
0x675f56 c_parser_compound_statement
../../gcc/c/c-parser.c:4983
0x677873 c_parser_declaration_or_fndef
../../gcc/c/c-parser.c:2355
0x67fea3 c_parser_external_declaration
../../gcc/c/c-parser.c:1653
0x680969 c_parser_translation_unit
../../gcc/c/c-parser.c:1534
0x680969 c_parse_file()
../../gcc/c/c-parser.c:19884
0x6e26d0 c_common_parse_file()
../../gcc/c-family/c-opts.c:1156

[Bug d/90650] New: ICE in fold_convert_loc, at fold-const.c:2552

2019-05-27 Thread gs...@t-online.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90650

Bug ID: 90650
   Summary: ICE in fold_convert_loc, at fold-const.c:2552
   Product: gcc
   Version: 10.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: d
  Assignee: ibuclaw at gdcproject dot org
  Reporter: gs...@t-online.de
  Target Milestone: ---

With snapshot from 20190526 :


$ cat z1.d
class c
{
  static f ()
  {
return 0;
  }
}
void g ()
{
  if (0 & [0] & c.f()) {}
}


$ gdc-10-20190526 -c z1.d
z1.d: In function 'g':
z1.d:10:15: internal compiler error: in fold_convert_loc, at fold-const.c:2552
   10 |   if (0 & [0] & c.f()) {}
  |   ^
0x8f27b3 fold_convert_loc(unsigned int, tree_node*, tree_node*)
../../gcc/fold-const.c:2552
0x8ebaf8 fold_binary_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
../../gcc/fold-const.c:9437
0x8f06ca fold_build2_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
../../gcc/fold-const.c:12327
0x76d7fb ExprVisitor::binary_op(tree_code, tree_node*, tree_node*, tree_node*)
../../gcc/d/expr.cc:165
0x76d7fb ExprVisitor::visit(BinExp*)
../../gcc/d/expr.cc:674
0x76ce3e build_expr(Expression*, bool)
../../gcc/d/expr.cc:3076
0x76ced9 build_expr_dtor(Expression*)
../../gcc/d/expr.cc:3099
0x77949f IRVisitor::visit(IfStatement*)
../../gcc/d/toir.cc:554
0x778a22 IRVisitor::build_stmt(Statement*)
../../gcc/d/toir.cc:258
0x778a22 IRVisitor::visit(CompoundStatement*)
../../gcc/d/toir.cc:1042
0x778561 IRVisitor::build_stmt(Statement*)
../../gcc/d/toir.cc:258
0x778561 build_function_body(FuncDeclaration*)
../../gcc/d/toir.cc:1447
0x76c0e4 DeclVisitor::visit(FuncDeclaration*)
../../gcc/d/decl.cc:1006
0x769026 build_decl_tree(Dsymbol*)
../../gcc/d/decl.cc:1047
0x7768b0 build_module_tree(Module*)
../../gcc/d/modules.cc:726
0x76b4ab DeclVisitor::visit(Module*)
../../gcc/d/decl.cc:147
0x769026 build_decl_tree(Dsymbol*)
../../gcc/d/decl.cc:1047
0x767214 d_parse_file()
../../gcc/d/d-lang.cc:1310

[Bug d/90650] ICE in fold_convert_loc, at fold-const.c:2552

2019-05-27 Thread gs...@t-online.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90650

G. Steinmetz  changed:

   What|Removed |Added

   Keywords||ice-on-invalid-code
 Target||x86_64-pc-linux-gnu

--- Comment #1 from G. Steinmetz  ---

And nearby testcase ...


$ cat z2.d
class c
{
  static f ()
  {
return 0;
  }
}
void g ()
{
  if ([0] & c.f()) {}
}


$ gdc-10-20190526 -c z2.d
z2.d: In function 'g':
z2.d:10:7: internal compiler error: tree check: expected none of record_type or
union_type or qual_union_type or array_type, have record_type in
fold_binary_loc, at fold-const.c:9782
   10 |   if ([0] & c.f()) {}
  |   ^
0x608666 tree_not_check_failed(tree_node const*, char const*, int, char const*,
...)
../../gcc/tree.c:9939
0x9a4f4e tree_not_check4(tree_node*, char const*, int, char const*, tree_code,
tree_code, tree_code, tree_code)
../../gcc/tree.h:3262
0x982c4e fold_binary_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
../../gcc/fold-const.c:9782
0x98bbaa fold_build2_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*)
../../gcc/fold-const.c:12327
0x79c7f7 ExprVisitor::binary_op(tree_code, tree_node*, tree_node*, tree_node*)
../../gcc/d/expr.cc:165
0x79c7f7 ExprVisitor::visit(BinExp*)
../../gcc/d/expr.cc:674
0x79bc7f build_expr(Expression*, bool)
../../gcc/d/expr.cc:3076
0x79bd59 build_expr_dtor(Expression*)
../../gcc/d/expr.cc:3099
0x7acacf IRVisitor::visit(IfStatement*)
../../gcc/d/toir.cc:554
0x7abe92 IRVisitor::build_stmt(Statement*)
../../gcc/d/toir.cc:258
0x7abe92 IRVisitor::visit(CompoundStatement*)
../../gcc/d/toir.cc:1042
0x7ab821 IRVisitor::build_stmt(Statement*)
../../gcc/d/toir.cc:258
0x7ab821 build_function_body(FuncDeclaration*)
../../gcc/d/toir.cc:1447
0x79a844 DeclVisitor::visit(FuncDeclaration*)
../../gcc/d/decl.cc:1006
0x794a16 build_decl_tree(Dsymbol*)
../../gcc/d/decl.cc:1047
0x7a9640 build_module_tree(Module*)
../../gcc/d/modules.cc:726
0x799a3b DeclVisitor::visit(Module*)
../../gcc/d/decl.cc:147
0x794a16 build_decl_tree(Dsymbol*)
../../gcc/d/decl.cc:1047
0x792c57 d_parse_file()
../../gcc/d/d-lang.cc:1310

[Bug d/90651] New: ICE in FuncDeclaration::semantic3, at d/dmd/func.c:1524

2019-05-27 Thread gs...@t-online.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90651

Bug ID: 90651
   Summary: ICE in FuncDeclaration::semantic3, at
d/dmd/func.c:1524
   Product: gcc
   Version: 10.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: d
  Assignee: ibuclaw at gdcproject dot org
  Reporter: gs...@t-online.de
  Target Milestone: ---

$ cat z1.d
struct object {}
void f (...) {}
int g (object a);


$ gdc-10-20190526 -c z1.d
d21: internal compiler error: Segmentation fault
0xb7057f crash_signal
../../gcc/toplev.c:326
0x6cb025 FuncDeclaration::semantic3(Scope*)
../../gcc/d/dmd/func.c:1524
0x66c57f Module::semantic3(Scope*)
../../gcc/d/dmd/dmodule.c:814
0x766905 d_parse_file()
../../gcc/d/d-lang.cc:1201

[Bug middle-end/90648] [8/9/10 Regression] ICE tree check: accessed operand 4 of call_expr with 3 operands in generic_simplify_MULT_EXPR, at generic-match.c:27222

2019-05-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90648

Jakub Jelinek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2019-05-27
 CC||jakub at gcc dot gnu.org
   Assignee|unassigned at gcc dot gnu.org  |jakub at gcc dot gnu.org
   Target Milestone|--- |8.4
 Ever confirmed|0   |1

--- Comment #1 from Jakub Jelinek  ---
Both started with r256026.  I'll have a look.

[Bug c++/90652] New: Recursive concept leads to segfault

2019-05-27 Thread tobias.bruell at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90652

Bug ID: 90652
   Summary: Recursive concept leads to segfault
   Product: gcc
   Version: 8.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: tobias.bruell at gmail dot com
  Target Milestone: ---

The following program leads to a seg-fault in gcc. Compile with

-Wall -Wextra -std=gnu++2a "-fconcepts"

It works when using "operator << (os, x)" instead of "os << x" in line 4.

---

#include 

void to_json (std::ostream& os, char c) { os << '"' << c << '"'; }
template concept bool Serializable = requires (T x, std::ostream&
os) { { os << x }; };
template concept bool ToJson = requires (T x, std::ostream& os) { {
to_json (os, x) }; };

template
  requires ToJson && !Serializable
std::ostream& operator << (std::ostream& os, T const& x)
{
  to_json (os, x);
  return os;
}

int main ()
{
  static_assert (Serializable);
  static_assert (ToJson);

  std::cout << 'c';
}

[Bug middle-end/90648] [8/9/10 Regression] ICE tree check: accessed operand 4 of call_expr with 3 operands in generic_simplify_MULT_EXPR, at generic-match.c:27222

2019-05-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90648

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #2 from Jakub Jelinek  ---
extern double copysign ();
double foo (double x)
{
  return x * copysign ();
}

ICEs similarly as well, it isn't specific to the _FloatN types (though
copysignf and float instead of copysign and double doesn't, because float isn't
self-promoting and the C FE handles it differently during builtin handling.

That said, I'd say this is a genmatch bug, in that it doesn't do any argument
verification of the builtins, neither in generic nor gimple, and happily uses
CALL_EXPR_ARG (op0, 0) and CALL_EXPR_ARG (op0, 1) or similarly in gimple, when
it didn't even verify the builtin has that many arguments.

[Bug target/90639] [10 Regression] Boostrap failure with recent trunk

2019-05-27 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90639

--- Comment #2 from Segher Boessenkool  ---
Author: segher
Date: Mon May 27 19:12:19 2019
New Revision: 271668

URL: https://gcc.gnu.org/viewcvs?rev=271668&root=gcc&view=rev
Log:
rs6000: Fix sanitizer build (PR90639)

The assembler code needs to say it uses AltiVec instructions.


libsanitizer/
PR target/90639
* tsan/tsan_rtl_ppc64.S: Add ".machine altivec".

Modified:
trunk/libsanitizer/ChangeLog
trunk/libsanitizer/tsan/tsan_rtl_ppc64.S

[Bug go/90645] sparc-unknown-linux-gnu/libgo/.libs/libgo.so: undefined reference to `fdopendir'

2019-05-27 Thread ian at airs dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90645

--- Comment #3 from Ian Lance Taylor  ---
Did libgo ever work on this system?  I can't remember.  I don't see how we can
work around a missing __tls_get_addr symbol.  That suggests that the system
does not support Thread Local Storage.

[Bug target/68485] ICE while building gpsd package on microblaze

2019-05-27 Thread giulio.benetti at micronovasrl dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68485

--- Comment #7 from Giulio Benetti  ---
This Bug still exists on Gcc 9.1.

I have tested it with 4.9/5/6/7/8/9

[Bug target/68485] ICE while building gpsd package on microblaze

2019-05-27 Thread giulio.benetti at micronovasrl dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68485

--- Comment #8 from Giulio Benetti  ---
This is the build failure log:
http://autobuild.buildroot.net/results/d86/d86251974a0a348a64d9a1d1fd7d02dd4aff0792/build-end.log

[Bug libgomp/90641] libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL

2019-05-27 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90641

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Mon May 27 21:27:00 2019
New Revision: 271671

URL: https://gcc.gnu.org/viewcvs?rev=271671&root=gcc&view=rev
Log:
PR libgomp/90641
* work.c (gomp_init_work_share): Instead of aligning final ordered
value to multiples of long long alignment, align to that the
first part (ordered team ids) and if inline_ordered_team_ids
is not on a long long alignment boundary within the structure,
use __alignof__ (long long) - 1 pad size always.
* loop.c (GOMP_loop_start): Fix *mem computation if
inline_ordered_team_ids is not aligned on long long alignment boundary
within the structure.
* loop-ull.c (GOMP_loop_ull_start): Likewise.
* sections.c (GOMP_sections2_start): Likewise.

Modified:
trunk/libgomp/ChangeLog
trunk/libgomp/loop.c
trunk/libgomp/loop_ull.c
trunk/libgomp/sections.c
trunk/libgomp/work.c

[Bug tree-optimization/34940] contained subroutines called only once are not inlined

2019-05-27 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=34940

Eric Gallager  changed:

   What|Removed |Added

 CC||egallager at gcc dot gnu.org

--- Comment #17 from Eric Gallager  ---
(In reply to Jan Hubicka from comment #14)
> > Note that the IO block escapes and thus cannot be coalesced with others in
> > the same function.  I had a frontend patch to re-use the same IO struct
> > across multiple calls but that was rejected on the grounds of future
> > implementation of async IO.
> 
> I think inline heuristics ignore this fact and just assume overlap across
> sibling calls
> that gets inlined.  Not terribly realistic but not terribly bad either.

Are you still working on this?

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

--- Comment #34 from Thomas Koenig  ---
Created attachment 46420
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46420&action=edit
Patch which includes a check for being contiguous

This patch looks like it could do the job.  I'll have to work a bit
more on test cases and ChangeLog before I can submit this, but
at least it survives regression testing.

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

--- Comment #35 from Thomas Koenig  ---
(In reply to Thomas Koenig from comment #34)
> Created attachment 46420 [details]
> Patch which includes a check for being contiguous
> 
> This patch looks like it could do the job.  I'll have to work a bit
> more on test cases and ChangeLog before I can submit this, but
> at least it survives regression testing.

... except for a tree dump scan.  I will look at this later.

[Bug fortran/90539] [10 Regression] 481.wrf slowdown by 25% on Intel Kaby with -Ofast -march=native starting with r271377

2019-05-27 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90539

--- Comment #36 from Thomas Koenig  ---
... which should be

Index: testsuite/gfortran.dg/internal_pack_21.f90
===
--- testsuite/gfortran.dg/internal_pack_21.f90  (Revision 271629)
+++ testsuite/gfortran.dg/internal_pack_21.f90  (Arbeitskopie)
@@ -20,5 +20,5 @@
 USE M1
 CALL S2()
 END
-! { dg-final { scan-tree-dump-times "optional" 4 "original" } }
+! { dg-final { scan-tree-dump-times "arg_ptr" 5 "original" } }
 ! { dg-final { scan-tree-dump-not "_gfortran_internal_unpack" "original" } }
ig25@linux-p51k:~/Gcc/trunk/gcc>

[Bug libstdc++/90646] std::filesystem::absolute( "yourpathhere" ) segfaults

2019-05-27 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90646

--- Comment #5 from Jonathan Wakely  ---
Is it possible you're mixing code compiled with GCC 8 and GCC 9? In general
that works, but not for the new C++17 components that were still experimental
in GCC 8, such as filesystem::path.

Valgrind might give you more information about the crash, to help debug the
problem.

  1   2   >