[Bug tree-optimization/71253] New: [7 Regression] ICE during loop distribution w/ -O2 -ftree-loop-distribution

2016-05-24 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71253

Bug ID: 71253
   Summary: [7 Regression] ICE during loop distribution w/ -O2
-ftree-loop-distribution
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: asolokha at gmx dot com
  Target Milestone: ---

gcc-7.0.0-alpha20160522 segfaults when compiling the following reduces snippet
w/ -O2 -ftree-loop-distribution:

int jo, af, yb;
long int wt;

void
nr (void)
{
  int *bf = &yb;
  for (;;)
{
  while (jo != 0)
{
  long int *ad = (long int *) &yb;
  for (;;)
{
  int fv;
  for (*ad = 1; *ad < 3; ++(*ad))
{
  af = *bf;
  fv = wt;
}
  bf = (int *) &wt;
  ad = &wt;
  do
{
  jo = wt = ((wt != 0) ? 1 : fv);
}
  while (jo != 0);
}
}
  bf = ⁡
}
}

% x86_64-pc-linux-gnu-gcc-7.0.0-alpha20160522 -c -O2 -ftree-loop-distribution
gdgqziql.c 
gdgqziql.c: In function 'nr':
gdgqziql.c:5:1: internal compiler error: Segmentation fault
 nr (void)
 ^~

#0  0x00bc7170 in last_stmt(basic_block_def*) ()
#1  0x00c2008b in create_edge_for_control_dependence(graph*,
basic_block_def*, int, control_dependences*) [clone .isra.31] ()
#2  0x00c2141c in build_rdg(vec,
control_dependences*) ()
#3  0x00c21740 in distribute_loop(loop*, vec,
control_dependences*, int*, bool*) ()
#4  0x00c246ff in (anonymous
namespace)::pass_loop_distribution::execute(function*) ()
#5  0x00ac4f5c in execute_one_pass(opt_pass*) ()
#6  0x00ac5518 in execute_pass_list_1(opt_pass*) ()
#7  0x00ac552a in execute_pass_list_1(opt_pass*) ()
#8  0x00ac552a in execute_pass_list_1(opt_pass*) ()
#9  0x00ac5575 in execute_pass_list(function*, opt_pass*) ()
#10 0x007b1614 in cgraph_node::expand() ()
#11 0x007b2ec0 in symbol_table::compile() [clone .part.49] ()
#12 0x007b5273 in symbol_table::finalize_compilation_unit() ()
#13 0x00b8ebba in compile_file() ()
#14 0x0061a6df in toplev::main(int, char**) ()
#15 0x0061c8f7 in main ()

[Bug c/71249] -Wswitch-unreachable false positive for a compound statement containing a used label

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71249

Marek Polacek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2016-05-24
 CC||mpolacek at gcc dot gnu.org
   Assignee|unassigned at gcc dot gnu.org  |mpolacek at gcc dot 
gnu.org
   Target Milestone|--- |7.0
 Ever confirmed|0   |1

--- Comment #3 from Marek Polacek  ---
I bet the discrepancy stems from nested GIMPLE_BINDs in the C++ FE.  Changing
an if into a while should fix it, I hope.

[Bug tree-optimization/71240] [7 Regression] ICE on valid code at -O2 and above on x86_64-linux-gnu: verify_gimple failed

2016-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71240

--- Comment #6 from Jakub Jelinek  ---
Perhaps better testcase that also shows a missed optimization:
struct L { unsigned int l[2]; };
union U { double a; struct L l; } u;

void
foo (double a, struct L *p)
{
  u.a = a;
  struct L l = u.l, m;
  m.l[0] = (((l.l[1] & 0xff00) >> 24)
| ((l.l[1] & 0x00ff) >> 8)
| ((l.l[1] & 0xff00) << 8)
| ((l.l[1] & 0x00ff) << 24));
  m.l[1] = (((l.l[0] & 0xff00) >> 24)
| ((l.l[0] & 0x00ff) >> 8)
| ((l.l[0] & 0xff00) << 8)
| ((l.l[0] & 0x00ff) << 24));
  *p = m;
}

void
bar (double a, struct L *p)
{
  foo (a, p);
}

Ideally we should turn this into a 64-bit bswap or at two 32-bit bswaps, but we
manage to turn it only into one 32-bit bswap (the low 32-bits of the double).
Guess not removing the BIT_FIELD_REF is not the right thing, we could have
originally BIT_FIELD_REFs picking just 8 bits out of the double instead, like
(which ICEs too):

struct L { unsigned char l[8]; };
struct M { unsigned int m[2]; };
union U { double a; struct L l; } u;

void
foo (double a, struct M *p)
{
  u.a = a;
  struct L l = u.l;
  struct M m;
  m.m[0] = l.l[7] | (l.l[6] << 8) | (l.l[5] << 16) | (l.l[4] << 24);
  m.m[1] = l.l[3] | (l.l[2] << 8) | (l.l[1] << 16) | (l.l[0] << 24);
  *p = m;
}

void
bar (double a, struct M *p)
{
  foo (a, p);
}

Here, we end up with src_stmt that has _7 = BIT_FIELD_REF ;
but we'd still want to use BIT_FIELD_REF .  And again, we
transform only one of the two bswaps.

BTW,
struct L { unsigned char l[8]; };
union U { double a; struct L l; } u;

void
foo (double a, unsigned long long *p)
{
  u.a = a;
  struct L l = u.l;
  unsigned long long m;
  m = l.l[7] | (l.l[6] << 8) | (l.l[5] << 16) | (l.l[4] << 24);
  m |= ((unsigned long long) (l.l[3] | (l.l[2] << 8) | (l.l[1] << 16) | (l.l[0]
<< 24))) << 32;
  *p = m;
}

void
bar (double a, unsigned long long *p)
{
  foo (a, p);
}

isn't detected as 64-bit bswap either, but still ICEs.
And
struct L { unsigned char l[8]; };
union U { double a; struct L l; } u;

void
foo (double a, unsigned long long *p)
{
  u.a = a;
  struct L l = u.l;
  unsigned long long m;
  m = l.l[7] | (l.l[6] << 8) | (l.l[5] << 16) | (l.l[4] << 24)
  | ((unsigned long long) l.l[3] << 32)
  | ((unsigned long long) l.l[2] << 40)
  | ((unsigned long long) l.l[1] << 48)
  | ((unsigned long long) l.l[0] << 56);
  *p = m;
}

void
bar (double a, unsigned long long *p)
{
  foo (a, p);
}
neither, but nothing is detected there at all.

[Bug middle-end/71252] [7 Regression] ICE: verify_ssa failed : definition in block 7 does not dominate use in block 6

2016-05-24 Thread kugan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71252

--- Comment #2 from kugan at gcc dot gnu.org ---
Created attachment 38549
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38549&action=edit
untested patch

testing this patch which fixes this.

[Bug tree-optimization/71144] [6/7 Regression] isl_aff.c:1001: position out of bounds

2016-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71144

Jakub Jelinek  changed:

   What|Removed |Added

   Priority|P3  |P4
 CC||jakub at gcc dot gnu.org,
   ||spop at gcc dot gnu.org

[Bug c++/71236] [5/6/7 Regression] ICE on invalid code

2016-05-24 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71236

Paolo Carlini  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-05-24
 Ever confirmed|0   |1

[Bug c/69504] XMM register variable ICE with vector extensions

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69504

--- Comment #6 from Richard Biener  ---
Author: rguenth
Date: Tue May 24 07:55:56 2016
New Revision: 236630

URL: https://gcc.gnu.org/viewcvs?rev=236630&root=gcc&view=rev
Log:
2016-05-24  Richard Biener  

PR middle-end/70434
PR c/69504
c-family/
* c-common.h (convert_vector_to_pointer_for_subscript): Rename to ...
(convert_vector_to_array_for_subscript): ... this.
* c-common.c (convert_vector_to_pointer_for_subscript): Use a
VIEW_CONVERT_EXPR to an array type.  Rename to ...
(convert_vector_to_array_for_subscript): ... this.

cp/
* expr.c (mark_exp_read): Handle VIEW_CONVERT_EXPR.
* constexpr.c (cxx_eval_array_reference): Handle indexed
vectors.
* typeck.c (cp_build_array_ref): Adjust.

c/
* c-typeck.c (build_array_ref): Do not complain about indexing
non-lvalue vectors.  Adjust for function name change.

* tree-ssa.c (non_rewritable_mem_ref_base): Make sure to mark
bases which are accessed with non-invariant indices.
* gimple-fold.c (maybe_canonicalize_mem_ref_addr): Re-write
constant index ARRAY_REFs of vectors into BIT_FIELD_REFs.

* c-c++-common/vector-subscript-4.c: New testcase.
* c-c++-common/vector-subscript-5.c: Likewise.

Added:
trunk/gcc/testsuite/c-c++-common/vector-subscript-4.c
trunk/gcc/testsuite/c-c++-common/vector-subscript-5.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-family/ChangeLog
trunk/gcc/c-family/c-common.c
trunk/gcc/c-family/c-common.h
trunk/gcc/c/ChangeLog
trunk/gcc/c/c-typeck.c
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/constexpr.c
trunk/gcc/cp/expr.c
trunk/gcc/cp/typeck.c
trunk/gcc/gimple-fold.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa.c

[Bug middle-end/70434] [5/6/7 Regression] adding an extraneous cast to vector type results in inferior code

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70434

--- Comment #14 from Richard Biener  ---
Author: rguenth
Date: Tue May 24 07:55:56 2016
New Revision: 236630

URL: https://gcc.gnu.org/viewcvs?rev=236630&root=gcc&view=rev
Log:
2016-05-24  Richard Biener  

PR middle-end/70434
PR c/69504
c-family/
* c-common.h (convert_vector_to_pointer_for_subscript): Rename to ...
(convert_vector_to_array_for_subscript): ... this.
* c-common.c (convert_vector_to_pointer_for_subscript): Use a
VIEW_CONVERT_EXPR to an array type.  Rename to ...
(convert_vector_to_array_for_subscript): ... this.

cp/
* expr.c (mark_exp_read): Handle VIEW_CONVERT_EXPR.
* constexpr.c (cxx_eval_array_reference): Handle indexed
vectors.
* typeck.c (cp_build_array_ref): Adjust.

c/
* c-typeck.c (build_array_ref): Do not complain about indexing
non-lvalue vectors.  Adjust for function name change.

* tree-ssa.c (non_rewritable_mem_ref_base): Make sure to mark
bases which are accessed with non-invariant indices.
* gimple-fold.c (maybe_canonicalize_mem_ref_addr): Re-write
constant index ARRAY_REFs of vectors into BIT_FIELD_REFs.

* c-c++-common/vector-subscript-4.c: New testcase.
* c-c++-common/vector-subscript-5.c: Likewise.

Added:
trunk/gcc/testsuite/c-c++-common/vector-subscript-4.c
trunk/gcc/testsuite/c-c++-common/vector-subscript-5.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-family/ChangeLog
trunk/gcc/c-family/c-common.c
trunk/gcc/c-family/c-common.h
trunk/gcc/c/ChangeLog
trunk/gcc/c/c-typeck.c
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/constexpr.c
trunk/gcc/cp/expr.c
trunk/gcc/cp/typeck.c
trunk/gcc/gimple-fold.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa.c

[Bug c++/71193] [6/7 Regression] error: invalid use of incomplete type

2016-05-24 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71193

--- Comment #2 from Martin Liška  ---
Thank you Jason for the clarification, I've just created issue in Chromium
bugzilla: https://bugs.chromium.org/p/chromium/issues/detail?id=614289

[Bug regression/71231] [7 Regression]: 300% runtime increase for rnflow

2016-05-24 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71231

--- Comment #13 from rguenther at suse dot de  ---
On Tue, 24 May 2016, glisse at gcc dot gnu.org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71231
> 
> --- Comment #12 from Marc Glisse  ---
> -fwrapv seems to fix it. As far as I can tell, the multiplication is done in 
> 32
> bits, VRP detects that the numbers are nonnegative, so zeroing the sign bit of
> the result of the mult+add can be assumed to be a NOP.

Anyone have a patch to rnflow that I can apply to the tester(s) to fix
the issue?

[Bug regression/71231] [7 Regression]: 300% runtime increase for rnflow

2016-05-24 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71231

--- Comment #14 from Uroš Bizjak  ---
(In reply to rguent...@suse.de from comment #13)
> On Tue, 24 May 2016, glisse at gcc dot gnu.org wrote:
> 
> > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71231
> > 
> > --- Comment #12 from Marc Glisse  ---
> > -fwrapv seems to fix it. As far as I can tell, the multiplication is done 
> > in 32
> > bits, VRP detects that the numbers are nonnegative, so zeroing the sign bit 
> > of
> > the result of the mult+add can be assumed to be a NOP.
> 
> Anyone have a patch to rnflow that I can apply to the tester(s) to fix
> the issue?

BTW: The log file at [1] seems corrupted after "protein" report, it doesn't
report "rnflow" failure at all.

[1] http://gcc.opensuse.org/c++bench/pb11/pb11-performance-latest

[Bug c++/70972] [6 Regression] Inheriting constructors taking parameters by value should move them, not copy

2016-05-24 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70972

Paolo Carlini  changed:

   What|Removed |Added

 CC||lucdanton at free dot fr

--- Comment #6 from Paolo Carlini  ---
*** Bug 70827 has been marked as a duplicate of this bug. ***

[Bug c++/70827] [6/7 regression] dubious use of deleted function in inherited constructor

2016-05-24 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70827

Paolo Carlini  changed:

   What|Removed |Added

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

--- Comment #3 from Paolo Carlini  ---
Dup.

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

[Bug tree-optimization/71230] [7 Regression] ICE : in zero_one_operation, at tree-ssa-reassoc.c:1230

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71230

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #8 from Richard Biener  ---
There is another bug in this function remaining.

[Bug tree-optimization/71239] [7 Regression] ICE in operand_equal_p (fold-const.c:2769)

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71239

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|--- |7.0

[Bug tree-optimization/71240] [7 Regression] ICE on valid code at -O2 and above on x86_64-linux-gnu: verify_gimple failed

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71240

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #7 from Richard Biener  ---
Mine, unless Jakub beats me here.

[Bug tree-optimization/71253] [7 Regression] ICE during loop distribution w/ -O2 -ftree-loop-distribution

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71253

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2016-05-24
   Assignee|unassigned at gcc dot gnu.org  |rguenth at gcc dot 
gnu.org
   Target Milestone|--- |7.0
 Ever confirmed|0   |1

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

[Bug tree-optimization/71230] [7 Regression] ICE : in zero_one_operation, at tree-ssa-reassoc.c:1230

2016-05-24 Thread Joost.VandeVondele at mat dot ethz.ch
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71230

--- Comment #9 from Joost VandeVondele  
---
(In reply to Richard Biener from comment #8)
> There is another bug in this function remaining.

I indeed see :
bug.f90:47:0:

   SUBROUTINE eri_test (iw,error)

in pp_string, at pretty-print.c:937
0x13e8397 pp_string
../../gcc/gcc/pretty-print.c:937
0x13e8397 pp_string(pretty_printer*, char const*)
../../gcc/gcc/pretty-print.c:935
0x13e8f16 pp_format(pretty_printer*, text_info*)
../../gcc/gcc/pretty-print.c:579
0x13e3de1 diagnostic_report_diagnostic(diagnostic_context*, diagnostic_info*)
../../gcc/gcc/diagnostic.c:823
0x13e5645 internal_error(char const*, ...)
../../gcc/gcc/diagnostic.c:1258
0x8f88f8 gimple_check_failed(gimple const*, char const*, int, char const*,
gimple_code, tree_code)
../../gcc/gcc/gimple.c:1174
0xd671cb GIMPLE_CHECK2
../../gcc/gcc/gimple.h:73
0xd5bab7 zero_one_operation
../../gcc/gcc/tree-ssa-reassoc.c:1232
0xd63528 undistribute_ops_list
../../gcc/gcc/tree-ssa-reassoc.c:1586
0xd63fb8 reassociate_bb
../../gcc/gcc/tree-ssa-reassoc.c:5237

I'll have a look at reducing it.

[Bug regression/71231] [7 Regression]: 300% runtime increase for rnflow

2016-05-24 Thread glisse at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71231

--- Comment #15 from Marc Glisse  ---
(In reply to rguent...@suse.de from comment #13)
> Anyone have a patch to rnflow that I can apply to the tester(s) to fix
> the issue?

It is easy enough to create a jsee_long of type integer(kind=8) and do the
multiplication and addition on it, but we are missing the narrowing pass to
turn (int32_t)((int64_t)x*cst+cst) back into an operation on uint32_t, so that
would pessimize the code.

[Bug c++/69872] [6/7 Regression] -Wnarrowing note without warning/errror

2016-05-24 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69872

Paolo Carlini  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |paolo.carlini at oracle 
dot com

--- Comment #2 from Paolo Carlini  ---
At the moment I'm not sure to follow in detail all the special cases handled by
the conditional at issue in check_narrowing, but, in general, certainly we want
to emit an inform following a pedwarn only if the latter returns true. Changing
that and nothing else fixes the bug.

[Bug tree-optimization/71252] [7 Regression] ICE: verify_ssa failed : definition in block 7 does not dominate use in block 6

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71252

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-05-24
  Component|middle-end  |tree-optimization
   Target Milestone|--- |7.0
 Ever confirmed|0   |1

--- Comment #3 from Richard Biener  ---
Confirmed btw.

[Bug testsuite/70369] [testsuite,ARM,AArch64] AdvSIMD intrinsic tests missing

2016-05-24 Thread clyon at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70369

--- Comment #4 from Christophe Lyon  ---
I've committed my patch series for ARM: r236382, 236383, 236384, 236385,
236387, 236388, 236576, 236577, 236578, 236579, 236580.

At this stage, we can remove neon-testgen.ml and the files it generated.

During the review process, we noticed that several intrinsics described in the
documentation are not impletemented yet in arm_neon.h. I've opened bug #71233
to track this.

[Bug middle-end/70434] [5/6 Regression] adding an extraneous cast to vector type results in inferior code

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70434

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
  Known to work||7.0
 Resolution|--- |FIXED
Summary|[5/6/7 Regression] adding   |[5/6 Regression] adding an
   |an extraneous cast to   |extraneous cast to vector
   |vector type results in  |type results in inferior
   |inferior code   |code
  Known to fail|6.0 |6.1.0

--- Comment #15 from Richard Biener  ---
Fixed on trunk, no backport forthcoming.

[Bug c/69504] XMM register variable ICE with vector extensions

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69504

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #7 from Richard Biener  ---
Fixed on trunk.

[Bug tree-optimization/71230] [7 Regression] ICE : in zero_one_operation, at tree-ssa-reassoc.c:1230

2016-05-24 Thread Joost.VandeVondele at mat dot ethz.ch
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71230

--- Comment #10 from Joost VandeVondele  
---
new testcase:

> cat bug.f90
MODULE ai_coulomb_test
  INTEGER, PARAMETER :: dp=8
  INTERFACE
  SUBROUTINE g2gemint(intabc,la_max,npgfa,zeta,a,lb_max,npgfb,zetb,b,&
  lr_max,ls_max,ngemc,zetc,c,nderivative)
  INTEGER, PARAMETER :: dp=8
REAL(KIND=dp), &
  DIMENSION(:, :, :, :, :, :), &
  INTENT(INOUT)  :: intabc
REAL(KIND=dp), DIMENSION(:), INTENT(IN)  :: zeta, a
REAL(KIND=dp), DIMENSION(:), INTENT(IN)  :: zetb, b
REAL(KIND=dp), DIMENSION(:, :, :), &
  INTENT(IN) :: zetc
REAL(KIND=dp), DIMENSION(:), INTENT(IN)  :: c
  END SUBROUTINE
  END INTERFACE
  PRIVATE
  PUBLIC :: eri_test
CONTAINS
  SUBROUTINE eri_test (iw)
   IF ( iw>0 ) THEN
  WRITE(iw,'(//,A,/)') "foo"
   END IF
CALL geminal_test4 (iw)
  END SUBROUTINE eri_test
  SUBROUTINE geminal_test4 (iw)
REAL(KIND=dp):: d1, da, db, dc, delta, dmax, &
xa, xb, xc, xd, xr, xs
REAL(KIND=dp), ALLOCATABLE, &
  DIMENSION(:, :, :, :, :, :):: iabc1m, iabc1p, iabc2m, &
iabc2p, iabc3m, iabc3p, iabcd
REAL(KIND=dp), DIMENSION(2, 2, 1):: za, zb
REAL(KIND=dp), DIMENSION(3)  :: a, b, c, d
REAL(KIND=dp), DIMENSION(6)  :: ra, rb
DO k=1,3
  CALL g2gemint(iabc3p,la,1,(/xa/),a,lc,1,(/xb/),c,llb,llb,1,zb,rb,0)
  CALL g2gemint(iabc3m,la,1,(/xa/),a,lc,1,(/xb/),c,llb,llb,1,zb,rb,0)
  iabc3p = (iabc3p-iabc3m)/delta
END DO
  END SUBROUTINE geminal_test4
END MODULE ai_coulomb_test

> gfortran -c -O3 -ffast-math -fprefetch-loop-arrays bug.f90

bug.f90:20:0:

   SUBROUTINE eri_test (iw)

in pp_string, at pretty-print.c:937
0x13e8397 pp_string
../../gcc/gcc/pretty-print.c:937
0x13e8397 pp_string(pretty_printer*, char const*)
../../gcc/gcc/pretty-print.c:935
0x13e8f16 pp_format(pretty_printer*, text_info*)
../../gcc/gcc/pretty-print.c:579
0x13e3de1 diagnostic_report_diagnostic(diagnostic_context*, diagnostic_info*)
../../gcc/gcc/diagnostic.c:823
0x13e5645 internal_error(char const*, ...)
../../gcc/gcc/diagnostic.c:1258
0x8f88f8 gimple_check_failed(gimple const*, char const*, int, char const*,
gimple_code, tree_code)
../../gcc/gcc/gimple.c:1174
0xd671cb GIMPLE_CHECK2
../../gcc/gcc/gimple.h:73
0xd5bab7 zero_one_operation
../../gcc/gcc/tree-ssa-reassoc.c:1232
0xd63528 undistribute_ops_list
../../gcc/gcc/tree-ssa-reassoc.c:1586
0xd63fb8 reassociate_bb
../../gcc/gcc/tree-ssa-reassoc.c:5237
0xd63df7 reassociate_bb
../../gcc/gcc/tree-ssa-reassoc.c:5367
0xd63df7 reassociate_bb
../../gcc/gcc/tree-ssa-reassoc.c:5367
0xd63df7 reassociate_bb
../../gcc/gcc/tree-ssa-reassoc.c:5367
0xd63df7 reassociate_bb
../../gcc/gcc/tree-ssa-reassoc.c:5367
0xd63df7 reassociate_bb
../../gcc/gcc/tree-ssa-reassoc.c:5367
0xd63df7 reassociate_bb
../../gcc/gcc/tree-ssa-reassoc.c:5367
0xd63df7 reassociate_bb
../../gcc/gcc/tree-ssa-reassoc.c:5367
0xd66633 do_reassoc
../../gcc/gcc/tree-ssa-reassoc.c:5481
0xd66633 execute_reassoc
../../gcc/gcc/tree-ssa-reassoc.c:5568
0xd66633 execute
../../gcc/gcc/tree-ssa-reassoc.c:5607
Please submit a full bug report,

> gfortran -v
Using built-in specs.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/data/vjoost/gnu/gcc_trunk/install/libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../gcc/configure --prefix=/data/vjoost/gnu/gcc_trunk/install
--enable-languages=c,c++,fortran --disable-multilib --enable-plugins
--enable-lto --disable-bootstrap
Thread model: posix
gcc version 7.0.0 20160524 (experimental) [trunk revision 236623] (GCC)

[Bug middle-end/71254] New: [5 regression][AArch64] ICE after backport of fix for PR 67278

2016-05-24 Thread clyon at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71254

Bug ID: 71254
   Summary: [5 regression][AArch64] ICE after backport of fix for
PR 67278
   Product: gcc
   Version: 5.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: middle-end
  Assignee: rguenth at gcc dot gnu.org
  Reporter: clyon at gcc dot gnu.org
  Target Milestone: ---
Target: aarch64

In the gcc-5-branch, since commit 236512 (backport of PR middle-end/67278),
I have noticed the newly introduced simd-7.c test causes an ICE on aarch64*
targets.

spawn -ignore SIGHUP
/aci-gcc-fsf/builds/gcc-fsf-gccsrc/obj-aarch64-none-linux-gnu/gcc3/gcc/xgcc
-B/aci-gcc-fsf/builds/gcc-fsf-gccsrc/obj-aarch64-none-linux-gnu/gcc3/gcc/
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/testsuite/gcc.dg/simd-7.c
-fno-diagnostics-show-caret -fdiagnostics-color=never -w -Wno-psabi
-DSTACK_SIZE=16384 -S -o simd-7.s
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/testsuite/gcc.dg/simd-7.c: In function
'sum':
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/testsuite/gcc.dg/simd-7.c:8:1: internal
compiler error: in emit_move_insn, at expr.c:3601
0x743df4 emit_move_insn(rtx_def*, rtx_def*)
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/expr.c:3601
0x7249fa copy_to_reg(rtx_def*)
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/explow.c:590
0x734f0b emit_group_move_into_temps(rtx_def*)
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/expr.c:1888
0x7ac08f assign_parm_setup_block
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/function.c:2881
0x7b356a assign_parms
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/function.c:3662
0x7b4250 expand_function_start(tree_node*)
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/function.c:5068
0x6510dd execute
/aci-gcc-fsf/sources/gcc-fsf/gccsrc/gcc/cfgexpand.c:6046
Please submit a full bug report,

[Bug tree-optimization/71253] [7 Regression] ICE during loop distribution w/ -O2 -ftree-loop-distribution

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71253

--- Comment #2 from Richard Biener  ---
Bah, so it's not only the case of BBs being removed (which I fixed) but
obviously
the case of edges being removed (we keep the edge-list from CD construction
time).

[Bug c/71255] New: Auto-annotate sockaddr related structs with may_alias

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

Bug ID: 71255
   Summary: Auto-annotate sockaddr related structs with may_alias
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Keywords: wrong-code
  Severity: enhancement
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: rguenth at gcc dot gnu.org
  Target Milestone: ---

GCC should auto-annotate structs with sockaddr related identifiers with the
may_alias attribute to fix "wrong code" issues with their established
(and standards blessed?) use.

Doing this in glibc headers is not possible due to forward declarations
being incompatible (and as may_alias has an effect on
pointer-to-annotated-struct
the struct definition doesn't have to be visible).

See https://sourceware.org/bugzilla/show_bug.cgi?id=20111 and referenced bugs.

[Bug middle-end/71254] [5 regression][AArch64] ICE after backport of fix for PR 67278

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71254

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P1
 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2016-05-24
   Target Milestone|--- |5.4
 Ever confirmed|0   |1

--- Comment #1 from Richard Biener  ---
Does the testcase fail on the GCC 6 branch as well?  Does the testcase fail
before the commit?

Trying to reproduce with a cross now.

[Bug testsuite/71254] [5 regression][AArch64] ICE after backport of fix for PR 67278

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71254

Richard Biener  changed:

   What|Removed |Added

  Component|middle-end  |testsuite

--- Comment #3 from Richard Biener  ---
Ok, the backport cannot possibly have affected aarch64 so the issue is latent
and not a regression there.  Testsuite issue.

It looks like parameter passing of

typedef long double a __attribute__((vector_size (16)));

is "not implemented" on aarch64.  I'll change the testcase to exclusively run
on x86_64 / i?86 on the branch.

[Bug middle-end/71254] [5 regression][AArch64] ICE after backport of fix for PR 67278

2016-05-24 Thread clyon at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71254

--- Comment #2 from Christophe Lyon  ---
The testcase passes on the GCC 6 branch.

On the GCC 5 branch, the testcase was introduced by this commit, I haven't
tried to compile it with an earlier revision.

[Bug c/71255] Auto-annotate sockaddr related structs with may_alias

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

Marek Polacek  changed:

   What|Removed |Added

 CC||mpolacek at gcc dot gnu.org

--- Comment #1 from Marek Polacek  ---
I suppose I could memcmp IDENTIFIER_NODE for sockaddr_*, but would that be
sufficient?  Any other names?

[Bug testsuite/71254] [5 regression][AArch64] ICE after backport of fix for PR 67278

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71254

Richard Biener  changed:

   What|Removed |Added

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

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

[Bug c/71255] Auto-annotate sockaddr related structs with may_alias

2016-05-24 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

--- Comment #2 from rguenther at suse dot de  ---
On Tue, 24 May 2016, mpolacek at gcc dot gnu.org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255
> 
> Marek Polacek  changed:
> 
>What|Removed |Added
> 
>  CC||mpolacek at gcc dot gnu.org
> 
> --- Comment #1 from Marek Polacek  ---
> I suppose I could memcmp IDENTIFIER_NODE for sockaddr_*, but would that be
> sufficient?  Any other names?

Grepping manual pages shows sockaddr_in, sockaddr, sockaddr_in6,
sockaddr_storage, sockaddr_un, sockaddr_nl, sockaddr_ll, sockaddr_pkt
and sockaddr_x25.  I suppose handling 'sockaddr' plus 'sockaddr_*'
is good enough to be not pessimizing.

I've asked FW to comment here.

[Bug testsuite/71254] [5 regression][AArch64] ICE after backport of fix for PR 67278

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71254

--- Comment #5 from Richard Biener  ---
Author: rguenth
Date: Tue May 24 10:47:40 2016
New Revision: 236633

URL: https://gcc.gnu.org/viewcvs?rev=236633&root=gcc&view=rev
Log:
2016-05-24  Richard Biener  

PR testsuite/71254
* gcc.dg/simd-7.c: Compile on x86_64 and i?86 only.

Modified:
branches/gcc-5-branch/gcc/testsuite/ChangeLog
branches/gcc-5-branch/gcc/testsuite/gcc.dg/simd-7.c

[Bug tree-optimization/71252] [7 Regression] ICE: verify_ssa failed : definition in block 7 does not dominate use in block 6

2016-05-24 Thread kugan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71252

--- Comment #4 from kugan at gcc dot gnu.org ---
Author: kugan
Date: Tue May 24 10:50:01 2016
New Revision: 236634

URL: https://gcc.gnu.org/viewcvs?rev=236634&root=gcc&view=rev
Log:
gcc/testsuite/ChangeLog:

2016-05-24  Kugan Vivekanandarajah  

PR middle-end/71252
* gfortran.dg/pr71252.f90: New test.

gcc/ChangeLog:

2016-05-24  Kugan Vivekanandarajah  

PR middle-end/71252
* tree-ssa-reassoc.c (rewrite_expr_tree_parallel): Add stmt_to_insert
after
build_and_add_sum creates new use stmt.


Added:
trunk/gcc/testsuite/gfortran.dg/pr71252.f90
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-reassoc.c

[Bug c/71255] Auto-annotate sockaddr related structs with may_alias

2016-05-24 Thread fw at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

Florian Weimer  changed:

   What|Removed |Added

 CC||fw at gcc dot gnu.org

--- Comment #3 from Florian Weimer  ---
I suggest adding a pragma which glibc can use in /usr/include/stdc-predef.h,
before any struct definitions.  This way, we can maintain the list of structs
inside glibc.  The pragma should have no visible effect until a struct (or
class) with that tag is defined.

[Bug target/70677] Suboptimal cond on AVR: unneeded stack frame

2016-05-24 Thread night_ghost at ykoctpa dot ru
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70677

--- Comment #4 from night_ghost at ykoctpa dot ru ---
Created attachment 38550
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38550&action=edit
testcase in attachment

for AVR platform arduino.h is the most that neither is a standard :)

[Bug ipa/71234] Conditional jump or move depends on uninitialised value in ipa_get_indirect_edge_target_1 (ipa-cp.c:2029)

2016-05-24 Thread jamborm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71234

Martin Jambor  changed:

   What|Removed |Added

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

--- Comment #3 from Martin Jambor  ---
Should be fixed now.

[Bug c/71256] New: GCC 4.2.1 compiler segfaults when compiling a sample C file

2016-05-24 Thread ml at extensibl dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71256

Bug ID: 71256
   Summary: GCC 4.2.1 compiler segfaults when compiling a sample C
file
   Product: gcc
   Version: 4.2.1
Status: UNCONFIRMED
  Severity: major
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: ml at extensibl dot com
  Target Milestone: ---

>Environment:
System  : OpenBSD 5.9
Details : OpenBSD 5.9 (GENERIC) #1761: Fri Feb 26 01:15:04 MST 2016

dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC

Architecture: OpenBSD.amd64
Machine : amd64

>Description:
Default OpenBSD 5.9 GCC compiler segfaults when compiling a sample
file, included into the repository [1].

[1]: https://github.com/extensibl/openbsd-gcc-4.2.1-segfault

>How-To-Repeat:
Follow README instructions in [1]. C sources, header files and GCC
-save-temps files are included.

>Fix:
Fix unknown. Workaround - use GCC 4.9.3 from packages.

[Bug target/70676] suboptimal code generation on AVR

2016-05-24 Thread night_ghost at ykoctpa dot ru
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70676

--- Comment #4 from night_ghost at ykoctpa dot ru ---
Created attachment 38551
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38551&action=edit
testcase in attachment

without -no-optimize-sibling-call

reported bug can be found in MinimOsd_Extra.s on lines 2424, 3249 and so on -
all POP's of epilogue can be done before comparison.

If GCC can't move up epilogue to that place then such optimization is not
suitable for -Os because it means "in size at the expense of the rest", 
especially on embedded, where task - to shove an elephant into a beaker (I can
not better translate Russian proverb "Впихнуть невпихнуемое")

[Bug c/71256] GCC 4.2.1 compiler segfaults when compiling a sample C file

2016-05-24 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71256

Jonathan Wakely  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED
   Severity|major   |normal

--- Comment #1 from Jonathan Wakely  ---
GCC 4.2.1 is no longer supported by the GCC project, and hasn't been for many
years.

[Bug c++/71257] New: OpenMP declare simd linear with ref modifier doesn't accept references to non-integer/non-pointer

2016-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71257

Bug ID: 71257
   Summary: OpenMP declare simd linear with ref modifier doesn't
accept references to non-integer/non-pointer
   Product: gcc
   Version: 6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: jakub at gcc dot gnu.org
  Target Milestone: ---

struct S { int a; };
#pragma omp declare simd linear(ref(a):1)  // { dg-bogus "applied
to non-integral non-pointer variable" }
int foo (S &a);

is not accepted, while it should be.  The requirement that linear clause refers
only to arguments with integer/pointer type or reference to integer/pointer
type applies only when the ref modifier is not used, otherwise the only
requirement is that the argument has reference type.

[Bug c++/71257] OpenMP declare simd linear with ref modifier doesn't accept references to non-integer/non-pointer

2016-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71257

Jakub Jelinek  changed:

   What|Removed |Added

   Keywords||openmp
 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2016-05-24
   Assignee|unassigned at gcc dot gnu.org  |jakub at gcc dot gnu.org
   Target Milestone|--- |6.2
 Ever confirmed|0   |1

[Bug target/69857] gcc/config/arm/arm.c:15949: return in strange place ?

2016-05-24 Thread ktkachov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69857

--- Comment #11 from ktkachov at gcc dot gnu.org ---
Author: ktkachov
Date: Tue May 24 11:32:35 2016
New Revision: 236635

URL: https://gcc.gnu.org/viewcvs?rev=236635&root=gcc&view=rev
Log:
[ARM] PR target/69857 Remove bogus early return false; in
gen_operands_ldrd_strd

PR target/69857
* config/arm/arm.c (gen_operands_ldrd_strd): Remove bogus early
return.  Reindent transformation comment and mention the ARM state
behavior.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/arm/arm.c

[Bug c/71255] Auto-annotate sockaddr related structs with may_alias

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

--- Comment #4 from Marek Polacek  ---
Can you provide an example how do you envision such a pragma?  Should it only
have an effect on "sockaddr{,_*}"-named structs?

[Bug c/71255] Auto-annotate sockaddr related structs with may_alias

2016-05-24 Thread fw at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

--- Comment #5 from Florian Weimer  ---
(In reply to Marek Polacek from comment #4)
> Can you provide an example how do you envision such a pragma?  Should it
> only have an effect on "sockaddr{,_*}"-named structs?

I expect that we'd put something like this into :

#if defined (__GNUC__)
# if __GNUC__ >= 7
#  pragma GCC may_alias struct sockaddr
#  pragma GCC may_alias struct sockaddr_storage
#  pragma GCC may_alias struct sockaddr_in
#  pragma GCC may_alias struct sockaddr_in6
#  pragma GCC may_alias struct sockaddr_un
…
# endif  /* __GNUC__ >= 4 */
#endif  /* __GNUC__ */

After that, if GCC creates a declaration or forward definition of, say, struct
sockaddr_in, it will automatically carry the may_alias attribute.  (For
consistency, this should also apply to nested C++ namespaces etc.)

[Bug target/69857] gcc/config/arm/arm.c:15949: return in strange place ?

2016-05-24 Thread ktkachov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69857

ktkachov at gcc dot gnu.org changed:

   What|Removed |Added

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

--- Comment #12 from ktkachov at gcc dot gnu.org ---
Fixed for GCC 7.

[Bug c/71255] Implement #pragma may_alias

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

Marek Polacek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2016-05-24
   Assignee|unassigned at gcc dot gnu.org  |mpolacek at gcc dot 
gnu.org
   Target Milestone|--- |7.0
Summary|Auto-annotate sockaddr  |Implement #pragma may_alias
   |related structs with|
   |may_alias   |
 Ever confirmed|0   |1

--- Comment #6 from Marek Polacek  ---
Looks fine to me, it resembles how we handle #pragma weak a bit.  I'll have a
go at this.

[Bug c/71255] Implement #pragma may_alias

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

--- Comment #7 from Marek Polacek  ---
But before I start, do y'all feel like this attribute should be applicable too
all symbols the may_alias attribute is applicable to?  I.e. not just structs,
but other decls, too.

[Bug c/71255] Implement #pragma may_alias

2016-05-24 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

--- Comment #8 from rguenther at suse dot de  ---
On Tue, 24 May 2016, mpolacek at gcc dot gnu.org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255
> 
> --- Comment #7 from Marek Polacek  ---
> But before I start, do y'all feel like this attribute should be applicable too
> all symbols the may_alias attribute is applicable to?  I.e. not just structs,
> but other decls, too.

While a pragma might work I'd say for the case in question we'd like to
have a "tentative" forward declaration that can be merged with subsequent
forward declarations but isn't found itself by name lookup until
declared itself.

In any case consider what happens for a program doing

int sockaddr = 1;

or

void sockaddr (void) {}

that is, a program using the identifier for sth that is not close
enough to 'struct sockaddr'.  One option is to ignore the pragma
for non-structs if it said 'struct sockaddr' for example.

[Bug tree-optimization/71258] New: Missed optimizations: dynamic allocation, virtual calls, empty destructors

2016-05-24 Thread rureclonic at thraml dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71258

Bug ID: 71258
   Summary: Missed optimizations: dynamic allocation, virtual
calls, empty destructors
   Product: gcc
   Version: 6.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: rureclonic at thraml dot com
  Target Milestone: ---

clang: https://godbolt.org/g/IjYT24
gcc: https://godbolt.org/g/nkGVdB

It would seem gcc is not able to eliminate the calls to new, the virtual call
to concept::magic and the destructors, while clang completely optimizes out the
program.

interesting variation: https://godbolt.org/g/2ic8qL

Interleaving the construction of polys with the additions produces an output
with no virtual calls to concept::magic, yet without eliminating the calls to
new and destructors.

[Bug tree-optimization/71253] [7 Regression] ICE during loop distribution w/ -O2 -ftree-loop-distribution

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71253

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #3 from Richard Biener  ---
Author: rguenth
Date: Tue May 24 12:40:01 2016
New Revision: 236636

URL: https://gcc.gnu.org/viewcvs?rev=236636&root=gcc&view=rev
Log:
2016-05-24  Richard Biener  

PR tree-optimization/71253
* cfganal.h (control_dependences): Make robust against edge
and BB removal.
(control_dependences::control_dependences): Remove edge_list argument.
(control_dependences::get_edge): Remove.
(control_dependences::get_edge_src): Add.
(control_dependences::get_edge_dest): Likewise.
(control_dependences::m_el): Make a vector of edge src/dest index.
* cfganal.c (control_dependences::find_control_dependence): Adjust.
(control_dependences::control_dependences): Likewise.
(control_dependences::~control_dependence): Likewise.
(control_dependences::get_edge): Remove.
(control_dependences::get_edge_src): Add.
(control_dependences::get_edge_dest): Likewise.
* tree-ssa-dce.c (mark_control_dependent_edges_necessary): Use
get_edge_src.
(perform_tree_ssa_dce): Adjust.
* tree-loop-distribution.c (create_edge_for_control_dependence): Use
get_edge_src.
(pass_loop_distribution::execute): Adjust.  Do loop destroying
conditional on changed.

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

Added:
trunk/gcc/testsuite/gcc.dg/torture/pr71253.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cfganal.c
trunk/gcc/cfganal.h
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-loop-distribution.c
trunk/gcc/tree-ssa-dce.c

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

[Bug tree-optimization/71253] [7 Regression] ICE during loop distribution w/ -O2 -ftree-loop-distribution

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71253

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #3 from Richard Biener  ---
Author: rguenth
Date: Tue May 24 12:40:01 2016
New Revision: 236636

URL: https://gcc.gnu.org/viewcvs?rev=236636&root=gcc&view=rev
Log:
2016-05-24  Richard Biener  

PR tree-optimization/71253
* cfganal.h (control_dependences): Make robust against edge
and BB removal.
(control_dependences::control_dependences): Remove edge_list argument.
(control_dependences::get_edge): Remove.
(control_dependences::get_edge_src): Add.
(control_dependences::get_edge_dest): Likewise.
(control_dependences::m_el): Make a vector of edge src/dest index.
* cfganal.c (control_dependences::find_control_dependence): Adjust.
(control_dependences::control_dependences): Likewise.
(control_dependences::~control_dependence): Likewise.
(control_dependences::get_edge): Remove.
(control_dependences::get_edge_src): Add.
(control_dependences::get_edge_dest): Likewise.
* tree-ssa-dce.c (mark_control_dependent_edges_necessary): Use
get_edge_src.
(perform_tree_ssa_dce): Adjust.
* tree-loop-distribution.c (create_edge_for_control_dependence): Use
get_edge_src.
(pass_loop_distribution::execute): Adjust.  Do loop destroying
conditional on changed.

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

Added:
trunk/gcc/testsuite/gcc.dg/torture/pr71253.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cfganal.c
trunk/gcc/cfganal.h
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-loop-distribution.c
trunk/gcc/tree-ssa-dce.c

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

[Bug tree-optimization/71258] Missed optimizations: dynamic allocation, virtual calls, empty destructors

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71258

Richard Biener  changed:

   What|Removed |Added

   Keywords||missed-optimization
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-05-24
 Ever confirmed|0   |1

--- Comment #1 from Richard Biener  ---
GCC cannot eliminate calls to 'new' currently.

[Bug c/71255] Implement #pragma may_alias

2016-05-24 Thread fw at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

--- Comment #9 from Florian Weimer  ---
(In reply to rguent...@suse.de from comment #8)
> While a pragma might work I'd say for the case in question we'd like to
> have a "tentative" forward declaration that can be merged with subsequent
> forward declarations but isn't found itself by name lookup until
> declared itself.

Right, this is what I meant to suggest in comment 3 as well.

[Bug tree-optimization/71240] [7 Regression] ICE on valid code at -O2 and above on x86_64-linux-gnu: verify_gimple failed

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71240

--- Comment #8 from Richard Biener  ---
I think the main issue is that init_symbolic_number doesn't constrain 'src's
type in any way (but blindly uses TYPE_PRECISION for example).  That's not
going to work for vector types for example.  It should work for pointer types
but I don't see us generating pointer typed BIT_IORs (we do BIT_ANDs).

The following fixes the ICE (not all missed optimizations).

Index: tree-ssa-math-opts.c
===
--- tree-ssa-math-opts.c(revision 236630)
+++ tree-ssa-math-opts.c(working copy)
@@ -2051,6 +2051,9 @@ init_symbolic_number (struct symbolic_nu
 {
   int size;

+  if (! INTEGRAL_TYPE_P (TREE_TYPE (src)))
+return false;
+
   n->base_addr = n->offset = n->alias_set = n->vuse = NULL_TREE;

   /* Set up the symbolic number N by setting each byte to a value between 1
and

[Bug target/29756] SSE intrinsics hard to use without redundant temporaries appearing

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=29756

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|NEW
  Component|middle-end  |target
   Assignee|rguenth at gcc dot gnu.org |unassigned at gcc dot 
gnu.org

--- Comment #16 from Richard Biener  ---
Ok, not mine anymore (for the intrinsics rewrite).  Target bug now.

[Bug target/71103] avr-gcc crashes with unrecognizable insn error

2016-05-24 Thread pitchumani.s at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71103

--- Comment #4 from Pitchumani  ---
Yes, it is incomplete.
These SUBREGs generated in rtl generation itself. define_insn for movqi bails
out for this bug. Have to check if could be handled in define_expand of
mov itself.

[Bug c/71255] Implement #pragma may_alias

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

--- Comment #10 from Marek Polacek  ---
Well, so far my plan is to gather symbols in
#pragma GCC may_alias SYMBOL
to some vector of symbols and then when declaring a SYMBOL check if it's in the
vector and if so, apply the may_alias attribute.  Now, as Richi points out,
I'll probably have to introduce two variants:

#pragma GCC may_alias SYMBOL
#pragma GCC may_alias struct SYMBOL

The symbols in the vector would serve as a "tentative" forward declaration.

Do you see any problems with that?

[Bug tree-optimization/71258] Missed optimizations: dynamic allocation, virtual calls, empty destructors

2016-05-24 Thread glisse at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71258

--- Comment #2 from Marc Glisse  ---
inline void* operator new(std::size_t n){return __builtin_malloc(n);}
inline void operator delete(void*p, std::size_t){__builtin_free(p);}

And we get:
  _5 = __builtin_malloc (16);
  MEM[(struct model *)_5].D.43852._vptr.concept = &MEM[(void
*)&_ZTVN4poly5modelIiEE + 16B];
  MEM[(struct model *)_5]._data = 40;
  poly::model::~model (_5);
  return 42;

So it isn't just that new/delete are not magic with gcc, we also fail to inline
~model here. Reminds me a bit of PR59948.

[Bug c/71255] Implement #pragma may_alias

2016-05-24 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

--- Comment #11 from rguenther at suse dot de  ---
On Tue, 24 May 2016, mpolacek at gcc dot gnu.org wrote:

> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255
> 
> --- Comment #10 from Marek Polacek  ---
> Well, so far my plan is to gather symbols in
> #pragma GCC may_alias SYMBOL
> to some vector of symbols and then when declaring a SYMBOL check if it's in 
> the
> vector and if so, apply the may_alias attribute.  Now, as Richi points out,
> I'll probably have to introduce two variants:
> 
> #pragma GCC may_alias SYMBOL
> #pragma GCC may_alias struct SYMBOL
> 
> The symbols in the vector would serve as a "tentative" forward declaration.
> 
> Do you see any problems with that?

Not really but a

#pragma GCC tentative
struct sockaddr __attribute__((may_alias));

would then also allow for other attributes to be tentatively added so
that might be a little less special.

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

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

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

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

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

crash.cpp is attached.

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

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

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

[Bug tree-optimization/71230] [7 Regression] ICE : in zero_one_operation, at tree-ssa-reassoc.c:1230

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71230

Richard Biener  changed:

   What|Removed |Added

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

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

[Bug tree-optimization/71230] [7 Regression] ICE : in zero_one_operation, at tree-ssa-reassoc.c:1230

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71230

--- Comment #12 from Richard Biener  ---
Author: rguenth
Date: Tue May 24 14:35:36 2016
New Revision: 236643

URL: https://gcc.gnu.org/viewcvs?rev=236643&root=gcc&view=rev
Log:
2016-05-24  Richard Biener  

PR tree-optimization/71230
* tree-ssa-reassoc.c (zero_one_operation): Handle negate special ops.

* gcc.dg/torture/pr71230.c: New testcase.
* g++.dg/torture/pr71230.C: Likewise.

Added:
trunk/gcc/testsuite/g++.dg/torture/pr71230.C
trunk/gcc/testsuite/gcc.dg/torture/pr71230.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-reassoc.c

[Bug tree-optimization/71240] [7 Regression] ICE on valid code at -O2 and above on x86_64-linux-gnu: verify_gimple failed

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71240

--- Comment #10 from Richard Biener  ---
Author: rguenth
Date: Tue May 24 14:40:35 2016
New Revision: 236644

URL: https://gcc.gnu.org/viewcvs?rev=236644&root=gcc&view=rev
Log:
2016-05-24  Richard Biener  

PR tree-optimization/71240
* tree-ssa-math-opts.c (init_symbolic_number): Verify the source
has integral type.

* gcc.dg/optimize-bswapsi-5.c: New testcase.

Added:
trunk/gcc/testsuite/gcc.dg/optimize-bswapsi-5.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-math-opts.c

[Bug tree-optimization/71240] [7 Regression] ICE on valid code at -O2 and above on x86_64-linux-gnu: verify_gimple failed

2016-05-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71240

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #9 from Richard Biener  ---
ICE fixed.  For the missed-optimization the proper conversion would include
detecting a bswap of bytes 1 to 4 and thus doing a "random" new subreg of
the source value.  Certainly doable but also might prove somewhat tricky
and costly (sub-regging say bytes 3 to 7 from a double).

[Bug c/71255] Implement #pragma may_alias

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71255

Marek Polacek  changed:

   What|Removed |Added

 CC||jason at gcc dot gnu.org,
   ||jsm28 at gcc dot gnu.org

--- Comment #12 from Marek Polacek  ---
Hmm, that's true, but it seems much harder from the implementation point of
view (because I would probably have to introduce the whole concept of
"tentative" forward declaration).

Joseph/Jason, any preferences regarding the syntax?

[Bug fortran/52393] I/O: "READ format" statement with parenthesed default-char-expr

2016-05-24 Thread jvdelisle at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52393

--- Comment #9 from Jerry DeLisle  ---
The following patch allows the program to compile. I just need to check the
standard to confirm if the syntax in question also applies to WRITE.

diff --git a/gcc/fortran/io.c b/gcc/fortran/io.c
index da0e1c5e..296beef4 100644
--- a/gcc/fortran/io.c
+++ b/gcc/fortran/io.c
@@ -3751,7 +3751,7 @@ match_io (io_kind k)
 {
   /* Before issuing an error for a malformed 'print (1,*)' type of
 error, check for a default-char-expr of the form ('(I0)').  */
-  if (k == M_PRINT && m == MATCH_YES)
+  if (m == MATCH_YES)
{
  /* Reset current locus to get the initial '(' in an expression.  */
  gfc_current_locus = where;

[Bug libstdc++/66338] std::forward_as_tuple() issue with single argument

2016-05-24 Thread ville.voutilainen at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66338

--- Comment #8 from Ville Voutilainen  ---
Patch available: https://gcc.gnu.org/ml/gcc-patches/2016-05/msg01914.html

[Bug c++/71260] Crash in DLL compiled with -fipa-pure-const and -flto [mingw32]

2016-05-24 Thread slawomir.czarko at dev dot policat.net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71260

--- Comment #1 from Slawomir Czarko-Wasiutycz  ---
Created attachment 38554
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38554&action=edit
Program code

[Bug c++/71260] New: Crash in DLL compiled with -fipa-pure-const and -flto [mingw32]

2016-05-24 Thread slawomir.czarko at dev dot policat.net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71260

Bug ID: 71260
   Summary: Crash in DLL compiled with -fipa-pure-const and -flto
[mingw32]
   Product: gcc
   Version: 4.9.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: slawomir.czarko at dev dot policat.net
  Target Milestone: ---

Created attachment 38553
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38553&action=edit
DLL code

Description of problem:

Function in DLL compiled with -O3 and -flto crashes due to page fault.

Crash does not happen in either of these cases:
* -fno-ipa-pure-const is added to compiler options,
* inlining is disabled,
* optimization level is reduced to O2,
* various changes are made to the code, for example member variable dummy is
removed from struct E

During debugging I saw that call to a.c1.at( 0 ) uses invalid address of
variable a and that causes the crash.

Options -Wall -Wextra do not show any problems.
Adding -fno-strict-aliasing -fwrapv -fno-aggressive-loop-optimizations has no
effect.

Version-Release number of selected component (if applicable):
mingw32-gcc-c++-4.9.3-1.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1. Compile and link DLL:
i686-w64-mingw32-g++ -std=c++11 -O3 -pipe -m32 -flto -fpreprocessed -c crash.ii
-o dll.o
i686-w64-mingw32-g++ -std=c++11 -O3 -pipe -m32 -flto -static
-Wl,--out-implib,libdll.lib dll.o -Wl,-Bstatic -shared -o dll.dll

2. Compile and link program:
i686-w64-mingw32-g++ -std=c++11 -fpreprocessed -o a32.o -c a.ii
i686-w64-mingw32-g++ -std=c++11 -static -Wl,-Bdynamic -L. -ldll -o a32.exe
a32.o -Wl,-Bstatic

3. Run program (wine on Fedora):
WINEDEBUG=fixme-all wine32 a32.exe

Actual results:
Program crashes due to page fault.

Expected results:
No crash.

Additional info:
64-bit build does not have this problem.

[Bug target/67591] ARM v8 Thumb IT blocks deprecated

2016-05-24 Thread clyon at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67591

Christophe Lyon  changed:

   What|Removed |Added

   Assignee|unassigned at gcc dot gnu.org  |clyon at gcc dot gnu.org

--- Comment #3 from Christophe Lyon  ---
I'll try to take a look.

[Bug bootstrap/70896] gcc4 ABI compatible bootstrap fails

2016-05-24 Thread tulipawn at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70896

--- Comment #8 from PeteVine  ---
Nice, any idea why `--disable-libstdcxx-dual-abi` should no longer work though?

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

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

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

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

Trunk GCC hangs on knl and broadwell targets

hang.cpp attached

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

or

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


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

[Bug c/69504] XMM register variable ICE with vector extensions

2016-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69504

--- Comment #8 from Jakub Jelinek  ---
Author: jakub
Date: Tue May 24 16:14:34 2016
New Revision: 236647

URL: https://gcc.gnu.org/viewcvs?rev=236647&root=gcc&view=rev
Log:
PR middle-end/70434
PR c/69504
* c-c++-common/vector-subscript-5.c (foo): Move ; out of the ifdef.

Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/c-c++-common/vector-subscript-5.c

[Bug middle-end/70434] [5/6 Regression] adding an extraneous cast to vector type results in inferior code

2016-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70434

--- Comment #16 from Jakub Jelinek  ---
Author: jakub
Date: Tue May 24 16:14:34 2016
New Revision: 236647

URL: https://gcc.gnu.org/viewcvs?rev=236647&root=gcc&view=rev
Log:
PR middle-end/70434
PR c/69504
* c-c++-common/vector-subscript-5.c (foo): Move ; out of the ifdef.

Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/c-c++-common/vector-subscript-5.c

[Bug c++/71257] OpenMP declare simd linear with ref modifier doesn't accept references to non-integer/non-pointer

2016-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71257

--- Comment #1 from Jakub Jelinek  ---
Author: jakub
Date: Tue May 24 16:19:43 2016
New Revision: 236648

URL: https://gcc.gnu.org/viewcvs?rev=236648&root=gcc&view=rev
Log:
PR c++/71257
* tree-vect-stmts.c (vectorizable_simd_clone_call): Handle
SIMD_CLONE_ARG_TYPE_LINEAR_REF_CONSTANT_STEP like
SIMD_CLONE_ARG_TYPE_LINEAR_CONSTANT_STEP.  Add
SIMD_CLONE_ARG_TYPE_LINEAR_VAL_CONSTANT_STEP and
SIMD_CLONE_ARG_TYPE_LINEAR_UVAL_CONSTANT_STEP cases explicitly.

* semantics.c (finish_omp_clauses) :
For OMP_CLAUSE_LINEAR_REF don't require type to be
integral or pointer.

* g++.dg/vect/simd-clone-6.cc: New test.
* g++.dg/gomp/declare-simd-6.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/gomp/declare-simd-6.C
trunk/gcc/testsuite/g++.dg/vect/simd-clone-6.cc
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/semantics.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-vect-stmts.c

[Bug c/71249] -Wswitch-unreachable false positive for a compound statement containing a used label

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71249

--- Comment #4 from Marek Polacek  ---
Author: mpolacek
Date: Tue May 24 16:22:31 2016
New Revision: 236649

URL: https://gcc.gnu.org/viewcvs?rev=236649&root=gcc&view=rev
Log:
PR c/71249
* gimplify.c (gimplify_switch_expr): Look into the innermost lexical
scope.

* c-c++-common/Wswitch-unreachable-2.c: New test.

Added:
trunk/gcc/testsuite/c-c++-common/Wswitch-unreachable-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/gimplify.c
trunk/gcc/testsuite/ChangeLog

[Bug c/71249] -Wswitch-unreachable false positive for a compound statement containing a used label

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71249

Marek Polacek  changed:

   What|Removed |Added

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

--- Comment #5 from Marek Polacek  ---
Fixed.

[Bug c++/71257] OpenMP declare simd linear with ref modifier doesn't accept references to non-integer/non-pointer

2016-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71257

--- Comment #2 from Jakub Jelinek  ---
Author: jakub
Date: Tue May 24 16:27:12 2016
New Revision: 236650

URL: https://gcc.gnu.org/viewcvs?rev=236650&root=gcc&view=rev
Log:
PR c++/71257
* tree-vect-stmts.c (vectorizable_simd_clone_call): Handle
SIMD_CLONE_ARG_TYPE_LINEAR_REF_CONSTANT_STEP like
SIMD_CLONE_ARG_TYPE_LINEAR_CONSTANT_STEP.  Add
SIMD_CLONE_ARG_TYPE_LINEAR_VAL_CONSTANT_STEP and
SIMD_CLONE_ARG_TYPE_LINEAR_UVAL_CONSTANT_STEP cases explicitly.

* semantics.c (finish_omp_clauses) :
For OMP_CLAUSE_LINEAR_REF don't require type to be
integral or pointer.

* g++.dg/vect/simd-clone-6.cc: New test.
* g++.dg/gomp/declare-simd-6.C: New test.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/gomp/declare-simd-6.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/vect/simd-clone-6.cc
Modified:
branches/gcc-6-branch/gcc/ChangeLog
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/semantics.c
branches/gcc-6-branch/gcc/testsuite/ChangeLog
branches/gcc-6-branch/gcc/tree-vect-stmts.c

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

2016-05-24 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71261

--- Comment #1 from Uroš Bizjak  ---
It doesn't hang but takes some time to finish:

$time ./cc1plus -std=c++11 -O3 -march=broadwell -quiet hang.cpp 

real0m25.003s
user0m24.412s
sys 0m0.275s

[Bug c++/71262] New: ICE when compiling mozilla-central (rev 298652)

2016-05-24 Thread gk at torproject dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71262

Bug ID: 71262
   Summary: ICE when compiling mozilla-central (rev 298652)
   Product: gcc
   Version: 7.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: gk at torproject dot org
  Target Milestone: ---

Compiling mozilla-central (rev 298652) with the latest gcc (rev 236630) leads
to a compiler error:

 5:53.95
/home/thomas/Arbeit/Tor/mozilla-central/obj-x86_64-pc-linux-gnu/dist/include/mozilla/ClearOnShutdown.h:98:1:
interner Compiler-Fehler: Speicherzugriffsfehler
 5:53.95  ClearOnShutdown(SmartPtr* aPtr, ShutdownPhase aPhase =
ShutdownPhase::ShutdownFinal)
 5:53.95  ^~~
 5:54.40 0xd4944f crash_signal
 5:54.40../../gcc/toplev.c:333
 5:54.43 0xa66c39 operand_equal_p(tree_node const*, tree_node const*, unsigned
int)
 5:54.44../../gcc/fold-const.c:2769
 5:54.44 0xa66f17 operand_equal_p(tree_node const*, tree_node const*, unsigned
int)
 5:54.44../../gcc/fold-const.c:2751
 5:54.48 0xfdcdc5 array_at_struct_end_p(tree_node*)
 5:54.48../../gcc/tree.c:13100
 5:54.51 0xfafdd7 check_array_ref
 5:54.52../../gcc/tree-vrp.c:6427
 5:54.52 0xfc5c15 check_array_ref
 5:54.52../../gcc/tree-vrp.c:6413
 5:54.52 0xfc5c15 check_array_bounds
 5:54.52../../gcc/tree-vrp.c:6589
 5:54.52 0xff0ae2 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*,
void*), void*, hash_set >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set >*))
 5:54.52../../gcc/tree.c:11650
 5:54.52 0xff107e walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*,
void*), void*, hash_set >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set >*))
 5:54.52../../gcc/tree.c:11967
 5:54.53 0xadced0 walk_gimple_op(gimple*, tree_node* (*)(tree_node**, int*,
void*), walk_stmt_info*)
 5:54.53../../gcc/gimple-walk.c:203
 5:54.53 0xfbc350 check_all_array_refs
 5:54.53../../gcc/tree-vrp.c:6636
 5:54.53 0xfbc350 vrp_finalize
 5:54.53../../gcc/tree-vrp.c:10202
 5:54.53 0xfbc350 execute_vrp
 5:54.53../../gcc/tree-vrp.c:10295
 5:54.53 0xfbc350 execute
 5:54.53../../gcc/tree-vrp.c:10380

[Bug c++/69872] [6/7 Regression] -Wnarrowing note without warning/errror

2016-05-24 Thread paolo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69872

--- Comment #3 from paolo at gcc dot gnu.org  ---
Author: paolo
Date: Tue May 24 16:41:39 2016
New Revision: 236651

URL: https://gcc.gnu.org/viewcvs?rev=236651&root=gcc&view=rev
Log:
/cp
2016-05-24  Paolo Carlini  

PR c++/69872
* typeck2.c (check_narrowing): Check pedwarn return value.

/testsuite
2016-05-24  Paolo Carlini  

PR c++/69872
* g++.dg/warn/Wno-narrowing1.C: New.

Added:
trunk/gcc/testsuite/g++.dg/warn/Wno-narrowing1.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/typeck2.c
trunk/gcc/testsuite/ChangeLog

[Bug c++/69872] [6/7 Regression] -Wnarrowing note without warning/errror

2016-05-24 Thread paolo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69872

--- Comment #4 from paolo at gcc dot gnu.org  ---
Author: paolo
Date: Tue May 24 16:44:09 2016
New Revision: 236652

URL: https://gcc.gnu.org/viewcvs?rev=236652&root=gcc&view=rev
Log:
/cp
2016-05-24  Paolo Carlini  

PR c++/69872
* typeck2.c (check_narrowing): Check pedwarn return value.

/testsuite
2016-05-24  Paolo Carlini  

PR c++/69872
* g++.dg/warn/Wno-narrowing1.C: New.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/warn/Wno-narrowing1.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/typeck2.c
branches/gcc-6-branch/gcc/testsuite/ChangeLog

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

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

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

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

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

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

[Bug c++/69872] [6/7 Regression] -Wnarrowing note without warning/errror

2016-05-24 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69872

Paolo Carlini  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED
   Assignee|paolo.carlini at oracle dot com|unassigned at gcc dot 
gnu.org
   Target Milestone|--- |6.2

--- Comment #5 from Paolo Carlini  ---
Fixed trunk and 6.2.

[Bug tree-optimization/71240] [7 Regression] ICE on valid code at -O2 and above on x86_64-linux-gnu: verify_gimple failed

2016-05-24 Thread rogero at howzatt dot demon.co.uk
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71240

--- Comment #11 from Roger Orr  ---
Thanks.
I can confirm this also successfully compiles the original code from which I
derived the simplified example.

[Bug tree-optimization/71263] New: ICE at -O1 and above in 32-bit and 64-bit mode on x86_64-linux-gnu (in zero_one_operation)

2016-05-24 Thread chengniansun at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71263

Bug ID: 71263
   Summary: ICE at -O1 and above in 32-bit and 64-bit mode on
x86_64-linux-gnu (in zero_one_operation)
   Product: gcc
   Version: 6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: chengniansun at gmail dot com
  Target Milestone: ---

$: gcc-trunk -v
Using built-in specs.
COLLECT_GCC=gcc-trunk
COLLECT_LTO_WRAPPER=/usr/local/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/7.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../gcc-source-trunk/configure --enable-languages=c,c++,lto
--prefix=/usr/local/gcc-trunk --disable-bootstrap
Thread model: posix
gcc version 7.0.0 20160523 (experimental) [trunk revision 236582] (GCC)
$: gcc-trunk -O1 small.c -m64
small.c: In function ‘fn1’:
small.c:3:6: internal compiler error: in zero_one_operation, at
tree-ssa-reassoc.c:1230
 void fn1() { a = a * 8 + -a * b; }
  ^~~
0xd69d79 zero_one_operation
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:1229
0xd72232 undistribute_ops_list
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:1583
0xd72f28 reassociate_bb
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5199
0xd72a47 reassociate_bb
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5325
0xd75653 do_reassoc
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5439
0xd75653 execute_reassoc
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5526
0xd75653 execute
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5565
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See  for instructions.
$: gcc-trunk -O1 small.c -m32
small.c: In function ‘fn1’:
small.c:3:6: internal compiler error: in zero_one_operation, at
tree-ssa-reassoc.c:1230
 void fn1() { a = a * 8 + -a * b; }
  ^~~
0xd69d79 zero_one_operation
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:1229
0xd72232 undistribute_ops_list
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:1583
0xd72f28 reassociate_bb
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5199
0xd72a47 reassociate_bb
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5325
0xd75653 do_reassoc
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5439
0xd75653 execute_reassoc
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5526
0xd75653 execute
../../gcc-source-trunk/gcc/tree-ssa-reassoc.c:5565
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See  for instructions.
$:
$: cat small.c
unsigned a;
int b;
void fn1() { a = a * 8 + -a * b; }

int main() { return 0; }
$:

[Bug tree-optimization/71263] ICE at -O1 and above in 32-bit and 64-bit mode on x86_64-linux-gnu (in zero_one_operation)

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71263

Marek Polacek  changed:

   What|Removed |Added

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

--- Comment #1 from Marek Polacek  ---
This is already fixed (PR71230).

[Bug tree-optimization/71230] [7 Regression] ICE : in zero_one_operation, at tree-ssa-reassoc.c:1230

2016-05-24 Thread sch...@linux-m68k.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71230

Andreas Schwab  changed:

   What|Removed |Added

 CC||chengniansun at gmail dot com

--- Comment #13 from Andreas Schwab  ---
*** Bug 71263 has been marked as a duplicate of this bug. ***

[Bug tree-optimization/71263] ICE at -O1 and above in 32-bit and 64-bit mode on x86_64-linux-gnu (in zero_one_operation)

2016-05-24 Thread sch...@linux-m68k.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71263

Andreas Schwab  changed:

   What|Removed |Added

 Resolution|FIXED   |DUPLICATE

--- Comment #2 from Andreas Schwab  ---


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

[Bug tree-optimization/71264] New: ICE in convert_move

2016-05-24 Thread ikonomisma at googlemail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71264

Bug ID: 71264
   Summary: ICE in convert_move
   Product: gcc
   Version: 4.8.4
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: ikonomisma at googlemail dot com
  Target Milestone: ---

The following testcase causes an ICE on gcc 4.8.4 x86_64-linux-gnu.
Reproducible on gcc.godbolt.org for gcc versions since gcc 4.8, up to and
including gcc 6.1, also for gcc 4.8 AArch64.

#include 
#include 
#include 

//ICE for gcc -std=gnu11/c11/gnu99/c99 -O1 -ftree-vectorize -S
typedef uint8_t footype __attribute__((vector_size(4)));

void test(uint8_t *ptr, uint8_t *mask)
{
  footype mv;
  memcpy(&mv, mask, sizeof(mv));
  for (size_t i = 0; i < 16; i += 4)
{
  footype temp;
  memcpy(&temp, &ptr[i], sizeof(temp));
  temp ^= mv;
  memcpy(&ptr[i], &temp, sizeof(temp));
}
}

[Bug tree-optimization/71264] [4.9/5/6/7 Regression] ICE in convert_move

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71264

Marek Polacek  changed:

   What|Removed |Added

 CC||mpolacek at gcc dot gnu.org
   Target Milestone|--- |4.9.4
Summary|ICE in convert_move |[4.9/5/6/7 Regression] ICE
   ||in convert_move

--- Comment #1 from Marek Polacek  ---
Confirmed; ICEs since GCC 4.7.

[Bug tree-optimization/71264] [4.9/5/6/7 Regression] ICE in convert_move

2016-05-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71264

Marek Polacek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-05-24
 Ever confirmed|0   |1

--- Comment #2 from Marek Polacek  ---
I expect that this started with r180384.

[Bug tree-optimization/71264] [4.9/5/6/7 Regression] ICE in convert_move

2016-05-24 Thread ikonomisma at googlemail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71264

--- Comment #3 from ikonomisma at googlemail dot com ---
I've just found a small change to the testcase that causes a *different* ICE to
appear:

void test(uint8_t *ptr, uint8_t *mask)
{
  footype mv = {0,1,2,3};
  for (size_t i = 0; i < 16; i += 4)
{
  footype temp;
  memcpy(&temp, &ptr[i], sizeof(temp));
  temp ^= mv;
  memcpy(&ptr[i], &temp, sizeof(temp));
}
}

Maybe this can help track down the cause.

[Bug tree-optimization/71230] [7 Regression] ICE : in zero_one_operation, at tree-ssa-reassoc.c:1230

2016-05-24 Thread seurer at linux dot vnet.ibm.com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71230

Bill Seurer  changed:

   What|Removed |Added

 CC||seurer at linux dot 
vnet.ibm.com

--- Comment #14 from Bill Seurer  ---
I am still seeing ICEs on powerpc64le (note that I only checked here) even with
this patch applied.  Here is one example from the spec2006 tests where there
are several others:

seurer@genoa:~/gcc/cpu2006/benchspec/CPU2006/416.gamess/build/build_base_base_64.$
/home/seurer/gcc/install/gcc-test/bin/gfortran -c -o parley.fppized.o -m64 -O3
-mcpu=power8 -fpeel-loops -funroll-loops -ffast-math -fvect-cost-model
-mpopcntd -mrecip=rsqrt -funconstrained-commons
-fno-aggressive-loop-optimizations local.fppized.f
local.fppized.f:962:43:

   CALL LMOFRZ(NOUT,IPASS,MCORE,MDOC,N1,X(LNOROT),X(LIIR),L1)
   1
Warning: Type mismatch in argument 'norot' at (1); passed REAL(8) to INTEGER(4)
local.fppized.f:974:21:

  *   X(LIORD),X(LIIR),X(LIA),X(LRIJ),
 1
Warning: Type mismatch in argument 'iord' at (1); passed REAL(8) to INTEGER(4)
local.fppized.f:982:21:

  *   X(LIORD),X(LIIR),X(LMAP),X(LRIJ),
 1
Warning: Type mismatch in argument 'iord' at (1); passed REAL(8) to INTEGER(4)
local.fppized.f:1473:18:

  *X(LMAP),L1,M1,M2,NUMLOC,NUMLC2)
  1
Warning: Type mismatch in argument 'map' at (1); passed REAL(8) to INTEGER(4)
local.fppized.f:1531:53:

  CALL LOCINT(X(LTWOEI),IW,IJKT,NINTMX,X(LXX),X(LIX),
 1
Warning: Type mismatch in argument 'ix' at (1); passed REAL(8) to INTEGER(4)
local.fppized.f:1544:35:

   CALL LOCFRZ(IPASS,MCORE,MDOC,X(LNOROT),X(LS),X(LQ),
   1
Warning: Type mismatch in argument 'norot' at (1); passed REAL(8) to INTEGER(4)
local.fppized.f:1547:46:

  *X(LCINT),X(LXINT),X(LTWOEI),X(LIA),X(LNOROT),
  1
Warning: Type mismatch in argument 'ia' at (1); passed REAL(8) to INTEGER(4)
local.fppized.f:2826:36:

  *X(LWRK2),X(LWRK3),X(LIWRK),X(LPOL),
1
Warning: Type mismatch in argument 'iwrk' at (1); passed REAL(8) to INTEGER(4)
local.fppized.f:3232:62:

   CALL DIMOID(X(LDEN),X(LRLMO),X(LCLMO),X(LSTRI),X(LATMU),X(LIATM),
  1
Warning: Type mismatch in argument 'iatm' at (1); passed REAL(8) to INTEGER(4)
local.fppized.f:3240:28:

   CALL ORIEN(IW,NCAT,M1,X(LINAT),X(LDEN),X(LTRAN),CVGLOC,MITER)
1
Warning: Type mismatch in argument 'natorb' at (1); passed REAL(8) to
INTEGER(4)
local.fppized.f:3245:34:

   CALL ORIPRI(IW,NCAT,NATS,M1,X(LINAT),X(LDEN),X(LIWHI),X(LIATB),
  1
Warning: Type mismatch in argument 'natorb' at (1); passed REAL(8) to
INTEGER(4)
local.fppized.f:3251:35:

   CALL ORIANAL(IW,NCAT,NATS,M1,X(LINAT),X(LDEN),X(LIATB),NOSI)
   1
Warning: Type mismatch in argument 'natorb' at (1); passed REAL(8) to
INTEGER(4)
local.fppized.f:1271:0:

   SUBROUTINE LOCCHK(IW,TWOEI,IA,M1,M2,M4)

internal compiler error: Segmentation fault
0x1090f973 crash_signal
/home/seurer/gcc/gcc-test/gcc/toplev.c:333
0x10b12ca0 sort_by_operand_rank
/home/seurer/gcc/gcc-test/gcc/tree-ssa-reassoc.c:530
0x10b21863 vec::qsort(int (*)(void const*,
void const*))
/home/seurer/gcc/gcc-test/gcc/vec.h:951
0x10b21863 vec::qsort(int (*)(void const*,
void const*))
/home/seurer/gcc/gcc-test/gcc/vec.h:1698
0x10b21863 reassociate_bb
/home/seurer/gcc/gcc-test/gcc/tree-ssa-reassoc.c:5268
0x10b21037 reassociate_bb
/home/seurer/gcc/gcc-test/gcc/tree-ssa-reassoc.c:5389
0x10b21037 reassociate_bb
/home/seurer/gcc/gcc-test/gcc/tree-ssa-reassoc.c:5389
0x10b23eff do_reassoc
/home/seurer/gcc/gcc-test/gcc/tree-ssa-reassoc.c:5503
0x10b23eff execute_reassoc
/home/seurer/gcc/gcc-test/gcc/tree-ssa-reassoc.c:5590
0x10b23eff execute
/home/seurer/gcc/gcc-test/gcc/tree-ssa-reassoc.c:5629
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See  for instructions.

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

2016-05-24 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71261

--- Comment #3 from Uroš Bizjak  ---
(In reply to Anton Mitrokhin from comment #2)
> Hm, sorry. It's creduce which apparently cut off more than it should have.
> I'll send another reproducer soon...

Please check if it is not a duplicate of PR70902.

[Bug c++/71262] ICE when compiling mozilla-central (rev 298652)

2016-05-24 Thread gk at torproject dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71262

--- Comment #1 from Georg Koppen  ---
Created attachment 38556
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38556&action=edit
Compressed .ii file

Attached is the compressed .ii file.

[Bug c++/71257] OpenMP declare simd linear with ref modifier doesn't accept references to non-integer/non-pointer

2016-05-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71257

Jakub Jelinek  changed:

   What|Removed |Added

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

--- Comment #3 from Jakub Jelinek  ---
Fixed for 6.2+.

  1   2   >