[Bug target/71259] New: GCC trunk emits wrong code

2016-05-24 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71259

Bug ID: 71259
   Summary: GCC trunk emits wrong code
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38552
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38552&action=edit
Reproducer

GCC trunk generates wrong code with -O3/Ofast on 'ivybridge' target (not sure
about other targets though)

crash.cpp is attached.

Run:
> g++ -static-libgcc -static-libstdc++ -std=c++11 -O2 -march=ivybridge -o out0 
> crash.cpp
> g++ -static-libgcc -static-libstdc++ -std=c++11 -O3 -march=ivybridge -o out1 
> crash.cpp

Output:
> ./out0: -5105075050047261684
> ./out1: -5105075050047261682

> gcc -v:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=236614/svn-rev:236614/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160523 (experimental) (Revision=236614/svn-rev:236614/)

[Bug target/71261] New: Trunk GCC hangs on knl and broadwell targets

2016-05-24 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71261

Bug ID: 71261
   Summary: Trunk GCC hangs on knl and broadwell targets
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38555
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38555&action=edit
Reproducer

Trunk GCC hangs on knl and broadwell targets

hang.cpp attached

Run:
> g++ -std=c++11 -O3 -march=broadwell -c -o out.o hang.cpp

or

> g++ -std=c++11 -O3 -march=knl -c -o out.o hang.cpp


> gcc -v:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=236614/svn-rev:236614/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160523 (experimental) (Revision=236614/svn-rev:236614/)

[Bug target/71261] Trunk GCC hangs on knl and broadwell targets

2016-05-24 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71261

--- Comment #2 from Anton Mitrokhin  ---
Hm, sorry. It's creduce which apparently cut off more than it should have.
I'll send another reproducer soon...

BTW, 25 senonds on O3 seems a bit too much for such case)

On Tue, May 24, 2016 at 7:25 PM, ubizjak at gmail dot com <
gcc-bugzi...@gcc.gnu.org> wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71261
>
> --- Comment #1 from Uroš Bizjak  ---
> It doesn't hang but takes some time to finish:
>
> $time ./cc1plus -std=c++11 -O3 -march=broadwell -quiet hang.cpp
>
> real0m25.003s
> user0m24.412s
> sys 0m0.275s
>
> --
> You are receiving this mail because:
> You are on the CC list for the bug.
> You reported the bug.

[Bug target/71261] Trunk GCC hangs on knl and broadwell targets

2016-05-24 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71261

--- Comment #4 from Anton Mitrokhin  ---
PR70902 does not hang on knl or broadwell, while this test case hangs on knl,
broadwell and it seems to hang on skylake-avx512 as well. So, I am not sure if
this case triggers the same bug as the PR70902, or it is a different one (which
looks similar).

It is also very difficult to reduce this test case, as you can't tell if the
compiler hangs or it is an another 40-second compilation.

Overall, 40 seconds for compilation over 10 lines of code seems like a bug as
it is, but I will try to generate a better (hanging :) ) test case by tomorrow!

[Bug tree-optimization/71261] [7 Regression] Trunk GCC hangs on knl and broadwell targets

2016-05-25 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71261

--- Comment #13 from Anton Mitrokhin  ---
Created attachment 38566
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38566&action=edit
Reproducer- at least 15 mins

[Bug tree-optimization/71261] [7 Regression] Trunk GCC hangs on knl and broadwell targets

2016-05-25 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71261

--- Comment #14 from Anton Mitrokhin  ---
Add a somehow better reduced test case, which compiles at least 15 minutes (did
not test it longer). The original (unreduced) test case is ~900kB and awfully
ugly, but if the new reproducer will not suffice, I can send it as well)

[Bug target/71279] New: ICE on trunk gcc with knl target

2016-05-25 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71279

Bug ID: 71279
   Summary: ICE on trunk gcc with knl target
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38567
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38567&action=edit
Reproducer

Run:
> g++ -std=c++11 -O3 -march=knl -o out.o -c crash.cpp

Output:
crash.cpp: In function 'void fn1()':
crash.cpp:8:6: internal compiler error: in fold_convert_loc, at
fold-const.c:2360
 void fn1() {
  ^~~
0xa86b55 fold_convert_loc(unsigned int, tree_node*, tree_node*)
/export/users/gnutester/stability/svn/trunk/gcc/fold-const.c:2360
0xa73d4c fold_ternary_loc(unsigned int, tree_code, tree_node*, tree_node*,
tree_node*, tree_node*)
/export/users/gnutester/stability/svn/trunk/gcc/fold-const.c:11624
0xacf931 fold_gimple_assign
/export/users/gnutester/stability/svn/trunk/gcc/gimple-fold.c:408
0xad4e2f fold_stmt_1
/export/users/gnutester/stability/svn/trunk/gcc/gimple-fold.c:3762
0xe6a316 optimize_stmt
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-dom.c:1792
0xe6a316 dom_opt_dom_walker::before_dom_children(basic_block_def*)
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-dom.c:1380
0x13a2102 dom_walker::walk(basic_block_def*)
/export/users/gnutester/stability/svn/trunk/gcc/domwalk.c:265
0xe6b578 execute
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-dom.c:614
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.


> gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=236669/svn-rev:236669/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160524 (experimental) (Revision=236669/svn-rev:236669/)

[Bug target/71280] New: ICE on gcc trunk on knl, wsm, ivb and bdw targets

2016-05-25 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71280

Bug ID: 71280
   Summary: ICE on gcc trunk on knl, wsm, ivb and bdw targets
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38568
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38568&action=edit
Reproducer

Run any of the:
> g++ -std=c++11 -Ofast -march=knl -o out -c crash.cpp
> g++ -std=c++11 -Ofast -march=broadwell -o out -c crash.cpp
> g++ -std=c++11 -Ofast -march=ivybridge -o out -c crash.cpp
> g++ -std=c++11 -Ofast -march=westmere -o out -c crash.cpp

Output:
crash.cpp: In function 'void fn1()':
crash.cpp:16:1: internal compiler error: Segmentation fault
 }
 ^
0xd499bf crash_signal
/export/users/gnutester/stability/svn/trunk/gcc/toplev.c:333
0xa67929 operand_equal_p(tree_node const*, tree_node const*, unsigned int)
/export/users/gnutester/stability/svn/trunk/gcc/fold-const.c:2769
0xa67c07 operand_equal_p(tree_node const*, tree_node const*, unsigned int)
/export/users/gnutester/stability/svn/trunk/gcc/fold-const.c:2751
0xfdd2e5 array_at_struct_end_p(tree_node*)
/export/users/gnutester/stability/svn/trunk/gcc/tree.c:13100
0xeafdce idx_infer_loop_bounds
   
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-loop-niter.c:3125
0xeb6e68 for_each_index(tree_node**, bool (*)(tree_node*, tree_node**, void*),
void*)
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-loop.c:657
0xeadc97 infer_loop_bounds_from_ref
   
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-loop-niter.c:3211
0xeadc97 infer_loop_bounds_from_array
   
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-loop-niter.c:3232
0xeadc97 infer_loop_bounds_from_undefined
   
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-loop-niter.c:3384
0xeadc97 estimate_numbers_of_iterations_loop
   
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-loop-niter.c:3755
0xeaf17c max_loop_iterations(loop*,
generic_wide_int >*)
   
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-loop-niter.c:3828
0xeaf222 finite_loop_p(loop*)
   
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-loop-niter.c:2419
0xe61c37 find_obviously_necessary_stmts
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-dce.c:420
0xe65bf3 perform_tree_ssa_dce
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-dce.c:1589
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.


> gcc -v:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=236669/svn-rev:236669/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160524 (experimental) (Revision=236669/svn-rev:236669/)

[Bug target/71281] New: ICE on gcc trunk on knl, wsm, ivb and bdw targets (tree-ssa-reassoc)

2016-05-25 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71281

Bug ID: 71281
   Summary: ICE on gcc trunk on knl, wsm, ivb and bdw targets
(tree-ssa-reassoc)
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Run any of the:
> g++ -std=c++11 -Ofast -march=knl -o out -c crash.cpp
> g++ -std=c++11 -Ofast -march=broadwell -o out -c crash.cpp
> g++ -std=c++11 -Ofast -march=ivybridge -o out -c crash.cpp
> g++ -std=c++11 -Ofast -march=westmere -o out -c crash.cpp

Output:
crash.cpp: In function 'void fn1()':
crash.cpp:11:6: internal compiler error: in reassoc_stmt_dominates_stmt_p, at
tree-ssa-reassoc.c:1284
 void fn1() {
  ^~~
0xee2532 reassoc_stmt_dominates_stmt_p
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-reassoc.c:1284
0xee324f sort_by_operand_rank
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-reassoc.c:535
0xeee124 vec::qsort(int (*)(void const*,
void const*))
/export/users/gnutester/stability/svn/trunk/gcc/vec.h:951
0xeee124 vec::qsort(int (*)(void const*, void
const*))
/export/users/gnutester/stability/svn/trunk/gcc/vec.h:1698
0xeee124 reassociate_bb
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-reassoc.c:5257
0xeedfc7 reassociate_bb
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-reassoc.c:5389
0xeedfc7 reassociate_bb
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-reassoc.c:5389
0xeedfc7 reassociate_bb
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-reassoc.c:5389
0xef0f1a do_reassoc
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-reassoc.c:5503
0xef0f1a execute_reassoc
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-reassoc.c:5590
0xef0f1a execute
/export/users/gnutester/stability/svn/trunk/gcc/tree-ssa-reassoc.c:5629
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.

> gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=236669/svn-rev:236669/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160524 (experimental) (Revision=236669/svn-rev:236669/)


==
Might be duplicate of PR71280, but output differs, so not sure

[Bug target/71281] ICE on gcc trunk on knl, wsm, ivb and bdw targets (tree-ssa-reassoc)

2016-05-25 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71281

--- Comment #1 from Anton Mitrokhin  ---
Created attachment 38569
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38569&action=edit
Reproducer

[Bug target/71281] ICE on gcc trunk on knl, wsm, ivb and bdw targets (tree-ssa-reassoc)

2016-05-26 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71281

--- Comment #2 from Anton Mitrokhin  ---
Created attachment 38571
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38571&action=edit
Small reproducer

[Bug c++/71386] New: Wrong code on c++14 (GCC trunk)

2016-06-02 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71386

Bug ID: 71386
   Summary: Wrong code on c++14 (GCC trunk)
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38625
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38625&action=edit
Reproducer

It looks like gcc emits wrong code with 14th standard features (or I may be
wrong). The reproducer concatenates two lists, but the last three elements
always end up to be zero on -O3, and on -O0 the last two elements a getting
trashed. Compiling with latest clang works fine.

Reproducer:
1. -O0:
> g++ -std=c++14 -O0 crash.cpp -o out
> ./out
> 3 2 1 0 -1490624600 32600

2. -O3:
> g++ -std=c++14 -O3 crash.cpp -o out
> ./out
> 3 2 1 0 0 0

3. clang:
> clang++ -fsanitize=undefined -fsanitize=memory -Wall -O3 crash.cpp -std=c++14 
> -o out
> ./out
> 1 2 3 1 2 3

> gcc -v:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=237011/svn-rev:237016/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160601 (experimental) (Revision=237011/svn-rev:237016/)

[Bug target/71389] New: ICE on trunk gcc on ivybridge target (df_refs_verify)

2016-06-02 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71389

Bug ID: 71389
   Summary: ICE on trunk gcc on ivybridge target (df_refs_verify)
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38627
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38627&action=edit
Reproducer

Reproducer:
>  g++ -std=c++11 -O3 -march=ivybridge -o out.o -c crash.cpp

Output:
crash.cpp: In function 'void fn1()':
crash.cpp:23:1: internal compiler error: in df_refs_verify, at df-scan.c:4033
 }
 ^
0x9b0f62 df_refs_verify
/export/users/gnutester/stability/svn/trunk/gcc/df-scan.c:4033
0x9b6a16 df_insn_refs_verify
/export/users/gnutester/stability/svn/trunk/gcc/df-scan.c:4115
0x9b6fb3 df_bb_verify
/export/users/gnutester/stability/svn/trunk/gcc/df-scan.c:4142
0x9ba5f7 df_scan_verify()
/export/users/gnutester/stability/svn/trunk/gcc/df-scan.c:4274
0x9a5384 df_verify()
/export/users/gnutester/stability/svn/trunk/gcc/df-core.c:1831
0x9a5384 df_analyze_1
/export/users/gnutester/stability/svn/trunk/gcc/df-core.c:1217
0xba613e ira
/export/users/gnutester/stability/svn/trunk/gcc/ira.c:5137
0xba613e execute
/export/users/gnutester/stability/svn/trunk/gcc/ira.c:5525
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.

> gcc -v:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=237011/svn-rev:237016/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160601 (experimental) (Revision=237011/svn-rev:237016/)

[Bug target/71281] [7 Regression] ICE on gcc trunk on knl, wsm, ivb and bdw targets (tree-ssa-reassoc)

2016-06-03 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71281

--- Comment #3 from Anton Mitrokhin  ---
Could anyone please take a look on this? 
The big reproducer still triggers ICE as for gcc version 7.0.0 20160601
(experimental) (Revision=237011/svn-rev:237016/).
The small reproducer seems to work

[Bug c++/71386] Wrong code on c++14 (GCC trunk)

2016-06-09 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71386

--- Comment #1 from Anton Mitrokhin  ---
Could anyone please take a look?

[Bug target/71470] New: Wrong code on trunk gcc with westmere target

2016-06-09 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71470

Bug ID: 71470
   Summary: Wrong code on trunk gcc with westmere target
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38665
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38665&action=edit
Reproducer

The test fails only in case array sizes are set in a separate file. init.cpp -
initializes the array, func.cpp - accesses the elements.

The test fails with 'std::out_of_range', but only on westmere -O3. Other
targets/optimizations and compilers seem to work.

Reproduce:
>  g++ -std=c++11 -static-libgcc -static-libstdc++ -O3 -march=westmere -o out 
> func.cpp init.cpp
> ./out

Output:
terminate called after throwing an instance of 'std::out_of_range'
  what():  vector::_M_range_check: __n (which is 3) >= this->size() (which is
0)
Aborted (core dumped)


> gcc -v:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=237240/svn-rev:237241/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160608 (experimental) (Revision=237240/svn-rev:237241/)

[Bug target/71488] New: Wrong code on GCC trunk with ivybridge and westmere targets

2016-06-10 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71488

Bug ID: 71488
   Summary: Wrong code on GCC trunk with ivybridge and westmere
targets
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38673
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38673&action=edit
Reproducer

It looks like the result on -O3 is incorrect

Reproduce:
> g++ -std=c++11 -static-libgcc -static-libstdc++ -O0 -march=westmere -o out 
> crash.cpp

Output: -5386832788153059297

> g++ -std=c++11 -static-libgcc -static-libstdc++ -O3 -march=westmere -o out 
> crash.cpp
Output: -5386832788153059298

> g++ -std=c++11 -static-libgcc -static-libstdc++ -O0 -march=ivybridge -o out 
> crash.cpp
Output: -5386832788153059297

> g++ -std=c++11 -static-libgcc -static-libstdc++ -O3 -march=ivybridge -o out 
> crash.cpp
Output: -5386832788153059298


> gcc -v:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=237240/svn-rev:237241/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160608 (experimental) (Revision=237240/svn-rev:237241/)

[Bug target/71281] [7 Regression] ICE on gcc trunk on knl, wsm, ivb and bdw targets (tree-ssa-reassoc)

2016-06-10 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71281

--- Comment #8 from Anton Mitrokhin  ---
Is this fixed?

[Bug target/71281] [7 Regression] ICE on gcc trunk on knl, wsm, ivb and bdw targets (tree-ssa-reassoc)

2016-06-15 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71281

Anton Mitrokhin  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #10 from Anton Mitrokhin  ---
It works now, thank you!

[Bug target/71470] Wrong code on trunk gcc with westmere target

2016-06-19 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71470

Anton Mitrokhin  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #2 from Anton Mitrokhin  ---
It works now, thank you.

However, the unreduced test case now fails with a segfault (again, only on
westmere). I will try to reduce it and create a tracker =)

[Bug target/71655] New: GCC trunk ICE on westmere target

2016-06-24 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71655

Bug ID: 71655
   Summary: GCC trunk ICE on westmere target
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38766
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38766&action=edit
Reproducer

Reproducer:
> g++ -std=c++11 -Ofast -march=westmere -o out -c crash.cpp


Output:
crash.cpp: In function 'void fn1()':
crash.cpp:11:6: internal compiler error: in vect_get_vec_def_for_stmt_copy, at
tree-vect-stmts.c:1527
 void fn1() {
  ^~~
0xf302ef vect_get_vec_def_for_stmt_copy(vect_def_type, tree_node*)
/export/users/gnutester/stability/svn/trunk/gcc/tree-vect-stmts.c:1527
0xf3ee02 vectorizable_comparison
/export/users/gnutester/stability/svn/trunk/gcc/tree-vect-stmts.c:7938
0xf4ceab vect_transform_stmt(gimple*, gimple_stmt_iterator*, bool*, _slp_tree*,
_slp_instance*)
/export/users/gnutester/stability/svn/trunk/gcc/tree-vect-stmts.c:8337
0xf53db5 vect_transform_loop(_loop_vec_info*)
/export/users/gnutester/stability/svn/trunk/gcc/tree-vect-loop.c:6893
0xf70cfe vectorize_loops()
/export/users/gnutester/stability/svn/trunk/gcc/tree-vectorizer.c:554
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.




> gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fh-pkgversion=Revision=237716/svn-rev:237719/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160622 (experimental) (Revision=237716/svn-rev:237719/)

[Bug target/71657] New: Wrong code on trunk gcc (std::out_of_range), westmere

2016-06-25 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71657

Bug ID: 71657
   Summary: Wrong code on trunk gcc (std::out_of_range), westmere
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38767
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38767&action=edit
Reproducer

It looks like there is some king of overflow while computing array index (which
is actually should be correct)
This happens only on westmere, O3/Ofast


Compile:
> g++ -std=c++11 -static-libgcc -static-libstdc++ -O3 -march=westmere -o out 
> crash_init.cpp crash_main.cpp

Run:
> ./out

Output:
terminate called after throwing an instance of 'std::out_of_range'
  what():  vector::_M_range_check: __n (which is 20751846) >= this->size()
(which is 38)
Aborted (core dumped)


> gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=237716/svn-rev:237719/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160622 (experimental) (Revision=237716/svn-rev:237719/)

[Bug target/71657] Wrong code on trunk gcc (std::out_of_range), westmere

2016-06-25 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71657

--- Comment #1 from Anton Mitrokhin  ---
Created attachment 38768
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38768&action=edit
Reproducer - two files (crash_main.cpp and crash_init.cpp)

[Bug target/71657] Wrong code on trunk gcc (std::out_of_range), westmere

2016-06-25 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71657

--- Comment #2 from Anton Mitrokhin  ---
Comment on attachment 38768
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38768
Reproducer - two files (crash_main.cpp and crash_init.cpp)

This attachment is a 7-zip archive

[Bug c++/71386] Wrong code on c++14 (GCC trunk)

2016-06-26 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71386

--- Comment #3 from Anton Mitrokhin  ---
I see those warnings with -O3, but not with -O0. Why is that?
I also do not see what is wrong with the code.

Note, that clang with all warnings enabled (and ub sanitizer!) will also not
produce any warnings and will generate correct code.

[Bug target/71657] Wrong code on trunk gcc (std::out_of_range), westmere

2016-06-26 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71657

--- Comment #5 from Anton Mitrokhin  ---
I have compiled this test case in several ways

The first two emit no warnings and fail as described:
> g++ -Wall -Wextra -std=c++11 -static-libgcc -static-libstdc++ -Ofast 
> -march=westmere -o out crash_init.cpp crash_main.cpp
> g++ -Wall -Wextra -fno-strict-aliasing -fwrapv 
> -fno-aggressive-loop-optimizations -std=c++11 -static-libgcc 
> -static-libstdc++ -Ofast -march=westmere -o out crash_init.cpp crash_main.cpp

The clang sanitizers are also silent on runtime:
> clang++ -Wall -Wextra -fsanitize=undefined -std=c++11 -O2 -o out 
> crash_init.cpp crash_main.cpp
> clang++ -Wall -Wextra -fsanitize=memory -std=c++11 -O2 -o out crash_init.cpp 
> crash_main.cpp
> clang++ -Wall -Wextra -fsanitize=address -std=c++11 -O2 -o out crash_init.cpp 
> crash_main.cpp

The versions with GLIBCXX_DEBUG do not fail:
> g++ -Wall -Wextra -D_GLIBCXX_DEBUG -std=c++11 -static-libgcc 
> -static-libstdc++ -Ofast -march=westmere -o out crash_init.cpp crash_main.cpp
> g++ -Wall -Wextra -D_GLIBCXX_DEBUG -fno-strict-aliasing -fwrapv 
> -fno-aggressive-loop-optimizations -std=c++11 -static-libgcc 
> -static-libstdc++ -Ofast -march=westmere -o out crash_init.cpp crash_main.cpp



The test case is not that big, and it contains only 3 arrays, only one of which
can emit that kind of an error. This code is easy-checkable by hand and it
looks like it *should* work.

[Bug c++/70725] New: Internal compiler error (ICE) on valid code

2016-04-19 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70725

Bug ID: 70725
   Summary: Internal compiler error (ICE) on valid code
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38306
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38306&action=edit
Reproducer

Test case produces internal compiler error with skylake-avx512, broadwell and
knl targets on -O3 and -Ofast.

Reproducer:
> g++ -std=c++11 -Ofast -march=skylake-avx512 -c -o out small_if_conf.cpp
> g++ -std=c++11 -Ofast -march=broadwell -c -o out small_if_conf.cpp
> g++ -std=c++11 -Ofast -march=knl -c -o out small_if_conf.cpp

Output:
small.cpp: In function 'void fn1()':
small.cpp:13:6: internal compiler error: in predicate_mem_writes, at
tree-if-conv.c:2033
 void fn1() {
  ^~~
0xd62007 predicate_mem_writes
/export/users/gnutester/stability/svn/trunk/gcc/tree-if-conv.c:2033
0xd62007 combine_blocks
/export/users/gnutester/stability/svn/trunk/gcc/tree-if-conv.c:2150
0xd644d8 tree_if_conversion
/export/users/gnutester/stability/svn/trunk/gcc/tree-if-conv.c:2655
0xd644d8 execute
/export/users/gnutester/stability/svn/trunk/gcc/tree-if-conv.c:2741
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.


--
> gcc -v:
--

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=235172/svn-rev:235172/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160418 (experimental) (Revision=235172/svn-rev:235172/)

[Bug c++/70726] New: Internal compiler error (ICE) on valid code

2016-04-19 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70726

Bug ID: 70726
   Summary: Internal compiler error (ICE) on valid code
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38307
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38307&action=edit
Reproducer

GCC gives internal compiler error on knl, broadwell and skylake-avx512 targets
with -O3 and -Ofast.


Reproducer:
> g++ -std=c++11 -Ofast -march=knl -c -o out small.cpp
> g++ -std=c++11 -Ofast -march=broadwell -c -o out small.cpp
> g++ -std=c++11 -Ofast -march=skylake-avx512 -c -o out small.cpp


Output:
small.cpp: In function 'void fn1()':
small.cpp:9:6: internal compiler error: Segmentation fault
 void fn1() {
  ^~~
0xcf8d3f crash_signal
/export/users/gnutester/stability/svn/trunk/gcc/toplev.c:335
0xa71c81 is_gimple_reg_type
/export/users/gnutester/stability/svn/trunk/gcc/gimple-expr.h:75
0xa71c81 is_gimple_val(tree_node*)
/export/users/gnutester/stability/svn/trunk/gcc/gimple-expr.c:781
0xd26cdf verify_gimple_assign_binary
/export/users/gnutester/stability/svn/trunk/gcc/tree-cfg.c:3704
0xd3a063 verify_gimple_in_cfg(function*, bool)
/export/users/gnutester/stability/svn/trunk/gcc/tree-cfg.c:5052
0xc2e1a3 execute_function_todo
/export/users/gnutester/stability/svn/trunk/gcc/passes.c:1968
0xc2eb6b execute_todo
/export/users/gnutester/stability/svn/trunk/gcc/passes.c:2020
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.


---
> gcc -v
---

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=235172/svn-rev:235172/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160418 (experimental) (Revision=235172/svn-rev:235172/)

[Bug target/70728] New: GCC trunk emits invalid assembly for knl target

2016-04-19 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70728

Bug ID: 70728
   Summary: GCC trunk emits invalid assembly for knl target
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38308
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38308&action=edit
Reproducer

Reproducer:
> g++ -std=c++11 -Ofast -march=knl -o out small.cpp
> sde –knl -- out


Output:
TID 0 SDE-ERROR: Executed instruction not valid for specified chip (KNL):
0x40084b: vpslld xmm8, xmm8, xmm16
Image: /export/users/amitrokh/forCreduce/untracked/knl_vpslld/out+0x84b (in
multi-region image, region# 0)
Function: _Z3fn1v
Instruction bytes are: 62 31 3d 08 f2 c0


> gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=235172/svn-rev:235172/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160418 (experimental) (Revision=235172/svn-rev:235172/)

[Bug target/70902] New: GCC freezes while compiling for 'skylake-avx512' target

2016-05-02 Thread anton.mitrokhin at phystech dot edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70902

Bug ID: 70902
   Summary: GCC freezes while compiling for 'skylake-avx512'
target
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: anton.mitrokhin at phystech dot edu
  Target Milestone: ---

Created attachment 38391
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38391&action=edit
Reproducer

GCC trunk compiler freezes indefinitely while trying to build for
skylake-avx512 target on -O3 and -Ofast.

Reproducer:
> g++ -std=c++11 -Ofast -march=skylake-avx512 -o out crash.cpp

Output:
freezes

Version:
> g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/export/users/amitrokh/gcc_trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /export/users/gnutester/stability/svn/trunk/configure
--with-arch=corei7 --with-cpu=corei7 --enable-clocale=gnu --with-system-zlib
--enable-shared --with-demangler-in-ld --enable-cloog-backend=isl
--with-fpmath=sse --with-pkgversion=Revision=235693/svn-rev:235693/
--prefix=/export/users/gnutester/stability/work/trunk/64/install
--enable-languages=c,c++,fortran,java,lto
Thread model: posix
gcc version 7.0.0 20160501 (experimental) (Revision=235693/svn-rev:235693/)