Index: pkg/compiler/lib/src/universe/side_effects.dart |
diff --git a/pkg/compiler/lib/src/universe/side_effects.dart b/pkg/compiler/lib/src/universe/side_effects.dart |
index a599e0942a78e2f582a2d3bc187ddb913dab7c2f..2c39999dddec2a30f4605d97a581eea46b3e6e7e 100644 |
--- a/pkg/compiler/lib/src/universe/side_effects.dart |
+++ b/pkg/compiler/lib/src/universe/side_effects.dart |
@@ -8,8 +8,8 @@ class SideEffects { |
// Changes flags. |
static const int FLAG_CHANGES_INDEX = 0; |
static const int FLAG_CHANGES_INSTANCE_PROPERTY = FLAG_CHANGES_INDEX + 1; |
- static const int FLAG_CHANGES_STATIC_PROPERTY |
- = FLAG_CHANGES_INSTANCE_PROPERTY + 1; |
+ static const int FLAG_CHANGES_STATIC_PROPERTY = |
+ FLAG_CHANGES_INSTANCE_PROPERTY + 1; |
static const int FLAG_CHANGES_COUNT = FLAG_CHANGES_STATIC_PROPERTY + 1; |
// Depends flags (one for each changes flag). |
@@ -33,13 +33,18 @@ class SideEffects { |
clearAllSideEffects(); |
} |
- bool operator==(other) => _flags == other._flags; |
+ bool operator ==(other) => _flags == other._flags; |
int get hashCode => throw new UnsupportedError('SideEffects.hashCode'); |
bool _getFlag(int position) => (_flags & (1 << position)) != 0; |
- void _setFlag(int position) { _flags |= (1 << position); } |
- void _clearFlag(int position) { _flags &= ~(1 << position); } |
+ void _setFlag(int position) { |
+ _flags |= (1 << position); |
+ } |
+ |
+ void _clearFlag(int position) { |
+ _flags &= ~(1 << position); |
+ } |
int getChangesFlags() => _flags & ((1 << FLAG_CHANGES_COUNT) - 1); |
int getDependsOnFlags() { |
@@ -49,14 +54,19 @@ class SideEffects { |
bool hasSideEffects() => getChangesFlags() != 0; |
bool dependsOnSomething() => getDependsOnFlags() != 0; |
- void setAllSideEffects() { _flags |= ((1 << FLAG_CHANGES_COUNT) - 1); } |
+ void setAllSideEffects() { |
+ _flags |= ((1 << FLAG_CHANGES_COUNT) - 1); |
+ } |
- void clearAllSideEffects() { _flags &= ~((1 << FLAG_CHANGES_COUNT) - 1); } |
+ void clearAllSideEffects() { |
+ _flags &= ~((1 << FLAG_CHANGES_COUNT) - 1); |
+ } |
void setDependsOnSomething() { |
int count = FLAG_DEPENDS_ON_COUNT - FLAG_CHANGES_COUNT; |
_flags |= (((1 << count) - 1) << FLAG_CHANGES_COUNT); |
} |
+ |
void clearAllDependencies() { |
int count = FLAG_DEPENDS_ON_COUNT - FLAG_CHANGES_COUNT; |
_flags &= ~(((1 << count) - 1) << FLAG_CHANGES_COUNT); |
@@ -65,40 +75,64 @@ class SideEffects { |
bool dependsOnStaticPropertyStore() { |
return _getFlag(FLAG_DEPENDS_ON_STATIC_PROPERTY_STORE); |
} |
+ |
void setDependsOnStaticPropertyStore() { |
_setFlag(FLAG_DEPENDS_ON_STATIC_PROPERTY_STORE); |
} |
+ |
void clearDependsOnStaticPropertyStore() { |
_clearFlag(FLAG_DEPENDS_ON_STATIC_PROPERTY_STORE); |
} |
- void setChangesStaticProperty() { _setFlag(FLAG_CHANGES_STATIC_PROPERTY); } |
+ |
+ void setChangesStaticProperty() { |
+ _setFlag(FLAG_CHANGES_STATIC_PROPERTY); |
+ } |
+ |
void clearChangesStaticProperty() { |
_clearFlag(FLAG_CHANGES_STATIC_PROPERTY); |
} |
+ |
bool changesStaticProperty() => _getFlag(FLAG_CHANGES_STATIC_PROPERTY); |
bool dependsOnIndexStore() => _getFlag(FLAG_DEPENDS_ON_INDEX_STORE); |
- void setDependsOnIndexStore() { _setFlag(FLAG_DEPENDS_ON_INDEX_STORE); } |
- void clearDependsOnIndexStore() { _clearFlag(FLAG_DEPENDS_ON_INDEX_STORE); } |
- void setChangesIndex() { _setFlag(FLAG_CHANGES_INDEX); } |
- void clearChangesIndex() { _clearFlag(FLAG_CHANGES_INDEX); } |
+ void setDependsOnIndexStore() { |
+ _setFlag(FLAG_DEPENDS_ON_INDEX_STORE); |
+ } |
+ |
+ void clearDependsOnIndexStore() { |
+ _clearFlag(FLAG_DEPENDS_ON_INDEX_STORE); |
+ } |
+ |
+ void setChangesIndex() { |
+ _setFlag(FLAG_CHANGES_INDEX); |
+ } |
+ |
+ void clearChangesIndex() { |
+ _clearFlag(FLAG_CHANGES_INDEX); |
+ } |
+ |
bool changesIndex() => _getFlag(FLAG_CHANGES_INDEX); |
bool dependsOnInstancePropertyStore() { |
return _getFlag(FLAG_DEPENDS_ON_INSTANCE_PROPERTY_STORE); |
} |
+ |
void setDependsOnInstancePropertyStore() { |
_setFlag(FLAG_DEPENDS_ON_INSTANCE_PROPERTY_STORE); |
} |
+ |
void clearDependsOnInstancePropertyStore() { |
_setFlag(FLAG_DEPENDS_ON_INSTANCE_PROPERTY_STORE); |
} |
+ |
void setChangesInstanceProperty() { |
_setFlag(FLAG_CHANGES_INSTANCE_PROPERTY); |
} |
+ |
void clearChangesInstanceProperty() { |
_clearFlag(FLAG_CHANGES_INSTANCE_PROPERTY); |
} |
+ |
bool changesInstanceProperty() => _getFlag(FLAG_CHANGES_INSTANCE_PROPERTY); |
static int computeDependsOnFlags(int flags) => flags << FLAG_CHANGES_COUNT; |