073e00b40d4cac931ae7817fe452c88ae2aa653c
[WebKit-https.git] / Source / WTF / ChangeLog
1 2014-01-28  Anders Carlsson  <andersca@apple.com>
2
3         Actually turn stack stats back off.
4
5         * wtf/StackStats.cpp:
6         * wtf/StackStats.h:
7
8 2014-01-28  Anders Carlsson  <andersca@apple.com>
9
10         Turn stack stats back off.
11
12         * wtf/StackStats.cpp:
13
14 2014-01-28  Anders Carlsson  <andersca@apple.com>
15
16         Use std::mutex instead of WTF::Mutex in WTF
17         https://bugs.webkit.org/show_bug.cgi?id=127783
18
19         Reviewed by Antti Koivisto.
20
21         * wtf/CryptographicallyRandomNumber.cpp:
22         * wtf/MainThread.cpp:
23         (WTF::mainThreadFunctionQueueMutex):
24         (WTF::functionQueue):
25         (WTF::dispatchFunctionsFromMainThread):
26         (WTF::callOnMainThread):
27         (WTF::cancelCallOnMainThread):
28         * wtf/StackStats.cpp:
29         (WTF::StackStats::initialize):
30         (WTF::StackStats::CheckPoint::CheckPoint):
31         (WTF::StackStats::CheckPoint::~CheckPoint):
32         (WTF::StackStats::probe):
33         (WTF::StackStats::LayoutCheckPoint::LayoutCheckPoint):
34         (WTF::StackStats::LayoutCheckPoint::~LayoutCheckPoint):
35         * wtf/StackStats.h:
36
37 2014-01-27  Joseph Pecoraro  <pecoraro@apple.com>
38
39         WebCore: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where needed
40         https://bugs.webkit.org/show_bug.cgi?id=127671
41
42         Reviewed by Ryosuke Niwa.
43
44         * wtf/text/WTFString.h:
45         (WTF::appendNumber):
46
47 2014-01-27  Jer Noble  <jer.noble@apple.com>
48
49         [WK2] callOnMainThread() from main thread sometimes results in ASSERTs.
50         https://bugs.webkit.org/show_bug.cgi?id=127370
51
52         Reviewed by Alexey Proskuryakov.
53
54         When WEB_THREAD is enabled, and callOnMainThread() is called from the main
55         thread, if the web thread is locked, a timer is set and the passed-in function
56         is called on the next run-loop. However, by that time the web thread may have
57         been unlocked, and isMainThread() will no longer return true, resulting in
58         an assert.
59
60         Instead, scheduleDispatchFunctionsOnMainThread() should check isWebThread(),
61         which is equivalent to isMainThread() when the WEB_THREAD is disabled, but
62         will do the correct thing when WEB_THREAD is enabled.
63
64         * wtf/mac/MainThreadMac.mm:
65         (WTF::scheduleDispatchFunctionsOnMainThread):
66
67 2014-01-27  Dan Bernstein  <mitz@apple.com>
68
69         Build fix.
70
71         * wtf/ThreadSafeRefCounted.h: Added a necessary #include.
72
73 2014-01-25  Sam Weinig  <sam@webkit.org>
74
75         Remove unused support for DRAGGABLE_REGION
76         https://bugs.webkit.org/show_bug.cgi?id=127642
77
78         Reviewed by Simon Fraser.
79
80         * wtf/FeatureDefines.h:
81
82 2014-01-25  Joseph Pecoraro  <pecoraro@apple.com>
83
84         Add FALLTHROUGH and -Wimplicit-fallthrough to warn about unannotated implicit fallthroughs in switches
85         https://bugs.webkit.org/show_bug.cgi?id=127637
86
87         Reviewed by Darin Adler.
88
89         For information about [[clang::fallthrough]], see:
90         <http://clang.llvm.org/docs/LanguageExtensions.html#the-clang-fallthrough-attribute>
91
92         * Configurations/Base.xcconfig:
93         Enable -Wimplicit-fallthrough warnings.
94
95         * wtf/Compiler.h:
96         Define FALLTHROUGH on clang and fallback to outputing nothing when unsupported.
97
98         * wtf/dtoa/fast-dtoa.cc:
99         * wtf/unicode/UTF8.cpp:
100         (WTF::Unicode::convertLatin1ToUTF8):
101         (WTF::Unicode::convertUTF16ToUTF8):
102         (WTF::Unicode::isLegalUTF8):
103         (WTF::Unicode::readUTF8Sequence):
104         Explicitly annotate implicit fallthroughs with FALLTHROUGH.
105
106 2014-01-25  Darin Adler  <darin@apple.com>
107
108         Call deprecatedCharacters instead of characters at more call sites
109         https://bugs.webkit.org/show_bug.cgi?id=127631
110
111         Reviewed by Sam Weinig.
112
113         * wtf/text/StringImpl.cpp:
114         (WTF::StringImpl::replace):
115         * wtf/text/WTFString.h:
116         (WTF::String::isAllSpecialCharacters):
117         Use the new name.
118
119 2014-01-25  Darin Adler  <darin@apple.com>
120
121         Add a new separate LChar.h header file, to be used after we remove Unicode.h
122         https://bugs.webkit.org/show_bug.cgi?id=127630
123
124         Reviewed by Sam Weinig.
125
126         * GNUmakefile.list.am: Added the new file
127         * WTF.vcxproj/WTF.vcxproj: Ditto.
128         * WTF.vcxproj/WTF.vcxproj.filters: Ditto.
129         * WTF.xcodeproj/project.pbxproj: Ditto.
130         * wtf/CMakeLists.txt: Ditto.
131         * wtf/text/LChar.h: Added.
132
133 2014-01-25  Darin Adler  <darin@apple.com>
134
135         Get rid of ICU_UNICODE and WCHAR_UNICODE remnants
136         https://bugs.webkit.org/show_bug.cgi?id=127623
137
138         Reviewed by Anders Carlsson.
139
140         * wtf/CMakeLists.txt: Removed WTF_USE_ICU_UNICODE and
141         WTF_USE_WCHAR_UNICODE since they are true and false respectively.
142
143         * wtf/Platform.h: Removed code to set WTF_USE_ICU_UNICODE.
144
145         * wtf/unicode/Collator.h: Removed ifdefs.
146         * wtf/unicode/CollatorDefault.cpp: Ditto.
147         * wtf/unicode/Unicode.h: Ditto.
148         * wtf/unicode/icu/CollatorICU.cpp: Ditto.
149
150 2014-01-25  Anders Carlsson  <andersca@apple.com>
151
152         Remove atomicIncrement/atomicDecrement
153         https://bugs.webkit.org/show_bug.cgi?id=127625
154
155         Reviewed by Andreas Kling.
156
157         Replace atomicIncrement/atomicDecrement with std::atomic.
158
159         * wtf/Atomics.h:
160         * wtf/RefCountedLeakCounter.cpp:
161         (WTF::RefCountedLeakCounter::~RefCountedLeakCounter):
162         (WTF::RefCountedLeakCounter::increment):
163         (WTF::RefCountedLeakCounter::decrement):
164         * wtf/RefCountedLeakCounter.h:
165         * wtf/ThreadSafeRefCounted.h:
166         (WTF::ThreadSafeRefCountedBase::ref):
167         (WTF::ThreadSafeRefCountedBase::refCount):
168         (WTF::ThreadSafeRefCountedBase::derefBase):
169
170 2014-01-25  Anders Carlsson  <andersca@apple.com>
171
172         Modernize HashTable threading code
173         https://bugs.webkit.org/show_bug.cgi?id=127621
174
175         Reviewed by Darin Adler.
176
177         Use std::mutex and std::atomic instead of WTF threading primitives.
178
179         * wtf/DynamicAnnotations.h:
180         Include Platform.h here since this file relies on USE macros.
181
182         * wtf/HashTable.cpp:
183         (WTF::HashTableStats::recordCollisionAtCount):
184         Change this to take an unsigned.
185
186         (WTF::HashTableStats::dumpStats):
187         * wtf/HashTable.h:
188         (WTF::KeyTraits>::HashTable):
189         (WTF::KeyTraits>::remove):
190         (WTF::KeyTraits>::invalidateIterators):
191         Use a single probe counter.
192
193         (WTF::addIterator):
194         (WTF::removeIterator):
195
196 2014-01-25  Darin Adler  <darin@apple.com>
197
198         Restore alphabetical order in Compiler.h
199         https://bugs.webkit.org/show_bug.cgi?id=127620
200
201         Reviewed by Sam Weinig.
202
203         * wtf/Compiler.h: Resorted some things into alphabetical order
204
205 2014-01-24  Brent Fulgham  <bfulgham@apple.com>
206
207         [Win] Convert some NMake files to MSBuild project files
208         https://bugs.webkit.org/show_bug.cgi?id=127579
209
210         Reviewed by Tim Horton.
211
212         * WTF.vcxproj/WTF.make: Removed.
213         * WTF.vcxproj/WTF.proj: Added.
214
215 2014-01-24  Anders Carlsson  <andersca@apple.com>
216
217         Get rid of monotonicallyIncreasingTimeMS and start using std::chrono instead
218         https://bugs.webkit.org/show_bug.cgi?id=127571
219
220         Reviewed by Antti Koivisto.
221
222         * wtf/Compiler.h:
223         Add a CONSTEXPR define so we can still use constexpr on compilers that don't support them (MSVC).
224
225         * wtf/CurrentTime.h:
226         Remove monotonicallyIncreasingTimeMS().
227
228         * wtf/StdLibExtras.h:
229         (std::literals::chrono_literals::operator _s):
230         (std::literals::chrono_literals::operator _ms):
231         Add _s and _ms literals. Once we switch over to C++14, we can drop them and just use the built-in ones.
232
233 2014-01-24  Anders Carlsson  <andersca@apple.com>
234
235         The CXX_EXPLICIT_CONVERSIONS COMPILER_SUPPORTS macro has been removed, and all
236         compilers support explicit conversions now so simply remove the #ifdef.
237
238         * wtf/RetainPtr.h:
239
240 2014-01-24  Darin Adler  <darin@apple.com>
241
242         Simplify Compiler.h
243         https://bugs.webkit.org/show_bug.cgi?id=127491
244
245         Reviewed by Anders Carlsson.
246
247         * wtf/Assertions.h: Remove COMPILER_SUPPORTS(CXX_STATIC_ASSERT), since
248         we now have that for all compilers that can build WebKit.
249
250         * wtf/Compiler.h: Removed always true feature flags, including:
251         COMPILER_SUPPORTS(CXX_VARIADIC_TEMPLATES), COMPILER_SUPPORTS(CXX_RVALUE_REFERENCES),
252         COMPILER_SUPPORTS(CXX_DELETED_FUNCTIONS), COMPILER_SUPPORTS(CXX_NULLPTR),
253         COMPILER_SUPPORTS(CXX_EXPLICIT_CONVERSIONS), COMPILER_SUPPORTS(CXX_STATIC_ASSERT),
254         COMPILER_SUPPORTS(CXX_OVERRIDE_CONTROL), COMPILER_SUPPORTS(CXX_STRONG_ENUMS), and
255         COMPILER_SUPPORTS(CXX_AUTO_TYPE). Sorted sections alphabetically. Separated out
256         nested #if and #else into separate checks for greater readability. Removed obsolete
257         check for COMPILER(RVCT). Removed unused COMPILER(GCCE) detection.
258
259         * wtf/RefPtr.h: Remove COMPILER_SUPPORTS(CXX_NULLPTR), since we now have
260         that for all compilers that can build WebKit.
261         * wtf/RetainPtr.h: Ditto.
262
263 2014-01-23  Max Vujovic  <mvujovic@adobe.com>
264
265         Remove CSS Custom Filters code and tests
266         https://bugs.webkit.org/show_bug.cgi?id=127382
267
268         Reviewed by Simon Fraser.
269
270         * wtf/FeatureDefines.h:
271
272 2014-01-22  Brent Fulgham  <bfulgham@apple.com>
273
274         [Win] Update project and solution files for 64-bit builds.
275         https://bugs.webkit.org/show_bug.cgi?id=127457
276
277         Reviewed by Eric Carlson.
278
279         * WTF.vcxproj/WTF.submit.sln: Add x64 targets.
280         * WTF.vcxproj/WTF.vcxproj: Update for VS2013
281
282 2014-01-22  Myles C. Maxfield  <mmaxfield@apple.com>
283
284         Remove CSS3_TEXT_DECORATION define
285         https://bugs.webkit.org/show_bug.cgi?id=127333
286
287         Reviewed by Simon Fraser.
288
289         This is required for unprefixing the text-decoration-* CSS properties.
290
291         * wtf/Platform.h:
292
293 2014-01-22  Jae Hyun Park  <jae.park@company100.net>
294
295         Remove unnecessary include in Noncopyable.h
296         https://bugs.webkit.org/show_bug.cgi?id=127406
297
298         Reviewed by Anders Carlsson.
299
300         * wtf/Noncopyable.h: We don't need Compiler.h as of r162198.
301
302 2014-01-22  Carlos Garcia Campos  <cgarcia@igalia.com>
303
304         [GTK] Add GUniquePtr
305         https://bugs.webkit.org/show_bug.cgi?id=127170
306
307         Reviewed by Gustavo Noronha Silva.
308
309         The idea is to replace GOwnPtr with a template alias of
310         std:unique_ptr. Not everything can be replaced, though, because
311         GOwnPtr::outPtr() doesn't seem to be possible to implement with
312         unique_ptr. This smart pointer is more flexible than GOwnPtr and
313         allows to transfer the ownership of the pointer using
314         std::move().
315
316         * GNUmakefile.list.am: Add new file to compilation.
317         * wtf/gobject/GUniquePtr.h: Added.
318         (WTF::GPtrDeleter::operator()):
319
320 2014-01-20  Anders Carlsson  <andersca@apple.com>
321
322         Remove an unused member variable
323         https://bugs.webkit.org/show_bug.cgi?id=127295
324
325         Reviewed by Antti Koivisto.
326
327         * wtf/MainThread.cpp:
328         (WTF::FunctionWithContext::FunctionWithContext):
329         (WTF::FunctionWithContext::operator == ):
330         (WTF::dispatchFunctionsFromMainThread):
331
332 2014-01-20  Anders Carlsson  <andersca@apple.com>
333
334         Remove MutexTryLocker
335         https://bugs.webkit.org/show_bug.cgi?id=127294
336
337         Reviewed by Antti Koivisto.
338
339         MutexTryLocker has been replaced with std::unique_lock with std::try_to_lock everywhere now.
340
341         * wtf/ThreadingPrimitives.h:
342
343 2014-01-19  Carlos Garcia Campos  <cgarcia@igalia.com>
344
345         [GLIB] GVariant floating references are not correctly handled by GRefPtr
346         https://bugs.webkit.org/show_bug.cgi?id=127246
347
348         Reviewed by Martin Robinson.
349
350         GRefPtr should always use g_variant_ref_sink to deal with GVariant
351         floating references. In case of full references,
352         g_variant_ref_sink calls g_variant_ref, so it's safe to use it always.
353
354         * wtf/gobject/GRefPtr.cpp:
355         (WTF::refGPtr): Use g_variant_ref_sink().
356
357 2014-01-18  Anders Carlsson  <andersca@apple.com>
358
359         Remove support for the viewsource attribute
360         https://bugs.webkit.org/show_bug.cgi?id=127232
361
362         Reviewed by Andreas Kling.
363
364         * wtf/FeatureDefines.h:
365
366 2014-01-18  Anders Carlsson  <andersca@apple.com>
367
368         Remove ENABLE_THREADED_HTML_PARSER defines everywhere
369         https://bugs.webkit.org/show_bug.cgi?id=127225
370
371         Reviewed by Andreas Kling.
372
373         This concludes the removal of over 8.8 million lines of threaded parser code.
374
375         * wtf/FeatureDefines.h:
376
377 2014-01-17  Anders Carlsson  <andersca@apple.com>
378
379         Add a callOnMainThreadAndWait variant in SocketStreamHandle
380         https://bugs.webkit.org/show_bug.cgi?id=127180
381
382         Reviewed by Geoffrey Garen.
383
384         Remove callOnMainThreadAndWait from WTF.
385
386         * wtf/MainThread.cpp:
387         * wtf/MainThread.h:
388
389 2014-01-17  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
390
391         Remove workaround for compilers not supporting deleted functions
392         https://bugs.webkit.org/show_bug.cgi?id=127166
393
394         Reviewed by Andreas Kling.
395
396         * wtf/Compiler.h:
397         * wtf/Noncopyable.h:
398         * wtf/PassRefPtr.h:
399
400 2014-01-16  Benjamin Poulain  <bpoulain@apple.com>
401
402         Remove Nix from WTF
403         https://bugs.webkit.org/show_bug.cgi?id=127150
404
405         Reviewed by Alexey Proskuryakov.
406
407         * wtf/DisallowCType.h:
408         * wtf/FeatureDefines.h:
409         * wtf/Platform.h:
410         * wtf/PlatformNix.cmake: Removed.
411         * wtf/nix: Removed.
412
413 2014-01-16  Anders Carlsson  <andersca@apple.com>
414
415         Remove FINAL macro
416         https://bugs.webkit.org/show_bug.cgi?id=127149
417
418         Reviewed by Tim Horton.
419
420         * wtf/Compiler.h:
421
422 2014-01-16  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
423
424         Remove workaround for compilers not supporting explicit override control
425         https://bugs.webkit.org/show_bug.cgi?id=127111
426
427         Reviewed by Anders Carlsson.
428
429         Now all compilers support explicit override control, this workaround can be removed.
430
431         * wtf/Compiler.h:
432         * wtf/FilePrintStream.h:
433         * wtf/RunLoop.h:
434         * wtf/StringPrintStream.h:
435
436 2014-01-16  Alberto Garcia  <berto@igalia.com>
437
438         Source/WTF/wtf/Atomics.h:300: Error: bad register name `%bpl'
439         https://bugs.webkit.org/show_bug.cgi?id=126985
440
441         Reviewed by Csaba Osztrogonác.
442
443         Use the 'q' constraint to force using a register that allows
444         access to its lower byte.
445
446         * wtf/Atomics.h:
447         (WTF::weakCompareAndSwap):
448
449 2014-01-16  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
450
451         Fix unnecessary checks for Clang compiler if the compiler is MSVC.
452         https://bugs.webkit.org/show_bug.cgi?id=127037
453
454         Reviewed by Csaba Osztrogonác.
455
456         Inside the #if defined(_MSC_VER) there's no need for checking whether the compiler is not Clang.
457
458         * wtf/Compiler.h:
459
460 2014-01-16  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
461
462         Require at least GCC version 4.7
463         https://bugs.webkit.org/show_bug.cgi?id=127049
464
465         Reviewed by Csaba Osztrogonác.
466
467         r161770 added a template alias, so the minimum GCC version is 4.7 now.
468
469         Also fixed a typo in the error message about old MSVC version.
470
471         * wtf/Compiler.h:
472
473 2014-01-15  Alberto Garcia  <berto@igalia.com>
474
475         [GTK] v2.3.3 fails to build in Debian / FreeBSD
476         https://bugs.webkit.org/show_bug.cgi?id=126502
477
478         Reviewed by Mark Lam.
479
480         * wtf/Platform.h: Add LLINT support to FreeBSD.
481
482 2014-01-15  Anders Carlsson  <andersca@apple.com>
483
484         Get rid of RefCountedCustomAllocated
485         https://bugs.webkit.org/show_bug.cgi?id=127051
486
487         Reviewed by Antti Koivisto.
488
489         It's not used anywhere anymore, get rid of it.
490
491         * wtf/RefCounted.h:
492         * wtf/SizeLimits.cpp:
493
494 2014-01-14  Anders Carlsson  <andersca@apple.com>
495
496         And yet another build fix.
497
498         * wtf/SizeLimits.cpp:
499
500 2014-01-14  Anders Carlsson  <andersca@apple.com>
501
502         Another build fix.
503
504         * wtf/SizeLimits.cpp:
505
506 2014-01-14  Daniel Bates  <dabates@apple.com>
507
508         [iOS] Enable WTF_USE_UIKIT_EDITING
509
510         * wtf/Platform.h:
511
512 2014-01-14  Daniel Bates  <dabates@apple.com>
513
514         [iOS] Enable QuickLook
515         https://bugs.webkit.org/show_bug.cgi?id=126954
516
517         Reviewed by David Kilzer.
518
519         * wtf/Platform.h:
520
521 2014-01-14  Anders Carlsson  <andersca@apple.com>
522
523         Get rid of ThreadRestrictionVerifier
524         https://bugs.webkit.org/show_bug.cgi?id=127004
525
526         Reviewed by Sam Weinig.
527
528         The ThreadRestrictionVerifier mechanism has been turned off for a while
529         since it doesn't really have a good solution for objects that are passed between threads.
530         Instead of having dead code in the tree, just get rid of it.
531         
532         * GNUmakefile.list.am:
533         * WTF.vcxproj/WTF.vcxproj:
534         * WTF.vcxproj/WTF.vcxproj.filters:
535         * WTF.xcodeproj/project.pbxproj:
536         * wtf/CMakeLists.txt:
537         * wtf/RefCounted.h:
538         (WTF::RefCountedBase::ref):
539         (WTF::RefCountedBase::hasOneRef):
540         (WTF::RefCountedBase::refCount):
541         (WTF::RefCountedBase::derefBase):
542         * wtf/ThreadRestrictionVerifier.h: Removed.
543
544 2014-01-14  Benjamin Poulain  <benjamin@webkit.org>
545
546         Enable the experimental selector code generator by default
547         https://bugs.webkit.org/show_bug.cgi?id=126953
548
549         Reviewed by Gavin Barraclough.
550
551         * wtf/Platform.h:
552         Enable CSS_SELECTOR_JIT on OS X x86_64 by default.
553         The feature is not ready to ship but it is stable enough to enable
554         for the bots and nightly.
555
556 2014-01-14  Brian J. Burg  <burg@cs.washington.edu>
557
558         Add ENABLE(WEB_REPLAY) feature flag to the build system
559         https://bugs.webkit.org/show_bug.cgi?id=126949
560
561         Reviewed by Joseph Pecoraro.
562
563         * wtf/FeatureDefines.h: for now, disable the flag by default.
564
565 2014-01-14  peavo@outlook.com  <peavo@outlook.com>
566
567         [Win] Application name in user agent string is truncated.
568         https://bugs.webkit.org/show_bug.cgi?id=126810
569
570         Reviewed by Anders Carlsson.
571
572         * wtf/text/StringConcatenate.h:
573         (WTF::tryMakeString): Add missing 8 bit check for last argument. 
574
575 2014-01-13  Anders Carlsson  <andersca@apple.com>
576
577         Move another deprecated symbol to DeprecatedSymbolsUsedBySafari.mm
578         https://bugs.webkit.org/show_bug.cgi?id=126909
579
580         Reviewed by Ryosuke Niwa.
581
582         * wtf/MainThread.cpp:
583         * wtf/MainThread.h:
584         * wtf/mac/DeprecatedSymbolsUsedBySafari.mm:
585         (WTF::callOnMainThread):
586
587 2014-01-13  Anders Carlsson  <andersca@apple.com>
588
589         Fix Windows build.
590
591         * wtf/ThreadingWin.cpp:
592         (WTF::initializeThreading):
593
594 2014-01-13  Anders Carlsson  <andersca@apple.com>
595
596         Remove AtomicallyInitializedStatic
597         https://bugs.webkit.org/show_bug.cgi?id=126864
598
599         Reviewed by Andreas Kling.
600
601         Remove the lockAtomicallyInitializedStaticMutex and unlockAtomicallyInitializedStaticMutex functions
602         everywhere except on Mac (where they unfortunately were used by Safari).
603         
604         On Mac, add them to a separate file which will hold functions and symbols that we would like
605         to remove but that are used by Safari. Reimplement them in terms of std::call_once and std::mutex.
606
607         * WTF.xcodeproj/project.pbxproj:
608         * wtf/Threading.h:
609         * wtf/ThreadingPthreads.cpp:
610         (WTF::initializeThreading):
611         * wtf/ThreadingWin.cpp:
612         (WTF::initializeThreading):
613         * wtf/mac/DeprecatedSymbolsUsedBySafari.mm: Added.
614         (WTF::atomicallyInitializedStaticMutex):
615         (WTF::lockAtomicallyInitializedStaticMutex):
616         (WTF::unlockAtomicallyInitializedStaticMutex):
617
618 2014-01-13  Commit Queue  <commit-queue@webkit.org>
619
620         Unreviewed, rolling out r161855.
621         http://trac.webkit.org/changeset/161855
622         https://bugs.webkit.org/show_bug.cgi?id=126880
623
624         Sister commit of r161852 (Requested by kling on #webkit).
625
626         * wtf/ThreadingPthreads.cpp:
627         (WTF::initializeThreading):
628
629 2014-01-13  Commit Queue  <commit-queue@webkit.org>
630
631         Unreviewed, rolling out r161852.
632         http://trac.webkit.org/changeset/161852
633         https://bugs.webkit.org/show_bug.cgi?id=126877
634
635         Broke ToT with system Safari (Requested by kling on #webkit).
636
637         * wtf/Threading.h:
638         * wtf/ThreadingPthreads.cpp:
639         (WTF::initializeThreading):
640         (WTF::lockAtomicallyInitializedStaticMutex):
641         (WTF::unlockAtomicallyInitializedStaticMutex):
642         * wtf/ThreadingWin.cpp:
643         (WTF::lockAtomicallyInitializedStaticMutex):
644         (WTF::unlockAtomicallyInitializedStaticMutex):
645         (WTF::initializeThreading):
646
647 2014-01-12  Commit Queue  <commit-queue@webkit.org>
648
649         Unreviewed, rolling out r161840.
650         http://trac.webkit.org/changeset/161840
651         https://bugs.webkit.org/show_bug.cgi?id=126870
652
653         Caused jsscore and layout test failures (Requested by smfr on
654         #webkit).
655
656         * wtf/text/StringImpl.cpp:
657         (WTF::StringImpl::replace):
658         * wtf/text/WTFString.h:
659         (WTF::String::isAllSpecialCharacters):
660
661 2014-01-12  Dan Bernstein  <mitz@apple.com>
662
663         Fix an assertion failure in initializeDates() when launching Safari, which was introduced in r161852.
664
665         Reviewed by Andy Estes.
666
667         * wtf/ThreadingPthreads.cpp:
668         (WTF::initializeThreading): Set isInitialized to true.
669
670 2014-01-12  Darin Adler  <darin@apple.com>
671
672         Add PLATFORM(COCOA) and USE(FOUNDATION)
673         https://bugs.webkit.org/show_bug.cgi?id=126859
674
675         Reviewed by Anders Carlsson.
676
677         * wtf/Platform.h: Added PLATFORM(COCOA), which for now is set at exactly the same
678         times that PLATFORM(MAC) is. Added USE(FOUNDATION), which is set at the same times
679         that PLATFORM(COCOA) is. Re-organize the PLATFORM(MAC) and PLATFORM(IOS) settings
680         in the header so they are a bit easier to read. Put HAVE_LANGINFO_H in with the
681         rest of the OS(UNIX) settings and put HAVE_READLINE in with the rest of the
682         OS(DARWIN) settings. Tweak formatting a bit.
683
684 2014-01-12  Anders Carlsson  <andersca@apple.com>
685
686         Remove AtomicallyInitializedStatic
687         https://bugs.webkit.org/show_bug.cgi?id=126864
688
689         Reviewed by Darin Adler.
690
691         * wtf/Threading.h:
692         * wtf/ThreadingPthreads.cpp:
693         (WTF::initializeThreading):
694         * wtf/ThreadingWin.cpp:
695         (WTF::initializeThreading):
696
697 2014-01-12  Darin Adler  <darin@apple.com>
698
699         Add deprecatedCharacters as a synonym for characters and convert most call sites
700         https://bugs.webkit.org/show_bug.cgi?id=126858
701
702         Reviewed by Anders Carlsson.
703
704         * wtf/text/AtomicString.cpp:
705         (WTF::HashAndUTF8CharactersTranslator::equal):
706         (WTF::SubstringTranslator::hash):
707         (WTF::SubstringTranslator::equal):
708         * wtf/text/AtomicString.h:
709         (WTF::AtomicString::characters):
710         * wtf/text/Base64.cpp:
711         (WTF::base64Decode):
712         (WTF::base64URLDecode):
713         * wtf/text/StringBuilder.h:
714         (WTF::StringBuilder::characters):
715         (WTF::StringBuilder::deprecatedCharacters):
716         * wtf/text/StringImpl.cpp:
717         (WTF::StringImpl::getData16SlowCase):
718         (WTF::StringImpl::upper):
719         (WTF::StringImpl::lower):
720         (WTF::StringImpl::find):
721         (WTF::StringImpl::findIgnoringCase):
722         * wtf/text/StringImpl.h:
723         (WTF::StringImpl::characters):
724         (WTF::StringImpl::deprecatedCharacters):
725         (WTF::StringImpl::getCharacters<UChar>):
726         (WTF::equalIgnoringNullity):
727         * wtf/text/WTFString.cpp:
728         (WTF::String::append):
729         (WTF::String::appendInternal):
730         (WTF::String::insert):
731         (WTF::String::truncate):
732         (WTF::String::percentage):
733         * wtf/text/WTFString.h:
734         (WTF::String::characters):
735         (WTF::String::deprecatedCharacters):
736         (WTF::String::getCharactersWithUpconvert<UChar>):
737         (WTF::append):
738         Use deprecatedCharacters instead of characters.
739
740 2014-01-12  Anders Carlsson  <andersca@apple.com>
741
742         Remove the last remaining uses of AtomicallyInitializedStatic
743         https://bugs.webkit.org/show_bug.cgi?id=126863
744
745         Reviewed by Darin Adler.
746
747         * wtf/HashTable.cpp:
748         (WTF::hashTableStatsMutex):
749         (WTF::HashTableStats::recordCollisionAtCount):
750         (WTF::HashTableStats::dumpStats):
751         * wtf/unicode/icu/CollatorICU.cpp:
752         (WTF::cachedCollatorMutex):
753         (WTF::Collator::createCollator):
754         (WTF::Collator::releaseCollator):
755
756 2014-01-12  Darin Adler  <darin@apple.com>
757
758         Reduce use of String::characters
759         https://bugs.webkit.org/show_bug.cgi?id=126854
760
761         Reviewed by Sam Weinig.
762
763         * wtf/text/StringImpl.cpp:
764         (WTF::StringImpl::replace): Use characters16 here since is8Bit was already checked.
765         * wtf/text/WTFString.h:
766         (WTF::String::isAllSpecialCharacters): Use characters16 here since is8Bit was
767         already checked. Also renamed "len" to "length".
768
769 2014-01-12  Anders Carlsson  <andersca@apple.com>
770
771         Replace more uses of AtomicallyInitializedStatic with std::call_once
772         https://bugs.webkit.org/show_bug.cgi?id=126847
773
774         Reviewed by Sam Weinig.
775
776         * wtf/Forward.h:
777         Forward declare NeverDestroyed.
778
779 2014-01-11  Zan Dobersek  <zdobersek@igalia.com>
780
781         Unreviewed build fix for ports using GCC after r161770.
782
783         * wtf/IteratorAdaptors.h:
784         (WTF::FilterIterator::operator*): Replicating r161797, the const qualifier for
785         FilterIterator::operator*() is removed since it clashes with some iterator types
786         that are also const, causing compilation failures with GCC.
787
788 2014-01-11  Anders Carlsson  <andersca@apple.com>
789
790         Use std::call_once instead of AtomicallyInitializedStatic when creating a HTTP header set
791         https://bugs.webkit.org/show_bug.cgi?id=126837
792
793         Reviewed by Sam Weinig.
794
795         * wtf/HashSet.h:
796         (WTF::HashSet::HashSet):
797         Add a HashSet constructor that takes an initializer list.
798
799 2014-01-11  Sam Weinig  <sam@webkit.org>
800
801         Fix the EFL build.
802
803         * wtf/IteratorAdaptors.h:
804         (WTF::TransformIterator::operator*):
805
806 2014-01-11  Sam Weinig  <sam@webkit.org>
807
808         Add support for null StringViews
809         https://bugs.webkit.org/show_bug.cgi?id=126827
810
811         Reviewed by Anders Carlsson.
812
813         - Do some style cleanup while in the neighborhood.
814
815         * wtf/text/StringView.h:
816         (WTF::StringView::StringView):
817         Add default constructor to create a null StringView.
818
819         (WTF::StringView::isNull):
820         Add isNull(), matching the semantics of String.
821
822         (WTF::StringView::operator bool):
823         Add an explicit operator bool() to allow use in if-statements. 
824
825 2014-01-11  Sam Weinig  <sam@webkit.org>
826
827         Clean up iterator filter / iterator range code
828         https://bugs.webkit.org/show_bug.cgi?id=126817
829
830         Reviewed by Anders Carlsson.
831
832         - Renames IteratorPair to IteratorRange.
833         - Splits FilterIterator into FilterIterator (which now only filters) and
834           TransformIterator (which does the transform part of the old FilterIterator).
835           Move both of these to IteratorAdaptors.h
836
837         * GNUmakefile.list.am:
838         * WTF.vcxproj/WTF.vcxproj:
839         * WTF.vcxproj/WTF.vcxproj.filters:
840         * WTF.xcodeproj/project.pbxproj:
841         * wtf/CMakeLists.txt:
842         * wtf/FilterIterator.h: Removed.
843         Add/remove files.
844
845         * wtf/HashMap.h:
846         (WTF::HashMap::keys):
847         (WTF::HashMap::values):
848         * wtf/RefPtrHashMap.h:
849         Update for rename to IteratorRange. Simplify by using makeIteratorRange().
850
851         * wtf/IteratorAdaptors.h: Copied from wtf/FilterIterator.h.
852         (WTF::FilterIterator::FilterIterator):
853         (WTF::FilterIterator::operator*):
854         (WTF::makeFilterIterator):
855         (WTF::TransformIterator::TransformIterator):
856         (WTF::TransformIterator::operator++):
857         (WTF::TransformIterator::operator*):
858         (WTF::TransformIterator::operator==):
859         (WTF::TransformIterator::operator!=):
860         (WTF::makeTransformIterator):
861         Split up filtering and transforming. Add makeFilterIterator() and makeTransformIterator()
862         helpers.
863
864         * wtf/IteratorPair.h: Removed.
865         * wtf/IteratorRange.h: Copied from wtf/IteratorPair.h.
866         (WTF::IteratorRange::IteratorRange):
867         (WTF::makeIteratorRange):
868         Renamed to IteratorRange and adds makeIteratorRange() helper.
869
870 2014-01-10  David Kilzer  <ddkilzer@apple.com>
871
872         Clean up architectures in xcconfig files
873         <http://webkit.org/b/126794>
874
875         Reviewed by Andy Estes.
876
877         * Configurations/Base.xcconfig:
878         - Add new arch.
879
880 2014-01-10  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
881
882         [EFL][JSC] Enable udis86 disassembler on efl.
883         https://bugs.webkit.org/show_bug.cgi?id=125502
884
885         Reviewed by Michael Saboff.
886
887         Enable udis86 disassembler on efl and fix build warnings.
888
889         * wtf/Platform.h:
890           Enable udis86 disassembler on EFL.
891
892 2014-01-10  Hunseop Jeong  <hs85.jeong@samsung.com>
893
894         [EFL] Enable the DFG_JIT on ARMv7
895         https://bugs.webkit.org/show_bug.cgi?id=126742
896
897         Reviewed by Gyuyoung Kim.
898
899         Turn on ENABLE_DFG_JIT on ARMv7 for EFL.
900
901         * wtf/Platform.h:
902
903 2014-01-07  Mark Hahnenberg  <mhahnenberg@apple.com>
904
905         Marking should be generational
906         https://bugs.webkit.org/show_bug.cgi?id=126552
907
908         Reviewed by Geoffrey Garen.
909
910         * wtf/Bitmap.h:
911         (WTF::WordType>::count): Added a cast that became necessary when Bitmap
912         is used with smaller types than int32_t.
913
914 2014-01-09  Simon Fraser  <simon.fraser@apple.com>
915
916         Enable async scrolling for iOS
917         https://bugs.webkit.org/show_bug.cgi?id=126730
918
919         Reviewed by Tim Horton.
920         
921         Turn on ENABLE_ASYNC_SCROLLING for iOS.
922
923         * wtf/FeatureDefines.h:
924
925 2014-01-09  Anders Carlsson  <andersca@apple.com>
926
927         Remove Blackberry and QNX bits from WTF
928         https://bugs.webkit.org/show_bug.cgi?id=126726
929
930         Reviewed by Benjamin Poulain.
931
932         * wtf/Assertions.cpp:
933         * wtf/Atomics.h:
934         * wtf/CurrentTime.cpp:
935         (WTF::currentCPUTime):
936         * wtf/DateMath.cpp:
937         * wtf/DisallowCType.h:
938         * wtf/FeatureDefines.h:
939         * wtf/InlineASM.h:
940         * wtf/MathExtras.h:
941         * wtf/NumberOfCores.cpp:
942         (WTF::numberOfProcessorCores):
943         * wtf/OSAllocatorPosix.cpp:
944         (WTF::OSAllocator::reserveUncommitted):
945         (WTF::OSAllocator::commit):
946         (WTF::OSAllocator::decommit):
947         * wtf/Platform.h:
948         * wtf/PlatformBlackBerry.cmake: Removed.
949         * wtf/RAMSize.cpp:
950         (WTF::computeRAMSize):
951         * wtf/StackBounds.cpp:
952         * wtf/ThreadingPthreads.cpp:
953         (WTF::initializeThreading):
954         (WTF::initializeCurrentThreadInternal):
955         * wtf/blackberry/MainThreadBlackBerry.cpp: Removed.
956         * wtf/blackberry/RunLoopBlackBerry.cpp: Removed.
957         * wtf/text/AtomicString.h:
958         * wtf/text/StringImpl.h:
959         * wtf/text/WTFString.h:
960
961 2014-01-09  Daniel Bates  <dabates@apple.com>
962
963         [iOS] Upstream WebCore/platform changes
964         https://bugs.webkit.org/show_bug.cgi?id=126654
965
966         Rubber-stamped by David Kilzer.
967
968         * wtf/MainThread.cpp:
969         (WTF::canAccessThreadLocalDataForThread):
970         * wtf/MainThread.h:
971
972 2014-01-09  Commit Queue  <commit-queue@webkit.org>
973
974         Unreviewed, rolling out r161540.
975         http://trac.webkit.org/changeset/161540
976         https://bugs.webkit.org/show_bug.cgi?id=126704
977
978         Caused assertion failures on multiple tests (Requested by ap
979         on #webkit).
980
981         * wtf/Bitmap.h:
982         (WTF::WordType>::count):
983
984 2014-01-07  Mark Hahnenberg  <mhahnenberg@apple.com>
985
986         Marking should be generational
987         https://bugs.webkit.org/show_bug.cgi?id=126552
988
989         Reviewed by Geoffrey Garen.
990
991         * wtf/Bitmap.h:
992         (WTF::WordType>::count): Added a cast that became necessary when Bitmap
993         is used with smaller types than int32_t.
994
995 2014-01-08  Anders Carlsson  <andersca@apple.com>
996
997         Add WTF::StringView and use it for grammar checking
998         https://bugs.webkit.org/show_bug.cgi?id=126644
999
1000         Reviewed by Antti Koivisto.
1001
1002         Add a new StringView class which is an immutable reference to either an 8-bit or a 16-bit string.
1003
1004         This makes it easier to pass substrings around without having to either copy string data
1005         or upconvert and use UChar pointers.
1006
1007         The StringView class is very loosely based on the std::string_view class which is proposed for a future version of C++,
1008         see http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3609.html for more details.
1009
1010         * GNUmakefile.list.am:
1011         * WTF.vcxproj/WTF.vcxproj:
1012         * WTF.vcxproj/WTF.vcxproj.filters:
1013         * WTF.xcodeproj/project.pbxproj:
1014         * wtf/CMakeLists.txt:
1015         * wtf/Forward.h:
1016         * wtf/text/StringView.h: Added.
1017         (WTF::StringView::StringView):
1018         (WTF::StringView::empty):
1019         (WTF::StringView::characters8):
1020         (WTF::StringView::characters16):
1021         (WTF::StringView::isEmpty):
1022         (WTF::StringView::length):
1023         (WTF::StringView::is8Bit):
1024         (WTF::StringView::substring):
1025         (WTF::StringView::toString):
1026         (WTF::StringView::toStringWithoutCopying):
1027         (WTF::StringView::encodedCharacters):
1028
1029 2014-01-07  David Farler  <dfarler@apple.com>
1030
1031         [ASAN] Building with trunk clang corrupts sandbox profile with comment from Compiler.h
1032         https://bugs.webkit.org/show_bug.cgi?id=124532
1033
1034         Reviewed by David Kilzer.
1035
1036         * wtf/Compiler.h:
1037         Remove this quirk - it does nothing.
1038
1039 2014-01-06  Filip Pizlo  <fpizlo@apple.com>
1040
1041         Get rid of ENABLE(VALUE_PROFILER). It's on all the time now.
1042
1043         Rubber stamped by Mark Hahnenberg.
1044
1045         * wtf/Platform.h:
1046
1047 2014-01-06  Zan Dobersek  <zdobersek@igalia.com>
1048
1049         Remove using directives for the std namespace from WTF
1050         https://bugs.webkit.org/show_bug.cgi?id=126524
1051
1052         Reviewed by Alexey Proskuryakov.
1053
1054         Remove the using directives for the std namespace throughout the WTF code.
1055         The more explicit std:: nested name specifier should be used instead.
1056
1057         * wtf/MediaTime.cpp:
1058         (WTF::MediaTime::createWithFloat):
1059         (WTF::MediaTime::createWithDouble):
1060         * wtf/text/StringImpl.cpp:
1061         (WTF::StringImpl::create):
1062         (WTF::StringImpl::lower):
1063         (WTF::StringImpl::upper):
1064         (WTF::StringImpl::foldCase):
1065         (WTF::StringImpl::find):
1066         (WTF::StringImpl::findIgnoringCase):
1067         (WTF::reverseFindInner):
1068         (WTF::StringImpl::reverseFind):
1069         (WTF::reverseFindIgnoringCaseInner):
1070         (WTF::StringImpl::reverseFindIgnoringCase):
1071         (WTF::StringImpl::replace):
1072         (WTF::StringImpl::utf8ForCharacters):
1073         (WTF::StringImpl::utf8ForRange):
1074         * wtf/text/WTFString.cpp:
1075         (WTF::String::append):
1076         (WTF::String::appendInternal):
1077         (WTF::String::insert):
1078         (WTF::String::substringSharingImpl):
1079         (WTF::String::fromUTF8):
1080         (WTF::toIntegralType):
1081         * wtf/win/RunLoopWin.cpp:
1082
1083 2014-01-03  Mark Hahnenberg  <mhahnenberg@apple.com>
1084
1085         DoublyLinkedLists can't be concatenated
1086         https://bugs.webkit.org/show_bug.cgi?id=125976
1087
1088         Reviewed by Filip Pizlo.
1089
1090         * wtf/DoublyLinkedList.h:
1091         (WTF::DoublyLinkedList<T>::append):
1092
1093 2014-01-04  Zan Dobersek  <zdobersek@igalia.com>
1094
1095         Explicitly use the std:: nested name specifier when using std::pair, std::make_pair
1096         https://bugs.webkit.org/show_bug.cgi?id=126439
1097
1098         Reviewed by Andreas Kling.
1099
1100         * wtf/VectorTraits.h: Stop bringing std::pair into the current scope.
1101
1102 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
1103
1104         Refactor NSActivity handling code from ChildProcess to UserActivity
1105         https://bugs.webkit.org/show_bug.cgi?id=126330
1106
1107         Reviewed by Sam Weinig.
1108
1109         UserActivity is a mechanism to express to the operating system (where appropriate)
1110         that a user initiated activity is taking place, and as such that resources should be
1111         made available to the process accordingly.
1112
1113         Currently we hold a single NSActivity, at the WebKit layer. This refactoring allows us
1114         to hold different activity tokens for different user actions (which simplifies the
1115         handling, and aides debugging since the token can more accurately express the activity
1116         taking place), and also will allow us to avoid the layering difficulty of calling back
1117         up the stack to WebKit to register that an activity is taking place.
1118
1119         * wtf/Platform.h:
1120             - added HAVE_NS_ACTIVITY.
1121
1122 2013-12-30  Commit Queue  <commit-queue@webkit.org>
1123
1124         Unreviewed, rolling out r161157, r161158, r161160, r161161,
1125         r161163, and r161165.
1126         http://trac.webkit.org/changeset/161157
1127         http://trac.webkit.org/changeset/161158
1128         http://trac.webkit.org/changeset/161160
1129         http://trac.webkit.org/changeset/161161
1130         http://trac.webkit.org/changeset/161163
1131         http://trac.webkit.org/changeset/161165
1132         https://bugs.webkit.org/show_bug.cgi?id=126332
1133
1134         Broke WebKit2 on Mountain Lion (Requested by ap on #webkit).
1135
1136         * GNUmakefile.list.am:
1137         * WTF.vcxproj/WTF.vcxproj:
1138         * WTF.vcxproj/WTF.vcxproj.filters:
1139         * WTF.xcodeproj/project.pbxproj:
1140         * wtf/CMakeLists.txt:
1141         * wtf/Forward.h:
1142         * wtf/PlatformWin.cmake:
1143         * wtf/threads/BinarySemaphore.cpp: Added.
1144         (WTF::BinarySemaphore::BinarySemaphore):
1145         (WTF::BinarySemaphore::~BinarySemaphore):
1146         (WTF::BinarySemaphore::signal):
1147         (WTF::BinarySemaphore::wait):
1148         * wtf/threads/BinarySemaphore.h: Added.
1149         (WTF::BinarySemaphore::event):
1150         * wtf/threads/win/BinarySemaphoreWin.cpp: Added.
1151         (WTF::BinarySemaphore::BinarySemaphore):
1152         (WTF::BinarySemaphore::~BinarySemaphore):
1153         (WTF::BinarySemaphore::signal):
1154         (WTF::BinarySemaphore::wait):
1155
1156 2013-12-30  Anders Carlsson  <andersca@apple.com>
1157
1158         Replace yield() and pauseBriefly() with std::this_thread::yield()
1159         https://bugs.webkit.org/show_bug.cgi?id=126105
1160
1161         Reviewed by Sam Weinig.
1162
1163         * wtf/ByteSpinLock.h:
1164         (WTF::ByteSpinLock::lock):
1165         * wtf/Threading.h:
1166         * wtf/ThreadingPrimitives.h:
1167         * wtf/ThreadingPthreads.cpp:
1168         * wtf/ThreadingWin.cpp:
1169
1170 2013-12-30  Sam Weinig  <sam@webkit.org>
1171
1172         Remove unnecessary non-const overload in IteratorPair
1173         https://bugs.webkit.org/show_bug.cgi?id=126314
1174
1175         Reviewed by Anders Carlsson.
1176
1177         * wtf/IteratorPair.h:
1178
1179 2013-12-30  Sam Weinig  <sam@webkit.org>
1180
1181         Remove WTF's BinarySemaphore
1182         https://bugs.webkit.org/show_bug.cgi?id=126310
1183
1184         Reviewed by Anders Carlsson.
1185
1186         It's unused. Also remove the now empty wtf/threads directory.
1187
1188         * GNUmakefile.list.am:
1189         * WTF.vcxproj/WTF.vcxproj:
1190         * WTF.vcxproj/WTF.vcxproj.filters:
1191         * WTF.xcodeproj/project.pbxproj:
1192         * wtf/CMakeLists.txt:
1193         * wtf/Forward.h:
1194         * wtf/PlatformWin.cmake:
1195         * wtf/threads: Removed.
1196         * wtf/threads/BinarySemaphore.cpp: Removed.
1197         * wtf/threads/BinarySemaphore.h: Removed.
1198         * wtf/threads/win: Removed.
1199         * wtf/threads/win/BinarySemaphoreWin.cpp: Removed.
1200
1201 2013-12-30  Roger Fong  <roger_fong@apple.com>
1202
1203         [Windows] Unreviewed build fix following r160959.
1204
1205         * wtf/Platform.h:
1206
1207 2013-12-30  Anders Carlsson  <andersca@apple.com>
1208
1209         Replace WTF::ThreadingOnce with std::call_once
1210         https://bugs.webkit.org/show_bug.cgi?id=126215
1211
1212         Reviewed by Sam Weinig.
1213
1214         * GNUmakefile.list.am:
1215         * wtf/CompilationThread.cpp:
1216         (WTF::initializeCompilationThreads):
1217         * wtf/ThreadingOnce.h: Removed.
1218
1219 2013-12-26  Sam Weinig  <sam@webkit.org>
1220
1221         Move FilterIterator and IteratorPair to WTF and reimplement HashMap::keys() and HashMap::values() using IteratorPair
1222         https://bugs.webkit.org/show_bug.cgi?id=126253
1223
1224         Reviewed by Anders Carlsson.
1225
1226         * GNUmakefile.list.am:
1227         * WTF.vcxproj/WTF.vcxproj:
1228         * WTF.vcxproj/WTF.vcxproj.filters:
1229         * WTF.xcodeproj/project.pbxproj:
1230         * wtf/CMakeLists.txt:
1231         Add new files.
1232
1233         * wtf/HashMap.h:
1234         * wtf/RefPtrHashMap.h:
1235         Remove the old implementation of keys() and values() and replace it with one
1236         that uses IteratorPair.
1237         
1238         * wtf/FilterIterator.h: Copied from Source/WebKit2/Shared/FilterIterator.h.
1239         * wtf/IteratorPair.h: Copied from Source/WebKit2/Shared/IteratorPair.h.
1240
1241 2013-12-27  Daniel Bates  <dabates@apple.com>
1242
1243         [iOS] Upstream WebCore/page changes
1244         https://bugs.webkit.org/show_bug.cgi?id=126180
1245
1246         Reviewed by Darin Adler.
1247
1248         * wtf/FeatureDefines.h: Define ENABLE_IOS_TOUCH_EVENTS to be enabled by default
1249         when building iOS with ENABLE(TOUCH_EVENTS).
1250
1251 2013-12-25  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1252
1253         [Nix] Building with DRAG_SUPPORT enabled
1254         https://bugs.webkit.org/show_bug.cgi?id=126233
1255
1256         Reviewed by Daniel Bates.
1257
1258         * wtf/nix/FeatureDefinesNix.h:
1259
1260 2013-12-24  Commit Queue  <commit-queue@webkit.org>
1261
1262         Unreviewed, rolling out r160959.
1263         http://trac.webkit.org/changeset/160959
1264         https://bugs.webkit.org/show_bug.cgi?id=126222
1265
1266         Caused Windows build to fail (Requested by rfong on #webkit).
1267
1268         * wtf/ByteSpinLock.h:
1269         (WTF::ByteSpinLock::lock):
1270         * wtf/Threading.h:
1271         * wtf/ThreadingPrimitives.h:
1272         (WTF::pauseBriefly):
1273         * wtf/ThreadingPthreads.cpp:
1274         (WTF::yield):
1275         * wtf/ThreadingWin.cpp:
1276         (WTF::yield):
1277
1278 2013-12-23  Benjamin Poulain  <bpoulain@apple.com>
1279
1280         Fix the build after r161031
1281
1282         I enabled ENABLE_CSS_SELECTOR_JIT by accident.
1283
1284         * wtf/Platform.h:
1285
1286 2013-12-23  Zan Dobersek  <zdobersek@igalia.com>
1287
1288         [GTK] Clean up compiler optimizations flags for libWTF, libJSC
1289         https://bugs.webkit.org/show_bug.cgi?id=126157
1290
1291         Reviewed by Gustavo Noronha Silva.
1292
1293         * GNUmakefile.am: Remove the -fstrict-aliasing and -O3 compiler flags for libWTF.la. -O3 gets
1294         overridden by -O2 that's listed in CXXFLAGS (or -O0 in case of debug builds) and -fstrict-aliasing
1295         is enabled when -O2 is used (and shouldn't be enabled in debug builds anyway).
1296
1297 2013-12-20  Anders Carlsson  <andersca@apple.com>
1298
1299         Replace yield() and pauseBriefly() with std::this_thread::yield()
1300         https://bugs.webkit.org/show_bug.cgi?id=126105
1301
1302         Reviewed by Sam Weinig.
1303
1304         * wtf/ByteSpinLock.h:
1305         (WTF::ByteSpinLock::lock):
1306         * wtf/Threading.h:
1307         * wtf/ThreadingPrimitives.h:
1308         * wtf/ThreadingPthreads.cpp:
1309         * wtf/ThreadingWin.cpp:
1310
1311 2013-12-20  Anders Carlsson  <andersca@apple.com>
1312
1313         Speed up case folding for 8-bit strings
1314         https://bugs.webkit.org/show_bug.cgi?id=126098
1315
1316         Reviewed by Geoffrey Garen.
1317
1318         Add a case folding lookup table for 8-bit strings and use it instead of calling down to u_foldCase.
1319         On a simple microbenchmark using a lookup table is about 15x faster.
1320
1321         * wtf/text/StringHash.h:
1322         (WTF::CaseFoldingHash::foldCase):
1323         * wtf/text/StringImpl.cpp:
1324         (WTF::equalIgnoringCase):
1325         * wtf/text/StringImpl.h:
1326
1327 2013-12-20  Myles C. Maxfield  <mmaxfield@apple.com>
1328
1329         Faster implementation of text-decoration-skip: ink
1330         https://bugs.webkit.org/show_bug.cgi?id=125718
1331
1332         Reviewed by Simon Fraser.
1333
1334         This creates a new preprocessor define, CSS3_TEXT_DECORATION_SKIP_INK,
1335         which enables the use of the text-decoration-skip: ink CSS value.
1336         Creating this new value simplifies the logic about when to enable the
1337         codepath for this CSS value.
1338
1339         * wtf/Platform.h:
1340
1341 2013-12-20  Simon Fraser  <simon.fraser@apple.com>
1342
1343         Change "threaded scrolling" terminology to "asynchronous scrolling"
1344         https://bugs.webkit.org/show_bug.cgi?id=126094
1345
1346         Reviewed by Tim Horton.
1347
1348         Rename ENABLE_THREADED_SCROLLING to ENABLE_ASYNC_SCROLLING.
1349
1350         * wtf/FeatureDefines.h:
1351
1352 2013-12-20  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
1353
1354         Build fails in debug mode after r160834.
1355         https://bugs.webkit.org/show_bug.cgi?id=126059
1356
1357         Reviewed by Csaba Osztrogonác.
1358
1359         Debug mode build failed due to comparing signed and unsigned in
1360         ASSERT(). Now both values are unsigned.
1361
1362         * wtf/dtoa/double-conversion.cc:
1363
1364 2013-12-19  Alex Christensen  <achristensen@webkit.org>
1365
1366         Final preparations for GStreamer on Windows.
1367         https://bugs.webkit.org/show_bug.cgi?id=125958
1368
1369         Reviewed by Benjamin Poulain.
1370
1371         * WTF.vcxproj/WTFDebugWinCairo.props:
1372         * WTF.vcxproj/WTFReleaseWinCairo.props:
1373         Include WinCairo.props.
1374         * wtf/Platform.h:
1375         Use GLib and GStreamer on WinCairo with video.
1376
1377 2013-12-18  Daniel Bates  <dabates@apple.com>
1378
1379         WTF, JavaScriptCore fails to build with trunk clang: operators new, new[],
1380         delete, delete[] cannot be declared inline
1381         https://bugs.webkit.org/show_bug.cgi?id=124186
1382         <rdar://problem/15644039>
1383
1384         Reviewed by Geoffrey Garen and Anders Carlsson.
1385
1386         Following <http://llvm.org/viewvc/llvm-project?view=revision&revision=193044>
1387         (http://llvm.org/bugs/show_bug.cgi?id=17591>), Clang emits warnings when
1388         operator new, delete are inlined. Such definitions cannot be inline per
1389         replacement.functions (17.6.4.6/3) of the C++ standard. For now,
1390         disable these warnings instead of exporting these functions.
1391
1392         * wtf/FastMalloc.h:
1393
1394 2013-12-19  Hugo Parente Lima  <hugo.lima@openbossa.org>
1395
1396         WTF fails to compile with gcc 4.8.2 and -Werror=array-bounds
1397         https://bugs.webkit.org/show_bug.cgi?id=125936
1398
1399         Reviewed by Anders Carlsson.
1400
1401         * wtf/dtoa/double-conversion.cc: Use a unsigned instead of int on buffer_pos type.
1402
1403 2013-12-19  Peter Szanka  <h868064@stud.u-szeged.hu>
1404
1405         Delete RVCT related code parts.
1406         https://bugs.webkit.org/show_bug.cgi?id=125626
1407
1408         Reviewed by Csaba Osztrogonác.
1409
1410         * wtf/Compiler.h: follow-up fix for r160648, remove an unnecessary comment.
1411
1412 2013-12-18  Alex Christensen  <achristensen@webkit.org>
1413
1414         [WinCairo] Preparation for GStreamer on Windows.
1415         https://bugs.webkit.org/show_bug.cgi?id=125946
1416
1417         Reviewed by Brent Fulgham.
1418
1419         * WTF.vcxproj/WTF.vcxproj:
1420         Use new GStreamer property sheets for WinCairo.
1421
1422 2013-12-18  Mark Hahnenberg  <mhahnenberg@apple.com>
1423
1424         DFG should have a separate StoreBarrier node
1425         https://bugs.webkit.org/show_bug.cgi?id=125530
1426
1427         Reviewed by Filip Pizlo.
1428
1429         * wtf/Platform.h: Added an #define for ENABLE(GGC) which will be used for landing things related to GenGC.
1430
1431 2013-12-16  Daniel Bates  <dabates@apple.com>
1432
1433         [iOS] Upstream WebCore/html changes
1434         https://bugs.webkit.org/show_bug.cgi?id=125765
1435
1436         Reviewed by Darin Adler.
1437
1438         Defined ENABLE_IOS_AUTOCORRECT_AND_AUTOCAPITALIZE, enabled by default on iOS.
1439
1440         * wtf/FeatureDefines.h:
1441
1442 2013-12-17  Alex Christensen  <achristensen@webkit.org>
1443
1444         Compile fix for WebGL on Windows without GRAPHICS_SURFACE.
1445         https://bugs.webkit.org/show_bug.cgi?id=125867
1446
1447         Reviewed by Martin Robinson.
1448
1449         * wtf/FeatureDefines.h:
1450         Removed unused ENABLE_GLIB_SUPPORT macro.
1451         * wtf/Platform.h:
1452         Don't use GRAPHICS_SURFACE for WebGL on Windows.
1453
1454 2013-12-17  Alex Christensen  <achristensen@webkit.org>
1455
1456         [Win] Fixed linker error with GStreamer.
1457         https://bugs.webkit.org/show_bug.cgi?id=124861
1458
1459         Reviewed by Martin Robinson.
1460
1461         * wtf/gobject/GOwnPtr.cpp:
1462         (WTF::GError):
1463         * wtf/gobject/GOwnPtr.h:
1464         Added WTF_EXPORT_PRIVATE to freeOwnedGPtr<GError> declaration and definition.
1465
1466 2013-12-17  Benjamin Poulain  <benjamin@webkit.org>
1467
1468         Add a simple register allocator to WebCore for x86_64
1469         https://bugs.webkit.org/show_bug.cgi?id=125771
1470
1471         Reviewed by Geoffrey Garen.
1472
1473         * wtf/Platform.h: Add a new flag "CSS_SELECTOR_JIT" to guard
1474         an experimental JIT compiler in WebCore.
1475
1476 2013-12-16  Anders Carlsson  <andersca@apple.com>
1477
1478         Remove EnumClass.h from WTF
1479         https://bugs.webkit.org/show_bug.cgi?id=125820
1480
1481         Reviewed by Darin Adler.
1482
1483         All compilers we build on now support real strongly typed enums, so we can remove the ENUM_CLASS version.
1484
1485         * WTF.vcxproj/WTF.vcxproj:
1486         * WTF.vcxproj/WTF.vcxproj.filters:
1487         * WTF.xcodeproj/project.pbxproj:
1488         * wtf/CheckedArithmetic.h:
1489         * wtf/EnumClass.h: Removed.
1490
1491 2013-12-16  Brent Fulgham  <bfulgham@apple.com>
1492
1493         [Win] Remove dead code after conversion to VS2013
1494         https://bugs.webkit.org/show_bug.cgi?id=125795
1495
1496         Reviewed by Darin Adler.
1497
1498         * wtf/Assertions.h: Include <inttypes.h> now that it exists.
1499         * wtf/Compiler.h: Update compiler checks for VS2013, and
1500         enable support for NEVER_INLINE
1501         * wtf/HashFunctions.h:
1502         (WTF::PtrHash::hash): Remove compiler workaround.
1503         * wtf/MathExtras.h: Remove C99 functions that are now supplied
1504         by the MS runtime library.
1505         * wtf/Platform.h: Remove old MSVC support flags.
1506         * wtf/StdLibExtras.h: Remove old MSVC workaround code.
1507
1508 2013-12-16  Alex Christensen  <achristensen@webkit.org>
1509
1510         Fixed Win64 build on VS2013.
1511         https://bugs.webkit.org/show_bug.cgi?id=125753
1512
1513         Reviewed by Brent Fulgham.
1514
1515         * WTF.vcxproj/WTF.vcxproj:
1516         Added correct PlatformToolset for 64-bit builds.
1517
1518 2013-12-16  Peter Szanka  <h868064@stud.u-szeged.hu>
1519
1520         Delete RVCT related code parts.
1521         https://bugs.webkit.org/show_bug.cgi?id=125626
1522
1523         Reviewed by Darin Adler.
1524
1525         * wtf/Assertions.h:
1526         * wtf/Compiler.h:
1527         * wtf/FastMalloc.h:
1528         * wtf/Platform.h:
1529
1530 2013-12-13  Brent Fulgham  <bfulgham@apple.com>
1531
1532         [Win] Remove Pre-VS2013 support code.
1533         https://bugs.webkit.org/show_bug.cgi?id=125693
1534
1535         Reviewed by Darin Adler.
1536
1537         * wtf/StringPrintStream.cpp:
1538         (WTF::StringPrintStream::vprintf): Use va_copy, like a civilized person.
1539
1540 2013-12-12  Darin Adler  <darin@apple.com>
1541
1542         Incorrect handling of non-ASCII characters in WTF::base64DecodeInternal
1543         https://bugs.webkit.org/show_bug.cgi?id=125658
1544
1545         Reviewed by Alexey Proskuryakov.
1546
1547         * wtf/text/Base64.cpp:
1548         (WTF::base64EncodeInternal): Use a reference to an array instead of a pointer
1549         for the table argument type so we check the size of the array at the call site.
1550         (WTF::base64DecodeInternal): Ditto. Also added an bounds check before using the
1551         table so we don't load some random value for non-ASCII characters.
1552
1553 2013-12-13  Brent Fulgham  <bfulgham@apple.com>
1554
1555         [Win] Unreviewed build fix after r160548
1556
1557         * WTF.vcxproj/WTFGenerated.vcxproj: Specify that we are using
1558         the vs12_xp target for Makefile-based projects.
1559
1560 2013-12-13  Anders Carlsson  <andersca@apple.com>
1561
1562         Require variadic templates to build WebKit
1563         https://bugs.webkit.org/show_bug.cgi?id=125701
1564
1565         Reviewed by Andreas Kling.
1566
1567         * wtf/Compiler.h:
1568         Add an #error if variadic templates are disabled.
1569
1570         * wtf/NeverDestroyed.h:
1571         * wtf/PassRef.h:
1572         * wtf/StdLibExtras.h:
1573         Remove a bunch of COMPILER_SUPPORTS(CXX_VARIADIC_TEMPLATES) #ifdefs.
1574
1575 2013-12-13  Peter Szanka  <h868064@stud.u-szeged.hu>
1576
1577         Delete INTEL C compiler related code parts.
1578         https://bugs.webkit.org/show_bug.cgi?id=125625
1579
1580         Reviewed by Darin Adler.
1581
1582         * wtf/Assertions.h:
1583         * wtf/Compiler.h:
1584
1585 2013-12-13  Brent Fulgham  <bfulgham@apple.com>
1586
1587         [Win] Switch WebKit solution to Visual Studio 2013
1588         https://bugs.webkit.org/show_bug.cgi?id=125192
1589
1590         Reviewed by Anders Carlsson.
1591
1592         * WTF.vcxproj/WTF.vcxproj: Update for VS2013
1593         * WTF.vcxproj/WTF.vcxproj.filters: Ditto
1594
1595 2013-12-12  Brady Eidson  <beidson@apple.com>
1596
1597         DatabaseProcess IndexedDB: Establish a metadata backing store on disk
1598         https://bugs.webkit.org/show_bug.cgi?id=125258
1599
1600         Reviewed by Alexey Proskuryakov, Anders Carlsson, and Tim Horton.
1601
1602         * wtf/text/WTFString.h: Export toUInt64Strict().
1603
1604 2013-12-12  Sam Weinig  <sam@webkit.org>
1605
1606         Replace uses of WTF::BitArray with std::bitset
1607         https://bugs.webkit.org/show_bug.cgi?id=125642
1608
1609         Reviewed by Anders Carlsson.
1610
1611         * GNUmakefile.list.am:
1612         * WTF.vcxproj/WTF.vcxproj:
1613         * WTF.vcxproj/WTF.vcxproj.filters:
1614         * WTF.xcodeproj/project.pbxproj:
1615         * wtf/BitArray.h: Removed.
1616         * wtf/CMakeLists.txt:
1617
1618 2013-12-11  David Kilzer  <ddkilzer@apple.com>
1619
1620         Define m_hasBadParent in InlineBox if defined(ADDRESS_SANITIZER)
1621         <http://webkit.org/b/125329>
1622
1623         Reviewed by Darin Adler.
1624
1625         * wtf/Assertions.h: Define macro
1626         ASSERT_WITH_SECURITY_IMPLICATION_DISABLED based on whether
1627         ASSERT_WITH_SECURITY_IMPLICATION() is enabled.
1628
1629 2013-12-11  Brendan Long  <b.long@cablelabs.com>
1630
1631         Type punning error in MD5.cpp
1632         https://bugs.webkit.org/show_bug.cgi?id=125412
1633
1634         Reviewed by Darin Adler.
1635
1636         * wtf/MD5.cpp:
1637         (WTF::toLittleEndian): Renamed, and use memcpy instead of casting.
1638         (WTF::MD5::addBytes): Renamed reverseBytes to toLittleEndian.
1639         (WTF::MD5::checksum): Same, and use memcpy instead of casting to prevent type punning error.
1640
1641 2013-12-11  Laszlo Vidacs  <lac@inf.u-szeged.hu>
1642
1643         Store SHA1 hash in std::array
1644         https://bugs.webkit.org/show_bug.cgi?id=125446
1645
1646         Reviewed by Darin Adler.
1647
1648         Change Vector to std::array and use typedef.
1649
1650         * wtf/SHA1.cpp:
1651         (WTF::SHA1::computeHash):
1652         (WTF::SHA1::hexDigest):
1653         (WTF::SHA1::computeHexDigest):
1654         * wtf/SHA1.h:
1655
1656 2013-12-11  Oliver Hunt  <oliver@apple.com>
1657
1658         Give Unique StringImpls a meaningful data pointer
1659         https://bugs.webkit.org/show_bug.cgi?id=125598
1660
1661         Reviewed by Michael Saboff.
1662
1663         Found by code inspection.  If there is a collision in an Identifier
1664         table when comparing to a string literal we attempt to use the data
1665         pointer (essentially this ends up being a null termination check).
1666
1667         Previously unique pointers just used the literal 1 as the data address
1668         but this obviously fails when dereferenced.  Instead we now make the
1669         data pointer point to the location of the buffer pointer itself.  As
1670         the buffer pointer is initialised to 0, this satisfies the requirement
1671         that the 0-length unique string is null terminated.
1672
1673         * wtf/text/StringImpl.h:
1674         (WTF::StringImpl::StringImpl):
1675
1676 2013-12-10  Anders Carlsson  <andersca@apple.com>
1677
1678         Add a HashMap constructor that takes an initializer list
1679         https://bugs.webkit.org/show_bug.cgi?id=125551
1680
1681         Reviewed by Dan Bernstein.
1682
1683         * wtf/HashMap.h:
1684         (WTF::HashMap::HashMap):
1685
1686 2013-12-10  Laszlo Vidacs  <lac@inf.u-szeged.hu>
1687
1688         Use std::array when computing MD5 checksum
1689         https://bugs.webkit.org/show_bug.cgi?id=125509
1690
1691         Reviewed by Anders Carlsson.
1692
1693         Added MD5::Digest type and MD5::hashSize for computing MD5 checksum.
1694
1695         * wtf/MD5.cpp:
1696         (WTF::MD5::checksum):
1697         * wtf/MD5.h:
1698
1699 2013-12-10  Martin Robinson  <mrobinson@igalia.com>
1700
1701         Various fixes for the CMake GTK+ build
1702
1703         Reviewed by Gustavo Noronha.
1704
1705         * wtf/PlatformGTK.cmake: Add Zlib library to the WTF build.
1706
1707 2013-12-09  Sam Weinig  <sam@webkit.org>
1708
1709         Remove FixedArray
1710         https://bugs.webkit.org/show_bug.cgi?id=125478
1711
1712         Reviewed by Anders Carlsson.
1713
1714         * GNUmakefile.list.am:
1715         * WTF.vcxproj/WTF.vcxproj:
1716         * WTF.vcxproj/WTF.vcxproj.filters:
1717         * WTF.xcodeproj/project.pbxproj:
1718         * wtf/CMakeLists.txt:
1719         * wtf/FixedArray.h: Removed.
1720
1721 2013-12-09  Sam Weinig  <sam@webkit.org>
1722
1723         Replace use of WTF::FixedArray with std::array
1724         https://bugs.webkit.org/show_bug.cgi?id=125475
1725
1726         Reviewed by Anders Carlsson.
1727
1728         * wtf/AVLTree.h:
1729         * wtf/Bitmap.h:
1730         * wtf/SixCharacterHash.cpp:
1731         (WTF::integerToSixCharacterHashString):
1732         * wtf/SixCharacterHash.h:
1733
1734 2013-12-06  Roger Fong <roger_fong@apple.com> and Brent Fulgham  <bfulgham@apple.com>
1735
1736         [Win] Support compiling with VS2013
1737         https://bugs.webkit.org/show_bug.cgi?id=125353
1738
1739         Reviewed by Anders Carlsson.
1740
1741         * wtf/Compiler.h: Show proper features for VS2012 and VS2013.
1742         * wtf/MathExtras.h: Don't implement common C99 routines when
1743         they are available through the runtime libraries.
1744         * wtf/RetainPtr.h:
1745         (WTF::RetainPtr::operator bool): Added.
1746         * wtf/StdLibExtras.h: Use Microsoft's version of make_unique
1747         when it exists.
1748
1749 2013-12-06  Laszlo Vidacs  <lac@inf.u-szeged.hu>
1750
1751         Define SHA1 hash size in SHA1.h and use it at various places.
1752         https://bugs.webkit.org/show_bug.cgi?id=125345
1753
1754         Reviewed by Darin Adler.
1755
1756         Use SHA1::hashSize instead of local variables.
1757
1758         * wtf/SHA1.h: define SHA1 hash size
1759
1760 2013-12-05  Iain Lane  <iain.lane@canonical.com>
1761
1762         Remove USE(LOCKFREE_THREADSAFEREFCOUNTED) from Atomics.cpp since it is
1763         no longer defined.
1764         https://bugs.webkit.org/show_bug.cgi?id=124502
1765
1766         Reviewed by Anders Carlsson.
1767
1768         * wtf/Atomics.cpp:
1769
1770 2013-12-04  Ryosuke Niwa  <rniwa@webkit.org>
1771
1772         Enable HTMLTemplateElement by default
1773         https://bugs.webkit.org/show_bug.cgi?id=123851
1774
1775         Reviewed by Antti Koivisto.
1776
1777         * wtf/FeatureDefines.h:
1778
1779 2013-12-04  Dan Bernstein  <mitz@apple.com>
1780
1781         Replace USE(SECURITY_FRAMEWORK) with finer-grained defines
1782         https://bugs.webkit.org/show_bug.cgi?id=125242
1783
1784         Reviewed by Sam Weinig.
1785
1786         * wtf/Platform.h: Removed definitions of WTF_USE_SECURITY_FRAMEWORK, and defined
1787         HAVE_SEC_IDENTITY and HAVE_SEC_KEYCHAIN.
1788
1789 2013-12-03  Joseph Pecoraro  <pecoraro@apple.com>
1790
1791         Web Inspector: Push Remote Inspector debugging connection management into JavaScriptCore
1792         https://bugs.webkit.org/show_bug.cgi?id=124613
1793
1794         Reviewed by Timothy Hatcher.
1795
1796         * wtf/ios/WebCoreThread.cpp:
1797         * wtf/ios/WebCoreThread.h:
1798         Expose WebThreadRun/WebThreadRunSync iOS methods defined in WebCore through
1799         WTF so that JavaScriptCore can use it. Another such method already existed.
1800
1801 2013-12-03  Mark Lam  <mark.lam@apple.com>
1802
1803         testapi test crashes on Windows in WTF::Vector<wchar_t,64,WTF::UnsafeVectorOverflow>::size().
1804         https://bugs.webkit.org/show_bug.cgi?id=121972.
1805
1806         Reviewed by Brent Fulgham.
1807
1808         * wtf/OSAllocatorWin.cpp:
1809         (WTF::OSAllocator::decommit):
1810         (WTF::OSAllocator::releaseDecommitted):
1811         - Added a check to ensure that the bytes to decommit / release is not 0.
1812           On Windows, a 0 length passed to VirtualFree() has a special meaning,
1813           and it's not "decommit / release nothing" as one would expect. Adding
1814           this check makes OSAllocatorWin consistent with OSAllocatorPosix for
1815           these 2 functions.
1816
1817 2013-12-02  Mark Lam  <mark.lam@apple.com>
1818
1819         Build failure when disabling JIT, YARR_JIT, and ASSEMBLER.
1820         https://bugs.webkit.org/show_bug.cgi?id=123809.
1821
1822         Reviewed by Geoffrey Garen.
1823
1824         * wtf/Platform.h:
1825         - Ensure that the ASSEMBLER is enabled when the DISASSEMBLER is enabled.
1826
1827 2013-11-30  peavo@outlook.com  <peavo@outlook.com>
1828
1829         [Win] Some JavaScript date tests are failing.
1830         https://bugs.webkit.org/show_bug.cgi?id=124946
1831
1832         Reviewed by Brent Fulgham.
1833
1834         Use native Win32 api functions to compute Daylight saving time offset.
1835
1836         * wtf/DateMath.cpp:
1837         (WTF::UnixTimeToFileTime): Added method to calculate Win32 specific struct FILETIME from time_t value.
1838         (WTF::calculateDSTOffset): Use native Win32 api functions to compute Daylight saving time offset.
1839
1840 2013-11-28  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1841
1842         Nix Upstream: Updating Nix WTF files
1843         https://bugs.webkit.org/show_bug.cgi?id=124980
1844
1845         Reviewed by Csaba Osztrogonác.
1846
1847         Just to sync our private repo files and the trunk, as part of the upstream process.
1848
1849         * wtf/DisallowCType.h:
1850         * wtf/PlatformNix.cmake:
1851         * wtf/nix/FeatureDefinesNix.h:
1852         * wtf/nix/PlatformNix.h:
1853         * wtf/nix/RunLoopNix.cpp: Added.
1854
1855 2013-11-28  Antti Koivisto  <antti@apple.com>
1856
1857         Remove feature: CSS variables
1858         https://bugs.webkit.org/show_bug.cgi?id=114119
1859
1860         Reviewed by Andreas Kling.
1861
1862         * wtf/FeatureDefines.h:
1863
1864 2013-11-26  Filip Pizlo  <fpizlo@apple.com>
1865
1866         Do bytecode validation as part of testing
1867         https://bugs.webkit.org/show_bug.cgi?id=124913
1868
1869         Reviewed by Oliver Hunt.
1870
1871         * GNUmakefile.list.am:
1872         * WTF.vcxproj/WTF.vcxproj:
1873         * WTF.xcodeproj/project.pbxproj:
1874         * wtf/CMakeLists.txt:
1875         * wtf/FastBitVector.cpp: Added.
1876         (WTF::FastBitVector::dump):
1877         * wtf/FastBitVector.h:
1878         (WTF::FastBitVector::resize):
1879         (WTF::FastBitVector::bitCount):
1880         (WTF::FastBitVector::arrayLength):
1881
1882 2013-11-27  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
1883
1884         Remove Sparc specific code.
1885         https://bugs.webkit.org/show_bug.cgi?id=124941
1886
1887         Reviewed by Michael Saboff.
1888
1889         Sparc is not supported, remove leftover code.
1890
1891         * wtf/Platform.h:
1892         * wtf/dtoa/utils.h:
1893
1894 2013-11-26  Marcelo Lira  <marcelo.lira@openbossa.org>
1895
1896         Nix upstreaming - Adding build files and supporting scripts
1897         https://bugs.webkit.org/show_bug.cgi?id=118367
1898
1899         Reviewed by Ryosuke Niwa.
1900
1901         * wtf/FeatureDefines.h:
1902         * wtf/Platform.h:
1903         * wtf/PlatformNix.cmake: Added.
1904
1905 2013-11-26  Drew Yao  <ayao@apple.com>
1906
1907         ASSERT_WITH_SECURITY_IMPLICATION should crash in a distinct way.
1908         https://bugs.webkit.org/show_bug.cgi?id=124757
1909
1910         Change ASSERT_WITH_SECURITY_IMPLICATION to access a different address from CRASH()
1911         in order to help screen fuzzing bugs.
1912
1913         Reviewed by Brent Fulgham.
1914
1915         * wtf/Assertions.cpp:
1916         * wtf/Assertions.h:
1917
1918 2013-11-24  Tim Horton  <timothy_horton@apple.com>
1919
1920         Upstream USE(IOSURFACE) from the iOS port
1921         https://bugs.webkit.org/show_bug.cgi?id=124814
1922
1923         Reviewed by Sam Weinig.
1924
1925         Some code guarded by USE(IOSURFACE) was recently upstreamed,
1926         but not the definition of WTF_USE_IOSURFACE itself.
1927
1928         * wtf/Platform.h:
1929
1930 2013-11-23  Xabier Rodriguez Calvar  <calvaris@igalia.com>
1931
1932         [GStreamer] Remove 0.10 codepath
1933         https://bugs.webkit.org/show_bug.cgi?id=124534
1934
1935         Reviewed by Philippe Normand.
1936
1937         * wtf/Platform.h: Removed macro for GStreamer 1.0 as it is the
1938         only codepath now.
1939
1940 2013-11-21  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
1941
1942         Remove ENABLE_WORKERS
1943         https://bugs.webkit.org/show_bug.cgi?id=105784
1944
1945         Reviewed by Darin Adler.
1946
1947         * wtf/FeatureDefines.h:
1948         * wtf/nix/FeatureDefinesNix.h:
1949
1950 2013-11-21  Mark Rowe  <mrowe@apple.com>
1951
1952         <https://webkit.org/b/124701> Fix an error in a few Xcode configuration setting files.
1953
1954         Reviewed by Alexey Proskuryakov.
1955
1956         * Configurations/Base.xcconfig:
1957
1958 2013-11-20  Mark Lam  <mark.lam@apple.com>
1959
1960         Introducing VMEntryScope to update the VM stack limit.
1961         https://bugs.webkit.org/show_bug.cgi?id=124634.
1962
1963         Reviewed by Geoffrey Garen.
1964
1965         * wtf/Platform.h:
1966         * wtf/StackBounds.h:
1967         (WTF::StackBounds::StackBounds):
1968
1969 2013-11-18  Filip Pizlo  <fpizlo@apple.com>
1970
1971         Allow the FTL debug dumps to include the new size field
1972         https://bugs.webkit.org/show_bug.cgi?id=124479
1973
1974         Reviewed by Mark Hahnenberg.
1975
1976         * wtf/PrintStream.cpp:
1977         (WTF::printInternal):
1978         * wtf/PrintStream.h:
1979
1980 2013-11-17  Jer Noble  <jer.noble@apple.com>
1981
1982         [WTF] Media time should not have a constructor which accepts a single int or float.
1983         https://bugs.webkit.org/show_bug.cgi?id=124470
1984
1985         Having a constructor taking a single number value, as it's very easy to accidentially mis-
1986         initialize a MediaTime with a double (automatically casted to a int64_t).
1987
1988         Reviewed by Eric Carlson.
1989
1990         * wtf/MediaTime.h:
1991
1992 2013-11-18  Csaba Osztrogonác  <ossy@webkit.org>
1993
1994         URTBF after r159432 to make WinCairo build happy.
1995
1996         * wtf/text/WTFString.h:
1997
1998 2013-11-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1999
2000         Unreviewed. Fix make distcheck.
2001
2002         * GNUmakefile.list.am: Add missing header file.
2003
2004 2013-11-16  Alexey Proskuryakov  <ap@apple.com>
2005
2006         Use uint8_t vectors for WebCrypto data
2007         https://bugs.webkit.org/show_bug.cgi?id=124466
2008
2009         Reviewed by Sam Weinig.
2010
2011         Binary data can be UTF-8, in which case "char*" is idiomatic, or it can be arbitrary
2012         binary data, in which case "uint8_t*" is more common.
2013
2014         Changed encode functions that took "const char *" to "const void*", and decode
2015         functions that took "Vector<char>&" now take an adapter class.
2016
2017         The adapter relies on Vector<char> and Vector<uint8_t> classes having an identical layout.
2018
2019         * wtf/text/Base64.cpp:
2020         (WTF::base64Encode):
2021         (WTF::base64URLEncode):
2022         (WTF::base64DecodeInternal):
2023         (WTF::base64Decode):
2024         (WTF::base64URLDecode):
2025         * wtf/text/Base64.h:
2026         (WTF::SignedOrUnsignedCharVectorAdapter):
2027         (WTF::ConstSignedOrUnsignedCharVectorAdapter):
2028         (WTF::base64Encode):
2029         (WTF::base64URLEncode):
2030
2031 2013-11-15  Alexey Proskuryakov  <ap@apple.com>
2032
2033         Support exporting symmetric keys as JWK
2034         https://bugs.webkit.org/show_bug.cgi?id=124442
2035
2036         Reviewed by Sam Weinig.
2037
2038         Base64URL encoding doesn't use '=' padding, and doesn't need any other options.
2039         Added this mode for encode, and removed policy arguments from exposed functions.
2040
2041         * wtf/text/Base64.cpp:
2042         (WTF::base64EncodeInternal):
2043         (WTF::base64URLEncode):
2044         (WTF::base64URLDecode):
2045         * wtf/text/Base64.h:
2046         (WTF::base64URLEncode):
2047
2048 2013-11-15  Mark Hahnenberg  <mhahnenberg@apple.com>
2049
2050         Remove VTableSpectrum
2051         https://bugs.webkit.org/show_bug.cgi?id=124427
2052
2053         Reviewed by Filip Pizlo.
2054
2055         * wtf/Platform.h:
2056
2057 2013-11-15  Jer Noble  <jer.noble@apple.com>
2058
2059         MediaTime addition and subtraction operators have errors when the rhs is infinite.
2060         https://bugs.webkit.org/show_bug.cgi?id=124413
2061
2062         Reviewed by Eric Carlson.
2063
2064         Correctly account for infinities that can occur on the right-hand side of addition or
2065         subtraction operators.
2066
2067         * wtf/MediaTime.cpp:
2068         (WTF::MediaTime::operator+):
2069         (WTF::MediaTime::operator-):
2070
2071 2013-11-14  Oliver Hunt  <oliver@apple.com>
2072
2073         Make CLoop easier to build, and make it work
2074         https://bugs.webkit.org/show_bug.cgi?id=124359
2075
2076         Reviewed by Geoffrey Garen.
2077
2078         Make building with the CLoop forcibly enabled manually
2079         disable the JITs
2080
2081         * wtf/Platform.h:
2082
2083 2013-11-14  Andreas Kling  <akling@apple.com>
2084
2085         FontDescription copies should share families list, not duplicate it.
2086         <https://webkit.org/b/124338>
2087
2088         Add RefCountedArray::operator==.
2089
2090         Reviewed by Antti Koivisto.
2091
2092 2013-11-13  Anders Carlsson  <andersca@apple.com>
2093
2094         Add a Vector constructor that takes an std::initializer_list
2095         https://bugs.webkit.org/show_bug.cgi?id=124287
2096
2097         Reviewed by Antti Koivisto.
2098
2099         * wtf/Compiler.h:
2100         * wtf/Vector.h:
2101         (WTF::Vector::Vector):
2102
2103 2013-11-12  Brent Fulgham  <bfulgham@apple.com>
2104
2105         [Win] Unreviewed gardening.
2106
2107         * WTF.vcxproj/WTF.vcxproj.filters: Tidy up filters so files show up
2108         in their proper directories.
2109
2110 2013-11-12  Alex Christensen  <achristensen@webkit.org>
2111
2112         Build GStreamer files on Windows.
2113         https://bugs.webkit.org/show_bug.cgi?id=124180
2114
2115         Reviewed by Brent Fulgham.
2116
2117         * WTF.vcxproj/WTF.vcxproj:
2118         * WTF.vcxproj/WTF.vcxproj.filters:
2119         * WTF.vcxproj/copy-files.cmd:
2120         Include gobject files in WinCairo build.
2121
2122 2013-11-09  Filip Pizlo  <fpizlo@apple.com>
2123
2124         Switch FTL GetById/PutById IC's over to using AnyRegCC
2125         https://bugs.webkit.org/show_bug.cgi?id=124094
2126
2127         Reviewed by Sam Weinig.
2128         
2129         I needed to add another set operation, namely filter(), which is an in-place set
2130         intersection.
2131
2132         * wtf/BitVector.cpp:
2133         (WTF::BitVector::filterSlow):
2134         * wtf/BitVector.h:
2135         (WTF::BitVector::filter):
2136
2137 2013-11-10  Ryuan Choi  <ryuan.choi@samsung.com>
2138
2139         [EFL] Build break on Ubuntu 13.10
2140         https://bugs.webkit.org/show_bug.cgi?id=124131
2141
2142         Reviewed by Gyuyoung Kim.
2143
2144         Turned DisallowCType macros off on EFL port because gtest-internal.h uses isspace().
2145
2146         * wtf/DisallowCType.h: Added !PLATFORM(EFL) guard.
2147
2148 2013-11-09  Patrick Gansterer  <paroga@webkit.org>
2149
2150         Move RunLoop from WebCore to WTF
2151         https://bugs.webkit.org/show_bug.cgi?id=116606
2152
2153         Reviewed by Anders Carlsson.
2154
2155         With this change RunLoop can be used in JavaScriptCore too.
2156
2157         * GNUmakefile.list.am:
2158         * WTF.vcxproj/WTF.vcxproj:
2159         * WTF.xcodeproj/project.pbxproj:
2160         * wtf/CMakeLists.txt:
2161         * wtf/PlatformBlackBerry.cmake:
2162         * wtf/PlatformEfl.cmake:
2163         * wtf/PlatformGTK.cmake:
2164         * wtf/PlatformWin.cmake:
2165         * wtf/RunLoop.cpp: Renamed from Source/WebCore/platform/RunLoop.cpp.
2166         (WTF::RunLoop::Holder::Holder):
2167         (WTF::RunLoop::Holder::runLoop):
2168         (WTF::RunLoop::initializeMainRunLoop):
2169         (WTF::RunLoop::current):
2170         (WTF::RunLoop::main):
2171         (WTF::RunLoop::isMain):
2172         (WTF::RunLoop::performWork):
2173         (WTF::RunLoop::dispatch):
2174         * wtf/RunLoop.h: Renamed from Source/WebCore/platform/RunLoop.h.
2175         (WTF::RunLoop::TimerBase::startRepeating):
2176         (WTF::RunLoop::TimerBase::startOneShot):
2177         (WTF::RunLoop::TimerBase::isRepeating):
2178         (WTF::RunLoop::Timer::Timer):
2179         (WTF::RunLoop::Timer::fired):
2180         * wtf/blackberry/RunLoopBlackBerry.cpp: Renamed from Source/WebCore/platform/blackberry/RunLoopBlackBerry.cpp.
2181         (WTF::RunLoop::RunLoop):
2182         (WTF::RunLoop::~RunLoop):
2183         (WTF::RunLoop::wakeUp):
2184         * wtf/cf/RunLoopCF.cpp: Renamed from Source/WebCore/platform/cf/RunLoopCF.cpp.
2185         (WTF::RunLoop::performWork):
2186         (WTF::RunLoop::RunLoop):
2187         (WTF::RunLoop::~RunLoop):
2188         (WTF::RunLoop::runForDuration):
2189         (WTF::RunLoop::wakeUp):
2190         (WTF::RunLoop::run):
2191         (WTF::RunLoop::stop):
2192         (WTF::RunLoop::TimerBase::timerFired):
2193         (WTF::RunLoop::TimerBase::TimerBase):
2194         (WTF::RunLoop::TimerBase::~TimerBase):
2195         (WTF::RunLoop::TimerBase::start):
2196         (WTF::RunLoop::TimerBase::stop):
2197         (WTF::RunLoop::TimerBase::isActive):
2198         * wtf/efl/RunLoopEfl.cpp: Renamed from Source/WebCore/platform/efl/RunLoopEfl.cpp.
2199         (WTF::RunLoop::RunLoop):
2200         (WTF::RunLoop::~RunLoop):
2201         (WTF::RunLoop::run):
2202         (WTF::RunLoop::stop):
2203         (WTF::RunLoop::wakeUpEvent):
2204         (WTF::RunLoop::wakeUp):
2205         (WTF::RunLoop::TimerBase::TimerBase):
2206         (WTF::RunLoop::TimerBase::~TimerBase):
2207         (WTF::RunLoop::TimerBase::timerFired):
2208         (WTF::RunLoop::TimerBase::start):
2209         (WTF::RunLoop::TimerBase::stop):
2210         (WTF::RunLoop::TimerBase::isActive):
2211         * wtf/gtk/RunLoopGtk.cpp: Renamed from Source/WebCore/platform/gtk/RunLoopGtk.cpp.
2212         (WTF::RunLoop::RunLoop):
2213         (WTF::RunLoop::~RunLoop):
2214         (WTF::RunLoop::run):
2215         (WTF::RunLoop::innermostLoop):
2216         (WTF::RunLoop::pushNestedMainLoop):
2217         (WTF::RunLoop::popNestedMainLoop):
2218         (WTF::RunLoop::stop):
2219         (WTF::RunLoop::queueWork):
2220         (WTF::RunLoop::wakeUp):
2221         (WTF::RunLoop::TimerBase::TimerBase):
2222         (WTF::RunLoop::TimerBase::~TimerBase):
2223         (WTF::RunLoop::TimerBase::clearTimerSource):
2224         (WTF::RunLoop::TimerBase::timerFiredCallback):
2225         (WTF::RunLoop::TimerBase::start):
2226         (WTF::RunLoop::TimerBase::stop):
2227         (WTF::RunLoop::TimerBase::isActive):
2228         * wtf/win/RunLoopWin.cpp: Renamed from Source/WebCore/platform/win/RunLoopWin.cpp.
2229         (WTF::RunLoop::RunLoopWndProc):
2230         (WTF::RunLoop::wndProc):
2231         (WTF::RunLoop::run):
2232         (WTF::RunLoop::stop):
2233         (WTF::RunLoop::registerRunLoopMessageWindowClass):
2234         (WTF::RunLoop::RunLoop):
2235         (WTF::RunLoop::~RunLoop):
2236         (WTF::RunLoop::wakeUp):
2237         (WTF::RunLoop::TimerBase::timerFired):
2238         (WTF::generateTimerID):
2239         (WTF::RunLoop::TimerBase::TimerBase):
2240         (WTF::RunLoop::TimerBase::~TimerBase):
2241         (WTF::RunLoop::TimerBase::start):
2242         (WTF::RunLoop::TimerBase::stop):
2243         (WTF::RunLoop::TimerBase::isActive):
2244
2245 2013-11-08  Alexey Proskuryakov  <ap@apple.com>
2246
2247         Make base64url decoding actually work
2248         https://bugs.webkit.org/show_bug.cgi?id=124050
2249
2250         Reviewed by Sam Weinig.
2251
2252         * wtf/text/Base64.cpp: (WTF::base64DecodeInternal): Don't hardcode knowledge about
2253         alphabet, put it into the map.
2254
2255 2013-11-07  Denis Nomiyama  <d.nomiyama@samsung.com>
2256
2257         [GTK] Glyphs in vertical text tests are rotated 90 degrees clockwise
2258         https://bugs.webkit.org/show_bug.cgi?id=50619
2259
2260         Reviewed by Martin Robinson.
2261
2262         Enabled OPENTYPE_VERTICAL by default on GTK+ and EFL ports, which are
2263         currently using Freetype.
2264
2265         * wtf/Platform.h:
2266
2267 2013-11-06  Daniel Bates  <dabates@apple.com>
2268
2269         [iOS] Upstream Letterpress effect
2270         https://bugs.webkit.org/show_bug.cgi?id=123932
2271
2272         Reviewed by Sam Weinig.
2273
2274         Add feature define ENABLE_LETTERPRESS disabled by default. We only enable
2275         letterpress on iOS.
2276
2277         * wtf/FeatureDefines.h:
2278
2279 2013-11-06  Nick Diego Yamane  <nick.yamane@openbossa.org>
2280
2281         Disable "unused local typedefs" warning for GCC 4.7
2282         https://bugs.webkit.org/show_bug.cgi?id=123913
2283
2284         Reviewed by Martin Robinson.
2285
2286         That warning was actually introduced in gcc 4.7.0.
2287         See: http://gcc.gnu.org/gcc-4.7/changes.html
2288
2289         * wtf/Compiler.h:
2290
2291 2013-11-06  Daniel Bates  <dabates@apple.com>
2292
2293         Add ENABLE(TEXT_SELECTION)
2294         https://bugs.webkit.org/show_bug.cgi?id=123827
2295
2296         Reviewed by Ryosuke Niwa.
2297
2298         Enable selection painting by default on all ports except iOS.
2299
2300         * wtf/FeatureDefines.h:
2301
2302 2013-11-04  Alexey Proskuryakov  <ap@apple.com>
2303
2304         Implement base64url encoding from RFC 4648
2305         https://bugs.webkit.org/show_bug.cgi?id=123767
2306
2307         Reviewed by Sam Weinig.
2308
2309         No tests yet, will be covered by JWK tests for WebCrypto.
2310
2311         * wtf/text/Base64.cpp:
2312         (WTF::base64EncodeInternal):
2313         (WTF::base64Encode):
2314         (WTF::base64URLEncode):
2315         (WTF::base64DecodeInternal):
2316         (WTF::base64Decode):
2317         (WTF::base64URLDecode):
2318         * wtf/text/Base64.h:
2319         (WTF::base64URLEncode):
2320
2321 2013-11-04  Brent Fulgham  <bfulgham@apple.com>
2322
2323         [Win] User VersionStamper for official builds
2324         https://bugs.webkit.org/show_bug.cgi?id=123758
2325
2326         Reviewed by Tim Horton.
2327
2328         * WTF.vcxproj/WTFPostBuild.cmd: Add missing command to run VersionStamper.exe.
2329
2330 2013-11-01  Jer Noble  <jer.noble@apple.com>
2331
2332         [PluginProxy] Add a setting to disable video plugin proxy support in HTMLMediaElement.
2333         https://bugs.webkit.org/show_bug.cgi?id=123621
2334
2335         Reviewed by Eric Carlson.
2336
2337         Enable WTF_USE_AVFOUNDATION and add some HAVE_AVFOUNDATION_* defines
2338         to replace the existing __MAC_OS_X_VERSION_MIN_REQUIRED macros in
2339         MediaPlayerPrivateAVFoundationObjC.mm.
2340
2341         * wtf/Platform.h:
2342
2343 2013-11-02  Patrick Gansterer  <paroga@webkit.org>
2344
2345         Fix compilation of DateMath.cpp with MSVC
2346         https://bugs.webkit.org/show_bug.cgi?id=123680
2347
2348         Reviewed by Darin Adler.
2349
2350         * wtf/DateMath.cpp:
2351         (WTF::appendTwoDigitNumber): Help the compiler finding the
2352         correct overload by casting the characters to LChar.
2353
2354 2013-11-02  Filip Pizlo  <fpizlo@apple.com>
2355
2356         LLVM assertion failures should funnel into WTF's crash handling
2357         https://bugs.webkit.org/show_bug.cgi?id=123682
2358
2359         Reviewed by Geoffrey Garen.
2360         
2361         Give JSC some new toys to play with for crash handling.
2362
2363         * wtf/Assertions.cpp:
2364         * wtf/Assertions.h:
2365
2366 2013-11-02  Patrick Gansterer  <paroga@webkit.org>
2367
2368         Fix UnicodeWchar after r157330.
2369         https://bugs.webkit.org/show_bug.cgi?id=123668
2370
2371         Reviewed by Darin Adler.
2372
2373         * wtf/unicode/wchar/UnicodeWchar.cpp:
2374         (unorm_normalize):
2375         (u_strFoldCase):
2376         (u_strToLower):
2377         (u_strToUpper):
2378         * wtf/unicode/wchar/UnicodeWchar.h:
2379         (u_foldCase):
2380         (u_isprint):
2381         (u_isspace):
2382
2383 2013-11-02  Andreas Kling  <akling@apple.com>
2384
2385         Make remaining StringImpl functions return PassRef.
2386         <https://webkit.org/b/123683>
2387
2388         Okay, this seems to work well! Let's go all in and convert the
2389         remaining StringImpl functions to return PassRef<StringImpl> instead
2390         of PassRefPtr where we know that null is never returned.
2391
2392         Reviewed by Anders Carlsson.
2393
2394 2013-11-02  Andreas Kling  <akling@apple.com>
2395
2396         StringImpl::upper() should return PassRef.
2397         <https://webkit.org/b/123655>
2398
2399         Make upper() return PassRef<StringImpl>. Spotted and removed some
2400         ref churning in implementations.
2401
2402         Reviewed by Darin Adler.
2403
2404 2013-11-01  Alexey Proskuryakov  <ap@apple.com>
2405
2406         Add WebCrypto AES-CBC
2407         https://bugs.webkit.org/show_bug.cgi?id=123647
2408
2409         Reviewed by Anders Carlsson.
2410
2411         * wtf/FixedArray.h: (WTF::FixedArray::data): Added a const version of the function.
2412
2413         * wtf/Vector.h: Added a comment to Vector constructor about how it is different
2414         from std::vector.
2415
2416 2013-11-01  Joseph Pecoraro  <pecoraro@apple.com>
2417
2418         Unreviewed extended attempt at Windows build fix after r158471.
2419
2420         * wtf/text/cf/AtomicStringCF.cpp:
2421         * wtf/text/cf/StringCF.cpp:
2422         * wtf/text/cf/StringImplCF.cpp:
2423
2424 2013-11-01  Joseph Pecoraro  <pecoraro@apple.com>
2425
2426         Unreviewed attempt at Windows build fix after r158471.
2427
2428         * wtf/text/cf/AtomicStringCF.cpp:
2429         * wtf/text/cf/StringCF.cpp:
2430         * wtf/text/cf/StringImplCF.cpp:
2431
2432 2013-11-01  Andreas Kling  <akling@apple.com>
2433
2434         Make more StringImpl construction helpers return PassRef.
2435         <https://webkit.org/b/123652>
2436
2437         Tweak another handful of StringImpl constructor functions to return
2438         PassRef<StringImpl> instead of PassRefPtr.
2439
2440         Reviewed by Anders Carlsson.
2441
2442 2013-11-01  Andreas Kling  <akling@apple.com>
2443
2444         Neuter WTF_MAKE_FAST_ALLOCATED in GLOBAL_FASTMALLOC_NEW builds.
2445         <https://webkit.org/b/123639>
2446
2447         When building with GLOBAL_FASTMALLOC_NEW, we don't need to expand
2448         operator new/delete overrides in every class.
2449
2450         This change makes allocations group up nicely in Instruments,
2451         instead of being split between "WTF::fastMalloc" and "operator new"
2452         depending on whether the class had WTF_MAKE_FAST_ALLOCATED.
2453
2454         Reviewed by Anders Carlsson.
2455
2456 2013-11-01  Joseph Pecoraro  <pecoraro@apple.com>
2457
2458         Move CF/Mac WTF String implementations down into WTF
2459         https://bugs.webkit.org/show_bug.cgi?id=123635
2460
2461         Reviewed by Sam Weinig.
2462
2463         * WTF.vcxproj/WTF.vcxproj:
2464         * WTF.vcxproj/WTF.vcxproj.filters:
2465         * WTF.xcodeproj/project.pbxproj:
2466         * wtf/text/AtomicString.h:
2467         * wtf/text/StringImpl.h:
2468         * wtf/text/WTFString.h:
2469         * wtf/text/cf/AtomicStringCF.cpp: Renamed from Source/WebCore/platform/text/cf/AtomicStringCF.cpp.
2470         (WTF::AtomicString::add):
2471         * wtf/text/cf/StringCF.cpp: Renamed from Source/WebCore/platform/text/cf/StringCF.cpp.
2472         (WTF::String::String):
2473         (WTF::String::createCFString):
2474         * wtf/text/cf/StringImplCF.cpp: Renamed from Source/WebCore/platform/text/cf/StringImplCF.cpp.
2475         (garbageCollectionEnabled):
2476         (WTF::StringWrapperCFAllocator::retain):
2477         (WTF::StringWrapperCFAllocator::release):
2478         (WTF::StringWrapperCFAllocator::copyDescription):
2479         (WTF::StringWrapperCFAllocator::allocate):
2480         (WTF::StringWrapperCFAllocator::reallocate):
2481         (WTF::StringWrapperCFAllocator::deallocateOnMainThread):
2482         (WTF::StringWrapperCFAllocator::deallocate):
2483         (WTF::StringWrapperCFAllocator::preferredSize):
2484         (WTF::StringWrapperCFAllocator::create):
2485         (WTF::StringWrapperCFAllocator::allocator):
2486         (WTF::StringImpl::createCFString):
2487         * wtf/text/mac/StringImplMac.mm: Renamed from Source/WebCore/platform/text/mac/StringImplMac.mm.
2488         (WTF::StringImpl::operator NSString *):
2489         * wtf/text/mac/StringMac.mm: Renamed from Source/WebCore/platform/text/mac/StringMac.mm.
2490         (WTF::String::String):
2491
2492 2013-11-01  Emilio Pozuelo Monfort  <pochu27@gmail.com>
2493
2494         HPPA build fixes
2495         https://bugs.webkit.org/show_bug.cgi?id=123625
2496
2497         Original patch from John David Anglin <dave.anglin@bell.net>
2498
2499         Reviewed by Darin Adler.
2500
2501         * wtf/Platform.h:
2502         * wtf/dtoa/utils.h:
2503
2504 2013-11-01  Patrick Gansterer  <paroga@webkit.org>
2505
2506         Buildfix for !USE(ICU_UNICODE) after 156968.
2507
2508         * wtf/unicode/CollatorDefault.cpp:
2509         (WTF::Collator::userDefault):
2510
2511 2013-10-30  Oliver Hunt  <oliver@apple.com>
2512
2513         Implement basic ES6 Math functions
2514         https://bugs.webkit.org/show_bug.cgi?id=123536
2515
2516         Reviewed by Michael Saboff.
2517
2518         Add basic implementations of necessary methods to MathExtras to
2519         deal with MSVC not supplying them
2520
2521         * wtf/MathExtras.h:
2522         (asinh):
2523         (acosh):
2524         (atanh):
2525         (expm1):
2526         (log1p):
2527         (cbrt):
2528
2529 2013-10-30  Commit Queue  <commit-queue@webkit.org>
2530
2531         Unreviewed, rolling out r158299.
2532         http://trac.webkit.org/changeset/158299
2533         https://bugs.webkit.org/show_bug.cgi?id=123558
2534
2535         caused assertion failures in fast/canvas/canvas-color-
2536         serialization.html and fast/forms/input-text-paste-
2537         maxlength.html (Requested by rniwa on #webkit).
2538
2539         * wtf/text/StringStatics.cpp:
2540         (WTF::StringImpl::empty):
2541
2542 2013-10-30  Ryosuke Niwa  <rniwa@webkit.org>
2543
2544         Remove code for Mac Lion
2545         https://bugs.webkit.org/show_bug.cgi?id=123542
2546
2547         Reviewed by Anders Carlsson.
2548
2549         * wtf/Platform.h:
2550
2551 2013-10-30  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
2552
2553         Remove PCRE workaround.
2554         https://bugs.webkit.org/show_bug.cgi?id=123265
2555
2556         Reviewed by Brent Fulgham.
2557
2558         * wtf/text/StringStatics.cpp:
2559         (WTF::StringImpl::empty):
2560
2561 2013-10-30  peavo@outlook.com  <peavo@outlook.com>
2562
2563         [Win] Compile errors when enabling DFG JIT.
2564         https://bugs.webkit.org/show_bug.cgi?id=120998
2565
2566         Reviewed by Brent Fulgham.
2567
2568         * wtf/CompilationThread.cpp: Use new ThreadingOnce class instead of pthread_once.
2569         (WTF::initializeCompilationThreads):
2570         * wtf/ThreadingOnce.h: Added ThreadingOnce class encapsulating pthread_once functionality.
2571         (WTF::ThreadingOnce::ThreadingOnce):
2572         (WTF::ThreadingOnce::~ThreadingOnce):
2573         (WTF::ThreadingOnce::callOnce):
2574         * wtf/text/CString.h: Export needed symbols.
2575
2576 2013-10-30  Alex Christensen  <achristensen@webkit.org>
2577
2578         Disabled JIT on Win64.
2579         https://bugs.webkit.org/show_bug.cgi?id=122472
2580
2581         Reviewed by Geoffrey Garen.
2582
2583         * wtf/Platform.h:
2584         Disabled JIT on Win64.
2585
2586 2013-10-29  Andreas Kling  <akling@apple.com>
2587
2588         StringImpl::isolatedCopy() should return PassRef.
2589         <https://webkit.org/b/123484>
2590
2591         Make isolatedCopy() return a PassRef<StringImpl>.
2592
2593         Reviewed by Anders Carlsson.
2594
2595 2013-10-29  Jer Noble  <jer.noble@apple.com>
2596
2597         [MSE] [Mac] Enable MediaSource on the Mac
2598         https://bugs.webkit.org/show_bug.cgi?id=122484
2599
2600         Reviewed by Darin Adler.
2601
2602         Enable ENABLE_MEDIA_SOURCE.
2603
2604         * wtf/FeatureDefines.h:
2605         * wtf/Platform.h: Force a clean build.
2606
2607 2013-10-29  Andreas Kling  <akling@apple.com>
2608
2609         StringImpl::adopt() should return PassRef.
2610         <https://webkit.org/b/123456>
2611
2612         Make the StringImpl::adopt() functions return a PassRef<StringImpl>.
2613
2614         Reviewed by Anders Carlsson.
2615
2616 2013-10-29  Jinwoo Song  <jinwoo7.song@samsung.com>
2617
2618         Re-enable simple line layout for EFL
2619         https://bugs.webkit.org/show_bug.cgi?id=123402
2620
2621         Reviewed by Antti Koivisto.
2622
2623         * wtf/FeatureDefines.h: Enable 8-bit TextRun support for EFL port.
2624
2625 2013-10-28  Anders Carlsson  <andersca@apple.com>
2626
2627         RunLoop::dispatch should take an std::function
2628         https://bugs.webkit.org/show_bug.cgi?id=123407
2629
2630         Reviewed by Andreas Kling.
2631
2632         * wtf/FunctionDispatcher.h:
2633
2634 2013-10-28  Andreas Kling  <akling@apple.com>
2635
2636         RenderElement::m_style should be a Ref.
2637         <https://webkit.org/b/123401>
2638
2639         Added a Ref::replace() so we can Indiana Jones the new style in
2640         RenderElement::setStyle() while keeping a handle on the old style
2641         for a while longer.
2642
2643         Reviewed by Antti Koivisto.
2644
2645 2013-10-28  Carlos Garcia Campos  <cgarcia@igalia.com>
2646
2647         Unreviewed. Fix make distcheck.
2648
2649         * GNUmakefile.list.am: Remove unexistent file from compilation.
2650
2651 2013-10-28  Bastien Nocera <hadess@hadess.net>
2652
2653         Replace 0 timeouts g_timeout_add() by g_idle_add()
2654         https://bugs.webkit.org/show_bug.cgi?id=123260
2655
2656         Reviewed by Carlos Garcia Campos.
2657
2658         A zero timeout should be equivalent to using g_idle_add_full(G_PRIORITY_DEFAULT, ...)
2659         without the nagging feeling that the wrong API was used.
2660
2661         * wtf/gtk/MainThreadGtk.cpp: Use g_idle_add() instead
2662         of 0-timer.
2663         (WTF::scheduleDispatchFunctionsOnMainThread):
2664
2665 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
2666
2667         Re-enable simple line layout for GTK
2668         https://bugs.webkit.org/show_bug.cgi?id=123388
2669
2670         Reviewed by Andreas Kling.
2671
2672         * wtf/FeatureDefines.h: Enable the 8-bit TextRun support for the GTK port.
2673
2674 2013-10-25  Joseph Pecoraro  <pecoraro@apple.com>
2675
2676         Upstream ENABLE(REMOTE_INSPECTOR) and enable on iOS and Mac
2677         https://bugs.webkit.org/show_bug.cgi?id=123111
2678
2679         Reviewed by Timothy Hatcher.
2680
2681         * wtf/FeatureDefines.h:
2682
2683 2013-10-25  Jer Noble  <jer.noble@apple.com>
2684
2685         [WTF] Add a multiplication operator (and a few others) to MediaTime
2686         https://bugs.webkit.org/show_bug.cgi?id=123137
2687
2688         Reviewed by Eric Carlson.
2689
2690         Add a multiplication operator and an inequality operator to the
2691         MediaTime class for use by MSE.
2692
2693         * wtf/MediaTime.cpp:
2694         (WTF::signum): Moved to top of file.
2695         (WTF::MediaTime::operator*): Added.
2696         (WTF::MediaTime::operator!=): Added.
2697         * wtf/MediaTime.h:
2698         (WTF::operator*): Added non-class version of operator*.
2699
2700 2013-10-24  Jer Noble  <jer.noble@apple.com>
2701
2702         [Mac] Add helper methods to convert CMTime <--> MediaTime
2703         https://bugs.webkit.org/show_bug.cgi?id=123285
2704
2705         Reviewed by Eric Carlson.
2706
2707         Add a #ifdef header_h protector.
2708
2709         * wtf/MediaTime.h:
2710
2711 2013-10-24  Mark Rowe  <mrowe@apple.com>
2712
2713         Remove references to OS X 10.7 from Xcode configuration settings.
2714
2715         Now that we're not building for OS X 10.7 they're no longer needed.
2716
2717         Reviewed by Anders Carlsson.
2718
2719         * Configurations/Base.xcconfig:
2720         * Configurations/DebugRelease.xcconfig:
2721
2722 2013-10-24  Mark Rowe  <mrowe@apple.com>
2723
2724         <rdar://problem/15312643> Prepare for the mysterious future.
2725
2726         Reviewed by David Kilzer.
2727
2728         * Configurations/Base.xcconfig:
2729         * Configurations/DebugRelease.xcconfig:
2730
2731 2013-10-24  Commit Queue  <commit-queue@webkit.org>
2732
2733         Unreviewed, rolling out r157931.
2734         http://trac.webkit.org/changeset/157931
2735         https://bugs.webkit.org/show_bug.cgi?id=123284
2736
2737         Seems to have caused a lot of assertions on debug bots
2738         (Requested by ap on #webkit).
2739
2740         * wtf/text/StringStatics.cpp:
2741         (WTF::StringImpl::empty):
2742
2743 2013-10-24  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
2744
2745         Remove PCRE workaround.
2746         https://bugs.webkit.org/show_bug.cgi?id=123265
2747
2748         Reviewed by Darin Adler.
2749
2750         * wtf/text/StringStatics.cpp:
2751         (WTF::StringImpl::empty):
2752
2753 2013-10-24  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
2754
2755         Remove Clang workaround.
2756         https://bugs.webkit.org/show_bug.cgi?id=123262
2757
2758         Reviewed by Anders Carlsson.
2759
2760         * wtf/CheckedArithmetic.h:
2761         (WTF::Checked::Checked):
2762
2763 2013-10-24  Ryuan Choi  <ryuan.choi@samsung.com>
2764
2765         [EFL] Build break with latest EFL 1.8 libraries.
2766         https://bugs.webkit.org/show_bug.cgi?id=123245
2767
2768         Reviewed by Gyuyoung Kim.
2769
2770         After fixed build break on EFL 1.8 at r138326, EFL libraries are changed
2771         Eo typedef and splitted header files which contain version macro.
2772
2773         * wtf/OwnPtrCommon.h: Changed Eo typedef.
2774         * wtf/efl/RefPtrEfl.h: Ditto.
2775
2776 2013-10-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2777
2778         [GObject bindings] Make EventTarget interface introspectable
2779         https://bugs.webkit.org/show_bug.cgi?id=77835
2780
2781         Reviewed by Gustavo Noronha Silva.
2782
2783         Add support for use GRefPtr with GClosure.
2784
2785         * wtf/gobject/GRefPtr.cpp:
2786         (WTF::refGPtr):
2787         (WTF::derefGPtr):
2788         * wtf/gobject/GRefPtr.h:
2789         * wtf/gobject/GTypedefs.h:
2790
2791 2013-10-23  Anders Carlsson  <andersca@apple.com>
2792
2793         Remove USE(LOCKFREE_THREADSAFEREFCOUNTED)
2794         https://bugs.webkit.org/show_bug.cgi?id=123228
2795
2796         Reviewed by Geoffrey Garen.
2797
2798         All ports support USE(LOCKFREE_THREADSAFEREFCOUNTED) now and taking a lock on every ref/deref seems bad.
2799
2800         * wtf/Atomics.h:
2801         * wtf/ThreadSafeRefCounted.h:
2802         (WTF::ThreadSafeRefCountedBase::ref):
2803         (WTF::ThreadSafeRefCountedBase::refCount):
2804         (WTF::ThreadSafeRefCountedBase::derefBase):
2805
2806 2013-10-23  Anders Carlsson  <andersca@apple.com>
2807
2808         Remove HAVE_XPC
2809         https://bugs.webkit.org/show_bug.cgi?id=123226
2810
2811         Reviewed by Dan Bernstein.
2812
2813         HAVE_XPC has been true on Mac since Lion, so remove it.
2814
2815         * wtf/Platform.h:
2816
2817 2013-10-23  Andreas Kling  <akling@apple.com>
2818
2819         Make more StringImpl construction functions return PassRef.
2820         <https://webkit.org/b/123203>
2821
2822         Knock out a couple more of the StringImpl construction helpers that
2823         always return a non-null StringImpl.
2824
2825         Reviewed by Antti Koivisto.
2826
2827 2013-10-22  Filip Pizlo  <fpizlo@apple.com>
2828
2829         FTL should be able to do some simple inline caches using LLVM patchpoints
2830         https://bugs.webkit.org/show_bug.cgi?id=123164
2831
2832         Reviewed by Mark Hahnenberg.
2833         
2834         This needed some better bitvector support, like merging (|=), excluding (&=~),
2835         hashing, and bit counting.
2836
2837         * wtf/BitVector.cpp:
2838         (WTF::BitVector::setSlow):
2839         (WTF::BitVector::excludeSlow):
2840         (WTF::BitVector::bitCountSlow):
2841         (WTF::BitVector::equalsSlowCase):
2842         (WTF::BitVector::hashSlowCase):
2843         (WTF::BitVector::dump):
2844         * wtf/BitVector.h:
2845         (WTF::BitVector::merge):
2846         (WTF::BitVector::exclude):
2847         (WTF::BitVector::bitCount):
2848         (WTF::BitVector::BitVector):
2849         (WTF::BitVector::isEmptyValue):
2850         (WTF::BitVector::isDeletedValue):
2851         (WTF::BitVector::isEmptyOrDeletedValue):
2852         (WTF::BitVector::operator==):
2853         (WTF::BitVector::hash):
2854         (WTF::BitVectorHash::hash):
2855         (WTF::BitVectorHash::equal):
2856         * wtf/HashTraits.h:
2857         (WTF::CustomHashTraits::constructDeletedValue):
2858         (WTF::CustomHashTraits::isDeletedValue):
2859         (WTF::CustomHashTraits::emptyValue):
2860         (WTF::CustomHashTraits::isEmptyValue):
2861         * wtf/StdLibExtras.h:
2862         (WTF::bitCount):
2863
2864 2013-10-23  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2865
2866         Clean-up in Atomics.h
2867         https://bugs.webkit.org/show_bug.cgi?id=123207
2868
2869         Reviewed by Anders Carlsson.
2870
2871         Atomics.h has two confusing and bit-rotted ifdefs with comments.
2872
2873         The first about CPU(SPARC64) was rendered obsolete when we switched
2874         from __exchange_and_add to __sync_add_and_fetch.
2875
2876         The second was caused by a wrong definition that apparently only
2877         caused trouble on GCC.
2878
2879         * wtf/Atomics.h:
2880
2881 2013-10-22  Andreas Kling  <akling@apple.com>
2882
2883         StringImpl::lower() should return a PassRef.
2884         <https://webkit.org/b/123190>
2885
2886         Test the waters and hack enough of StringImpl to be able to return
2887         a PassRef<StringImpl> from lower().
2888
2889         Also gave String a constructor that takes a PassRef<StringImpl>.
2890
2891         Reviewed by Antti Koivisto.
2892
2893 2013-10-22  Commit Queue  <commit-queue@webkit.org>
2894
2895         Unreviewed, rolling out r157835.
2896         http://trac.webkit.org/changeset/157835
2897         https://bugs.webkit.org/show_bug.cgi?id=123192
2898
2899         broke 32-bit builds (Requested by smfr on #webkit).
2900
2901         * wtf/MediaTime.cpp:
2902         (WTF::signum):
2903         * wtf/MediaTime.h:
2904
2905 2013-10-22  Jer Noble  <jer.noble@apple.com>
2906
2907         [WTF] Add a multiplication operator (and a few others) to MediaTime
2908         https://bugs.webkit.org/show_bug.cgi?id=123137
2909
2910         Reviewed by Eric Carlson.
2911
2912         Add a multiplication operator and an inequality operator to the
2913         MediaTime class for use by MSE.
2914
2915         * wtf/MediaTime.cpp:
2916         (WTF::signum): Moved to top of file.
2917         (WTF::MediaTime::operator*): Added.
2918         (WTF::MediaTime::operator!=): Added.
2919         * wtf/MediaTime.h:
2920         (WTF::operator*): Added non-class version of operator*.
2921
2922 2013-10-21  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2923
2924         Make TYPE_CASTS_BASE more flexible
2925         https://bugs.webkit.org/show_bug.cgi?id=122951
2926
2927         Reviewed by Andreas Kling.
2928
2929         TYPE_CASTS_BASE is being used by node|element type casts. However, it is difficult
2930         to be used by other type casts. For instance, CSSValue, Accessibility and so on.
2931         This patch modifies TYPE_CASTS_BASE which can support other type casts.
2932
2933         Besides TYPE_CASTS_BASE body is moved from node.h to Assertions.h.
2934
2935         * wtf/Assertions.h:
2936
2937 2013-10-20  Filip Pizlo  <fpizlo@apple.com>
2938
2939         StructureStubInfo's usedRegisters set should be able to track all registers, not just the ones that our JIT's view as temporaries
2940         https://bugs.webkit.org/show_bug.cgi?id=123076
2941
2942         Reviewed by Sam Weinig.
2943         
2944         Teach BitVector how to efficiently merge (i.e. bitvector |=).
2945
2946         * wtf/BitVector.cpp:
2947         (WTF::BitVector::mergeSlow):
2948         * wtf/BitVector.h:
2949         (WTF::BitVector::merge):
2950         (WTF::BitVector::cleanseInlineBits):
2951
2952 2013-10-19  Jer Noble  <jer.noble@apple.com>
2953
2954         Unreviewed roll out of r157695; broke Mac builds.
2955
2956         * wtf/FeatureDefines.h:
2957
2958 2013-10-07  Jer Noble  <jer.noble@apple.com>
2959
2960         [MSE] [Mac] Enable MediaSource on the Mac
2961         https://bugs.webkit.org/show_bug.cgi?id=122484
2962
2963         Reviewed by Darin Adler.
2964
2965         Enable ENABLE_MEDIA_SOURCE.
2966
2967         * wtf/FeatureDefines.h:
2968
2969 2013-10-19  Andreas Kling  <akling@apple.com>
2970
2971         RefPtr::releaseNonNull() incorrectly increments the refcount.
2972         <https://webkit.org/b/123063>
2973
2974         Make releaseNonNull() use adoptRef(T&), mirroring release().
2975
2976         Reviewed by Anders Carlsson.
2977
2978 2013-10-18  Andreas Kling  <akling@apple.com>
2979
2980         Start passing RenderStyle around with PassRef.
2981         <https://webkit.org/b/123051>
2982
2983         Added some new PassRef tricks to make this patch possible.
2984
2985         Reviewed by Darin Adler.
2986
2987         * wtf/PassRef.h:
2988         (WTF::PassRef::get):
2989
2990             Added a get() helper to facilitate writing functions that
2991             construct a new object and call some functions on it before
2992             returning it.
2993
2994         (WTF::PassRef::dropRef):
2995
2996             This will deref() the referenced object and mark the PassRef
2997             as "passed." This is used in code paths where the PassRef is
2998             going to go out of scope with nobody to take it over.
2999
3000         (WTF::PassRef::leakRef):
3001
3002             Renamed takeReference() to leakRef() and made it public so
3003             we don't have to awkwardly sink the PassRef into a Ref for
3004             e.g static locals.
3005
3006         * wtf/RefPtr.h:
3007         (WTF::RefPtr::releaseNonNull):
3008
3009             Added RefPtr::releaseNonNull() for a convenient way of creating
3010             a PassRef<T> from a RefPtr<T>. This function may only be called
3011             if the RefPtr is known to be non-null.
3012
3013 2013-10-18  Filip Pizlo  <fpizlo@apple.com>
3014
3015         A CodeBlock's StructureStubInfos shouldn't be in a Vector that we search using code origins and machine code PCs
3016         https://bugs.webkit.org/show_bug.cgi?id=122940
3017
3018         Reviewed by Oliver Hunt.
3019
3020         * GNUmakefile.list.am:
3021         * WTF.vcxproj/WTF.vcxproj:
3022         * WTF.xcodeproj/project.pbxproj:
3023         * wtf/BagToHashMap.h: Added.
3024         (WTF::toHashMap):
3025         * wtf/CMakeLists.txt:
3026
3027 2013-10-18  Anders Carlsson  <andersca@apple.com>
3028
3029         Remove spaces between template angle brackets
3030         https://bugs.webkit.org/show_bug.cgi?id=123040
3031
3032         Reviewed by Andreas Kling.
3033
3034         * wtf/AVLTree.h:
3035         * wtf/CheckedArithmetic.h:
3036         * wtf/Compression.h:
3037         * wtf/Functional.h:
3038         (WTF::R):
3039         * wtf/HashFunctions.h:
3040         * wtf/HashIterators.h:
3041         * wtf/HashSet.h:
3042         (WTF::::contains):
3043         * wtf/ListHashSet.h:
3044         (WTF::::contains):
3045         * wtf/RefCountedLeakCounter.cpp:
3046         * wtf/RetainPtr.h:
3047         * wtf/SentinelLinkedList.h:
3048         (WTF::::remove):
3049         * wtf/SizeLimits.cpp:
3050         * wtf/StreamBuffer.h:
3051         * wtf/Vector.h:
3052         * wtf/VectorTraits.h:
3053         * wtf/WeakPtr.h:
3054         (WTF::WeakReference::create):
3055         (WTF::WeakReference::createUnbound):
3056         (WTF::WeakPtr::WeakPtr):
3057         (WTF::WeakPtrFactory::WeakPtrFactory):
3058         * wtf/text/AtomicString.cpp:
3059         (WTF::AtomicString::add):
3060         (WTF::findString):
3061         * wtf/text/StringConcatenate.h:
3062         * wtf/text/StringImpl.h:
3063         * wtf/text/StringOperators.h:
3064         (WTF::operator+):
3065
3066 2013-10-18  Brendan Long  <b.long@cablelabs.com>
3067
3068         [GStreamer][GTK] Add GRefPtr::outPtr()
3069         https://bugs.webkit.org/show_bug.cgi?id=122996
3070
3071         Reviewed by Philippe Normand.
3072
3073         * wtf/gobject/GRefPtr.h:
3074         (WTF::GRefPtr::outPtr): Added.
3075
3076 2013-10-17  Geoffrey Garen  <ggaren@apple.com>
3077
3078         Tidied up the Vector<T> move constructor
3079         https://bugs.webkit.org/show_bug.cgi?id=122998
3080
3081         Reviewed by Anders Carlsson.
3082
3083         * wtf/Vector.h:
3084         (WTF::::Vector): Don't call swap() "weird". It's the way most std types
3085         implement move constructors.
3086
3087         Do inline this function, so the compiler can optimize away a logical
3088         move into a physical no-op.
3089
3090 2013-10-16  Filip Pizlo  <fpizlo@apple.com>
3091
3092         Introduce WTF::Bag and start using it for InlineCallFrameSet
3093         https://bugs.webkit.org/show_bug.cgi?id=122941
3094
3095         Reviewed by Geoffrey Garen.
3096         
3097         Introduce WTF::Bag, which is basically an allocation pool. No POD restrictions. Does one
3098         malloc per entry. No need to shrink afterwards.
3099
3100         * GNUmakefile.list.am:
3101         * WTF.vcxproj/WTF.vcxproj:
3102         * WTF.xcodeproj/project.pbxproj:
3103         * wtf/Bag.h: Added.
3104         (WTF::Bag::Bag):
3105         (WTF::Bag::~Bag):
3106         (WTF::Bag::add):
3107         (WTF::Bag::iterator::iterator):
3108         (WTF::Bag::iterator::operator!):
3109         (WTF::Bag::iterator::operator*):
3110         (WTF::Bag::iterator::operator++):
3111         (WTF::Bag::iterator::operator==):
3112         (WTF::Bag::begin):
3113         (WTF::Bag::end):
3114         (WTF::Bag::isEmpty):
3115         * wtf/CMakeLists.txt:
3116
3117 2013-10-17  Andreas Kling  <akling@apple.com>
3118
3119         Make it possible to assign a PassRef to a RefPtr.
3120         <https://webkit.org/b/122943>
3121
3122         We have to use std::move when constructing a RefPtr from a PassRef
3123         since there is no copy constructor for the latter.
3124
3125         Reviewed by Antti Koivisto.
3126
3127 2013-10-16  Ryuan Choi  <ryuan.choi@samsung.com>
3128
3129         Unreviewed build fix attempt on EFL port after r157520 and r157523
3130
3131         * wtf/PassRef.h: includes <utility>
3132
3133 2013-10-16  Darin Adler  <darin@apple.com>
3134
3135         Add PassRef and createRefCounted so we can improve creation of RefCounted objects
3136         https://bugs.webkit.org/show_bug.cgi?id=122904
3137
3138         Reviewed by Anders Carlsson.
3139
3140         * GNUmakefile.list.am: Added PassRef.h.
3141         * WTF.vcxproj/WTF.vcxproj: Ditto.
3142         * WTF.vcxproj/WTF.vcxproj.filters: Ditto.
3143         * WTF.xcodeproj/project.pbxproj: Ditto.
3144         * wtf/CMakeLists.txt: Ditto.
3145
3146         * wtf/Forward.h: Added PassRef. Also re-sorted and un-indented to match what
3147         the style-checking script expects.
3148
3149         * wtf/PassRef.h: Added. Includes the createRefCounted function template, which
3150         is analogous to make_unique, but is for reference counted objects, and also
3151         assumes that new will never return null. Also includes an overload of adoptRef
3152         that takes a reference rather than a pointer.
3153
3154         * wtf/PassRefPtr.h: Include "PassRef.h" so we can share the adopted function.
3155         Got rid of declarations that duplicate ones in there.
3156         (WTF::refIfNotNull): Use nullptr.
3157         (WTF::derefIfNotNull): Use nullptr.
3158         (WTF::PassRefPtr::PassRefPtr): Use nullptr. Added an overload that takes a PassRef.
3159         (WTF::PassRefPtr::operator UnspecifiedBoolType): Use nullptr.
3160         (WTF::PassRefPtr::operator=): Made this deleted instead of compile time assertion.
3161         (WTF::PassRefPtr::PassRefPtr): Made adopting constructor use an adopt tag instead
3162         of an unused boolean.
3163         (WTF::PassRefPtr::leakRef): Use nullptr.
3164         (WTF::adoptRef): Use the adopt tag.
3165
3166         * wtf/Ref.h: Use Noncopyable instead of rolling our own.
3167         (WTF::Ref::Ref): Add an overload that takes a PassRef.
3168         (WTF::Ref::operator=): Ditto.
3169
3170         * wtf/RefPtr.h: Removed unneeded forward declaration of PassRefPtr.
3171         (WTF::RefPtr::RefPtr): Use nullptr. Added overload that takes a PassRef.
3172         (WTF::RefPtr::release): Use nullptr.
3173         (WTF::RefPtr::operator UnspecifiedBoolType): Use nullptr.
3174         (WTF::RefPtr::operator=): Added overload that takes a PassRef.
3175         (WTF::RefPtr::clear): Use nullptr.
3176
3177         * wtf/StdLibExtras.h: Added inline keyword to isPointerTypeAlignmentOkay,
3178         reinterpret_cast_ptr, and make_unique. Seems like a simple oversight that these
3179         were missing before.
3180
3181 2013-10-15  Dean Jackson  <dino@apple.com>
3182
3183         Add ENABLE_WEB_ANIMATIONS flag
3184         https://bugs.webkit.org/show_bug.cgi?id=122871
3185
3186         Reviewed by Tim Horton.
3187
3188         Eventually might be http://dev.w3.org/fxtf/web-animations/
3189         but this is just engine-internal work at the moment.
3190
3191         * wtf/FeatureDefines.h:
3192
3193 2013-10-15  Daniel Bates  <dabates@apple.com>
3194
3195         [iOS] Upstream JavaScriptCore support for ARM64
3196         https://bugs.webkit.org/show_bug.cgi?id=122762
3197
3198         Reviewed by Oliver Hunt.
3199
3200         * Configurations/Base.xcconfig:
3201         * wtf/Atomics.h:
3202         (WTF::weakCompareAndSwap):
3203         (WTF::armV7_dmb):
3204         * wtf/FastMalloc.cpp:
3205         * wtf/Platform.h:
3206         * wtf/dtoa.cpp:
3207         * wtf/dtoa/utils.h:
3208         * wtf/text/ASCIIFastPath.h:
3209         (WTF::copyLCharsFromUCharSource):
3210         * wtf/text/StringImpl.h:
3211
3212 2013-10-14  Zan Dobersek  <zdobersek@igalia.com>
3213
3214         Static assertions in WTF::adoptPtr should point to using adoptRef for ref-counted objects
3215         https://bugs.webkit.org/show_bug.cgi?id=122745
3216
3217         Reviewed by Anders Carlsson.
3218
3219         * wtf/PassOwnPtr.h:
3220         (WTF::adoptPtr): When the object's type is convertible to the RefCountedBase or ThreadSafeRefCountedBase type,
3221         the static assertion should note that adoptRef should be used instead.
3222
3223 2013-10-14  Anders Carlsson  <andersca@apple.com>
3224
3225         WebKit Nightlies broken by r157374
3226         https://bugs.webkit.org/show_bug.cgi?id=122736
3227
3228         Reviewed by Andreas Kling.
3229
3230         Add back a callOnMainThread overload that Safari is using.
3231
3232         * wtf/MainThread.cpp:
3233         (WTF::callOnMainThread):
3234         * wtf/MainThread.h:
3235
3236 2013-10-13  Darin Adler  <darin@apple.com>
3237
3238         Deprecate or remove deleteAllValues functions; there are only a few call sites left
3239         https://bugs.webkit.org/show_bug.cgi?id=122738
3240
3241         Reviewed by Anders Carlsson.
3242
3243         * wtf/Deque.h: Deleted deleteAllValues.
3244         * wtf/HashMap.h: Ditto.
3245         * wtf/HashSet.h: Ditto.
3246         * wtf/ListHashSet.h: Ditto.
3247         * wtf/Vector.h: Renamed deleteAllValues to deprecatedDeleteAllValues.
3248
3249 == Rolled over to ChangeLog-2013-10-13 ==