| 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) {
|
|
|