WebKit Bugzilla
Attachment 343278 Details for
Bug 186896
: Do some CoW cleanup
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
patch
c-backup.diff (text/plain), 3.56 KB, created by
Saam Barati
on 2018-06-21 14:53:06 PDT
(
hide
)
Description:
patch
Filename:
MIME Type:
Creator:
Saam Barati
Created:
2018-06-21 14:53:06 PDT
Size:
3.56 KB
patch
obsolete
>Index: Source/JavaScriptCore/ChangeLog >=================================================================== >--- Source/JavaScriptCore/ChangeLog (revision 233060) >+++ Source/JavaScriptCore/ChangeLog (working copy) >@@ -1,3 +1,25 @@ >+2018-06-21 Saam Barati <sbarati@apple.com> >+ >+ Do some CoW cleanup >+ https://bugs.webkit.org/show_bug.cgi?id=186896 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * bytecode/UnlinkedCodeBlock.h: >+ (JSC::UnlinkedCodeBlock::decompressArrayAllocationProfile): >+ We don't need to WTFMove() ints >+ >+ * dfg/DFGByteCodeParser.cpp: >+ (JSC::DFG::ByteCodeParser::parseBlock): >+ remove a TODO. >+ >+ * runtime/JSObject.cpp: >+ (JSC::JSObject::putByIndex): >+ We were checking for isCopyOnWrite even after we converted away >+ from CoW in above code. >+ (JSC::JSObject::ensureWritableInt32Slow): >+ Model this in the same way the other ensureWritableXSlow are modeled. >+ > 2018-06-20 Keith Miller <keith_miller@apple.com> > > flattenDictionaryStruture needs to zero inline storage. >Index: Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.h >=================================================================== >--- Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.h (revision 233059) >+++ Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.h (working copy) >@@ -309,7 +309,7 @@ public: > { > unsigned profile = (compressedProfile << 8) >> 8; > IndexingType recommendedIndexingType = compressedProfile >> 24; >- return std::make_tuple<unsigned, IndexingType>(WTFMove(profile), WTFMove(recommendedIndexingType)); >+ return { profile, recommendedIndexingType }; > > } > unsigned numberOfObjectAllocationProfiles() { return m_objectAllocationProfileCount; } >Index: Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp >=================================================================== >--- Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp (revision 233059) >+++ Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp (working copy) >@@ -4595,7 +4595,6 @@ void ByteCodeParser::parseBlock(unsigned > JSImmutableButterfly* immutableButterfly = frozen->cast<JSImmutableButterfly*>(); > NewArrayBufferData data { }; > data.indexingMode = immutableButterfly->indexingMode(); >- // TODO: Do I need this? > data.vectorLengthHint = immutableButterfly->toButterfly()->vectorLength(); > > set(VirtualRegister(bytecode.dst()), addToGraph(NewArrayBuffer, OpInfo(frozen), OpInfo(data.asQuadWord))); >Index: Source/JavaScriptCore/runtime/JSObject.cpp >=================================================================== >--- Source/JavaScriptCore/runtime/JSObject.cpp (revision 233059) >+++ Source/JavaScriptCore/runtime/JSObject.cpp (working copy) >@@ -851,7 +851,7 @@ bool JSObject::putByIndex(JSCell* cell, > } > > case ALL_INT32_INDEXING_TYPES: { >- if (!value.isInt32() || isCopyOnWrite(thisObject->indexingMode())) { >+ if (!value.isInt32()) { > thisObject->convertInt32ForValue(vm, value); > return putByIndex(cell, exec, propertyName, value, shouldThrow); > } >@@ -1478,9 +1478,10 @@ ContiguousJSValues JSObject::ensureWrita > { > ASSERT(inherits(vm, info())); > >- if (isCopyOnWrite(indexingMode()) && hasInt32(indexingMode())) { >+ if (isCopyOnWrite(indexingMode())) { > convertFromCopyOnWrite(vm); >- return butterfly()->contiguousInt32(); >+ if (hasInt32(indexingMode())) >+ return butterfly()->contiguousInt32(); > } > > if (structure(vm)->hijacksIndexingHeader())
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 186896
: 343278