This fixes stack frame operations on x86-64 to take into account the
saved registers and the stack slot size.

Signed-off-by: Eduard - Gabriel Munteanu <eduard.munte...@linux360.ro>
---
 arch/x86/stack-frame.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/arch/x86/stack-frame.c b/arch/x86/stack-frame.c
index d9f989f..1e660fd 100644
--- a/arch/x86/stack-frame.c
+++ b/arch/x86/stack-frame.c
@@ -59,11 +59,15 @@
  *     |   Local m    :
  *     +--------------+
  */
+#ifdef CONFIG_X86_32
 #define ARGS_START_OFFSET (sizeof(unsigned long) * 5)
+#else
+#define ARGS_START_OFFSET (sizeof(unsigned long) * 7)
+#endif
 
 static unsigned long __index_to_offset(unsigned long index)
 {
-       return index * sizeof(unsigned int);
+       return index * sizeof(unsigned long);
 }
 
 static unsigned long
-- 
1.6.0.6


------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel

Reply via email to