reorder makeMultidimensionalArray parameters to remove the need for the caller to save the stack pointer in a temporary register

This commit is contained in:
Joel Dice 2008-05-18 09:45:11 -06:00
parent 4858972dbc
commit b2e25f4e17

View File

@ -27,7 +27,7 @@ vmCall();
namespace { namespace {
const bool Verbose = true; const bool Verbose = false;
const bool DebugNatives = false; const bool DebugNatives = false;
const bool DebugCallTable = false; const bool DebugCallTable = false;
const bool DebugMethodTree = false; const bool DebugMethodTree = false;
@ -1499,8 +1499,8 @@ makeMultidimensionalArray2(MyThread* t, object class_, uintptr_t* stack,
} }
object FORCE_ALIGN object FORCE_ALIGN
makeMultidimensionalArray(MyThread* t, object class_, uintptr_t* stack, makeMultidimensionalArray(MyThread* t, object class_, int32_t dimensions,
int32_t dimensions) uintptr_t* stack)
{ {
object r = makeMultidimensionalArray2(t, class_, stack, dimensions); object r = makeMultidimensionalArray2(t, class_, stack, dimensions);
if (UNLIKELY(t->exception)) { if (UNLIKELY(t->exception)) {
@ -3177,8 +3177,8 @@ compile(MyThread* t, Frame* initialFrame, unsigned ip,
Compiler::Indirect, Compiler::Indirect,
frame->trace(0, false), frame->trace(0, false),
BytesPerWord, BytesPerWord,
4, c->thread(), frame->append(class_), 4, c->thread(), frame->append(class_), c->constant(dimensions),
c->load(BytesPerWord, c->stack()), c->constant(dimensions)); c->stack());
frame->pop(dimensions); frame->pop(dimensions);
frame->pushObject(result); frame->pushObject(result);
@ -3866,11 +3866,11 @@ finish(MyThread* t, Context* context)
strcmp strcmp
(reinterpret_cast<const char*> (reinterpret_cast<const char*>
(&byteArrayBody(t, className(t, methodClass(t, context->method)), 0)), (&byteArrayBody(t, className(t, methodClass(t, context->method)), 0)),
"Enums") == 0 and "org/eclipse/swt/widgets/CoolBar") == 0 and
strcmp strcmp
(reinterpret_cast<const char*> (reinterpret_cast<const char*>
(&byteArrayBody(t, methodName(t, context->method), 0)), (&byteArrayBody(t, methodName(t, context->method), 0)),
"checkFaceCard") == 0) "layoutItems") == 0)
{ {
asm("int3"); asm("int3");
} }