| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "src/frames.h" | 5 #include "src/frames.h" |
| 6 | 6 |
| 7 #include <sstream> | 7 #include <sstream> |
| 8 | 8 |
| 9 #include "src/ast/ast.h" | 9 #include "src/ast/ast.h" |
| 10 #include "src/ast/scopeinfo.h" | 10 #include "src/ast/scopeinfo.h" |
| (...skipping 473 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 484 #endif | 484 #endif |
| 485 | 485 |
| 486 | 486 |
| 487 StackFrame::Type StackFrame::GetCallerState(State* state) const { | 487 StackFrame::Type StackFrame::GetCallerState(State* state) const { |
| 488 ComputeCallerState(state); | 488 ComputeCallerState(state); |
| 489 return ComputeType(iterator_, state); | 489 return ComputeType(iterator_, state); |
| 490 } | 490 } |
| 491 | 491 |
| 492 | 492 |
| 493 Address StackFrame::UnpaddedFP() const { | 493 Address StackFrame::UnpaddedFP() const { |
| 494 #if V8_TARGET_ARCH_IA32 || V8_TARGET_ARCH_X87 | |
| 495 if (!is_optimized()) return fp(); | |
| 496 int32_t alignment_state = Memory::int32_at( | |
| 497 fp() + JavaScriptFrameConstants::kDynamicAlignmentStateOffset); | |
| 498 | |
| 499 return (alignment_state == kAlignmentPaddingPushed) ? | |
| 500 (fp() + kPointerSize) : fp(); | |
| 501 #else | |
| 502 return fp(); | 494 return fp(); |
| 503 #endif | |
| 504 } | 495 } |
| 505 | 496 |
| 506 | 497 |
| 507 Code* EntryFrame::unchecked_code() const { | 498 Code* EntryFrame::unchecked_code() const { |
| 508 return isolate()->heap()->js_entry_code(); | 499 return isolate()->heap()->js_entry_code(); |
| 509 } | 500 } |
| 510 | 501 |
| 511 | 502 |
| 512 void EntryFrame::ComputeCallerState(State* state) const { | 503 void EntryFrame::ComputeCallerState(State* state) const { |
| 513 GetCallerState(state); | 504 GetCallerState(state); |
| (...skipping 1144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1658 for (StackFrameIterator it(isolate); !it.done(); it.Advance()) { | 1649 for (StackFrameIterator it(isolate); !it.done(); it.Advance()) { |
| 1659 StackFrame* frame = AllocateFrameCopy(it.frame(), zone); | 1650 StackFrame* frame = AllocateFrameCopy(it.frame(), zone); |
| 1660 list.Add(frame, zone); | 1651 list.Add(frame, zone); |
| 1661 } | 1652 } |
| 1662 return list.ToVector(); | 1653 return list.ToVector(); |
| 1663 } | 1654 } |
| 1664 | 1655 |
| 1665 | 1656 |
| 1666 } // namespace internal | 1657 } // namespace internal |
| 1667 } // namespace v8 | 1658 } // namespace v8 |
| OLD | NEW |