summaryrefslogtreecommitdiffstats
path: root/runtime/entrypoints/portable
diff options
context:
space:
mode:
authorDragos Sbirlea <dragoss@google.com>2013-08-13 18:07:04 -0700
committerDragos Sbirlea <dragoss@google.com>2013-08-15 15:10:55 -0700
commitbd136a29f08486525d6abc7d0a0006ce5b4011c1 (patch)
tree71a61d4545e7fa871d2cafee23dd5e3beb6619ee /runtime/entrypoints/portable
parent7d70a7932f0ba09eb01a93caab060aef1403d4e6 (diff)
downloadart-bd136a29f08486525d6abc7d0a0006ce5b4011c1.zip
art-bd136a29f08486525d6abc7d0a0006ce5b4011c1.tar.gz
art-bd136a29f08486525d6abc7d0a0006ce5b4011c1.tar.bz2
Get PORTABLE + SMALL on x86.
Implemented the portable resolution trampoline and the portable to interpreter bridge. Also work on integrating SEA_IR in the PORTABLE+SMALL framework. Refactor some naming and correct indenting. Change-Id: Ibd97da5e5b6f5148274c9bff368e3654b661ef51
Diffstat (limited to 'runtime/entrypoints/portable')
-rw-r--r--runtime/entrypoints/portable/portable_trampoline_entrypoints.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/runtime/entrypoints/portable/portable_trampoline_entrypoints.cc b/runtime/entrypoints/portable/portable_trampoline_entrypoints.cc
index e1ce11a..61f7440 100644
--- a/runtime/entrypoints/portable/portable_trampoline_entrypoints.cc
+++ b/runtime/entrypoints/portable/portable_trampoline_entrypoints.cc
@@ -42,8 +42,10 @@ class PortableArgumentVisitor {
#define PORTABLE_CALLEE_SAVE_FRAME__REF_AND_ARGS__FRAME_SIZE 64
#define PORTABLE_STACK_ARG_SKIP 16
#elif defined(__i386__)
-#define PORTABLE_CALLEE_SAVE_FRAME__REF_AND_ARGS__R1_OFFSET 4
-#define PORTABLE_CALLEE_SAVE_FRAME__REF_AND_ARGS__FRAME_SIZE 32
+// For x86 there are no register arguments and the stack pointer will point directly to the called
+// method argument passed by the caller.
+#define PORTABLE_CALLEE_SAVE_FRAME__REF_AND_ARGS__R1_OFFSET 0
+#define PORTABLE_CALLEE_SAVE_FRAME__REF_AND_ARGS__FRAME_SIZE 0
#define PORTABLE_STACK_ARG_SKIP 4
#else
#error "Unsupported architecture"