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

Unified Diff: src/full-codegen.h

Issue 23710014: Introduce concurrent on-stack replacement. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 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 side-by-side diff with in-line comments
Download patch
Index: src/full-codegen.h
diff --git a/src/full-codegen.h b/src/full-codegen.h
index ed2cc179213add60d4808615f386f0da2f6ee0f3..d244740da903485c5fa7ad99b4bba9d5faebeeaf 100644
--- a/src/full-codegen.h
+++ b/src/full-codegen.h
@@ -141,7 +141,8 @@ class FullCodeGenerator: public AstVisitor {
class BackEdgeTableIterator {
public:
- explicit BackEdgeTableIterator(Code* unoptimized) {
+ explicit BackEdgeTableIterator(Code* unoptimized,
+ DisallowHeapAllocation* required) {
ASSERT(unoptimized->kind() == Code::FUNCTION);
instruction_start_ = unoptimized->instruction_start();
cursor_ = instruction_start_ + unoptimized->back_edge_table_offset();
@@ -181,6 +182,14 @@ class FullCodeGenerator: public AstVisitor {
uint32_t table_length() { return table_length_; }
+ bool FindPcOffset(uint32_t target_pc_offset) {
+ while (!Done()) {
+ if (pc_offset() == target_pc_offset) return true;
+ Next();
+ }
+ return false;
+ }
+
private:
static const int kTableLengthSize = kIntSize;
static const int kAstIdOffset = 0 * kIntSize;
@@ -192,7 +201,6 @@ class FullCodeGenerator: public AstVisitor {
Address end_;
Address instruction_start_;
uint32_t table_length_;
- DisallowHeapAllocation no_gc_while_iterating_over_raw_addresses_;
DISALLOW_COPY_AND_ASSIGN(BackEdgeTableIterator);
};

Powered by Google App Engine
This is Rietveld 408576698