[Bug fortran/88750] [9 Regression] runtime error in statically linked binaries

2019-01-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88750

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|--- |9.0

[Bug libstdc++/88749] [9 Regression] Failure while building libstdc++-v3/src/filesystem/ops.cc on trunk

2019-01-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88749

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|--- |9.0

[Bug jit/88747] [9 Regression] jit testsuite failures: test-sum-of-squares.c.exe (and test-combination)

2019-01-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88747

Richard Biener  changed:

   What|Removed |Added

Version|unknown |9.0
   Target Milestone|--- |9.0

[Bug debug/88742] [7/8/9 Regression] Debugger jumps back when stepping over class destructor

2019-01-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88742

Richard Biener  changed:

   What|Removed |Added

   Keywords||wrong-code
   Priority|P3  |P2
 CC||aldyh at gcc dot gnu.org
   Target Milestone|--- |7.5

[Bug middle-end/88663] [9 Regression] internal compiler error: in check, at tree-vrp.c:188

2019-01-08 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88663

Martin Liška  changed:

   What|Removed |Added

 CC||marxin at gcc dot gnu.org

--- Comment #6 from Martin Liška  ---
Just for the record, the patch fixes a miscompilation in icu package on i586:
https://bugzilla.opensuse.org/show_bug.cgi?id=1120781#c1

[Bug libstdc++/88749] [9 Regression] Failure while building libstdc++-v3/src/filesystem/ops.cc on trunk

2019-01-08 Thread romain.geissler at amadeus dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88749

--- Comment #9 from Romain Geissler  ---
This may be some naive question, but if we are currently trying to build a
libstdc++, shouldn't we assume there is no pre-existing libstdc++ and run the
different checks in the configure script either with the C compiler (if indeed
we never use C++) or with CXXFLAGS like -nodefaultlib ?

[Bug rtl-optimization/88751] New: Performance regression reload vs lra

2019-01-08 Thread krebbel at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88751

Bug ID: 88751
   Summary: Performance regression reload vs lra
   Product: gcc
   Version: 9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: rtl-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: krebbel at gcc dot gnu.org
  Target Milestone: ---

There is a big performance drop in OpenJ9 after they have updated from GCC
4.8.5 to GCC 7.3.0.

- The performance regression disappears after compiling the byte code
interpreter loop with -mno-lra.
https://github.com/eclipse/openj9/blob/master/runtime/vm/BytecodeInterpreter.hpp

- The problem comes from the frequently accessed _pc and _sp variables being
assigned to stack slots instead of registers. With GCC 4.8 both variables end
up in hard regs.

- The problem can be seen on x86 as well as on S/390.

- In LRA the root cause of the problem is a threshold which prevents LRA from
running the full register coloring step (ira.c):

   /* If there are too many pseudos and/or basic blocks (e.g. 10K
  pseudos and 10K blocks or 100K pseudos and 1K blocks), we will
  use simplified and faster algorithms in LRA.  */
  lra_simple_p = (ira_use_lra_p && max_reg_num () >= (1 << 26) /
  last_basic_block_for_fn (cfun));

  For the huge run() function in the byte code interpreter the numbers are:

  (gdb) p max_reg_num()
  $6 = 27089
  (gdb) p last_basic_block_for_fn(cfun)
  $7 = 4799

  Forcing GCC to run the full coloring pass makes the _pc and _sp variables to
get hard regs assigned again.


As a quick workaround we might want to turn this threshold into a parameter.

Long-term it would be good if we could either enable the heuristic to estimate
whether full coloring would be beneficial or improve the fallback coloring to
cover such important cases.

[Bug c++/88554] [9 Regression] Segfault ICE when falling off the end of a reference-returning friend operator

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88554

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 08:57:58 2019
New Revision: 267672

URL: https://gcc.gnu.org/viewcvs?rev=267672&root=gcc&view=rev
Log:
PR c++/88554
* decl.c (finish_function): For -Wreturn-type don't add a return *this;
fixit hint if current_class_ref is NULL.  Use a single if instead of
two nested ones.

* g++.dg/warn/Wreturn-type-11.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/warn/Wreturn-type-11.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl.c
trunk/gcc/testsuite/ChangeLog

[Bug libstdc++/88749] [9 Regression] Failure while building libstdc++-v3/src/filesystem/ops.cc on trunk

2019-01-08 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88749

--- Comment #10 from Jonathan Wakely  ---
(In reply to Romain Geissler from comment #8)
> So with these explanations, do you think the patch you proposed should land
> in trunk (it worked for me in that specific bootstrap configuration).

Yes the patch is correct regardless and I'll commit it shortly. The explanation
also makes sense of the results too.

(In reply to Romain Geissler from comment #9)
> This may be some naive question, but if we are currently trying to build a
> libstdc++, shouldn't we assume there is no pre-existing libstdc++ and run
> the different checks in the configure script either with the C compiler (if
> indeed we never use C++)

No, because testing whether a C compiler can use those functions tells us
nothing about whether G++ will be able to use them. C libraries expose
different declarations to C and C++ programs.

> or with CXXFLAGS like -nodefaultlib ?

That would also make libc unavailable.

[Bug c++/88554] [9 Regression] Segfault ICE when falling off the end of a reference-returning friend operator

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88554

Jakub Jelinek  changed:

   What|Removed |Added

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

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

[Bug target/88648] [7/8/9 Regression] Force unified syntax for inline assembly not functional (-masm-syntax-unified)

2019-01-08 Thread ktkachov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88648

ktkachov at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2019-01-08
 CC||ktkachov at gcc dot gnu.org
  Known to work||5.4.1
   Target Milestone|--- |7.5
Summary|Force unified syntax for|[7/8/9 Regression] Force
   |inline assembly not |unified syntax for inline
   |functional  |assembly not functional
   |(-masm-syntax-unified)  |(-masm-syntax-unified)
 Ever confirmed|0   |1
  Known to fail||6.5.0, 7.4.1, 8.2.1, 9.0

--- Comment #1 from ktkachov at gcc dot gnu.org ---
Confirmed on all the branches since GCC 6. GCC 5 did the right thing.
I think r222995 is to blame

[Bug rtl-optimization/88751] Performance regression reload vs lra

2019-01-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88751

--- Comment #1 from Richard Biener  ---
last_basic_block_for_fn is odd anyways, shouldn't it be n_basic_blocks_for_fn?

it would make things worse here of course (divide by a possibly lower number).
Likewise max_reg_num () sounds off in a similar way.

But agreed, 1<<26 should be a --param.

Not sure whether n-basic-blocks * n-pseudos is a good thing to limit though.
The comment might want to explain that part X of LRA is quadratic in the
number of blocks / pseudos, etc.

I'll note that your case (13111) is close to the 1<<26 limit (about
double).

Would be interesting to know the sparseness of regs / BBs for your testcase
at the point of LRA and whether compacting regs (do we ever do that?) might
be a good idea in general.  (we do compact BBs regularly)

[Bug lto/88677] [9 Regression] Divergence in -O2 and -O2 -flto early opts

2019-01-08 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88677

--- Comment #10 from rguenther at suse dot de  ---
On Mon, 7 Jan 2019, hubicka at ucw dot cz wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88677
> 
> --- Comment #9 from Jan Hubicka  ---
> > https://gcc.gnu 
> > -> You can't simply remove this flag.  You could set it to true 
> > conservatively.
> > Or we could stop marking globals that need constructing TREE_READONLY.
> 
> I see, I was under impression that we already drop TREE_READONLY for
> them. But it is bit more subtle and thus I was indeed to quick to drop
> streaming here.  In:
> 
> struct c { int a; c() { a=1; } };
> const c cc;
> const int dd=1;
> extern const c ee;
> int foo() { return ee.a; }
> 
> I get:
> const c ee/8 (const c ee) @0x7f68d301ee80
>   Type: variable
>   Visibility: external public
>   References: 
>   Referring: _Z3foov/5 (read)
>   Availability: not-ready
>   Varpool flags: read-only
> const int dd/4 (const int dd) @0x7f68d301ec80
>   Type: variable definition analyzed
>   Visibility: force_output no_reorder
>   Aux: @0x7f68d316c450
>   References: 
>   Referring: 
>   Availability: not-ready
>   Varpool flags: initialized read-only const-value-known
> const c cc/3 (const c cc) @0x7f68d301e900
>   Type: variable definition analyzed
>   Visibility: force_output no_reorder
>   Aux: @0x7f68d301ec80
>   References: 
>   Referring: _Z41__static_initialization_and_destruction_0ii/6 (addr)
>   Availability: not-ready
>   Varpool flags:
> 
> So EE is indeed read-only, but CC is not.
> I guess it is because constructor to CC is output locally and we clear
> the flag, while constructor of EE is output externally. What is utility
> of this information? Can we realy in some context that value of EE did
> not change?
> 
> It seems to me that it is completely useless info, so I would be in
> favor of dropping TREE_READONLY flag probably at cgraph
> construction time (because I suppose it is relevant to front-end)

I guess the FE needs the info.  But yes, dropping TREE_READONLY
for TYPE_NEEDS_CONSTRUCTION decls at some point may make sense.

Generally it would be nice to know (for alias analysis) that
an object is not written to via a pointer.  For const globals
with a constructor such writes can only happen inside the global
ctor function(s).  Not sure if IPA reference could be of help
here, it is really language stuff.  There's also const_cast
and mutable where things get into murky territorry...

[Bug tree-optimization/87898] [8 Regression] ICE in separate_decls_in_region_debug, at tree-parloops.c:961

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87898

--- Comment #4 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:47:03 2019
New Revision: 267676

URL: https://gcc.gnu.org/viewcvs?rev=267676&root=gcc&view=rev
Log:
Backported from mainline
2018-11-13  Jakub Jelinek  

PR tree-optimization/87898
* omp-simd-clone.c (ipa_simd_modify_function_body): Remove debug stmts
where the first argument was changed into a non-decl.

* gcc.dg/gomp/pr87898.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/gomp/pr87898.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/omp-simd-clone.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug rtl-optimization/88018] [8 Regression] ICE in insert_insn_on_edge at cfgrtl.c:1952 since r255066

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88018

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:48:47 2019
New Revision: 267677

URL: https://gcc.gnu.org/viewcvs?rev=267677&root=gcc&view=rev
Log:
Backported from mainline
2018-11-15  Jakub Jelinek  

PR rtl-optimization/88018
* cfgrtl.c (fixup_abnormal_edges): Guard moving insns to fallthru edge
on the presence of fallthru edge, rather than if it is a USE or not.

* g++.dg/tsan/pr88018.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/tsan/pr88018.C
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/cfgrtl.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug lto/88677] [9 Regression] Divergence in -O2 and -O2 -flto early opts

2019-01-08 Thread hubicka at ucw dot cz
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88677

--- Comment #11 from Jan Hubicka  ---
> 
> I guess the FE needs the info.  But yes, dropping TREE_READONLY
> for TYPE_NEEDS_CONSTRUCTION decls at some point may make sense.
> 
> Generally it would be nice to know (for alias analysis) that
> an object is not written to via a pointer.  For const globals
> with a constructor such writes can only happen inside the global
> ctor function(s).  Not sure if IPA reference could be of help

If I have global ctor of C++ readonly structure, I would expect to be
able to call external function to construct its parts that may call back
to the unit, so it seems to me that we can not track much?

If the ctor is leaf we probably can track down the info, but won't
currently. It is soemthing that ipa-ref could try to do if it was not
lame.

[Bug rtl-optimization/87475] [8 Regression] ICE in patch_jump_insn, at cfgrtl.c:1275

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87475

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:50:21 2019
New Revision: 267678

URL: https://gcc.gnu.org/viewcvs?rev=267678&root=gcc&view=rev
Log:
Backported from mainline
2018-11-16  Jakub Jelinek  

PR rtl-optimization/87475
* cfgrtl.c (patch_jump_insn): Allow redirection failure for
CROSSING_JUMP_P insns.
(cfg_layout_redirect_edge_and_branch): Don't ICE if ret is NULL.

* g++.dg/opt/pr87475.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/opt/pr87475.C
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/cfgrtl.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug debug/87039] [8 Regression] DW_OP_fbreg used without a frame base on a C++ code w/ -fopenmp

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87039

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:51:19 2019
New Revision: 267679

URL: https://gcc.gnu.org/viewcvs?rev=267679&root=gcc&view=rev
Log:
Backported from mainline
2018-11-19  Jakub Jelinek  

PR debug/87039
* omp-expand.c: Don't include debug.h.
(adjust_context_and_scope): Add REGION argument.  Find DECL_CONTEXT
from innermost outer parallel, task, or target that has a
child_fn set, or, if there is no such outer region, use
current_function_decl.  Do the DECL_CONTEXT adjustment regardless of
whether a suitable BLOCK is found or not.
(expand_parallel_call): Don't call adjust_context_and_scope here.
(grid_expand_target_grid_body): Revert 2017-01-25 changes.
(expand_omp_taskreg, expand_omp_target): Likewise.  Call
adjust_context_and_scope.
* dwarf2out.c (dwarf2out_early_global_decl): For
decl_function_context recurse instead of calling dwarf2out_decl.

* g++.dg/gomp/pr78363-4.C: New test.
* g++.dg/gomp/pr78363-5.C: New test.
* g++.dg/gomp/pr78363-6.C: New test.
* g++.dg/gomp/pr78363-7.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/gomp/pr78363-4.C
branches/gcc-8-branch/gcc/testsuite/g++.dg/gomp/pr78363-5.C
branches/gcc-8-branch/gcc/testsuite/g++.dg/gomp/pr78363-6.C
branches/gcc-8-branch/gcc/testsuite/g++.dg/gomp/pr78363-7.C
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/dwarf2out.c
branches/gcc-8-branch/gcc/omp-expand.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/60994] gcc does not recognize hidden/shadowed enumeration as valid nested-name-specifier

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60994

--- Comment #16 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:52:44 2019
New Revision: 267681

URL: https://gcc.gnu.org/viewcvs?rev=267681&root=gcc&view=rev
Log:
Backported from mainline
2018-11-19  Jakub Jelinek  

PR c++/60994
* g++.dg/lookup/pr60994.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/lookup/pr60994.C
Modified:
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug tree-optimization/88071] [8 Regression] ICE: verify_gimple failed (error: dead STMT in EH table)

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88071

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:53:35 2019
New Revision: 267682

URL: https://gcc.gnu.org/viewcvs?rev=267682&root=gcc&view=rev
Log:
Backported from mainline
2018-11-19  Jakub Jelinek  

PR tree-optimization/88071
* tree-vect-loop.c (vectorize_fold_left_reduction): Pass true instead
of false as last argument to gsi_remove.
* tree-vect-stmts.c (vect_finish_replace_stmt): Pass true instead of
false as last argument to gsi_replace.

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

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/pr88071.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/testsuite/ChangeLog
branches/gcc-8-branch/gcc/tree-vect-loop.c
branches/gcc-8-branch/gcc/tree-vect-stmts.c

[Bug tree-optimization/87895] [7/8 Regression] ICE in purge_dead_edges, at cfgrtl.c:3246

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87895

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:54:36 2019
New Revision: 267684

URL: https://gcc.gnu.org/viewcvs?rev=267684&root=gcc&view=rev
Log:
Backported from mainline
2018-11-20  Jakub Jelinek  

PR tree-optimization/87895
* omp-simd-clone.c (ipa_simd_modify_function_body): When removing
or replacing GIMPLE_RETURN, set EDGE_FALLTHRU on the edge to EXIT.
(simd_clone_adjust): Don't set EDGE_FALLTHRU here. In a loop that
redirects edges to EXIT to edges to incr_bb, iterate while EXIT
has any preds and always use EDGE_PRED (, 0).

* gcc.dg/gomp/pr87895-1.c: New test.
* gcc.dg/gomp/pr87895-2.c: New test.
* gcc.dg/gomp/pr87895-3.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/gomp/pr87895-1.c
branches/gcc-8-branch/gcc/testsuite/gcc.dg/gomp/pr87895-2.c
branches/gcc-8-branch/gcc/testsuite/gcc.dg/gomp/pr87895-3.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/omp-simd-clone.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/88122] [9 Regression] g++ ICE: internal compiler error: Segmentation fault

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88122

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:55:26 2019
New Revision: 267685

URL: https://gcc.gnu.org/viewcvs?rev=267685&root=gcc&view=rev
Log:
Backported from mainline
2018-11-21  Jakub Jelinek  

PR c++/88122
* method.c (maybe_explain_implicit_delete): If
FUNCTION_FIRST_USER_PARMTYPE (decl) is NULL, set const_p to false
instead of ICEing.

* g++.dg/cpp0x/implicit15.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/cpp0x/implicit15.C
Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/method.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug target/86832] [8 Regression] GCC v8.2.0 tries to use native TLS with -fstack-protector-strong on Windows (mingw-w64)

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86832

--- Comment #14 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:56:36 2019
New Revision: 267686

URL: https://gcc.gnu.org/viewcvs?rev=267686&root=gcc&view=rev
Log:
Backported from mainline
2018-11-22  Jakub Jelinek  

PR target/85644
PR target/86832
* config/i386/i386.c (ix86_option_override_internal): Default
ix86_stack_protector_guard to SSP_TLS only if TARGET_THREAD_SSP_OFFSET
is defined.
* config/i386/i386.md (stack_protect_set, stack_protect_set_,
stack_protect_test, stack_protect_test_): Use empty condition
instead of TARGET_SSP_TLS_GUARD.

Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/config/i386/i386.c
branches/gcc-8-branch/gcc/config/i386/i386.md

[Bug target/85644] [8 Regression] -fstack-protector generates invalid read to %fs:0x0 on mac

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85644

--- Comment #9 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:56:36 2019
New Revision: 267686

URL: https://gcc.gnu.org/viewcvs?rev=267686&root=gcc&view=rev
Log:
Backported from mainline
2018-11-22  Jakub Jelinek  

PR target/85644
PR target/86832
* config/i386/i386.c (ix86_option_override_internal): Default
ix86_stack_protector_guard to SSP_TLS only if TARGET_THREAD_SSP_OFFSET
is defined.
* config/i386/i386.md (stack_protect_set, stack_protect_set_,
stack_protect_test, stack_protect_test_): Use empty condition
instead of TARGET_SSP_TLS_GUARD.

Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/config/i386/i386.c
branches/gcc-8-branch/gcc/config/i386/i386.md

[Bug tree-optimization/85794] [8/9 Regression][AArch64] ICE in expand_vector_condition in GIMPLE pass: veclower2

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85794

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:57:10 2019
New Revision: 267687

URL: https://gcc.gnu.org/viewcvs?rev=267687&root=gcc&view=rev
Log:
Backported from mainline
2018-11-22  Jakub Jelinek  

PR tree-optimization/85794
* gcc.dg/vect/O3-pr85794.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/vect/O3-pr85794.c
Modified:
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/86900] [8 Regression] -gdwarf-5 -O2 -ffunction-sections = assembler error

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86900

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:58:04 2019
New Revision: 267688

URL: https://gcc.gnu.org/viewcvs?rev=267688&root=gcc&view=rev
Log:
Backported from mainline
2018-11-26  Jakub Jelinek  

PR c++/86900
* dwarf2out.c (secname_for_decl): For functions with
DECL_SECTION_NAME if in_cold_section_p, try to return
current_function_section's name if it is a named section.

* g++.dg/debug/dwarf2/pr86900.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/debug/dwarf2/pr86900.C
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/dwarf2out.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/88181] [7/8 Regression] ICE: verify_type failed (error: type variant differs by TYPE_PACKED)

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88181

--- Comment #10 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:58:48 2019
New Revision: 267689

URL: https://gcc.gnu.org/viewcvs?rev=267689&root=gcc&view=rev
Log:
Backported from mainline
2018-11-27  Jakub Jelinek  

PR c++/88181
* class.c (fixup_attribute_variants): Also propagate TYPE_PACKED
to variants.

* g++.dg/debug/pr88181.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/debug/pr88181.C
Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/class.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/87539] [8 Regression] internal compiler error when compiling project with Os optimization flag

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87539

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:00:42 2019
New Revision: 267691

URL: https://gcc.gnu.org/viewcvs?rev=267691&root=gcc&view=rev
Log:
Backported from mainline
2018-11-29  Jakub Jelinek  

PR c++/87539
* g++.dg/cpp0x/pr87539.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/cpp0x/pr87539.C
Modified:
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug sanitizer/88215] UBSAN: Internal compiler error with attribute(unused)

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88215

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 09:59:34 2019
New Revision: 267690

URL: https://gcc.gnu.org/viewcvs?rev=267690&root=gcc&view=rev
Log:
Backported from mainline
2018-11-28  Jakub Jelinek  

PR c++/88215
* c-ubsan.c: Include langhooks.h.
(ubsan_instrument_division): Change gcc_assert that main variants
of op0 and op1 types are equal to gcc_checking_assert that the
main variants are compatible types.

* c-c++-common/ubsan/pr88215.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/c-c++-common/ubsan/pr88215.c
Modified:
branches/gcc-8-branch/gcc/c-family/ChangeLog
branches/gcc-8-branch/gcc/c-family/c-ubsan.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug target/88234] UBsan and runtime error: signed integer overflow using unsigned vector

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88234

--- Comment #16 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:03:34 2019
New Revision: 267692

URL: https://gcc.gnu.org/viewcvs?rev=267692&root=gcc&view=rev
Log:
Backported from mainline
2018-11-29  Jakub Jelinek  

PR target/88234
* config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): For
vec_add and vec_sub builtins, perform PLUS_EXPR or MINUS_EXPR
in unsigned_type_for instead of vector integral type where overflow
doesn't wrap.

* gcc.dg/ubsan/pr88234.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/ubsan/pr88234.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/config/rs6000/rs6000.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug debug/85550] [7/8/9 Regression] -fdebug-types-section broken with DW_OP_addr in DW_AT_location

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85550

--- Comment #4 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:04:51 2019
New Revision: 267693

URL: https://gcc.gnu.org/viewcvs?rev=267693&root=gcc&view=rev
Log:
Backported from mainline
2018-11-30  Jakub Jelinek  

PR debug/85550
* g++.dg/debug/dwarf2/pr85550.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/debug/dwarf2/pr85550.C
Modified:
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug tree-optimization/71109] gcc ICE at -O3 on valid code on x86_64-linux-gnu in "maybe_record_trace_start"

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71109

--- Comment #14 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:05:20 2019
New Revision: 267694

URL: https://gcc.gnu.org/viewcvs?rev=267694&root=gcc&view=rev
Log:
Backported from mainline
2018-12-03  Jakub Jelinek  

PR tree-optimization/71109
* gcc.c-torture/compile/pr71109.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.c-torture/compile/pr71109.c
Modified:
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/82295] Two errors produced with private/protected deleted methods

2019-01-08 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82295

Jonathan Wakely  changed:

   What|Removed |Added

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

--- Comment #5 from Jonathan Wakely  ---
The bug isn't the same though, so we should add a testcase for this one to
ensure it doesn't regress.

[Bug c++/88103] [7/8/9 Regression] Wrong value category when conditional expression result is used as object expression

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88103

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:06:33 2019
New Revision: 267695

URL: https://gcc.gnu.org/viewcvs?rev=267695&root=gcc&view=rev
Log:
Backported from mainline
2018-12-04  Jakub Jelinek  

PR c++/88103
* typeck.c (build_class_member_access_expr): If unary_complex_lvalue
turned xvalue_p into non-xvalue_p, call move on it.

* g++.dg/cpp0x/rv-cond3.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/cpp0x/rv-cond3.C
Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/typeck.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug tree-optimization/87320] [8/9 Regression] Last iteration of vectorized loop not executed when peeling for gaps

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87320

--- Comment #4 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:09:05 2019
New Revision: 267696

URL: https://gcc.gnu.org/viewcvs?rev=267696&root=gcc&view=rev
Log:
Backported from mainline
2018-12-04  Jakub Jelinek  

PR tree-optimization/87320
* gcc.dg/pr87320.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/pr87320.c
Modified:
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug tree-optimization/87360] [8 Regression] ICE in remove_redundant_iv_tests at gcc/tree-ssa-loop-ivcanon.c:571 since r255467

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87360

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:10:34 2019
New Revision: 267697

URL: https://gcc.gnu.org/viewcvs?rev=267697&root=gcc&view=rev
Log:
Backported from mainline
2018-12-05  Jakub Jelinek  

PR tree-optimization/87360
* gimple-loop-jam.c (tree_loop_unroll_and_jam): On failure to analyze
data dependencies, don't return false, just continue.

* g++.dg/opt/pr87360.C: New test.
* gfortran.dg/pr87360.f90: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/opt/pr87360.C
branches/gcc-8-branch/gcc/testsuite/gfortran.dg/pr87360.f90
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/gimple-loop-jam.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/88752] New: ICE in enclosing_instantiation_of, at cp/pt.c:13328

2019-01-08 Thread kretz at kde dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88752

Bug ID: 88752
   Summary: ICE in enclosing_instantiation_of, at cp/pt.c:13328
   Product: gcc
   Version: 9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: kretz at kde dot org
  Target Milestone: ---

Created attachment 45375
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45375&action=edit
not-reduced test case

Compile attached test case with `-std=gnu++17 -march=skylake -mrtm ~/ice.cpp`.

/home/mkretz/src/gcc/libstdc++-v3/testsuite/experimental/simd/tests/trigonometric.h:17:895:
internal compiler error: in enclosing_instantiation_of, at cp/pt.c:13328
   17 |MAKE_TESTER(acos), MAKE_TESTER(tan), MAKE_TESTER(acosh),
  |
   
   
   
   
   
   
   
   
   
   
  ^   
0x624ca1 enclosing_instantiation_of
/home/mkretz/src/gcc/gcc/cp/pt.c:13327
0x986934 tsubst_copy
/home/mkretz/src/gcc/gcc/cp/pt.c:15494
0x9a0023 tsubst_copy
/home/mkretz/src/gcc/gcc/cp/pt.c:15377
0x9a0023 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:19257
0x9a030c tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:18169
0x9a0976 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:18638
0x98ef5f tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:17756
0x992542 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:15346
0x992542 tsubst_init
/home/mkretz/src/gcc/gcc/cp/pt.c:15350
0x9910c4 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:16997
0x98e34d tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:16862
0x98bb21 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:17163
0x98e34d tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:16862
0x98bb21 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:17163
0x9a415e tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:16847
0x9a415e tsubst_lambda_expr(tree_node*, tree_node*, int, tree_node*)
/home/mkretz/src/gcc/gcc/cp/pt.c:18023
0x9a2d53 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:19344
0x9a0976 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:18638
0x9a07bb tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:18346
0x98ef5f tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
/home/mkretz/src/gcc/gcc/cp/pt.c:17756

[Bug target/87598] [8 Regression] Rejects "%a0" with constant

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87598

--- Comment #14 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:11:29 2019
New Revision: 267698

URL: https://gcc.gnu.org/viewcvs?rev=267698&root=gcc&view=rev
Log:
Backported from mainline
2018-12-06  Jakub Jelinek  

PR target/87598
* config/aarch64/aarch64.c (aarch64_print_address_internal): Don't
call output_operand_lossage on VOIDmode CONST_INTs.  After
output_operand_lossage do return false.

* gcc.target/aarch64/asm-5.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.target/aarch64/asm-5.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/config/aarch64/aarch64.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug middle-end/88739] [7,8,9 Regression ] Big-endian union bug

2019-01-08 Thread rearnsha at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88739

--- Comment #5 from Richard Earnshaw  ---
Also on Arm and probably other big-endian machines as well.

[Bug c++/87506] [7/8 Regression] ICE with inherited constexpr constructor with const argument

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87506

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:12:22 2019
New Revision: 267699

URL: https://gcc.gnu.org/viewcvs?rev=267699&root=gcc&view=rev
Log:
Backported from mainline
2018-12-07  Jakub Jelinek  

PR c++/87506
* constexpr.c (adjust_temp_type): Handle EMPTY_CLASS_EXPR.

* g++.dg/cpp0x/constexpr-87506.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/cpp0x/constexpr-87506.C
Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/constexpr.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug fortran/88377] ICE in gfc_omp_clause_copy_ctor, at fortran/trans-openmp.c:614

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88377

--- Comment #4 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:13:07 2019
New Revision: 267700

URL: https://gcc.gnu.org/viewcvs?rev=267700&root=gcc&view=rev
Log:
Backported from mainline
2018-12-07  Jakub Jelinek  

PR fortran/88377
* trans-openmp.c (gfc_omp_clause_default_ctor,
gfc_omp_clause_copy_ctor, gfc_omp_clause_assign_op,
gfc_omp_clause_linear_ctor, gfc_omp_clause_dtor): Only consider
GFC_DECL_GET_SCALAR_ALLOCATABLE vars as scalar allocatables if they
have pointer type.

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

Added:
branches/gcc-8-branch/gcc/testsuite/gfortran.dg/gomp/pr88377.f90
Modified:
branches/gcc-8-branch/gcc/fortran/ChangeLog
branches/gcc-8-branch/gcc/fortran/trans-openmp.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug target/85593] [7/8 Regression] GCC on ARM allocates R3 for local variable when calling naked function with O2 optimizations enabled

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85593

--- Comment #16 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:14:12 2019
New Revision: 267701

URL: https://gcc.gnu.org/viewcvs?rev=267701&root=gcc&view=rev
Log:
Backported from mainline
2018-12-07  Jakub Jelinek  

PR target/85593
* final.c (rest_of_handle_final): Don't call collect_fn_hard_reg_usage
for functions with naked attribute.

* gcc.target/i386/pr85593.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.target/i386/pr85593.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/final.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/86669] [7/8 regression] Complete object constructor clone omits length for a c++11 braced initialiser

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86669

--- Comment #9 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:16:00 2019
New Revision: 267702

URL: https://gcc.gnu.org/viewcvs?rev=267702&root=gcc&view=rev
Log:
Backported from mainline
2018-12-07  Jakub Jelinek  

PR c++/86669
* call.c (make_temporary_var_for_ref_to_temp): Call pushdecl even for
automatic vars.

* g++.dg/cpp0x/initlist105.C: New test.
* g++.dg/cpp0x/initlist106.C: New test.
* g++.dg/other/pr86669.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/cpp0x/initlist105.C
branches/gcc-8-branch/gcc/testsuite/g++.dg/cpp0x/initlist106.C
branches/gcc-8-branch/gcc/testsuite/g++.dg/other/pr86669.C
Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/call.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug sanitizer/88426] [8 Regression] Compiler crash if use special code with command line switch -fsanitize=float-cast-overflow

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88426

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:17:32 2019
New Revision: 267703

URL: https://gcc.gnu.org/viewcvs?rev=267703&root=gcc&view=rev
Log:
Backported from mainline
2018-12-11  Jakub Jelinek  

PR sanitizer/88426
* c-convert.c (convert): Call c_fully_fold before calling
ubsan_instrument_float_cast.

* c-c++-common/ubsan/float-cast-overflow-11.c: New test.

Added:
   
branches/gcc-8-branch/gcc/testsuite/c-c++-common/ubsan/float-cast-overflow-11.c
Modified:
branches/gcc-8-branch/gcc/c/ChangeLog
branches/gcc-8-branch/gcc/c/c-convert.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug libstdc++/88749] [9 Regression] Failure while building libstdc++-v3/src/filesystem/ops.cc on trunk

2019-01-08 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88749

--- Comment #11 from Jonathan Wakely  ---
Author: redi
Date: Tue Jan  8 10:18:54 2019
New Revision: 267705

URL: https://gcc.gnu.org/viewcvs?rev=267705&root=gcc&view=rev
Log:
PR libstdc++/88749 fix build failure in src/filesystem/ops.cc

PR libstdc++/88749
* src/filesystem/ops.cc (last_write_time): Fix preprocessor condition
to match the one that controls whether utimbuf and utime are declared.

Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/src/filesystem/ops.cc

[Bug fortran/88463] Rejects conforming source, OpenMP Parallel region Default(None) reference to module parameter array, separate source

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88463

--- Comment #4 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:18:34 2019
New Revision: 267704

URL: https://gcc.gnu.org/viewcvs?rev=267704&root=gcc&view=rev
Log:
Backported from mainline
2018-12-12  Jakub Jelinek  

PR fortran/88463
* trans-openmp.c (gfc_omp_predetermined_sharing): Handle TREE_READONLY
VAR_DECLs with DECL_EXTERNAL like those with TREE_STATIC.

* testsuite/libgomp.fortran/pr88463-1.f90: New test.
* testsuite/libgomp.fortran/pr88463-2.f90: New test.

Added:
branches/gcc-8-branch/libgomp/testsuite/libgomp.fortran/pr88463-1.f90
branches/gcc-8-branch/libgomp/testsuite/libgomp.fortran/pr88463-2.f90
Modified:
branches/gcc-8-branch/gcc/fortran/ChangeLog
branches/gcc-8-branch/gcc/fortran/trans-openmp.c
branches/gcc-8-branch/libgomp/ChangeLog

[Bug rtl-optimization/88416] [8 Regression] ICE in in df_uses_record, at df-scan.c:3013

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88416

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:19:28 2019
New Revision: 267706

URL: https://gcc.gnu.org/viewcvs?rev=267706&root=gcc&view=rev
Log:
Backported from mainline
2018-12-13  Jakub Jelinek  

PR rtl-optimization/88416
* valtrack.c (cleanup_auto_inc_dec): Handle pre/post-inc/dec/modify
even if !AUTO_INC_DEC.

* gcc.target/i386/pr88416.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.target/i386/pr88416.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/testsuite/ChangeLog
branches/gcc-8-branch/gcc/valtrack.c

[Bug libstdc++/88749] [9 Regression] Failure while building libstdc++-v3/src/filesystem/ops.cc on trunk

2019-01-08 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88749

Jonathan Wakely  changed:

   What|Removed |Added

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

--- Comment #12 from Jonathan Wakely  ---
Fixed now - thanks for the report.

[Bug rtl-optimization/88470] [7/8 Regression] ICE in maybe_record_trace_start, at dwarf2cfi.c:2354

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88470

--- Comment #9 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:20:17 2019
New Revision: 267707

URL: https://gcc.gnu.org/viewcvs?rev=267707&root=gcc&view=rev
Log:
Backported from mainline
2018-12-13  Jakub Jelinek  

PR rtl-optimization/88470
* cfgcleanup.c (outgoing_edges_match): If the function is
shrink-wrapped and bb1 ends with a JUMP_INSN with a single fake
edge to EXIT, return false.

* gcc.target/i386/pr88470.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.target/i386/pr88470.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/cfgcleanup.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/87436] [7/8 Regression] G++ produces >300MB .rodata section to initialize struct with big array

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87436

--- Comment #10 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:20:57 2019
New Revision: 267708

URL: https://gcc.gnu.org/viewcvs?rev=267708&root=gcc&view=rev
Log:
Backported from mainline
2018-12-14  Jakub Jelinek  

PR c++/82294
PR c++/87436
* init.c (build_vec_init): Change num_initialized_elts type from int
to HOST_WIDE_INT.  Build a RANGE_EXPR if e needs to be repeated more
than once.

Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/init.c

[Bug c++/82294] Array of objects with constexpr constructors initialized from space-inefficient memory image

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82294

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:20:57 2019
New Revision: 267708

URL: https://gcc.gnu.org/viewcvs?rev=267708&root=gcc&view=rev
Log:
Backported from mainline
2018-12-14  Jakub Jelinek  

PR c++/82294
PR c++/87436
* init.c (build_vec_init): Change num_initialized_elts type from int
to HOST_WIDE_INT.  Build a RANGE_EXPR if e needs to be repeated more
than once.

Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/init.c

[Bug c++/82294] Array of objects with constexpr constructors initialized from space-inefficient memory image

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82294

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:22:00 2019
New Revision: 267709

URL: https://gcc.gnu.org/viewcvs?rev=267709&root=gcc&view=rev
Log:
Backported from mainline
2018-12-14  Jakub Jelinek  

PR c++/82294
PR c++/87436
* expr.h (categorize_ctor_elements): Add p_unique_nz_elts argument.
* expr.c (categorize_ctor_elements_1): Likewise.  Compute it like
p_nz_elts, except don't multiply it by mult.  Adjust recursive call.
Fix up COMPLEX_CST handling.
(categorize_ctor_elements): Add p_unique_nz_elts argument, initialize
it and pass it through to categorize_ctor_elements_1.
(mostly_zeros_p, all_zeros_p): Adjust categorize_ctor_elements callers.
* gimplify.c (gimplify_init_constructor): Likewise.  Don't force
ctor into readonly data section if num_unique_nonzero_elements is
smaller or equal to 1/8 of num_nonzero_elements and size is >= 64
bytes.

* g++.dg/tree-ssa/pr82294.C: New test.
* g++.dg/tree-ssa/pr87436.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/tree-ssa/pr82294.C
branches/gcc-8-branch/gcc/testsuite/g++.dg/tree-ssa/pr87436.C
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/expr.c
branches/gcc-8-branch/gcc/expr.h
branches/gcc-8-branch/gcc/gimplify.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/88410] [8 Regression] internal compiler error: output_operand: invalid expression as operand

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88410

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:22:44 2019
New Revision: 267710

URL: https://gcc.gnu.org/viewcvs?rev=267710&root=gcc&view=rev
Log:
Backported from mainline
2018-12-17  Jakub Jelinek  

PR c++/88410
* cp-gimplify.c (cp_fold) : For offsetof-like folding,
call maybe_constant_value on val to see if it is INTEGER_CST.

* g++.dg/cpp0x/pr88410.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/cpp0x/pr88410.C
Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/cp-gimplify.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/87436] [7/8 Regression] G++ produces >300MB .rodata section to initialize struct with big array

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87436

--- Comment #11 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:22:00 2019
New Revision: 267709

URL: https://gcc.gnu.org/viewcvs?rev=267709&root=gcc&view=rev
Log:
Backported from mainline
2018-12-14  Jakub Jelinek  

PR c++/82294
PR c++/87436
* expr.h (categorize_ctor_elements): Add p_unique_nz_elts argument.
* expr.c (categorize_ctor_elements_1): Likewise.  Compute it like
p_nz_elts, except don't multiply it by mult.  Adjust recursive call.
Fix up COMPLEX_CST handling.
(categorize_ctor_elements): Add p_unique_nz_elts argument, initialize
it and pass it through to categorize_ctor_elements_1.
(mostly_zeros_p, all_zeros_p): Adjust categorize_ctor_elements callers.
* gimplify.c (gimplify_init_constructor): Likewise.  Don't force
ctor into readonly data section if num_unique_nonzero_elements is
smaller or equal to 1/8 of num_nonzero_elements and size is >= 64
bytes.

* g++.dg/tree-ssa/pr82294.C: New test.
* g++.dg/tree-ssa/pr87436.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/tree-ssa/pr82294.C
branches/gcc-8-branch/gcc/testsuite/g++.dg/tree-ssa/pr87436.C
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/expr.c
branches/gcc-8-branch/gcc/expr.h
branches/gcc-8-branch/gcc/gimplify.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/87934] [8 regression] struct with NSDMI of enum makes initialization a non-constant expression

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87934

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:23:32 2019
New Revision: 267711

URL: https://gcc.gnu.org/viewcvs?rev=267711&root=gcc&view=rev
Log:
Backported from mainline
2018-12-19  Jakub Jelinek  

PR c++/87934
* constexpr.c (cxx_eval_constant_expression) : Do
re-process TREE_CONSTANT CONSTRUCTORs if they aren't reduced constant
expressions.

* g++.dg/cpp0x/constexpr-87934.C: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/cpp0x/constexpr-87934.C
Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/constexpr.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug target/88541] VPCLMULQDQ 256-bit inline function unavailable with optimization but without enabled AVX512VL support

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88541

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:24:56 2019
New Revision: 267712

URL: https://gcc.gnu.org/viewcvs?rev=267712&root=gcc&view=rev
Log:
Backported from mainline
2018-12-19  Jakub Jelinek  

PR target/88541
* config/i386/vpclmulqdqintrin.h (_mm256_clmulepi64_epi128): Enable
for -mavx -mvpclmulqdq rather than just for -mavx512vl -mvpclmulqdq.

* gcc.target/i386/avx-vpclmulqdq-1.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.target/i386/avx-vpclmulqdq-1.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/config/i386/vpclmulqdqintrin.h
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug c++/88180] [7/8 Regression] ICE in vec

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88180

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:25:54 2019
New Revision: 267713

URL: https://gcc.gnu.org/viewcvs?rev=267713&root=gcc&view=rev
Log:
Backported from mainline
2018-12-20  Jakub Jelinek  

PR c++/88180
* parser.c (cp_parser_class_specifier_1): If
cp_parser_check_type_definition fails, skip default arguments, NSDMIs,
etc. like for erroneous template args.

* g++.dg/parse/pr88180.C: New test.
* g++.dg/pr85039-1.C: Don't expect diagnostics inside of the type
definition's NSDMIs.

Added:
branches/gcc-8-branch/gcc/testsuite/g++.dg/parse/pr88180.C
Modified:
branches/gcc-8-branch/gcc/cp/ChangeLog
branches/gcc-8-branch/gcc/cp/parser.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog
branches/gcc-8-branch/gcc/testsuite/g++.dg/pr85039-1.C

[Bug rtl-optimization/88563] [7/8 Regression] wrong code with -O2 -fno-code-hoisting -fno-tree-ccp -fno-tree-dominator-opts -fno-tree-forwprop -fno-tree-fre -fno-tree-pre -fno-tree-vrp

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88563

--- Comment #8 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:26:39 2019
New Revision: 267714

URL: https://gcc.gnu.org/viewcvs?rev=267714&root=gcc&view=rev
Log:
Backported from mainline
2018-12-21  Jakub Jelinek  

PR rtl-optimization/88563
* expr.c (expand_expr_real_2) : Swap innermode
and mode arguments to convert_modes.  Likewise swap mode and word_mode
arguments.  Handle both arguments with VOIDmode before convert_modes
of one of them.  Formatting fixes.

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

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/pr88563.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/expr.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug tree-optimization/88739] [7/8/9 Regression] Big-endian union bug

2019-01-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88739

Richard Biener  changed:

   What|Removed |Added

 Target|aarch64_be armb |aarch64be
   Priority|P3  |P2
 CC||ebotcazou at gcc dot gnu.org,
   ||rguenth at gcc dot gnu.org
  Component|middle-end  |tree-optimization
   Target Milestone|--- |7.5
Summary|[7,8,9 Regression ] |[7/8/9 Regression]
   |Big-endian union bug|Big-endian union bug

--- Comment #6 from Richard Biener  ---
(In reply to Wilco from comment #3)
> (In reply to Richard Earnshaw from comment #2)
> > >   _23 = BIT_FIELD_REF <_2, 16, 0>;// WRONG: should be _2, 14, > > > 0
> > 
> > _2 is declared as a 30-bit integer, so perhaps the statement is right, but
> > expand needs to understand that the shift extract of the top 16 bits comes
> > from a different location in big-endian.
> 
> So the question becomes what format is this in?
> 
>_2;
> 
> Is it big-endian memory format (so value is in top 30 bits) or simply a
> 30-bit value in a virtual register?

The middle-end (GIMPLE) thinks this is a 30-bit value in a virtual register.
And BIT_FIELD_REF <..., 16, 0> reads the first (counting from LSB) 16 bits.

That is, as far as I understand "endianess" is irrelevant for registers
but matters for memory.

We expand

  _1 = ulAddr_3(D) >> 2;
  _2 = () _1;
  _6 = BIT_FIELD_REF <_2, 16, 0>;

to (_6 is unsigned short)

(insn 6 5 7 (set (reg:SI 95)
(lshiftrt:SI (reg/v:SI 94 [ ulAddr ])
(const_int 2 [0x2]))) "t.c":42:48 -1
 (nil))

(insn 7 6 8 (set (reg:SI 96)
(and:SI (reg:SI 95)
(const_int 1073741823 [0x3fff]))) "t.c":42:48 -1
 (nil))

(insn 8 7 9 (set (subreg:DI (reg:HI 97) 0)
(zero_extract:DI (subreg:DI (reg:SI 96) 0)
(const_int 16 [0x10])
(const_int 16 [0x10]))) "t.c":44:8 -1
 (nil))

now I suppose for subregs (and its offset) endianess starts to matter.
Now my head of course starts to hurt when we build a paradoxical DImode
subreg of a SImode reg in big endian.

But going back what possibly goes wrong is when FRE does

Value numbering stmt = unData.strMemHead.b30AddrL = _2;
No store match
Value numbering store unData.strMemHead.b30AddrL to _2
..
Value numbering stmt = _3 = unData.ausValue[6];
Inserting name _9 for expression BIT_FIELD_REF <_2, 16, 0>
Setting value number of _3 to _9 (changed)

it analyzes unData.strMemHead.b30AddrL to be a reference at
a bit-offset with some bit-size, matching that up with the
same data from unData.ausValue[6] and translating that to
a BIT_FIELD_REF:

  base2 = get_ref_base_and_extent (gimple_assign_lhs (def_stmt),
   &offset2, &size2, &maxsize2,
   &reverse);
  if (!reverse
  && known_size_p (maxsize2)
  && known_eq (maxsize2, size2)
  && operand_equal_p (base, base2, 0)
  && known_subrange_p (offset, maxsize, offset2, size2)
  /* ???  We can't handle bitfield precision extracts without
 either using an alternate type for the BIT_FIELD_REF and
 then doing a conversion or possibly adjusting the offset
 according to endianness.  */
  && (! INTEGRAL_TYPE_P (vr->type)
  || known_eq (ref->size, TYPE_PRECISION (vr->type)))
  && multiple_p (ref->size, BITS_PER_UNIT))
{
  gimple_match_op op (gimple_match_cond::UNCOND,
  BIT_FIELD_REF, vr->type,
  vn_valueize (gimple_assign_rhs1 (def_stmt)),
  bitsize_int (ref->size),
  bitsize_int (offset - offset2));

here def_stmt is unData.strMemHead.b30AddrL = _2 while offset / ref
are from the load.  There's already a comment about endianess but
it's oddly applied to ref->size vs. vr->type precision equality.
I think we need adjustments whenever ref->size (from the load) is
not equal to size2 (from the store)?  That is, arbitrary sub-parts,
while contiguous in memory, might not be contiguous in the register?

*head hurts*

for the testcase

(gdb) p ref->size
$1 = {> = {coeffs = {16, 0}}, }
(gdb) p size2
$2 = {> = {coeffs = {30, 0}}, }

and offset == offset2 == 0.

Oh, and there's of course a plethora of variants, not to mention
FLOAT_WORDS_BIG_ENDIAN and REG_WORDS_BIG_ENDIAN.

Note the code above was exactly added to elide this kind of memory
operation...

Since the folding happens only since GCC 7 this is a regression.

Andrew somewhere mentioned that BIT_INSERT_EXPR expansion is also
wrong for BE (it's currently only used for vector element stuff
so that's a latent issue).

[Bug target/88522] Error: operand size mismatch for `vpgatherqq'

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88522

--- Comment #9 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:29:21 2019
New Revision: 267715

URL: https://gcc.gnu.org/viewcvs?rev=267715&root=gcc&view=rev
Log:
Backported from mainline
2018-12-21  Jakub Jelinek  

PR target/88522
* config/i386/sse.md (*avx512pf_gatherpfsf_mask,
*avx512pf_gatherpfdf_mask, *avx512pf_scatterpfsf_mask,
*avx512pf_scatterpfdf_mask): Use %X5 instead of %5 for
-masm=intel.
(gatherq_mode): Remove mode iterator.
(*avx512f_gathersi, *avx512f_gathersi_2): Use X instead
of .
(*avx512f_gatherdi): Use X instead of .
(*avx512f_gatherdi_2, *avx512f_scattersi,
*avx512f_scatterdi): Use %X5 for -masm=intel.

Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/config/i386/sse.md

[Bug middle-end/88553] ICE: tree check: expected ssa_name, have var_decl in SSA_VAL, at tree-ssa-sccvn.c:461

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88553

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:30:45 2019
New Revision: 267716

URL: https://gcc.gnu.org/viewcvs?rev=267716&root=gcc&view=rev
Log:
Backported from mainline
2018-12-21  Jakub Jelinek  

PR middle-end/85594
PR middle-end/88553
* omp-expand.c (extract_omp_for_update_vars): Regimplify the condition
if needed.
(expand_omp_for_generic): Don't clobber t temporary for ordered loops.

* gcc.dg/gomp/pr85594.c: New test.
* gcc.dg/gomp/pr88553.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/gomp/pr85594.c
branches/gcc-8-branch/gcc/testsuite/gcc.dg/gomp/pr88553.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/omp-expand.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug middle-end/85594] ICE during expand when compiling with -fwrapv -fopenmp

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85594

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:30:45 2019
New Revision: 267716

URL: https://gcc.gnu.org/viewcvs?rev=267716&root=gcc&view=rev
Log:
Backported from mainline
2018-12-21  Jakub Jelinek  

PR middle-end/85594
PR middle-end/88553
* omp-expand.c (extract_omp_for_update_vars): Regimplify the condition
if needed.
(expand_omp_for_generic): Don't clobber t temporary for ordered loops.

* gcc.dg/gomp/pr85594.c: New test.
* gcc.dg/gomp/pr88553.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/gomp/pr85594.c
branches/gcc-8-branch/gcc/testsuite/gcc.dg/gomp/pr88553.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/omp-expand.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug debug/88644] [7/8 Regression] Unexpected pub type info eliminated after r246973 (causes pubtypes-*.c to regress).

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88644

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:32:26 2019
New Revision: 267718

URL: https://gcc.gnu.org/viewcvs?rev=267718&root=gcc&view=rev
Log:
Backported from mainline
2019-01-03  Jakub Jelinek  

PR debug/88644
* dwarf2out.c (modified_type_die): If type is equal to sizetype,
change it to qualified_type.

* gcc.dg/debug/dwarf2/pr88644.c: New test.

2019-01-03  Iain Sandoe  

* gcc.dg/pubtypes-2.c: Adjust expected pubtypes length.
* gcc.dg/pubtypes-3.c: Likewise.
* gcc.dg/pubtypes-4.c: Likewise.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/debug/dwarf2/pr88644.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/dwarf2out.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog
branches/gcc-8-branch/gcc/testsuite/gcc.dg/pubtypes-2.c
branches/gcc-8-branch/gcc/testsuite/gcc.dg/pubtypes-3.c
branches/gcc-8-branch/gcc/testsuite/gcc.dg/pubtypes-4.c

[Bug target/88594] [9 Regression] ICE in int_mode_for_mode, at stor-layout.c:403

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88594

--- Comment #3 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:33:23 2019
New Revision: 267719

URL: https://gcc.gnu.org/viewcvs?rev=267719&root=gcc&view=rev
Log:
Backported from mainline
2019-01-04  Jakub Jelinek  

PR target/88594
* config/i386/i386.c (ix86_expand_divmod_libfunc): Use mode instead
of GET_MODE (opN) as modes of the libcall arguments.

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

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/pr88594.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/config/i386/i386.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug middle-end/82564] ICE at -O1 and above: in assign_stack_temp_for_type, at function.c:783

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82564

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:34:14 2019
New Revision: 267720

URL: https://gcc.gnu.org/viewcvs?rev=267720&root=gcc&view=rev
Log:
Backported from mainline
2019-01-05  Jakub Jelinek  

PR middle-end/82564
PR target/88620
* expr.c (expand_assignment): For calls returning VLA structures
if to_rtx is not a MEM, force it into a stack temporary.

* gcc.dg/nested-func-12.c: New test.
* gcc.c-torture/compile/pr82564.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.c-torture/compile/pr82564.c
branches/gcc-8-branch/gcc/testsuite/gcc.dg/nested-func-12.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/expr.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug target/88620] [7/8 Regression] ICE in assign_stack_temp_for_type, at function.c:837

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88620

--- Comment #6 from Jakub Jelinek  ---
Author: jakub
Date: Tue Jan  8 10:34:14 2019
New Revision: 267720

URL: https://gcc.gnu.org/viewcvs?rev=267720&root=gcc&view=rev
Log:
Backported from mainline
2019-01-05  Jakub Jelinek  

PR middle-end/82564
PR target/88620
* expr.c (expand_assignment): For calls returning VLA structures
if to_rtx is not a MEM, force it into a stack temporary.

* gcc.dg/nested-func-12.c: New test.
* gcc.c-torture/compile/pr82564.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.c-torture/compile/pr82564.c
branches/gcc-8-branch/gcc/testsuite/gcc.dg/nested-func-12.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/expr.c
branches/gcc-8-branch/gcc/testsuite/ChangeLog

[Bug tree-optimization/88739] [7/8/9 Regression] Big-endian union bug

2019-01-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88739

--- Comment #7 from Richard Biener  ---
So FRE tries to match up a store with (possibly bit-precision) type T with a
load of (possibly bit-precision) type U.  The load and store are analyzed
by get_ref_base_and_extent to a common base object hand happen at
bit-position offset/offset2 with bitsize size/size2.  Since they are
memory ops all the *_BIG_ENDIAN "matter" (since they are typed even
FLOAT_WORDS_BIG_ENDIAN might matter).  In the end we are BIT_FIELD_REFing
the stored _register_ though...

[Bug target/85593] [7 Regression] GCC on ARM allocates R3 for local variable when calling naked function with O2 optimizations enabled

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85593

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[7/8 Regression] GCC on ARM |[7 Regression] GCC on ARM
   |allocates R3 for local  |allocates R3 for local
   |variable when calling naked |variable when calling naked
   |function with O2|function with O2
   |optimizations enabled   |optimizations enabled

--- Comment #17 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug middle-end/85594] ICE during expand when compiling with -fwrapv -fopenmp

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85594

--- Comment #6 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug target/86832] [8 Regression] GCC v8.2.0 tries to use native TLS with -fstack-protector-strong on Windows (mingw-w64)

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86832
Bug 86832 depends on bug 85644, which changed state.

Bug 85644 Summary: [8 Regression] -fstack-protector generates invalid read to 
%fs:0x0 on mac
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85644

   What|Removed |Added

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

[Bug target/85644] [8 Regression] -fstack-protector generates invalid read to %fs:0x0 on mac

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85644

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #10 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug target/86832] [8 Regression] GCC v8.2.0 tries to use native TLS with -fstack-protector-strong on Windows (mingw-w64)

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86832

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #15 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug c++/86669] [7 regression] Complete object constructor clone omits length for a c++11 braced initialiser

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86669

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[7/8 regression] Complete   |[7 regression] Complete
   |object constructor clone|object constructor clone
   |omits length for a c++11|omits length for a c++11
   |braced initialiser  |braced initialiser

--- Comment #10 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug c++/86900] [8 Regression] -gdwarf-5 -O2 -ffunction-sections = assembler error

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86900

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #8 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug tree-optimization/87360] [8 Regression] ICE in remove_redundant_iv_tests at gcc/tree-ssa-loop-ivcanon.c:571 since r255467

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87360

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #6 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug debug/87039] [8 Regression] DW_OP_fbreg used without a frame base on a C++ code w/ -fopenmp

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87039

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #8 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug rtl-optimization/87475] [8 Regression] ICE in patch_jump_insn, at cfgrtl.c:1275

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87475

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #8 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug c++/87506] [7 Regression] ICE with inherited constexpr constructor with const argument

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87506

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[7/8 Regression] ICE with   |[7 Regression] ICE with
   |inherited constexpr |inherited constexpr
   |constructor with const  |constructor with const
   |argument|argument

--- Comment #6 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug c++/87436] [7 Regression] G++ produces >300MB .rodata section to initialize struct with big array

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87436

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[7/8 Regression] G++|[7 Regression] G++ produces
   |produces >300MB .rodata |>300MB .rodata section to
   |section to initialize   |initialize struct with big
   |struct with big array   |array

--- Comment #12 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug tree-optimization/87895] [7 Regression] ICE in purge_dead_edges, at cfgrtl.c:3246

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87895

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[7/8 Regression] ICE in |[7 Regression] ICE in
   |purge_dead_edges, at|purge_dead_edges, at
   |cfgrtl.c:3246   |cfgrtl.c:3246

--- Comment #7 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug c++/87539] [8 Regression] internal compiler error when compiling project with Os optimization flag

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87539

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #7 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug tree-optimization/87898] [8 Regression] ICE in separate_decls_in_region_debug, at tree-parloops.c:961

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87898

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #5 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug target/87598] [8 Regression] Rejects "%a0" with constant

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87598

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #15 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug c++/87934] [8 regression] struct with NSDMI of enum makes initialization a non-constant expression

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87934

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #7 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug fortran/88611] [9 Regression] ICE in eliminate_stmt, at tree-ssa-sccvn.c:5011

2019-01-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88611

Richard Biener  changed:

   What|Removed |Added

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

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

[Bug tree-optimization/88071] [8 Regression] ICE: verify_gimple failed (error: dead STMT in EH table)

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88071

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #6 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug rtl-optimization/88018] [8 Regression] ICE in insert_insn_on_edge at cfgrtl.c:1952 since r255066

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88018

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #7 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug fortran/88611] [9 Regression] ICE in eliminate_stmt, at tree-ssa-sccvn.c:5011

2019-01-08 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88611

--- Comment #9 from Richard Biener  ---
Author: rguenth
Date: Tue Jan  8 10:46:04 2019
New Revision: 267721

URL: https://gcc.gnu.org/viewcvs?rev=267721&root=gcc&view=rev
Log:
2019-01-08  Richard Biener  

PR fortran/88611
* trans-expr.c (gfc_conv_initializer): For ISOCBINDING_NULL_*
directly build the expected GENERIC tree.

* gfortran.dg/pr88611.f90: New testcase.

Added:
trunk/gcc/testsuite/gfortran.dg/pr88611.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-expr.c
trunk/gcc/testsuite/ChangeLog

[Bug c++/88180] [7 Regression] ICE in vec

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88180

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[7/8 Regression] ICE in |[7 Regression] ICE in
   |vec::quick_push(tree_ |vl_embed>::quick_push(tree_
   |node* const&)   |node* const&)

--- Comment #7 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug c++/88103] [7 Regression] Wrong value category when conditional expression result is used as object expression

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88103

Jakub Jelinek  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |jakub at gcc dot gnu.org
Summary|[7/8/9 Regression] Wrong|[7 Regression] Wrong value
   |value category when |category when conditional
   |conditional expression  |expression result is used
   |result is used as object|as object expression
   |expression  |

--- Comment #7 from Jakub Jelinek  ---
Fixed for 9+ and 8.3+ too.

[Bug c++/88181] [7 Regression] ICE: verify_type failed (error: type variant differs by TYPE_PACKED)

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88181

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[7/8 Regression] ICE:   |[7 Regression] ICE:
   |verify_type failed (error:  |verify_type failed (error:
   |type variant differs by |type variant differs by
   |TYPE_PACKED)|TYPE_PACKED)

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

[Bug target/88234] UBsan and runtime error: signed integer overflow using unsigned vector

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88234

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #17 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug rtl-optimization/88416] [8 Regression] ICE in in df_uses_record, at df-scan.c:3013

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88416

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #7 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug fortran/88377] ICE in gfc_omp_clause_copy_ctor, at fortran/trans-openmp.c:614

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88377

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #5 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug c++/88410] [8 Regression] internal compiler error: output_operand: invalid expression as operand

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88410

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #6 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug sanitizer/88215] UBSAN: Internal compiler error with attribute(unused)

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88215

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #7 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug sanitizer/88426] [8 Regression] Compiler crash if use special code with command line switch -fsanitize=float-cast-overflow

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88426

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #7 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug fortran/88463] Rejects conforming source, OpenMP Parallel region Default(None) reference to module parameter array, separate source

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88463

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #5 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug rtl-optimization/88563] [7 Regression] wrong code with -O2 -fno-code-hoisting -fno-tree-ccp -fno-tree-dominator-opts -fno-tree-forwprop -fno-tree-fre -fno-tree-pre -fno-tree-vrp

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88563

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[7/8 Regression] wrong code |[7 Regression] wrong code
   |with -O2 -fno-code-hoisting |with -O2 -fno-code-hoisting
   |-fno-tree-ccp   |-fno-tree-ccp
   |-fno-tree-dominator-opts|-fno-tree-dominator-opts
   |-fno-tree-forwprop  |-fno-tree-forwprop
   |-fno-tree-fre -fno-tree-pre |-fno-tree-fre -fno-tree-pre
   |-fno-tree-vrp   |-fno-tree-vrp

--- Comment #9 from Jakub Jelinek  ---
Fixed for 8.3+ too.

[Bug middle-end/88553] ICE: tree check: expected ssa_name, have var_decl in SSA_VAL, at tree-ssa-sccvn.c:461

2019-01-08 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88553

--- Comment #8 from Jakub Jelinek  ---
Fixed for 8.3+ too.

  1   2   3   >