Index: src/hydrogen-instructions.h |
diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h |
index 6c516f2497e01ae6e63a9cca6f241d55d2929172..3c5b0501503a3c986915763ad4e8f04da40dc69a 100644 |
--- a/src/hydrogen-instructions.h |
+++ b/src/hydrogen-instructions.h |
@@ -151,6 +151,7 @@ class LChunkBuilder; |
V(StoreNamedField) \ |
V(StoreNamedGeneric) \ |
V(StringCharCodeAt) \ |
+ V(StringCharFromCode) \ |
V(StringLength) \ |
V(Sub) \ |
V(Test) \ |
@@ -3258,6 +3259,23 @@ class HStringCharCodeAt: public HBinaryOperation { |
}; |
+class HStringCharFromCode: public HUnaryOperation { |
+ public: |
+ explicit HStringCharFromCode(HValue* char_code) : HUnaryOperation(char_code) { |
+ set_representation(Representation::Tagged()); |
+ SetFlag(kUseGVN); |
+ } |
+ |
+ virtual Representation RequiredInputRepresentation(int index) const { |
+ return Representation::Integer32(); |
+ } |
+ |
+ virtual bool DataEquals(HValue* other) { return true; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(StringCharFromCode, "string_char_from_code") |
+}; |
+ |
+ |
class HStringLength: public HUnaryOperation { |
public: |
explicit HStringLength(HValue* string) : HUnaryOperation(string) { |