diff options
author | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-03-26 18:30:57 +0100 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-03-26 18:42:38 +0100 |
commit | 851cfd198bc01020cd411d4f1cd6586222700269 (patch) | |
tree | a8e09dd65cc3e27544dd221c0b99daabd5f14d08 /js | |
parent | 1e1525c44c23bde16102a64e685e02a9ab6825cc (diff) | |
download | UXP-851cfd198bc01020cd411d4f1cd6586222700269.tar UXP-851cfd198bc01020cd411d4f1cd6586222700269.tar.gz UXP-851cfd198bc01020cd411d4f1cd6586222700269.tar.lz UXP-851cfd198bc01020cd411d4f1cd6586222700269.tar.xz UXP-851cfd198bc01020cd411d4f1cd6586222700269.zip |
Simplify some alias sets in IonMonkey.v2019.03.27
Diffstat (limited to 'js')
-rw-r--r-- | js/src/jit/AliasAnalysisShared.cpp | 3 | ||||
-rw-r--r-- | js/src/jit/MIR.h | 7 |
2 files changed, 4 insertions, 6 deletions
diff --git a/js/src/jit/AliasAnalysisShared.cpp b/js/src/jit/AliasAnalysisShared.cpp index ae28327ca..81c0fd067 100644 --- a/js/src/jit/AliasAnalysisShared.cpp +++ b/js/src/jit/AliasAnalysisShared.cpp @@ -102,7 +102,6 @@ GetObject(const MDefinition* ins) case MDefinition::Op_SetDisjointTypedElements: case MDefinition::Op_ArrayPopShift: case MDefinition::Op_ArrayPush: - case MDefinition::Op_ArraySlice: case MDefinition::Op_LoadTypedArrayElementHole: case MDefinition::Op_StoreTypedArrayElementHole: case MDefinition::Op_LoadFixedSlot: @@ -126,6 +125,7 @@ GetObject(const MDefinition* ins) object = ins->getOperand(0); break; case MDefinition::Op_GetPropertyCache: + case MDefinition::Op_CallGetProperty: case MDefinition::Op_LoadTypedArrayElementStatic: case MDefinition::Op_StoreTypedArrayElementStatic: case MDefinition::Op_GetDOMProperty: @@ -148,6 +148,7 @@ GetObject(const MDefinition* ins) case MDefinition::Op_WasmLoadGlobalVar: case MDefinition::Op_WasmStoreGlobalVar: case MDefinition::Op_ArrayJoin: + case MDefinition::Op_ArraySlice: return nullptr; default: #ifdef DEBUG diff --git a/js/src/jit/MIR.h b/js/src/jit/MIR.h index b2e84322f..fb0f22fc3 100644 --- a/js/src/jit/MIR.h +++ b/js/src/jit/MIR.h @@ -9910,10 +9910,6 @@ class MArraySlice return unboxedType_; } - AliasSet getAliasSet() const override { - return AliasSet::Store(AliasSet::BoxedOrUnboxedElements(unboxedType()) | - AliasSet::ObjectFields); - } bool possiblyCalls() const override { return true; } @@ -11837,7 +11833,8 @@ class MCallGetProperty AliasSet getAliasSet() const override { if (!idempotent_) return AliasSet::Store(AliasSet::Any); - return AliasSet::None(); + return AliasSet::Load(AliasSet::ObjectFields | AliasSet::FixedSlot | + AliasSet::DynamicSlot); } bool possiblyCalls() const override { return true; |