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 8969 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8980 if (function_id != Translation::kSelfLiteralId) { | 8980 if (function_id != Translation::kSelfLiteralId) { |
8981 Object* function = LiteralArray()->get(function_id); | 8981 Object* function = LiteralArray()->get(function_id); |
8982 JSFunction::cast(function)->PrintName(out); | 8982 JSFunction::cast(function)->PrintName(out); |
8983 } else { | 8983 } else { |
8984 PrintF(out, "<self>"); | 8984 PrintF(out, "<self>"); |
8985 } | 8985 } |
8986 PrintF(out, ", height=%u}", height); | 8986 PrintF(out, ", height=%u}", height); |
8987 break; | 8987 break; |
8988 } | 8988 } |
8989 | 8989 |
8990 case Translation::COMPILED_STUB_FRAME: { | |
8991 Code::Kind stub_kind = static_cast<Code::Kind>(iterator.Next()); | |
8992 PrintF(out, "{kind=%d}", stub_kind); | |
8993 break; | |
8994 } | |
8995 | |
8996 case Translation::ARGUMENTS_ADAPTOR_FRAME: | 8990 case Translation::ARGUMENTS_ADAPTOR_FRAME: |
8997 case Translation::CONSTRUCT_STUB_FRAME: { | 8991 case Translation::CONSTRUCT_STUB_FRAME: { |
8998 int function_id = iterator.Next(); | 8992 int function_id = iterator.Next(); |
8999 JSFunction* function = | 8993 JSFunction* function = |
9000 JSFunction::cast(LiteralArray()->get(function_id)); | 8994 JSFunction::cast(LiteralArray()->get(function_id)); |
9001 unsigned height = iterator.Next(); | 8995 unsigned height = iterator.Next(); |
9002 PrintF(out, "{function="); | 8996 PrintF(out, "{function="); |
9003 function->PrintName(out); | 8997 function->PrintName(out); |
9004 PrintF(out, ", height=%u}", height); | 8998 PrintF(out, ", height=%u}", height); |
9005 break; | 8999 break; |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9100 FullCodeGenerator::StateField::decode(pc_and_state))); | 9094 FullCodeGenerator::StateField::decode(pc_and_state))); |
9101 } | 9095 } |
9102 } | 9096 } |
9103 | 9097 |
9104 | 9098 |
9105 // Identify kind of code. | 9099 // Identify kind of code. |
9106 const char* Code::Kind2String(Kind kind) { | 9100 const char* Code::Kind2String(Kind kind) { |
9107 switch (kind) { | 9101 switch (kind) { |
9108 case FUNCTION: return "FUNCTION"; | 9102 case FUNCTION: return "FUNCTION"; |
9109 case OPTIMIZED_FUNCTION: return "OPTIMIZED_FUNCTION"; | 9103 case OPTIMIZED_FUNCTION: return "OPTIMIZED_FUNCTION"; |
9110 case COMPILED_STUB: return "COMPILED_STUB"; | |
9111 case STUB: return "STUB"; | 9104 case STUB: return "STUB"; |
9112 case BUILTIN: return "BUILTIN"; | 9105 case BUILTIN: return "BUILTIN"; |
9113 case LOAD_IC: return "LOAD_IC"; | 9106 case LOAD_IC: return "LOAD_IC"; |
9114 case KEYED_LOAD_IC: return "KEYED_LOAD_IC"; | 9107 case KEYED_LOAD_IC: return "KEYED_LOAD_IC"; |
9115 case STORE_IC: return "STORE_IC"; | 9108 case STORE_IC: return "STORE_IC"; |
9116 case KEYED_STORE_IC: return "KEYED_STORE_IC"; | 9109 case KEYED_STORE_IC: return "KEYED_STORE_IC"; |
9117 case CALL_IC: return "CALL_IC"; | 9110 case CALL_IC: return "CALL_IC"; |
9118 case KEYED_CALL_IC: return "KEYED_CALL_IC"; | 9111 case KEYED_CALL_IC: return "KEYED_CALL_IC"; |
9119 case UNARY_OP_IC: return "UNARY_OP_IC"; | 9112 case UNARY_OP_IC: return "UNARY_OP_IC"; |
9120 case BINARY_OP_IC: return "BINARY_OP_IC"; | 9113 case BINARY_OP_IC: return "BINARY_OP_IC"; |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9220 DeoptimizationOutputData* data = | 9213 DeoptimizationOutputData* data = |
9221 DeoptimizationOutputData::cast(this->deoptimization_data()); | 9214 DeoptimizationOutputData::cast(this->deoptimization_data()); |
9222 data->DeoptimizationOutputDataPrint(out); | 9215 data->DeoptimizationOutputDataPrint(out); |
9223 } else if (kind() == OPTIMIZED_FUNCTION) { | 9216 } else if (kind() == OPTIMIZED_FUNCTION) { |
9224 DeoptimizationInputData* data = | 9217 DeoptimizationInputData* data = |
9225 DeoptimizationInputData::cast(this->deoptimization_data()); | 9218 DeoptimizationInputData::cast(this->deoptimization_data()); |
9226 data->DeoptimizationInputDataPrint(out); | 9219 data->DeoptimizationInputDataPrint(out); |
9227 } | 9220 } |
9228 PrintF("\n"); | 9221 PrintF("\n"); |
9229 | 9222 |
9230 if (kind() == OPTIMIZED_FUNCTION || kind() == COMPILED_STUB) { | 9223 if (kind() == OPTIMIZED_FUNCTION) { |
9231 SafepointTable table(this); | 9224 SafepointTable table(this); |
9232 PrintF(out, "Safepoints (size = %u)\n", table.size()); | 9225 PrintF(out, "Safepoints (size = %u)\n", table.size()); |
9233 for (unsigned i = 0; i < table.length(); i++) { | 9226 for (unsigned i = 0; i < table.length(); i++) { |
9234 unsigned pc_offset = table.GetPcOffset(i); | 9227 unsigned pc_offset = table.GetPcOffset(i); |
9235 PrintF(out, "%p %4d ", (instruction_start() + pc_offset), pc_offset); | 9228 PrintF(out, "%p %4d ", (instruction_start() + pc_offset), pc_offset); |
9236 table.PrintEntry(i); | 9229 table.PrintEntry(i); |
9237 PrintF(out, " (sp -> fp)"); | 9230 PrintF(out, " (sp -> fp)"); |
9238 SafepointEntry entry = table.GetEntry(i); | 9231 SafepointEntry entry = table.GetEntry(i); |
9239 if (entry.deoptimization_index() != Safepoint::kNoDeoptimizationIndex) { | 9232 if (entry.deoptimization_index() != Safepoint::kNoDeoptimizationIndex) { |
9240 PrintF(out, " %6d", entry.deoptimization_index()); | 9233 PrintF(out, " %6d", entry.deoptimization_index()); |
(...skipping 4645 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
13886 set_year(Smi::FromInt(year), SKIP_WRITE_BARRIER); | 13879 set_year(Smi::FromInt(year), SKIP_WRITE_BARRIER); |
13887 set_month(Smi::FromInt(month), SKIP_WRITE_BARRIER); | 13880 set_month(Smi::FromInt(month), SKIP_WRITE_BARRIER); |
13888 set_day(Smi::FromInt(day), SKIP_WRITE_BARRIER); | 13881 set_day(Smi::FromInt(day), SKIP_WRITE_BARRIER); |
13889 set_weekday(Smi::FromInt(weekday), SKIP_WRITE_BARRIER); | 13882 set_weekday(Smi::FromInt(weekday), SKIP_WRITE_BARRIER); |
13890 set_hour(Smi::FromInt(hour), SKIP_WRITE_BARRIER); | 13883 set_hour(Smi::FromInt(hour), SKIP_WRITE_BARRIER); |
13891 set_min(Smi::FromInt(min), SKIP_WRITE_BARRIER); | 13884 set_min(Smi::FromInt(min), SKIP_WRITE_BARRIER); |
13892 set_sec(Smi::FromInt(sec), SKIP_WRITE_BARRIER); | 13885 set_sec(Smi::FromInt(sec), SKIP_WRITE_BARRIER); |
13893 } | 13886 } |
13894 | 13887 |
13895 } } // namespace v8::internal | 13888 } } // namespace v8::internal |
OLD | NEW |