| 2018-10-30 David Kilzer <ddkilzer@apple.com> |
| |
| XSLTProcessor should limit max transform depth |
| <https://webkit.org/b/191075> |
| <rdar://problem/45531453> |
| |
| Reviewed by Alex Christensen. |
| |
| * wtf/cocoa/SoftLinking.h: |
| (SOFT_LINK_VARIABLE_FOR_HEADER): |
| (SOFT_LINK_VARIABLE_FOR_SOURCE): |
| - Add macros for non-constant global variables. |
| |
| 2018-10-30 Alexey Proskuryakov <ap@apple.com> |
| |
| Clean up some obsolete MAX_ALLOWED macros |
| https://bugs.webkit.org/show_bug.cgi?id=190916 |
| |
| Reviewed by Tim Horton. |
| |
| * WTF.xcodeproj/project.pbxproj: |
| * wtf/PlatformMac.cmake: |
| * wtf/spi/cocoa/NSMapTableSPI.h: Removed. This was only needed for old SDKs. |
| |
| 2018-10-29 Mark Lam <mark.lam@apple.com> |
| |
| Correctly detect string overflow when using the 'Function' constructor. |
| https://bugs.webkit.org/show_bug.cgi?id=184883 |
| <rdar://problem/36320331> |
| |
| Reviewed by Saam Barati. |
| |
| 1. Enhanced StringBuilder so that it supports 2 modes of behavior: |
| a. StringBuilder::OverflowHandler::CrashOnOverflow. |
| b. StringBuilder::OverflowHandler::RecordOverflow. |
| |
| CrashOnOverflow will crash the moment an overflow or failure to allocate |
| memory is detected. |
| |
| RecordOverflow will make StringBuilder::hasOverflowed() return true when an |
| overflow or failure to allocate memory is detected. However, if the user |
| invokes toString(), toStringPreserveCapacity(), toAtomicString(), length(), |
| capacity(), isEmpty(), characters8(), or characters16(), then the StringBuilder |
| will crash regardless because these methods can only meaningfully do their |
| work and return a result if and only if the builder has not overflowed. |
| |
| By default, the StringBuilder crashes on overflow (the old behavior) unless it |
| is explicitly constructed with the StringBuilder::OverflowHandler::RecordOverflow |
| enum. |
| |
| Design note: |
| |
| The StringBuilder can only be put in 1 of the 2 modes at the time of |
| construction. This means that we could have implemented it as a template |
| that is parameterized on an OverflowHandler class (like CheckedArithmetic) |
| instead of using a runtime check in the ConditionalCrashOnOverflow handler. |
| |
| However, I was not able to get clang to export the explicitly instantiated |
| instances (despite the methods having being decorated with WTF_EXPORT_PRIVATE). |
| Since the StringBuilder is a transient object (not stored for a long time on |
| the heap), and the runtime check of the boolean is not that costly compared |
| to other work that StringBuilder routinely does (e.g. memcpy), using the |
| new ConditionalCrashOnOverflow (which does a runtime check to determine to |
| crash or not on overflow) is fine. |
| |
| When clang is able to export explicitly instantiated template methods, we can |
| templatize StringBuilder and do away with ConditionalCrashOnOverflow. |
| See https://bugs.webkit.org/show_bug.cgi?id=191050. |
| |
| To support the above, we also did: |
| |
| 2. Enhanced all StringBuilder append and buffer allocation methods to be able to |
| fail without crashing. This also meant that ... |
| |
| 3. Added tryReallocate() support to StringImpl. tryRealloc() was added to |
| FastMalloc, and bmalloc (and related peers) to enable this. |
| |
| 4. Added ConditionalCrashOnOverflow, which can choose at runtime whether to behave |
| like CrashOnOverflow or RecordOverflow. |
| |
| * wtf/CheckedArithmetic.h: |
| (WTF::ConditionalCrashOnOverflow::overflowed): |
| (WTF::ConditionalCrashOnOverflow::shouldCrashOnOverflow const): |
| (WTF::ConditionalCrashOnOverflow::setShouldCrashOnOverflow): |
| (WTF::ConditionalCrashOnOverflow::hasOverflowed const): |
| (WTF::ConditionalCrashOnOverflow::clearOverflow): |
| (WTF::ConditionalCrashOnOverflow::crash): |
| (WTF::RecordOverflow::overflowed): |
| (WTF::Checked::unsafeGet const): |
| * wtf/FastMalloc.cpp: |
| (WTF::tryFastRealloc): |
| * wtf/FastMalloc.h: |
| * wtf/text/StringBuilder.cpp: |
| (WTF::expandedCapacity): |
| (WTF::StringBuilder::reifyString const): |
| (WTF::StringBuilder::resize): |
| (WTF::StringBuilder::allocateBuffer): |
| (WTF::StringBuilder::allocateBufferUpConvert): |
| (WTF::StringBuilder::reallocateBuffer<LChar>): |
| (WTF::StringBuilder::reallocateBuffer<UChar>): |
| (WTF::StringBuilder::reserveCapacity): |
| (WTF::StringBuilder::appendUninitialized): |
| (WTF::StringBuilder::appendUninitializedSlow): |
| (WTF::StringBuilder::append): |
| (WTF::StringBuilder::canShrink const): |
| (WTF::StringBuilder::shrinkToFit): |
| * wtf/text/StringBuilder.h: |
| (WTF::StringBuilder::StringBuilder): |
| (WTF::StringBuilder::didOverflow): |
| (WTF::StringBuilder::hasOverflowed const): |
| (WTF::StringBuilder::crashesOnOverflow const): |
| (WTF::StringBuilder::append): |
| (WTF::StringBuilder::toString): |
| (WTF::StringBuilder::toStringPreserveCapacity const): |
| (WTF::StringBuilder::toAtomicString const): |
| (WTF::StringBuilder::length const): |
| (WTF::StringBuilder::capacity const): |
| (WTF::StringBuilder::operator[] const): |
| (WTF::StringBuilder::swap): |
| (WTF::StringBuilder::getBufferCharacters<UChar>): |
| * wtf/text/StringBuilderJSON.cpp: |
| (WTF::StringBuilder::appendQuotedJSONString): |
| * wtf/text/StringImpl.cpp: |
| (WTF::StringImpl::reallocateInternal): |
| (WTF::StringImpl::reallocate): |
| (WTF::StringImpl::tryReallocate): |
| * wtf/text/StringImpl.h: |
| |
| 2018-10-29 Tim Horton <timothy_horton@apple.com> |
| |
| Modernize WebKit nibs and lprojs for localization's sake |
| https://bugs.webkit.org/show_bug.cgi?id=190911 |
| <rdar://problem/45349466> |
| |
| Reviewed by Dan Bernstein. |
| |
| * WTF.xcodeproj/project.pbxproj: |
| English->en |
| |
| 2018-10-29 Tadeu Zagallo <tzagallo@apple.com> |
| |
| New bytecode format for JSC |
| https://bugs.webkit.org/show_bug.cgi?id=187373 |
| <rdar://problem/44186758> |
| |
| Reviewed by Filip Pizlo. |
| |
| * wtf/Forward.h: Fix WTF_LAZY_FOR_EACH_TERM on MSVC and add WTF_LAZY_HAS_REST to check whether |
| a macro was passed multiple arguments |
| * wtf/Platform.h: Force ENABLE_JIT=false on all 32-bit platforms |
| * wtf/Vector.h: |
| (WTF::minCapacity>::insertVector): Allow vectors with different overflow handlers to be passed to insertVector |
| |
| 2018-10-28 Geoffrey Garen <ggaren@apple.com> |
| |
| HashMap should support selecting a random entry |
| https://bugs.webkit.org/show_bug.cgi?id=190814 |
| |
| Reviewed by Ryosuke Niwa. |
| |
| * wtf/HashTable.h: |
| (WTF::HashTable::random): |
| (WTF::HashTable::random const): Merge the empty and deleted checks, and |
| use more idiomatic addressing. |
| |
| 2018-10-26 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r237479 and r237484. |
| https://bugs.webkit.org/show_bug.cgi?id=190978 |
| |
| broke JSC on iOS (Requested by tadeuzagallo on #webkit). |
| |
| Reverted changesets: |
| |
| "New bytecode format for JSC" |
| https://bugs.webkit.org/show_bug.cgi?id=187373 |
| https://trac.webkit.org/changeset/237479 |
| |
| "Gardening: Build fix after r237479." |
| https://bugs.webkit.org/show_bug.cgi?id=187373 |
| https://trac.webkit.org/changeset/237484 |
| |
| 2018-10-26 Tadeu Zagallo <tzagallo@apple.com> |
| |
| New bytecode format for JSC |
| https://bugs.webkit.org/show_bug.cgi?id=187373 |
| <rdar://problem/44186758> |
| |
| Reviewed by Filip Pizlo. |
| |
| * wtf/Forward.h: Fix WTF_LAZY_FOR_EACH_TERM on MSVC and add WTF_LAZY_HAS_REST to check whether |
| a macro was passed multiple arguments |
| * wtf/Platform.h: Force ENABLE_JIT=false on all 32-bit platforms |
| * wtf/Vector.h: |
| (WTF::minCapacity>::insertVector): Allow vectors with different overflow handlers to be passed to insertVector |
| |
| 2018-10-26 Geoffrey Garen <ggaren@apple.com> |
| |
| HashMap should support selecting a random entry |
| https://bugs.webkit.org/show_bug.cgi?id=190814 |
| |
| Reviewed by Antti Koivisto. |
| |
| * wtf/HashTable.h: |
| (WTF::HashTable::random): |
| (WTF::HashTable::random const): Draw a new random bucket any time we |
| have a miss, to avoid bias caused by lopsided tables. |
| |
| 2018-10-26 Antti Koivisto <antti@apple.com> |
| |
| hashSet.remove(hashSet.random()) doesn't build |
| https://bugs.webkit.org/show_bug.cgi?id=190953 |
| |
| Reviewed by Chris Dumez. |
| |
| * wtf/HashSet.h: |
| |
| Remove non-const random(). HashSet only returns const iterators (it is immutable via iterator). |
| |
| * wtf/HashTable.h: |
| (WTF::HashTable::random const): |
| |
| Invoke const_iterator() by using static_cast<> instead of trying to do it directly. |
| |
| 2018-10-26 Alicia Boya GarcĂa <aboya@igalia.com> |
| |
| [MSE][WTF][Media] Invalid MediaTime should be falsy |
| https://bugs.webkit.org/show_bug.cgi?id=190893 |
| |
| Reviewed by Jer Noble. |
| |
| This patch modifies the definition of MediaTime so that invalid times |
| are evaluated to false in the context of a boolean expression. |
| |
| * wtf/MediaTime.cpp: |
| (WTF::MediaTime::operator! const): |
| (WTF::MediaTime::operator bool const): |
| |
| 2018-10-26 Keith Miller <keith_miller@apple.com> |
| |
| Some internal projects include wtf headers and build with C++11 |
| https://bugs.webkit.org/show_bug.cgi?id=190791 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| C++11 doesn't support constexpr functions that contain |
| statements. This patch removes getLSBSet set from builds before |
| C++14 to avoid this for now. |
| |
| * wtf/MathExtras.h: |
| (getLSBSet): |
| |
| 2018-10-25 Ross Kirsling <ross.kirsling@sony.com> |
| |
| Cleanup: inline constexpr is redundant as constexpr implies inline |
| https://bugs.webkit.org/show_bug.cgi?id=190819 |
| |
| Reviewed by Mark Lam. |
| |
| * wtf/Bitmap.h: |
| (WTF::WordType>::Bitmap): |
| * wtf/LEBDecoder.h: |
| (WTF::LEBDecoder::maxByteLength): |
| * wtf/MathExtras.h: |
| (defaultMinimumForClamp): |
| (defaultMaximumForClamp): |
| (clampToAccepting64): |
| (isLessThan): |
| (isLessThanEqual): |
| (isGreaterThan): |
| (isGreaterThanEqual): |
| (WTF::roundUpToPowerOfTwo): |
| (WTF::maskForSize): |
| * wtf/Optional.h: |
| * wtf/PtrTag.h: |
| (WTF::tagCodePtr): |
| (WTF::untagCodePtr): |
| (WTF::retagCodePtr): |
| (WTF::removeCodePtrTag): |
| * wtf/StdLibExtras.h: |
| (WTF::roundUpToMultipleOf): |
| * wtf/Variant.h: |
| (WTF::operator==): |
| (WTF::operator!=): |
| (WTF::operator>=): |
| (WTF::operator<=): |
| (WTF::operator>): |
| (WTF::operator<): |
| * wtf/text/StringImpl.h: |
| (WTF::StringImplShape::StringImplShape): |
| (WTF::StringImpl::StaticStringImpl::StaticStringImpl): |
| |
| 2018-10-25 Geoffrey Garen <ggaren@apple.com> |
| |
| HashMap should support selecting a random entry |
| https://bugs.webkit.org/show_bug.cgi?id=190814 |
| |
| Reviewed by Antti Koivisto. |
| |
| In some cases, remove(begin()) is not quite good enough as a random |
| eviction strategy. (See https://bugs.webkit.org/show_bug.cgi?id=190792.) |
| So, let's support real random eviction. |
| |
| (And by "real" I mean "pseudo".) |
| |
| * wtf/HashCountedSet.h: |
| * wtf/HashMap.h: |
| * wtf/HashSet.h: |
| * wtf/ListHashSet.h: |
| (WTF::ListHashSet::random): |
| (WTF::ListHashSet::random const): |
| * wtf/LoggingHashMap.h: |
| * wtf/LoggingHashSet.h: Plumb through the random() iterator. |
| |
| * wtf/HashTable.h: |
| (WTF::HashTable::random): |
| (WTF::HashTable::random const): Implement the random() iterator. |
| makeIterator() already supports starting from any bucket, so this is |
| pretty easy. |
| |
| In the subtle case where we select end(), we choose to wrap around and |
| return begin(). We expect that clients don't really think of the end() |
| bucket as being in the domain of the random search. Also, we don't want |
| to annoy clients who know their tables are non-empty with needless |
| checks for end(). |
| |
| * wtf/RandomNumber.cpp: |
| (WTF::weakRandomUint32): |
| * wtf/RandomNumber.h: Added a free function for weak random numbers so |
| that clients that want cheap random numbers aren't required to allocate |
| storage for a WeakRandom generator. |
| |
| 2018-10-24 Megan Gardner <megan_gardner@apple.com> |
| |
| Turn on Conic Gradients |
| https://bugs.webkit.org/show_bug.cgi?id=190810 |
| |
| Reviewed by Tim Horton. |
| |
| * wtf/FeatureDefines.h: |
| |
| 2018-10-24 Christopher Reid <chris.reid@sony.com> |
| |
| [Win] Add function call name information to stack traces |
| https://bugs.webkit.org/show_bug.cgi?id=190761 |
| |
| Reviewed by Fujii Hironori. |
| |
| Add symbol information to stack traces using dbghelp.dll |
| This library will use symbols files from these sources: |
| - The current working directory |
| - The directory containing the application's executable |
| - _NT_SYMBOL_PATH environment variable |
| - _NT_ALTERNATE_SYMBOL_PATH environment variable |
| |
| This functionality is currently only enabled in debug mode since dbghelp is not threadsafe. |
| The DbgHelper class attempts to synchronize calls to dbghelp.dll but external code |
| can still attempt to call the library at the same time as WebKit. |
| |
| * wtf/CMakeLists.txt: |
| * wtf/PlatformWin.cmake: |
| * wtf/StackTrace.cpp: |
| * wtf/win/DbgHelperWin.cpp: Added. |
| * wtf/win/DbgHelperWin.h: Added. |
| |
| 2018-10-22 Alexey Proskuryakov <ap@apple.com> |
| |
| Really prevent PLATFORM(IOS) from being used |
| https://bugs.webkit.org/show_bug.cgi?id=190813 |
| |
| Reviewed by Tim Horton. |
| |
| * wtf/Platform.h: This relies on -Wundef, which we have enabled. |
| |
| 2018-10-22 Chris Dumez <cdumez@apple.com> |
| |
| Deque's contains() and findIf() should be const |
| https://bugs.webkit.org/show_bug.cgi?id=190796 |
| |
| Reviewed by Antti Koivisto. |
| |
| Deque's contains() and findIf() should be const as they do not modify the container. |
| |
| * wtf/Deque.h: |
| (WTF::inlineCapacity>::findIf): |
| (WTF::inlineCapacity>::findIf const): |
| (WTF::inlineCapacity>::contains const): |
| (WTF::inlineCapacity>::contains): Deleted. |
| |
| 2018-10-18 Alicia Boya GarcĂa <aboya@igalia.com> |
| |
| [Media] Use nanoseconds as MaximumTimeScale |
| https://bugs.webkit.org/show_bug.cgi?id=190631 |
| |
| 1e9 is a much more useful timescale than the previous one 2^31-1. |
| Unlike 2^31-1, which is a prime number, nanosecond scale is pretty |
| common among some formats like WebM and frameworks like GStreamer |
| where base 10 timescale is common... and it's those big timescales the |
| ones that are usually scaled up to MaximumTimeScale. |
| |
| Reviewed by Jer Noble. |
| |
| * wtf/MediaTime.cpp: |
| |
| 2018-10-18 Alexey Proskuryakov <ap@apple.com> |
| |
| Remove PLATFORM(IOS) for now |
| https://bugs.webkit.org/show_bug.cgi?id=190737 |
| |
| Reviewed by Tim Horton. |
| |
| * wtf/Platform.h: |
| |
| 2018-10-18 Alexey Proskuryakov <ap@apple.com> |
| |
| Switch from PLATFORM(IOS) to PLATFORM(IOS_FAMILY) |
| https://bugs.webkit.org/show_bug.cgi?id=190729 |
| |
| Reviewed by Tim Horton. |
| |
| * wtf/Assertions.h: |
| * wtf/FeatureDefines.h: |
| * wtf/InlineASM.h: |
| * wtf/MemoryPressureHandler.cpp: |
| (WTF::thresholdForPolicy): |
| * wtf/Platform.h: |
| * wtf/cocoa/MemoryPressureHandlerCocoa.mm: |
| (WTF::MemoryPressureHandler::install): |
| (WTF::MemoryPressureHandler::respondToMemoryPressure): |
| * wtf/spi/cocoa/NSMapTableSPI.h: |
| * wtf/spi/darwin/XPCSPI.h: |
| * wtf/text/StringCommon.h: |
| * wtf/text/TextBreakIterator.cpp: |
| * wtf/text/TextBreakIterator.h: |
| * wtf/unicode/icu/CollatorICU.cpp: |
| (WTF::copyDefaultLocale): |
| |
| 2018-10-18 Alex Christensen <achristensen@webkit.org> |
| |
| Clean up FrameLoader two-state enums |
| https://bugs.webkit.org/show_bug.cgi?id=190731 |
| |
| Reviewed by Chris Dumez. |
| |
| * wtf/EnumTraits.h: |
| (WTF::isValidEnum): |
| |
| 2018-10-17 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r237208. |
| https://bugs.webkit.org/show_bug.cgi?id=190691 |
| |
| Caused the API test that was changed to failure continuously |
| (Requested by Truitt on #webkit). |
| |
| Reverted changeset: |
| |
| "[Media] Use nanoseconds as MaximumTimeScale" |
| https://bugs.webkit.org/show_bug.cgi?id=190631 |
| https://trac.webkit.org/changeset/237208 |
| |
| 2018-10-16 Alicia Boya GarcĂa <aboya@igalia.com> |
| |
| [Media] Use nanoseconds as MaximumTimeScale |
| https://bugs.webkit.org/show_bug.cgi?id=190631 |
| |
| 1e9 is a much more useful timescale than the previous one 2^31-1. |
| Unlike 2^31-1, which is a prime number, nanosecond scale is pretty |
| common among some formats like WebM and frameworks like GStreamer |
| where base 10 timescale is common... and it's those big timescales the |
| ones that are usually scaled up to MaximumTimeScale. |
| |
| Reviewed by Jer Noble. |
| |
| * wtf/MediaTime.cpp: |
| |
| 2018-10-15 Keith Miller <keith_miller@apple.com> |
| |
| Support arm64 CPUs with a 32-bit address space |
| https://bugs.webkit.org/show_bug.cgi?id=190273 |
| |
| Reviewed by Michael Saboff. |
| |
| Use WTF_CPU_ADDRESS64/32 to decide if the system is running on arm64_32. |
| |
| * wtf/MathExtras.h: |
| (getLSBSet): |
| * wtf/Platform.h: |
| |
| 2018-10-15 Timothy Hatcher <timothy@apple.com> |
| |
| Add support for prefers-color-scheme media query |
| https://bugs.webkit.org/show_bug.cgi?id=190499 |
| rdar://problem/45212025 |
| |
| Reviewed by Dean Jackson. |
| |
| * wtf/FeatureDefines.h: Added ENABLE_DARK_MODE_CSS. |
| |
| 2018-10-15 Saam barati <sbarati@apple.com> |
| |
| Emit fjcvtzs on ARM64E on Darwin |
| https://bugs.webkit.org/show_bug.cgi?id=184023 |
| |
| Reviewed by Yusuke Suzuki and Filip Pizlo. |
| |
| * wtf/Platform.h: |
| |
| 2018-10-15 Alex Christensen <achristensen@webkit.org> |
| |
| Use pragma once in WTF |
| https://bugs.webkit.org/show_bug.cgi?id=190527 |
| |
| Reviewed by Chris Dumez. |
| |
| We also need to consistently include wtf headers from within wtf so we can build wtf without |
| symbol redefinition errors from including the copy in Source and the copy in the build directory. |
| |
| * wtf/ASCIICType.h: |
| * wtf/Assertions.cpp: |
| * wtf/Assertions.h: |
| * wtf/Atomics.h: |
| * wtf/AutomaticThread.cpp: |
| * wtf/AutomaticThread.h: |
| * wtf/BackwardsGraph.h: |
| * wtf/Bag.h: |
| * wtf/BagToHashMap.h: |
| * wtf/BitVector.cpp: |
| * wtf/BitVector.h: |
| * wtf/Bitmap.h: |
| * wtf/BloomFilter.h: |
| * wtf/Box.h: |
| * wtf/BubbleSort.h: |
| * wtf/BumpPointerAllocator.h: |
| * wtf/ByteOrder.h: |
| * wtf/CPUTime.cpp: |
| * wtf/CallbackAggregator.h: |
| * wtf/CheckedArithmetic.h: |
| * wtf/CheckedBoolean.h: |
| * wtf/ClockType.cpp: |
| * wtf/ClockType.h: |
| * wtf/CommaPrinter.h: |
| * wtf/CompilationThread.cpp: |
| * wtf/CompilationThread.h: |
| * wtf/Compiler.h: |
| * wtf/ConcurrentPtrHashSet.cpp: |
| * wtf/ConcurrentVector.h: |
| * wtf/Condition.h: |
| * wtf/CountingLock.cpp: |
| * wtf/CrossThreadTaskHandler.cpp: |
| * wtf/CryptographicUtilities.cpp: |
| * wtf/CryptographicUtilities.h: |
| * wtf/CryptographicallyRandomNumber.cpp: |
| * wtf/CryptographicallyRandomNumber.h: |
| * wtf/CurrentTime.cpp: |
| * wtf/DataLog.cpp: |
| * wtf/DataLog.h: |
| * wtf/DateMath.cpp: |
| * wtf/DateMath.h: |
| * wtf/DecimalNumber.cpp: |
| * wtf/DecimalNumber.h: |
| * wtf/Deque.h: |
| * wtf/DisallowCType.h: |
| * wtf/Dominators.h: |
| * wtf/DoublyLinkedList.h: |
| * wtf/FastBitVector.cpp: |
| * wtf/FastMalloc.cpp: |
| * wtf/FastMalloc.h: |
| * wtf/FeatureDefines.h: |
| * wtf/FilePrintStream.cpp: |
| * wtf/FilePrintStream.h: |
| * wtf/FlipBytes.h: |
| * wtf/FunctionDispatcher.cpp: |
| * wtf/FunctionDispatcher.h: |
| * wtf/GetPtr.h: |
| * wtf/Gigacage.cpp: |
| * wtf/GlobalVersion.cpp: |
| * wtf/GraphNodeWorklist.h: |
| * wtf/GregorianDateTime.cpp: |
| * wtf/GregorianDateTime.h: |
| * wtf/HashFunctions.h: |
| * wtf/HashMap.h: |
| * wtf/HashMethod.h: |
| * wtf/HashSet.h: |
| * wtf/HashTable.cpp: |
| * wtf/HashTraits.h: |
| * wtf/Indenter.h: |
| * wtf/IndexSparseSet.h: |
| * wtf/InlineASM.h: |
| * wtf/Insertion.h: |
| * wtf/IteratorAdaptors.h: |
| * wtf/IteratorRange.h: |
| * wtf/JSONValues.cpp: |
| * wtf/JSValueMalloc.cpp: |
| * wtf/LEBDecoder.h: |
| * wtf/Language.cpp: |
| * wtf/ListDump.h: |
| * wtf/Lock.cpp: |
| * wtf/Lock.h: |
| * wtf/LockAlgorithm.h: |
| * wtf/LockedPrintStream.cpp: |
| * wtf/Locker.h: |
| * wtf/MD5.cpp: |
| * wtf/MD5.h: |
| * wtf/MainThread.cpp: |
| * wtf/MainThread.h: |
| * wtf/MallocPtr.h: |
| * wtf/MathExtras.h: |
| * wtf/MediaTime.cpp: |
| * wtf/MediaTime.h: |
| * wtf/MemoryPressureHandler.cpp: |
| * wtf/MessageQueue.h: |
| * wtf/MetaAllocator.cpp: |
| * wtf/MetaAllocator.h: |
| * wtf/MetaAllocatorHandle.h: |
| * wtf/MonotonicTime.cpp: |
| * wtf/MonotonicTime.h: |
| * wtf/NakedPtr.h: |
| * wtf/NoLock.h: |
| * wtf/NoTailCalls.h: |
| * wtf/Noncopyable.h: |
| * wtf/NumberOfCores.cpp: |
| * wtf/NumberOfCores.h: |
| * wtf/OSAllocator.h: |
| * wtf/OSAllocatorPosix.cpp: |
| * wtf/OSRandomSource.cpp: |
| * wtf/OSRandomSource.h: |
| * wtf/ObjcRuntimeExtras.h: |
| * wtf/OrderMaker.h: |
| * wtf/PackedIntVector.h: |
| * wtf/PageAllocation.h: |
| * wtf/PageBlock.cpp: |
| * wtf/PageBlock.h: |
| * wtf/PageReservation.h: |
| * wtf/ParallelHelperPool.cpp: |
| * wtf/ParallelHelperPool.h: |
| * wtf/ParallelJobs.h: |
| * wtf/ParallelJobsLibdispatch.h: |
| * wtf/ParallelVectorIterator.h: |
| * wtf/ParkingLot.cpp: |
| * wtf/ParkingLot.h: |
| * wtf/Platform.h: |
| * wtf/PointerComparison.h: |
| * wtf/Poisoned.cpp: |
| * wtf/PrintStream.cpp: |
| * wtf/PrintStream.h: |
| * wtf/ProcessID.h: |
| * wtf/ProcessPrivilege.cpp: |
| * wtf/RAMSize.cpp: |
| * wtf/RAMSize.h: |
| * wtf/RandomDevice.cpp: |
| * wtf/RandomNumber.cpp: |
| * wtf/RandomNumber.h: |
| * wtf/RandomNumberSeed.h: |
| * wtf/RangeSet.h: |
| * wtf/RawPointer.h: |
| * wtf/ReadWriteLock.cpp: |
| * wtf/RedBlackTree.h: |
| * wtf/Ref.h: |
| * wtf/RefCountedArray.h: |
| * wtf/RefCountedLeakCounter.cpp: |
| * wtf/RefCountedLeakCounter.h: |
| * wtf/RefCounter.h: |
| * wtf/RefPtr.h: |
| * wtf/RetainPtr.h: |
| * wtf/RunLoop.cpp: |
| * wtf/RunLoop.h: |
| * wtf/RunLoopTimer.h: |
| * wtf/RunLoopTimerCF.cpp: |
| * wtf/SHA1.cpp: |
| * wtf/SHA1.h: |
| * wtf/SaturatedArithmetic.h: |
| (saturatedSubtraction): |
| * wtf/SchedulePair.h: |
| * wtf/SchedulePairCF.cpp: |
| * wtf/SchedulePairMac.mm: |
| * wtf/ScopedLambda.h: |
| * wtf/Seconds.cpp: |
| * wtf/Seconds.h: |
| * wtf/SegmentedVector.h: |
| * wtf/SentinelLinkedList.h: |
| * wtf/SharedTask.h: |
| * wtf/SimpleStats.h: |
| * wtf/SingleRootGraph.h: |
| * wtf/SinglyLinkedList.h: |
| * wtf/SixCharacterHash.cpp: |
| * wtf/SixCharacterHash.h: |
| * wtf/SmallPtrSet.h: |
| * wtf/Spectrum.h: |
| * wtf/StackBounds.cpp: |
| * wtf/StackBounds.h: |
| * wtf/StackStats.cpp: |
| * wtf/StackStats.h: |
| * wtf/StackTrace.cpp: |
| * wtf/StdLibExtras.h: |
| * wtf/StreamBuffer.h: |
| * wtf/StringHashDumpContext.h: |
| * wtf/StringPrintStream.cpp: |
| * wtf/StringPrintStream.h: |
| * wtf/ThreadGroup.cpp: |
| * wtf/ThreadMessage.cpp: |
| * wtf/ThreadSpecific.h: |
| * wtf/Threading.cpp: |
| * wtf/Threading.h: |
| * wtf/ThreadingPrimitives.h: |
| * wtf/ThreadingPthreads.cpp: |
| * wtf/TimeWithDynamicClockType.cpp: |
| * wtf/TimeWithDynamicClockType.h: |
| * wtf/TimingScope.cpp: |
| * wtf/TinyLRUCache.h: |
| * wtf/TinyPtrSet.h: |
| * wtf/TriState.h: |
| * wtf/TypeCasts.h: |
| * wtf/UUID.cpp: |
| * wtf/UnionFind.h: |
| * wtf/VMTags.h: |
| * wtf/ValueCheck.h: |
| * wtf/Vector.h: |
| * wtf/VectorTraits.h: |
| * wtf/WallTime.cpp: |
| * wtf/WallTime.h: |
| * wtf/WeakPtr.h: |
| * wtf/WeakRandom.h: |
| * wtf/WordLock.cpp: |
| * wtf/WordLock.h: |
| * wtf/WorkQueue.cpp: |
| * wtf/WorkQueue.h: |
| * wtf/WorkerPool.cpp: |
| * wtf/cf/LanguageCF.cpp: |
| * wtf/cf/RunLoopCF.cpp: |
| * wtf/cocoa/Entitlements.mm: |
| * wtf/cocoa/MachSendRight.cpp: |
| * wtf/cocoa/MainThreadCocoa.mm: |
| * wtf/cocoa/MemoryFootprintCocoa.cpp: |
| * wtf/cocoa/WorkQueueCocoa.cpp: |
| * wtf/dtoa.cpp: |
| * wtf/dtoa.h: |
| * wtf/ios/WebCoreThread.cpp: |
| * wtf/ios/WebCoreThread.h: |
| * wtf/mac/AppKitCompatibilityDeclarations.h: |
| * wtf/mac/DeprecatedSymbolsUsedBySafari.mm: |
| * wtf/mbmalloc.cpp: |
| * wtf/persistence/PersistentCoders.cpp: |
| * wtf/persistence/PersistentDecoder.cpp: |
| * wtf/persistence/PersistentEncoder.cpp: |
| * wtf/spi/cf/CFBundleSPI.h: |
| * wtf/spi/darwin/CommonCryptoSPI.h: |
| * wtf/text/ASCIIFastPath.h: |
| * wtf/text/ASCIILiteral.cpp: |
| * wtf/text/AtomicString.cpp: |
| * wtf/text/AtomicString.h: |
| * wtf/text/AtomicStringHash.h: |
| * wtf/text/AtomicStringImpl.cpp: |
| * wtf/text/AtomicStringImpl.h: |
| * wtf/text/AtomicStringTable.cpp: |
| * wtf/text/AtomicStringTable.h: |
| * wtf/text/Base64.cpp: |
| * wtf/text/CString.cpp: |
| * wtf/text/CString.h: |
| * wtf/text/ConversionMode.h: |
| * wtf/text/ExternalStringImpl.cpp: |
| * wtf/text/IntegerToStringConversion.h: |
| * wtf/text/LChar.h: |
| * wtf/text/LineEnding.cpp: |
| * wtf/text/StringBuffer.h: |
| * wtf/text/StringBuilder.cpp: |
| * wtf/text/StringBuilder.h: |
| * wtf/text/StringBuilderJSON.cpp: |
| * wtf/text/StringCommon.h: |
| * wtf/text/StringConcatenate.h: |
| * wtf/text/StringHash.h: |
| * wtf/text/StringImpl.cpp: |
| * wtf/text/StringImpl.h: |
| * wtf/text/StringOperators.h: |
| * wtf/text/StringView.cpp: |
| * wtf/text/StringView.h: |
| * wtf/text/SymbolImpl.cpp: |
| * wtf/text/SymbolRegistry.cpp: |
| * wtf/text/SymbolRegistry.h: |
| * wtf/text/TextBreakIterator.cpp: |
| * wtf/text/TextBreakIterator.h: |
| * wtf/text/TextBreakIteratorInternalICU.h: |
| * wtf/text/TextPosition.h: |
| * wtf/text/TextStream.cpp: |
| * wtf/text/UniquedStringImpl.h: |
| * wtf/text/WTFString.cpp: |
| * wtf/text/WTFString.h: |
| * wtf/text/cocoa/StringCocoa.mm: |
| * wtf/text/cocoa/StringViewCocoa.mm: |
| * wtf/text/cocoa/TextBreakIteratorInternalICUCocoa.cpp: |
| * wtf/text/icu/UTextProvider.cpp: |
| * wtf/text/icu/UTextProvider.h: |
| * wtf/text/icu/UTextProviderLatin1.cpp: |
| * wtf/text/icu/UTextProviderLatin1.h: |
| * wtf/text/icu/UTextProviderUTF16.cpp: |
| * wtf/text/icu/UTextProviderUTF16.h: |
| * wtf/threads/BinarySemaphore.cpp: |
| * wtf/threads/BinarySemaphore.h: |
| * wtf/threads/Signals.cpp: |
| * wtf/unicode/CharacterNames.h: |
| * wtf/unicode/Collator.h: |
| * wtf/unicode/CollatorDefault.cpp: |
| * wtf/unicode/UTF8.cpp: |
| * wtf/unicode/UTF8.h: |
| |
| 2018-10-12 Alex Christensen <achristensen@webkit.org> |
| |
| Allow encoding of small enum classes |
| https://bugs.webkit.org/show_bug.cgi?id=190531 |
| |
| Reviewed by Tim Horton. |
| |
| * wtf/Forward.h: |
| |
| 2018-10-11 Alexey Proskuryakov <ap@apple.com> |
| |
| Add PLATFORM(IOS_FAMILY) and OS(IOS_FAMILY) |
| https://bugs.webkit.org/show_bug.cgi?id=190477 |
| |
| Reviewed by Tim Horton. |
| |
| Currently, PLATFORM(IOS) and OS(IOS) are true when building for any |
| TARGET_OS_IPHONE target, which is quite confusing. Add a better named alternative, |
| as a first step towards mass replacing PLATFORM(IOS). Can't so it all at once |
| because of dependencies in other source repositories. |
| |
| * wtf/Platform.h: Changed to the new name in this file though. Kept a few |
| instances that actually target iOS only, having a version check. |
| |
| 2018-10-11 Yusuke Suzuki <yusukesuzuki@slowstart.org> |
| |
| Use currentStackPointer more |
| https://bugs.webkit.org/show_bug.cgi?id=190503 |
| |
| Reviewed by Saam Barati. |
| |
| Use WTF::currentStackPointer more in WebKit to adopt ASAN detect_stack_use_after_return option. |
| |
| * wtf/StackBounds.cpp: |
| (WTF::testStackDirection2): |
| (WTF::testStackDirection): |
| * wtf/ThreadingPthreads.cpp: |
| (WTF::Thread::signalHandlerSuspendResume): |
| (WTF::getApproximateStackPointer): Deleted. |
| |
| 2018-10-11 Ross Kirsling <ross.kirsling@sony.com> |
| |
| [WTF] Semaphore.h conflicts with POSIX header |
| https://bugs.webkit.org/show_bug.cgi?id=190486 |
| |
| Reviewed by Yusuke Suzuki. |
| |
| Rename Semaphore.h to WTFSemaphore.h to avoid conflict with POSIX semaphore.h on case-insensitive file systems. |
| |
| * WTF.xcodeproj/project.pbxproj: |
| * wtf/CMakeLists.txt: |
| * wtf/WTFSemaphore.h: Renamed from wtf/Semaphore.h. |
| |
| 2018-10-10 Mark Lam <mark.lam@apple.com> |
| |
| Changes towards allowing use of the ASAN detect_stack_use_after_return option. |
| https://bugs.webkit.org/show_bug.cgi?id=190405 |
| <rdar://problem/45131464> |
| |
| Reviewed by Michael Saboff. |
| |
| Introduce WTF::currentStackPointer() which computes its caller's stack pointer value. |
| |
| * WTF.xcodeproj/project.pbxproj: |
| * wtf/CMakeLists.txt: |
| * wtf/StackBounds.h: |
| (WTF::StackBounds::checkConsistency const): |
| * wtf/StackPointer.cpp: Added. |
| (WTF::currentStackPointer): |
| * wtf/StackPointer.h: Added. |
| |
| 2018-10-09 Mark Lam <mark.lam@apple.com> |
| |
| StringTypeAdapter constructor is not properly enforcing String::MaxLength. |
| https://bugs.webkit.org/show_bug.cgi?id=190392 |
| <rdar://problem/45116210> |
| |
| Reviewed by Saam Barati. |
| |
| Previously, the StringTypeAdapter constructor for a UChar* string was summing the |
| unsigned length of the source string without an overflow check. We now make that |
| length a size_t which removes this issue, and assert that it's within |
| String::MaxLength thereafter. |
| |
| Also made the StringTypeAdapter constructor for a LChar* string behave in an |
| equivalent manner for consistency. In both cases, we'll crash in a RELEASE_ASSERT |
| if the source string length exceeds String::MaxLength. |
| |
| * wtf/text/StringConcatenate.h: |
| |
| 2018-10-09 Mark Lam <mark.lam@apple.com> |
| |
| Revert temporary asserts for debugging a mysterious ASAN bot crash. |
| https://bugs.webkit.org/show_bug.cgi?id=190396 |
| |
| Reviewed by Yusuke Suzuki. |
| |
| * wtf/StackBounds.cpp: |
| (WTF::StackBounds::newThreadStackBounds): |
| * wtf/StackBounds.h: |
| (WTF::StackBounds::checkConsistency const): |
| |
| 2018-10-08 Aditya Keerthi <akeerthi@apple.com> |
| |
| Make <input type=color> a runtime enabled (on-by-default) feature |
| https://bugs.webkit.org/show_bug.cgi?id=189162 |
| |
| Reviewed by Wenson Hsieh and Tim Horton. |
| |
| * wtf/FeatureDefines.h: |
| |
| 2018-10-06 Mark Lam <mark.lam@apple.com> |
| |
| Adding some temporary asserts with data logging to debug a mysterious ASAN bot crash. |
| https://bugs.webkit.org/show_bug.cgi?id=190334 |
| <rdar://problem/45071303> |
| |
| Reviewed by Yusuke Suzuki. |
| |
| These assertions are needed because we can't reproduce the issue locally. |
| We'll remove these asserts after the needed data has been collected from the bot. |
| |
| * wtf/StackBounds.cpp: |
| (WTF::StackBounds::newThreadStackBounds): |
| * wtf/StackBounds.h: |
| (WTF::StackBounds::checkConsistency const): |
| |
| 2018-10-07 Yusuke Suzuki <yusukesuzuki@slowstart.org> |
| |
| Name Heap threads |
| https://bugs.webkit.org/show_bug.cgi?id=190337 |
| |
| Reviewed by Mark Lam. |
| |
| Add a functionality naming threads of ParallelHelperPool. |
| |
| * wtf/ParallelHelperPool.cpp: |
| (WTF::ParallelHelperPool::ParallelHelperPool): |
| * wtf/ParallelHelperPool.h: |
| |
| 2018-10-06 Mark Lam <mark.lam@apple.com> |
| |
| Adding some temporary asserts to debug a mysterious ASAN bot crash. |
| https://bugs.webkit.org/show_bug.cgi?id=190331 |
| |
| Reviewed by Filip Pizlo. |
| |
| These assertions are needed because we can't reproduce the issue locally. |
| We'll remove these asserts after the needed data has been collected from the bot. |
| |
| * wtf/StackBounds.h: |
| (WTF::StackBounds::checkConsistency const): |
| |
| 2018-10-05 Yusuke Suzuki <yusukesuzuki@slowstart.org> |
| |
| [JSC][Linux] Support Perf JITDump logging |
| https://bugs.webkit.org/show_bug.cgi?id=189893 |
| |
| Reviewed by Mark Lam. |
| |
| * wtf/PageReservation.h: |
| (WTF::PageReservation::reserveAndCommitWithGuardPages): |
| |
| 2018-10-03 Dan Bernstein <mitz@apple.com> |
| |
| WTF part of [Xcode] Update some build settings as recommended by Xcode 10 |
| https://bugs.webkit.org/show_bug.cgi?id=190250 |
| |
| Reviewed by Alex Christensen. |
| |
| * Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS, |
| and CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF. |
| |
| * WTF.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck. |
| |
| * wtf/MathExtras.h: |
| (WTF::fastLog2): Addressed newly-enabled CLANG_WARN_COMMA by splitting some comma-separated |
| expressions into individual statements. |
| |
| 2018-10-03 Mark Lam <mark.lam@apple.com> |
| |
| Make string MaxLength for all WTF and JS strings consistently equal to INT_MAX. |
| https://bugs.webkit.org/show_bug.cgi?id=190187 |
| <rdar://problem/42512909> |
| |
| Reviewed by Michael Saboff. |
| |
| * wtf/text/StringConcatenate.h: |
| (WTF::tryMakeStringFromAdapters): |
| (WTF::sumWithOverflow): Deleted. |
| * wtf/text/StringImpl.h: |
| * wtf/text/WTFString.h: |
| |
| 2018-10-03 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| -Wunused-variable in RenderLayer::updateScrollableAreaSet |
| https://bugs.webkit.org/show_bug.cgi?id=190200 |
| |
| Reviewed by Yusuke Suzuki. |
| |
| Add a new UNUSED_VARIABLE() macro. It's the same as UNUSED_PARAM(), just named differently. |
| |
| * wtf/Compiler.h: |
| |
| 2018-10-01 Dean Jackson <dino@apple.com> |
| |
| [macOS] Switching to discrete GPU should be done in the UI process |
| https://bugs.webkit.org/show_bug.cgi?id=189361 |
| <rdar://problem/43949622> |
| |
| Reviewed by Simon Fraser. |
| |
| Define GL_SILENCE_DEPRECATION to avoid deprecation warnings for OpenGL. |
| |
| * wtf/Platform.h: |
| |
| 2018-10-02 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r236624 and r236671. |
| https://bugs.webkit.org/show_bug.cgi?id=190207 |
| |
| The change in r236624 introduced crashes on the bots |
| (Requested by ryanhaddad on #webkit). |
| |
| Reverted changesets: |
| |
| "Refactoring: eliminate raw pointer usage in Fullscreen code" |
| https://bugs.webkit.org/show_bug.cgi?id=188747 |
| https://trac.webkit.org/changeset/236624 |
| |
| "Unify implementation in VideoFullscreenInterfaceAVKit" |
| https://bugs.webkit.org/show_bug.cgi?id=190091 |
| https://trac.webkit.org/changeset/236671 |
| |
| 2018-10-02 Caio Lima <ticaiolima@gmail.com> |
| |
| [BigInt] BigInt.proptotype.toString is broken when radix is power of 2 |
| https://bugs.webkit.org/show_bug.cgi?id=190033 |
| |
| Reviewed by Yusuke Suzuki. |
| |
| * wtf/MathExtras.h: |
| (WTF::ctz32): |
| |
| 2018-10-01 Andy Estes <aestes@apple.com> |
| |
| [watchOS] Adopt NSURLSessionCompanionProxyPreference |
| https://bugs.webkit.org/show_bug.cgi?id=190177 |
| <rdar://problem/43402114> |
| |
| Reviewed by Wenson Hsieh. |
| |
| * wtf/FeatureDefines.h: |
| |
| 2018-10-01 Koby Boyango <koby.b@mce-sys.com> |
| |
| [WTF][JSCONLY] Use MainThreadWin on Windows in the JSCOnly port |
| https://bugs.webkit.org/show_bug.cgi?id=190121 |
| |
| Reviewed by Yusuke Suzuki. |
| |
| This fixes JSCOnly build on Windows after r236617. |
| |
| * wtf/PlatformJSCOnly.cmake: |
| |
| 2018-10-01 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r236647. |
| https://bugs.webkit.org/show_bug.cgi?id=190124 |
| |
| Breaking test stress/big-int-to-string.js (Requested by |
| caiolima_ on #webkit). |
| |
| Reverted changeset: |
| |
| "[BigInt] BigInt.proptotype.toString is broken when radix is |
| power of 2" |
| https://bugs.webkit.org/show_bug.cgi?id=190033 |
| https://trac.webkit.org/changeset/236647 |
| |
| 2018-09-30 Caio Lima <ticaiolima@gmail.com> |
| |
| [BigInt] BigInt.proptotype.toString is broken when radix is power of 2 |
| https://bugs.webkit.org/show_bug.cgi?id=190033 |
| |
| Reviewed by Yusuke Suzuki. |
| |
| * wtf/MathExtras.h: |
| (WTF::ctz32): |
| |
| 2018-09-28 Jer Noble <jer.noble@apple.com> |
| |
| Refactoring: eliminate raw pointer usage in Fullscreen code |
| https://bugs.webkit.org/show_bug.cgi?id=188747 |
| <rdar://problem/43541164> |
| |
| Reviewed by Alex Christensen. |
| |
| * WTF.xcodeproj/project.pbxproj: |
| * wtf/WeakPtrContainer.h: Added. |
| |
| 2018-09-28 Yusuke Suzuki <yusukesuzuki@slowstart.org> |
| |
| [WTF] Make isMainThread more reliable |
| https://bugs.webkit.org/show_bug.cgi?id=189880 |
| |
| Reviewed by Mark Lam. |
| |
| isMainThread() relied on Thread::current(). This API becomes broken in Windows |
| when the Thread is about to be destroyed since TLS is already cleared. This causes |
| a bug since `isMainThread()` is called in Thread::didExit in Windows. |
| |
| This patch makes this `isMainThread` more reliable in all the platforms. In Windows, |
| we use `Thread::currentID()` instead of `Thread::current()` since `Thread::currentID` |
| uses Win32 GetCurrentThreadId directly. In the other system, we use `pthread_main_np` |
| or `pthread_self` instead. |
| |
| We also move `holdLock` code inside `if (shouldRemoveThreadFromThreadGroup())`. If |
| the other thread takes a mutex and destroyed, this `holdLock` waits forever. This problem |
| only happens in Windows since Windows calls TLS destructor for the main thread. |
| |
| * WTF.xcodeproj/project.pbxproj: |
| * wtf/MainThread.cpp: |
| (WTF::initializeMainThread): |
| (): Deleted. |
| (WTF::isMainThread): Deleted. |
| (WTF::isMainThreadIfInitialized): Deleted. |
| * wtf/Platform.h: |
| * wtf/PlatformMac.cmake: |
| * wtf/Threading.cpp: |
| (WTF::Thread::didExit): |
| * wtf/cocoa/MainThreadCocoa.mm: Renamed from Source/WTF/wtf/mac/MainThreadMac.mm. |
| * wtf/generic/MainThreadGeneric.cpp: |
| (WTF::initializeMainThreadPlatform): |
| (WTF::isMainThread): |
| (WTF::isMainThreadIfInitialized): |
| * wtf/win/MainThreadWin.cpp: |
| (WTF::initializeMainThreadPlatform): |
| (WTF::isMainThread): |
| (WTF::isMainThreadIfInitialized): |
| |
| 2018-09-28 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r236605. |
| https://bugs.webkit.org/show_bug.cgi?id=190087 |
| |
| caused three API test timeouts (Requested by jernoble on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "Refactoring: eliminate raw pointer usage in Fullscreen code" |
| https://bugs.webkit.org/show_bug.cgi?id=188747 |
| https://trac.webkit.org/changeset/236605 |
| |
| 2018-09-28 Brian Burg <bburg@apple.com> |
| |
| Replace recently added line comments in Compiler.h |
| https://bugs.webkit.org/show_bug.cgi?id=190062 |
| <rdar://problem/44838618> |
| |
| Reviewed by Joseph Pecoraro. |
| |
| This breaks some Apple-internal tooling. For now, work around it by |
| changing the comment style. On the other side, the issue will be fixed |
| more permanently by adopting the approach from r230213. |
| |
| * wtf/Compiler.h: Use multiline comments. |
| |
| 2018-09-28 Jer Noble <jer.noble@apple.com> |
| |
| Refactoring: eliminate raw pointer usage in Fullscreen code |
| https://bugs.webkit.org/show_bug.cgi?id=188747 |
| <rdar://problem/43541164> |
| |
| Reviewed by Alex Christensen. |
| |
| * WTF.xcodeproj/project.pbxproj: |
| * wtf/WeakPtrContainer.h: Added. |
| |
| 2018-09-28 Koby Boyango <koby.b@mce.systems> |
| |
| [WTF] Add ExternalStringImpl, a StringImpl for user controlled buffers |
| https://bugs.webkit.org/show_bug.cgi?id=189991 |
| |
| Reviewed by Yusuke Suzuki. |
| |
| * WTF.xcodeproj/project.pbxproj: |
| * wtf/CMakeLists.txt: |
| * wtf/text/ExternalStringImpl.cpp: Added. |
| * wtf/text/ExternalStringImpl.h: Added. |
| * wtf/text/StringImpl.cpp: |
| * wtf/text/StringImpl.h: |
| |
| 2018-09-27 Saam barati <sbarati@apple.com> |
| |
| Verify the contents of AssemblerBuffer on arm64e |
| https://bugs.webkit.org/show_bug.cgi?id=190057 |
| <rdar://problem/38916630> |
| |
| Reviewed by Mark Lam. |
| |
| * wtf/PtrTag.h: |
| (WTF::tagInt): |
| |
| 2018-09-27 Jer Noble <jer.noble@apple.com> |
| |
| MediaPlayer should have mediaPlayerWaitingForKeyChanged() / bool waitingForKey() accessor |
| https://bugs.webkit.org/show_bug.cgi?id=189951 |
| |
| Reviewed by Eric Carlson. |
| |
| Templated functions should take r-value references, as they have perfect type deduction for |
| all parameter types; references, l-value references, and r-value references in template function |
| parameters have special type deduction semantics. |
| See: <https://en.cppreference.com/w/cpp/language/reference#Forwarding_references> |
| |
| Previously, const reference parameters would be copied when passed into anyOf(), and containers |
| of Ref<> would generate compile errors when passed into anyOf, as they cannot be copied. Now, |
| with r-value reference types in template parameters, a const reference is mapped to a const reference, |
| a non-const reference is mapped to a non-const reference, and a r-value reference is mapped to |
| an r-value reference. |
| |
| * wtf/Algorithms.h: |
| (WTF::forEach): |
| (WTF::anyOf): |
| (WTF::allOf): |
| |
| 2018-09-25 John Wilander <wilander@apple.com> |
| |
| Change from HAVE(CFNETWORK_STORAGE_PARTITIONING) to ENABLE(RESOURCE_LOAD_STATISTICS) |
| https://bugs.webkit.org/show_bug.cgi?id=189959 |
| <rdar://problem/44767642> |
| |
| Reviewed by Chris Dumez. |
| |
| * wtf/Platform.h: |
| Enables RESOURCE_LOAD_STATISTICS for Cocoa platforms. |
| |
| 2018-09-24 Fujii Hironori <Hironori.Fujii@sony.com> |
| |
| Rename WTF_COMPILER_GCC_OR_CLANG to WTF_COMPILER_GCC_COMPATIBLE |
| https://bugs.webkit.org/show_bug.cgi?id=189733 |
| |
| Reviewed by Michael Catanzaro. |
| |
| Clang for Windows build enables WTF_COMPILER_CLANG and |
| WTF_COMPILER_MSVC, but disables WTF_COMPILER_GCC_OR_CLANG. It is |
| strange WTF_COMPILER_GCC_OR_CLANG is not enabled even though |
| WTF_COMPILER_CLANG is enabled. However, Clang for Windows imitates |
| MSVC, and codes for COMPILER(GCC_OR_CLANG) are for non MSVC. At |
| least at the moment, it is not feasible to define |
| WTF_COMPILER_GCC_OR_CLANG for Clang for Windows. |
| |
| To solve the issue, this change renames WTF_COMPILER_GCC_OR_CLANG |
| to WTF_COMPILER_GCC_COMPATIBLE. |
| |
| As an exception, I'd like to use IGNORE_WARNINGS_* macros even in |
| Clang for Windows builds. |
| |
| * wtf/Assertions.cpp: Replaced COMPILER(GCC_OR_CLANG) with COMPILER(GCC_COMPATIBLE). |
| * wtf/Assertions.h: Ditto. |
| * wtf/Atomics.h: Ditto. |
| * wtf/CheckedArithmetic.h: Ditto. |
| * wtf/FastMalloc.h: Ditto. |
| * wtf/MathExtras.h: Ditto. |
| * wtf/Platform.h: Ditto. |
| * wtf/StdLibExtras.h: Ditto. |
| * wtf/Vector.h: Ditto. |
| * wtf/text/ASCIIFastPath.h: Ditto. |
| * wtf/Compiler.h: Ditto. Replaced "COMPILER(GCC_OR_CLANG)" with "COMPILER(GCC) || COMPILER(CLANG)" of IGNORE_WARNINGS_* macros. |
| |
| 2018-09-21 Yusuke Suzuki <yusukesuzuki@slowstart.org> |
| |
| [JSC] Enable LLInt ASM interpreter on X64 and ARM64 in non JIT configuration |
| https://bugs.webkit.org/show_bug.cgi?id=189778 |
| |
| Reviewed by Keith Miller. |
| |
| This patch adds ENABLE(C_LOOP) which indicates we use CLoop as the interpreter. |
| Previously, we used !ENABLE(JIT) for this configuration. But now, we have |
| a build configuration that has LLInt ASM interpreter (not CLoop) and !ENABLE(JIT). |
| |
| We enable LLInt ASM interpreter for non JIT environment in X86_64 and ARM64 architectures. |
| And we enable ENABLE(ASSEMBLER) for non JIT environment since it offers machine register |
| information which is used for LLInt and SamplingProfiler. |
| |
| * wtf/Platform.h: |
| |
| 2018-09-21 Keith Miller <keith_miller@apple.com> |
| |
| Add Promise SPI |
| https://bugs.webkit.org/show_bug.cgi?id=189809 |
| |
| Reviewed by Saam Barati. |
| |
| Fix issue where creating a JSContextRef off the main thread before |
| creating initializing the main thread would cause an assertion |
| failure. |
| |
| * wtf/MainThread.cpp: |
| (WTF::isMainThreadIfInitialized): |
| * wtf/MainThread.h: |
| * wtf/mac/MainThreadMac.mm: |
| (WTF::isMainThreadIfInitialized): |
| * wtf/text/cf/StringImplCF.cpp: |
| (WTF::StringImpl::createCFString): |
| |
| 2018-09-21 Ryan Haddad <ryanhaddad@apple.com> |
| |
| Unreviewed, rolling out r236359. |
| |
| Broke the Windows build. |
| |
| Reverted changeset: |
| |
| "Add Promise SPI" |
| https://bugs.webkit.org/show_bug.cgi?id=189809 |
| https://trac.webkit.org/changeset/236359 |
| |
| 2018-09-21 Keith Miller <keith_miller@apple.com> |
| |
| Add Promise SPI |
| https://bugs.webkit.org/show_bug.cgi?id=189809 |
| |
| Reviewed by Saam Barati. |
| |
| Fix issue where creating a JSContextRef off the main thread before |
| creating initializing the main thread would cause an assertion |
| failure. |
| |
| * wtf/MainThread.cpp: |
| (WTF::isMainThreadIfInitialized): |
| * wtf/MainThread.h: |
| * wtf/mac/MainThreadMac.mm: |
| (WTF::isMainThreadIfInitialized): |
| * wtf/text/cf/StringImplCF.cpp: |
| (WTF::StringImpl::createCFString): |
| |
| 2018-09-20 Fujii Hironori <Hironori.Fujii@sony.com> |
| |
| [Win][Clang] UNUSED_PARAM(this) causes compilation error of "cannot take the address of an rvalue of type" |
| https://bugs.webkit.org/show_bug.cgi?id=189732 |
| |
| Reviewed by Per Arne Vollan. |
| |
| Clang for Windows can't compile the MSVC workaround of |
| UNUSED_PARAM which has been introduced for Windows CE and Visual |
| Studio 10. I think it's safe just to remove it. |
| |
| * wtf/Compiler.h: Removed the code for COMPILER(MSVC). |
| |
| 2018-09-20 Alex Christensen <achristensen@webkit.org> |
| |
| Unreviewed, rolling out r235976. |
| |
| Broke ARM |
| |
| Reverted changeset: |
| |
| "Use a Variant instead of a union in CSSSelector" |
| https://bugs.webkit.org/show_bug.cgi?id=188559 |
| https://trac.webkit.org/changeset/235976 |
| |
| 2018-09-17 Yusuke Suzuki <utatane.tea@gmail.com> |
| |
| [WTF] Use Semaphore and BinarySemaphore instead of dispatch_semaphore_t |
| https://bugs.webkit.org/show_bug.cgi?id=185339 |
| |
| Reviewed by Mark Lam. |
| |
| This patch adds WTF::Semaphore, which is based on WTF::Lock and WTF::Condition. |
| |
| * WTF.xcodeproj/project.pbxproj: |
| * wtf/CMakeLists.txt: |
| * wtf/Semaphore.h: Added. |
| (WTF::Semaphore::Semaphore): |
| (WTF::Semaphore::signal): |
| (WTF::Semaphore::waitUntil): |
| (WTF::Semaphore::waitFor): |
| (WTF::Semaphore::wait): |
| * wtf/generic/WorkQueueGeneric.cpp: |
| (WorkQueue::platformInitialize): |
| * wtf/threads/BinarySemaphore.cpp: |
| (WTF::BinarySemaphore::waitUntil): |
| (WTF::BinarySemaphore::wait): Deleted. |
| * wtf/threads/BinarySemaphore.h: |
| (WTF::BinarySemaphore::waitFor): |
| (WTF::BinarySemaphore::wait): |
| Align the names of the functions to WTF::Condition. |
| Add BinarySemaphore::wait(), which is the same to waitUntil(WallTime::infinity()). |
| |
| 2018-09-17 Jer Noble <jer.noble@apple.com> |
| |
| Add support for HEVC codec types in Media Capabilities |
| https://bugs.webkit.org/show_bug.cgi?id=189565 |
| |
| Reviewed by Eric Carlson. |
| |
| Extract the toIntegralType template into its own header. |
| |
| * wtf/CMakeLists.txt: |
| * wtf/text/StringConversion.h: Added. |
| (isCharacterAllowedInBase): |
| (toIntegralType): |
| * wtf/text/WTFString.cpp: |
| |
| 2018-09-17 Jer Noble <jer.noble@apple.com> |
| |
| Enable USE_MEDIAREMOTE on iOS |
| https://bugs.webkit.org/show_bug.cgi?id=189096 |
| |
| Reviewed by Eric Carlson. |
| |
| * wtf/Platform.h: |
| |
| 2018-09-17 Frederic Wang <fwang@igalia.com> |
| |
| Build error in ImageBufferCG when compiled with IOSurfacePool |
| https://bugs.webkit.org/show_bug.cgi?id=189579 |
| |
| Reviewed by Tim Horton. |
| |
| IOSurface.h might be included with different value of IOSURFACE_CANVAS_BACKING_STORE, causing |
| compilation errors when files in the same unified source do not agree on the definition. |
| This patch moves the definition of IOSURFACE_CANVAS_BACKING_STORE from ImageBufferDataCG.h |
| to Platform.h so that IOSURFACE_CANVAS_BACKING_STORE is set to the same value in all files. |
| Finally some minors changes to explicitly declare/define ImageBuffer are performed in order |
| to prevent future issues with Unified build rotating. |
| |
| * wtf/Platform.h: Move definition from ImageBufferDataCG.h. |
| |
| 2018-09-14 Ryan Haddad <ryanhaddad@apple.com> |
| |
| Unreviewed, rolling out r235990. |
| |
| Introduced TestWebKitAPI.NowPlayingTest timeouts on iOS |
| |
| Reverted changeset: |
| |
| "Enable USE_MEDIAREMOTE on iOS" |
| https://bugs.webkit.org/show_bug.cgi?id=189096 |
| https://trac.webkit.org/changeset/235990 |
| |
| 2018-09-13 Jer Noble <jer.noble@apple.com> |
| |
| Enable USE_MEDIAREMOTE on iOS |
| https://bugs.webkit.org/show_bug.cgi?id=189096 |
| |
| Reviewed by Eric Carlson. |
| |
| * wtf/Platform.h: |
| |
| 2018-09-13 Alex Christensen <achristensen@webkit.org> |
| |
| Use a Variant instead of a union in CSSSelector |
| https://bugs.webkit.org/show_bug.cgi?id=188559 |
| |
| Reviewed by Antti Koivisto. |
| |
| * wtf/Variant.h: |
| Add packing macros to make it so Variant-containing structures don't always have 7 bytes of padding per Variant. |
| |
| 2018-09-12 Guillaume Emont <guijemont@igalia.com> |
| |
| Add IGNORE_WARNING_.* macros |
| https://bugs.webkit.org/show_bug.cgi?id=188996 |
| |
| Reviewed by Michael Catanzaro. |
| |
| * wtf/Assertions.cpp: |
| * wtf/Assertions.h: |
| * wtf/Compiler.h: |
| * wtf/MD5.cpp: |
| (WTF::MD5::MD5): |
| (WTF::MD5::addBytes): |
| (WTF::MD5::checksum): |
| * wtf/PrintStream.cpp: |
| (WTF::PrintStream::printfVariableFormat): |
| * wtf/SHA1.cpp: |
| (WTF::SHA1::SHA1): |
| (WTF::SHA1::addBytes): |
| (WTF::SHA1::computeHash): |
| * wtf/ThreadingPthreads.cpp: |
| * wtf/Vector.h: |
| (WTF::VectorBuffer::endOfBuffer): |
| * wtf/text/WTFString.cpp: |
| (WTF::createWithFormatAndArguments): |
| |
| == Rolled over to ChangeLog-2018-09-11 == |