https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65034

            Bug ID: 65034
           Summary: [5 Regression] ICE (segfault) on arm-linux-gnueabihf
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: doko at gcc dot gnu.org

seen with 20150205 on arm-linux-gnueabihf, configured --with-arch=armv7-a
--with-fpu=vfpv3-d16 --with-float=hard --with-mode=thumb

$ g++ -c -g -O2 vga_tseng.ii
vga_tseng.ii:37:1: internal compiler error: Segmentation fault
 }
 ^
Please submit a full bug report,
with preprocessed source if appropriate.

$ cat vga_tseng.ii 
enum LOG_TYPES { LOG_VGAMISC };
enum LOG_SEVERITIES { LOG_NORMAL };
struct A {
  A(LOG_TYPES, LOG_SEVERITIES) {}
};
typedef struct {
  unsigned store_3c0_16;
  unsigned store_3c0_17;
  unsigned store_3c4_06;
  unsigned store_3c4_07;
} SVGA_ET3K_DATA;
SVGA_ET3K_DATA a;
void fn1(unsigned p1, unsigned p2, unsigned) {
  switch (p1) {
  case 6:
    a.store_3c4_06 = p2;
    break;
  case 7:
    a.store_3c4_07 = p2;
    break;
  default:
    A(LOG_VGAMISC, LOG_NORMAL);
  }
}

void fn2(unsigned p1, unsigned p2, unsigned) {
  switch (p1) {
  case 6:
    a.store_3c0_16 = p2;
    break;
  case 7:
    a.store_3c0_17 = p2;
    break;
  default:
    A(LOG_VGAMISC, LOG_NORMAL);
  }
}

Reply via email to