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

Unified Diff: src/interface.h

Issue 667703002: Fix data race with interface caching (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Comments Created 6 years, 2 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
« no previous file with comments | « no previous file | src/interface.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/interface.h
diff --git a/src/interface.h b/src/interface.h
index 598d0381427095c4c9f31de6365385757ac328b0..ae549634c55a020fd6c4bd65cabe6bdb9ebe8007 100644
--- a/src/interface.h
+++ b/src/interface.h
@@ -41,15 +41,9 @@ class Interface : public ZoneObject {
return new(zone) Interface(NONE);
}
- static Interface* NewValue() {
- static Interface value_interface(VALUE + FROZEN); // Cached.
- return &value_interface;
- }
+ static Interface* NewValue();
- static Interface* NewConst() {
- static Interface value_interface(VALUE + CONST + FROZEN); // Cached.
- return &value_interface;
- }
+ static Interface* NewConst();
static Interface* NewModule(Zone* zone) {
return new(zone) Interface(MODULE);
@@ -178,6 +172,9 @@ class Interface : public ZoneObject {
// ---------------------------------------------------------------------------
// Implementation.
private:
+ struct ValueCreate;
+ struct ConstCreate;
+
enum Flags { // All flags are monotonic
NONE = 0,
VALUE = 1, // This type describes a value
« no previous file with comments | « no previous file | src/interface.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698