| Index: src/hydrogen-instructions.h
|
| diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h
|
| index 80773bf14789e8524dc4c46184588641d6396495..66050f1398c1da307365f11854be912f3a39afc3 100644
|
| --- a/src/hydrogen-instructions.h
|
| +++ b/src/hydrogen-instructions.h
|
| @@ -208,7 +208,8 @@ class LChunkBuilder;
|
| V(GlobalVars) \
|
| V(InobjectFields) \
|
| V(OsrEntries) \
|
| - V(ExternalMemory)
|
| + V(ExternalMemory) \
|
| + V(StringChars)
|
|
|
|
|
| #define DECLARE_ABSTRACT_INSTRUCTION(type) \
|
| @@ -542,7 +543,7 @@ class DecompositionResult V8_FINAL BASE_EMBEDDED {
|
| };
|
|
|
|
|
| -typedef EnumSet<GVNFlag> GVNFlagSet;
|
| +typedef EnumSet<GVNFlag, int64_t> GVNFlagSet;
|
|
|
|
|
| class HValue : public ZoneObject {
|
| @@ -6750,6 +6751,7 @@ class HStringCharCodeAt V8_FINAL : public HTemplateInstruction<3> {
|
| set_representation(Representation::Integer32());
|
| SetFlag(kUseGVN);
|
| SetGVNFlag(kDependsOnMaps);
|
| + SetGVNFlag(kDependsOnStringChars);
|
| SetGVNFlag(kChangesNewSpacePromotion);
|
| }
|
|
|
| @@ -7047,6 +7049,7 @@ class HSeqStringSetChar V8_FINAL : public HTemplateInstruction<3> {
|
| SetOperandAt(1, index);
|
| SetOperandAt(2, value);
|
| set_representation(Representation::Tagged());
|
| + SetGVNFlag(kChangesStringChars);
|
| }
|
|
|
| String::Encoding encoding_;
|
|
|