提交 3057dc77 编写于 作者: T twisti

6949423: remove tagged stack interpreter for Zero

Summary: Missed Zero changes for 6943304.
Reviewed-by: twisti
Contributed-by: NGary Benson <gbenson@redhat.com>
上级 81af799f
...@@ -36,14 +36,14 @@ ...@@ -36,14 +36,14 @@
public: public:
static int expr_index_at(int i) { static int expr_index_at(int i) {
return stackElementWords() * i; return stackElementWords * i;
} }
static int expr_offset_in_bytes(int i) { static int expr_offset_in_bytes(int i) {
return stackElementSize() * i; return stackElementSize * i;
} }
static int local_index_at(int i) { static int local_index_at(int i) {
assert(i <= 0, "local direction already negated"); assert(i <= 0, "local direction already negated");
return stackElementWords() * i; return stackElementWords * i;
} }
...@@ -189,7 +189,7 @@ ...@@ -189,7 +189,7 @@
// JavaStack Implementation // JavaStack Implementation
#define MORE_STACK(count) \ #define MORE_STACK(count) \
(topOfStack -= ((count) * Interpreter::stackElementWords())) (topOfStack -= ((count) * Interpreter::stackElementWords))
#define UPDATE_PC(opsize) {pc += opsize; } #define UPDATE_PC(opsize) {pc += opsize; }
...@@ -1950,8 +1950,8 @@ run: ...@@ -1950,8 +1950,8 @@ run:
jint size = STACK_INT(-1); jint size = STACK_INT(-1);
// stack grows down, dimensions are up! // stack grows down, dimensions are up!
jint *dimarray = jint *dimarray =
(jint*)&topOfStack[dims * Interpreter::stackElementWords()+ (jint*)&topOfStack[dims * Interpreter::stackElementWords+
Interpreter::stackElementWords()-1]; Interpreter::stackElementWords-1];
//adjust pointer to start of stack element //adjust pointer to start of stack element
CALL_VM(InterpreterRuntime::multianewarray(THREAD, dimarray), CALL_VM(InterpreterRuntime::multianewarray(THREAD, dimarray),
handle_exception); handle_exception);
...@@ -2375,7 +2375,7 @@ run: ...@@ -2375,7 +2375,7 @@ run:
assert(except_oop(), "No exception to process"); assert(except_oop(), "No exception to process");
intptr_t continuation_bci; intptr_t continuation_bci;
// expression stack is emptied // expression stack is emptied
topOfStack = istate->stack_base() - Interpreter::stackElementWords(); topOfStack = istate->stack_base() - Interpreter::stackElementWords;
CALL_VM(continuation_bci = (intptr_t)InterpreterRuntime::exception_handler_for_exception(THREAD, except_oop()), CALL_VM(continuation_bci = (intptr_t)InterpreterRuntime::exception_handler_for_exception(THREAD, except_oop()),
handle_exception); handle_exception);
......
/* /*
* Copyright 2002-2009 Sun Microsystems, Inc. All Rights Reserved. * Copyright 2002-2010 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -510,8 +510,6 @@ static oop stack_object(intptr_t *tos, int offset); ...@@ -510,8 +510,6 @@ static oop stack_object(intptr_t *tos, int offset);
static jdouble stack_double(intptr_t *tos, int offset); static jdouble stack_double(intptr_t *tos, int offset);
static jlong stack_long(intptr_t *tos, int offset); static jlong stack_long(intptr_t *tos, int offset);
static void tag_stack(intptr_t *tos, frame::Tag tag, int offset);
// only used for value types // only used for value types
static void set_stack_slot(intptr_t *tos, address value, int offset); static void set_stack_slot(intptr_t *tos, address value, int offset);
static void set_stack_int(intptr_t *tos, int value, int offset); static void set_stack_int(intptr_t *tos, int value, int offset);
...@@ -537,8 +535,6 @@ static jlong locals_long(intptr_t* locals, int offset); ...@@ -537,8 +535,6 @@ static jlong locals_long(intptr_t* locals, int offset);
static address locals_long_at(intptr_t* locals, int offset); static address locals_long_at(intptr_t* locals, int offset);
static address locals_double_at(intptr_t* locals, int offset); static address locals_double_at(intptr_t* locals, int offset);
static void tag_locals(intptr_t *locals, frame::Tag tag, int offset);
static void set_locals_slot(intptr_t *locals, address value, int offset); static void set_locals_slot(intptr_t *locals, address value, int offset);
static void set_locals_int(intptr_t *locals, jint value, int offset); static void set_locals_int(intptr_t *locals, jint value, int offset);
static void set_locals_float(intptr_t *locals, jfloat value, int offset); static void set_locals_float(intptr_t *locals, jfloat value, int offset);
...@@ -557,8 +553,6 @@ static void astore(intptr_t* topOfStack, int stack_offset, ...@@ -557,8 +553,6 @@ static void astore(intptr_t* topOfStack, int stack_offset,
static void copy_stack_slot(intptr_t *tos, int from_offset, int to_offset); static void copy_stack_slot(intptr_t *tos, int from_offset, int to_offset);
#ifndef PRODUCT #ifndef PRODUCT
static void verify_locals_tag(intptr_t *locals, frame::Tag tag, int offset);
static void verify_stack_tag(intptr_t *tos, frame::Tag tag, int offset);
static const char* C_msg(BytecodeInterpreter::messages msg); static const char* C_msg(BytecodeInterpreter::messages msg);
void print(); void print();
#endif // PRODUCT #endif // PRODUCT
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册