Reviewers: dstence, joransiu, john.yan,

Description:
PPC: Fix InterpreterEntryTrampoline().

[email protected], [email protected], [email protected]
BUG=

Please review this at https://codereview.chromium.org/1315173004/

Base URL: https://chromium.googlesource.com/v8/v8.git@master

Affected files (+4, -3 lines):
  M src/ppc/builtins-ppc.cc


Index: src/ppc/builtins-ppc.cc
diff --git a/src/ppc/builtins-ppc.cc b/src/ppc/builtins-ppc.cc
index 2eb4c08fe557362fb15e445bd9bd6ab2b86d14eb..f50060443bbfd7b4569a4e91cfc6099f8fce95bc 100644
--- a/src/ppc/builtins-ppc.cc
+++ b/src/ppc/builtins-ppc.cc
@@ -899,9 +899,9 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) {

   // Allocate the local and temporary register file on the stack.
   {
-    // Load frame size from the BytecodeArray object.
-    __ LoadP(r5, FieldMemOperand(kInterpreterBytecodeArrayRegister,
-                                 BytecodeArray::kFrameSizeOffset));
+    // Load frame size (word) from the BytecodeArray object.
+    __ lwz(r5, FieldMemOperand(kInterpreterBytecodeArrayRegister,
+                               BytecodeArray::kFrameSizeOffset));

     // Do a stack check to ensure we don't go over the limit.
     Label ok;
@@ -919,6 +919,7 @@ void Builtins::Generate_InterpreterEntryTrampoline(MacroAssembler* masm) {
     Label loop_header;
     __ LoadRoot(r6, Heap::kUndefinedValueRootIndex);
     __ ShiftRightImm(r5, r5, Operand(kPointerSizeLog2));
+    __ mtctr(r5);
     __ bind(&loop_header);
     __ push(r6);
     __ bdnz(&loop_header);


--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to