Author: martin
Date: 2007-05-14 09:41:32 -0400 (Mon, 14 May 2007)
New Revision: 77346
Modified:
trunk/debugger/ChangeLog
trunk/debugger/backend/arch/Architecture_I386.cs
trunk/debugger/backend/arch/Architecture_X86_64.cs
Log:
2007-05-14 Martin Baulig <[EMAIL PROTECTED]>
* backend/arch/Architecture_I386.cs
(Architecture_I386.GetLMF): Correctly set ebp.
* backend/arch/Architecture_X86_64.cs
(Architecture_X86_64.GetLMF): Correctly set rbp.
Modified: trunk/debugger/ChangeLog
===================================================================
--- trunk/debugger/ChangeLog 2007-05-14 13:40:37 UTC (rev 77345)
+++ trunk/debugger/ChangeLog 2007-05-14 13:41:32 UTC (rev 77346)
@@ -6,6 +6,14 @@
* configure.in: Require Mono >= 1.2.4.
+2007-05-14 Martin Baulig <[EMAIL PROTECTED]>
+
+ * backend/arch/Architecture_I386.cs
+ (Architecture_I386.GetLMF): Correctly set ebp.
+
+ * backend/arch/Architecture_X86_64.cs
+ (Architecture_X86_64.GetLMF): Correctly set rbp.
+
2007-05-09 Martin Baulig <[EMAIL PROTECTED]>
* frontend/ObjectFormatter.cs
Modified: trunk/debugger/backend/arch/Architecture_I386.cs
===================================================================
--- trunk/debugger/backend/arch/Architecture_I386.cs 2007-05-14 13:40:37 UTC
(rev 77345)
+++ trunk/debugger/backend/arch/Architecture_I386.cs 2007-05-14 13:41:32 UTC
(rev 77346)
@@ -737,12 +737,15 @@
TargetAddress new_eip = thread.ReadAddress (ebp + 4);
regs [(int) I386Register.EIP].SetValue (ebp + 4,
new_eip);
+ TargetAddress new_ebp = thread.ReadAddress (ebp);
+ regs [(int) I386Register.EBP].SetValue (ebp, new_ebp);
+
TargetAddress new_esp = ebp + 8;
regs [(int) I386Register.ESP].SetValue (ebp, new_esp);
ebp -= 4;
- return CreateFrame (thread, new_eip, new_esp, ebp,
regs);
+ return CreateFrame (thread, new_eip, new_esp, new_ebp,
regs);
}
}
}
Modified: trunk/debugger/backend/arch/Architecture_X86_64.cs
===================================================================
--- trunk/debugger/backend/arch/Architecture_X86_64.cs 2007-05-14 13:40:37 UTC
(rev 77345)
+++ trunk/debugger/backend/arch/Architecture_X86_64.cs 2007-05-14 13:41:32 UTC
(rev 77346)
@@ -826,9 +826,12 @@
TargetAddress new_rip = thread.ReadAddress (rbp + 8);
regs [(int) X86_64_Register.RIP].SetValue (rbp + 8,
new_rip);
+ TargetAddress new_rbp = thread.ReadAddress (rbp);
+ regs [(int) X86_64_Register.RBP].SetValue (rbp,
new_rbp);
+
rbp -= 8;
- return CreateFrame (thread, new_rip, rsp, rbp, regs);
+ return CreateFrame (thread, new_rip, rsp, new_rbp,
regs);
}
}
}
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches