OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 829 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
840 PrintF(" ; literal\n"); | 840 PrintF(" ; literal\n"); |
841 } | 841 } |
842 intptr_t value = reinterpret_cast<intptr_t>(literal); | 842 intptr_t value = reinterpret_cast<intptr_t>(literal); |
843 output_[frame_index]->SetFrameSlot(output_offset, value); | 843 output_[frame_index]->SetFrameSlot(output_offset, value); |
844 return; | 844 return; |
845 } | 845 } |
846 | 846 |
847 case Translation::ARGUMENTS_OBJECT: { | 847 case Translation::ARGUMENTS_OBJECT: { |
848 // Use the arguments marker value as a sentinel and fill in the arguments | 848 // Use the arguments marker value as a sentinel and fill in the arguments |
849 // object after the deoptimized frame is built. | 849 // object after the deoptimized frame is built. |
850 ASSERT(frame_index == 0); // Only supported for first frame. | |
851 if (FLAG_trace_deopt) { | 850 if (FLAG_trace_deopt) { |
852 PrintF(" 0x%08" V8PRIxPTR ": [top + %d] <- ", | 851 PrintF(" 0x%08" V8PRIxPTR ": [top + %d] <- ", |
853 output_[frame_index]->GetTop() + output_offset, | 852 output_[frame_index]->GetTop() + output_offset, |
854 output_offset); | 853 output_offset); |
855 isolate_->heap()->arguments_marker()->ShortPrint(); | 854 isolate_->heap()->arguments_marker()->ShortPrint(); |
856 PrintF(" ; arguments object\n"); | 855 PrintF(" ; arguments object\n"); |
857 } | 856 } |
858 intptr_t value = reinterpret_cast<intptr_t>( | 857 intptr_t value = reinterpret_cast<intptr_t>( |
859 isolate_->heap()->arguments_marker()); | 858 isolate_->heap()->arguments_marker()); |
860 output_[frame_index]->SetFrameSlot(output_offset, value); | 859 output_[frame_index]->SetFrameSlot(output_offset, value); |
(...skipping 801 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1662 | 1661 |
1663 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { | 1662 void DeoptimizedFrameInfo::Iterate(ObjectVisitor* v) { |
1664 v->VisitPointer(BitCast<Object**>(&function_)); | 1663 v->VisitPointer(BitCast<Object**>(&function_)); |
1665 v->VisitPointers(parameters_, parameters_ + parameters_count_); | 1664 v->VisitPointers(parameters_, parameters_ + parameters_count_); |
1666 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); | 1665 v->VisitPointers(expression_stack_, expression_stack_ + expression_count_); |
1667 } | 1666 } |
1668 | 1667 |
1669 #endif // ENABLE_DEBUGGER_SUPPORT | 1668 #endif // ENABLE_DEBUGGER_SUPPORT |
1670 | 1669 |
1671 } } // namespace v8::internal | 1670 } } // namespace v8::internal |
OLD | NEW |