Revision: 2265
http://svn.sv.gnu.org/viewvc/?view=rev&root=grub&revision=2265
Author: phcoder
Date: 2009-06-04 21:45:32 +0000 (Thu, 04 Jun 2009)
Log Message:
-----------
2009-06-04 Vladimir Serbinenko <[email protected]>
* kern/i386/pc/startup.S [APPLE_CC]: block of nops to
compensate a compiler bug
Modified Paths:
--------------
trunk/grub2/ChangeLog
trunk/grub2/kern/i386/pc/startup.S
Modified: trunk/grub2/ChangeLog
===================================================================
--- trunk/grub2/ChangeLog 2009-06-04 21:42:58 UTC (rev 2264)
+++ trunk/grub2/ChangeLog 2009-06-04 21:45:32 UTC (rev 2265)
@@ -1,5 +1,10 @@
2009-06-04 Vladimir Serbinenko <[email protected]>
+ * kern/i386/pc/startup.S [APPLE_CC]: block of nops to
+ compensate a compiler bug
+
+2009-06-04 Vladimir Serbinenko <[email protected]>
+
* include/grub/term.h (GRUB_TERM_BACKSPACE): explicitely define as 8
instead of '\b'
Modified: trunk/grub2/kern/i386/pc/startup.S
===================================================================
--- trunk/grub2/kern/i386/pc/startup.S 2009-06-04 21:42:58 UTC (rev 2264)
+++ trunk/grub2/kern/i386/pc/startup.S 2009-06-04 21:45:32 UTC (rev 2265)
@@ -1120,6 +1120,17 @@
xnosmap:
xorl %ecx, %ecx
+/* Apple's cc jumps few bytes before the correct
+ label in this context. Hence nops. */
+#ifdef APPLE_CC
+ nop
+ nop
+ nop
+ nop
+ nop
+ nop
+#endif
+
xsmap:
DATA32 call real_to_prot
.code32