[Bug middle-end/70887] [5 Regression] internal compiler error in trunc_int_for_mode, at explow.c:78

2017-10-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70887

--- Comment #7 from Jakub Jelinek  ---
Author: jakub
Date: Tue Oct 10 20:11:21 2017
New Revision: 253616

URL: https://gcc.gnu.org/viewcvs?rev=253616=gcc=rev
Log:
2017-10-10  Jakub Jelinek  

PR middle-end/70887
* g++.dg/cpp0x/pr70887.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/cpp0x/pr70887.C
Modified:
trunk/gcc/testsuite/ChangeLog

[Bug middle-end/70887] [5 Regression] internal compiler error in trunc_int_for_mode, at explow.c:78

2017-10-10 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70887

Jakub Jelinek  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||jakub at gcc dot gnu.org
 Resolution|--- |FIXED
   Target Milestone|5.5 |6.0

--- Comment #6 from Jakub Jelinek  ---
This got fixed with r229086.  GCC 5 branch has been closed.

[Bug middle-end/70887] [5 Regression] internal compiler error in trunc_int_for_mode, at explow.c:78

2016-06-03 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70887

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|5.4 |5.5

--- Comment #5 from Richard Biener  ---
GCC 5.4 is being released, adjusting target milestone.

[Bug middle-end/70887] [5 Regression] internal compiler error in trunc_int_for_mode, at explow.c:78

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

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P2

[Bug middle-end/70887] [5 Regression] internal compiler error in trunc_int_for_mode, at explow.c:78

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

Richard Biener  changed:

   What|Removed |Added

  Known to work||4.9.3, 6.1.0
   Target Milestone|--- |5.4
  Known to fail||5.3.0

[Bug middle-end/70887] [5 Regression] internal compiler error in trunc_int_for_mode, at explow.c:78

2016-04-30 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70887

Markus Trippelsdorf  changed:

   What|Removed |Added

 Status|WAITING |NEW
  Component|c++ |middle-end
Summary|internal compiler error in  |[5 Regression] internal
   |trunc_int_for_mode, at  |compiler error in
   |explow.c:78 |trunc_int_for_mode, at
   ||explow.c:78

--- Comment #4 from Markus Trippelsdorf  ---
trippels@gcc75 ~ % cat main.ii
typedef long long __m128i __attribute__((__vector_size__(16)));
enum RangeID { RANGE_2 };
template  struct C { static constexpr int value = 10; };
__m128i _mm_set1_epi32(int __A) {
  int __q0 = __A;
  return __m128i{__q0};
}
__inline __m128i _mm_bsrli_si128(__m128i __A, int __N) {
  return __builtin_ia32_psrldqi128(__A, __N * 8);
}
__m128i _mm_bslli_si128(__m128i __A) {
  return __builtin_ia32_pslldqi128(__A, 8);
}
__m128i _mm_or_si128(__m128i __A, __m128i __B) { return __A | __B; }
template  class Range, RangeID...
rangeIds>
struct A {
  template  struct B;
  template 
  struct B {
static constexpr int nValues = Range::value;
static __m128i generate() {
  __attribute__((__vector_size__(
  2 * sizeof(long long long __trans_tmp_1 = generate(),
prevRanges =
_mm_bslli_si128(__trans_tmp_1),
newRange = _mm_bsrli_si128(
_mm_set1_epi32(nValues), 12);
  return _mm_or_si128(prevRanges, newRange);
}
  };
  A() { B<0, rangeIds...>::generate(); }
};
main() {
  using RI = A;
  RI ri;
}

trippels@gcc75 ~ % g++ -std=c++11 -O2 main.ii
main.ii: In static member function ‘static __m128i A::B::generate() [with int
nPrevValues = 0; RangeID rangeId = (RangeID)0u; RangeID ...restRangeIds = {};
RangeID = RangeID; Range = C; RangeID ...rangeIds = {(RangeID)0u}; __m128i =
__vector(2) long long int]’:
main.ii:29:5: internal compiler error: in trunc_int_for_mode, at explow.c:78