-Wunused-variable in RenderLayer::updateScrollableAreaSet
[WebKit-https.git] / Source / WTF / ChangeLog
1 2018-10-03  Michael Catanzaro  <mcatanzaro@igalia.com>
2
3         -Wunused-variable in RenderLayer::updateScrollableAreaSet
4         https://bugs.webkit.org/show_bug.cgi?id=190200
5
6         Reviewed by Yusuke Suzuki.
7
8         Add a new UNUSED_VARIABLE() macro. It's the same as UNUSED_PARAM(), just named differently.
9
10         * wtf/Compiler.h:
11
12 2018-10-01  Dean Jackson  <dino@apple.com>
13
14         [macOS] Switching to discrete GPU should be done in the UI process
15         https://bugs.webkit.org/show_bug.cgi?id=189361
16         <rdar://problem/43949622>
17
18         Reviewed by Simon Fraser.
19
20         Define GL_SILENCE_DEPRECATION to avoid deprecation warnings for OpenGL.
21
22         * wtf/Platform.h:
23
24 2018-10-02  Commit Queue  <commit-queue@webkit.org>
25
26         Unreviewed, rolling out r236624 and r236671.
27         https://bugs.webkit.org/show_bug.cgi?id=190207
28
29         The change in r236624 introduced crashes on the bots
30         (Requested by ryanhaddad on #webkit).
31
32         Reverted changesets:
33
34         "Refactoring: eliminate raw pointer usage in Fullscreen code"
35         https://bugs.webkit.org/show_bug.cgi?id=188747
36         https://trac.webkit.org/changeset/236624
37
38         "Unify implementation in VideoFullscreenInterfaceAVKit"
39         https://bugs.webkit.org/show_bug.cgi?id=190091
40         https://trac.webkit.org/changeset/236671
41
42 2018-10-02  Caio Lima  <ticaiolima@gmail.com>
43
44         [BigInt] BigInt.proptotype.toString is broken when radix is power of 2
45         https://bugs.webkit.org/show_bug.cgi?id=190033
46
47         Reviewed by Yusuke Suzuki.
48
49         * wtf/MathExtras.h:
50         (WTF::ctz32):
51
52 2018-10-01  Andy Estes  <aestes@apple.com>
53
54         [watchOS] Adopt NSURLSessionCompanionProxyPreference
55         https://bugs.webkit.org/show_bug.cgi?id=190177
56         <rdar://problem/43402114>
57
58         Reviewed by Wenson Hsieh.
59
60         * wtf/FeatureDefines.h:
61
62 2018-10-01  Koby Boyango  <koby.b@mce-sys.com>
63
64         [WTF][JSCONLY] Use MainThreadWin on Windows in the JSCOnly port
65         https://bugs.webkit.org/show_bug.cgi?id=190121
66
67         Reviewed by Yusuke Suzuki.
68
69         This fixes JSCOnly build on Windows after r236617.
70
71         * wtf/PlatformJSCOnly.cmake:
72
73 2018-10-01  Commit Queue  <commit-queue@webkit.org>
74
75         Unreviewed, rolling out r236647.
76         https://bugs.webkit.org/show_bug.cgi?id=190124
77
78         Breaking test stress/big-int-to-string.js (Requested by
79         caiolima_ on #webkit).
80
81         Reverted changeset:
82
83         "[BigInt] BigInt.proptotype.toString is broken when radix is
84         power of 2"
85         https://bugs.webkit.org/show_bug.cgi?id=190033
86         https://trac.webkit.org/changeset/236647
87
88 2018-09-30  Caio Lima  <ticaiolima@gmail.com>
89
90         [BigInt] BigInt.proptotype.toString is broken when radix is power of 2
91         https://bugs.webkit.org/show_bug.cgi?id=190033
92
93         Reviewed by Yusuke Suzuki.
94
95         * wtf/MathExtras.h:
96         (WTF::ctz32):
97
98 2018-09-28  Jer Noble  <jer.noble@apple.com>
99
100         Refactoring: eliminate raw pointer usage in Fullscreen code
101         https://bugs.webkit.org/show_bug.cgi?id=188747
102         <rdar://problem/43541164>
103
104         Reviewed by Alex Christensen.
105
106         * WTF.xcodeproj/project.pbxproj:
107         * wtf/WeakPtrContainer.h: Added.
108
109 2018-09-28  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
110
111         [WTF] Make isMainThread more reliable
112         https://bugs.webkit.org/show_bug.cgi?id=189880
113
114         Reviewed by Mark Lam.
115
116         isMainThread() relied on Thread::current(). This API becomes broken in Windows
117         when the Thread is about to be destroyed since TLS is already cleared. This causes
118         a bug since `isMainThread()` is called in Thread::didExit in Windows.
119
120         This patch makes this `isMainThread` more reliable in all the platforms. In Windows,
121         we use `Thread::currentID()` instead of `Thread::current()` since `Thread::currentID`
122         uses Win32 GetCurrentThreadId directly. In the other system, we use `pthread_main_np`
123         or `pthread_self` instead.
124
125         We also move `holdLock` code inside `if (shouldRemoveThreadFromThreadGroup())`. If
126         the other thread takes a mutex and destroyed, this `holdLock` waits forever. This problem
127         only happens in Windows since Windows calls TLS destructor for the main thread.
128
129         * WTF.xcodeproj/project.pbxproj:
130         * wtf/MainThread.cpp:
131         (WTF::initializeMainThread):
132         (): Deleted.
133         (WTF::isMainThread): Deleted.
134         (WTF::isMainThreadIfInitialized): Deleted.
135         * wtf/Platform.h:
136         * wtf/PlatformMac.cmake:
137         * wtf/Threading.cpp:
138         (WTF::Thread::didExit):
139         * wtf/cocoa/MainThreadCocoa.mm: Renamed from Source/WTF/wtf/mac/MainThreadMac.mm.
140         * wtf/generic/MainThreadGeneric.cpp:
141         (WTF::initializeMainThreadPlatform):
142         (WTF::isMainThread):
143         (WTF::isMainThreadIfInitialized):
144         * wtf/win/MainThreadWin.cpp:
145         (WTF::initializeMainThreadPlatform):
146         (WTF::isMainThread):
147         (WTF::isMainThreadIfInitialized):
148
149 2018-09-28  Commit Queue  <commit-queue@webkit.org>
150
151         Unreviewed, rolling out r236605.
152         https://bugs.webkit.org/show_bug.cgi?id=190087
153
154         caused three API test timeouts (Requested by jernoble on
155         #webkit).
156
157         Reverted changeset:
158
159         "Refactoring: eliminate raw pointer usage in Fullscreen code"
160         https://bugs.webkit.org/show_bug.cgi?id=188747
161         https://trac.webkit.org/changeset/236605
162
163 2018-09-28  Brian Burg  <bburg@apple.com>
164
165         Replace recently added line comments in Compiler.h
166         https://bugs.webkit.org/show_bug.cgi?id=190062
167         <rdar://problem/44838618>
168
169         Reviewed by Joseph Pecoraro.
170
171         This breaks some Apple-internal tooling. For now, work around it by
172         changing the comment style. On the other side, the issue will be fixed
173         more permanently by adopting the approach from r230213.
174
175         * wtf/Compiler.h: Use multiline comments.
176
177 2018-09-28  Jer Noble  <jer.noble@apple.com>
178
179         Refactoring: eliminate raw pointer usage in Fullscreen code
180         https://bugs.webkit.org/show_bug.cgi?id=188747
181         <rdar://problem/43541164>
182
183         Reviewed by Alex Christensen.
184
185         * WTF.xcodeproj/project.pbxproj:
186         * wtf/WeakPtrContainer.h: Added.
187
188 2018-09-28  Koby Boyango  <koby.b@mce.systems>
189
190         [WTF] Add ExternalStringImpl, a StringImpl for user controlled buffers
191         https://bugs.webkit.org/show_bug.cgi?id=189991
192
193         Reviewed by Yusuke Suzuki.
194
195         * WTF.xcodeproj/project.pbxproj:
196         * wtf/CMakeLists.txt:
197         * wtf/text/ExternalStringImpl.cpp: Added.
198         * wtf/text/ExternalStringImpl.h: Added.
199         * wtf/text/StringImpl.cpp:
200         * wtf/text/StringImpl.h:
201
202 2018-09-27  Saam barati  <sbarati@apple.com>
203
204         Verify the contents of AssemblerBuffer on arm64e
205         https://bugs.webkit.org/show_bug.cgi?id=190057
206         <rdar://problem/38916630>
207
208         Reviewed by Mark Lam.
209
210         * wtf/PtrTag.h:
211         (WTF::tagInt):
212
213 2018-09-27  Jer Noble  <jer.noble@apple.com>
214
215         MediaPlayer should have mediaPlayerWaitingForKeyChanged() / bool waitingForKey() accessor
216         https://bugs.webkit.org/show_bug.cgi?id=189951
217
218         Reviewed by Eric Carlson.
219
220         Templated functions should take r-value references, as they have perfect type deduction for
221         all parameter types; references, l-value references, and r-value references in template function
222         parameters have special type deduction semantics.
223         See: <https://en.cppreference.com/w/cpp/language/reference#Forwarding_references>
224
225         Previously, const reference parameters would be copied when passed into anyOf(), and containers
226         of Ref<> would generate compile errors when passed into anyOf, as they cannot be copied. Now,
227         with r-value reference types in template parameters, a const reference is mapped to a const reference,
228         a non-const reference is mapped to a non-const reference, and a r-value reference is mapped to
229         an r-value reference.
230
231         * wtf/Algorithms.h:
232         (WTF::forEach):
233         (WTF::anyOf):
234         (WTF::allOf):
235
236 2018-09-25  John Wilander  <wilander@apple.com>
237
238         Change from HAVE(CFNETWORK_STORAGE_PARTITIONING) to ENABLE(RESOURCE_LOAD_STATISTICS)
239         https://bugs.webkit.org/show_bug.cgi?id=189959
240         <rdar://problem/44767642>
241
242         Reviewed by Chris Dumez.
243
244         * wtf/Platform.h:
245             Enables RESOURCE_LOAD_STATISTICS for Cocoa platforms.
246
247 2018-09-24  Fujii Hironori  <Hironori.Fujii@sony.com>
248
249         Rename WTF_COMPILER_GCC_OR_CLANG to WTF_COMPILER_GCC_COMPATIBLE
250         https://bugs.webkit.org/show_bug.cgi?id=189733
251
252         Reviewed by Michael Catanzaro.
253
254         Clang for Windows build enables WTF_COMPILER_CLANG and
255         WTF_COMPILER_MSVC, but disables WTF_COMPILER_GCC_OR_CLANG. It is
256         strange WTF_COMPILER_GCC_OR_CLANG is not enabled even though
257         WTF_COMPILER_CLANG is enabled. However, Clang for Windows imitates
258         MSVC, and codes for COMPILER(GCC_OR_CLANG) are for non MSVC. At
259         least at the moment, it is not feasible to define
260         WTF_COMPILER_GCC_OR_CLANG for Clang for Windows.
261
262         To solve the issue, this change renames WTF_COMPILER_GCC_OR_CLANG
263         to WTF_COMPILER_GCC_COMPATIBLE.
264
265         As an exception, I'd like to use IGNORE_WARNINGS_* macros even in
266         Clang for Windows builds.
267
268         * wtf/Assertions.cpp: Replaced COMPILER(GCC_OR_CLANG) with COMPILER(GCC_COMPATIBLE).
269         * wtf/Assertions.h: Ditto.
270         * wtf/Atomics.h: Ditto.
271         * wtf/CheckedArithmetic.h: Ditto.
272         * wtf/FastMalloc.h: Ditto.
273         * wtf/MathExtras.h: Ditto.
274         * wtf/Platform.h: Ditto.
275         * wtf/StdLibExtras.h: Ditto.
276         * wtf/Vector.h: Ditto.
277         * wtf/text/ASCIIFastPath.h: Ditto.
278         * wtf/Compiler.h:  Ditto. Replaced "COMPILER(GCC_OR_CLANG)" with "COMPILER(GCC) || COMPILER(CLANG)" of IGNORE_WARNINGS_* macros.
279
280 2018-09-21  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
281
282         [JSC] Enable LLInt ASM interpreter on X64 and ARM64 in non JIT configuration
283         https://bugs.webkit.org/show_bug.cgi?id=189778
284
285         Reviewed by Keith Miller.
286
287         This patch adds ENABLE(C_LOOP) which indicates we use CLoop as the interpreter.
288         Previously, we used !ENABLE(JIT) for this configuration. But now, we have
289         a build configuration that has LLInt ASM interpreter (not CLoop) and !ENABLE(JIT).
290
291         We enable LLInt ASM interpreter for non JIT environment in X86_64 and ARM64 architectures.
292         And we enable ENABLE(ASSEMBLER) for non JIT environment since it offers machine register
293         information which is used for LLInt and SamplingProfiler.
294
295         * wtf/Platform.h:
296
297 2018-09-21  Keith Miller  <keith_miller@apple.com>
298
299         Add Promise SPI
300         https://bugs.webkit.org/show_bug.cgi?id=189809
301
302         Reviewed by Saam Barati.
303
304         Fix issue where creating a JSContextRef off the main thread before
305         creating initializing the main thread would cause an assertion
306         failure.
307
308         * wtf/MainThread.cpp:
309         (WTF::isMainThreadIfInitialized):
310         * wtf/MainThread.h:
311         * wtf/mac/MainThreadMac.mm:
312         (WTF::isMainThreadIfInitialized):
313         * wtf/text/cf/StringImplCF.cpp:
314         (WTF::StringImpl::createCFString):
315
316 2018-09-21  Ryan Haddad  <ryanhaddad@apple.com>
317
318         Unreviewed, rolling out r236359.
319
320         Broke the Windows build.
321
322         Reverted changeset:
323
324         "Add Promise SPI"
325         https://bugs.webkit.org/show_bug.cgi?id=189809
326         https://trac.webkit.org/changeset/236359
327
328 2018-09-21  Keith Miller  <keith_miller@apple.com>
329
330         Add Promise SPI
331         https://bugs.webkit.org/show_bug.cgi?id=189809
332
333         Reviewed by Saam Barati.
334
335         Fix issue where creating a JSContextRef off the main thread before
336         creating initializing the main thread would cause an assertion
337         failure.
338
339         * wtf/MainThread.cpp:
340         (WTF::isMainThreadIfInitialized):
341         * wtf/MainThread.h:
342         * wtf/mac/MainThreadMac.mm:
343         (WTF::isMainThreadIfInitialized):
344         * wtf/text/cf/StringImplCF.cpp:
345         (WTF::StringImpl::createCFString):
346
347 2018-09-20  Fujii Hironori  <Hironori.Fujii@sony.com>
348
349         [Win][Clang] UNUSED_PARAM(this) causes compilation error of "cannot take the address of an rvalue of type"
350         https://bugs.webkit.org/show_bug.cgi?id=189732
351
352         Reviewed by Per Arne Vollan.
353
354         Clang for Windows can't compile the MSVC workaround of
355         UNUSED_PARAM which has been introduced for Windows CE and Visual
356         Studio 10. I think it's safe just to remove it.
357
358         * wtf/Compiler.h: Removed the code for COMPILER(MSVC).
359
360 2018-09-20  Alex Christensen  <achristensen@webkit.org>
361
362         Unreviewed, rolling out r235976.
363
364         Broke ARM
365
366         Reverted changeset:
367
368         "Use a Variant instead of a union in CSSSelector"
369         https://bugs.webkit.org/show_bug.cgi?id=188559
370         https://trac.webkit.org/changeset/235976
371
372 2018-09-17  Yusuke Suzuki  <utatane.tea@gmail.com>
373
374         [WTF] Use Semaphore and BinarySemaphore instead of dispatch_semaphore_t
375         https://bugs.webkit.org/show_bug.cgi?id=185339
376
377         Reviewed by Mark Lam.
378
379         This patch adds WTF::Semaphore, which is based on WTF::Lock and WTF::Condition.
380
381         * WTF.xcodeproj/project.pbxproj:
382         * wtf/CMakeLists.txt:
383         * wtf/Semaphore.h: Added.
384         (WTF::Semaphore::Semaphore):
385         (WTF::Semaphore::signal):
386         (WTF::Semaphore::waitUntil):
387         (WTF::Semaphore::waitFor):
388         (WTF::Semaphore::wait):
389         * wtf/generic/WorkQueueGeneric.cpp:
390         (WorkQueue::platformInitialize):
391         * wtf/threads/BinarySemaphore.cpp:
392         (WTF::BinarySemaphore::waitUntil):
393         (WTF::BinarySemaphore::wait): Deleted.
394         * wtf/threads/BinarySemaphore.h:
395         (WTF::BinarySemaphore::waitFor):
396         (WTF::BinarySemaphore::wait):
397         Align the names of the functions to WTF::Condition.
398         Add BinarySemaphore::wait(), which is the same to waitUntil(WallTime::infinity()).
399
400 2018-09-17  Jer Noble  <jer.noble@apple.com>
401
402         Add support for HEVC codec types in Media Capabilities
403         https://bugs.webkit.org/show_bug.cgi?id=189565
404
405         Reviewed by Eric Carlson.
406
407         Extract the toIntegralType template into its own header.
408
409         * wtf/CMakeLists.txt:
410         * wtf/text/StringConversion.h: Added.
411         (isCharacterAllowedInBase):
412         (toIntegralType):
413         * wtf/text/WTFString.cpp:
414
415 2018-09-17  Jer Noble  <jer.noble@apple.com>
416
417         Enable USE_MEDIAREMOTE on iOS
418         https://bugs.webkit.org/show_bug.cgi?id=189096
419
420         Reviewed by Eric Carlson.
421
422         * wtf/Platform.h:
423
424 2018-09-17  Frederic Wang  <fwang@igalia.com>
425
426         Build error in ImageBufferCG when compiled with IOSurfacePool
427         https://bugs.webkit.org/show_bug.cgi?id=189579
428
429         Reviewed by Tim Horton.
430
431         IOSurface.h might be included with different value of IOSURFACE_CANVAS_BACKING_STORE, causing
432         compilation errors when files in the same unified source do not agree on the definition.
433         This patch moves the definition of IOSURFACE_CANVAS_BACKING_STORE from ImageBufferDataCG.h
434         to Platform.h so that IOSURFACE_CANVAS_BACKING_STORE is set to the same value in all files.
435         Finally some minors changes to explicitly declare/define ImageBuffer are performed in order
436         to prevent future issues with Unified build rotating.
437
438         * wtf/Platform.h: Move definition from ImageBufferDataCG.h.
439
440 2018-09-14  Ryan Haddad  <ryanhaddad@apple.com>
441
442         Unreviewed, rolling out r235990.
443
444         Introduced TestWebKitAPI.NowPlayingTest timeouts on iOS
445
446         Reverted changeset:
447
448         "Enable USE_MEDIAREMOTE on iOS"
449         https://bugs.webkit.org/show_bug.cgi?id=189096
450         https://trac.webkit.org/changeset/235990
451
452 2018-09-13  Jer Noble  <jer.noble@apple.com>
453
454         Enable USE_MEDIAREMOTE on iOS
455         https://bugs.webkit.org/show_bug.cgi?id=189096
456
457         Reviewed by Eric Carlson.
458
459         * wtf/Platform.h:
460
461 2018-09-13  Alex Christensen  <achristensen@webkit.org>
462
463         Use a Variant instead of a union in CSSSelector
464         https://bugs.webkit.org/show_bug.cgi?id=188559
465
466         Reviewed by Antti Koivisto.
467
468         * wtf/Variant.h:
469         Add packing macros to make it so Variant-containing structures don't always have 7 bytes of padding per Variant.
470
471 2018-09-12  Guillaume Emont  <guijemont@igalia.com>
472
473         Add IGNORE_WARNING_.* macros
474         https://bugs.webkit.org/show_bug.cgi?id=188996
475
476         Reviewed by Michael Catanzaro.
477
478         * wtf/Assertions.cpp:
479         * wtf/Assertions.h:
480         * wtf/Compiler.h:
481         * wtf/MD5.cpp:
482         (WTF::MD5::MD5):
483         (WTF::MD5::addBytes):
484         (WTF::MD5::checksum):
485         * wtf/PrintStream.cpp:
486         (WTF::PrintStream::printfVariableFormat):
487         * wtf/SHA1.cpp:
488         (WTF::SHA1::SHA1):
489         (WTF::SHA1::addBytes):
490         (WTF::SHA1::computeHash):
491         * wtf/ThreadingPthreads.cpp:
492         * wtf/Vector.h:
493         (WTF::VectorBuffer::endOfBuffer):
494         * wtf/text/WTFString.cpp:
495         (WTF::createWithFormatAndArguments):
496
497 == Rolled over to ChangeLog-2018-09-11 ==