[GTK] fast/css/pseudo-visited-background-color-on-input.html is failing since r237425
[WebKit-https.git] / Source / WTF / ChangeLog
1 2018-10-17  Commit Queue  <commit-queue@webkit.org>
2
3         Unreviewed, rolling out r237208.
4         https://bugs.webkit.org/show_bug.cgi?id=190691
5
6         Caused the API test that was changed to failure continuously
7         (Requested by Truitt on #webkit).
8
9         Reverted changeset:
10
11         "[Media] Use nanoseconds as MaximumTimeScale"
12         https://bugs.webkit.org/show_bug.cgi?id=190631
13         https://trac.webkit.org/changeset/237208
14
15 2018-10-16  Alicia Boya GarcĂ­a  <aboya@igalia.com>
16
17         [Media] Use nanoseconds as MaximumTimeScale
18         https://bugs.webkit.org/show_bug.cgi?id=190631
19
20         1e9 is a much more useful timescale than the previous one 2^31-1.
21         Unlike 2^31-1, which is a prime number, nanosecond scale is pretty
22         common among some formats like WebM and frameworks like GStreamer
23         where base 10 timescale is common... and it's those big timescales the
24         ones that are usually scaled up to MaximumTimeScale.
25
26         Reviewed by Jer Noble.
27
28         * wtf/MediaTime.cpp:
29
30 2018-10-15  Keith Miller  <keith_miller@apple.com>
31
32         Support arm64 CPUs with a 32-bit address space
33         https://bugs.webkit.org/show_bug.cgi?id=190273
34
35         Reviewed by Michael Saboff.
36
37         Use WTF_CPU_ADDRESS64/32 to decide if the system is running on arm64_32.
38
39         * wtf/MathExtras.h:
40         (getLSBSet):
41         * wtf/Platform.h:
42
43 2018-10-15  Timothy Hatcher  <timothy@apple.com>
44
45         Add support for prefers-color-scheme media query
46         https://bugs.webkit.org/show_bug.cgi?id=190499
47         rdar://problem/45212025
48
49         Reviewed by Dean Jackson.
50
51         * wtf/FeatureDefines.h: Added ENABLE_DARK_MODE_CSS.
52
53 2018-10-15  Saam barati  <sbarati@apple.com>
54
55         Emit fjcvtzs on ARM64E on Darwin
56         https://bugs.webkit.org/show_bug.cgi?id=184023
57
58         Reviewed by Yusuke Suzuki and Filip Pizlo.
59
60         * wtf/Platform.h:
61
62 2018-10-15  Alex Christensen  <achristensen@webkit.org>
63
64         Use pragma once in WTF
65         https://bugs.webkit.org/show_bug.cgi?id=190527
66
67         Reviewed by Chris Dumez.
68
69         We also need to consistently include wtf headers from within wtf so we can build wtf without
70         symbol redefinition errors from including the copy in Source and the copy in the build directory.
71
72         * wtf/ASCIICType.h:
73         * wtf/Assertions.cpp:
74         * wtf/Assertions.h:
75         * wtf/Atomics.h:
76         * wtf/AutomaticThread.cpp:
77         * wtf/AutomaticThread.h:
78         * wtf/BackwardsGraph.h:
79         * wtf/Bag.h:
80         * wtf/BagToHashMap.h:
81         * wtf/BitVector.cpp:
82         * wtf/BitVector.h:
83         * wtf/Bitmap.h:
84         * wtf/BloomFilter.h:
85         * wtf/Box.h:
86         * wtf/BubbleSort.h:
87         * wtf/BumpPointerAllocator.h:
88         * wtf/ByteOrder.h:
89         * wtf/CPUTime.cpp:
90         * wtf/CallbackAggregator.h:
91         * wtf/CheckedArithmetic.h:
92         * wtf/CheckedBoolean.h:
93         * wtf/ClockType.cpp:
94         * wtf/ClockType.h:
95         * wtf/CommaPrinter.h:
96         * wtf/CompilationThread.cpp:
97         * wtf/CompilationThread.h:
98         * wtf/Compiler.h:
99         * wtf/ConcurrentPtrHashSet.cpp:
100         * wtf/ConcurrentVector.h:
101         * wtf/Condition.h:
102         * wtf/CountingLock.cpp:
103         * wtf/CrossThreadTaskHandler.cpp:
104         * wtf/CryptographicUtilities.cpp:
105         * wtf/CryptographicUtilities.h:
106         * wtf/CryptographicallyRandomNumber.cpp:
107         * wtf/CryptographicallyRandomNumber.h:
108         * wtf/CurrentTime.cpp:
109         * wtf/DataLog.cpp:
110         * wtf/DataLog.h:
111         * wtf/DateMath.cpp:
112         * wtf/DateMath.h:
113         * wtf/DecimalNumber.cpp:
114         * wtf/DecimalNumber.h:
115         * wtf/Deque.h:
116         * wtf/DisallowCType.h:
117         * wtf/Dominators.h:
118         * wtf/DoublyLinkedList.h:
119         * wtf/FastBitVector.cpp:
120         * wtf/FastMalloc.cpp:
121         * wtf/FastMalloc.h:
122         * wtf/FeatureDefines.h:
123         * wtf/FilePrintStream.cpp:
124         * wtf/FilePrintStream.h:
125         * wtf/FlipBytes.h:
126         * wtf/FunctionDispatcher.cpp:
127         * wtf/FunctionDispatcher.h:
128         * wtf/GetPtr.h:
129         * wtf/Gigacage.cpp:
130         * wtf/GlobalVersion.cpp:
131         * wtf/GraphNodeWorklist.h:
132         * wtf/GregorianDateTime.cpp:
133         * wtf/GregorianDateTime.h:
134         * wtf/HashFunctions.h:
135         * wtf/HashMap.h:
136         * wtf/HashMethod.h:
137         * wtf/HashSet.h:
138         * wtf/HashTable.cpp:
139         * wtf/HashTraits.h:
140         * wtf/Indenter.h:
141         * wtf/IndexSparseSet.h:
142         * wtf/InlineASM.h:
143         * wtf/Insertion.h:
144         * wtf/IteratorAdaptors.h:
145         * wtf/IteratorRange.h:
146         * wtf/JSONValues.cpp:
147         * wtf/JSValueMalloc.cpp:
148         * wtf/LEBDecoder.h:
149         * wtf/Language.cpp:
150         * wtf/ListDump.h:
151         * wtf/Lock.cpp:
152         * wtf/Lock.h:
153         * wtf/LockAlgorithm.h:
154         * wtf/LockedPrintStream.cpp:
155         * wtf/Locker.h:
156         * wtf/MD5.cpp:
157         * wtf/MD5.h:
158         * wtf/MainThread.cpp:
159         * wtf/MainThread.h:
160         * wtf/MallocPtr.h:
161         * wtf/MathExtras.h:
162         * wtf/MediaTime.cpp:
163         * wtf/MediaTime.h:
164         * wtf/MemoryPressureHandler.cpp:
165         * wtf/MessageQueue.h:
166         * wtf/MetaAllocator.cpp:
167         * wtf/MetaAllocator.h:
168         * wtf/MetaAllocatorHandle.h:
169         * wtf/MonotonicTime.cpp:
170         * wtf/MonotonicTime.h:
171         * wtf/NakedPtr.h:
172         * wtf/NoLock.h:
173         * wtf/NoTailCalls.h:
174         * wtf/Noncopyable.h:
175         * wtf/NumberOfCores.cpp:
176         * wtf/NumberOfCores.h:
177         * wtf/OSAllocator.h:
178         * wtf/OSAllocatorPosix.cpp:
179         * wtf/OSRandomSource.cpp:
180         * wtf/OSRandomSource.h:
181         * wtf/ObjcRuntimeExtras.h:
182         * wtf/OrderMaker.h:
183         * wtf/PackedIntVector.h:
184         * wtf/PageAllocation.h:
185         * wtf/PageBlock.cpp:
186         * wtf/PageBlock.h:
187         * wtf/PageReservation.h:
188         * wtf/ParallelHelperPool.cpp:
189         * wtf/ParallelHelperPool.h:
190         * wtf/ParallelJobs.h:
191         * wtf/ParallelJobsLibdispatch.h:
192         * wtf/ParallelVectorIterator.h:
193         * wtf/ParkingLot.cpp:
194         * wtf/ParkingLot.h:
195         * wtf/Platform.h:
196         * wtf/PointerComparison.h:
197         * wtf/Poisoned.cpp:
198         * wtf/PrintStream.cpp:
199         * wtf/PrintStream.h:
200         * wtf/ProcessID.h:
201         * wtf/ProcessPrivilege.cpp:
202         * wtf/RAMSize.cpp:
203         * wtf/RAMSize.h:
204         * wtf/RandomDevice.cpp:
205         * wtf/RandomNumber.cpp:
206         * wtf/RandomNumber.h:
207         * wtf/RandomNumberSeed.h:
208         * wtf/RangeSet.h:
209         * wtf/RawPointer.h:
210         * wtf/ReadWriteLock.cpp:
211         * wtf/RedBlackTree.h:
212         * wtf/Ref.h:
213         * wtf/RefCountedArray.h:
214         * wtf/RefCountedLeakCounter.cpp:
215         * wtf/RefCountedLeakCounter.h:
216         * wtf/RefCounter.h:
217         * wtf/RefPtr.h:
218         * wtf/RetainPtr.h:
219         * wtf/RunLoop.cpp:
220         * wtf/RunLoop.h:
221         * wtf/RunLoopTimer.h:
222         * wtf/RunLoopTimerCF.cpp:
223         * wtf/SHA1.cpp:
224         * wtf/SHA1.h:
225         * wtf/SaturatedArithmetic.h:
226         (saturatedSubtraction):
227         * wtf/SchedulePair.h:
228         * wtf/SchedulePairCF.cpp:
229         * wtf/SchedulePairMac.mm:
230         * wtf/ScopedLambda.h:
231         * wtf/Seconds.cpp:
232         * wtf/Seconds.h:
233         * wtf/SegmentedVector.h:
234         * wtf/SentinelLinkedList.h:
235         * wtf/SharedTask.h:
236         * wtf/SimpleStats.h:
237         * wtf/SingleRootGraph.h:
238         * wtf/SinglyLinkedList.h:
239         * wtf/SixCharacterHash.cpp:
240         * wtf/SixCharacterHash.h:
241         * wtf/SmallPtrSet.h:
242         * wtf/Spectrum.h:
243         * wtf/StackBounds.cpp:
244         * wtf/StackBounds.h:
245         * wtf/StackStats.cpp:
246         * wtf/StackStats.h:
247         * wtf/StackTrace.cpp:
248         * wtf/StdLibExtras.h:
249         * wtf/StreamBuffer.h:
250         * wtf/StringHashDumpContext.h:
251         * wtf/StringPrintStream.cpp:
252         * wtf/StringPrintStream.h:
253         * wtf/ThreadGroup.cpp:
254         * wtf/ThreadMessage.cpp:
255         * wtf/ThreadSpecific.h:
256         * wtf/Threading.cpp:
257         * wtf/Threading.h:
258         * wtf/ThreadingPrimitives.h:
259         * wtf/ThreadingPthreads.cpp:
260         * wtf/TimeWithDynamicClockType.cpp:
261         * wtf/TimeWithDynamicClockType.h:
262         * wtf/TimingScope.cpp:
263         * wtf/TinyLRUCache.h:
264         * wtf/TinyPtrSet.h:
265         * wtf/TriState.h:
266         * wtf/TypeCasts.h:
267         * wtf/UUID.cpp:
268         * wtf/UnionFind.h:
269         * wtf/VMTags.h:
270         * wtf/ValueCheck.h:
271         * wtf/Vector.h:
272         * wtf/VectorTraits.h:
273         * wtf/WallTime.cpp:
274         * wtf/WallTime.h:
275         * wtf/WeakPtr.h:
276         * wtf/WeakRandom.h:
277         * wtf/WordLock.cpp:
278         * wtf/WordLock.h:
279         * wtf/WorkQueue.cpp:
280         * wtf/WorkQueue.h:
281         * wtf/WorkerPool.cpp:
282         * wtf/cf/LanguageCF.cpp:
283         * wtf/cf/RunLoopCF.cpp:
284         * wtf/cocoa/Entitlements.mm:
285         * wtf/cocoa/MachSendRight.cpp:
286         * wtf/cocoa/MainThreadCocoa.mm:
287         * wtf/cocoa/MemoryFootprintCocoa.cpp:
288         * wtf/cocoa/WorkQueueCocoa.cpp:
289         * wtf/dtoa.cpp:
290         * wtf/dtoa.h:
291         * wtf/ios/WebCoreThread.cpp:
292         * wtf/ios/WebCoreThread.h:
293         * wtf/mac/AppKitCompatibilityDeclarations.h:
294         * wtf/mac/DeprecatedSymbolsUsedBySafari.mm:
295         * wtf/mbmalloc.cpp:
296         * wtf/persistence/PersistentCoders.cpp:
297         * wtf/persistence/PersistentDecoder.cpp:
298         * wtf/persistence/PersistentEncoder.cpp:
299         * wtf/spi/cf/CFBundleSPI.h:
300         * wtf/spi/darwin/CommonCryptoSPI.h:
301         * wtf/text/ASCIIFastPath.h:
302         * wtf/text/ASCIILiteral.cpp:
303         * wtf/text/AtomicString.cpp:
304         * wtf/text/AtomicString.h:
305         * wtf/text/AtomicStringHash.h:
306         * wtf/text/AtomicStringImpl.cpp:
307         * wtf/text/AtomicStringImpl.h:
308         * wtf/text/AtomicStringTable.cpp:
309         * wtf/text/AtomicStringTable.h:
310         * wtf/text/Base64.cpp:
311         * wtf/text/CString.cpp:
312         * wtf/text/CString.h:
313         * wtf/text/ConversionMode.h:
314         * wtf/text/ExternalStringImpl.cpp:
315         * wtf/text/IntegerToStringConversion.h:
316         * wtf/text/LChar.h:
317         * wtf/text/LineEnding.cpp:
318         * wtf/text/StringBuffer.h:
319         * wtf/text/StringBuilder.cpp:
320         * wtf/text/StringBuilder.h:
321         * wtf/text/StringBuilderJSON.cpp:
322         * wtf/text/StringCommon.h:
323         * wtf/text/StringConcatenate.h:
324         * wtf/text/StringHash.h:
325         * wtf/text/StringImpl.cpp:
326         * wtf/text/StringImpl.h:
327         * wtf/text/StringOperators.h:
328         * wtf/text/StringView.cpp:
329         * wtf/text/StringView.h:
330         * wtf/text/SymbolImpl.cpp:
331         * wtf/text/SymbolRegistry.cpp:
332         * wtf/text/SymbolRegistry.h:
333         * wtf/text/TextBreakIterator.cpp:
334         * wtf/text/TextBreakIterator.h:
335         * wtf/text/TextBreakIteratorInternalICU.h:
336         * wtf/text/TextPosition.h:
337         * wtf/text/TextStream.cpp:
338         * wtf/text/UniquedStringImpl.h:
339         * wtf/text/WTFString.cpp:
340         * wtf/text/WTFString.h:
341         * wtf/text/cocoa/StringCocoa.mm:
342         * wtf/text/cocoa/StringViewCocoa.mm:
343         * wtf/text/cocoa/TextBreakIteratorInternalICUCocoa.cpp:
344         * wtf/text/icu/UTextProvider.cpp:
345         * wtf/text/icu/UTextProvider.h:
346         * wtf/text/icu/UTextProviderLatin1.cpp:
347         * wtf/text/icu/UTextProviderLatin1.h:
348         * wtf/text/icu/UTextProviderUTF16.cpp:
349         * wtf/text/icu/UTextProviderUTF16.h:
350         * wtf/threads/BinarySemaphore.cpp:
351         * wtf/threads/BinarySemaphore.h:
352         * wtf/threads/Signals.cpp:
353         * wtf/unicode/CharacterNames.h:
354         * wtf/unicode/Collator.h:
355         * wtf/unicode/CollatorDefault.cpp:
356         * wtf/unicode/UTF8.cpp:
357         * wtf/unicode/UTF8.h:
358
359 2018-10-12  Alex Christensen  <achristensen@webkit.org>
360
361         Allow encoding of small enum classes
362         https://bugs.webkit.org/show_bug.cgi?id=190531
363
364         Reviewed by Tim Horton.
365
366         * wtf/Forward.h:
367
368 2018-10-11  Alexey Proskuryakov  <ap@apple.com>
369
370         Add PLATFORM(IOS_FAMILY) and OS(IOS_FAMILY)
371         https://bugs.webkit.org/show_bug.cgi?id=190477
372
373         Reviewed by Tim Horton.
374
375         Currently, PLATFORM(IOS) and OS(IOS) are true when building for any
376         TARGET_OS_IPHONE target, which is quite confusing. Add a better named alternative,
377         as a first step towards mass replacing PLATFORM(IOS). Can't so it all at once
378         because of dependencies in other source repositories.
379
380         * wtf/Platform.h: Changed to the new name in this file though. Kept a few
381         instances that actually target iOS only, having a version check.
382
383 2018-10-11  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
384
385         Use currentStackPointer more
386         https://bugs.webkit.org/show_bug.cgi?id=190503
387
388         Reviewed by Saam Barati.
389
390         Use WTF::currentStackPointer more in WebKit to adopt ASAN detect_stack_use_after_return option.
391
392         * wtf/StackBounds.cpp:
393         (WTF::testStackDirection2):
394         (WTF::testStackDirection):
395         * wtf/ThreadingPthreads.cpp:
396         (WTF::Thread::signalHandlerSuspendResume):
397         (WTF::getApproximateStackPointer): Deleted.
398
399 2018-10-11  Ross Kirsling  <ross.kirsling@sony.com>
400
401         [WTF] Semaphore.h conflicts with POSIX header
402         https://bugs.webkit.org/show_bug.cgi?id=190486
403
404         Reviewed by Yusuke Suzuki.
405
406         Rename Semaphore.h to WTFSemaphore.h to avoid conflict with POSIX semaphore.h on case-insensitive file systems.
407
408         * WTF.xcodeproj/project.pbxproj:
409         * wtf/CMakeLists.txt:
410         * wtf/WTFSemaphore.h: Renamed from wtf/Semaphore.h.
411
412 2018-10-10  Mark Lam  <mark.lam@apple.com>
413
414         Changes towards allowing use of the ASAN detect_stack_use_after_return option.
415         https://bugs.webkit.org/show_bug.cgi?id=190405
416         <rdar://problem/45131464>
417
418         Reviewed by Michael Saboff.
419
420         Introduce WTF::currentStackPointer() which computes its caller's stack pointer value.
421
422         * WTF.xcodeproj/project.pbxproj:
423         * wtf/CMakeLists.txt:
424         * wtf/StackBounds.h:
425         (WTF::StackBounds::checkConsistency const):
426         * wtf/StackPointer.cpp: Added.
427         (WTF::currentStackPointer):
428         * wtf/StackPointer.h: Added.
429
430 2018-10-09  Mark Lam  <mark.lam@apple.com>
431
432         StringTypeAdapter constructor is not properly enforcing String::MaxLength.
433         https://bugs.webkit.org/show_bug.cgi?id=190392
434         <rdar://problem/45116210>
435
436         Reviewed by Saam Barati.
437
438         Previously, the StringTypeAdapter constructor for a UChar* string was summing the
439         unsigned length of the source string without an overflow check.  We now make that
440         length a size_t which removes this issue, and assert that it's within
441         String::MaxLength thereafter.
442
443         Also made the StringTypeAdapter constructor for a LChar* string behave in an
444         equivalent manner for consistency.  In both cases, we'll crash in a RELEASE_ASSERT
445         if the source string length exceeds String::MaxLength.
446
447         * wtf/text/StringConcatenate.h:
448
449 2018-10-09  Mark Lam  <mark.lam@apple.com>
450
451         Revert temporary asserts for debugging a mysterious ASAN bot crash.
452         https://bugs.webkit.org/show_bug.cgi?id=190396
453
454         Reviewed by Yusuke Suzuki.
455
456         * wtf/StackBounds.cpp:
457         (WTF::StackBounds::newThreadStackBounds):
458         * wtf/StackBounds.h:
459         (WTF::StackBounds::checkConsistency const):
460
461 2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
462
463         Make <input type=color> a runtime enabled (on-by-default) feature
464         https://bugs.webkit.org/show_bug.cgi?id=189162
465
466         Reviewed by Wenson Hsieh and Tim Horton.
467
468         * wtf/FeatureDefines.h:
469
470 2018-10-06  Mark Lam  <mark.lam@apple.com>
471
472         Adding some temporary asserts with data logging to debug a mysterious ASAN bot crash.
473         https://bugs.webkit.org/show_bug.cgi?id=190334
474         <rdar://problem/45071303>
475
476         Reviewed by Yusuke Suzuki.
477
478         These assertions are needed because we can't reproduce the issue locally.
479         We'll remove these asserts after the needed data has been collected from the bot.
480
481         * wtf/StackBounds.cpp:
482         (WTF::StackBounds::newThreadStackBounds):
483         * wtf/StackBounds.h:
484         (WTF::StackBounds::checkConsistency const):
485
486 2018-10-07  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
487
488         Name Heap threads
489         https://bugs.webkit.org/show_bug.cgi?id=190337
490
491         Reviewed by Mark Lam.
492
493         Add a functionality naming threads of ParallelHelperPool.
494
495         * wtf/ParallelHelperPool.cpp:
496         (WTF::ParallelHelperPool::ParallelHelperPool):
497         * wtf/ParallelHelperPool.h:
498
499 2018-10-06  Mark Lam  <mark.lam@apple.com>
500
501         Adding some temporary asserts to debug a mysterious ASAN bot crash.
502         https://bugs.webkit.org/show_bug.cgi?id=190331
503
504         Reviewed by Filip Pizlo.
505
506         These assertions are needed because we can't reproduce the issue locally.
507         We'll remove these asserts after the needed data has been collected from the bot.
508
509         * wtf/StackBounds.h:
510         (WTF::StackBounds::checkConsistency const):
511
512 2018-10-05  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
513
514         [JSC][Linux] Support Perf JITDump logging
515         https://bugs.webkit.org/show_bug.cgi?id=189893
516
517         Reviewed by Mark Lam.
518
519         * wtf/PageReservation.h:
520         (WTF::PageReservation::reserveAndCommitWithGuardPages):
521
522 2018-10-03  Dan Bernstein  <mitz@apple.com>
523
524         WTF part of [Xcode] Update some build settings as recommended by Xcode 10
525         https://bugs.webkit.org/show_bug.cgi?id=190250
526
527         Reviewed by Alex Christensen.
528
529         * Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
530           and CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF.
531
532         * WTF.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
533
534         * wtf/MathExtras.h:
535         (WTF::fastLog2): Addressed newly-enabled CLANG_WARN_COMMA by splitting some comma-separated
536           expressions into individual statements.
537
538 2018-10-03  Mark Lam  <mark.lam@apple.com>
539
540         Make string MaxLength for all WTF and JS strings consistently equal to INT_MAX.
541         https://bugs.webkit.org/show_bug.cgi?id=190187
542         <rdar://problem/42512909>
543
544         Reviewed by Michael Saboff.
545
546         * wtf/text/StringConcatenate.h:
547         (WTF::tryMakeStringFromAdapters):
548         (WTF::sumWithOverflow): Deleted.
549         * wtf/text/StringImpl.h:
550         * wtf/text/WTFString.h:
551
552 2018-10-03  Michael Catanzaro  <mcatanzaro@igalia.com>
553
554         -Wunused-variable in RenderLayer::updateScrollableAreaSet
555         https://bugs.webkit.org/show_bug.cgi?id=190200
556
557         Reviewed by Yusuke Suzuki.
558
559         Add a new UNUSED_VARIABLE() macro. It's the same as UNUSED_PARAM(), just named differently.
560
561         * wtf/Compiler.h:
562
563 2018-10-01  Dean Jackson  <dino@apple.com>
564
565         [macOS] Switching to discrete GPU should be done in the UI process
566         https://bugs.webkit.org/show_bug.cgi?id=189361
567         <rdar://problem/43949622>
568
569         Reviewed by Simon Fraser.
570
571         Define GL_SILENCE_DEPRECATION to avoid deprecation warnings for OpenGL.
572
573         * wtf/Platform.h:
574
575 2018-10-02  Commit Queue  <commit-queue@webkit.org>
576
577         Unreviewed, rolling out r236624 and r236671.
578         https://bugs.webkit.org/show_bug.cgi?id=190207
579
580         The change in r236624 introduced crashes on the bots
581         (Requested by ryanhaddad on #webkit).
582
583         Reverted changesets:
584
585         "Refactoring: eliminate raw pointer usage in Fullscreen code"
586         https://bugs.webkit.org/show_bug.cgi?id=188747
587         https://trac.webkit.org/changeset/236624
588
589         "Unify implementation in VideoFullscreenInterfaceAVKit"
590         https://bugs.webkit.org/show_bug.cgi?id=190091
591         https://trac.webkit.org/changeset/236671
592
593 2018-10-02  Caio Lima  <ticaiolima@gmail.com>
594
595         [BigInt] BigInt.proptotype.toString is broken when radix is power of 2
596         https://bugs.webkit.org/show_bug.cgi?id=190033
597
598         Reviewed by Yusuke Suzuki.
599
600         * wtf/MathExtras.h:
601         (WTF::ctz32):
602
603 2018-10-01  Andy Estes  <aestes@apple.com>
604
605         [watchOS] Adopt NSURLSessionCompanionProxyPreference
606         https://bugs.webkit.org/show_bug.cgi?id=190177
607         <rdar://problem/43402114>
608
609         Reviewed by Wenson Hsieh.
610
611         * wtf/FeatureDefines.h:
612
613 2018-10-01  Koby Boyango  <koby.b@mce-sys.com>
614
615         [WTF][JSCONLY] Use MainThreadWin on Windows in the JSCOnly port
616         https://bugs.webkit.org/show_bug.cgi?id=190121
617
618         Reviewed by Yusuke Suzuki.
619
620         This fixes JSCOnly build on Windows after r236617.
621
622         * wtf/PlatformJSCOnly.cmake:
623
624 2018-10-01  Commit Queue  <commit-queue@webkit.org>
625
626         Unreviewed, rolling out r236647.
627         https://bugs.webkit.org/show_bug.cgi?id=190124
628
629         Breaking test stress/big-int-to-string.js (Requested by
630         caiolima_ on #webkit).
631
632         Reverted changeset:
633
634         "[BigInt] BigInt.proptotype.toString is broken when radix is
635         power of 2"
636         https://bugs.webkit.org/show_bug.cgi?id=190033
637         https://trac.webkit.org/changeset/236647
638
639 2018-09-30  Caio Lima  <ticaiolima@gmail.com>
640
641         [BigInt] BigInt.proptotype.toString is broken when radix is power of 2
642         https://bugs.webkit.org/show_bug.cgi?id=190033
643
644         Reviewed by Yusuke Suzuki.
645
646         * wtf/MathExtras.h:
647         (WTF::ctz32):
648
649 2018-09-28  Jer Noble  <jer.noble@apple.com>
650
651         Refactoring: eliminate raw pointer usage in Fullscreen code
652         https://bugs.webkit.org/show_bug.cgi?id=188747
653         <rdar://problem/43541164>
654
655         Reviewed by Alex Christensen.
656
657         * WTF.xcodeproj/project.pbxproj:
658         * wtf/WeakPtrContainer.h: Added.
659
660 2018-09-28  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
661
662         [WTF] Make isMainThread more reliable
663         https://bugs.webkit.org/show_bug.cgi?id=189880
664
665         Reviewed by Mark Lam.
666
667         isMainThread() relied on Thread::current(). This API becomes broken in Windows
668         when the Thread is about to be destroyed since TLS is already cleared. This causes
669         a bug since `isMainThread()` is called in Thread::didExit in Windows.
670
671         This patch makes this `isMainThread` more reliable in all the platforms. In Windows,
672         we use `Thread::currentID()` instead of `Thread::current()` since `Thread::currentID`
673         uses Win32 GetCurrentThreadId directly. In the other system, we use `pthread_main_np`
674         or `pthread_self` instead.
675
676         We also move `holdLock` code inside `if (shouldRemoveThreadFromThreadGroup())`. If
677         the other thread takes a mutex and destroyed, this `holdLock` waits forever. This problem
678         only happens in Windows since Windows calls TLS destructor for the main thread.
679
680         * WTF.xcodeproj/project.pbxproj:
681         * wtf/MainThread.cpp:
682         (WTF::initializeMainThread):
683         (): Deleted.
684         (WTF::isMainThread): Deleted.
685         (WTF::isMainThreadIfInitialized): Deleted.
686         * wtf/Platform.h:
687         * wtf/PlatformMac.cmake:
688         * wtf/Threading.cpp:
689         (WTF::Thread::didExit):
690         * wtf/cocoa/MainThreadCocoa.mm: Renamed from Source/WTF/wtf/mac/MainThreadMac.mm.
691         * wtf/generic/MainThreadGeneric.cpp:
692         (WTF::initializeMainThreadPlatform):
693         (WTF::isMainThread):
694         (WTF::isMainThreadIfInitialized):
695         * wtf/win/MainThreadWin.cpp:
696         (WTF::initializeMainThreadPlatform):
697         (WTF::isMainThread):
698         (WTF::isMainThreadIfInitialized):
699
700 2018-09-28  Commit Queue  <commit-queue@webkit.org>
701
702         Unreviewed, rolling out r236605.
703         https://bugs.webkit.org/show_bug.cgi?id=190087
704
705         caused three API test timeouts (Requested by jernoble on
706         #webkit).
707
708         Reverted changeset:
709
710         "Refactoring: eliminate raw pointer usage in Fullscreen code"
711         https://bugs.webkit.org/show_bug.cgi?id=188747
712         https://trac.webkit.org/changeset/236605
713
714 2018-09-28  Brian Burg  <bburg@apple.com>
715
716         Replace recently added line comments in Compiler.h
717         https://bugs.webkit.org/show_bug.cgi?id=190062
718         <rdar://problem/44838618>
719
720         Reviewed by Joseph Pecoraro.
721
722         This breaks some Apple-internal tooling. For now, work around it by
723         changing the comment style. On the other side, the issue will be fixed
724         more permanently by adopting the approach from r230213.
725
726         * wtf/Compiler.h: Use multiline comments.
727
728 2018-09-28  Jer Noble  <jer.noble@apple.com>
729
730         Refactoring: eliminate raw pointer usage in Fullscreen code
731         https://bugs.webkit.org/show_bug.cgi?id=188747
732         <rdar://problem/43541164>
733
734         Reviewed by Alex Christensen.
735
736         * WTF.xcodeproj/project.pbxproj:
737         * wtf/WeakPtrContainer.h: Added.
738
739 2018-09-28  Koby Boyango  <koby.b@mce.systems>
740
741         [WTF] Add ExternalStringImpl, a StringImpl for user controlled buffers
742         https://bugs.webkit.org/show_bug.cgi?id=189991
743
744         Reviewed by Yusuke Suzuki.
745
746         * WTF.xcodeproj/project.pbxproj:
747         * wtf/CMakeLists.txt:
748         * wtf/text/ExternalStringImpl.cpp: Added.
749         * wtf/text/ExternalStringImpl.h: Added.
750         * wtf/text/StringImpl.cpp:
751         * wtf/text/StringImpl.h:
752
753 2018-09-27  Saam barati  <sbarati@apple.com>
754
755         Verify the contents of AssemblerBuffer on arm64e
756         https://bugs.webkit.org/show_bug.cgi?id=190057
757         <rdar://problem/38916630>
758
759         Reviewed by Mark Lam.
760
761         * wtf/PtrTag.h:
762         (WTF::tagInt):
763
764 2018-09-27  Jer Noble  <jer.noble@apple.com>
765
766         MediaPlayer should have mediaPlayerWaitingForKeyChanged() / bool waitingForKey() accessor
767         https://bugs.webkit.org/show_bug.cgi?id=189951
768
769         Reviewed by Eric Carlson.
770
771         Templated functions should take r-value references, as they have perfect type deduction for
772         all parameter types; references, l-value references, and r-value references in template function
773         parameters have special type deduction semantics.
774         See: <https://en.cppreference.com/w/cpp/language/reference#Forwarding_references>
775
776         Previously, const reference parameters would be copied when passed into anyOf(), and containers
777         of Ref<> would generate compile errors when passed into anyOf, as they cannot be copied. Now,
778         with r-value reference types in template parameters, a const reference is mapped to a const reference,
779         a non-const reference is mapped to a non-const reference, and a r-value reference is mapped to
780         an r-value reference.
781
782         * wtf/Algorithms.h:
783         (WTF::forEach):
784         (WTF::anyOf):
785         (WTF::allOf):
786
787 2018-09-25  John Wilander  <wilander@apple.com>
788
789         Change from HAVE(CFNETWORK_STORAGE_PARTITIONING) to ENABLE(RESOURCE_LOAD_STATISTICS)
790         https://bugs.webkit.org/show_bug.cgi?id=189959
791         <rdar://problem/44767642>
792
793         Reviewed by Chris Dumez.
794
795         * wtf/Platform.h:
796             Enables RESOURCE_LOAD_STATISTICS for Cocoa platforms.
797
798 2018-09-24  Fujii Hironori  <Hironori.Fujii@sony.com>
799
800         Rename WTF_COMPILER_GCC_OR_CLANG to WTF_COMPILER_GCC_COMPATIBLE
801         https://bugs.webkit.org/show_bug.cgi?id=189733
802
803         Reviewed by Michael Catanzaro.
804
805         Clang for Windows build enables WTF_COMPILER_CLANG and
806         WTF_COMPILER_MSVC, but disables WTF_COMPILER_GCC_OR_CLANG. It is
807         strange WTF_COMPILER_GCC_OR_CLANG is not enabled even though
808         WTF_COMPILER_CLANG is enabled. However, Clang for Windows imitates
809         MSVC, and codes for COMPILER(GCC_OR_CLANG) are for non MSVC. At
810         least at the moment, it is not feasible to define
811         WTF_COMPILER_GCC_OR_CLANG for Clang for Windows.
812
813         To solve the issue, this change renames WTF_COMPILER_GCC_OR_CLANG
814         to WTF_COMPILER_GCC_COMPATIBLE.
815
816         As an exception, I'd like to use IGNORE_WARNINGS_* macros even in
817         Clang for Windows builds.
818
819         * wtf/Assertions.cpp: Replaced COMPILER(GCC_OR_CLANG) with COMPILER(GCC_COMPATIBLE).
820         * wtf/Assertions.h: Ditto.
821         * wtf/Atomics.h: Ditto.
822         * wtf/CheckedArithmetic.h: Ditto.
823         * wtf/FastMalloc.h: Ditto.
824         * wtf/MathExtras.h: Ditto.
825         * wtf/Platform.h: Ditto.
826         * wtf/StdLibExtras.h: Ditto.
827         * wtf/Vector.h: Ditto.
828         * wtf/text/ASCIIFastPath.h: Ditto.
829         * wtf/Compiler.h:  Ditto. Replaced "COMPILER(GCC_OR_CLANG)" with "COMPILER(GCC) || COMPILER(CLANG)" of IGNORE_WARNINGS_* macros.
830
831 2018-09-21  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
832
833         [JSC] Enable LLInt ASM interpreter on X64 and ARM64 in non JIT configuration
834         https://bugs.webkit.org/show_bug.cgi?id=189778
835
836         Reviewed by Keith Miller.
837
838         This patch adds ENABLE(C_LOOP) which indicates we use CLoop as the interpreter.
839         Previously, we used !ENABLE(JIT) for this configuration. But now, we have
840         a build configuration that has LLInt ASM interpreter (not CLoop) and !ENABLE(JIT).
841
842         We enable LLInt ASM interpreter for non JIT environment in X86_64 and ARM64 architectures.
843         And we enable ENABLE(ASSEMBLER) for non JIT environment since it offers machine register
844         information which is used for LLInt and SamplingProfiler.
845
846         * wtf/Platform.h:
847
848 2018-09-21  Keith Miller  <keith_miller@apple.com>
849
850         Add Promise SPI
851         https://bugs.webkit.org/show_bug.cgi?id=189809
852
853         Reviewed by Saam Barati.
854
855         Fix issue where creating a JSContextRef off the main thread before
856         creating initializing the main thread would cause an assertion
857         failure.
858
859         * wtf/MainThread.cpp:
860         (WTF::isMainThreadIfInitialized):
861         * wtf/MainThread.h:
862         * wtf/mac/MainThreadMac.mm:
863         (WTF::isMainThreadIfInitialized):
864         * wtf/text/cf/StringImplCF.cpp:
865         (WTF::StringImpl::createCFString):
866
867 2018-09-21  Ryan Haddad  <ryanhaddad@apple.com>
868
869         Unreviewed, rolling out r236359.
870
871         Broke the Windows build.
872
873         Reverted changeset:
874
875         "Add Promise SPI"
876         https://bugs.webkit.org/show_bug.cgi?id=189809
877         https://trac.webkit.org/changeset/236359
878
879 2018-09-21  Keith Miller  <keith_miller@apple.com>
880
881         Add Promise SPI
882         https://bugs.webkit.org/show_bug.cgi?id=189809
883
884         Reviewed by Saam Barati.
885
886         Fix issue where creating a JSContextRef off the main thread before
887         creating initializing the main thread would cause an assertion
888         failure.
889
890         * wtf/MainThread.cpp:
891         (WTF::isMainThreadIfInitialized):
892         * wtf/MainThread.h:
893         * wtf/mac/MainThreadMac.mm:
894         (WTF::isMainThreadIfInitialized):
895         * wtf/text/cf/StringImplCF.cpp:
896         (WTF::StringImpl::createCFString):
897
898 2018-09-20  Fujii Hironori  <Hironori.Fujii@sony.com>
899
900         [Win][Clang] UNUSED_PARAM(this) causes compilation error of "cannot take the address of an rvalue of type"
901         https://bugs.webkit.org/show_bug.cgi?id=189732
902
903         Reviewed by Per Arne Vollan.
904
905         Clang for Windows can't compile the MSVC workaround of
906         UNUSED_PARAM which has been introduced for Windows CE and Visual
907         Studio 10. I think it's safe just to remove it.
908
909         * wtf/Compiler.h: Removed the code for COMPILER(MSVC).
910
911 2018-09-20  Alex Christensen  <achristensen@webkit.org>
912
913         Unreviewed, rolling out r235976.
914
915         Broke ARM
916
917         Reverted changeset:
918
919         "Use a Variant instead of a union in CSSSelector"
920         https://bugs.webkit.org/show_bug.cgi?id=188559
921         https://trac.webkit.org/changeset/235976
922
923 2018-09-17  Yusuke Suzuki  <utatane.tea@gmail.com>
924
925         [WTF] Use Semaphore and BinarySemaphore instead of dispatch_semaphore_t
926         https://bugs.webkit.org/show_bug.cgi?id=185339
927
928         Reviewed by Mark Lam.
929
930         This patch adds WTF::Semaphore, which is based on WTF::Lock and WTF::Condition.
931
932         * WTF.xcodeproj/project.pbxproj:
933         * wtf/CMakeLists.txt:
934         * wtf/Semaphore.h: Added.
935         (WTF::Semaphore::Semaphore):
936         (WTF::Semaphore::signal):
937         (WTF::Semaphore::waitUntil):
938         (WTF::Semaphore::waitFor):
939         (WTF::Semaphore::wait):
940         * wtf/generic/WorkQueueGeneric.cpp:
941         (WorkQueue::platformInitialize):
942         * wtf/threads/BinarySemaphore.cpp:
943         (WTF::BinarySemaphore::waitUntil):
944         (WTF::BinarySemaphore::wait): Deleted.
945         * wtf/threads/BinarySemaphore.h:
946         (WTF::BinarySemaphore::waitFor):
947         (WTF::BinarySemaphore::wait):
948         Align the names of the functions to WTF::Condition.
949         Add BinarySemaphore::wait(), which is the same to waitUntil(WallTime::infinity()).
950
951 2018-09-17  Jer Noble  <jer.noble@apple.com>
952
953         Add support for HEVC codec types in Media Capabilities
954         https://bugs.webkit.org/show_bug.cgi?id=189565
955
956         Reviewed by Eric Carlson.
957
958         Extract the toIntegralType template into its own header.
959
960         * wtf/CMakeLists.txt:
961         * wtf/text/StringConversion.h: Added.
962         (isCharacterAllowedInBase):
963         (toIntegralType):
964         * wtf/text/WTFString.cpp:
965
966 2018-09-17  Jer Noble  <jer.noble@apple.com>
967
968         Enable USE_MEDIAREMOTE on iOS
969         https://bugs.webkit.org/show_bug.cgi?id=189096
970
971         Reviewed by Eric Carlson.
972
973         * wtf/Platform.h:
974
975 2018-09-17  Frederic Wang  <fwang@igalia.com>
976
977         Build error in ImageBufferCG when compiled with IOSurfacePool
978         https://bugs.webkit.org/show_bug.cgi?id=189579
979
980         Reviewed by Tim Horton.
981
982         IOSurface.h might be included with different value of IOSURFACE_CANVAS_BACKING_STORE, causing
983         compilation errors when files in the same unified source do not agree on the definition.
984         This patch moves the definition of IOSURFACE_CANVAS_BACKING_STORE from ImageBufferDataCG.h
985         to Platform.h so that IOSURFACE_CANVAS_BACKING_STORE is set to the same value in all files.
986         Finally some minors changes to explicitly declare/define ImageBuffer are performed in order
987         to prevent future issues with Unified build rotating.
988
989         * wtf/Platform.h: Move definition from ImageBufferDataCG.h.
990
991 2018-09-14  Ryan Haddad  <ryanhaddad@apple.com>
992
993         Unreviewed, rolling out r235990.
994
995         Introduced TestWebKitAPI.NowPlayingTest timeouts on iOS
996
997         Reverted changeset:
998
999         "Enable USE_MEDIAREMOTE on iOS"
1000         https://bugs.webkit.org/show_bug.cgi?id=189096
1001         https://trac.webkit.org/changeset/235990
1002
1003 2018-09-13  Jer Noble  <jer.noble@apple.com>
1004
1005         Enable USE_MEDIAREMOTE on iOS
1006         https://bugs.webkit.org/show_bug.cgi?id=189096
1007
1008         Reviewed by Eric Carlson.
1009
1010         * wtf/Platform.h:
1011
1012 2018-09-13  Alex Christensen  <achristensen@webkit.org>
1013
1014         Use a Variant instead of a union in CSSSelector
1015         https://bugs.webkit.org/show_bug.cgi?id=188559
1016
1017         Reviewed by Antti Koivisto.
1018
1019         * wtf/Variant.h:
1020         Add packing macros to make it so Variant-containing structures don't always have 7 bytes of padding per Variant.
1021
1022 2018-09-12  Guillaume Emont  <guijemont@igalia.com>
1023
1024         Add IGNORE_WARNING_.* macros
1025         https://bugs.webkit.org/show_bug.cgi?id=188996
1026
1027         Reviewed by Michael Catanzaro.
1028
1029         * wtf/Assertions.cpp:
1030         * wtf/Assertions.h:
1031         * wtf/Compiler.h:
1032         * wtf/MD5.cpp:
1033         (WTF::MD5::MD5):
1034         (WTF::MD5::addBytes):
1035         (WTF::MD5::checksum):
1036         * wtf/PrintStream.cpp:
1037         (WTF::PrintStream::printfVariableFormat):
1038         * wtf/SHA1.cpp:
1039         (WTF::SHA1::SHA1):
1040         (WTF::SHA1::addBytes):
1041         (WTF::SHA1::computeHash):
1042         * wtf/ThreadingPthreads.cpp:
1043         * wtf/Vector.h:
1044         (WTF::VectorBuffer::endOfBuffer):
1045         * wtf/text/WTFString.cpp:
1046         (WTF::createWithFormatAndArguments):
1047
1048 == Rolled over to ChangeLog-2018-09-11 ==