[Bug 1667761] [NEW] ICE in trunc_int_for_mode, at explow.c:55

Matthias Klose doko at ubuntu.com
Fri Feb 24 18:04:22 UTC 2017


Public bug reported:

seen on aarch64-linux-gnu with gcc-4.8.x everywhere, fixed in 4.9
(worked around with -O1)

$ cat trunctfdf2.i
long a;
double b;
double fn1() {
  union {
    long double f;
    __uint128_t i;
  } c = {b};
  __uint128_t d = c.i & 2;
  a = 1;
  long e = 1 | d;
  return e;
}

$ gcc -std=gnu99 -c -g -O2 trunctfdf2.i
trunctfdf2.i: In function 'fn1':
trunctfdf2.i:12:1: internal compiler error: in trunc_int_for_mode, at explow.c:55
 }
 ^
Please submit a full bug report,
with preprocessed source if appropriate.

** Affects: gcc-4.8 (Ubuntu)
     Importance: Medium
         Status: Confirmed

** Changed in: gcc-4.8 (Ubuntu)
       Status: New => Confirmed

** Changed in: gcc-4.8 (Ubuntu)
   Importance: Undecided => Medium

** Description changed:

- seen with gcc-4.8.x everywhere, fixed in 4.9
+ seen on aarch64-linux-gnu with gcc-4.8.x everywhere, fixed in 4.9
+ (worked around with -O1)
  
- $ cat trunctfdf2.i 
+ $ cat trunctfdf2.i
  long a;
  double b;
  double fn1() {
-   union {
-     long double f;
-     __uint128_t i;
-   } c = {b};
-   __uint128_t d = c.i & 2;
-   a = 1;
-   long e = 1 | d;
-   return e;
+   union {
+     long double f;
+     __uint128_t i;
+   } c = {b};
+   __uint128_t d = c.i & 2;
+   a = 1;
+   long e = 1 | d;
+   return e;
  }
  
- $ gcc -std=gnu99 -c -g -O2 trunctfdf2.i 
+ $ gcc -std=gnu99 -c -g -O2 trunctfdf2.i
  trunctfdf2.i: In function 'fn1':
  trunctfdf2.i:12:1: internal compiler error: in trunc_int_for_mode, at explow.c:55
-  }
-  ^
+  }
+  ^
  Please submit a full bug report,
  with preprocessed source if appropriate.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-4.8 in Ubuntu.
https://bugs.launchpad.net/bugs/1667761

Title:
  ICE in trunc_int_for_mode, at explow.c:55

Status in gcc-4.8 package in Ubuntu:
  Confirmed

Bug description:
  seen on aarch64-linux-gnu with gcc-4.8.x everywhere, fixed in 4.9
  (worked around with -O1)

  $ cat trunctfdf2.i
  long a;
  double b;
  double fn1() {
    union {
      long double f;
      __uint128_t i;
    } c = {b};
    __uint128_t d = c.i & 2;
    a = 1;
    long e = 1 | d;
    return e;
  }

  $ gcc -std=gnu99 -c -g -O2 trunctfdf2.i
  trunctfdf2.i: In function 'fn1':
  trunctfdf2.i:12:1: internal compiler error: in trunc_int_for_mode, at explow.c:55
   }
   ^
  Please submit a full bug report,
  with preprocessed source if appropriate.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-4.8/+bug/1667761/+subscriptions



More information about the foundations-bugs mailing list