Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Side by Side Diff: src/objects.cc

Issue 1303403004: [Interpreter] Add support for parameter variables. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@int_add_bytecodes
Patch Set: Address review comments Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/objects.h ('k') | src/objects-inl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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/objects.h" 5 #include "src/objects.h"
6 6
7 #include <iomanip> 7 #include <iomanip>
8 #include <sstream> 8 #include <sstream>
9 9
10 #include "src/accessors.h" 10 #include "src/accessors.h"
(...skipping 11567 matching lines...) Expand 10 before | Expand all | Expand 10 after
11578 os << "RelocInfo (size = " << relocation_size() << ")\n"; 11578 os << "RelocInfo (size = " << relocation_size() << ")\n";
11579 for (RelocIterator it(this); !it.done(); it.next()) { 11579 for (RelocIterator it(this); !it.done(); it.next()) {
11580 it.rinfo()->Print(GetIsolate(), os); 11580 it.rinfo()->Print(GetIsolate(), os);
11581 } 11581 }
11582 os << "\n"; 11582 os << "\n";
11583 } 11583 }
11584 #endif // ENABLE_DISASSEMBLER 11584 #endif // ENABLE_DISASSEMBLER
11585 11585
11586 11586
11587 void BytecodeArray::Disassemble(std::ostream& os) { 11587 void BytecodeArray::Disassemble(std::ostream& os) {
11588 os << "Parameter count " << parameter_count() << "\n";
11588 os << "Frame size " << frame_size() << "\n"; 11589 os << "Frame size " << frame_size() << "\n";
11589 Vector<char> buf = Vector<char>::New(50); 11590 Vector<char> buf = Vector<char>::New(50);
11590 11591
11591 const uint8_t* first_bytecode_address = GetFirstBytecodeAddress(); 11592 const uint8_t* first_bytecode_address = GetFirstBytecodeAddress();
11592 int bytecode_size = 0; 11593 int bytecode_size = 0;
11593 for (int i = 0; i < this->length(); i += bytecode_size) { 11594 for (int i = 0; i < this->length(); i += bytecode_size) {
11594 const uint8_t* bytecode_start = &first_bytecode_address[i]; 11595 const uint8_t* bytecode_start = &first_bytecode_address[i];
11595 interpreter::Bytecode bytecode = 11596 interpreter::Bytecode bytecode =
11596 interpreter::Bytecodes::FromByte(bytecode_start[0]); 11597 interpreter::Bytecodes::FromByte(bytecode_start[0]);
11597 bytecode_size = interpreter::Bytecodes::Size(bytecode); 11598 bytecode_size = interpreter::Bytecodes::Size(bytecode);
(...skipping 4225 matching lines...) Expand 10 before | Expand all | Expand 10 after
15823 if (cell->value() != *new_value) { 15824 if (cell->value() != *new_value) {
15824 cell->set_value(*new_value); 15825 cell->set_value(*new_value);
15825 Isolate* isolate = cell->GetIsolate(); 15826 Isolate* isolate = cell->GetIsolate();
15826 cell->dependent_code()->DeoptimizeDependentCodeGroup( 15827 cell->dependent_code()->DeoptimizeDependentCodeGroup(
15827 isolate, DependentCode::kPropertyCellChangedGroup); 15828 isolate, DependentCode::kPropertyCellChangedGroup);
15828 } 15829 }
15829 } 15830 }
15830 15831
15831 } // namespace internal 15832 } // namespace internal
15832 } // namespace v8 15833 } // namespace v8
OLDNEW
« no previous file with comments | « src/objects.h ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698