http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51915
Bug #: 51915 Summary: [4.7 Regression] ICE in output_move_double Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: target AssignedTo: ja...@gcc.gnu.org ReportedBy: ja...@gcc.gnu.org CC: ram...@gcc.gnu.org Target: arm-linux-gnueabi The following testcase started ICEing probably with PR50022 change: ./xgcc -B ./ -march=armv7-a -mfloat-abi=hard -O2 rh783334.c rh783334.c: In function ‘bar’: rh783334.c:12:1: internal compiler error: in output_move_double, at config/arm/arm.c:13951 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. /* { dg-do compile } */ /* { dg-options "-march=armv7-a -mfloat-abi=hard -O2" } */ struct S { int s1; void *s2; }; struct T { struct S t1; unsigned long long t2; }; struct S *foo (unsigned long long); struct S * bar (struct S *x) { return foo (((struct T *) x)->t2); }