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

Unified Diff: runtime/vm/intermediate_language.h

Issue 10543111: Optimize StoreIndexedComp on ia32&x64. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: disable store indexed specialization if FLAG_enable_type_checks Created 8 years, 6 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: runtime/vm/intermediate_language.h
diff --git a/runtime/vm/intermediate_language.h b/runtime/vm/intermediate_language.h
index 2b8d0fe31386533c1915aa92bdf2b36c4bd2d55d..0325900e75c63131ae6dee236326b6e70a525122 100644
--- a/runtime/vm/intermediate_language.h
+++ b/runtime/vm/intermediate_language.h
@@ -878,7 +878,8 @@ class StoreIndexedComp : public TemplateComputation<3> {
Value* index,
Value* value)
: token_index_(token_index),
- try_index_(try_index) {
+ try_index_(try_index),
+ receiver_type_(kIllegalObjectKind) {
inputs_[0] = array;
inputs_[1] = index;
inputs_[2] = value;
@@ -892,9 +893,18 @@ class StoreIndexedComp : public TemplateComputation<3> {
Value* index() const { return inputs_[1]; }
Value* value() const { return inputs_[2]; }
+ void set_receiver_type(ObjectKind receiver_type) {
+ receiver_type_ = receiver_type;
+ }
+
+ ObjectKind receiver_type() const {
+ return receiver_type_;
+ }
+
private:
const intptr_t token_index_;
const intptr_t try_index_;
+ ObjectKind receiver_type_;
DISALLOW_COPY_AND_ASSIGN(StoreIndexedComp);
};

Powered by Google App Engine
This is Rietveld 408576698