Don't double smi-tag the mask used to check read-only / field mode in the dictionary...
authorverwaest <verwaest@chromium.org>
Mon, 24 Nov 2014 19:16:16 +0000 (11:16 -0800)
committerCommit bot <commit-bot@chromium.org>
Mon, 24 Nov 2014 19:16:26 +0000 (19:16 +0000)
BUG=

Review URL: https://codereview.chromium.org/757673002

Cr-Commit-Position: refs/heads/master@{#25493}

src/ic/x64/ic-x64.cc

index f125322..c734560 100644 (file)
@@ -119,9 +119,8 @@ static void GenerateDictionaryStore(MacroAssembler* masm, Label* miss_label,
       NameDictionary::kElementsStartIndex * kPointerSize;
   const int kDetailsOffset = kElementsStartOffset + 2 * kPointerSize;
   const int kTypeAndReadOnlyMask =
-      (PropertyDetails::TypeField::kMask |
-       PropertyDetails::AttributesField::encode(READ_ONLY))
-      << kSmiTagSize;
+      PropertyDetails::TypeField::kMask |
+      PropertyDetails::AttributesField::encode(READ_ONLY);
   __ Test(Operand(elements, scratch1, times_pointer_size,
                   kDetailsOffset - kHeapObjectTag),
           Smi::FromInt(kTypeAndReadOnlyMask));