OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 761 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
772 case Translation::CONSTRUCT_STUB_FRAME: | 772 case Translation::CONSTRUCT_STUB_FRAME: |
773 DoComputeConstructStubFrame(&iterator, i); | 773 DoComputeConstructStubFrame(&iterator, i); |
774 break; | 774 break; |
775 case Translation::GETTER_STUB_FRAME: | 775 case Translation::GETTER_STUB_FRAME: |
776 DoComputeAccessorStubFrame(&iterator, i, false); | 776 DoComputeAccessorStubFrame(&iterator, i, false); |
777 break; | 777 break; |
778 case Translation::SETTER_STUB_FRAME: | 778 case Translation::SETTER_STUB_FRAME: |
779 DoComputeAccessorStubFrame(&iterator, i, true); | 779 DoComputeAccessorStubFrame(&iterator, i, true); |
780 break; | 780 break; |
781 case Translation::COMPILED_STUB_FRAME: | 781 case Translation::COMPILED_STUB_FRAME: |
782 DoCompiledStubFrame(&iterator, i); | 782 DoComputeCompiledStubFrame(&iterator, i); |
783 break; | 783 break; |
784 case Translation::BEGIN: | 784 case Translation::BEGIN: |
785 case Translation::REGISTER: | 785 case Translation::REGISTER: |
786 case Translation::INT32_REGISTER: | 786 case Translation::INT32_REGISTER: |
787 case Translation::UINT32_REGISTER: | 787 case Translation::UINT32_REGISTER: |
788 case Translation::DOUBLE_REGISTER: | 788 case Translation::DOUBLE_REGISTER: |
789 case Translation::STACK_SLOT: | 789 case Translation::STACK_SLOT: |
790 case Translation::INT32_STACK_SLOT: | 790 case Translation::INT32_STACK_SLOT: |
791 case Translation::UINT32_STACK_SLOT: | 791 case Translation::UINT32_STACK_SLOT: |
792 case Translation::DOUBLE_STACK_SLOT: | 792 case Translation::DOUBLE_STACK_SLOT: |
(...skipping 872 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1665 int FrameDescription::ComputeParametersCount() { | 1665 int FrameDescription::ComputeParametersCount() { |
1666 switch (type_) { | 1666 switch (type_) { |
1667 case StackFrame::JAVA_SCRIPT: | 1667 case StackFrame::JAVA_SCRIPT: |
1668 return function_->shared()->formal_parameter_count(); | 1668 return function_->shared()->formal_parameter_count(); |
1669 case StackFrame::ARGUMENTS_ADAPTOR: { | 1669 case StackFrame::ARGUMENTS_ADAPTOR: { |
1670 // Last slot contains number of incomming arguments as a smi. | 1670 // Last slot contains number of incomming arguments as a smi. |
1671 // Can't use GetExpression(0) because it would cause infinite recursion. | 1671 // Can't use GetExpression(0) because it would cause infinite recursion. |
1672 return reinterpret_cast<Smi*>(*GetFrameSlotPointer(0))->value(); | 1672 return reinterpret_cast<Smi*>(*GetFrameSlotPointer(0))->value(); |
1673 } | 1673 } |
1674 case StackFrame::STUB: | 1674 case StackFrame::STUB: |
1675 return 0; | 1675 return -1; // Minus receiver. |
1676 default: | 1676 default: |
1677 UNREACHABLE(); | 1677 UNREACHABLE(); |
1678 return 0; | 1678 return 0; |
1679 } | 1679 } |
1680 } | 1680 } |
1681 | 1681 |
1682 | 1682 |
1683 Object* FrameDescription::GetParameter(int index) { | 1683 Object* FrameDescription::GetParameter(int index) { |
1684 ASSERT(index >= 0); | 1684 ASSERT(index >= 0); |
1685 ASSERT(index < ComputeParametersCount()); | 1685 ASSERT(index < ComputeParametersCount()); |
(...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2134 | 2134 |
2135 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { | 2135 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { |
2136 v->VisitPointer(BitCast<Object**>(&function_)); | 2136 v->VisitPointer(BitCast<Object**>(&function_)); |
2137 v->VisitPointers(parameters_, parameters_ + parameters_count_); | 2137 v->VisitPointers(parameters_, parameters_ + parameters_count_); |
2138 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); | 2138 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); |
2139 } | 2139 } |
2140 | 2140 |
2141 #endif // ENABLE_DEBUGGER_SUPPORT | 2141 #endif // ENABLE_DEBUGGER_SUPPORT |
2142 | 2142 |
2143 } } // namespace v8::internal | 2143 } } // namespace v8::internal |
OLD | NEW |