Index: src/objects-printer.cc |
diff --git a/src/objects-printer.cc b/src/objects-printer.cc |
index 838a1a90755cc6e52a10bdf387c4aed58fee8527..43c3f90039f2151d9a1099a56af6a7e190d019b0 100644 |
--- a/src/objects-printer.cc |
+++ b/src/objects-printer.cc |
@@ -7,6 +7,7 @@ |
#include "src/disasm.h" |
#include "src/disassembler.h" |
#include "src/heap/objects-visiting.h" |
+#include "src/interpreter/bytecodes.h" |
#include "src/jsregexp.h" |
#include "src/ostreams.h" |
@@ -72,6 +73,9 @@ void HeapObject::HeapObjectPrint(std::ostream& os) { // NOLINT |
case BYTE_ARRAY_TYPE: |
ByteArray::cast(this)->ByteArrayPrint(os); |
break; |
+ case BYTECODE_ARRAY_TYPE: |
+ BytecodeArray::cast(this)->BytecodeArrayPrint(os); |
+ break; |
case FREE_SPACE_TYPE: |
FreeSpace::cast(this)->FreeSpacePrint(os); |
break; |
@@ -201,6 +205,12 @@ void ByteArray::ByteArrayPrint(std::ostream& os) { // NOLINT |
} |
+void BytecodeArray::BytecodeArrayPrint(std::ostream& os) { // NOLINT |
+ os << "bytecode array, data starts at " << GetFirstBytecodeAddress() << "\n"; |
+ Disassemble(os); |
+} |
+ |
+ |
void FreeSpace::FreeSpacePrint(std::ostream& os) { // NOLINT |
os << "free space, size " << Size(); |
} |
@@ -764,6 +774,7 @@ void SharedFunctionInfo::SharedFunctionInfoPrint(std::ostream& os) { // NOLINT |
os << "\n - optimized_code_map = " << Brief(optimized_code_map()); |
os << "\n - feedback_vector = "; |
feedback_vector()->FixedArrayPrint(os); |
+ os << "\n - bytecode_array = " << bytecode_array(); |
os << "\n"; |
} |