Version 3.15.11

Define CAN_USE_VFP2/3_INSTRUCTIONS based on arm_neon and arm_fpu GYP flags.

Performance and stability improvements on all platforms.

git-svn-id: http://v8.googlecode.com/svn/trunk@13185 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/src/frames.cc b/src/frames.cc
index cb9ffba..3b60fb5 100644
--- a/src/frames.cc
+++ b/src/frames.cc
@@ -617,7 +617,7 @@
 }
 
 
-void CompiledFrame::Iterate(ObjectVisitor* v) const {
+void OptimizedFrame::Iterate(ObjectVisitor* v) const {
 #ifdef DEBUG
   // Make sure that optimized frames do not contain any stack handlers.
   StackHandlerIterator it(this, top_handler());
@@ -649,7 +649,7 @@
 
   // Skip saved double registers.
   if (safepoint_entry.has_doubles()) {
-    parameters_base += DoubleRegister::NumAllocatableRegisters() *
+    parameters_base += DoubleRegister::kNumAllocatableRegisters *
         kDoubleSize / kPointerSize;
   }
 
@@ -681,24 +681,14 @@
     }
   }
 
-  // Visit the return address in the callee and incoming arguments.
-  IteratePc(v, pc_address(), code);
-}
-
-
-void StubFrame::Iterate(ObjectVisitor* v) const {
-  CompiledFrame::Iterate(v);
-}
-
-
-void OptimizedFrame::Iterate(ObjectVisitor* v) const {
-  CompiledFrame::Iterate(v);
-
   // Visit the context and the function.
   Object** fixed_base = &Memory::Object_at(
       fp() + JavaScriptFrameConstants::kFunctionOffset);
   Object** fixed_limit = &Memory::Object_at(fp());
   v->VisitPointers(fixed_base, fixed_limit);
+
+  // Visit the return address in the callee and incoming arguments.
+  IteratePc(v, pc_address(), code);
 }