Real-mode code might set the direction flag, which would cause carnage.
[people/xl0/gpxe.git] / src / arch / i386 / transitions / librm.S
index e916ba5..2072ee3 100644 (file)
@@ -472,6 +472,9 @@ real_call:
        call    *rc_function
        pushal
 
+       /* For sanity's sake, clear the direction flag as soon as possible */
+       cld
+
        /* Switch to protected mode and move register dump back to PM stack */
        movl    $RC_OFFSET_RETADDR, %ecx
        pushl   $1f