Improved string hash-code distribution by excluding bit-field bits from the hash-code.
Changed string search algorithm used in indexOf from KMP to Boyer-Moore.
Improved the generated code for the instanceof operator.
Improved performance of slow-case string equality checks by specializing the code based on the string representation.
Improve the handling of out-of-memory situations (issue 70).
Improved performance of strict equality checks.
Improved profiler output to make it easier to see anonymous functions.
Improved performance of slow-case keyed loads.
Improved property access performance by allocating a number of properties in the front object.
Changed the toString behavior on the built-in object constructors to print [native code] instead of the actual source. Some web applications do not like constructors with complex toString results.
git-svn-id: http://v8.googlecode.com/svn/trunk@511 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/src/frames-inl.h b/src/frames-inl.h
index fac1418..2b50d55 100644
--- a/src/frames-inl.h
+++ b/src/frames-inl.h
@@ -145,8 +145,10 @@
}
-inline bool StandardFrame::IsConstructTrampolineFrame(Address pc) {
- return Builtins::builtin(Builtins::JSConstructCall)->contains(pc);
+inline bool StandardFrame::IsConstructFrame(Address fp) {
+ Object* marker =
+ Memory::Object_at(fp + StandardFrameConstants::kMarkerOffset);
+ return marker == Smi::FromInt(CONSTRUCT);
}
@@ -167,15 +169,6 @@
}
-inline bool InternalFrame::is_construct_trampoline() const {
- // TODO(1233795): This doesn't work when the stack frames have been
- // cooked. We need to find another way of identifying construct
- // trampoline frames possibly by manipulating the context field like
- // we do for argument adaptor frames.
- return IsConstructTrampolineFrame(pc());
-}
-
-
inline JavaScriptFrame* JavaScriptFrameIterator::frame() const {
// TODO(1233797): The frame hierarchy needs to change. It's
// problematic that we can't use the safe-cast operator to cast to