[Bug lto/85451] [offloading] Improve lto-wrapper error message when not finding mkoffload

2018-05-02 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85451

--- Comment #6 from Tom de Vries  ---
Author: vries
Date: Wed May  2 07:12:15 2018
New Revision: 259821

URL: https://gcc.gnu.org/viewcvs?rev=259821&root=gcc&view=rev
Log:
[lto] Add "could not find mkoffload" error message to lto-wrapper

2018-05-02  Tom de Vries  

PR lto/85451
* lto-wrapper.c (compile_offload_image): Add "could not find mkoffload"
error message.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/lto-wrapper.c

[Bug lto/85451] [offloading] Improve lto-wrapper error message when not finding mkoffload

2018-05-02 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85451

Tom de Vries  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |9.0

--- Comment #7 from Tom de Vries  ---
Patches committed, marking resolved-fixed.

[Bug tree-optimization/85579] [9 regression] SIGSEV in fortran test case gfortran.dg/pr51434.f90 starting with r259754

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85579

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2018-05-02
   Assignee|unassigned at gcc dot gnu.org  |rguenth at gcc dot 
gnu.org
   Target Milestone|--- |9.0
 Ever confirmed|0   |1

--- Comment #2 from Richard Biener  ---
I will have a look.

[Bug target/85430] [7 Regression] ICE: SIGSEGV in memory_operand at recog.c:1358/9 with -O2 -fno-tree-ccp -fno-tree-fre

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85430

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[7/8/9 Regression] ICE: |[7 Regression] ICE: SIGSEGV
   |SIGSEGV in memory_operand   |in memory_operand at
   |at recog.c:1358/9 with -O2  |recog.c:1358/9 with -O2
   |-fno-tree-ccp -fno-tree-fre |-fno-tree-ccp -fno-tree-fre

--- Comment #5 from Jakub Jelinek  ---
Fixed for 8.1+.

[Bug lto/85583] [9 Regression] lto1: internal compiler error: in lto_balanced_map, at lto/lto-partition.c:833

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85583

Richard Biener  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code, lto
 CC||hubicka at gcc dot gnu.org
   Target Milestone|--- |9.0
Summary|lto1: internal compiler |[9 Regression] lto1:
   |error: in lto_balanced_map, |internal compiler error: in
   |at lto/lto-partition.c:833  |lto_balanced_map, at
   ||lto/lto-partition.c:833

--- Comment #1 from Richard Biener  ---
The sanity check was fixed one already.  Honza?

[Bug c++/85587] [8/9 Regression] bogus error: ‘F’ was not declared in this scope

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85587

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P1
   Target Milestone|8.2 |8.0

[Bug middle-end/85586] [8/9 Regression] Optimizer produces different result on -O2 and -O3

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85586

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P1

[Bug fortran/85575] Acceptance of invalid code: ordering of declaration statements with implicit typing

2018-05-02 Thread juergen.reuter at desy dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85575

--- Comment #3 from Jürgen Reuter  ---
This seems to be a GNU extension. In fact, when compiling with -std=f2008
gfortran throws an error. So my guess is this a wanted extension for backwards
compatibility with old programs, well not too old, as they must at least have
modules. If that's the case (wanted extension) then that's probably a
"worksforme" close case.

[Bug tree-optimization/85588] [6/7/8/9 Regression] -fwrapv miscompilation

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85588

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P2
 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |rguenth at gcc dot 
gnu.org
   Target Milestone|--- |6.5

--- Comment #3 from Richard Biener  ---
Mine then.

[Bug rtl-optimization/85594] ICE during expand when compiling with -fwrapv -fopenmp

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85594

Richard Biener  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-05-02
 Ever confirmed|0   |1

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

[Bug middle-end/85586] [8/9 Regression] Optimizer produces different result on -O2 and -O3

2018-05-02 Thread rsandifo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85586

--- Comment #4 from rsandifo at gcc dot gnu.org  
---
Author: rsandifo
Date: Wed May  2 07:40:22 2018
New Revision: 259822

URL: https://gcc.gnu.org/viewcvs?rev=259822&root=gcc&view=rev
Log:
Tighten early exit in vect_analyze_data_ref_dependence (PR85586)

The problem in this PR was that we didn't consider aliases between
writes in the same strided group.  After tightening the early exit
we get the expected abs(step) >= 2 versioning check.

2018-05-02  Richard Sandiford  

gcc/
PR tree-optimization/85586
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Only
exit early for statements in the same group if the accesses are
not strided.

gcc/testsuite/
PR tree-optimization/85586
* gcc.dg/vect/pr85586.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/vect/pr85586.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-vect-data-refs.c

[Bug target/85595] __atomic_is_lock_free(sizeof(unsigned long long), &v) returns true on i686

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85595

Richard Biener  changed:

   What|Removed |Added

 Target||i?86-*-*
 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2018-05-02
 Ever confirmed|0   |1

--- Comment #3 from Richard Biener  ---
A better example like...?

[Bug middle-end/85586] [8/9 Regression] Optimizer produces different result on -O2 and -O3

2018-05-02 Thread rsandifo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85586

--- Comment #5 from rsandifo at gcc dot gnu.org  
---
Author: rsandifo
Date: Wed May  2 07:43:49 2018
New Revision: 259823

URL: https://gcc.gnu.org/viewcvs?rev=259823&root=gcc&view=rev
Log:
Tighten early exit in vect_analyze_data_ref_dependence (PR85586)

The problem in this PR was that we didn't consider aliases between
writes in the same strided group.  After tightening the early exit
we get the expected abs(step) >= 2 versioning check.

2018-05-02  Richard Sandiford  

gcc/
PR tree-optimization/85586
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Only
exit early for statements in the same group if the accesses are
not strided.

gcc/testsuite/
PR tree-optimization/85586
* gcc.dg/vect/pr85586.c: New test.

Added:
branches/gcc-8-branch/gcc/testsuite/gcc.dg/vect/pr85586.c
Modified:
branches/gcc-8-branch/gcc/ChangeLog
branches/gcc-8-branch/gcc/testsuite/ChangeLog
branches/gcc-8-branch/gcc/tree-vect-data-refs.c

[Bug tree-optimization/85597] [6/7/8/9 Regression] internal compiler error: in compute_live_loop_exits, at tree-ssa-loop-manip.c:229

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85597

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P2
 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2018-05-02
   Assignee|unassigned at gcc dot gnu.org  |rguenth at gcc dot 
gnu.org
 Ever confirmed|0   |1

--- Comment #2 from Richard Biener  ---
Mine then.  SSA form is corrupt:

   [local count: 858993466]:
  vect_cst__66 = { 1.0e+0, 1.0e+0, 1.0e+0, 1.0e+0 };
  _67 = {_6, _10, _13, _16};
  vect_cst__68 = _67;

   [local count: 6950038024]:
...
  # ivtmp_73 = PHI 
  _6 = *S_32;

[Bug middle-end/85598] Incorrect warning only at -O2 and -O3

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85598

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-05-02
 CC||msebor at gcc dot gnu.org
 Ever confirmed|0   |1

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

[Bug c++/85587] [8/9 Regression] bogus error: ‘F’ was not declared in this scope

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85587

--- Comment #2 from Jakub Jelinek  ---
Author: jakub
Date: Wed May  2 07:50:28 2018
New Revision: 259824

URL: https://gcc.gnu.org/viewcvs?rev=259824&root=gcc&view=rev
Log:
PR c++/85587 - error with scoped enum in template.
* semantics.c (finish_qualified_id_expr): Don't return an
unqualified IDENTIFIER_NODE.

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

[Bug middle-end/85598] [7/8/9 Regression] Incorrect warning only at -O2 and -O3

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85598

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P2
   Target Milestone|--- |7.4
Summary|Incorrect warning only at   |[7/8/9 Regression]
   |-O2 and -O3 |Incorrect warning only at
   ||-O2 and -O3

[Bug c++/85600] [9 Regression] CPU2006 471.omnetpp fails starting with r259771

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85600

Richard Biener  changed:

   What|Removed |Added

   Keywords||wrong-code
   Priority|P3  |P1
   Target Milestone|--- |9.0

[Bug target/85582] [9 Regression] wrong code at -O1 and above on x86_64-linux-gnu in 32-bit mode

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85582

--- Comment #4 from Jakub Jelinek  ---
Author: jakub
Date: Wed May  2 07:52:08 2018
New Revision: 259825

URL: https://gcc.gnu.org/viewcvs?rev=259825&root=gcc&view=rev
Log:
PR target/85582
* config/i386/i386.md (*ashl3_doubleword_mask,
*ashl3_doubleword_mask_1, *3_doubleword_mask,
*3_doubleword_mask_1): If and[sq]i3 is needed, don't
clobber operands[2], instead use a new pseudo.  Formatting fixes.

* gcc.c-torture/execute/pr85582-1.c: New test.
* gcc.c-torture/execute/pr85582-2.c: New test.

Added:
trunk/gcc/testsuite/gcc.c-torture/execute/pr85582-1.c
trunk/gcc/testsuite/gcc.c-torture/execute/pr85582-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.md
trunk/gcc/testsuite/ChangeLog

[Bug middle-end/85602] [8/9 Regression] regression with strncat and -Wall in GCC 8

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85602

Richard Biener  changed:

   What|Removed |Added

   Keywords||diagnostic
   Priority|P3  |P2
   Target Milestone|--- |8.2
Summary|regression with strncat and |[8/9 Regression] regression
   |-Wall in GCC 8  |with strncat and -Wall in
   ||GCC 8

[Bug middle-end/85567] [7/8/9 Regression] internal compiler error: in gimplify_modify_expr, at gimplify.c:5797 when using sincos()

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85567

--- Comment #2 from Richard Biener  ---
Author: rguenth
Date: Wed May  2 07:59:34 2018
New Revision: 259826

URL: https://gcc.gnu.org/viewcvs?rev=259826&root=gcc&view=rev
Log:
2018-05-02  Richard Biener  

PR middle-end/85567
* gimplify.c (gimplify_save_expr): When in SSA form allow
SAVE_EXPRs to compute to SSA vars.

* gcc.dg/torture/pr85567.c: New testcase.

Added:
trunk/gcc/testsuite/gcc.dg/torture/pr85567.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/gimplify.c
trunk/gcc/testsuite/ChangeLog

[Bug middle-end/85567] [7/8 Regression] internal compiler error: in gimplify_modify_expr, at gimplify.c:5797 when using sincos()

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85567

Richard Biener  changed:

   What|Removed |Added

  Known to work||9.0
Summary|[7/8/9 Regression] internal |[7/8 Regression] internal
   |compiler error: in  |compiler error: in
   |gimplify_modify_expr, at|gimplify_modify_expr, at
   |gimplify.c:5797 when using  |gimplify.c:5797 when using
   |sincos()|sincos()

--- Comment #3 from Richard Biener  ---
Fixed on trunk sofar.

[Bug fortran/85599] invalid optimization: function not always evaluated in logical expression

2018-05-02 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85599

Thomas Koenig  changed:

   What|Removed |Added

   Keywords|wrong-code  |diagnostic
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-05-02
 CC||tkoenig at gcc dot gnu.org
 Ever confirmed|0   |1
   Severity|normal  |enhancement

--- Comment #2 from Thomas Koenig  ---
(In reply to kargl from comment #1)

> 10.1.5.4.2 Evaluation of logical intrinsic operations
> 
>   Once the interpretation of a logical intrinsic operation is
>   established, the processor may evaluate any other expression
>   that is logically equivalent, provided that the integrity of
>   parentheses in any expression is not violated.
> 
>   Two expressions of type logical are logically equivalent
>   if their values are equal for all possible values of their
>   primaries.
> 
> With 'flag = .false.', gfortran can determine that 
> check()'s return value is irrelevant.  So, the
> the values of 'flag .and. check()' and 'flag' are
> logically equivalent.
> 
> Note, 'check() .and. flag' is logically equivalent
> to 'flag', but the standard does not require any order
> in the evaluation of op1 and op2 in a binary operation.
> 
> Also, note that this is my interpretation.  I could
> be wrong.

You're right, the code relying on side effects is undefined.

Confirming as enhancement request.

Would be nice to add a warning to catch this, though.

[Bug fortran/85599] invalid optimization: function not always evaluated in logical expression

2018-05-02 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85599

Thomas Koenig  changed:

   What|Removed |Added

   Keywords||missed-optimization

--- Comment #3 from Thomas Koenig  ---
Additionally, I think check() should never be executed, at least not
if optimizing.

[Bug tree-optimization/85579] [9 regression] SIGSEV in fortran test case gfortran.dg/pr51434.f90 starting with r259754

2018-05-02 Thread clyon at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85579

Christophe Lyon  changed:

   What|Removed |Added

 CC||clyon at gcc dot gnu.org

--- Comment #3 from Christophe Lyon  ---
Seen on aarch64 and arm too.

[Bug tree-optimization/85579] [9 regression] SIGSEV in fortran test case gfortran.dg/pr51434.f90 starting with r259754

2018-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85579

--- Comment #4 from Richard Biener  ---
To me the testcase looks invalid:

   integer, parameter :: n = 5
   character(len=1), parameter :: s(n) = 'a'
   type :: a
  integer :: m = n
  character(len=1):: t(n) = transfer('abcde ', s)

this initializes an array of size 5 with a sequence of too many chars:

bar ()
{
  static struct a c = {.m=5, .t={"a", "b", "c", "d", "e", " ", " ", " ", " ", "
", " ", " ", " ", " ", " ", " ", " ", " "}};

OTOH maybe nothing cares.  But we definitely do output the constants and for
aarch64 I see:

.set.LANCHOR0,. + 0
.type   options.3.2654, %object
.size   options.3.2654, 28
options.3.2654:
.word   102
.word   8191
.word   1
.word   1
.word   1
.word   0
.word   31
.zero   4
.type   c.2640, %object
.size   c.2640, 12
c.2640:
.word   5
.ascii  "a"
.ascii  "b"
.ascii  "c"
.ascii  "d"
.ascii  "e"
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.ascii  " "
.zero   4
.type   A.1.2647, %object
.size   A.1.2647, 40
A.1.2647:
.xword  .LC0
.xword  .LC1
.xword  .LC2
...

notice the bogus .size of c.2640.  But then we get to both c and A via

adrpx0, .LANCHOR0
add x0, x0, :lo12:.LANCHOR0
add x3, x0, 32
add x0, x0, 48

which looks wrong.

Not sure why it worked before (or why it doesn't work on powerpc) but
clearly the frontend emits bogus IL here and/or the output machinery
should avoid emitting excess elements(?).

[Bug middle-end/85586] [8/9 Regression] Optimizer produces different result on -O2 and -O3

2018-05-02 Thread rsandifo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85586

rsandifo at gcc dot gnu.org  changed:

   What|Removed |Added

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

--- Comment #6 from rsandifo at gcc dot gnu.org  
---
Patch applied.  Thanks for reporting the bug!

[Bug lto/85583] [9 Regression] lto1: internal compiler error: in lto_balanced_map, at lto/lto-partition.c:833

2018-05-02 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85583

Jan Hubicka  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2018-05-02
   Assignee|unassigned at gcc dot gnu.org  |hubicka at gcc dot 
gnu.org
 Ever confirmed|0   |1

--- Comment #2 from Jan Hubicka  ---
I will take a look. Indeed it was buggy for empty files (where best cost is -1
rather than 0), but this is probably independent issue.

[Bug fortran/85599] invalid optimization: function not always evaluated in logical expression

2018-05-02 Thread janus at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85599

--- Comment #4 from janus at gcc dot gnu.org ---
(In reply to kargl from comment #1)
> The behavior may not be buggy, and it's best not to depend
> on side-effects.  From F2018,
> 
> 10.1.5.4.2 Evaluation of logical intrinsic operations
> 
>   Once the interpretation of a logical intrinsic operation is
>   established, the processor may evaluate any other expression
>   that is logically equivalent, provided that the integrity of
>   parentheses in any expression is not violated.
> 
>   Two expressions of type logical are logically equivalent
>   if their values are equal for all possible values of their
>   primaries.
> 

Thanks for the standard quote, Steve. It certainly goes in the right direction,
but I feel like it's not quite to the point.

Some other (possibly) relevant passages I found in the 2008 standard:

*
7.1.7 Evaluation of operands
1 It is not necessary for a processor to evaluate all of the operands of an
expression, or to evaluate entirely each operand, if the value of the
expression can be determined otherwise.
*

That also sounds like optimizing away the function call might be valid, but
then there is also this one:

*
7.1.4 Evaluation of operations
2 The evaluation of a function reference shall neither affect nor be affected
by the evaluation of any other entity within the statement.
*

The way I read it, gfortran's implementation currently violates this clause for
the expression "flag = flag .and. check()", because the evaluation of the
function reference "check()" is affected by the value of the variable "flag".

So I'd argue that the bug here is not missed-optimization in the first case,
but over-optimization in the second, after all.

What worries me most is that other compilers choose different implementations.
Can this kind of code really be processor-dependent?

[Bug c++/85604] New: Default template arguments in friend class template declarations should not be allowed

2018-05-02 Thread adr26__gcc at nunsway dot co.uk
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85604

Bug ID: 85604
   Summary: Default template arguments in friend class template
declarations should not be allowed
   Product: gcc
   Version: 9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: adr26__gcc at nunsway dot co.uk
  Target Milestone: ---

template  struct Template_Class;

struct Other_Struct
{
   template  friend struct Template_Class;
};

template 
struct Template_Class
{
};

template <>
struct Template_Class<0>
{
};

Per [temp.param]/12:

"A default template-argument shall not be specified in a friend class template
declaration."

All versions of G++ since at least 4.1.2 accept the code above.

Clang++ correctly rejects this code:

:5:26: error: default template argument not permitted on a friend
template
   template  friend struct Template_Class;
 ^   

:14:8: error: too few template arguments for class template
'Template_Class'
struct Template_Class<0>
   ^

:9:8: note: template is declared here
struct Template_Class
   ^

https://godbolt.org/g/Tvf7Fr

[Bug rtl-optimization/85605] New: Potentially missing optimization under x64 and ARM: seemingly unnecessary branch in codegen

2018-05-02 Thread sergey.ignatchenko at ithare dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85605

Bug ID: 85605
   Summary: Potentially missing optimization under x64 and ARM:
seemingly unnecessary branch in codegen
   Product: gcc
   Version: 7.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: rtl-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: sergey.ignatchenko at ithare dot com
  Target Milestone: ---

Code:

==

#include 
#include 

template
inline bool cmp(T a, T2 b) {
  return a<0 ? true : T2(a) < b;
}

template
inline bool cmp2(T a, T2 b) {
  return (a<0) | (T2(a) < b);
}

bool f(int a, int b) {
return cmp(int64_t(a), unsigned(b));
}

bool f2(int a, int b) {
return cmp2(int64_t(a), unsigned(b));
}



Functions cmp and cmp2 seem to be equivalent (at least under "as if" rule, as
side effects of reading and casting are non-observable). However, under
GCC/x64, cmp() generates code with branch, while seemingly-equivalent cmp2() -
manages to do without branching:

===

f(int, int):
  testl %edi, %edi
  movl $1, %eax
  js .L1
  cmpl %edi, %esi
  seta %al
.L1:
  rep ret

f2(int, int):
  movl %edi, %edx
  shrl $31, %edx
  cmpl %edi, %esi
  seta %al
  orl %edx, %eax
  ret

===

And f2() is expected to be significantly faster than f1() in most usage
scenarios (*NB: if you feel it is necessary to create a case to illustrate
detriment of branching - please LMK, but hopefully it is quite obvious*). 

Per Godbolt, similar behavior is observed under both GCC/x64, and GCC/ARM;
however, Clang manages to do without branching both for f1() and f2(). 

*Godbolt link*: https://godbolt.org/g/ktovvP

[Bug c/65892] gcc fails to implement N685 aliasing of union members

2018-05-02 Thread aph at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65892

--- Comment #62 from Andrew Haley  ---
Just a bit of clarification:

(In reply to James Kuyper Jr. from comment #59)
> 
> > 1) all type-based alias analysis is effectively impossible
> 
> Alias analysis is only affected by the special guarantee if
> a) the types involved are both struct types

> b) both struct types are members of the same union
> c) the struct types share a common initial sequence

OK to all of those.

> d) the code in question inspects the value of one of the members of the
> common initial sequence.

While this is a reasonable inference from what the text of the
standard says, type-based alias analysis, by definition, does not pay
any attention to what any piece of code does.  The analysis is purely
type-based: that is to say, it only uses the types, and the only
question it answers is "Do these types alias?"

> e) a completed declaration of the union type that they are members
> of is visible at the point in the code where the inspection occurrs.

As explained elsewhere, TBAA doesn't use visibility as a criterion.

> It seems to me that the overwhelming majority of cases will fail to
> meet at least one of those requirements, so type-based alias
> analysis is still possible, it's just made more complicated by the
> need to check for those things.

That's not quite right, as explained above.  If you use information
other than types in alias analysis, it's no longer TBAA.  It is a
fundamental principle of TBAA that the result of an aliasing query
never changes for any pair of types.

We are extremely unlikely to redesign a big part of the optimizer for
this dusty corner case.

[Bug rtl-optimization/85605] Potentially missing optimization under x64 and ARM: seemingly unnecessary branch in codegen

2018-05-02 Thread sergey.ignatchenko at ithare dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85605

--- Comment #1 from sergey.ignatchenko at ithare dot com ---
Command line switches (see also Godbolt link above): -O3 -fomit-frame-pointer

[Bug libstdc++/84654] libstdc++ tries to use __float128 when compiling with -mno-float128

2018-05-02 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84654

Jonathan Wakely  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |9.0

--- Comment #4 from Jonathan Wakely  ---
Fixed for GCC 9.

This might be suitable to backport to release branches after some soak time on
the trunk.

[Bug fortran/85599] invalid optimization: function not always evaluated in logical expression

2018-05-02 Thread janus at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85599

--- Comment #5 from janus at gcc dot gnu.org ---
Here is a variant of the original test case, now with a PURE procedure:


program lazy

   logical :: flag

   flag = .false.
   flag = check() .and. flag
   flag = flag .and. check()

contains

   pure logical function check()
  check = .true.
   end function

end


In this case I would think it's perfectly valid to optimize away both calls to
'check', in particular because there is actually no way to check for the user
whether the function 'check' is being called (other than looking at the
assembly code etc).

However, I could not find any distinctions between pure and impure functions in
the standard, when it comes to the question of function evaluation and
optimizations. Any pointers appreciated.

[Bug c/65892] gcc fails to implement N685 aliasing of union members

2018-05-02 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65892

--- Comment #63 from rguenther at suse dot de  ---
On Wed, 2 May 2018, aph at gcc dot gnu.org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65892
> 
> --- Comment #62 from Andrew Haley  ---
> Just a bit of clarification:
> 
> (In reply to James Kuyper Jr. from comment #59)
> > 
> > > 1) all type-based alias analysis is effectively impossible
> > 
> > Alias analysis is only affected by the special guarantee if
> > a) the types involved are both struct types
> 
> > b) both struct types are members of the same union
> > c) the struct types share a common initial sequence
> 
> OK to all of those.
> 
> > d) the code in question inspects the value of one of the members of the
> > common initial sequence.
> 
> While this is a reasonable inference from what the text of the
> standard says, type-based alias analysis, by definition, does not pay
> any attention to what any piece of code does.  The analysis is purely
> type-based: that is to say, it only uses the types, and the only
> question it answers is "Do these types alias?"
> 
> > e) a completed declaration of the union type that they are members
> > of is visible at the point in the code where the inspection occurrs.
> 
> As explained elsewhere, TBAA doesn't use visibility as a criterion.
> 
> > It seems to me that the overwhelming majority of cases will fail to
> > meet at least one of those requirements, so type-based alias
> > analysis is still possible, it's just made more complicated by the
> > need to check for those things.
> 
> That's not quite right, as explained above.  If you use information
> other than types in alias analysis, it's no longer TBAA.  It is a
> fundamental principle of TBAA that the result of an aliasing query
> never changes for any pair of types.
> 
> We are extremely unlikely to redesign a big part of the optimizer for
> this dusty corner case.

Just sth I noticed.  The standard says
"it is permitted to inspect the common initial part of any of them"
and GCC already allows that.  But the testcase in this PR access
this common initial part via the actual structure types containing
this common initial sequences.  GCC has maintained the interpretation
of the standard that for struct S *p; an access like p->x is an
access of *p with respect to TBAA analysis.  But the standard doesn't
say you may access both structures containing the initial sequence
but it only says you may inspect the common initial part.  So if you
do

int f (struct t1 *p1, struct t2 *p2)
{
// union U visible here, p1->m and p2->m may alias
int *x = &p1->m;
int *y = &p2->m;
if (*x < 0)
*y = -*y;

return *x;
}

then it will work just fine.

I guess we all agree that the standards wording isn't 100% clear
and that it should be improved.

It may of course be that GCCs interpretation that p->x is an
access of *p isn't correct.  But then I don't need the union
clause because if p1->m is an access of 'int' only with
respect to TBAA then of course 'int' aliases 'int'.

[Bug testsuite/85368] [8/9 regression] phi-opt-11 test fails on IBM Z

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85368

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #3 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug middle-end/84048] [8/9 Regression] FAIL: gcc.dg/torture/tls/run-ld.c -O0 -pie -fPIE execution test

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84048

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #6 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug fortran/85507] [6/7/8/9 Regression] ICE in gfc_dep_resolver, at fortran/dependency.c:2258

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85507

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #13 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug rtl-optimization/83361] [7 Regression ?] ICE: verify_flow_info failed (error: non-cold basic block 3 reachable only by paths crossing the cold partition) on 32-bit BE powerpc targets

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83361

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #6 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug ada/82844] [8/9 Regression] Many ada tests time out on x32

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82844

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #11 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/84251] [8/9 Regression] Performance regression in gcc 8/9 when comparing floating point numbers

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84251

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #7 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug regression/81331] [6/7 Regression] missed Eh delivery in partitioned function

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81331

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #15 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/79166] [ARM] Implement neon_valid_immediate tricks for BYTES_BIG_ENDIAN

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79166

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #1 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug c++/85046] [8/9 Regression] cp/name-lookup.c:6175:53: runtime error: member access within null pointer of type 'struct cp_binding_level'

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85046

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #4 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/85512] [8/9 Regression] gcc generating non-existing sshr with immh == 0

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85512

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #12 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/82005] Early lto debug not implemented on Darwin

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82005

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #39 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug rtl-optimization/71596] gcc bootstrap fails due to segv in genrecog

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71596

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #7 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/80198] [6/7/8/9 Regression] does not vectorize generic inplace integer operation

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80198

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #13 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug rtl-optimization/80791] [8/9 regression] test case gcc.dg/sms-1.c fail2 starting with r247885

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80791

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #19 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug ada/80590] [8/9 regression] non-bootstrap build failure of Ada runtime

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80590

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #15 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/85459] [8/9 Regression] Larger code generated from GMP template meta-programming

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85459

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #4 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/83267] [8/9 regression] [armeb] gfortran.fortran-torture/execute/scalarize2.f90 fails since r255307

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83267

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #1 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug libstdc++/78595] Unnecessary copies in _Rb_tree

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78595

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #11 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/78496] [7 Regression] Missed opportunities for jump threading

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78496

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #14 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug preprocessor/69543] [6/7/8/9 Regression] _Pragma does not apply within macro

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69543

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #12 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/83838] Many gcc.target/i386/indirect-thunk*.c tests FAIL

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83838

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #8 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug fortran/84135] [8/9 Regression] ICE in gfc_trans_array_cobounds, at fortran/trans-array.c:6033

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84135

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #4 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug fortran/84848] [8/9 Regression] FAIL: gfortran.dg/coarray/event_3.f08/9 -fcoarray=single -O2 -latomic execution test

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84848

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #7 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug ipa/85103] [8/9 Regression] Performance regressions on SPEC with r257582

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85103

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #8 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug go/84948] [8/9 regression] ICE in set_from, at go/gofrontend/types.cc:2660

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84948

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #2 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/81018] [8/9 regression] gfortran.dg/graphite/pr14741.f90 FAILs

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81018

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #6 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/83851] [8/9 regression] gcc.dg/vect/pr53185-2.c fails on armeb after r256634

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83851

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #4 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug middle-end/82407] [meta-bug] qsort_chk fallout tracking

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82407

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #2 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/83403] Missed register promotion opportunities in loop

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83403

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #3 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/80511] [8/9 Regression] gcc.dg/Wstrict-overflow-18.c gcc.dg/Wstrict-overflow-7.c gcc.dg/pragma-diag-3.c

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80511

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #4 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/71991] Inconsistency for __attribute__ ((__always_inline__)) among LTO and non-LTO compilation

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71991

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #13 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/84490] [8/9 regression] 436.cactusADM regressed by 6-8% percent with -Ofast on Zen and Haswell, compared to gcc 7.2

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84490

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #7 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug c++/84733] [8/9 Regression] internal compiler error: Segmentation fault (check_local_shadow())

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84733

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #12 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug libstdc++/83906] Random FAIL: libstdc++-prettyprinters/80276.cc whatis p4

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83906

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #20 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug libfortran/78549] Very slow formatted internal file output

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78549

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #33 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/78972] [6/7/8/9 Regression] poor x86 simd instruction scheduling

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78972

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #15 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/82258] [8/9 regression] allocate_zerosize_3.f fails since r251949

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82258

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #17 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug inline-asm/84941] [6/7 Regression] internal compiler error: in reg_overlap_mentioned_p, at rtlanal.c:1870 (reg_overlap_mentioned_p()/match_asm_constraints_1())

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84941

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #7 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug bootstrap/81033] [8/9 Regression] there are cases where ld64 is not able to determine correct atom boundaries from the output GCC currently produces

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81033

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #35 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/82446] [8/9 Regression] Missed equalities in dr_group_sort_cmp

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82446

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #2 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug rtl-optimization/83530] [7 Regression] ICE in reset_sched_cycles_in_current_ebb, at sel-sched.c:7150

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83530

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #14 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/84413] -mtune=skylake-avx512,cannonlake,icelake disable many optimizations

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84413

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #4 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug libstdc++/70472] is_copy_constructible>>::value is true

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70472

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #11 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug fortran/83088] [8/9 Regression] ICE with -init-derived

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83088

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #2 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug fortran/85506] ICE in gfc_assign_data_value, at fortran/data.c:448

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85506

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #2 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/83760] [7 Regression] [SH] ICE in maybe_record_trace_start building glibc tst-copy_file_range.c

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83760

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #6 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug testsuite/80759] gcc.target/x86_64/abi/ms-sysv FAILs

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80759

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #65 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/84923] [8/9 regression] gcc.dg/attr-weakref-1.c failed on aarch64

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84923

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #6 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug middle-end/78809] Inline strcmp with small constant strings

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78809

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #34 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug fortran/85314] gcc/fortran/resolve.c:9222: unreachable code ?

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85314

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #2 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug libstdc++/77866] Add SystemTap probe points to libstdc++

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77866

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #1 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/82255] Vectorizer cost model overcounts cost of some vectorized loads

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82255

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #5 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug c++/84598] [8/9 Regression] internal compiler error: Segmentation fault (cp_default_conversion())

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84598

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #2 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug bootstrap/82856] --enable-maintainter-mode broken by incompatiblity of gcc's required automake and modern Perl

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82856

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #8 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/78176] [MIPS] miscompiles ldxc1 with large pointers on 32-bits

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78176

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #22 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/84353] [8/9 Regression] [graphite] ICE in set_codegen_error, at graphite-isl-ast-to-gimple.c:206

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84353

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #4 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug libstdc++/79422] Use ACX_BUGURL for error in snprintf_lite.cc

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79422

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #1 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug fortran/84472] Missing finalization and memory leak

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84472

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #2 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug tree-optimization/58454] Potentially wrong(or at least weird/inconsistent) code generation with -O2 -fno-strict-overflow

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58454

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #9 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug c++/85481] [8/9 Regression] ICE in maybe_explain_implicit_delete

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85481

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #3 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/80938] [7 Regression] ICE in maybe_record_trace_start, at dwarf2cfi.c:2330

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80938

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #9 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug rtl-optimization/82982] [8/9 Regression] ICE: qsort checking failed (error: qsort comparator non-negative on sorted output: 5) in ready_sort_real in haifa scheduler

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82982

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #10 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug middle-end/77568] [7/8/9 regression] CSE/PRE/Hoisting blocks common instruction contractions

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77568

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #11 from Jakub Jelinek  ---
GCC 8.1 has been released.

[Bug target/84711] AArch32 big-endian fails when taking subreg of a vector mode to a scalar mode.

2018-05-02 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84711

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.0 |8.2

--- Comment #11 from Jakub Jelinek  ---
GCC 8.1 has been released.

  1   2   3   >