Make remaining StringImpl functions return PassRef.
[WebKit-https.git] / Source / WTF / ChangeLog
1 2013-11-02  Andreas Kling  <akling@apple.com>
2
3         Make remaining StringImpl functions return PassRef.
4         <https://webkit.org/b/123683>
5
6         Okay, this seems to work well! Let's go all in and convert the
7         remaining StringImpl functions to return PassRef<StringImpl> instead
8         of PassRefPtr where we know that null is never returned.
9
10         Reviewed by Anders Carlsson.
11
12 2013-11-02  Andreas Kling  <akling@apple.com>
13
14         StringImpl::upper() should return PassRef.
15         <https://webkit.org/b/123655>
16
17         Make upper() return PassRef<StringImpl>. Spotted and removed some
18         ref churning in implementations.
19
20         Reviewed by Darin Adler.
21
22 2013-11-01  Alexey Proskuryakov  <ap@apple.com>
23
24         Add WebCrypto AES-CBC
25         https://bugs.webkit.org/show_bug.cgi?id=123647
26
27         Reviewed by Anders Carlsson.
28
29         * wtf/FixedArray.h: (WTF::FixedArray::data): Added a const version of the function.
30
31         * wtf/Vector.h: Added a comment to Vector constructor about how it is different
32         from std::vector.
33
34 2013-11-01  Joseph Pecoraro  <pecoraro@apple.com>
35
36         Unreviewed extended attempt at Windows build fix after r158471.
37
38         * wtf/text/cf/AtomicStringCF.cpp:
39         * wtf/text/cf/StringCF.cpp:
40         * wtf/text/cf/StringImplCF.cpp:
41
42 2013-11-01  Joseph Pecoraro  <pecoraro@apple.com>
43
44         Unreviewed attempt at Windows build fix after r158471.
45
46         * wtf/text/cf/AtomicStringCF.cpp:
47         * wtf/text/cf/StringCF.cpp:
48         * wtf/text/cf/StringImplCF.cpp:
49
50 2013-11-01  Andreas Kling  <akling@apple.com>
51
52         Make more StringImpl construction helpers return PassRef.
53         <https://webkit.org/b/123652>
54
55         Tweak another handful of StringImpl constructor functions to return
56         PassRef<StringImpl> instead of PassRefPtr.
57
58         Reviewed by Anders Carlsson.
59
60 2013-11-01  Andreas Kling  <akling@apple.com>
61
62         Neuter WTF_MAKE_FAST_ALLOCATED in GLOBAL_FASTMALLOC_NEW builds.
63         <https://webkit.org/b/123639>
64
65         When building with GLOBAL_FASTMALLOC_NEW, we don't need to expand
66         operator new/delete overrides in every class.
67
68         This change makes allocations group up nicely in Instruments,
69         instead of being split between "WTF::fastMalloc" and "operator new"
70         depending on whether the class had WTF_MAKE_FAST_ALLOCATED.
71
72         Reviewed by Anders Carlsson.
73
74 2013-11-01  Joseph Pecoraro  <pecoraro@apple.com>
75
76         Move CF/Mac WTF String implementations down into WTF
77         https://bugs.webkit.org/show_bug.cgi?id=123635
78
79         Reviewed by Sam Weinig.
80
81         * WTF.vcxproj/WTF.vcxproj:
82         * WTF.vcxproj/WTF.vcxproj.filters:
83         * WTF.xcodeproj/project.pbxproj:
84         * wtf/text/AtomicString.h:
85         * wtf/text/StringImpl.h:
86         * wtf/text/WTFString.h:
87         * wtf/text/cf/AtomicStringCF.cpp: Renamed from Source/WebCore/platform/text/cf/AtomicStringCF.cpp.
88         (WTF::AtomicString::add):
89         * wtf/text/cf/StringCF.cpp: Renamed from Source/WebCore/platform/text/cf/StringCF.cpp.
90         (WTF::String::String):
91         (WTF::String::createCFString):
92         * wtf/text/cf/StringImplCF.cpp: Renamed from Source/WebCore/platform/text/cf/StringImplCF.cpp.
93         (garbageCollectionEnabled):
94         (WTF::StringWrapperCFAllocator::retain):
95         (WTF::StringWrapperCFAllocator::release):
96         (WTF::StringWrapperCFAllocator::copyDescription):
97         (WTF::StringWrapperCFAllocator::allocate):
98         (WTF::StringWrapperCFAllocator::reallocate):
99         (WTF::StringWrapperCFAllocator::deallocateOnMainThread):
100         (WTF::StringWrapperCFAllocator::deallocate):
101         (WTF::StringWrapperCFAllocator::preferredSize):
102         (WTF::StringWrapperCFAllocator::create):
103         (WTF::StringWrapperCFAllocator::allocator):
104         (WTF::StringImpl::createCFString):
105         * wtf/text/mac/StringImplMac.mm: Renamed from Source/WebCore/platform/text/mac/StringImplMac.mm.
106         (WTF::StringImpl::operator NSString *):
107         * wtf/text/mac/StringMac.mm: Renamed from Source/WebCore/platform/text/mac/StringMac.mm.
108         (WTF::String::String):
109
110 2013-11-01  Emilio Pozuelo Monfort  <pochu27@gmail.com>
111
112         HPPA build fixes
113         https://bugs.webkit.org/show_bug.cgi?id=123625
114
115         Original patch from John David Anglin <dave.anglin@bell.net>
116
117         Reviewed by Darin Adler.
118
119         * wtf/Platform.h:
120         * wtf/dtoa/utils.h:
121
122 2013-11-01  Patrick Gansterer  <paroga@webkit.org>
123
124         Buildfix for !USE(ICU_UNICODE) after 156968.
125
126         * wtf/unicode/CollatorDefault.cpp:
127         (WTF::Collator::userDefault):
128
129 2013-10-30  Oliver Hunt  <oliver@apple.com>
130
131         Implement basic ES6 Math functions
132         https://bugs.webkit.org/show_bug.cgi?id=123536
133
134         Reviewed by Michael Saboff.
135
136         Add basic implementations of necessary methods to MathExtras to
137         deal with MSVC not supplying them
138
139         * wtf/MathExtras.h:
140         (asinh):
141         (acosh):
142         (atanh):
143         (expm1):
144         (log1p):
145         (cbrt):
146
147 2013-10-30  Commit Queue  <commit-queue@webkit.org>
148
149         Unreviewed, rolling out r158299.
150         http://trac.webkit.org/changeset/158299
151         https://bugs.webkit.org/show_bug.cgi?id=123558
152
153         caused assertion failures in fast/canvas/canvas-color-
154         serialization.html and fast/forms/input-text-paste-
155         maxlength.html (Requested by rniwa on #webkit).
156
157         * wtf/text/StringStatics.cpp:
158         (WTF::StringImpl::empty):
159
160 2013-10-30  Ryosuke Niwa  <rniwa@webkit.org>
161
162         Remove code for Mac Lion
163         https://bugs.webkit.org/show_bug.cgi?id=123542
164
165         Reviewed by Anders Carlsson.
166
167         * wtf/Platform.h:
168
169 2013-10-30  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
170
171         Remove PCRE workaround.
172         https://bugs.webkit.org/show_bug.cgi?id=123265
173
174         Reviewed by Brent Fulgham.
175
176         * wtf/text/StringStatics.cpp:
177         (WTF::StringImpl::empty):
178
179 2013-10-30  peavo@outlook.com  <peavo@outlook.com>
180
181         [Win] Compile errors when enabling DFG JIT.
182         https://bugs.webkit.org/show_bug.cgi?id=120998
183
184         Reviewed by Brent Fulgham.
185
186         * wtf/CompilationThread.cpp: Use new ThreadingOnce class instead of pthread_once.
187         (WTF::initializeCompilationThreads):
188         * wtf/ThreadingOnce.h: Added ThreadingOnce class encapsulating pthread_once functionality.
189         (WTF::ThreadingOnce::ThreadingOnce):
190         (WTF::ThreadingOnce::~ThreadingOnce):
191         (WTF::ThreadingOnce::callOnce):
192         * wtf/text/CString.h: Export needed symbols.
193
194 2013-10-30  Alex Christensen  <achristensen@webkit.org>
195
196         Disabled JIT on Win64.
197         https://bugs.webkit.org/show_bug.cgi?id=122472
198
199         Reviewed by Geoffrey Garen.
200
201         * wtf/Platform.h:
202         Disabled JIT on Win64.
203
204 2013-10-29  Andreas Kling  <akling@apple.com>
205
206         StringImpl::isolatedCopy() should return PassRef.
207         <https://webkit.org/b/123484>
208
209         Make isolatedCopy() return a PassRef<StringImpl>.
210
211         Reviewed by Anders Carlsson.
212
213 2013-10-29  Jer Noble  <jer.noble@apple.com>
214
215         [MSE] [Mac] Enable MediaSource on the Mac
216         https://bugs.webkit.org/show_bug.cgi?id=122484
217
218         Reviewed by Darin Adler.
219
220         Enable ENABLE_MEDIA_SOURCE.
221
222         * wtf/FeatureDefines.h:
223         * wtf/Platform.h: Force a clean build.
224
225 2013-10-29  Andreas Kling  <akling@apple.com>
226
227         StringImpl::adopt() should return PassRef.
228         <https://webkit.org/b/123456>
229
230         Make the StringImpl::adopt() functions return a PassRef<StringImpl>.
231
232         Reviewed by Anders Carlsson.
233
234 2013-10-29  Jinwoo Song  <jinwoo7.song@samsung.com>
235
236         Re-enable simple line layout for EFL
237         https://bugs.webkit.org/show_bug.cgi?id=123402
238
239         Reviewed by Antti Koivisto.
240
241         * wtf/FeatureDefines.h: Enable 8-bit TextRun support for EFL port.
242
243 2013-10-28  Anders Carlsson  <andersca@apple.com>
244
245         RunLoop::dispatch should take an std::function
246         https://bugs.webkit.org/show_bug.cgi?id=123407
247
248         Reviewed by Andreas Kling.
249
250         * wtf/FunctionDispatcher.h:
251
252 2013-10-28  Andreas Kling  <akling@apple.com>
253
254         RenderElement::m_style should be a Ref.
255         <https://webkit.org/b/123401>
256
257         Added a Ref::replace() so we can Indiana Jones the new style in
258         RenderElement::setStyle() while keeping a handle on the old style
259         for a while longer.
260
261         Reviewed by Antti Koivisto.
262
263 2013-10-28  Carlos Garcia Campos  <cgarcia@igalia.com>
264
265         Unreviewed. Fix make distcheck.
266
267         * GNUmakefile.list.am: Remove unexistent file from compilation.
268
269 2013-10-28  Bastien Nocera <hadess@hadess.net>
270
271         Replace 0 timeouts g_timeout_add() by g_idle_add()
272         https://bugs.webkit.org/show_bug.cgi?id=123260
273
274         Reviewed by Carlos Garcia Campos.
275
276         A zero timeout should be equivalent to using g_idle_add_full(G_PRIORITY_DEFAULT, ...)
277         without the nagging feeling that the wrong API was used.
278
279         * wtf/gtk/MainThreadGtk.cpp: Use g_idle_add() instead
280         of 0-timer.
281         (WTF::scheduleDispatchFunctionsOnMainThread):
282
283 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
284
285         Re-enable simple line layout for GTK
286         https://bugs.webkit.org/show_bug.cgi?id=123388
287
288         Reviewed by Andreas Kling.
289
290         * wtf/FeatureDefines.h: Enable the 8-bit TextRun support for the GTK port.
291
292 2013-10-25  Joseph Pecoraro  <pecoraro@apple.com>
293
294         Upstream ENABLE(REMOTE_INSPECTOR) and enable on iOS and Mac
295         https://bugs.webkit.org/show_bug.cgi?id=123111
296
297         Reviewed by Timothy Hatcher.
298
299         * wtf/FeatureDefines.h:
300
301 2013-10-25  Jer Noble  <jer.noble@apple.com>
302
303         [WTF] Add a multiplication operator (and a few others) to MediaTime
304         https://bugs.webkit.org/show_bug.cgi?id=123137
305
306         Reviewed by Eric Carlson.
307
308         Add a multiplication operator and an inequality operator to the
309         MediaTime class for use by MSE.
310
311         * wtf/MediaTime.cpp:
312         (WTF::signum): Moved to top of file.
313         (WTF::MediaTime::operator*): Added.
314         (WTF::MediaTime::operator!=): Added.
315         * wtf/MediaTime.h:
316         (WTF::operator*): Added non-class version of operator*.
317
318 2013-10-24  Jer Noble  <jer.noble@apple.com>
319
320         [Mac] Add helper methods to convert CMTime <--> MediaTime
321         https://bugs.webkit.org/show_bug.cgi?id=123285
322
323         Reviewed by Eric Carlson.
324
325         Add a #ifdef header_h protector.
326
327         * wtf/MediaTime.h:
328
329 2013-10-24  Mark Rowe  <mrowe@apple.com>
330
331         Remove references to OS X 10.7 from Xcode configuration settings.
332
333         Now that we're not building for OS X 10.7 they're no longer needed.
334
335         Reviewed by Anders Carlsson.
336
337         * Configurations/Base.xcconfig:
338         * Configurations/DebugRelease.xcconfig:
339
340 2013-10-24  Mark Rowe  <mrowe@apple.com>
341
342         <rdar://problem/15312643> Prepare for the mysterious future.
343
344         Reviewed by David Kilzer.
345
346         * Configurations/Base.xcconfig:
347         * Configurations/DebugRelease.xcconfig:
348
349 2013-10-24  Commit Queue  <commit-queue@webkit.org>
350
351         Unreviewed, rolling out r157931.
352         http://trac.webkit.org/changeset/157931
353         https://bugs.webkit.org/show_bug.cgi?id=123284
354
355         Seems to have caused a lot of assertions on debug bots
356         (Requested by ap on #webkit).
357
358         * wtf/text/StringStatics.cpp:
359         (WTF::StringImpl::empty):
360
361 2013-10-24  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
362
363         Remove PCRE workaround.
364         https://bugs.webkit.org/show_bug.cgi?id=123265
365
366         Reviewed by Darin Adler.
367
368         * wtf/text/StringStatics.cpp:
369         (WTF::StringImpl::empty):
370
371 2013-10-24  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
372
373         Remove Clang workaround.
374         https://bugs.webkit.org/show_bug.cgi?id=123262
375
376         Reviewed by Anders Carlsson.
377
378         * wtf/CheckedArithmetic.h:
379         (WTF::Checked::Checked):
380
381 2013-10-24  Ryuan Choi  <ryuan.choi@samsung.com>
382
383         [EFL] Build break with latest EFL 1.8 libraries.
384         https://bugs.webkit.org/show_bug.cgi?id=123245
385
386         Reviewed by Gyuyoung Kim.
387
388         After fixed build break on EFL 1.8 at r138326, EFL libraries are changed
389         Eo typedef and splitted header files which contain version macro.
390
391         * wtf/OwnPtrCommon.h: Changed Eo typedef.
392         * wtf/efl/RefPtrEfl.h: Ditto.
393
394 2013-10-24  Carlos Garcia Campos  <cgarcia@igalia.com>
395
396         [GObject bindings] Make EventTarget interface introspectable
397         https://bugs.webkit.org/show_bug.cgi?id=77835
398
399         Reviewed by Gustavo Noronha Silva.
400
401         Add support for use GRefPtr with GClosure.
402
403         * wtf/gobject/GRefPtr.cpp:
404         (WTF::refGPtr):
405         (WTF::derefGPtr):
406         * wtf/gobject/GRefPtr.h:
407         * wtf/gobject/GTypedefs.h:
408
409 2013-10-23  Anders Carlsson  <andersca@apple.com>
410
411         Remove USE(LOCKFREE_THREADSAFEREFCOUNTED)
412         https://bugs.webkit.org/show_bug.cgi?id=123228
413
414         Reviewed by Geoffrey Garen.
415
416         All ports support USE(LOCKFREE_THREADSAFEREFCOUNTED) now and taking a lock on every ref/deref seems bad.
417
418         * wtf/Atomics.h:
419         * wtf/ThreadSafeRefCounted.h:
420         (WTF::ThreadSafeRefCountedBase::ref):
421         (WTF::ThreadSafeRefCountedBase::refCount):
422         (WTF::ThreadSafeRefCountedBase::derefBase):
423
424 2013-10-23  Anders Carlsson  <andersca@apple.com>
425
426         Remove HAVE_XPC
427         https://bugs.webkit.org/show_bug.cgi?id=123226
428
429         Reviewed by Dan Bernstein.
430
431         HAVE_XPC has been true on Mac since Lion, so remove it.
432
433         * wtf/Platform.h:
434
435 2013-10-23  Andreas Kling  <akling@apple.com>
436
437         Make more StringImpl construction functions return PassRef.
438         <https://webkit.org/b/123203>
439
440         Knock out a couple more of the StringImpl construction helpers that
441         always return a non-null StringImpl.
442
443         Reviewed by Antti Koivisto.
444
445 2013-10-22  Filip Pizlo  <fpizlo@apple.com>
446
447         FTL should be able to do some simple inline caches using LLVM patchpoints
448         https://bugs.webkit.org/show_bug.cgi?id=123164
449
450         Reviewed by Mark Hahnenberg.
451         
452         This needed some better bitvector support, like merging (|=), excluding (&=~),
453         hashing, and bit counting.
454
455         * wtf/BitVector.cpp:
456         (WTF::BitVector::setSlow):
457         (WTF::BitVector::excludeSlow):
458         (WTF::BitVector::bitCountSlow):
459         (WTF::BitVector::equalsSlowCase):
460         (WTF::BitVector::hashSlowCase):
461         (WTF::BitVector::dump):
462         * wtf/BitVector.h:
463         (WTF::BitVector::merge):
464         (WTF::BitVector::exclude):
465         (WTF::BitVector::bitCount):
466         (WTF::BitVector::BitVector):
467         (WTF::BitVector::isEmptyValue):
468         (WTF::BitVector::isDeletedValue):
469         (WTF::BitVector::isEmptyOrDeletedValue):
470         (WTF::BitVector::operator==):
471         (WTF::BitVector::hash):
472         (WTF::BitVectorHash::hash):
473         (WTF::BitVectorHash::equal):
474         * wtf/HashTraits.h:
475         (WTF::CustomHashTraits::constructDeletedValue):
476         (WTF::CustomHashTraits::isDeletedValue):
477         (WTF::CustomHashTraits::emptyValue):
478         (WTF::CustomHashTraits::isEmptyValue):
479         * wtf/StdLibExtras.h:
480         (WTF::bitCount):
481
482 2013-10-23  Allan Sandfeld Jensen  <allan.jensen@digia.com>
483
484         Clean-up in Atomics.h
485         https://bugs.webkit.org/show_bug.cgi?id=123207
486
487         Reviewed by Anders Carlsson.
488
489         Atomics.h has two confusing and bit-rotted ifdefs with comments.
490
491         The first about CPU(SPARC64) was rendered obsolete when we switched
492         from __exchange_and_add to __sync_add_and_fetch.
493
494         The second was caused by a wrong definition that apparently only
495         caused trouble on GCC.
496
497         * wtf/Atomics.h:
498
499 2013-10-22  Andreas Kling  <akling@apple.com>
500
501         StringImpl::lower() should return a PassRef.
502         <https://webkit.org/b/123190>
503
504         Test the waters and hack enough of StringImpl to be able to return
505         a PassRef<StringImpl> from lower().
506
507         Also gave String a constructor that takes a PassRef<StringImpl>.
508
509         Reviewed by Antti Koivisto.
510
511 2013-10-22  Commit Queue  <commit-queue@webkit.org>
512
513         Unreviewed, rolling out r157835.
514         http://trac.webkit.org/changeset/157835
515         https://bugs.webkit.org/show_bug.cgi?id=123192
516
517         broke 32-bit builds (Requested by smfr on #webkit).
518
519         * wtf/MediaTime.cpp:
520         (WTF::signum):
521         * wtf/MediaTime.h:
522
523 2013-10-22  Jer Noble  <jer.noble@apple.com>
524
525         [WTF] Add a multiplication operator (and a few others) to MediaTime
526         https://bugs.webkit.org/show_bug.cgi?id=123137
527
528         Reviewed by Eric Carlson.
529
530         Add a multiplication operator and an inequality operator to the
531         MediaTime class for use by MSE.
532
533         * wtf/MediaTime.cpp:
534         (WTF::signum): Moved to top of file.
535         (WTF::MediaTime::operator*): Added.
536         (WTF::MediaTime::operator!=): Added.
537         * wtf/MediaTime.h:
538         (WTF::operator*): Added non-class version of operator*.
539
540 2013-10-21  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
541
542         Make TYPE_CASTS_BASE more flexible
543         https://bugs.webkit.org/show_bug.cgi?id=122951
544
545         Reviewed by Andreas Kling.
546
547         TYPE_CASTS_BASE is being used by node|element type casts. However, it is difficult
548         to be used by other type casts. For instance, CSSValue, Accessibility and so on.
549         This patch modifies TYPE_CASTS_BASE which can support other type casts.
550
551         Besides TYPE_CASTS_BASE body is moved from node.h to Assertions.h.
552
553         * wtf/Assertions.h:
554
555 2013-10-20  Filip Pizlo  <fpizlo@apple.com>
556
557         StructureStubInfo's usedRegisters set should be able to track all registers, not just the ones that our JIT's view as temporaries
558         https://bugs.webkit.org/show_bug.cgi?id=123076
559
560         Reviewed by Sam Weinig.
561         
562         Teach BitVector how to efficiently merge (i.e. bitvector |=).
563
564         * wtf/BitVector.cpp:
565         (WTF::BitVector::mergeSlow):
566         * wtf/BitVector.h:
567         (WTF::BitVector::merge):
568         (WTF::BitVector::cleanseInlineBits):
569
570 2013-10-19  Jer Noble  <jer.noble@apple.com>
571
572         Unreviewed roll out of r157695; broke Mac builds.
573
574         * wtf/FeatureDefines.h:
575
576 2013-10-07  Jer Noble  <jer.noble@apple.com>
577
578         [MSE] [Mac] Enable MediaSource on the Mac
579         https://bugs.webkit.org/show_bug.cgi?id=122484
580
581         Reviewed by Darin Adler.
582
583         Enable ENABLE_MEDIA_SOURCE.
584
585         * wtf/FeatureDefines.h:
586
587 2013-10-19  Andreas Kling  <akling@apple.com>
588
589         RefPtr::releaseNonNull() incorrectly increments the refcount.
590         <https://webkit.org/b/123063>
591
592         Make releaseNonNull() use adoptRef(T&), mirroring release().
593
594         Reviewed by Anders Carlsson.
595
596 2013-10-18  Andreas Kling  <akling@apple.com>
597
598         Start passing RenderStyle around with PassRef.
599         <https://webkit.org/b/123051>
600
601         Added some new PassRef tricks to make this patch possible.
602
603         Reviewed by Darin Adler.
604
605         * wtf/PassRef.h:
606         (WTF::PassRef::get):
607
608             Added a get() helper to facilitate writing functions that
609             construct a new object and call some functions on it before
610             returning it.
611
612         (WTF::PassRef::dropRef):
613
614             This will deref() the referenced object and mark the PassRef
615             as "passed." This is used in code paths where the PassRef is
616             going to go out of scope with nobody to take it over.
617
618         (WTF::PassRef::leakRef):
619
620             Renamed takeReference() to leakRef() and made it public so
621             we don't have to awkwardly sink the PassRef into a Ref for
622             e.g static locals.
623
624         * wtf/RefPtr.h:
625         (WTF::RefPtr::releaseNonNull):
626
627             Added RefPtr::releaseNonNull() for a convenient way of creating
628             a PassRef<T> from a RefPtr<T>. This function may only be called
629             if the RefPtr is known to be non-null.
630
631 2013-10-18  Filip Pizlo  <fpizlo@apple.com>
632
633         A CodeBlock's StructureStubInfos shouldn't be in a Vector that we search using code origins and machine code PCs
634         https://bugs.webkit.org/show_bug.cgi?id=122940
635
636         Reviewed by Oliver Hunt.
637
638         * GNUmakefile.list.am:
639         * WTF.vcxproj/WTF.vcxproj:
640         * WTF.xcodeproj/project.pbxproj:
641         * wtf/BagToHashMap.h: Added.
642         (WTF::toHashMap):
643         * wtf/CMakeLists.txt:
644
645 2013-10-18  Anders Carlsson  <andersca@apple.com>
646
647         Remove spaces between template angle brackets
648         https://bugs.webkit.org/show_bug.cgi?id=123040
649
650         Reviewed by Andreas Kling.
651
652         * wtf/AVLTree.h:
653         * wtf/CheckedArithmetic.h:
654         * wtf/Compression.h:
655         * wtf/Functional.h:
656         (WTF::R):
657         * wtf/HashFunctions.h:
658         * wtf/HashIterators.h:
659         * wtf/HashSet.h:
660         (WTF::::contains):
661         * wtf/ListHashSet.h:
662         (WTF::::contains):
663         * wtf/RefCountedLeakCounter.cpp:
664         * wtf/RetainPtr.h:
665         * wtf/SentinelLinkedList.h:
666         (WTF::::remove):
667         * wtf/SizeLimits.cpp:
668         * wtf/StreamBuffer.h:
669         * wtf/Vector.h:
670         * wtf/VectorTraits.h:
671         * wtf/WeakPtr.h:
672         (WTF::WeakReference::create):
673         (WTF::WeakReference::createUnbound):
674         (WTF::WeakPtr::WeakPtr):
675         (WTF::WeakPtrFactory::WeakPtrFactory):
676         * wtf/text/AtomicString.cpp:
677         (WTF::AtomicString::add):
678         (WTF::findString):
679         * wtf/text/StringConcatenate.h:
680         * wtf/text/StringImpl.h:
681         * wtf/text/StringOperators.h:
682         (WTF::operator+):
683
684 2013-10-18  Brendan Long  <b.long@cablelabs.com>
685
686         [GStreamer][GTK] Add GRefPtr::outPtr()
687         https://bugs.webkit.org/show_bug.cgi?id=122996
688
689         Reviewed by Philippe Normand.
690
691         * wtf/gobject/GRefPtr.h:
692         (WTF::GRefPtr::outPtr): Added.
693
694 2013-10-17  Geoffrey Garen  <ggaren@apple.com>
695
696         Tidied up the Vector<T> move constructor
697         https://bugs.webkit.org/show_bug.cgi?id=122998
698
699         Reviewed by Anders Carlsson.
700
701         * wtf/Vector.h:
702         (WTF::::Vector): Don't call swap() "weird". It's the way most std types
703         implement move constructors.
704
705         Do inline this function, so the compiler can optimize away a logical
706         move into a physical no-op.
707
708 2013-10-16  Filip Pizlo  <fpizlo@apple.com>
709
710         Introduce WTF::Bag and start using it for InlineCallFrameSet
711         https://bugs.webkit.org/show_bug.cgi?id=122941
712
713         Reviewed by Geoffrey Garen.
714         
715         Introduce WTF::Bag, which is basically an allocation pool. No POD restrictions. Does one
716         malloc per entry. No need to shrink afterwards.
717
718         * GNUmakefile.list.am:
719         * WTF.vcxproj/WTF.vcxproj:
720         * WTF.xcodeproj/project.pbxproj:
721         * wtf/Bag.h: Added.
722         (WTF::Bag::Bag):
723         (WTF::Bag::~Bag):
724         (WTF::Bag::add):
725         (WTF::Bag::iterator::iterator):
726         (WTF::Bag::iterator::operator!):
727         (WTF::Bag::iterator::operator*):
728         (WTF::Bag::iterator::operator++):
729         (WTF::Bag::iterator::operator==):
730         (WTF::Bag::begin):
731         (WTF::Bag::end):
732         (WTF::Bag::isEmpty):
733         * wtf/CMakeLists.txt:
734
735 2013-10-17  Andreas Kling  <akling@apple.com>
736
737         Make it possible to assign a PassRef to a RefPtr.
738         <https://webkit.org/b/122943>
739
740         We have to use std::move when constructing a RefPtr from a PassRef
741         since there is no copy constructor for the latter.
742
743         Reviewed by Antti Koivisto.
744
745 2013-10-16  Ryuan Choi  <ryuan.choi@samsung.com>
746
747         Unreviewed build fix attempt on EFL port after r157520 and r157523
748
749         * wtf/PassRef.h: includes <utility>
750
751 2013-10-16  Darin Adler  <darin@apple.com>
752
753         Add PassRef and createRefCounted so we can improve creation of RefCounted objects
754         https://bugs.webkit.org/show_bug.cgi?id=122904
755
756         Reviewed by Anders Carlsson.
757
758         * GNUmakefile.list.am: Added PassRef.h.
759         * WTF.vcxproj/WTF.vcxproj: Ditto.
760         * WTF.vcxproj/WTF.vcxproj.filters: Ditto.
761         * WTF.xcodeproj/project.pbxproj: Ditto.
762         * wtf/CMakeLists.txt: Ditto.
763
764         * wtf/Forward.h: Added PassRef. Also re-sorted and un-indented to match what
765         the style-checking script expects.
766
767         * wtf/PassRef.h: Added. Includes the createRefCounted function template, which
768         is analogous to make_unique, but is for reference counted objects, and also
769         assumes that new will never return null. Also includes an overload of adoptRef
770         that takes a reference rather than a pointer.
771
772         * wtf/PassRefPtr.h: Include "PassRef.h" so we can share the adopted function.
773         Got rid of declarations that duplicate ones in there.
774         (WTF::refIfNotNull): Use nullptr.
775         (WTF::derefIfNotNull): Use nullptr.
776         (WTF::PassRefPtr::PassRefPtr): Use nullptr. Added an overload that takes a PassRef.
777         (WTF::PassRefPtr::operator UnspecifiedBoolType): Use nullptr.
778         (WTF::PassRefPtr::operator=): Made this deleted instead of compile time assertion.
779         (WTF::PassRefPtr::PassRefPtr): Made adopting constructor use an adopt tag instead
780         of an unused boolean.
781         (WTF::PassRefPtr::leakRef): Use nullptr.
782         (WTF::adoptRef): Use the adopt tag.
783
784         * wtf/Ref.h: Use Noncopyable instead of rolling our own.
785         (WTF::Ref::Ref): Add an overload that takes a PassRef.
786         (WTF::Ref::operator=): Ditto.
787
788         * wtf/RefPtr.h: Removed unneeded forward declaration of PassRefPtr.
789         (WTF::RefPtr::RefPtr): Use nullptr. Added overload that takes a PassRef.
790         (WTF::RefPtr::release): Use nullptr.
791         (WTF::RefPtr::operator UnspecifiedBoolType): Use nullptr.
792         (WTF::RefPtr::operator=): Added overload that takes a PassRef.
793         (WTF::RefPtr::clear): Use nullptr.
794
795         * wtf/StdLibExtras.h: Added inline keyword to isPointerTypeAlignmentOkay,
796         reinterpret_cast_ptr, and make_unique. Seems like a simple oversight that these
797         were missing before.
798
799 2013-10-15  Dean Jackson  <dino@apple.com>
800
801         Add ENABLE_WEB_ANIMATIONS flag
802         https://bugs.webkit.org/show_bug.cgi?id=122871
803
804         Reviewed by Tim Horton.
805
806         Eventually might be http://dev.w3.org/fxtf/web-animations/
807         but this is just engine-internal work at the moment.
808
809         * wtf/FeatureDefines.h:
810
811 2013-10-15  Daniel Bates  <dabates@apple.com>
812
813         [iOS] Upstream JavaScriptCore support for ARM64
814         https://bugs.webkit.org/show_bug.cgi?id=122762
815
816         Reviewed by Oliver Hunt.
817
818         * Configurations/Base.xcconfig:
819         * wtf/Atomics.h:
820         (WTF::weakCompareAndSwap):
821         (WTF::armV7_dmb):
822         * wtf/FastMalloc.cpp:
823         * wtf/Platform.h:
824         * wtf/dtoa.cpp:
825         * wtf/dtoa/utils.h:
826         * wtf/text/ASCIIFastPath.h:
827         (WTF::copyLCharsFromUCharSource):
828         * wtf/text/StringImpl.h:
829
830 2013-10-14  Zan Dobersek  <zdobersek@igalia.com>
831
832         Static assertions in WTF::adoptPtr should point to using adoptRef for ref-counted objects
833         https://bugs.webkit.org/show_bug.cgi?id=122745
834
835         Reviewed by Anders Carlsson.
836
837         * wtf/PassOwnPtr.h:
838         (WTF::adoptPtr): When the object's type is convertible to the RefCountedBase or ThreadSafeRefCountedBase type,
839         the static assertion should note that adoptRef should be used instead.
840
841 2013-10-14  Anders Carlsson  <andersca@apple.com>
842
843         WebKit Nightlies broken by r157374
844         https://bugs.webkit.org/show_bug.cgi?id=122736
845
846         Reviewed by Andreas Kling.
847
848         Add back a callOnMainThread overload that Safari is using.
849
850         * wtf/MainThread.cpp:
851         (WTF::callOnMainThread):
852         * wtf/MainThread.h:
853
854 2013-10-13  Darin Adler  <darin@apple.com>
855
856         Deprecate or remove deleteAllValues functions; there are only a few call sites left
857         https://bugs.webkit.org/show_bug.cgi?id=122738
858
859         Reviewed by Anders Carlsson.
860
861         * wtf/Deque.h: Deleted deleteAllValues.
862         * wtf/HashMap.h: Ditto.
863         * wtf/HashSet.h: Ditto.
864         * wtf/ListHashSet.h: Ditto.
865         * wtf/Vector.h: Renamed deleteAllValues to deprecatedDeleteAllValues.
866
867 == Rolled over to ChangeLog-2013-10-13 ==