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

Unified Diff: src/hydrogen-instructions.h

Issue 1016803002: Remove PropertyCell space (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 9 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 | « src/hydrogen-gvn.cc ('k') | src/hydrogen-instructions.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/hydrogen-instructions.h
diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h
index f3a353c5ea16a95a78d2ef9916994c7f96419bf9..388c079742facfc0b7ba38c4dbae1ff825eb6c6c 100644
--- a/src/hydrogen-instructions.h
+++ b/src/hydrogen-instructions.h
@@ -117,7 +117,6 @@ class LChunkBuilder;
V(LoadContextSlot) \
V(LoadFieldByIndex) \
V(LoadFunctionPrototype) \
- V(LoadGlobalCell) \
V(LoadGlobalGeneric) \
V(LoadKeyed) \
V(LoadKeyedGeneric) \
@@ -146,7 +145,6 @@ class LChunkBuilder;
V(StoreCodeEntry) \
V(StoreContextSlot) \
V(StoreFrameContext) \
- V(StoreGlobalCell) \
V(StoreKeyed) \
V(StoreKeyedGeneric) \
V(StoreNamedField) \
@@ -3501,7 +3499,7 @@ class HConstant FINAL : public HTemplateInstruction<0> {
bool IsCell() const {
InstanceType instance_type = GetInstanceType();
- return instance_type == CELL_TYPE || instance_type == PROPERTY_CELL_TYPE;
+ return instance_type == CELL_TYPE;
}
Representation RequiredInputRepresentation(int index) OVERRIDE {
@@ -5414,47 +5412,6 @@ class HUnknownOSRValue FINAL : public HTemplateInstruction<0> {
};
-class HLoadGlobalCell FINAL : public HTemplateInstruction<0> {
- public:
- DECLARE_INSTRUCTION_FACTORY_P2(HLoadGlobalCell, Handle<Cell>,
- PropertyDetails);
-
- Unique<Cell> cell() const { return cell_; }
- // TODO(dcarney): remove this.
- bool RequiresHoleCheck() const { return false; }
-
- std::ostream& PrintDataTo(std::ostream& os) const OVERRIDE; // NOLINT
-
- intptr_t Hashcode() OVERRIDE { return cell_.Hashcode(); }
-
- void FinalizeUniqueness() OVERRIDE { cell_ = Unique<Cell>(cell_.handle()); }
-
- Representation RequiredInputRepresentation(int index) OVERRIDE {
- return Representation::None();
- }
-
- DECLARE_CONCRETE_INSTRUCTION(LoadGlobalCell)
-
- protected:
- bool DataEquals(HValue* other) OVERRIDE {
- return cell_ == HLoadGlobalCell::cast(other)->cell_;
- }
-
- private:
- HLoadGlobalCell(Handle<Cell> cell, PropertyDetails details)
- : cell_(Unique<Cell>::CreateUninitialized(cell)), details_(details) {
- set_representation(Representation::Tagged());
- SetFlag(kUseGVN);
- SetDependsOnFlag(kGlobalVars);
- }
-
- bool IsDeletable() const OVERRIDE { return true; }
-
- Unique<Cell> cell_;
- PropertyDetails details_;
-};
-
-
class HLoadGlobalGeneric FINAL : public HTemplateInstruction<2> {
public:
DECLARE_INSTRUCTION_WITH_CONTEXT_FACTORY_P3(HLoadGlobalGeneric, HValue*,
@@ -5797,44 +5754,6 @@ inline PointersToHereCheck PointersToHereCheckForObject(HValue* object,
}
-class HStoreGlobalCell FINAL : public HUnaryOperation {
- public:
- DECLARE_INSTRUCTION_FACTORY_P3(HStoreGlobalCell, HValue*,
- Handle<PropertyCell>, PropertyDetails);
-
- Unique<PropertyCell> cell() const { return cell_; }
- // TODO(dcarney): remove
- bool RequiresHoleCheck() const { return false; }
- bool NeedsWriteBarrier() {
- return StoringValueNeedsWriteBarrier(value());
- }
-
- void FinalizeUniqueness() OVERRIDE {
- cell_ = Unique<PropertyCell>(cell_.handle());
- }
-
- Representation RequiredInputRepresentation(int index) OVERRIDE {
- return Representation::Tagged();
- }
- std::ostream& PrintDataTo(std::ostream& os) const OVERRIDE; // NOLINT
-
- DECLARE_CONCRETE_INSTRUCTION(StoreGlobalCell)
-
- private:
- HStoreGlobalCell(HValue* value,
- Handle<PropertyCell> cell,
- PropertyDetails details)
- : HUnaryOperation(value),
- cell_(Unique<PropertyCell>::CreateUninitialized(cell)),
- details_(details) {
- SetChangesFlag(kGlobalVars);
- }
-
- Unique<PropertyCell> cell_;
- PropertyDetails details_;
-};
-
-
class HLoadContextSlot FINAL : public HUnaryOperation {
public:
enum Mode {
@@ -6925,14 +6844,6 @@ class HStoreNamedField FINAL : public HTemplateInstruction<3> {
SetChangesFlag(kMaps);
}
- void MarkReceiverAsCell() {
- bit_field_ = ReceiverIsCellField::update(bit_field_, true);
- }
-
- bool receiver_is_cell() const {
- return ReceiverIsCellField::decode(bit_field_);
- }
-
bool NeedsWriteBarrier() const {
DCHECK(!field_representation().IsDouble() ||
(FLAG_unbox_double_fields && access_.IsInobject()) ||
@@ -6941,7 +6852,6 @@ class HStoreNamedField FINAL : public HTemplateInstruction<3> {
if (field_representation().IsSmi()) return false;
if (field_representation().IsInteger32()) return false;
if (field_representation().IsExternal()) return false;
- if (receiver_is_cell()) return false;
return StoringValueNeedsWriteBarrier(value()) &&
ReceiverObjectNeedsWriteBarrier(object(), value(), dominator());
}
@@ -7001,7 +6911,6 @@ class HStoreNamedField FINAL : public HTemplateInstruction<3> {
class HasTransitionField : public BitField<bool, 0, 1> {};
class StoreModeField : public BitField<StoreFieldOrKeyedMode, 1, 1> {};
- class ReceiverIsCellField : public BitField<bool, 2, 1> {};
HObjectAccess access_;
HValue* dominator_;
« no previous file with comments | « src/hydrogen-gvn.cc ('k') | src/hydrogen-instructions.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698