diff src/cpu/x86/vm/x86_32.ad @ 23660:b5f3a471e646

Merge.
author Doug Simon <doug.simon@oracle.com>
date Wed, 01 Jun 2016 00:11:44 +0200
parents dd9cc155639c faef2a237329
children 9b69cec6d01b
line wrap: on
line diff
--- a/src/cpu/x86/vm/x86_32.ad	Tue May 31 08:05:44 2016 +0200
+++ b/src/cpu/x86/vm/x86_32.ad	Wed Jun 01 00:11:44 2016 +0200
@@ -566,7 +566,11 @@
     st->print("MOV    [ESP + #%d], EBP\t# Save EBP",framesize);
     if (PreserveFramePointer) {
       st->print("\n\t");
-      st->print("MOV    EBP, [ESP + #%d]\t# Save the caller's SP into EBP", (framesize + wordSize));
+      st->print("MOV    EBP, ESP\t# Save the caller's SP into EBP");
+      if (framesize > 0) {
+        st->print("\n\t");
+        st->print("ADD    EBP, #%d", framesize);
+      }
     }
   }