1a8cad29f66d85c12088f66d922c4105b0bbb7ea
[WebKit.git] / Source / WTF / ChangeLog
1 2014-01-07  Mark Hahnenberg  <mhahnenberg@apple.com>
2
3         Marking should be generational
4         https://bugs.webkit.org/show_bug.cgi?id=126552
5
6         Reviewed by Geoffrey Garen.
7
8         * wtf/Bitmap.h:
9         (WTF::WordType>::count): Added a cast that became necessary when Bitmap
10         is used with smaller types than int32_t.
11
12 2014-01-08  Anders Carlsson  <andersca@apple.com>
13
14         Add WTF::StringView and use it for grammar checking
15         https://bugs.webkit.org/show_bug.cgi?id=126644
16
17         Reviewed by Antti Koivisto.
18
19         Add a new StringView class which is an immutable reference to either an 8-bit or a 16-bit string.
20
21         This makes it easier to pass substrings around without having to either copy string data
22         or upconvert and use UChar pointers.
23
24         The StringView class is very loosely based on the std::string_view class which is proposed for a future version of C++,
25         see http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3609.html for more details.
26
27         * GNUmakefile.list.am:
28         * WTF.vcxproj/WTF.vcxproj:
29         * WTF.vcxproj/WTF.vcxproj.filters:
30         * WTF.xcodeproj/project.pbxproj:
31         * wtf/CMakeLists.txt:
32         * wtf/Forward.h:
33         * wtf/text/StringView.h: Added.
34         (WTF::StringView::StringView):
35         (WTF::StringView::empty):
36         (WTF::StringView::characters8):
37         (WTF::StringView::characters16):
38         (WTF::StringView::isEmpty):
39         (WTF::StringView::length):
40         (WTF::StringView::is8Bit):
41         (WTF::StringView::substring):
42         (WTF::StringView::toString):
43         (WTF::StringView::toStringWithoutCopying):
44         (WTF::StringView::encodedCharacters):
45
46 2014-01-07  David Farler  <dfarler@apple.com>
47
48         [ASAN] Building with trunk clang corrupts sandbox profile with comment from Compiler.h
49         https://bugs.webkit.org/show_bug.cgi?id=124532
50
51         Reviewed by David Kilzer.
52
53         * wtf/Compiler.h:
54         Remove this quirk - it does nothing.
55
56 2014-01-06  Filip Pizlo  <fpizlo@apple.com>
57
58         Get rid of ENABLE(VALUE_PROFILER). It's on all the time now.
59
60         Rubber stamped by Mark Hahnenberg.
61
62         * wtf/Platform.h:
63
64 2014-01-06  Zan Dobersek  <zdobersek@igalia.com>
65
66         Remove using directives for the std namespace from WTF
67         https://bugs.webkit.org/show_bug.cgi?id=126524
68
69         Reviewed by Alexey Proskuryakov.
70
71         Remove the using directives for the std namespace throughout the WTF code.
72         The more explicit std:: nested name specifier should be used instead.
73
74         * wtf/MediaTime.cpp:
75         (WTF::MediaTime::createWithFloat):
76         (WTF::MediaTime::createWithDouble):
77         * wtf/text/StringImpl.cpp:
78         (WTF::StringImpl::create):
79         (WTF::StringImpl::lower):
80         (WTF::StringImpl::upper):
81         (WTF::StringImpl::foldCase):
82         (WTF::StringImpl::find):
83         (WTF::StringImpl::findIgnoringCase):
84         (WTF::reverseFindInner):
85         (WTF::StringImpl::reverseFind):
86         (WTF::reverseFindIgnoringCaseInner):
87         (WTF::StringImpl::reverseFindIgnoringCase):
88         (WTF::StringImpl::replace):
89         (WTF::StringImpl::utf8ForCharacters):
90         (WTF::StringImpl::utf8ForRange):
91         * wtf/text/WTFString.cpp:
92         (WTF::String::append):
93         (WTF::String::appendInternal):
94         (WTF::String::insert):
95         (WTF::String::substringSharingImpl):
96         (WTF::String::fromUTF8):
97         (WTF::toIntegralType):
98         * wtf/win/RunLoopWin.cpp:
99
100 2014-01-03  Mark Hahnenberg  <mhahnenberg@apple.com>
101
102         DoublyLinkedLists can't be concatenated
103         https://bugs.webkit.org/show_bug.cgi?id=125976
104
105         Reviewed by Filip Pizlo.
106
107         * wtf/DoublyLinkedList.h:
108         (WTF::DoublyLinkedList<T>::append):
109
110 2014-01-04  Zan Dobersek  <zdobersek@igalia.com>
111
112         Explicitly use the std:: nested name specifier when using std::pair, std::make_pair
113         https://bugs.webkit.org/show_bug.cgi?id=126439
114
115         Reviewed by Andreas Kling.
116
117         * wtf/VectorTraits.h: Stop bringing std::pair into the current scope.
118
119 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
120
121         Refactor NSActivity handling code from ChildProcess to UserActivity
122         https://bugs.webkit.org/show_bug.cgi?id=126330
123
124         Reviewed by Sam Weinig.
125
126         UserActivity is a mechanism to express to the operating system (where appropriate)
127         that a user initiated activity is taking place, and as such that resources should be
128         made available to the process accordingly.
129
130         Currently we hold a single NSActivity, at the WebKit layer. This refactoring allows us
131         to hold different activity tokens for different user actions (which simplifies the
132         handling, and aides debugging since the token can more accurately express the activity
133         taking place), and also will allow us to avoid the layering difficulty of calling back
134         up the stack to WebKit to register that an activity is taking place.
135
136         * wtf/Platform.h:
137             - added HAVE_NS_ACTIVITY.
138
139 2013-12-30  Commit Queue  <commit-queue@webkit.org>
140
141         Unreviewed, rolling out r161157, r161158, r161160, r161161,
142         r161163, and r161165.
143         http://trac.webkit.org/changeset/161157
144         http://trac.webkit.org/changeset/161158
145         http://trac.webkit.org/changeset/161160
146         http://trac.webkit.org/changeset/161161
147         http://trac.webkit.org/changeset/161163
148         http://trac.webkit.org/changeset/161165
149         https://bugs.webkit.org/show_bug.cgi?id=126332
150
151         Broke WebKit2 on Mountain Lion (Requested by ap on #webkit).
152
153         * GNUmakefile.list.am:
154         * WTF.vcxproj/WTF.vcxproj:
155         * WTF.vcxproj/WTF.vcxproj.filters:
156         * WTF.xcodeproj/project.pbxproj:
157         * wtf/CMakeLists.txt:
158         * wtf/Forward.h:
159         * wtf/PlatformWin.cmake:
160         * wtf/threads/BinarySemaphore.cpp: Added.
161         (WTF::BinarySemaphore::BinarySemaphore):
162         (WTF::BinarySemaphore::~BinarySemaphore):
163         (WTF::BinarySemaphore::signal):
164         (WTF::BinarySemaphore::wait):
165         * wtf/threads/BinarySemaphore.h: Added.
166         (WTF::BinarySemaphore::event):
167         * wtf/threads/win/BinarySemaphoreWin.cpp: Added.
168         (WTF::BinarySemaphore::BinarySemaphore):
169         (WTF::BinarySemaphore::~BinarySemaphore):
170         (WTF::BinarySemaphore::signal):
171         (WTF::BinarySemaphore::wait):
172
173 2013-12-30  Anders Carlsson  <andersca@apple.com>
174
175         Replace yield() and pauseBriefly() with std::this_thread::yield()
176         https://bugs.webkit.org/show_bug.cgi?id=126105
177
178         Reviewed by Sam Weinig.
179
180         * wtf/ByteSpinLock.h:
181         (WTF::ByteSpinLock::lock):
182         * wtf/Threading.h:
183         * wtf/ThreadingPrimitives.h:
184         * wtf/ThreadingPthreads.cpp:
185         * wtf/ThreadingWin.cpp:
186
187 2013-12-30  Sam Weinig  <sam@webkit.org>
188
189         Remove unnecessary non-const overload in IteratorPair
190         https://bugs.webkit.org/show_bug.cgi?id=126314
191
192         Reviewed by Anders Carlsson.
193
194         * wtf/IteratorPair.h:
195
196 2013-12-30  Sam Weinig  <sam@webkit.org>
197
198         Remove WTF's BinarySemaphore
199         https://bugs.webkit.org/show_bug.cgi?id=126310
200
201         Reviewed by Anders Carlsson.
202
203         It's unused. Also remove the now empty wtf/threads directory.
204
205         * GNUmakefile.list.am:
206         * WTF.vcxproj/WTF.vcxproj:
207         * WTF.vcxproj/WTF.vcxproj.filters:
208         * WTF.xcodeproj/project.pbxproj:
209         * wtf/CMakeLists.txt:
210         * wtf/Forward.h:
211         * wtf/PlatformWin.cmake:
212         * wtf/threads: Removed.
213         * wtf/threads/BinarySemaphore.cpp: Removed.
214         * wtf/threads/BinarySemaphore.h: Removed.
215         * wtf/threads/win: Removed.
216         * wtf/threads/win/BinarySemaphoreWin.cpp: Removed.
217
218 2013-12-30  Roger Fong  <roger_fong@apple.com>
219
220         [Windows] Unreviewed build fix following r160959.
221
222         * wtf/Platform.h:
223
224 2013-12-30  Anders Carlsson  <andersca@apple.com>
225
226         Replace WTF::ThreadingOnce with std::call_once
227         https://bugs.webkit.org/show_bug.cgi?id=126215
228
229         Reviewed by Sam Weinig.
230
231         * GNUmakefile.list.am:
232         * wtf/CompilationThread.cpp:
233         (WTF::initializeCompilationThreads):
234         * wtf/ThreadingOnce.h: Removed.
235
236 2013-12-26  Sam Weinig  <sam@webkit.org>
237
238         Move FilterIterator and IteratorPair to WTF and reimplement HashMap::keys() and HashMap::values() using IteratorPair
239         https://bugs.webkit.org/show_bug.cgi?id=126253
240
241         Reviewed by Anders Carlsson.
242
243         * GNUmakefile.list.am:
244         * WTF.vcxproj/WTF.vcxproj:
245         * WTF.vcxproj/WTF.vcxproj.filters:
246         * WTF.xcodeproj/project.pbxproj:
247         * wtf/CMakeLists.txt:
248         Add new files.
249
250         * wtf/HashMap.h:
251         * wtf/RefPtrHashMap.h:
252         Remove the old implementation of keys() and values() and replace it with one
253         that uses IteratorPair.
254         
255         * wtf/FilterIterator.h: Copied from Source/WebKit2/Shared/FilterIterator.h.
256         * wtf/IteratorPair.h: Copied from Source/WebKit2/Shared/IteratorPair.h.
257
258 2013-12-27  Daniel Bates  <dabates@apple.com>
259
260         [iOS] Upstream WebCore/page changes
261         https://bugs.webkit.org/show_bug.cgi?id=126180
262
263         Reviewed by Darin Adler.
264
265         * wtf/FeatureDefines.h: Define ENABLE_IOS_TOUCH_EVENTS to be enabled by default
266         when building iOS with ENABLE(TOUCH_EVENTS).
267
268 2013-12-25  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
269
270         [Nix] Building with DRAG_SUPPORT enabled
271         https://bugs.webkit.org/show_bug.cgi?id=126233
272
273         Reviewed by Daniel Bates.
274
275         * wtf/nix/FeatureDefinesNix.h:
276
277 2013-12-24  Commit Queue  <commit-queue@webkit.org>
278
279         Unreviewed, rolling out r160959.
280         http://trac.webkit.org/changeset/160959
281         https://bugs.webkit.org/show_bug.cgi?id=126222
282
283         Caused Windows build to fail (Requested by rfong on #webkit).
284
285         * wtf/ByteSpinLock.h:
286         (WTF::ByteSpinLock::lock):
287         * wtf/Threading.h:
288         * wtf/ThreadingPrimitives.h:
289         (WTF::pauseBriefly):
290         * wtf/ThreadingPthreads.cpp:
291         (WTF::yield):
292         * wtf/ThreadingWin.cpp:
293         (WTF::yield):
294
295 2013-12-23  Benjamin Poulain  <bpoulain@apple.com>
296
297         Fix the build after r161031
298
299         I enabled ENABLE_CSS_SELECTOR_JIT by accident.
300
301         * wtf/Platform.h:
302
303 2013-12-23  Zan Dobersek  <zdobersek@igalia.com>
304
305         [GTK] Clean up compiler optimizations flags for libWTF, libJSC
306         https://bugs.webkit.org/show_bug.cgi?id=126157
307
308         Reviewed by Gustavo Noronha Silva.
309
310         * GNUmakefile.am: Remove the -fstrict-aliasing and -O3 compiler flags for libWTF.la. -O3 gets
311         overridden by -O2 that's listed in CXXFLAGS (or -O0 in case of debug builds) and -fstrict-aliasing
312         is enabled when -O2 is used (and shouldn't be enabled in debug builds anyway).
313
314 2013-12-20  Anders Carlsson  <andersca@apple.com>
315
316         Replace yield() and pauseBriefly() with std::this_thread::yield()
317         https://bugs.webkit.org/show_bug.cgi?id=126105
318
319         Reviewed by Sam Weinig.
320
321         * wtf/ByteSpinLock.h:
322         (WTF::ByteSpinLock::lock):
323         * wtf/Threading.h:
324         * wtf/ThreadingPrimitives.h:
325         * wtf/ThreadingPthreads.cpp:
326         * wtf/ThreadingWin.cpp:
327
328 2013-12-20  Anders Carlsson  <andersca@apple.com>
329
330         Speed up case folding for 8-bit strings
331         https://bugs.webkit.org/show_bug.cgi?id=126098
332
333         Reviewed by Geoffrey Garen.
334
335         Add a case folding lookup table for 8-bit strings and use it instead of calling down to u_foldCase.
336         On a simple microbenchmark using a lookup table is about 15x faster.
337
338         * wtf/text/StringHash.h:
339         (WTF::CaseFoldingHash::foldCase):
340         * wtf/text/StringImpl.cpp:
341         (WTF::equalIgnoringCase):
342         * wtf/text/StringImpl.h:
343
344 2013-12-20  Myles C. Maxfield  <mmaxfield@apple.com>
345
346         Faster implementation of text-decoration-skip: ink
347         https://bugs.webkit.org/show_bug.cgi?id=125718
348
349         Reviewed by Simon Fraser.
350
351         This creates a new preprocessor define, CSS3_TEXT_DECORATION_SKIP_INK,
352         which enables the use of the text-decoration-skip: ink CSS value.
353         Creating this new value simplifies the logic about when to enable the
354         codepath for this CSS value.
355
356         * wtf/Platform.h:
357
358 2013-12-20  Simon Fraser  <simon.fraser@apple.com>
359
360         Change "threaded scrolling" terminology to "asynchronous scrolling"
361         https://bugs.webkit.org/show_bug.cgi?id=126094
362
363         Reviewed by Tim Horton.
364
365         Rename ENABLE_THREADED_SCROLLING to ENABLE_ASYNC_SCROLLING.
366
367         * wtf/FeatureDefines.h:
368
369 2013-12-20  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
370
371         Build fails in debug mode after r160834.
372         https://bugs.webkit.org/show_bug.cgi?id=126059
373
374         Reviewed by Csaba Osztrogonác.
375
376         Debug mode build failed due to comparing signed and unsigned in
377         ASSERT(). Now both values are unsigned.
378
379         * wtf/dtoa/double-conversion.cc:
380
381 2013-12-19  Alex Christensen  <achristensen@webkit.org>
382
383         Final preparations for GStreamer on Windows.
384         https://bugs.webkit.org/show_bug.cgi?id=125958
385
386         Reviewed by Benjamin Poulain.
387
388         * WTF.vcxproj/WTFDebugWinCairo.props:
389         * WTF.vcxproj/WTFReleaseWinCairo.props:
390         Include WinCairo.props.
391         * wtf/Platform.h:
392         Use GLib and GStreamer on WinCairo with video.
393
394 2013-12-18  Daniel Bates  <dabates@apple.com>
395
396         WTF, JavaScriptCore fails to build with trunk clang: operators new, new[],
397         delete, delete[] cannot be declared inline
398         https://bugs.webkit.org/show_bug.cgi?id=124186
399         <rdar://problem/15644039>
400
401         Reviewed by Geoffrey Garen and Anders Carlsson.
402
403         Following <http://llvm.org/viewvc/llvm-project?view=revision&revision=193044>
404         (http://llvm.org/bugs/show_bug.cgi?id=17591>), Clang emits warnings when
405         operator new, delete are inlined. Such definitions cannot be inline per
406         replacement.functions (17.6.4.6/3) of the C++ standard. For now,
407         disable these warnings instead of exporting these functions.
408
409         * wtf/FastMalloc.h:
410
411 2013-12-19  Hugo Parente Lima  <hugo.lima@openbossa.org>
412
413         WTF fails to compile with gcc 4.8.2 and -Werror=array-bounds
414         https://bugs.webkit.org/show_bug.cgi?id=125936
415
416         Reviewed by Anders Carlsson.
417
418         * wtf/dtoa/double-conversion.cc: Use a unsigned instead of int on buffer_pos type.
419
420 2013-12-19  Peter Szanka  <h868064@stud.u-szeged.hu>
421
422         Delete RVCT related code parts.
423         https://bugs.webkit.org/show_bug.cgi?id=125626
424
425         Reviewed by Csaba Osztrogonác.
426
427         * wtf/Compiler.h: follow-up fix for r160648, remove an unnecessary comment.
428
429 2013-12-18  Alex Christensen  <achristensen@webkit.org>
430
431         [WinCairo] Preparation for GStreamer on Windows.
432         https://bugs.webkit.org/show_bug.cgi?id=125946
433
434         Reviewed by Brent Fulgham.
435
436         * WTF.vcxproj/WTF.vcxproj:
437         Use new GStreamer property sheets for WinCairo.
438
439 2013-12-18  Mark Hahnenberg  <mhahnenberg@apple.com>
440
441         DFG should have a separate StoreBarrier node
442         https://bugs.webkit.org/show_bug.cgi?id=125530
443
444         Reviewed by Filip Pizlo.
445
446         * wtf/Platform.h: Added an #define for ENABLE(GGC) which will be used for landing things related to GenGC.
447
448 2013-12-16  Daniel Bates  <dabates@apple.com>
449
450         [iOS] Upstream WebCore/html changes
451         https://bugs.webkit.org/show_bug.cgi?id=125765
452
453         Reviewed by Darin Adler.
454
455         Defined ENABLE_IOS_AUTOCORRECT_AND_AUTOCAPITALIZE, enabled by default on iOS.
456
457         * wtf/FeatureDefines.h:
458
459 2013-12-17  Alex Christensen  <achristensen@webkit.org>
460
461         Compile fix for WebGL on Windows without GRAPHICS_SURFACE.
462         https://bugs.webkit.org/show_bug.cgi?id=125867
463
464         Reviewed by Martin Robinson.
465
466         * wtf/FeatureDefines.h:
467         Removed unused ENABLE_GLIB_SUPPORT macro.
468         * wtf/Platform.h:
469         Don't use GRAPHICS_SURFACE for WebGL on Windows.
470
471 2013-12-17  Alex Christensen  <achristensen@webkit.org>
472
473         [Win] Fixed linker error with GStreamer.
474         https://bugs.webkit.org/show_bug.cgi?id=124861
475
476         Reviewed by Martin Robinson.
477
478         * wtf/gobject/GOwnPtr.cpp:
479         (WTF::GError):
480         * wtf/gobject/GOwnPtr.h:
481         Added WTF_EXPORT_PRIVATE to freeOwnedGPtr<GError> declaration and definition.
482
483 2013-12-17  Benjamin Poulain  <benjamin@webkit.org>
484
485         Add a simple register allocator to WebCore for x86_64
486         https://bugs.webkit.org/show_bug.cgi?id=125771
487
488         Reviewed by Geoffrey Garen.
489
490         * wtf/Platform.h: Add a new flag "CSS_SELECTOR_JIT" to guard
491         an experimental JIT compiler in WebCore.
492
493 2013-12-16  Anders Carlsson  <andersca@apple.com>
494
495         Remove EnumClass.h from WTF
496         https://bugs.webkit.org/show_bug.cgi?id=125820
497
498         Reviewed by Darin Adler.
499
500         All compilers we build on now support real strongly typed enums, so we can remove the ENUM_CLASS version.
501
502         * WTF.vcxproj/WTF.vcxproj:
503         * WTF.vcxproj/WTF.vcxproj.filters:
504         * WTF.xcodeproj/project.pbxproj:
505         * wtf/CheckedArithmetic.h:
506         * wtf/EnumClass.h: Removed.
507
508 2013-12-16  Brent Fulgham  <bfulgham@apple.com>
509
510         [Win] Remove dead code after conversion to VS2013
511         https://bugs.webkit.org/show_bug.cgi?id=125795
512
513         Reviewed by Darin Adler.
514
515         * wtf/Assertions.h: Include <inttypes.h> now that it exists.
516         * wtf/Compiler.h: Update compiler checks for VS2013, and
517         enable support for NEVER_INLINE
518         * wtf/HashFunctions.h:
519         (WTF::PtrHash::hash): Remove compiler workaround.
520         * wtf/MathExtras.h: Remove C99 functions that are now supplied
521         by the MS runtime library.
522         * wtf/Platform.h: Remove old MSVC support flags.
523         * wtf/StdLibExtras.h: Remove old MSVC workaround code.
524
525 2013-12-16  Alex Christensen  <achristensen@webkit.org>
526
527         Fixed Win64 build on VS2013.
528         https://bugs.webkit.org/show_bug.cgi?id=125753
529
530         Reviewed by Brent Fulgham.
531
532         * WTF.vcxproj/WTF.vcxproj:
533         Added correct PlatformToolset for 64-bit builds.
534
535 2013-12-16  Peter Szanka  <h868064@stud.u-szeged.hu>
536
537         Delete RVCT related code parts.
538         https://bugs.webkit.org/show_bug.cgi?id=125626
539
540         Reviewed by Darin Adler.
541
542         * wtf/Assertions.h:
543         * wtf/Compiler.h:
544         * wtf/FastMalloc.h:
545         * wtf/Platform.h:
546
547 2013-12-13  Brent Fulgham  <bfulgham@apple.com>
548
549         [Win] Remove Pre-VS2013 support code.
550         https://bugs.webkit.org/show_bug.cgi?id=125693
551
552         Reviewed by Darin Adler.
553
554         * wtf/StringPrintStream.cpp:
555         (WTF::StringPrintStream::vprintf): Use va_copy, like a civilized person.
556
557 2013-12-12  Darin Adler  <darin@apple.com>
558
559         Incorrect handling of non-ASCII characters in WTF::base64DecodeInternal
560         https://bugs.webkit.org/show_bug.cgi?id=125658
561
562         Reviewed by Alexey Proskuryakov.
563
564         * wtf/text/Base64.cpp:
565         (WTF::base64EncodeInternal): Use a reference to an array instead of a pointer
566         for the table argument type so we check the size of the array at the call site.
567         (WTF::base64DecodeInternal): Ditto. Also added an bounds check before using the
568         table so we don't load some random value for non-ASCII characters.
569
570 2013-12-13  Brent Fulgham  <bfulgham@apple.com>
571
572         [Win] Unreviewed build fix after r160548
573
574         * WTF.vcxproj/WTFGenerated.vcxproj: Specify that we are using
575         the vs12_xp target for Makefile-based projects.
576
577 2013-12-13  Anders Carlsson  <andersca@apple.com>
578
579         Require variadic templates to build WebKit
580         https://bugs.webkit.org/show_bug.cgi?id=125701
581
582         Reviewed by Andreas Kling.
583
584         * wtf/Compiler.h:
585         Add an #error if variadic templates are disabled.
586
587         * wtf/NeverDestroyed.h:
588         * wtf/PassRef.h:
589         * wtf/StdLibExtras.h:
590         Remove a bunch of COMPILER_SUPPORTS(CXX_VARIADIC_TEMPLATES) #ifdefs.
591
592 2013-12-13  Peter Szanka  <h868064@stud.u-szeged.hu>
593
594         Delete INTEL C compiler related code parts.
595         https://bugs.webkit.org/show_bug.cgi?id=125625
596
597         Reviewed by Darin Adler.
598
599         * wtf/Assertions.h:
600         * wtf/Compiler.h:
601
602 2013-12-13  Brent Fulgham  <bfulgham@apple.com>
603
604         [Win] Switch WebKit solution to Visual Studio 2013
605         https://bugs.webkit.org/show_bug.cgi?id=125192
606
607         Reviewed by Anders Carlsson.
608
609         * WTF.vcxproj/WTF.vcxproj: Update for VS2013
610         * WTF.vcxproj/WTF.vcxproj.filters: Ditto
611
612 2013-12-12  Brady Eidson  <beidson@apple.com>
613
614         DatabaseProcess IndexedDB: Establish a metadata backing store on disk
615         https://bugs.webkit.org/show_bug.cgi?id=125258
616
617         Reviewed by Alexey Proskuryakov, Anders Carlsson, and Tim Horton.
618
619         * wtf/text/WTFString.h: Export toUInt64Strict().
620
621 2013-12-12  Sam Weinig  <sam@webkit.org>
622
623         Replace uses of WTF::BitArray with std::bitset
624         https://bugs.webkit.org/show_bug.cgi?id=125642
625
626         Reviewed by Anders Carlsson.
627
628         * GNUmakefile.list.am:
629         * WTF.vcxproj/WTF.vcxproj:
630         * WTF.vcxproj/WTF.vcxproj.filters:
631         * WTF.xcodeproj/project.pbxproj:
632         * wtf/BitArray.h: Removed.
633         * wtf/CMakeLists.txt:
634
635 2013-12-11  David Kilzer  <ddkilzer@apple.com>
636
637         Define m_hasBadParent in InlineBox if defined(ADDRESS_SANITIZER)
638         <http://webkit.org/b/125329>
639
640         Reviewed by Darin Adler.
641
642         * wtf/Assertions.h: Define macro
643         ASSERT_WITH_SECURITY_IMPLICATION_DISABLED based on whether
644         ASSERT_WITH_SECURITY_IMPLICATION() is enabled.
645
646 2013-12-11  Brendan Long  <b.long@cablelabs.com>
647
648         Type punning error in MD5.cpp
649         https://bugs.webkit.org/show_bug.cgi?id=125412
650
651         Reviewed by Darin Adler.
652
653         * wtf/MD5.cpp:
654         (WTF::toLittleEndian): Renamed, and use memcpy instead of casting.
655         (WTF::MD5::addBytes): Renamed reverseBytes to toLittleEndian.
656         (WTF::MD5::checksum): Same, and use memcpy instead of casting to prevent type punning error.
657
658 2013-12-11  Laszlo Vidacs  <lac@inf.u-szeged.hu>
659
660         Store SHA1 hash in std::array
661         https://bugs.webkit.org/show_bug.cgi?id=125446
662
663         Reviewed by Darin Adler.
664
665         Change Vector to std::array and use typedef.
666
667         * wtf/SHA1.cpp:
668         (WTF::SHA1::computeHash):
669         (WTF::SHA1::hexDigest):
670         (WTF::SHA1::computeHexDigest):
671         * wtf/SHA1.h:
672
673 2013-12-11  Oliver Hunt  <oliver@apple.com>
674
675         Give Unique StringImpls a meaningful data pointer
676         https://bugs.webkit.org/show_bug.cgi?id=125598
677
678         Reviewed by Michael Saboff.
679
680         Found by code inspection.  If there is a collision in an Identifier
681         table when comparing to a string literal we attempt to use the data
682         pointer (essentially this ends up being a null termination check).
683
684         Previously unique pointers just used the literal 1 as the data address
685         but this obviously fails when dereferenced.  Instead we now make the
686         data pointer point to the location of the buffer pointer itself.  As
687         the buffer pointer is initialised to 0, this satisfies the requirement
688         that the 0-length unique string is null terminated.
689
690         * wtf/text/StringImpl.h:
691         (WTF::StringImpl::StringImpl):
692
693 2013-12-10  Anders Carlsson  <andersca@apple.com>
694
695         Add a HashMap constructor that takes an initializer list
696         https://bugs.webkit.org/show_bug.cgi?id=125551
697
698         Reviewed by Dan Bernstein.
699
700         * wtf/HashMap.h:
701         (WTF::HashMap::HashMap):
702
703 2013-12-10  Laszlo Vidacs  <lac@inf.u-szeged.hu>
704
705         Use std::array when computing MD5 checksum
706         https://bugs.webkit.org/show_bug.cgi?id=125509
707
708         Reviewed by Anders Carlsson.
709
710         Added MD5::Digest type and MD5::hashSize for computing MD5 checksum.
711
712         * wtf/MD5.cpp:
713         (WTF::MD5::checksum):
714         * wtf/MD5.h:
715
716 2013-12-10  Martin Robinson  <mrobinson@igalia.com>
717
718         Various fixes for the CMake GTK+ build
719
720         Reviewed by Gustavo Noronha.
721
722         * wtf/PlatformGTK.cmake: Add Zlib library to the WTF build.
723
724 2013-12-09  Sam Weinig  <sam@webkit.org>
725
726         Remove FixedArray
727         https://bugs.webkit.org/show_bug.cgi?id=125478
728
729         Reviewed by Anders Carlsson.
730
731         * GNUmakefile.list.am:
732         * WTF.vcxproj/WTF.vcxproj:
733         * WTF.vcxproj/WTF.vcxproj.filters:
734         * WTF.xcodeproj/project.pbxproj:
735         * wtf/CMakeLists.txt:
736         * wtf/FixedArray.h: Removed.
737
738 2013-12-09  Sam Weinig  <sam@webkit.org>
739
740         Replace use of WTF::FixedArray with std::array
741         https://bugs.webkit.org/show_bug.cgi?id=125475
742
743         Reviewed by Anders Carlsson.
744
745         * wtf/AVLTree.h:
746         * wtf/Bitmap.h:
747         * wtf/SixCharacterHash.cpp:
748         (WTF::integerToSixCharacterHashString):
749         * wtf/SixCharacterHash.h:
750
751 2013-12-06  Roger Fong <roger_fong@apple.com> and Brent Fulgham  <bfulgham@apple.com>
752
753         [Win] Support compiling with VS2013
754         https://bugs.webkit.org/show_bug.cgi?id=125353
755
756         Reviewed by Anders Carlsson.
757
758         * wtf/Compiler.h: Show proper features for VS2012 and VS2013.
759         * wtf/MathExtras.h: Don't implement common C99 routines when
760         they are available through the runtime libraries.
761         * wtf/RetainPtr.h:
762         (WTF::RetainPtr::operator bool): Added.
763         * wtf/StdLibExtras.h: Use Microsoft's version of make_unique
764         when it exists.
765
766 2013-12-06  Laszlo Vidacs  <lac@inf.u-szeged.hu>
767
768         Define SHA1 hash size in SHA1.h and use it at various places.
769         https://bugs.webkit.org/show_bug.cgi?id=125345
770
771         Reviewed by Darin Adler.
772
773         Use SHA1::hashSize instead of local variables.
774
775         * wtf/SHA1.h: define SHA1 hash size
776
777 2013-12-05  Iain Lane  <iain.lane@canonical.com>
778
779         Remove USE(LOCKFREE_THREADSAFEREFCOUNTED) from Atomics.cpp since it is
780         no longer defined.
781         https://bugs.webkit.org/show_bug.cgi?id=124502
782
783         Reviewed by Anders Carlsson.
784
785         * wtf/Atomics.cpp:
786
787 2013-12-04  Ryosuke Niwa  <rniwa@webkit.org>
788
789         Enable HTMLTemplateElement by default
790         https://bugs.webkit.org/show_bug.cgi?id=123851
791
792         Reviewed by Antti Koivisto.
793
794         * wtf/FeatureDefines.h:
795
796 2013-12-04  Dan Bernstein  <mitz@apple.com>
797
798         Replace USE(SECURITY_FRAMEWORK) with finer-grained defines
799         https://bugs.webkit.org/show_bug.cgi?id=125242
800
801         Reviewed by Sam Weinig.
802
803         * wtf/Platform.h: Removed definitions of WTF_USE_SECURITY_FRAMEWORK, and defined
804         HAVE_SEC_IDENTITY and HAVE_SEC_KEYCHAIN.
805
806 2013-12-03  Joseph Pecoraro  <pecoraro@apple.com>
807
808         Web Inspector: Push Remote Inspector debugging connection management into JavaScriptCore
809         https://bugs.webkit.org/show_bug.cgi?id=124613
810
811         Reviewed by Timothy Hatcher.
812
813         * wtf/ios/WebCoreThread.cpp:
814         * wtf/ios/WebCoreThread.h:
815         Expose WebThreadRun/WebThreadRunSync iOS methods defined in WebCore through
816         WTF so that JavaScriptCore can use it. Another such method already existed.
817
818 2013-12-03  Mark Lam  <mark.lam@apple.com>
819
820         testapi test crashes on Windows in WTF::Vector<wchar_t,64,WTF::UnsafeVectorOverflow>::size().
821         https://bugs.webkit.org/show_bug.cgi?id=121972.
822
823         Reviewed by Brent Fulgham.
824
825         * wtf/OSAllocatorWin.cpp:
826         (WTF::OSAllocator::decommit):
827         (WTF::OSAllocator::releaseDecommitted):
828         - Added a check to ensure that the bytes to decommit / release is not 0.
829           On Windows, a 0 length passed to VirtualFree() has a special meaning,
830           and it's not "decommit / release nothing" as one would expect. Adding
831           this check makes OSAllocatorWin consistent with OSAllocatorPosix for
832           these 2 functions.
833
834 2013-12-02  Mark Lam  <mark.lam@apple.com>
835
836         Build failure when disabling JIT, YARR_JIT, and ASSEMBLER.
837         https://bugs.webkit.org/show_bug.cgi?id=123809.
838
839         Reviewed by Geoffrey Garen.
840
841         * wtf/Platform.h:
842         - Ensure that the ASSEMBLER is enabled when the DISASSEMBLER is enabled.
843
844 2013-11-30  peavo@outlook.com  <peavo@outlook.com>
845
846         [Win] Some JavaScript date tests are failing.
847         https://bugs.webkit.org/show_bug.cgi?id=124946
848
849         Reviewed by Brent Fulgham.
850
851         Use native Win32 api functions to compute Daylight saving time offset.
852
853         * wtf/DateMath.cpp:
854         (WTF::UnixTimeToFileTime): Added method to calculate Win32 specific struct FILETIME from time_t value.
855         (WTF::calculateDSTOffset): Use native Win32 api functions to compute Daylight saving time offset.
856
857 2013-11-28  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
858
859         Nix Upstream: Updating Nix WTF files
860         https://bugs.webkit.org/show_bug.cgi?id=124980
861
862         Reviewed by Csaba Osztrogonác.
863
864         Just to sync our private repo files and the trunk, as part of the upstream process.
865
866         * wtf/DisallowCType.h:
867         * wtf/PlatformNix.cmake:
868         * wtf/nix/FeatureDefinesNix.h:
869         * wtf/nix/PlatformNix.h:
870         * wtf/nix/RunLoopNix.cpp: Added.
871
872 2013-11-28  Antti Koivisto  <antti@apple.com>
873
874         Remove feature: CSS variables
875         https://bugs.webkit.org/show_bug.cgi?id=114119
876
877         Reviewed by Andreas Kling.
878
879         * wtf/FeatureDefines.h:
880
881 2013-11-26  Filip Pizlo  <fpizlo@apple.com>
882
883         Do bytecode validation as part of testing
884         https://bugs.webkit.org/show_bug.cgi?id=124913
885
886         Reviewed by Oliver Hunt.
887
888         * GNUmakefile.list.am:
889         * WTF.vcxproj/WTF.vcxproj:
890         * WTF.xcodeproj/project.pbxproj:
891         * wtf/CMakeLists.txt:
892         * wtf/FastBitVector.cpp: Added.
893         (WTF::FastBitVector::dump):
894         * wtf/FastBitVector.h:
895         (WTF::FastBitVector::resize):
896         (WTF::FastBitVector::bitCount):
897         (WTF::FastBitVector::arrayLength):
898
899 2013-11-27  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
900
901         Remove Sparc specific code.
902         https://bugs.webkit.org/show_bug.cgi?id=124941
903
904         Reviewed by Michael Saboff.
905
906         Sparc is not supported, remove leftover code.
907
908         * wtf/Platform.h:
909         * wtf/dtoa/utils.h:
910
911 2013-11-26  Marcelo Lira  <marcelo.lira@openbossa.org>
912
913         Nix upstreaming - Adding build files and supporting scripts
914         https://bugs.webkit.org/show_bug.cgi?id=118367
915
916         Reviewed by Ryosuke Niwa.
917
918         * wtf/FeatureDefines.h:
919         * wtf/Platform.h:
920         * wtf/PlatformNix.cmake: Added.
921
922 2013-11-26  Drew Yao  <ayao@apple.com>
923
924         ASSERT_WITH_SECURITY_IMPLICATION should crash in a distinct way.
925         https://bugs.webkit.org/show_bug.cgi?id=124757
926
927         Change ASSERT_WITH_SECURITY_IMPLICATION to access a different address from CRASH()
928         in order to help screen fuzzing bugs.
929
930         Reviewed by Brent Fulgham.
931
932         * wtf/Assertions.cpp:
933         * wtf/Assertions.h:
934
935 2013-11-24  Tim Horton  <timothy_horton@apple.com>
936
937         Upstream USE(IOSURFACE) from the iOS port
938         https://bugs.webkit.org/show_bug.cgi?id=124814
939
940         Reviewed by Sam Weinig.
941
942         Some code guarded by USE(IOSURFACE) was recently upstreamed,
943         but not the definition of WTF_USE_IOSURFACE itself.
944
945         * wtf/Platform.h:
946
947 2013-11-23  Xabier Rodriguez Calvar  <calvaris@igalia.com>
948
949         [GStreamer] Remove 0.10 codepath
950         https://bugs.webkit.org/show_bug.cgi?id=124534
951
952         Reviewed by Philippe Normand.
953
954         * wtf/Platform.h: Removed macro for GStreamer 1.0 as it is the
955         only codepath now.
956
957 2013-11-21  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
958
959         Remove ENABLE_WORKERS
960         https://bugs.webkit.org/show_bug.cgi?id=105784
961
962         Reviewed by Darin Adler.
963
964         * wtf/FeatureDefines.h:
965         * wtf/nix/FeatureDefinesNix.h:
966
967 2013-11-21  Mark Rowe  <mrowe@apple.com>
968
969         <https://webkit.org/b/124701> Fix an error in a few Xcode configuration setting files.
970
971         Reviewed by Alexey Proskuryakov.
972
973         * Configurations/Base.xcconfig:
974
975 2013-11-20  Mark Lam  <mark.lam@apple.com>
976
977         Introducing VMEntryScope to update the VM stack limit.
978         https://bugs.webkit.org/show_bug.cgi?id=124634.
979
980         Reviewed by Geoffrey Garen.
981
982         * wtf/Platform.h:
983         * wtf/StackBounds.h:
984         (WTF::StackBounds::StackBounds):
985
986 2013-11-18  Filip Pizlo  <fpizlo@apple.com>
987
988         Allow the FTL debug dumps to include the new size field
989         https://bugs.webkit.org/show_bug.cgi?id=124479
990
991         Reviewed by Mark Hahnenberg.
992
993         * wtf/PrintStream.cpp:
994         (WTF::printInternal):
995         * wtf/PrintStream.h:
996
997 2013-11-17  Jer Noble  <jer.noble@apple.com>
998
999         [WTF] Media time should not have a constructor which accepts a single int or float.
1000         https://bugs.webkit.org/show_bug.cgi?id=124470
1001
1002         Having a constructor taking a single number value, as it's very easy to accidentially mis-
1003         initialize a MediaTime with a double (automatically casted to a int64_t).
1004
1005         Reviewed by Eric Carlson.
1006
1007         * wtf/MediaTime.h:
1008
1009 2013-11-18  Csaba Osztrogonác  <ossy@webkit.org>
1010
1011         URTBF after r159432 to make WinCairo build happy.
1012
1013         * wtf/text/WTFString.h:
1014
1015 2013-11-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1016
1017         Unreviewed. Fix make distcheck.
1018
1019         * GNUmakefile.list.am: Add missing header file.
1020
1021 2013-11-16  Alexey Proskuryakov  <ap@apple.com>
1022
1023         Use uint8_t vectors for WebCrypto data
1024         https://bugs.webkit.org/show_bug.cgi?id=124466
1025
1026         Reviewed by Sam Weinig.
1027
1028         Binary data can be UTF-8, in which case "char*" is idiomatic, or it can be arbitrary
1029         binary data, in which case "uint8_t*" is more common.
1030
1031         Changed encode functions that took "const char *" to "const void*", and decode
1032         functions that took "Vector<char>&" now take an adapter class.
1033
1034         The adapter relies on Vector<char> and Vector<uint8_t> classes having an identical layout.
1035
1036         * wtf/text/Base64.cpp:
1037         (WTF::base64Encode):
1038         (WTF::base64URLEncode):
1039         (WTF::base64DecodeInternal):
1040         (WTF::base64Decode):
1041         (WTF::base64URLDecode):
1042         * wtf/text/Base64.h:
1043         (WTF::SignedOrUnsignedCharVectorAdapter):
1044         (WTF::ConstSignedOrUnsignedCharVectorAdapter):
1045         (WTF::base64Encode):
1046         (WTF::base64URLEncode):
1047
1048 2013-11-15  Alexey Proskuryakov  <ap@apple.com>
1049
1050         Support exporting symmetric keys as JWK
1051         https://bugs.webkit.org/show_bug.cgi?id=124442
1052
1053         Reviewed by Sam Weinig.
1054
1055         Base64URL encoding doesn't use '=' padding, and doesn't need any other options.
1056         Added this mode for encode, and removed policy arguments from exposed functions.
1057
1058         * wtf/text/Base64.cpp:
1059         (WTF::base64EncodeInternal):
1060         (WTF::base64URLEncode):
1061         (WTF::base64URLDecode):
1062         * wtf/text/Base64.h:
1063         (WTF::base64URLEncode):
1064
1065 2013-11-15  Mark Hahnenberg  <mhahnenberg@apple.com>
1066
1067         Remove VTableSpectrum
1068         https://bugs.webkit.org/show_bug.cgi?id=124427
1069
1070         Reviewed by Filip Pizlo.
1071
1072         * wtf/Platform.h:
1073
1074 2013-11-15  Jer Noble  <jer.noble@apple.com>
1075
1076         MediaTime addition and subtraction operators have errors when the rhs is infinite.
1077         https://bugs.webkit.org/show_bug.cgi?id=124413
1078
1079         Reviewed by Eric Carlson.
1080
1081         Correctly account for infinities that can occur on the right-hand side of addition or
1082         subtraction operators.
1083
1084         * wtf/MediaTime.cpp:
1085         (WTF::MediaTime::operator+):
1086         (WTF::MediaTime::operator-):
1087
1088 2013-11-14  Oliver Hunt  <oliver@apple.com>
1089
1090         Make CLoop easier to build, and make it work
1091         https://bugs.webkit.org/show_bug.cgi?id=124359
1092
1093         Reviewed by Geoffrey Garen.
1094
1095         Make building with the CLoop forcibly enabled manually
1096         disable the JITs
1097
1098         * wtf/Platform.h:
1099
1100 2013-11-14  Andreas Kling  <akling@apple.com>
1101
1102         FontDescription copies should share families list, not duplicate it.
1103         <https://webkit.org/b/124338>
1104
1105         Add RefCountedArray::operator==.
1106
1107         Reviewed by Antti Koivisto.
1108
1109 2013-11-13  Anders Carlsson  <andersca@apple.com>
1110
1111         Add a Vector constructor that takes an std::initializer_list
1112         https://bugs.webkit.org/show_bug.cgi?id=124287
1113
1114         Reviewed by Antti Koivisto.
1115
1116         * wtf/Compiler.h:
1117         * wtf/Vector.h:
1118         (WTF::Vector::Vector):
1119
1120 2013-11-12  Brent Fulgham  <bfulgham@apple.com>
1121
1122         [Win] Unreviewed gardening.
1123
1124         * WTF.vcxproj/WTF.vcxproj.filters: Tidy up filters so files show up
1125         in their proper directories.
1126
1127 2013-11-12  Alex Christensen  <achristensen@webkit.org>
1128
1129         Build GStreamer files on Windows.
1130         https://bugs.webkit.org/show_bug.cgi?id=124180
1131
1132         Reviewed by Brent Fulgham.
1133
1134         * WTF.vcxproj/WTF.vcxproj:
1135         * WTF.vcxproj/WTF.vcxproj.filters:
1136         * WTF.vcxproj/copy-files.cmd:
1137         Include gobject files in WinCairo build.
1138
1139 2013-11-09  Filip Pizlo  <fpizlo@apple.com>
1140
1141         Switch FTL GetById/PutById IC's over to using AnyRegCC
1142         https://bugs.webkit.org/show_bug.cgi?id=124094
1143
1144         Reviewed by Sam Weinig.
1145         
1146         I needed to add another set operation, namely filter(), which is an in-place set
1147         intersection.
1148
1149         * wtf/BitVector.cpp:
1150         (WTF::BitVector::filterSlow):
1151         * wtf/BitVector.h:
1152         (WTF::BitVector::filter):
1153
1154 2013-11-10  Ryuan Choi  <ryuan.choi@samsung.com>
1155
1156         [EFL] Build break on Ubuntu 13.10
1157         https://bugs.webkit.org/show_bug.cgi?id=124131
1158
1159         Reviewed by Gyuyoung Kim.
1160
1161         Turned DisallowCType macros off on EFL port because gtest-internal.h uses isspace().
1162
1163         * wtf/DisallowCType.h: Added !PLATFORM(EFL) guard.
1164
1165 2013-11-09  Patrick Gansterer  <paroga@webkit.org>
1166
1167         Move RunLoop from WebCore to WTF
1168         https://bugs.webkit.org/show_bug.cgi?id=116606
1169
1170         Reviewed by Anders Carlsson.
1171
1172         With this change RunLoop can be used in JavaScriptCore too.
1173
1174         * GNUmakefile.list.am:
1175         * WTF.vcxproj/WTF.vcxproj:
1176         * WTF.xcodeproj/project.pbxproj:
1177         * wtf/CMakeLists.txt:
1178         * wtf/PlatformBlackBerry.cmake:
1179         * wtf/PlatformEfl.cmake:
1180         * wtf/PlatformGTK.cmake:
1181         * wtf/PlatformWin.cmake:
1182         * wtf/RunLoop.cpp: Renamed from Source/WebCore/platform/RunLoop.cpp.
1183         (WTF::RunLoop::Holder::Holder):
1184         (WTF::RunLoop::Holder::runLoop):
1185         (WTF::RunLoop::initializeMainRunLoop):
1186         (WTF::RunLoop::current):
1187         (WTF::RunLoop::main):
1188         (WTF::RunLoop::isMain):
1189         (WTF::RunLoop::performWork):
1190         (WTF::RunLoop::dispatch):
1191         * wtf/RunLoop.h: Renamed from Source/WebCore/platform/RunLoop.h.
1192         (WTF::RunLoop::TimerBase::startRepeating):
1193         (WTF::RunLoop::TimerBase::startOneShot):
1194         (WTF::RunLoop::TimerBase::isRepeating):
1195         (WTF::RunLoop::Timer::Timer):
1196         (WTF::RunLoop::Timer::fired):
1197         * wtf/blackberry/RunLoopBlackBerry.cpp: Renamed from Source/WebCore/platform/blackberry/RunLoopBlackBerry.cpp.
1198         (WTF::RunLoop::RunLoop):
1199         (WTF::RunLoop::~RunLoop):
1200         (WTF::RunLoop::wakeUp):
1201         * wtf/cf/RunLoopCF.cpp: Renamed from Source/WebCore/platform/cf/RunLoopCF.cpp.
1202         (WTF::RunLoop::performWork):
1203         (WTF::RunLoop::RunLoop):
1204         (WTF::RunLoop::~RunLoop):
1205         (WTF::RunLoop::runForDuration):
1206         (WTF::RunLoop::wakeUp):
1207         (WTF::RunLoop::run):
1208         (WTF::RunLoop::stop):
1209         (WTF::RunLoop::TimerBase::timerFired):
1210         (WTF::RunLoop::TimerBase::TimerBase):
1211         (WTF::RunLoop::TimerBase::~TimerBase):
1212         (WTF::RunLoop::TimerBase::start):
1213         (WTF::RunLoop::TimerBase::stop):
1214         (WTF::RunLoop::TimerBase::isActive):
1215         * wtf/efl/RunLoopEfl.cpp: Renamed from Source/WebCore/platform/efl/RunLoopEfl.cpp.
1216         (WTF::RunLoop::RunLoop):
1217         (WTF::RunLoop::~RunLoop):
1218         (WTF::RunLoop::run):
1219         (WTF::RunLoop::stop):
1220         (WTF::RunLoop::wakeUpEvent):
1221         (WTF::RunLoop::wakeUp):
1222         (WTF::RunLoop::TimerBase::TimerBase):
1223         (WTF::RunLoop::TimerBase::~TimerBase):
1224         (WTF::RunLoop::TimerBase::timerFired):
1225         (WTF::RunLoop::TimerBase::start):
1226         (WTF::RunLoop::TimerBase::stop):
1227         (WTF::RunLoop::TimerBase::isActive):
1228         * wtf/gtk/RunLoopGtk.cpp: Renamed from Source/WebCore/platform/gtk/RunLoopGtk.cpp.
1229         (WTF::RunLoop::RunLoop):
1230         (WTF::RunLoop::~RunLoop):
1231         (WTF::RunLoop::run):
1232         (WTF::RunLoop::innermostLoop):
1233         (WTF::RunLoop::pushNestedMainLoop):
1234         (WTF::RunLoop::popNestedMainLoop):
1235         (WTF::RunLoop::stop):
1236         (WTF::RunLoop::queueWork):
1237         (WTF::RunLoop::wakeUp):
1238         (WTF::RunLoop::TimerBase::TimerBase):
1239         (WTF::RunLoop::TimerBase::~TimerBase):
1240         (WTF::RunLoop::TimerBase::clearTimerSource):
1241         (WTF::RunLoop::TimerBase::timerFiredCallback):
1242         (WTF::RunLoop::TimerBase::start):
1243         (WTF::RunLoop::TimerBase::stop):
1244         (WTF::RunLoop::TimerBase::isActive):
1245         * wtf/win/RunLoopWin.cpp: Renamed from Source/WebCore/platform/win/RunLoopWin.cpp.
1246         (WTF::RunLoop::RunLoopWndProc):
1247         (WTF::RunLoop::wndProc):
1248         (WTF::RunLoop::run):
1249         (WTF::RunLoop::stop):
1250         (WTF::RunLoop::registerRunLoopMessageWindowClass):
1251         (WTF::RunLoop::RunLoop):
1252         (WTF::RunLoop::~RunLoop):
1253         (WTF::RunLoop::wakeUp):
1254         (WTF::RunLoop::TimerBase::timerFired):
1255         (WTF::generateTimerID):
1256         (WTF::RunLoop::TimerBase::TimerBase):
1257         (WTF::RunLoop::TimerBase::~TimerBase):
1258         (WTF::RunLoop::TimerBase::start):
1259         (WTF::RunLoop::TimerBase::stop):
1260         (WTF::RunLoop::TimerBase::isActive):
1261
1262 2013-11-08  Alexey Proskuryakov  <ap@apple.com>
1263
1264         Make base64url decoding actually work
1265         https://bugs.webkit.org/show_bug.cgi?id=124050
1266
1267         Reviewed by Sam Weinig.
1268
1269         * wtf/text/Base64.cpp: (WTF::base64DecodeInternal): Don't hardcode knowledge about
1270         alphabet, put it into the map.
1271
1272 2013-11-07  Denis Nomiyama  <d.nomiyama@samsung.com>
1273
1274         [GTK] Glyphs in vertical text tests are rotated 90 degrees clockwise
1275         https://bugs.webkit.org/show_bug.cgi?id=50619
1276
1277         Reviewed by Martin Robinson.
1278
1279         Enabled OPENTYPE_VERTICAL by default on GTK+ and EFL ports, which are
1280         currently using Freetype.
1281
1282         * wtf/Platform.h:
1283
1284 2013-11-06  Daniel Bates  <dabates@apple.com>
1285
1286         [iOS] Upstream Letterpress effect
1287         https://bugs.webkit.org/show_bug.cgi?id=123932
1288
1289         Reviewed by Sam Weinig.
1290
1291         Add feature define ENABLE_LETTERPRESS disabled by default. We only enable
1292         letterpress on iOS.
1293
1294         * wtf/FeatureDefines.h:
1295
1296 2013-11-06  Nick Diego Yamane  <nick.yamane@openbossa.org>
1297
1298         Disable "unused local typedefs" warning for GCC 4.7
1299         https://bugs.webkit.org/show_bug.cgi?id=123913
1300
1301         Reviewed by Martin Robinson.
1302
1303         That warning was actually introduced in gcc 4.7.0.
1304         See: http://gcc.gnu.org/gcc-4.7/changes.html
1305
1306         * wtf/Compiler.h:
1307
1308 2013-11-06  Daniel Bates  <dabates@apple.com>
1309
1310         Add ENABLE(TEXT_SELECTION)
1311         https://bugs.webkit.org/show_bug.cgi?id=123827
1312
1313         Reviewed by Ryosuke Niwa.
1314
1315         Enable selection painting by default on all ports except iOS.
1316
1317         * wtf/FeatureDefines.h:
1318
1319 2013-11-04  Alexey Proskuryakov  <ap@apple.com>
1320
1321         Implement base64url encoding from RFC 4648
1322         https://bugs.webkit.org/show_bug.cgi?id=123767
1323
1324         Reviewed by Sam Weinig.
1325
1326         No tests yet, will be covered by JWK tests for WebCrypto.
1327
1328         * wtf/text/Base64.cpp:
1329         (WTF::base64EncodeInternal):
1330         (WTF::base64Encode):
1331         (WTF::base64URLEncode):
1332         (WTF::base64DecodeInternal):
1333         (WTF::base64Decode):
1334         (WTF::base64URLDecode):
1335         * wtf/text/Base64.h:
1336         (WTF::base64URLEncode):
1337
1338 2013-11-04  Brent Fulgham  <bfulgham@apple.com>
1339
1340         [Win] User VersionStamper for official builds
1341         https://bugs.webkit.org/show_bug.cgi?id=123758
1342
1343         Reviewed by Tim Horton.
1344
1345         * WTF.vcxproj/WTFPostBuild.cmd: Add missing command to run VersionStamper.exe.
1346
1347 2013-11-01  Jer Noble  <jer.noble@apple.com>
1348
1349         [PluginProxy] Add a setting to disable video plugin proxy support in HTMLMediaElement.
1350         https://bugs.webkit.org/show_bug.cgi?id=123621
1351
1352         Reviewed by Eric Carlson.
1353
1354         Enable WTF_USE_AVFOUNDATION and add some HAVE_AVFOUNDATION_* defines
1355         to replace the existing __MAC_OS_X_VERSION_MIN_REQUIRED macros in
1356         MediaPlayerPrivateAVFoundationObjC.mm.
1357
1358         * wtf/Platform.h:
1359
1360 2013-11-02  Patrick Gansterer  <paroga@webkit.org>
1361
1362         Fix compilation of DateMath.cpp with MSVC
1363         https://bugs.webkit.org/show_bug.cgi?id=123680
1364
1365         Reviewed by Darin Adler.
1366
1367         * wtf/DateMath.cpp:
1368         (WTF::appendTwoDigitNumber): Help the compiler finding the
1369         correct overload by casting the characters to LChar.
1370
1371 2013-11-02  Filip Pizlo  <fpizlo@apple.com>
1372
1373         LLVM assertion failures should funnel into WTF's crash handling
1374         https://bugs.webkit.org/show_bug.cgi?id=123682
1375
1376         Reviewed by Geoffrey Garen.
1377         
1378         Give JSC some new toys to play with for crash handling.
1379
1380         * wtf/Assertions.cpp:
1381         * wtf/Assertions.h:
1382
1383 2013-11-02  Patrick Gansterer  <paroga@webkit.org>
1384
1385         Fix UnicodeWchar after r157330.
1386         https://bugs.webkit.org/show_bug.cgi?id=123668
1387
1388         Reviewed by Darin Adler.
1389
1390         * wtf/unicode/wchar/UnicodeWchar.cpp:
1391         (unorm_normalize):
1392         (u_strFoldCase):
1393         (u_strToLower):
1394         (u_strToUpper):
1395         * wtf/unicode/wchar/UnicodeWchar.h:
1396         (u_foldCase):
1397         (u_isprint):
1398         (u_isspace):
1399
1400 2013-11-02  Andreas Kling  <akling@apple.com>
1401
1402         Make remaining StringImpl functions return PassRef.
1403         <https://webkit.org/b/123683>
1404
1405         Okay, this seems to work well! Let's go all in and convert the
1406         remaining StringImpl functions to return PassRef<StringImpl> instead
1407         of PassRefPtr where we know that null is never returned.
1408
1409         Reviewed by Anders Carlsson.
1410
1411 2013-11-02  Andreas Kling  <akling@apple.com>
1412
1413         StringImpl::upper() should return PassRef.
1414         <https://webkit.org/b/123655>
1415
1416         Make upper() return PassRef<StringImpl>. Spotted and removed some
1417         ref churning in implementations.
1418
1419         Reviewed by Darin Adler.
1420
1421 2013-11-01  Alexey Proskuryakov  <ap@apple.com>
1422
1423         Add WebCrypto AES-CBC
1424         https://bugs.webkit.org/show_bug.cgi?id=123647
1425
1426         Reviewed by Anders Carlsson.
1427
1428         * wtf/FixedArray.h: (WTF::FixedArray::data): Added a const version of the function.
1429
1430         * wtf/Vector.h: Added a comment to Vector constructor about how it is different
1431         from std::vector.
1432
1433 2013-11-01  Joseph Pecoraro  <pecoraro@apple.com>
1434
1435         Unreviewed extended attempt at Windows build fix after r158471.
1436
1437         * wtf/text/cf/AtomicStringCF.cpp:
1438         * wtf/text/cf/StringCF.cpp:
1439         * wtf/text/cf/StringImplCF.cpp:
1440
1441 2013-11-01  Joseph Pecoraro  <pecoraro@apple.com>
1442
1443         Unreviewed attempt at Windows build fix after r158471.
1444
1445         * wtf/text/cf/AtomicStringCF.cpp:
1446         * wtf/text/cf/StringCF.cpp:
1447         * wtf/text/cf/StringImplCF.cpp:
1448
1449 2013-11-01  Andreas Kling  <akling@apple.com>
1450
1451         Make more StringImpl construction helpers return PassRef.
1452         <https://webkit.org/b/123652>
1453
1454         Tweak another handful of StringImpl constructor functions to return
1455         PassRef<StringImpl> instead of PassRefPtr.
1456
1457         Reviewed by Anders Carlsson.
1458
1459 2013-11-01  Andreas Kling  <akling@apple.com>
1460
1461         Neuter WTF_MAKE_FAST_ALLOCATED in GLOBAL_FASTMALLOC_NEW builds.
1462         <https://webkit.org/b/123639>
1463
1464         When building with GLOBAL_FASTMALLOC_NEW, we don't need to expand
1465         operator new/delete overrides in every class.
1466
1467         This change makes allocations group up nicely in Instruments,
1468         instead of being split between "WTF::fastMalloc" and "operator new"
1469         depending on whether the class had WTF_MAKE_FAST_ALLOCATED.
1470
1471         Reviewed by Anders Carlsson.
1472
1473 2013-11-01  Joseph Pecoraro  <pecoraro@apple.com>
1474
1475         Move CF/Mac WTF String implementations down into WTF
1476         https://bugs.webkit.org/show_bug.cgi?id=123635
1477
1478         Reviewed by Sam Weinig.
1479
1480         * WTF.vcxproj/WTF.vcxproj:
1481         * WTF.vcxproj/WTF.vcxproj.filters:
1482         * WTF.xcodeproj/project.pbxproj:
1483         * wtf/text/AtomicString.h:
1484         * wtf/text/StringImpl.h:
1485         * wtf/text/WTFString.h:
1486         * wtf/text/cf/AtomicStringCF.cpp: Renamed from Source/WebCore/platform/text/cf/AtomicStringCF.cpp.
1487         (WTF::AtomicString::add):
1488         * wtf/text/cf/StringCF.cpp: Renamed from Source/WebCore/platform/text/cf/StringCF.cpp.
1489         (WTF::String::String):
1490         (WTF::String::createCFString):
1491         * wtf/text/cf/StringImplCF.cpp: Renamed from Source/WebCore/platform/text/cf/StringImplCF.cpp.
1492         (garbageCollectionEnabled):
1493         (WTF::StringWrapperCFAllocator::retain):
1494         (WTF::StringWrapperCFAllocator::release):
1495         (WTF::StringWrapperCFAllocator::copyDescription):
1496         (WTF::StringWrapperCFAllocator::allocate):
1497         (WTF::StringWrapperCFAllocator::reallocate):
1498         (WTF::StringWrapperCFAllocator::deallocateOnMainThread):
1499         (WTF::StringWrapperCFAllocator::deallocate):
1500         (WTF::StringWrapperCFAllocator::preferredSize):
1501         (WTF::StringWrapperCFAllocator::create):
1502         (WTF::StringWrapperCFAllocator::allocator):
1503         (WTF::StringImpl::createCFString):
1504         * wtf/text/mac/StringImplMac.mm: Renamed from Source/WebCore/platform/text/mac/StringImplMac.mm.
1505         (WTF::StringImpl::operator NSString *):
1506         * wtf/text/mac/StringMac.mm: Renamed from Source/WebCore/platform/text/mac/StringMac.mm.
1507         (WTF::String::String):
1508
1509 2013-11-01  Emilio Pozuelo Monfort  <pochu27@gmail.com>
1510
1511         HPPA build fixes
1512         https://bugs.webkit.org/show_bug.cgi?id=123625
1513
1514         Original patch from John David Anglin <dave.anglin@bell.net>
1515
1516         Reviewed by Darin Adler.
1517
1518         * wtf/Platform.h:
1519         * wtf/dtoa/utils.h:
1520
1521 2013-11-01  Patrick Gansterer  <paroga@webkit.org>
1522
1523         Buildfix for !USE(ICU_UNICODE) after 156968.
1524
1525         * wtf/unicode/CollatorDefault.cpp:
1526         (WTF::Collator::userDefault):
1527
1528 2013-10-30  Oliver Hunt  <oliver@apple.com>
1529
1530         Implement basic ES6 Math functions
1531         https://bugs.webkit.org/show_bug.cgi?id=123536
1532
1533         Reviewed by Michael Saboff.
1534
1535         Add basic implementations of necessary methods to MathExtras to
1536         deal with MSVC not supplying them
1537
1538         * wtf/MathExtras.h:
1539         (asinh):
1540         (acosh):
1541         (atanh):
1542         (expm1):
1543         (log1p):
1544         (cbrt):
1545
1546 2013-10-30  Commit Queue  <commit-queue@webkit.org>
1547
1548         Unreviewed, rolling out r158299.
1549         http://trac.webkit.org/changeset/158299
1550         https://bugs.webkit.org/show_bug.cgi?id=123558
1551
1552         caused assertion failures in fast/canvas/canvas-color-
1553         serialization.html and fast/forms/input-text-paste-
1554         maxlength.html (Requested by rniwa on #webkit).
1555
1556         * wtf/text/StringStatics.cpp:
1557         (WTF::StringImpl::empty):
1558
1559 2013-10-30  Ryosuke Niwa  <rniwa@webkit.org>
1560
1561         Remove code for Mac Lion
1562         https://bugs.webkit.org/show_bug.cgi?id=123542
1563
1564         Reviewed by Anders Carlsson.
1565
1566         * wtf/Platform.h:
1567
1568 2013-10-30  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
1569
1570         Remove PCRE workaround.
1571         https://bugs.webkit.org/show_bug.cgi?id=123265
1572
1573         Reviewed by Brent Fulgham.
1574
1575         * wtf/text/StringStatics.cpp:
1576         (WTF::StringImpl::empty):
1577
1578 2013-10-30  peavo@outlook.com  <peavo@outlook.com>
1579
1580         [Win] Compile errors when enabling DFG JIT.
1581         https://bugs.webkit.org/show_bug.cgi?id=120998
1582
1583         Reviewed by Brent Fulgham.
1584
1585         * wtf/CompilationThread.cpp: Use new ThreadingOnce class instead of pthread_once.
1586         (WTF::initializeCompilationThreads):
1587         * wtf/ThreadingOnce.h: Added ThreadingOnce class encapsulating pthread_once functionality.
1588         (WTF::ThreadingOnce::ThreadingOnce):
1589         (WTF::ThreadingOnce::~ThreadingOnce):
1590         (WTF::ThreadingOnce::callOnce):
1591         * wtf/text/CString.h: Export needed symbols.
1592
1593 2013-10-30  Alex Christensen  <achristensen@webkit.org>
1594
1595         Disabled JIT on Win64.
1596         https://bugs.webkit.org/show_bug.cgi?id=122472
1597
1598         Reviewed by Geoffrey Garen.
1599
1600         * wtf/Platform.h:
1601         Disabled JIT on Win64.
1602
1603 2013-10-29  Andreas Kling  <akling@apple.com>
1604
1605         StringImpl::isolatedCopy() should return PassRef.
1606         <https://webkit.org/b/123484>
1607
1608         Make isolatedCopy() return a PassRef<StringImpl>.
1609
1610         Reviewed by Anders Carlsson.
1611
1612 2013-10-29  Jer Noble  <jer.noble@apple.com>
1613
1614         [MSE] [Mac] Enable MediaSource on the Mac
1615         https://bugs.webkit.org/show_bug.cgi?id=122484
1616
1617         Reviewed by Darin Adler.
1618
1619         Enable ENABLE_MEDIA_SOURCE.
1620
1621         * wtf/FeatureDefines.h:
1622         * wtf/Platform.h: Force a clean build.
1623
1624 2013-10-29  Andreas Kling  <akling@apple.com>
1625
1626         StringImpl::adopt() should return PassRef.
1627         <https://webkit.org/b/123456>
1628
1629         Make the StringImpl::adopt() functions return a PassRef<StringImpl>.
1630
1631         Reviewed by Anders Carlsson.
1632
1633 2013-10-29  Jinwoo Song  <jinwoo7.song@samsung.com>
1634
1635         Re-enable simple line layout for EFL
1636         https://bugs.webkit.org/show_bug.cgi?id=123402
1637
1638         Reviewed by Antti Koivisto.
1639
1640         * wtf/FeatureDefines.h: Enable 8-bit TextRun support for EFL port.
1641
1642 2013-10-28  Anders Carlsson  <andersca@apple.com>
1643
1644         RunLoop::dispatch should take an std::function
1645         https://bugs.webkit.org/show_bug.cgi?id=123407
1646
1647         Reviewed by Andreas Kling.
1648
1649         * wtf/FunctionDispatcher.h:
1650
1651 2013-10-28  Andreas Kling  <akling@apple.com>
1652
1653         RenderElement::m_style should be a Ref.
1654         <https://webkit.org/b/123401>
1655
1656         Added a Ref::replace() so we can Indiana Jones the new style in
1657         RenderElement::setStyle() while keeping a handle on the old style
1658         for a while longer.
1659
1660         Reviewed by Antti Koivisto.
1661
1662 2013-10-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1663
1664         Unreviewed. Fix make distcheck.
1665
1666         * GNUmakefile.list.am: Remove unexistent file from compilation.
1667
1668 2013-10-28  Bastien Nocera <hadess@hadess.net>
1669
1670         Replace 0 timeouts g_timeout_add() by g_idle_add()
1671         https://bugs.webkit.org/show_bug.cgi?id=123260
1672
1673         Reviewed by Carlos Garcia Campos.
1674
1675         A zero timeout should be equivalent to using g_idle_add_full(G_PRIORITY_DEFAULT, ...)
1676         without the nagging feeling that the wrong API was used.
1677
1678         * wtf/gtk/MainThreadGtk.cpp: Use g_idle_add() instead
1679         of 0-timer.
1680         (WTF::scheduleDispatchFunctionsOnMainThread):
1681
1682 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
1683
1684         Re-enable simple line layout for GTK
1685         https://bugs.webkit.org/show_bug.cgi?id=123388
1686
1687         Reviewed by Andreas Kling.
1688
1689         * wtf/FeatureDefines.h: Enable the 8-bit TextRun support for the GTK port.
1690
1691 2013-10-25  Joseph Pecoraro  <pecoraro@apple.com>
1692
1693         Upstream ENABLE(REMOTE_INSPECTOR) and enable on iOS and Mac
1694         https://bugs.webkit.org/show_bug.cgi?id=123111
1695
1696         Reviewed by Timothy Hatcher.
1697
1698         * wtf/FeatureDefines.h:
1699
1700 2013-10-25  Jer Noble  <jer.noble@apple.com>
1701
1702         [WTF] Add a multiplication operator (and a few others) to MediaTime
1703         https://bugs.webkit.org/show_bug.cgi?id=123137
1704
1705         Reviewed by Eric Carlson.
1706
1707         Add a multiplication operator and an inequality operator to the
1708         MediaTime class for use by MSE.
1709
1710         * wtf/MediaTime.cpp:
1711         (WTF::signum): Moved to top of file.
1712         (WTF::MediaTime::operator*): Added.
1713         (WTF::MediaTime::operator!=): Added.
1714         * wtf/MediaTime.h:
1715         (WTF::operator*): Added non-class version of operator*.
1716
1717 2013-10-24  Jer Noble  <jer.noble@apple.com>
1718
1719         [Mac] Add helper methods to convert CMTime <--> MediaTime
1720         https://bugs.webkit.org/show_bug.cgi?id=123285
1721
1722         Reviewed by Eric Carlson.
1723
1724         Add a #ifdef header_h protector.
1725
1726         * wtf/MediaTime.h:
1727
1728 2013-10-24  Mark Rowe  <mrowe@apple.com>
1729
1730         Remove references to OS X 10.7 from Xcode configuration settings.
1731
1732         Now that we're not building for OS X 10.7 they're no longer needed.
1733
1734         Reviewed by Anders Carlsson.
1735
1736         * Configurations/Base.xcconfig:
1737         * Configurations/DebugRelease.xcconfig:
1738
1739 2013-10-24  Mark Rowe  <mrowe@apple.com>
1740
1741         <rdar://problem/15312643> Prepare for the mysterious future.
1742
1743         Reviewed by David Kilzer.
1744
1745         * Configurations/Base.xcconfig:
1746         * Configurations/DebugRelease.xcconfig:
1747
1748 2013-10-24  Commit Queue  <commit-queue@webkit.org>
1749
1750         Unreviewed, rolling out r157931.
1751         http://trac.webkit.org/changeset/157931
1752         https://bugs.webkit.org/show_bug.cgi?id=123284
1753
1754         Seems to have caused a lot of assertions on debug bots
1755         (Requested by ap on #webkit).
1756
1757         * wtf/text/StringStatics.cpp:
1758         (WTF::StringImpl::empty):
1759
1760 2013-10-24  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
1761
1762         Remove PCRE workaround.
1763         https://bugs.webkit.org/show_bug.cgi?id=123265
1764
1765         Reviewed by Darin Adler.
1766
1767         * wtf/text/StringStatics.cpp:
1768         (WTF::StringImpl::empty):
1769
1770 2013-10-24  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
1771
1772         Remove Clang workaround.
1773         https://bugs.webkit.org/show_bug.cgi?id=123262
1774
1775         Reviewed by Anders Carlsson.
1776
1777         * wtf/CheckedArithmetic.h:
1778         (WTF::Checked::Checked):
1779
1780 2013-10-24  Ryuan Choi  <ryuan.choi@samsung.com>
1781
1782         [EFL] Build break with latest EFL 1.8 libraries.
1783         https://bugs.webkit.org/show_bug.cgi?id=123245
1784
1785         Reviewed by Gyuyoung Kim.
1786
1787         After fixed build break on EFL 1.8 at r138326, EFL libraries are changed
1788         Eo typedef and splitted header files which contain version macro.
1789
1790         * wtf/OwnPtrCommon.h: Changed Eo typedef.
1791         * wtf/efl/RefPtrEfl.h: Ditto.
1792
1793 2013-10-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1794
1795         [GObject bindings] Make EventTarget interface introspectable
1796         https://bugs.webkit.org/show_bug.cgi?id=77835
1797
1798         Reviewed by Gustavo Noronha Silva.
1799
1800         Add support for use GRefPtr with GClosure.
1801
1802         * wtf/gobject/GRefPtr.cpp:
1803         (WTF::refGPtr):
1804         (WTF::derefGPtr):
1805         * wtf/gobject/GRefPtr.h:
1806         * wtf/gobject/GTypedefs.h:
1807
1808 2013-10-23  Anders Carlsson  <andersca@apple.com>
1809
1810         Remove USE(LOCKFREE_THREADSAFEREFCOUNTED)
1811         https://bugs.webkit.org/show_bug.cgi?id=123228
1812
1813         Reviewed by Geoffrey Garen.
1814
1815         All ports support USE(LOCKFREE_THREADSAFEREFCOUNTED) now and taking a lock on every ref/deref seems bad.
1816
1817         * wtf/Atomics.h:
1818         * wtf/ThreadSafeRefCounted.h:
1819         (WTF::ThreadSafeRefCountedBase::ref):
1820         (WTF::ThreadSafeRefCountedBase::refCount):
1821         (WTF::ThreadSafeRefCountedBase::derefBase):
1822
1823 2013-10-23  Anders Carlsson  <andersca@apple.com>
1824
1825         Remove HAVE_XPC
1826         https://bugs.webkit.org/show_bug.cgi?id=123226
1827
1828         Reviewed by Dan Bernstein.
1829
1830         HAVE_XPC has been true on Mac since Lion, so remove it.
1831
1832         * wtf/Platform.h:
1833
1834 2013-10-23  Andreas Kling  <akling@apple.com>
1835
1836         Make more StringImpl construction functions return PassRef.
1837         <https://webkit.org/b/123203>
1838
1839         Knock out a couple more of the StringImpl construction helpers that
1840         always return a non-null StringImpl.
1841
1842         Reviewed by Antti Koivisto.
1843
1844 2013-10-22  Filip Pizlo  <fpizlo@apple.com>
1845
1846         FTL should be able to do some simple inline caches using LLVM patchpoints
1847         https://bugs.webkit.org/show_bug.cgi?id=123164
1848
1849         Reviewed by Mark Hahnenberg.
1850         
1851         This needed some better bitvector support, like merging (|=), excluding (&=~),
1852         hashing, and bit counting.
1853
1854         * wtf/BitVector.cpp:
1855         (WTF::BitVector::setSlow):
1856         (WTF::BitVector::excludeSlow):
1857         (WTF::BitVector::bitCountSlow):
1858         (WTF::BitVector::equalsSlowCase):
1859         (WTF::BitVector::hashSlowCase):
1860         (WTF::BitVector::dump):
1861         * wtf/BitVector.h:
1862         (WTF::BitVector::merge):
1863         (WTF::BitVector::exclude):
1864         (WTF::BitVector::bitCount):
1865         (WTF::BitVector::BitVector):
1866         (WTF::BitVector::isEmptyValue):
1867         (WTF::BitVector::isDeletedValue):
1868         (WTF::BitVector::isEmptyOrDeletedValue):
1869         (WTF::BitVector::operator==):
1870         (WTF::BitVector::hash):
1871         (WTF::BitVectorHash::hash):
1872         (WTF::BitVectorHash::equal):
1873         * wtf/HashTraits.h:
1874         (WTF::CustomHashTraits::constructDeletedValue):
1875         (WTF::CustomHashTraits::isDeletedValue):
1876         (WTF::CustomHashTraits::emptyValue):
1877         (WTF::CustomHashTraits::isEmptyValue):
1878         * wtf/StdLibExtras.h:
1879         (WTF::bitCount):
1880
1881 2013-10-23  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1882
1883         Clean-up in Atomics.h
1884         https://bugs.webkit.org/show_bug.cgi?id=123207
1885
1886         Reviewed by Anders Carlsson.
1887
1888         Atomics.h has two confusing and bit-rotted ifdefs with comments.
1889
1890         The first about CPU(SPARC64) was rendered obsolete when we switched
1891         from __exchange_and_add to __sync_add_and_fetch.
1892
1893         The second was caused by a wrong definition that apparently only
1894         caused trouble on GCC.
1895
1896         * wtf/Atomics.h:
1897
1898 2013-10-22  Andreas Kling  <akling@apple.com>
1899
1900         StringImpl::lower() should return a PassRef.
1901         <https://webkit.org/b/123190>
1902
1903         Test the waters and hack enough of StringImpl to be able to return
1904         a PassRef<StringImpl> from lower().
1905
1906         Also gave String a constructor that takes a PassRef<StringImpl>.
1907
1908         Reviewed by Antti Koivisto.
1909
1910 2013-10-22  Commit Queue  <commit-queue@webkit.org>
1911
1912         Unreviewed, rolling out r157835.
1913         http://trac.webkit.org/changeset/157835
1914         https://bugs.webkit.org/show_bug.cgi?id=123192
1915
1916         broke 32-bit builds (Requested by smfr on #webkit).
1917
1918         * wtf/MediaTime.cpp:
1919         (WTF::signum):
1920         * wtf/MediaTime.h:
1921
1922 2013-10-22  Jer Noble  <jer.noble@apple.com>
1923
1924         [WTF] Add a multiplication operator (and a few others) to MediaTime
1925         https://bugs.webkit.org/show_bug.cgi?id=123137
1926
1927         Reviewed by Eric Carlson.
1928
1929         Add a multiplication operator and an inequality operator to the
1930         MediaTime class for use by MSE.
1931
1932         * wtf/MediaTime.cpp:
1933         (WTF::signum): Moved to top of file.
1934         (WTF::MediaTime::operator*): Added.
1935         (WTF::MediaTime::operator!=): Added.
1936         * wtf/MediaTime.h:
1937         (WTF::operator*): Added non-class version of operator*.
1938
1939 2013-10-21  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1940
1941         Make TYPE_CASTS_BASE more flexible
1942         https://bugs.webkit.org/show_bug.cgi?id=122951
1943
1944         Reviewed by Andreas Kling.
1945
1946         TYPE_CASTS_BASE is being used by node|element type casts. However, it is difficult
1947         to be used by other type casts. For instance, CSSValue, Accessibility and so on.
1948         This patch modifies TYPE_CASTS_BASE which can support other type casts.
1949
1950         Besides TYPE_CASTS_BASE body is moved from node.h to Assertions.h.
1951
1952         * wtf/Assertions.h:
1953
1954 2013-10-20  Filip Pizlo  <fpizlo@apple.com>
1955
1956         StructureStubInfo's usedRegisters set should be able to track all registers, not just the ones that our JIT's view as temporaries
1957         https://bugs.webkit.org/show_bug.cgi?id=123076
1958
1959         Reviewed by Sam Weinig.
1960         
1961         Teach BitVector how to efficiently merge (i.e. bitvector |=).
1962
1963         * wtf/BitVector.cpp:
1964         (WTF::BitVector::mergeSlow):
1965         * wtf/BitVector.h:
1966         (WTF::BitVector::merge):
1967         (WTF::BitVector::cleanseInlineBits):
1968
1969 2013-10-19  Jer Noble  <jer.noble@apple.com>
1970
1971         Unreviewed roll out of r157695; broke Mac builds.
1972
1973         * wtf/FeatureDefines.h:
1974
1975 2013-10-07  Jer Noble  <jer.noble@apple.com>
1976
1977         [MSE] [Mac] Enable MediaSource on the Mac
1978         https://bugs.webkit.org/show_bug.cgi?id=122484
1979
1980         Reviewed by Darin Adler.
1981
1982         Enable ENABLE_MEDIA_SOURCE.
1983
1984         * wtf/FeatureDefines.h:
1985
1986 2013-10-19  Andreas Kling  <akling@apple.com>
1987
1988         RefPtr::releaseNonNull() incorrectly increments the refcount.
1989         <https://webkit.org/b/123063>
1990
1991         Make releaseNonNull() use adoptRef(T&), mirroring release().
1992
1993         Reviewed by Anders Carlsson.
1994
1995 2013-10-18  Andreas Kling  <akling@apple.com>
1996
1997         Start passing RenderStyle around with PassRef.
1998         <https://webkit.org/b/123051>
1999
2000         Added some new PassRef tricks to make this patch possible.
2001
2002         Reviewed by Darin Adler.
2003
2004         * wtf/PassRef.h:
2005         (WTF::PassRef::get):
2006
2007             Added a get() helper to facilitate writing functions that
2008             construct a new object and call some functions on it before
2009             returning it.
2010
2011         (WTF::PassRef::dropRef):
2012
2013             This will deref() the referenced object and mark the PassRef
2014             as "passed." This is used in code paths where the PassRef is
2015             going to go out of scope with nobody to take it over.
2016
2017         (WTF::PassRef::leakRef):
2018
2019             Renamed takeReference() to leakRef() and made it public so
2020             we don't have to awkwardly sink the PassRef into a Ref for
2021             e.g static locals.
2022
2023         * wtf/RefPtr.h:
2024         (WTF::RefPtr::releaseNonNull):
2025
2026             Added RefPtr::releaseNonNull() for a convenient way of creating
2027             a PassRef<T> from a RefPtr<T>. This function may only be called
2028             if the RefPtr is known to be non-null.
2029
2030 2013-10-18  Filip Pizlo  <fpizlo@apple.com>
2031
2032         A CodeBlock's StructureStubInfos shouldn't be in a Vector that we search using code origins and machine code PCs
2033         https://bugs.webkit.org/show_bug.cgi?id=122940
2034
2035         Reviewed by Oliver Hunt.
2036
2037         * GNUmakefile.list.am:
2038         * WTF.vcxproj/WTF.vcxproj:
2039         * WTF.xcodeproj/project.pbxproj:
2040         * wtf/BagToHashMap.h: Added.
2041         (WTF::toHashMap):
2042         * wtf/CMakeLists.txt:
2043
2044 2013-10-18  Anders Carlsson  <andersca@apple.com>
2045
2046         Remove spaces between template angle brackets
2047         https://bugs.webkit.org/show_bug.cgi?id=123040
2048
2049         Reviewed by Andreas Kling.
2050
2051         * wtf/AVLTree.h:
2052         * wtf/CheckedArithmetic.h:
2053         * wtf/Compression.h:
2054         * wtf/Functional.h:
2055         (WTF::R):
2056         * wtf/HashFunctions.h:
2057         * wtf/HashIterators.h:
2058         * wtf/HashSet.h:
2059         (WTF::::contains):
2060         * wtf/ListHashSet.h:
2061         (WTF::::contains):
2062         * wtf/RefCountedLeakCounter.cpp:
2063         * wtf/RetainPtr.h:
2064         * wtf/SentinelLinkedList.h:
2065         (WTF::::remove):
2066         * wtf/SizeLimits.cpp:
2067         * wtf/StreamBuffer.h:
2068         * wtf/Vector.h:
2069         * wtf/VectorTraits.h:
2070         * wtf/WeakPtr.h:
2071         (WTF::WeakReference::create):
2072         (WTF::WeakReference::createUnbound):
2073         (WTF::WeakPtr::WeakPtr):
2074         (WTF::WeakPtrFactory::WeakPtrFactory):
2075         * wtf/text/AtomicString.cpp:
2076         (WTF::AtomicString::add):
2077         (WTF::findString):
2078         * wtf/text/StringConcatenate.h:
2079         * wtf/text/StringImpl.h:
2080         * wtf/text/StringOperators.h:
2081         (WTF::operator+):
2082
2083 2013-10-18  Brendan Long  <b.long@cablelabs.com>
2084
2085         [GStreamer][GTK] Add GRefPtr::outPtr()
2086         https://bugs.webkit.org/show_bug.cgi?id=122996
2087
2088         Reviewed by Philippe Normand.
2089
2090         * wtf/gobject/GRefPtr.h:
2091         (WTF::GRefPtr::outPtr): Added.
2092
2093 2013-10-17  Geoffrey Garen  <ggaren@apple.com>
2094
2095         Tidied up the Vector<T> move constructor
2096         https://bugs.webkit.org/show_bug.cgi?id=122998
2097
2098         Reviewed by Anders Carlsson.
2099
2100         * wtf/Vector.h:
2101         (WTF::::Vector): Don't call swap() "weird". It's the way most std types
2102         implement move constructors.
2103
2104         Do inline this function, so the compiler can optimize away a logical
2105         move into a physical no-op.
2106
2107 2013-10-16  Filip Pizlo  <fpizlo@apple.com>
2108
2109         Introduce WTF::Bag and start using it for InlineCallFrameSet
2110         https://bugs.webkit.org/show_bug.cgi?id=122941
2111
2112         Reviewed by Geoffrey Garen.
2113         
2114         Introduce WTF::Bag, which is basically an allocation pool. No POD restrictions. Does one
2115         malloc per entry. No need to shrink afterwards.
2116
2117         * GNUmakefile.list.am:
2118         * WTF.vcxproj/WTF.vcxproj:
2119         * WTF.xcodeproj/project.pbxproj:
2120         * wtf/Bag.h: Added.
2121         (WTF::Bag::Bag):
2122         (WTF::Bag::~Bag):
2123         (WTF::Bag::add):
2124         (WTF::Bag::iterator::iterator):
2125         (WTF::Bag::iterator::operator!):
2126         (WTF::Bag::iterator::operator*):
2127         (WTF::Bag::iterator::operator++):
2128         (WTF::Bag::iterator::operator==):
2129         (WTF::Bag::begin):
2130         (WTF::Bag::end):
2131         (WTF::Bag::isEmpty):
2132         * wtf/CMakeLists.txt:
2133
2134 2013-10-17  Andreas Kling  <akling@apple.com>
2135
2136         Make it possible to assign a PassRef to a RefPtr.
2137         <https://webkit.org/b/122943>
2138
2139         We have to use std::move when constructing a RefPtr from a PassRef
2140         since there is no copy constructor for the latter.
2141
2142         Reviewed by Antti Koivisto.
2143
2144 2013-10-16  Ryuan Choi  <ryuan.choi@samsung.com>
2145
2146         Unreviewed build fix attempt on EFL port after r157520 and r157523
2147
2148         * wtf/PassRef.h: includes <utility>
2149
2150 2013-10-16  Darin Adler  <darin@apple.com>
2151
2152         Add PassRef and createRefCounted so we can improve creation of RefCounted objects
2153         https://bugs.webkit.org/show_bug.cgi?id=122904
2154
2155         Reviewed by Anders Carlsson.
2156
2157         * GNUmakefile.list.am: Added PassRef.h.
2158         * WTF.vcxproj/WTF.vcxproj: Ditto.
2159         * WTF.vcxproj/WTF.vcxproj.filters: Ditto.
2160         * WTF.xcodeproj/project.pbxproj: Ditto.
2161         * wtf/CMakeLists.txt: Ditto.
2162
2163         * wtf/Forward.h: Added PassRef. Also re-sorted and un-indented to match what
2164         the style-checking script expects.
2165
2166         * wtf/PassRef.h: Added. Includes the createRefCounted function template, which
2167         is analogous to make_unique, but is for reference counted objects, and also
2168         assumes that new will never return null. Also includes an overload of adoptRef
2169         that takes a reference rather than a pointer.
2170
2171         * wtf/PassRefPtr.h: Include "PassRef.h" so we can share the adopted function.
2172         Got rid of declarations that duplicate ones in there.
2173         (WTF::refIfNotNull): Use nullptr.
2174         (WTF::derefIfNotNull): Use nullptr.
2175         (WTF::PassRefPtr::PassRefPtr): Use nullptr. Added an overload that takes a PassRef.
2176         (WTF::PassRefPtr::operator UnspecifiedBoolType): Use nullptr.
2177         (WTF::PassRefPtr::operator=): Made this deleted instead of compile time assertion.
2178         (WTF::PassRefPtr::PassRefPtr): Made adopting constructor use an adopt tag instead
2179         of an unused boolean.
2180         (WTF::PassRefPtr::leakRef): Use nullptr.
2181         (WTF::adoptRef): Use the adopt tag.
2182
2183         * wtf/Ref.h: Use Noncopyable instead of rolling our own.
2184         (WTF::Ref::Ref): Add an overload that takes a PassRef.
2185         (WTF::Ref::operator=): Ditto.
2186
2187         * wtf/RefPtr.h: Removed unneeded forward declaration of PassRefPtr.
2188         (WTF::RefPtr::RefPtr): Use nullptr. Added overload that takes a PassRef.
2189         (WTF::RefPtr::release): Use nullptr.
2190         (WTF::RefPtr::operator UnspecifiedBoolType): Use nullptr.
2191         (WTF::RefPtr::operator=): Added overload that takes a PassRef.
2192         (WTF::RefPtr::clear): Use nullptr.
2193
2194         * wtf/StdLibExtras.h: Added inline keyword to isPointerTypeAlignmentOkay,
2195         reinterpret_cast_ptr, and make_unique. Seems like a simple oversight that these
2196         were missing before.
2197
2198 2013-10-15  Dean Jackson  <dino@apple.com>
2199
2200         Add ENABLE_WEB_ANIMATIONS flag
2201         https://bugs.webkit.org/show_bug.cgi?id=122871
2202
2203         Reviewed by Tim Horton.
2204
2205         Eventually might be http://dev.w3.org/fxtf/web-animations/
2206         but this is just engine-internal work at the moment.
2207
2208         * wtf/FeatureDefines.h:
2209
2210 2013-10-15  Daniel Bates  <dabates@apple.com>
2211
2212         [iOS] Upstream JavaScriptCore support for ARM64
2213         https://bugs.webkit.org/show_bug.cgi?id=122762
2214
2215         Reviewed by Oliver Hunt.
2216
2217         * Configurations/Base.xcconfig:
2218         * wtf/Atomics.h:
2219         (WTF::weakCompareAndSwap):
2220         (WTF::armV7_dmb):
2221         * wtf/FastMalloc.cpp:
2222         * wtf/Platform.h:
2223         * wtf/dtoa.cpp:
2224         * wtf/dtoa/utils.h:
2225         * wtf/text/ASCIIFastPath.h:
2226         (WTF::copyLCharsFromUCharSource):
2227         * wtf/text/StringImpl.h:
2228
2229 2013-10-14  Zan Dobersek  <zdobersek@igalia.com>
2230
2231         Static assertions in WTF::adoptPtr should point to using adoptRef for ref-counted objects
2232         https://bugs.webkit.org/show_bug.cgi?id=122745
2233
2234         Reviewed by Anders Carlsson.
2235
2236         * wtf/PassOwnPtr.h:
2237         (WTF::adoptPtr): When the object's type is convertible to the RefCountedBase or ThreadSafeRefCountedBase type,
2238         the static assertion should note that adoptRef should be used instead.
2239
2240 2013-10-14  Anders Carlsson  <andersca@apple.com>
2241
2242         WebKit Nightlies broken by r157374
2243         https://bugs.webkit.org/show_bug.cgi?id=122736
2244
2245         Reviewed by Andreas Kling.
2246
2247         Add back a callOnMainThread overload that Safari is using.
2248
2249         * wtf/MainThread.cpp:
2250         (WTF::callOnMainThread):
2251         * wtf/MainThread.h:
2252
2253 2013-10-13  Darin Adler  <darin@apple.com>
2254
2255         Deprecate or remove deleteAllValues functions; there are only a few call sites left
2256         https://bugs.webkit.org/show_bug.cgi?id=122738
2257
2258         Reviewed by Anders Carlsson.
2259
2260         * wtf/Deque.h: Deleted deleteAllValues.
2261         * wtf/HashMap.h: Ditto.
2262         * wtf/HashSet.h: Ditto.
2263         * wtf/ListHashSet.h: Ditto.
2264         * wtf/Vector.h: Renamed deleteAllValues to deprecatedDeleteAllValues.
2265
2266 == Rolled over to ChangeLog-2013-10-13 ==