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

Side by Side Diff: src/objects.cc

Issue 8492004: Fix lazy deoptimization at HInvokeFunction and enable target-recording call-function stub. (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: added nop-padding and assertions on all platforms Created 9 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « src/objects.h ('k') | src/safepoint-table.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 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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 7849 matching lines...) Expand 10 before | Expand all | Expand 10 after
7860 7860
7861 7861
7862 #ifdef ENABLE_DISASSEMBLER 7862 #ifdef ENABLE_DISASSEMBLER
7863 7863
7864 void DeoptimizationInputData::DeoptimizationInputDataPrint(FILE* out) { 7864 void DeoptimizationInputData::DeoptimizationInputDataPrint(FILE* out) {
7865 disasm::NameConverter converter; 7865 disasm::NameConverter converter;
7866 int deopt_count = DeoptCount(); 7866 int deopt_count = DeoptCount();
7867 PrintF(out, "Deoptimization Input Data (deopt points = %d)\n", deopt_count); 7867 PrintF(out, "Deoptimization Input Data (deopt points = %d)\n", deopt_count);
7868 if (0 == deopt_count) return; 7868 if (0 == deopt_count) return;
7869 7869
7870 PrintF(out, "%6s %6s %6s %12s\n", "index", "ast id", "argc", 7870 PrintF(out, "%6s %6s %6s %6s %12s\n", "index", "ast id", "argc", "pc",
7871 FLAG_print_code_verbose ? "commands" : ""); 7871 FLAG_print_code_verbose ? "commands" : "");
7872 for (int i = 0; i < deopt_count; i++) { 7872 for (int i = 0; i < deopt_count; i++) {
7873 PrintF(out, "%6d %6d %6d", 7873 PrintF(out, "%6d %6d %6d %6d",
7874 i, AstId(i)->value(), ArgumentsStackHeight(i)->value()); 7874 i,
7875 AstId(i)->value(),
7876 ArgumentsStackHeight(i)->value(),
7877 Pc(i)->value());
7875 7878
7876 if (!FLAG_print_code_verbose) { 7879 if (!FLAG_print_code_verbose) {
7877 PrintF(out, "\n"); 7880 PrintF(out, "\n");
7878 continue; 7881 continue;
7879 } 7882 }
7880 // Print details of the frame translation. 7883 // Print details of the frame translation.
7881 int translation_index = TranslationIndex(i)->value(); 7884 int translation_index = TranslationIndex(i)->value();
7882 TranslationIterator iterator(TranslationByteArray(), translation_index); 7885 TranslationIterator iterator(TranslationByteArray(), translation_index);
7883 Translation::Opcode opcode = 7886 Translation::Opcode opcode =
7884 static_cast<Translation::Opcode>(iterator.Next()); 7887 static_cast<Translation::Opcode>(iterator.Next());
(...skipping 4652 matching lines...) Expand 10 before | Expand all | Expand 10 after
12537 if (break_point_objects()->IsUndefined()) return 0; 12540 if (break_point_objects()->IsUndefined()) return 0;
12538 // Single break point. 12541 // Single break point.
12539 if (!break_point_objects()->IsFixedArray()) return 1; 12542 if (!break_point_objects()->IsFixedArray()) return 1;
12540 // Multiple break points. 12543 // Multiple break points.
12541 return FixedArray::cast(break_point_objects())->length(); 12544 return FixedArray::cast(break_point_objects())->length();
12542 } 12545 }
12543 #endif // ENABLE_DEBUGGER_SUPPORT 12546 #endif // ENABLE_DEBUGGER_SUPPORT
12544 12547
12545 12548
12546 } } // namespace v8::internal 12549 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/objects.h ('k') | src/safepoint-table.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698