hasting2 02/10/03 15:28:42
Modified: live/gcc3/gcc Tag: dizzy-kitty-branch version.c cse.c
Log:
Avoid sharing subregs that are fallaciously un-invalidated by sibling subregs.
Temporary, sub-optimal fix; the Real Fix will go to FSF.
Bug #: 3058898
Submitted by: stuart
Revision Changes Path
No revision
No revision
1.46.2.3 +1 -1 src/live/gcc3/gcc/version.c
Index: version.c
===================================================================
RCS file: /cvs/Darwin/src/live/gcc3/gcc/version.c,v
retrieving revision 1.46.2.2
retrieving revision 1.46.2.3
diff -u -r1.46.2.2 -r1.46.2.3
--- version.c 2002/09/23 23:04:57 1.46.2.2
+++ version.c 2002/10/03 22:28:40 1.46.2.3
@@ -6,5 +6,5 @@
/* APPLE LOCAL begin Apple version */
/* Note that we can't say "apple_v*rs**n_str*ng" because of a cheesy
grep in configure that will get very confused if we do. */
-const char *const apple_version_str = "1204";
+const char *const apple_version_str = "1205";
/* APPLE LOCAL end Apple version */
1.24.8.1 +4 -0 src/live/gcc3/gcc/cse.c
Index: cse.c
===================================================================
RCS file: /cvs/Darwin/src/live/gcc3/gcc/cse.c,v
retrieving revision 1.24
retrieving revision 1.24.8.1
diff -u -r1.24 -r1.24.8.1
--- cse.c 2002/03/14 07:28:50 1.24
+++ cse.c 2002/10/03 22:28:40 1.24.8.1
@@ -1216,7 +1216,11 @@
reg_in_table was last set, that means that the entire
register has been set before, so discard anything memorized
for the entire register, including all SUBREG expressions. */
+#if 0 /* APPLE LOCAL start 3058898 */
if (REG_IN_TABLE (i) != REG_TICK (i) - 1)
+#else
+ if (1)
+#endif /* APPLE LOCAL end 3058898 */
remove_invalid_refs (i);
else
remove_invalid_subreg_refs (i, SUBREG_BYTE (x), GET_MODE (x));