Index: src/arm/lithium-arm.h |
diff --git a/src/arm/lithium-arm.h b/src/arm/lithium-arm.h |
index a14150814375ee0c9625f09bab54a18bdf9ac84a..48febdf7a265c4b25d207f6db33606a37304a3f5 100644 |
--- a/src/arm/lithium-arm.h |
+++ b/src/arm/lithium-arm.h |
@@ -67,6 +67,7 @@ class LCodeGen; |
// LModI |
// LMulI |
// LShiftI |
+// LStringCharCodeAt |
// LSubI |
// LCallConstantFunction |
// LCallFunction |
@@ -136,6 +137,7 @@ class LCodeGen; |
// LReturn |
// LSmiTag |
// LStoreGlobal |
+// LStringLength |
// LTaggedToI |
// LThrow |
// LTypeof |
@@ -251,6 +253,8 @@ class LCodeGen; |
V(StoreNamedField) \ |
V(StoreNamedGeneric) \ |
V(SubI) \ |
+ V(StringCharCodeAt) \ |
+ V(StringLength) \ |
V(TaggedToI) \ |
V(Throw) \ |
V(Typeof) \ |
@@ -1580,6 +1584,28 @@ class LStoreKeyedGeneric: public LStoreKeyed { |
}; |
+class LStringCharCodeAt: public LBinaryOperation { |
+ public: |
+ LStringCharCodeAt(LOperand* string, LOperand* index) |
+ : LBinaryOperation(string, index) {} |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(StringCharCodeAt, "string-char-code-at") |
+ DECLARE_HYDROGEN_ACCESSOR(StringCharCodeAt) |
+ |
+ LOperand* string() { return left(); } |
+ LOperand* index() { return right(); } |
+}; |
+ |
+ |
+class LStringLength: public LUnaryOperation { |
+ public: |
+ explicit LStringLength(LOperand* string) : LUnaryOperation(string) {} |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(StringLength, "string-length") |
+ DECLARE_HYDROGEN_ACCESSOR(StringLength) |
+}; |
+ |
+ |
class LCheckFunction: public LUnaryOperation { |
public: |
explicit LCheckFunction(LOperand* use) : LUnaryOperation(use) { } |