4ad0b5743158582c858d9a3f8bb8a0a9a22b2efd
[WebKit-https.git] / Source / WTF / ChangeLog
1 2014-09-15  peavo@outlook.com  <peavo@outlook.com>
2
3         [WinCairo] Make it easier to enable/disable GStreamer.
4         https://bugs.webkit.org/show_bug.cgi?id=135766
5
6         Reviewed by Brent Fulgham.
7
8         Make it possible to enable/disable GStreamer by editing the new user macro ENABLE_GSTREAMER_WINCAIRO.
9
10         * WTF.vcxproj/WTFDebugWinCairo.props: Import GStreamer property file.
11         * WTF.vcxproj/WTFReleaseWinCairo.props: Ditto.
12         * wtf/Platform.h: Enable GStreamer if ENABLE(GSTREAMER_WINCAIRO) is true, otherwise use Media Foundation.
13
14 2014-09-10  Jon Honeycutt  <jhoneycutt@apple.com>
15
16         Re-add the request autocomplete feature
17
18         <https://bugs.webkit.org/show_bug.cgi?id=136730>
19
20         This feature was rolled out in r148731 because it was only used by
21         Chromium. As we consider supporting this feature, roll it back in, but
22         leave it disabled.
23
24         This rolls out r148731 (which removed the feature) with small changes
25         needed to make the code build in ToT, to make the tests run, and to
26         remove unused code.
27
28         Reviewed by Andy Estes.
29
30         * wtf/FeatureDefines.h:
31
32 2014-09-12  Tim Horton  <timothy_horton@apple.com>
33
34         Swiping back from a Twitter image to Twitter flashes to the wrong position
35         https://bugs.webkit.org/show_bug.cgi?id=136798
36         <rdar://problem/18324338>
37
38         Reviewed by Darin Adler and Sam Weinig.
39
40         * wtf/RunLoop.h:
41         (WTF::RunLoop::TimerBase::startRepeating):
42         Add a std::chrono veresion of RunLoop::TimerBase::startRepeating.
43
44 2014-09-12  Geoffrey Garen  <ggaren@apple.com>
45
46         Rolled out r173540.
47
48         It broke the Membuster performance bot, and it's still slightly profligate
49         with memory.
50
51             Do the bmalloc.
52             https://bugs.webkit.org/show_bug.cgi?id=132629
53
54         * wtf/FastMalloc.cpp:
55
56 2014-09-11  Geoffrey Garen  <ggaren@apple.com>
57
58         Do the bmalloc.
59         https://bugs.webkit.org/show_bug.cgi?id=132629
60
61         Reviewed by Michael Saboff.
62
63         64-bit only for now, just to try it out.
64
65         * wtf/FastMalloc.cpp:
66
67 2014-09-09  Benjamin Poulain  <bpoulain@apple.com>
68
69         Disable the "unreachable-code" warning
70         https://bugs.webkit.org/show_bug.cgi?id=136677
71
72         Reviewed by Darin Adler.
73
74         The warning causes various build errors depending on which Clang you are using.
75
76         For example, with recent clangs, it breaks all the ARCHS dependent code like this:
77             if (sizeof(uintptr_t) == 4)
78                 // Something for 32 bits.
79             else
80                 // Somethign for 64 bits.
81
82         * Configurations/Base.xcconfig:
83
84 2014-09-07  Filip Pizlo  <fpizlo@apple.com>
85
86         DFG should have a reusable SSA builder
87         https://bugs.webkit.org/show_bug.cgi?id=136331
88
89         Reviewed by Oliver Hunt.
90         
91         Update the alloc() method to use variadic templates. This makes it more natural to use.
92
93         * wtf/SegmentedVector.h:
94         (WTF::SegmentedVector::alloc):
95
96 2014-09-08  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
97
98         Remove FILTERS flag
99         https://bugs.webkit.org/show_bug.cgi?id=136571
100
101         Reviewed by Darin Adler.
102
103         * wtf/FeatureDefines.h:
104
105 2014-09-08  Dan Bernstein  <mitz@apple.com>
106
107         HAVE(VOUCHERS) is not available outside of WebKit2
108         https://bugs.webkit.org/show_bug.cgi?id=136637
109
110         Reviewed by Tim Horton.
111
112         * wtf/Platform.h: Moved the definition of HAVE_VOUCHERS from WebKit2’s config.h here.
113
114 2014-09-08  Tim Horton  <timothy_horton@apple.com>
115
116         Try to fix the build after r173383, part 2.
117
118         * wtf/OSObjectPtr.h:
119
120 2014-09-08  Tim Horton  <timothy_horton@apple.com>
121
122         Try to fix the build after r173383.
123
124         * wtf/OSObjectPtr.h:
125
126 2014-09-07  Sam Weinig  <sam@webkit.org>
127
128         Make OSObjectPtr a bit more like RefPtr
129         https://bugs.webkit.org/show_bug.cgi?id=136613
130
131         Reviewed by Darin Adler.
132
133         Address some of Darin's feedback by:
134         - Making the adopting constructor private and friending adoptOSObject().
135         - Implementing the assignment operator using swap.
136         - Adding a move assignment operator.
137
138         * wtf/OSObjectPtr.h:
139         (WTF::OSObjectPtr::operator=):
140         (WTF::OSObjectPtr::swap):
141         (WTF::OSObjectPtr::OSObjectPtr):
142
143 2014-09-08  Jessie Berlin  <jberlin@apple.com>
144
145         More build fixes after r173374.
146
147         * wtf/dtoa/strtod.cc:
148
149 2014-09-08  Jessie Berlin  <jberlin@apple.com>
150
151         Build fix after r173374.
152
153         * wtf/dtoa/strtod.cc:
154
155 2014-09-08  Jessie Berlin  <jberlin@apple.com>
156
157         Speculative build fix after r173364.
158
159         * wtf/dtoa/strtod.cc:
160
161 2014-09-07  Maciej Stachowiak  <mjs@apple.com>
162
163         Introduce COMPILER_QUIRK(CONSIDERS_UNREACHABLE_CODE) and use it
164         https://bugs.webkit.org/show_bug.cgi?id=136616
165
166         Reviewed by Darin Adler.
167
168         * wtf/Compiler.h: Define the quirk for all compilers but clang.
169
170 2014-09-06  Sam Weinig  <sam@webkit.org>
171
172         XPCPtr should be converted into an all purpose smart pointer for os_objects
173         https://bugs.webkit.org/show_bug.cgi?id=136602
174
175         Reviewed by Darin Adler.
176
177         * WTF.xcodeproj/project.pbxproj:
178         * wtf/OSObjectPtr.h: Copied from Source/WebKit2/Platform/IPC/mac/XPCPtr.h.
179         (WTF::retainOSObject):
180         (WTF::releaseOSObject):
181         (WTF::OSObjectPtr::OSObjectPtr):
182         (WTF::OSObjectPtr::~OSObjectPtr):
183         (WTF::OSObjectPtr::operator=):
184         (WTF::adoptOSObject):
185         (IPC::XPCPtr::XPCPtr): Deleted.
186         (IPC::XPCPtr::~XPCPtr): Deleted.
187         (IPC::XPCPtr::operator=): Deleted.
188         (IPC::adoptXPC): Deleted.
189         Rename/move XPCPtr to OSObjectPtr and make it work with any os_object.
190
191 2014-09-06  Darin Adler  <darin@apple.com>
192
193         Make updates suggested by new version of Xcode
194         https://bugs.webkit.org/show_bug.cgi?id=136603
195
196         Reviewed by Mark Rowe.
197
198         * Configurations/Base.xcconfig: Added CLANG_WARN_UNREACHABLE_CODE,
199         COMBINE_HIDPI_IMAGES, and ENABLE_STRICT_OBJC_MSGSEND as suggested by
200         Xcode upgrade check.
201
202         * WTF.xcodeproj/project.pbxproj: Updated LastUpgradeCheck.
203
204 2014-09-05  Geoffrey Garen  <ggaren@apple.com>
205
206         bmalloc should honor the FastMalloc statistics API
207         https://bugs.webkit.org/show_bug.cgi?id=136592
208
209         Reviewed by Gavin Barraclough.
210
211         * wtf/FastMalloc.cpp:
212         (WTF::fastMallocStatistics):
213
214 2014-09-05  Geoffrey Garen  <ggaren@apple.com>
215
216         bmalloc should honor the FastMalloc scavenging API
217         https://bugs.webkit.org/show_bug.cgi?id=136588
218
219         Reviewed by Andreas Kling.
220
221         * wtf/FastMalloc.cpp:
222         (WTF::releaseFastMallocFreeMemory):
223
224 2014-09-05  Geoffrey Garen  <ggaren@apple.com>
225
226         Rolled out <http://trac.webkit.org/changeset/173313>.
227
228         It seems to have broken the PLT bot.
229
230                 Do the bmalloc.
231                 https://bugs.webkit.org/show_bug.cgi?id=132629
232
233                 * wtf/FastMalloc.cpp:
234
235 2014-06-06  Jer Noble  <jer.noble@apple.com>
236
237         Refactoring: make MediaTime the primary time type for audiovisual times.
238         https://bugs.webkit.org/show_bug.cgi?id=133579
239
240         Reviewed by Eric Carlson.
241
242         Add a unary minus operator, and add unimplemented private casting operators, to make
243         unintentional double->MediaTime and MediaTime->double casts hard errors.
244
245         * wtf/MediaTime.cpp:
246         (WTF::MediaTime::operator-):
247         * wtf/MediaTime.h:
248
249 2014-09-04  Geoffrey Garen  <ggaren@apple.com>
250
251         Do the bmalloc.
252         https://bugs.webkit.org/show_bug.cgi?id=132629
253
254         Reviewed by Michael Saboff.
255
256         64-bit only for now, just to try it out.
257
258         * wtf/FastMalloc.cpp:
259
260 2014-09-05  Dániel Bátyai  <dbatyai.u-szeged@partner.samsung.com>
261
262         Enable GenGC on ARM Traditional
263         https://bugs.webkit.org/show_bug.cgi?id=136567
264
265         Reviewed by Csaba Osztrogonác.
266
267         * wtf/Platform.h:
268
269 2014-09-04  Filip Pizlo  <fpizlo@apple.com>
270
271         Beef up the DFG's CFG analyses to include iterated dominance frontiers and more user-friendly BlockSets
272         https://bugs.webkit.org/show_bug.cgi?id=136520
273
274         Fix bug found in Geoff's review but not landed in previous commit.
275
276         * wtf/BitVector.cpp:
277         (WTF::BitVector::equalsSlowCaseFast): return true.
278
279 2014-09-03  Filip Pizlo  <fpizlo@apple.com>
280
281         Beef up the DFG's CFG analyses to include iterated dominance frontiers and more user-friendly BlockSets
282         https://bugs.webkit.org/show_bug.cgi?id=136520
283
284         Reviewed by Geoffrey Garen.
285         
286         Give BitVector a way to quickly find the next set (or unset) bit. Make BitVector equality
287         faster. Fix a minor closure goof in Spectrum.
288
289         * wtf/BitVector.cpp:
290         (WTF::BitVector::equalsSlowCase):
291         (WTF::BitVector::equalsSlowCaseFast):
292         (WTF::BitVector::equalsSlowCaseSimple):
293         * wtf/BitVector.h:
294         (WTF::BitVector::findBit):
295         (WTF::BitVector::findBitFast):
296         (WTF::BitVector::findBitSimple):
297         (WTF::BitVector::findBitInWord):
298         * wtf/Spectrum.h:
299         (WTF::Spectrum::removeIf):
300
301 2014-09-04  Anders Carlsson  <andersca@apple.com>
302
303         Make hash table classes final
304         https://bugs.webkit.org/show_bug.cgi?id=136540
305
306         Reviewed by Antti Koivisto.
307
308         We don't want anybody inheriting from these classes, so make them final.
309
310         * wtf/HashCountedSet.h:
311         * wtf/HashMap.h:
312         * wtf/HashSet.h:
313
314 2014-09-04  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
315
316         Remove CSS_FILTERS flag
317         https://bugs.webkit.org/show_bug.cgi?id=136529
318
319         Reviewed by Dirk Schulze.
320
321         * wtf/FeatureDefines.h:
322
323 2014-09-04  Commit Queue  <commit-queue@webkit.org>
324
325         Unreviewed, rolling out r173201.
326         https://bugs.webkit.org/show_bug.cgi?id=136538
327
328         Improves the situation but also introduces additional crashes.
329         (Requested by zdobersek on #webkit).
330
331         Reverted changeset:
332
333         "GMainLoopSource is exposed to race conditions"
334         https://bugs.webkit.org/show_bug.cgi?id=135800
335         http://trac.webkit.org/changeset/173201
336
337 2014-09-04  Pratik Solanki  <psolanki@apple.com>
338
339         Remove iOS specific disk image cache
340         https://bugs.webkit.org/show_bug.cgi?id=136517
341
342         Reviewed by Antti Koivisto.
343
344         Disk image cache code unnecessarily complicates SharedBuffer implementation. We can remove
345         this now since we don't enable it in WebKit2 on iOS.
346
347         * wtf/FeatureDefines.h:
348
349 2014-09-03  Dan Bernstein  <mitz@apple.com>
350
351         Get rid of HIGH_DPI_CANVAS leftovers
352         https://bugs.webkit.org/show_bug.cgi?id=136491
353
354         Reviewed by Benjamin Poulain.
355
356         * wtf/FeatureDefines.h: Removed definition of ENABLE_HIGH_DPI_CANVAS.
357
358 2014-09-03  Zan Dobersek  <zdobersek@igalia.com>
359
360         GMainLoopSource is exposed to race conditions
361         https://bugs.webkit.org/show_bug.cgi?id=135800
362
363         Reviewed by Carlos Garcia Campos.
364
365         GMainLoopSource objects can be dispatching tasks on one thread
366         while having a new task scheduled on a different thread. This
367         can for instance occur in WebKitVideoSink, where the timeout
368         callback can be called on main thread while at the same time
369         it is being rescheduled on a different thread (created through
370         GStreamer).
371
372         The initial solution is to use GMutex to prevent parallel data
373         access from different threads. In the future I plan to add better
374         assertions, some meaningful comments and look at the possibility
375         of creating thread-specific GMainLoopSource objects that wouldn't
376         require the use of GMutex.
377
378         GSource, GCancellable and std::function<> objects are now packed
379         into an internal Context structure. Using the C++11 move semantics
380         it's simple to, at the time of dispatch, move the current context
381         out of the GMainLoopSource object in case the dispatch causes a
382         rescheduling on that same object.
383
384         All the schedule*() methods and the cancelInternal() method callers
385         now lock the GMutex to ensure no one else is accessing the data at
386         that moment. Similar goes for the dispatch methods, but those do
387         the dispatch and possible destruction duties with the mutex unlocked.
388         The dispatch can cause rescheduling on the same GMainLoopSource object,
389         which must not be done with a locked mutex.
390
391         * wtf/gobject/GMainLoopSource.cpp:
392         (WTF::GMainLoopSource::GMainLoopSource):
393         (WTF::GMainLoopSource::~GMainLoopSource):
394         (WTF::GMainLoopSource::cancel):
395         (WTF::GMainLoopSource::cancelInternal):
396         (WTF::GMainLoopSource::scheduleIdleSource):
397         (WTF::GMainLoopSource::schedule):
398         (WTF::GMainLoopSource::scheduleTimeoutSource):
399         (WTF::GMainLoopSource::scheduleAfterDelay):
400         (WTF::GMainLoopSource::voidCallback):
401         (WTF::GMainLoopSource::boolCallback):
402         (WTF::GMainLoopSource::socketCallback):
403         (WTF::GMainLoopSource::destroy):
404         (WTF::GMainLoopSource::reset): Deleted.
405         * wtf/gobject/GMainLoopSource.h:
406
407 2014-09-02  Daniel Bates  <dabates@apple.com>
408
409         [iOS] Support using Foundation networking code
410         https://bugs.webkit.org/show_bug.cgi?id=136467
411
412         Reviewed by Pratik Solanki.
413
414         Disable USE(CFNETWORK) and use the Foundation networking code by default when building
415         iOS WebKit without the Apple Internal SDK.
416
417         * wtf/Platform.h:
418
419 2014-08-26  Maciej Stachowiak  <mjs@apple.com>
420
421         Use RetainPtr::autorelease in some places where it seems appropriate
422         https://bugs.webkit.org/show_bug.cgi?id=136280
423
424         Reviewed by Darin Adler.
425
426         * wtf/text/mac/StringImplMac.mm:
427         (WTF::StringImpl::operator NSString *): Use autorelease() instead of
428         CFBridgingRelease(leakRef())
429
430 2014-08-29  Joseph Pecoraro  <pecoraro@apple.com>
431
432         JavaScriptCore: Use ASCIILiteral where possible
433         https://bugs.webkit.org/show_bug.cgi?id=136179
434
435         Reviewed by Michael Saboff.
436
437         * wtf/text/WTFString.cpp:
438         (asciiDebug):
439
440 2014-08-27  Filip Pizlo  <fpizlo@apple.com>
441
442         DFG should compute immediate dominators using the O(n log n) form of Lengauer and Tarjan's "A Fast Algorithm for Finding Dominators in a Flowgraph"
443         https://bugs.webkit.org/show_bug.cgi?id=93361
444
445         Reviewed by Mark Hahnenberg.
446         
447         Make BitVector operations return the previous value of the bit you're changing. This is
448         useful for the kinds of set operations that are commonplace in compiler graph searches.
449
450         * wtf/BitVector.h:
451         (WTF::BitVector::quickSet):
452         (WTF::BitVector::quickClear):
453         (WTF::BitVector::set):
454         (WTF::BitVector::ensureSizeAndSet):
455         (WTF::BitVector::clear):
456
457 2014-08-27  Filip Pizlo  <fpizlo@apple.com>
458
459         FTL should be able to do polymorphic call inlining
460         https://bugs.webkit.org/show_bug.cgi?id=135145
461
462         Reviewed by Geoffrey Garen.
463         
464         Add some power that I need for call edge profiling.
465
466         * wtf/OwnPtr.h:
467         (WTF::OwnPtr<T>::createTransactionally):
468         * wtf/Spectrum.h:
469         (WTF::Spectrum::add):
470         (WTF::Spectrum::addAll):
471         (WTF::Spectrum::get):
472         (WTF::Spectrum::size):
473         (WTF::Spectrum::KeyAndCount::KeyAndCount):
474         (WTF::Spectrum::clear):
475         (WTF::Spectrum::removeIf):
476
477 2014-08-27  Nico Weber  <thakis@chromium.org>
478
479         Delete a MSVS2010 workaround.
480         https://bugs.webkit.org/show_bug.cgi?id=136321
481
482         Reviewed by Benjamin Poulain.
483
484         Ports https://codereview.chromium.org/512923004/ by the talented
485         Nico Weber from Blink. No intended behavior change.
486
487         * wtf/Vector.h:
488         (WTF::=):
489
490 2014-08-27  Mark Rowe  <mrowe@apple.com>
491
492         JavaScriptCore is missing debug info for WTF because libWTF.a is stripped.
493         <https://webkit.org/b/136320> / <rdar://problem/18148776>
494
495         Reviewed by Dan Bernstein.
496
497         * Configurations/WTF.xcconfig: Set STRIP_INSTALLED_PRODUCT = NO for the target
498         that produces libWTF.a so that the debug symbols will be linked into JavaScriptCore
499         and end up in its dSYM file.
500
501 2014-08-26  Commit Queue  <commit-queue@webkit.org>
502
503         Unreviewed, rolling out r172940.
504         https://bugs.webkit.org/show_bug.cgi?id=136256
505
506         Caused assertions on fast/storage/serialized-script-
507         value.html, and possibly flakiness on more tests (Requested by
508         ap on #webkit).
509
510         Reverted changeset:
511
512         "FTL should be able to do polymorphic call inlining"
513         https://bugs.webkit.org/show_bug.cgi?id=135145
514         http://trac.webkit.org/changeset/172940
515
516 2014-08-23  Filip Pizlo  <fpizlo@apple.com>
517
518         FTL should be able to do polymorphic call inlining
519         https://bugs.webkit.org/show_bug.cgi?id=135145
520
521         Reviewed by Geoffrey Garen.
522         
523         Add some power that I need for call edge profiling.
524
525         * wtf/OwnPtr.h:
526         (WTF::OwnPtr<T>::createTransactionally):
527         * wtf/Spectrum.h:
528         (WTF::Spectrum::add):
529         (WTF::Spectrum::addAll):
530         (WTF::Spectrum::get):
531         (WTF::Spectrum::size):
532         (WTF::Spectrum::KeyAndCount::KeyAndCount):
533         (WTF::Spectrum::clear):
534         (WTF::Spectrum::removeIf):
535
536 2014-08-25  Tomas Popela  <tpopela@redhat.com>
537
538         Add support for little-endian PowerPC64
539         https://bugs.webkit.org/show_bug.cgi?id=135647
540
541         Reviewed by Oliver Hunt.
542
543         * wtf/Platform.h:
544         * wtf/dtoa/utils.h:
545
546 2014-08-24  Zan Dobersek  <zdobersek@igalia.com>
547
548         GenericHashTraits::peek() is producing copies of passed-in temporary values
549         https://bugs.webkit.org/show_bug.cgi?id=131461
550
551         Reviewed by Darin Adler.
552
553         * wtf/HashTraits.h:
554         (WTF::GenericHashTraits::peek): Make this method a template that passes through
555         the passed-in value without copying, achieved by using universal references and
556         std::forward<>().
557
558 2014-08-22  Daniel Bates  <dabates@apple.com>
559
560         [iOS] Disable ENABLE_IOS_{GESTURE, TOUCH}_EVENTS, and temporarily disable ENABLE_TOUCH_EVENTS
561         and ENABLE_XSLT when building with the iOS public SDK
562         https://bugs.webkit.org/show_bug.cgi?id=135945
563
564         Reviewed by Andy Estes.
565
566         * wtf/FeatureDefines.h:
567
568 2014-08-22  Akos Kiss  <akiss@inf.u-szeged.hu>
569
570         Enable fixed executable allocator for any ARM64 target.
571         https://bugs.webkit.org/show_bug.cgi?id=136162
572
573         Reviewed by Michael Saboff.
574
575         The ARM64 macro assembler relies on near calls being implemented by BL
576         instructions, which have only 128MB offset range from PC. The
577         on-demand executable allocator cannot ensure that any two locations in
578         memory allocated for the JIT-compiled code are within this range. 
579         However, the fixed executable allocator has a fixed 16MB memory pool for
580         ARM64.
581
582         * wtf/Platform.h:
583         Define ENABLE_EXECUTABLE_ALLOCATOR_FIXED if CPU(ARM64), and update
584         attached comment.
585
586 2014-08-22  Commit Queue  <commit-queue@webkit.org>
587
588         Unreviewed, rolling out r172844.
589         https://bugs.webkit.org/show_bug.cgi?id=136164
590
591         re-applying WEBCORE_EXPORTS patch (Requested by
592         alexchristensen on #webkit).
593
594         Reverted changeset:
595
596         "Revert r172831, it broke the Windows build."
597         http://trac.webkit.org/changeset/172844
598
599 2014-08-22  Jon Lee  <jonlee@apple.com>
600
601         Fix iOS build due to r172832 and move RUBBER_BANDING out of FeatureDefines.h
602         https://bugs.webkit.org/show_bug.cgi?id=136157
603
604         Reviewed by Simon Fraser.
605
606         * wtf/FeatureDefines.h: Remove ENABLE(RUBBER_BANDING) logic for Mac platform.
607
608 2014-08-21  Tim Horton  <timothy_horton@apple.com>
609
610         Revert r172831, it broke the Windows build.
611
612         * wtf/ExportMacros.h:
613
614 2014-08-21  Zalan Bujtas  <zalan@apple.com>
615
616         Enable SATURATED_LAYOUT_ARITHMETIC.
617         https://bugs.webkit.org/show_bug.cgi?id=136106
618
619         Reviewed by Simon Fraser.
620
621         SATURATED_LAYOUT_ARITHMETIC protects LayoutUnit against arithmetic overflow.
622         (No measurable performance regression on Mac.)
623
624         * wtf/FeatureDefines.h:
625
626 2014-08-21  Alex Christensen  <achristensen@webkit.org>
627
628         More WEBCORE_EXPORT macros.
629         https://bugs.webkit.org/show_bug.cgi?id=136129
630
631         Reviewed by Tim Horton.
632
633         * wtf/ExportMacros.h:
634         Removed WTF_TESTING which isn't used.
635
636 2014-08-20  Akos Kiss  <akiss@inf.u-szeged.hu>
637
638         Enable ARM64 disassembler on EFL
639         https://bugs.webkit.org/show_bug.cgi?id=136089
640
641         Reviewed by Filip Pizlo.
642
643         * wtf/Platform.h:
644         Enable WTF_USE_ARM64_DISASSEMBLER for EFL as well.
645
646 2014-08-19  Pratik Solanki  <psolanki@apple.com>
647
648         Remove PurgeableBuffer since it is not very useful any more
649         https://bugs.webkit.org/show_bug.cgi?id=135939
650
651         Reviewed by Andreas Kling.
652
653         * wtf/Platform.h: Remove ENABLE_PURGEABLE_MEMORY define.
654         * wtf/VMTags.h: Remove VM tags used by WebCore for cached resource purgeable memory.
655
656 2014-08-19  Magnus Granberg  <zorry@gentoo.org>
657
658         TEXTREL in libjavascriptcoregtk-1.0.so.0.11.0 on x86 (or i586)
659         https://bugs.webkit.org/show_bug.cgi?id=70610
660
661         Reviewed by Darin Adler.
662
663         Add PLT if we're building with PIC.
664
665         * wtf/InlineASM.h:
666
667 2014-08-19  Zalan Bujtas  <zalan@apple.com>
668
669         Remove ENABLE(SUBPIXEL_LAYOUT).
670         https://bugs.webkit.org/show_bug.cgi?id=136077
671
672         Reviewed by Simon Fraser.
673
674         Remove compile time flag SUBPIXEL_LAYOUT. All ports have it enabled for a while now.
675
676         * wtf/FeatureDefines.h:
677
678 2014-08-18  Maciej Stachowiak  <mjs@apple.com>
679
680         Use NSURLFileTypeMappings directly instead of depending on WebKitSystemInterface wrappers for it
681         https://bugs.webkit.org/show_bug.cgi?id=136035
682
683         Reviewed by Dan Bernstein.
684
685         * wtf/Platform.h: Define USE(APPLE_INTERNAL_SDK) by default on platforms that have it.
686
687 2014-08-18  Commit Queue  <commit-queue@webkit.org>
688
689         Unreviewed, rolling out r172736.
690         https://bugs.webkit.org/show_bug.cgi?id=136060
691
692         Caused 14% PLT regressions (Requested by rniwa on #webkit).
693
694         Reverted changeset:
695
696         "Remove PurgeableBuffer since it is not very useful any more"
697         https://bugs.webkit.org/show_bug.cgi?id=135939
698         http://trac.webkit.org/changeset/172736
699
700 2014-08-18  Pratik Solanki  <psolanki@apple.com>
701
702         Remove PurgeableBuffer since it is not very useful any more
703         https://bugs.webkit.org/show_bug.cgi?id=135939
704
705         Reviewed by Geoffrey Garen.
706
707         * wtf/Platform.h: Remove ENABLE_PURGEABLE_MEMORY define.
708         * wtf/VMTags.h: Remove VM tags used by WebCore for cached resource purgeable memory.
709
710 2014-08-14  Benjamin Poulain  <benjamin@webkit.org>
711
712         CSS JIT: compile the :empty pseudo class
713         https://bugs.webkit.org/show_bug.cgi?id=135958
714
715         Reviewed by Andreas Kling.
716
717         * wtf/text/StringImpl.h:
718         (WTF::StringImpl::lengthMemoryOffset):
719
720 2014-08-12  Myles C. Maxfield  <mmaxfield@apple.com>
721
722         Elements whose contents start with an astral Unicode symbol disappear when CSS `::first-letter` is applied to them
723         https://bugs.webkit.org/show_bug.cgi?id=135756
724
725         Reviewed by Darin Adler.
726
727         Add a method to StringView which passes through contains() to find().
728
729         * wtf/text/StringView.h:
730         (WTF::StringView::contains):
731
732 2014-08-12  Pratik Solanki  <psolanki@apple.com>
733
734         Enable didReceiveDataArray callback on Mac
735         https://bugs.webkit.org/show_bug.cgi?id=135554
736         <rdar://problem/9170731>
737
738         Reviewed by Andreas Kling.
739
740         Enable WTF_USE_NETWORK_CFDATA_ARRAY_CALLBACK for all Cocoa platforms so that we use the same
741         code path for Mac and iOS.
742
743         * wtf/Platform.h:
744
745 2014-08-12  Alex Christensen  <achristensen@webkit.org>
746
747         Generate header detection headers for CMake on Windows.
748         https://bugs.webkit.org/show_bug.cgi?id=135807
749
750         Reviewed by Brent Fulgham.
751
752         * wtf/CMakeLists.txt:
753         * wtf/PlatformWin.cmake:
754         Generate and include a stub WTFHeaderDetection.h.
755
756 2014-08-11  Andy Estes  <aestes@apple.com>
757
758         [iOS] Get rid of iOS.xcconfig
759         https://bugs.webkit.org/show_bug.cgi?id=135809
760
761         Reviewed by Joseph Pecoraro.
762
763         All iOS.xcconfig did was include AspenFamily.xcconfig, so there's no need for the indirection.
764
765         * Configurations/Base.xcconfig:
766         * Configurations/iOS.xcconfig: Removed.
767         * WTF.xcodeproj/project.pbxproj:
768
769 2014-08-12  Zan Dobersek  <zdobersek@igalia.com>
770
771         Clean up GMutexLocker
772         https://bugs.webkit.org/show_bug.cgi?id=135833
773
774         Reviewed by Carlos Garcia Campos.
775
776         Place the GMutexLocker into the WTF namespace. There's no need for this
777         class to use FastMalloc since it's always allocated on the stack. The
778         constructor and class now operate on a GMutex reference. There's little
779         need for an additional inline specifier for methods defined in the header.
780         The mutex() method is removed as it was not used. m_val is renamed to a
781         more descriptive m_locked and is made a boolean.
782
783         * wtf/gobject/GMutexLocker.h:
784         (WTF::GMutexLocker::GMutexLocker):
785         (WTF::GMutexLocker::~GMutexLocker):
786         (WTF::GMutexLocker::lock):
787         (WTF::GMutexLocker::unlock):
788         (WebCore::GMutexLocker::GMutexLocker): Deleted.
789         (WebCore::GMutexLocker::~GMutexLocker): Deleted.
790         (WebCore::GMutexLocker::lock): Deleted.
791         (WebCore::GMutexLocker::unlock): Deleted.
792         (WebCore::GMutexLocker::mutex): Deleted.
793
794 2014-08-12  Zan Dobersek  <zdobersek@igalia.com>
795
796         Make GRefPtr move-able
797         https://bugs.webkit.org/show_bug.cgi?id=135801
798
799         Reviewed by Carlos Garcia Campos.
800
801         Add move constructor and move assignment operator for GRefPtr.
802
803         * wtf/gobject/GRefPtr.h:
804         (WTF::GRefPtr::GRefPtr):
805         (WTF::=):
806
807 2014-08-10  Benjamin Poulain  <benjamin@webkit.org>
808
809         Update HashTable's operator= after r172167 per review comments
810
811         * wtf/HashTable.h:
812         Update the type as suggested by Darin.
813
814 2014-08-07  Benjamin Poulain  <bpoulain@apple.com>
815
816         Get rid of SCRIPTED_SPEECH
817         https://bugs.webkit.org/show_bug.cgi?id=135729
818
819         Reviewed by Brent Fulgham.
820
821         * wtf/FeatureDefines.h:
822
823 2014-08-07  Benjamin Poulain  <bpoulain@apple.com>
824
825         Get rid of INPUT_SPEECH
826         https://bugs.webkit.org/show_bug.cgi?id=135672
827
828         Reviewed by Andreas Kling.
829
830         * wtf/FeatureDefines.h:
831
832 2014-08-06  Dean Jackson  <dino@apple.com>
833
834         ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED is not used anywhere. Remove it.
835         https://bugs.webkit.org/show_bug.cgi?id=135675
836
837         Reviewed by Sam Weinig.
838
839         * wtf/FeatureDefines.h:
840
841 2014-08-06  Benjamin Poulain  <benjamin@webkit.org>
842
843         HashTable based classes leak a lot
844         https://bugs.webkit.org/show_bug.cgi?id=135638
845
846         Reviewed by Darin Adler.
847
848         * wtf/HashTable.h:
849         The operator= taking a rvalue reference was never freeing the memory allocated
850         for the table of the left hand side object.
851
852         This patch fixes the leaks by doing an alloc+swap with a new object.
853         The object temp gets the reference to m_table, and destroys it in the regular destructor
854         when going out of scope.
855
856         Kudos to Pratik Solanki for finding the leaks.
857
858 2014-08-06  Dániel Bátyai  <dbatyai.u-szeged@partner.samsung.com>
859
860         [JSC] Build fix for FTL on EFL after ftlopt merge
861         https://bugs.webkit.org/show_bug.cgi?id=135565
862
863         Reviewed by Mark Lam.
864
865         Added ENABLE(FTL_NATIVE_CALL_INLINING).
866
867         * wtf/Platform.h:
868
869 2014-08-04  Alex Christensen  <achristensen@webkit.org>
870
871         Progress towards CMake on Mac.
872         https://bugs.webkit.org/show_bug.cgi?id=135528
873
874         Reviewed by Gyuyoung Kim.
875
876         * wtf/CMakeLists.txt:
877         Include text directory.
878         * wtf/PlatformMac.cmake: Added.
879
880 2014-07-31  Alex Christensen  <achristensen@webkit.org>
881
882         Progress towards cmake on Windows.
883         https://bugs.webkit.org/show_bug.cgi?id=135484
884
885         Reviewed by Martin Robinson.
886
887         * wtf/CMakeLists.txt:
888         Added WTF_LIBRARY_TYPE because Windows needs WTF to be a shared library.
889
890 2014-07-30  Andreas Kling  <akling@apple.com>
891
892         PropertyName's internal string is always atomic.
893         <https://webkit.org/b/135451>
894
895         Remove AtomicString::findStringWithHash() since nobody uses it anymore.
896
897         Reviewed by Benjamin Poulain.
898
899         * wtf/text/AtomicString.cpp:
900         (WTF::findString): Deleted.
901         (WTF::AtomicString::findStringWithHash): Deleted.
902         * wtf/text/AtomicString.h:
903
904 2014-07-30  Andy Estes  <aestes@apple.com>
905
906         USE(CONTENT_FILTERING) should be ENABLE(CONTENT_FILTERING)
907         https://bugs.webkit.org/show_bug.cgi?id=135439
908
909         Reviewed by Tim Horton.
910
911         We now support two different platform content filters, and will soon support a mock content filter (as part of
912         webkit.org/b/128858). This makes content filtering a feature of WebKit, not just an adoption of a third-party
913         library. ENABLE() is the correct macro to use for such a feature.
914
915         * wtf/Platform.h:
916
917 2014-07-29  Brent Fulgham  <bfulgham@apple.com>
918
919         [Win] Modify version numbering scheme to support 5-tuple versions
920         https://bugs.webkit.org/show_bug.cgi?id=135400
921         <rdar://problem/17849033>
922
923         Reviewed by David Kilzer.
924
925         * WTF.vcxproj/WTFPostBuild.cmd: Use new version-stamp.pl script
926         to version WTF.dll.
927         * WTF.vcxproj/WTFPreBuild.cmd: Make sure we have created the
928         appropriate version resource during builds.
929
930 2014-07-29  Daniel Bates  <dabates@apple.com>
931
932         Use WTF::move() instead of std::move() to help ensure move semantics
933         https://bugs.webkit.org/show_bug.cgi?id=135351
934
935         Reviewed by Alexey Proskuryakov.
936
937         * wtf/HashTable.h:
938         (WTF::KeyTraits>::HashTable):
939
940 2014-07-28  Brian J. Burg  <burg@cs.washington.edu>
941
942         Should not export symbols for base64Encode inline adapter methods
943         https://bugs.webkit.org/show_bug.cgi?id=135355
944
945         Unreviewed build fix.
946
947         Fixes the build break introduced by r171682, where a base64Encode
948         inline adapter method was used in another header, thus creating
949         multiple definitions of it (and problems with with weak symbols).
950
951         * wtf/text/Base64.h: Remove WTF_EXPORT_PRIVATE for inlined methods.
952
953 2014-07-27  Filip Pizlo  <fpizlo@apple.com>
954
955         Merge r170090, r170092, r170129, r170141, r170161, r170215, r170275, r170375, r170376, r170382, r170383, r170399, r170436, r170489, r170490, r170556 from ftlopt.
956
957         * wtf/text/WTFString.h:
958
959 2014-07-26  Filip Pizlo  <fpizlo@apple.com>
960
961         Unreviewed, roll out r171641-r171644. It broke some tests; will investigate and
962         reland later.
963
964         * wtf/text/WTFString.h:
965
966 2014-07-25  Filip Pizlo  <fpizlo@apple.com>
967
968         Attempt to fix Windows.
969
970         * wtf/text/WTFString.h:
971
972 2014-07-25  Gavin Barraclough  <baraclough@apple.com>
973
974         Yosemite version number is 101000
975         https://bugs.webkit.org/show_bug.cgi?id=135301
976
977         Reviewed by Sam Weinig.
978
979         * wtf/FeatureDefines.h:
980         * wtf/Platform.h:
981
982 2014-07-23  Brent Fulgham  <bfulgham@apple.com>
983
984         [Win] Use NO_RETURN_DUE_TO_CRASH on Windows.
985         https://bugs.webkit.org/show_bug.cgi?id=13519
986
987         Reviewed by Mark Lam.
988
989         * wtf/Assertions.h: Add MSVC to list of compilers supporting this macro.
990         * wtf/FastMalloc.cpp: Correct function declaration for NO_RETURN_DUE_TO_CRASH.
991
992 2014-07-22  Filip Pizlo  <fpizlo@apple.com>
993
994         Merge r169148, r169185, r169188, r169578, r169582, r169584, r169588, r169753 from ftlopt.
995
996     2014-06-04  Filip Pizlo  <fpizlo@apple.com>
997     
998             [ftlopt] AI should be able track structure sets larger than 1
999             https://bugs.webkit.org/show_bug.cgi?id=128073
1000     
1001             Reviewed by Oliver Hunt.
1002     
1003             * wtf/Bag.h:
1004             (WTF::Bag::Node::Node):
1005             (WTF::Bag::add):
1006     
1007 2014-07-22  Filip Pizlo  <fpizlo@apple.com>
1008
1009         Merge r168635, r168780, r169005, r169014, and r169143 from ftlopt.
1010
1011     2014-05-20  Filip Pizlo  <fpizlo@apple.com>
1012     
1013             [ftlopt] DFG bytecode parser should turn GetById with nothing but a Getter stub as stuff+handleCall, and handleCall should be allowed to inline if it wants to
1014             https://bugs.webkit.org/show_bug.cgi?id=133105
1015     
1016             Reviewed by Michael Saboff.
1017     
1018             * wtf/Bag.h:
1019             (WTF::Bag::iterator::operator!=):
1020     
1021 2014-07-19  Zan Dobersek  <zdobersek@igalia.com>
1022
1023         [WTF] Add the move constructor, move assignment operator for HashTable
1024         https://bugs.webkit.org/show_bug.cgi?id=130772
1025
1026         Reviewed by Darin Adler.
1027
1028         HashTable has both copy constructor and copy assignment operator, meaning that the move constructor
1029         and move assignment operator are implicitly deleted. This patch defines both to avoid unnecessary
1030         copies when moves can be performed.
1031
1032         * wtf/HashTable.h:
1033         (WTF::KeyTraits>::HashTable):
1034
1035 2014-07-15  Commit Queue  <commit-queue@webkit.org>
1036
1037         Unreviewed, rolling out r171107.
1038         https://bugs.webkit.org/show_bug.cgi?id=134959
1039
1040         This was not the problem! (Requested by kling on #webkit).
1041
1042         Reverted changeset:
1043
1044         "Revert: Run the FastMalloc scavenger thread on iOS as well."
1045         https://bugs.webkit.org/show_bug.cgi?id=134927
1046         http://trac.webkit.org/changeset/171107
1047
1048 2014-07-15  Andreas Kling  <akling@apple.com>
1049
1050         Revert: Run the FastMalloc scavenger thread on iOS as well.
1051         <https://webkit.org/b/134927>
1052         <rdar://problem/17485079>
1053
1054         This appears to be the cause of some elusive crashes, and since I don't
1055         have a way to reproduce them, let's just go back to not running the
1056         scavenger thread on iOS.
1057
1058         Reviewed by Antti Koivisto.
1059
1060         * wtf/FastMalloc.cpp:
1061
1062 2014-07-13  Filip Pizlo  <fpizlo@apple.com>
1063
1064         HashMap should have removeIf()
1065         https://bugs.webkit.org/show_bug.cgi?id=134870
1066
1067         Reviewed by Sam Weinig.
1068         
1069         Expose a new HashMap method, called removeIf(), which allows you to do an efficient
1070         pass over the map and remove a bunch of things at once. This is used by DFG GCSE as
1071         part of https://bugs.webkit.org/show_bug.cgi?id=134677.
1072
1073         * wtf/HashMap.h:
1074         (WTF::X>::removeIf):
1075         * wtf/HashTable.h:
1076         (WTF::KeyTraits>::removeIf):
1077
1078 2014-07-11  peavo@outlook.com  <peavo@outlook.com>
1079
1080         [Win] Enable DFG JIT.
1081         https://bugs.webkit.org/show_bug.cgi?id=123615
1082
1083         Reviewed by Mark Lam.
1084
1085         * wtf/Platform.h:
1086
1087 2014-07-11  Commit Queue  <commit-queue@webkit.org>
1088
1089         Unreviewed, rolling out r170995.
1090         https://bugs.webkit.org/show_bug.cgi?id=134831
1091
1092         Causing odd crashes in debug builds (Requested by zdobersek on
1093         #webkit).
1094
1095         Reverted changeset:
1096
1097         "[WTF] Add the move constructor, move assignment operator for
1098         HashTable"
1099         https://bugs.webkit.org/show_bug.cgi?id=130772
1100         http://trac.webkit.org/changeset/170995
1101
1102 2014-07-09  Zan Dobersek  <zdobersek@igalia.com>
1103
1104         [WTF] Add the move constructor, move assignment operator for HashTable
1105         https://bugs.webkit.org/show_bug.cgi?id=130772
1106
1107         Reviewed by Darin Adler.
1108
1109         HashTable has both copy constructor and copy assignment operator, meaning that the move constructor
1110         and move assignment operator are implicitly deleted. This patch defines both to avoid unnecessary
1111         copies when moves can be performed.
1112
1113         * wtf/HashTable.h:
1114         (WTF::KeyTraits>::HashTable):
1115
1116 2014-07-10  Alex Christensen  <achristensen@webkit.org>
1117
1118         Enable same features on all Windows ports.
1119         https://bugs.webkit.org/show_bug.cgi?id=134715
1120
1121         Reviewed by Brent Fulgham.
1122
1123         * wtf/Platform.h:
1124         Use REQUEST_ANIMATION_FRAME_TIMER on WinCairo.
1125
1126 2014-07-09  Brent Fulgham  <bfulgham@apple.com>
1127
1128         [Win] Unreviewed build fix after r170930.
1129
1130         * WTF.vcxproj/copy-files.cmd: Include cf files in
1131         post-build copy operation.
1132
1133 2014-07-09  Brent Fulgham  <bfulgham@apple.com>
1134
1135         [Win] Remove uses of 'bash' in build system
1136         https://bugs.webkit.org/show_bug.cgi?id=134782
1137         <rdar://problem/17615533>
1138
1139         Reviewed by Dean Jackson.
1140
1141         Remove uses of 'bash' by replacing Windows-specific bash scripts
1142         with Perl equivalents.
1143
1144         * WTF.vcxproj/WTFGenerated.make:
1145         * WTF.vcxproj/WTFGenerated.vcxproj:
1146         * WTF.vcxproj/WTFGenerated.vcxproj.filters:
1147         * WTF.vcxproj/WTFPreBuild.cmd:
1148         * WTF.vcxproj/build-generated-files.pl: Copied from Source/WTF/WTF.vcxproj/build-generated-files.sh.
1149         * WTF.vcxproj/build-generated-files.sh: Removed.
1150
1151 2014-07-09  Brent Fulgham  <bfulgham@apple.com>
1152
1153         [Win] Remove use of 'grep' in build steps
1154         https://bugs.webkit.org/show_bug.cgi?id=134770
1155         <rdar://problem/17608783>
1156
1157         Reviewed by Tim Horton.
1158
1159         Replace uses of the grep command in Windows builds with the equivalent
1160         Perl program.
1161
1162         * WTF.vcxproj/WTFPreBuild.cmd:
1163
1164 2014-07-07  Zan Dobersek  <zdobersek@igalia.com>
1165
1166         Enable ARMv7 disassembler for the GTK port
1167         https://bugs.webkit.org/show_bug.cgi?id=134676
1168
1169         Reviewed by Benjamin Poulain.
1170
1171         * wtf/Platform.h: Enable the ARMv7 disassembler for the GTK port when
1172         targeting the ARMv7 architecture.
1173
1174 2014-07-06  Yoav Weiss  <yoav@yoav.ws>
1175
1176         Turn on img@sizes compile flag
1177         https://bugs.webkit.org/show_bug.cgi?id=134634
1178
1179         Reviewed by Benjamin Poulain.
1180
1181         * wtf/FeatureDefines.h: Added compile flag definition.
1182
1183 2014-07-03  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1184
1185         Unreivewed, fix build break on EFL and GTK since r170767.
1186
1187         * wtf/CMakeLists.txt: Exclude Decoder.h and Encoder.h because those files were removed.
1188
1189 2014-07-03  Daniel Bates  <dabates@apple.com>
1190
1191         Add WTF::move()
1192         https://bugs.webkit.org/show_bug.cgi?id=134500
1193
1194         Reviewed by Darin Adler.
1195
1196         Substitution of WTF::move() for std::move() rubber-stamped by Anders Carlsson.
1197
1198         Implement WTF::move(), a replacement for std::move(). WTF::move() is less error
1199         prone than std::move() as it compile asserts that its argument is a non-const
1200         lvalue reference before ultimately casting it to a rvalue reference (via std::move).
1201
1202         * wtf/Deque.h: Substitute WTF::move() for std::move().
1203         * wtf/HashMap.h: Ditto.
1204         * wtf/HashSet.h: Ditto.
1205         * wtf/HashTable.h: Ditto.
1206         * wtf/IteratorAdaptors.h: Ditto.
1207         * wtf/IteratorRange.h: Ditto.
1208         * wtf/ListHashSet.h: Ditto.
1209         * wtf/MainThread.cpp: Ditto.
1210         [...]
1211         * wtf/StdLibExtras.h:
1212         (WTF::move): Added.
1213         [...]
1214
1215 2014-07-03  Anders Carlsson  <andersca@apple.com>
1216
1217         Get rid of Encoder.h and Decoder.h from WTF
1218         https://bugs.webkit.org/show_bug.cgi?id=134600
1219
1220         Reviewed by Darin Adler.
1221
1222         * WTF.vcxproj/WTF.vcxproj:
1223         * WTF.vcxproj/WTF.vcxproj.filters:
1224         * WTF.xcodeproj/project.pbxproj:
1225         * wtf/Decoder.h: Removed.
1226         * wtf/Encoder.h: Removed.
1227
1228 2014-07-03  Ryuan Choi  <ryuan.choi@samsung.com>
1229
1230         Broken build with build-webkit --no-video
1231         https://bugs.webkit.org/show_bug.cgi?id=134587
1232
1233         Reviewed by Darin Adler.
1234
1235         MEDIA_CONTROLS_SCRIPT requires VIDEO enabled.
1236
1237         * wtf/FeatureDefines.h: Added error message for dependency failure.
1238
1239 2014-07-02  Enrica Casucci  <enrica@apple.com>
1240
1241         iOS build fix after http://trac.webkit.org/changeset/170697.
1242         
1243         Unreviewed.
1244
1245         * wtf/Deque.h:
1246
1247 2014-07-02  Dan Bernstein  <mitz@apple.com>
1248
1249         Remove some code only needed for versions of Safari that are no longer supported
1250         https://bugs.webkit.org/show_bug.cgi?id=134537
1251
1252         Reviewed by Anders Carlsson.
1253
1254         * wtf/Assertions.cpp:
1255         * wtf/Assertions.h:
1256
1257 2014-07-01  Alex Christensen  <achristensen@webkit.org>
1258
1259         Reduce dynamic memory allocation in css jit.
1260         https://bugs.webkit.org/show_bug.cgi?id=134416
1261
1262         Reviewed by Benjamin Poulain.
1263
1264         * wtf/Deque.h:
1265         Added inlineCapacity optional template parameter.
1266
1267 2014-06-30  Commit Queue  <commit-queue@webkit.org>
1268
1269         Unreviewed, rolling out r170605.
1270         https://bugs.webkit.org/show_bug.cgi?id=134484
1271
1272         The changes cause crashes on ARM64 (Requested by benjaminp on
1273         #webkit).
1274
1275         Reverted changeset:
1276
1277         "Reduce dynamic memory allocation in css jit."
1278         https://bugs.webkit.org/show_bug.cgi?id=134416
1279         http://trac.webkit.org/changeset/170605
1280
1281 2014-06-30  Daniel Bates  <dabates@apple.com>
1282
1283         Make TransformIterator::TransformIterator() take rvalue references
1284         https://bugs.webkit.org/show_bug.cgi?id=134468
1285
1286         Reviewed by Darin Adler.
1287
1288         It's unnecessary to support TransformIterator::TransformIterator() taking const lvalue references
1289         as we only call it with rvalues. As a side benefit, we can use move semantics to initialize the
1290         members of TransformIterator.
1291
1292         * wtf/IteratorAdaptors.h:
1293         (WTF::TransformIterator::TransformIterator): Make constructor take arguments as rvalue references.
1294         (WTF::makeTransformIterator): Substitute std::move() for std::forward().
1295
1296 2014-06-30  Alex Christensen  <achristensen@webkit.org>
1297
1298         Reduce dynamic memory allocation in css jit.
1299         https://bugs.webkit.org/show_bug.cgi?id=134416
1300
1301         Reviewed by Benjamin Poulain.
1302
1303         * wtf/Deque.h:
1304         Added inlineCapacity optional template parameter.
1305
1306 2014-06-30  Anders Carlsson  <andersca@apple.com>
1307
1308         Add code for encoding legacy session history entries
1309         https://bugs.webkit.org/show_bug.cgi?id=134452
1310
1311         Reviewed by Andreas Kling.
1312
1313         * wtf/MallocPtr.h:
1314         (WTF::MallocPtr::malloc):
1315         (WTF::MallocPtr::realloc):
1316
1317 2014-06-27  Andreas Kling  <akling@apple.com>
1318
1319         [ARMv7] Skip one particularly expensive fastFree() alignment check.
1320         <https://webkit.org/b/134402>
1321
1322         The size class alignment check in fastFree() was crazy expensive on ARMv7
1323         due to its use of modulo. Disabling it shaves 470ms off of PLT main thread
1324         time in the web process.
1325
1326         Note that this was very hard to identify in profiles due to TCO.
1327
1328         Reviewed by Gavin Barraclough.
1329
1330         * wtf/FastMalloc.cpp:
1331         (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
1332
1333 2014-06-26  Andreas Kling  <akling@apple.com>
1334
1335         Bump FastMalloc thread cache max size to 1MB on iOS.
1336         <https://webkit.org/b/134365>
1337
1338         The previous limit (512kB) comes from the old days of very-low-memory
1339         devices, and we can now afford to spend another 512kB here.
1340         Note that we already have a mechanism to purge FastMalloc caches on
1341         system memory pressure.
1342
1343         Looks like a ~400ms progression on PLT.
1344
1345         Reviewed by Geoff Garen.
1346
1347         * wtf/FastMalloc.cpp:
1348
1349 2014-06-26  Laszlo Gombos  <l.gombos@samsung.com>
1350
1351         Define TARGET_OS_IPHONE to 0 for non-darwin ports
1352         https://bugs.webkit.org/show_bug.cgi?id=134347
1353
1354         Reviewed by Darin Adler.
1355
1356         A follow-up to r169880 to make it easier to reason about
1357         the code. The purpose of this change to allow
1358         "#if TARGET_OS_IPHONE" in public header files.
1359
1360         * wtf/Platform.h:
1361
1362 2014-06-26  Chris Fleizach  <cfleizach@apple.com>
1363
1364         Add an undo group for each dictated utterance in WebKit
1365         https://bugs.webkit.org/show_bug.cgi?id=134086
1366
1367         Applied review comments from Sam Weinig.
1368
1369         Move the associated USE #define into Platform.h.
1370
1371         * wtf/Platform.h:
1372
1373 2014-06-25  Geoffrey Garen  <ggaren@apple.com>
1374
1375         Unreviewed, rolling out r166876.
1376
1377         Caused some ECMA test262 failures
1378
1379         Reverted changeset:
1380
1381         "Date object needs to check for ES5 15.9.1.14 TimeClip limit."
1382         https://bugs.webkit.org/show_bug.cgi?id=131248
1383         http://trac.webkit.org/changeset/166876
1384
1385 2014-06-25  peavo@outlook.com  <peavo@outlook.com>
1386
1387         [Win64] ASM LLINT is not enabled.
1388         https://bugs.webkit.org/show_bug.cgi?id=130638
1389
1390         Reviewed by Mark Lam.
1391
1392         * wtf/Platform.h: Enable LLINT and JIT for Win64.
1393
1394 2014-06-25  Laszlo Gombos  <l.gombos@samsung.com>
1395
1396         Remove build guard for progress element
1397         https://bugs.webkit.org/show_bug.cgi?id=134292
1398
1399         Reviewed by Benjamin Poulain.
1400
1401         The build flag is no longer needed as it is always on.
1402
1403         * wtf/FeatureDefines.h:
1404
1405 2014-06-24  Andreas Kling  <akling@apple.com>
1406
1407         Run the FastMalloc scavenger thread on iOS as well.
1408         <https://webkit.org/b/134287>
1409         <rdar://problem/17446198>
1410
1411         Reviewed by Gavin Barraclough.
1412
1413         * wtf/FastMalloc.cpp:
1414
1415 2014-06-24  Anders Carlsson  <andersca@apple.com>
1416
1417         Add PageState to HistoryItem conversion code
1418         https://bugs.webkit.org/show_bug.cgi?id=134259
1419
1420         Reviewed by Andreas Kling.
1421
1422         * wtf/Optional.h:
1423         (WTF::Optional::valueOr):
1424
1425 2014-06-24  László Langó  <llango.u-szeged@partner.samsung.com>
1426
1427         [JavaScriptCore] Enable concurrent JIT on EFL.
1428         https://bugs.webkit.org/show_bug.cgi?id=134242
1429
1430         Reviewed by Csaba Osztrogonác.
1431
1432         * wtf/Platform.h:
1433
1434 2014-06-23  Ryuan Choi  <ryuan.choi@samsung.com>
1435
1436         [EFL] Replace RefPtr<Evas_Object> with UniquePtrEfl
1437         https://bugs.webkit.org/show_bug.cgi?id=134236
1438
1439         Reviewed by Gyuyoung Kim.
1440
1441         Although there are ref/unref for Evas_Object, it's bit odd so we should call evas_object_del to destroy it.
1442         So, this patch replaced RefPtr<Evas_Object> with UniquePtrEfl for the simplicity.
1443
1444         * wtf/PlatformEfl.cmake: Removed RefPtrEfl.cpp from source list.
1445         * wtf/efl/RefPtrEfl.cpp: Removed.
1446         * wtf/efl/RefPtrEfl.h: Removed.
1447
1448 2014-06-21  Brady Eidson  <beidson@apple.com>
1449
1450         Gamepad API - Deprecate the existing implementation
1451         https://bugs.webkit.org/show_bug.cgi?id=134108
1452
1453         Reviewed by Timothy Hatcher.
1454
1455         -Add new "GAMEPAD_DEPRECATED" build flag, moving the existing implementation to use it
1456         -Move some implementation files into a "deprecated" subdirectory.
1457
1458         * wtf/FeatureDefines.h:
1459
1460 2014-06-21  Commit Queue  <commit-queue@webkit.org>
1461
1462         Unreviewed, rolling out r170244.
1463         https://bugs.webkit.org/show_bug.cgi?id=134157
1464
1465         GTK/EFL bindings generator works differently, making this
1466         patch not work there.  Will fix entire patch after a rollout.
1467         (Requested by bradee-oh on #webkit).
1468
1469         Reverted changeset:
1470
1471         "Gamepad API - Deprecate the existing implementation"
1472         https://bugs.webkit.org/show_bug.cgi?id=134108
1473         http://trac.webkit.org/changeset/170244
1474
1475 2014-06-21  Brady Eidson  <beidson@apple.com>
1476
1477         Gamepad API - Deprecate the existing implementation
1478         https://bugs.webkit.org/show_bug.cgi?id=134108
1479
1480         Reviewed by Timothy Hatcher.
1481
1482         -Add new "GAMEPAD_DEPRECATED" build flag, moving the existing implementation to use it
1483         -Add the "Deprecated" suffix to some implementation files
1484
1485         * wtf/FeatureDefines.h:
1486
1487 2014-06-21  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
1488
1489         Removing PAGE_VISIBILITY_API compile guard.
1490         https://bugs.webkit.org/show_bug.cgi?id=133844
1491
1492         Reviewed by Gavin Barraclough.
1493
1494         * wtf/FeatureDefines.h:
1495
1496 2014-06-20  Anders Carlsson  <andersca@apple.com>
1497
1498         Add encoding and decoding support for WTF::Optional
1499         https://bugs.webkit.org/show_bug.cgi?id=134125
1500
1501         Reviewed by Andreas Kling.
1502
1503         * wtf/Optional.h:
1504         (WTF::Optional::operator=):
1505
1506 2014-06-20  Anders Carlsson  <andersca@apple.com>
1507
1508         Add copy/move constructors and assignment operators to WTF::Optional
1509         https://bugs.webkit.org/show_bug.cgi?id=134119
1510
1511         Reviewed by Andreas Kling.
1512
1513         * wtf/Optional.h:
1514         (WTF::Optional::Optional):
1515         (WTF::Optional::operator=):
1516
1517 2014-06-19  Anders Carlsson  <andersca@apple.com>
1518
1519         Add WTF::Optional class
1520         https://bugs.webkit.org/show_bug.cgi?id=134083
1521
1522         Reviewed by Andreas Kling.
1523
1524         * WTF.xcodeproj/project.pbxproj:
1525         * wtf/Optional.h: Added.
1526         (WTF::Optional::Optional):
1527         (WTF::Optional::~Optional):
1528         (WTF::Optional::operator bool):
1529         (WTF::Optional::value):
1530
1531 2014-06-19  Dániel Bátyai  <dbatyai.u-szeged@partner.samsung.com>
1532
1533         Remove ENABLE(LLINT) and ENABLE(LLINT_C_LOOP) guards
1534         https://bugs.webkit.org/show_bug.cgi?id=130389
1535
1536         Reviewed by Mark Lam.
1537
1538         Removed ENABLE(LLINT) since we always build with it, and changed ENABLE(LLINT_C_LOOP)
1539         into !ENABLE(JIT) since they are mutually exclusive.
1540
1541         * wtf/OSAllocatorPosix.cpp:
1542         (WTF::OSAllocator::reserveAndCommit):
1543         * wtf/Platform.h:
1544
1545 2014-06-18  Anders Carlsson  <andersca@apple.com>
1546
1547         Add CF type cast function templates and use them in KeyedDecoder in WebKit2
1548         https://bugs.webkit.org/show_bug.cgi?id=134033
1549
1550         Reviewed by Sam Weinig.
1551
1552         * WTF.xcodeproj/project.pbxproj:
1553         * wtf/cf/TypeCasts.h: Added.
1554         (WTF::dynamic_cf_cast):
1555         Returns null if the given CFTypeRef object doesn't have the right type.
1556
1557         (WTF::checked_cf_cast):
1558         ASSERTs (with security implication) if the given CFTypeRef object is null or doesn't have the right type.
1559
1560 2014-06-17  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
1561
1562         Misused PLATFORM(MIDDLE_ENDIAN) and PLATFORM(BIG_ENDIAN).
1563         https://bugs.webkit.org/show_bug.cgi?id=128301
1564
1565         Reviewed by Daniel Bates.
1566
1567         Endianness is a CPU attribute, not a PLATFORM. PLATFORM() macro is replaced to CPU().
1568
1569         * wtf/text/ASCIIFastPath.h:
1570         (WTF::copyLCharsFromUCharSource):
1571
1572 2014-06-17  Andreas Kling  <akling@apple.com>
1573
1574         Web process main thread priority is lower than some network process threads.
1575         <https://webkit.org/b/133987>
1576         <rdar://problem/17330300>
1577
1578         Bring all of our threads to the appropriate priority level by opting in to the
1579         threading QoS APIs. By marking them "user initiated", they still yield to UI
1580         interaction, but take priority over background tasks.
1581
1582         Reviewed by Maciej Stachowiak.
1583
1584         * wtf/Platform.h:
1585         * wtf/Threading.cpp:
1586         (WTF::setCurrentThreadIsUserInitiated):
1587         * wtf/Threading.h:
1588         * wtf/ThreadingPthreads.cpp:
1589         (WTF::createThreadInternal):
1590
1591 2014-06-17  Alex Christensen  <achristensen@webkit.org>
1592
1593         Enable css jit for armv7 on iOS.
1594         https://bugs.webkit.org/show_bug.cgi?id=133961
1595         <rdar://problem/17310631>
1596
1597         Reviewed by Andreas Kling.
1598
1599         * wtf/Platform.h:
1600         Enable css jit for ARM thumb on iOS.
1601
1602 2014-06-17  Dan Bernstein  <mitz@apple.com>
1603
1604         String::isolatedCopy doesn’t return an isolated copy when used on an rvalue reference
1605         https://bugs.webkit.org/show_bug.cgi?id=133968
1606
1607         Reviewed by Anders Carlsson.
1608
1609         Made the rvalue reference overload of isolatedCopy() non-const, so that std::move(*this) is
1610         an rvalue reference that can be moved, rather than copied, into the returned String.
1611
1612         * wtf/text/WTFString.cpp:
1613         (WTF::String::isolatedCopy):
1614         * wtf/text/WTFString.h:
1615
1616 2014-06-15  Dan Bernstein  <mitz@apple.com>
1617
1618         iOS build fix after r169995.
1619
1620         * wtf/RetainPtr.h:
1621
1622 2014-06-15  Anders Carlsson  <andersca@apple.com>
1623
1624         Add an autorelease() member function to RetainPtr
1625         https://bugs.webkit.org/show_bug.cgi?id=133929
1626
1627         Reviewed by Dan Bernstein.
1628
1629         * wtf/RetainPtr.h:
1630
1631 2014-06-13  Alex Christensen  <achristensen@webkit.org>
1632
1633         Unreviewed disabling css jit on armv7.  It's not quite ready yet.
1634
1635         * wtf/Platform.h:
1636         Disable css jit on armv7.
1637
1638 2014-06-13  Alex Christensen  <achristensen@webkit.org>
1639
1640         Enable css jit for armv7 on iOS.
1641         https://bugs.webkit.org/show_bug.cgi?id=133890
1642         <rdar://problem/17310631>
1643
1644         Reviewed by Andreas Kling.
1645
1646         * wtf/Platform.h:
1647         Enable css jit for ARM thumb on iOS.
1648
1649 2014-06-13  Mark Hahnenberg  <mhahnenberg@apple.com>
1650
1651         OSR exit should barrier the Executables for all InlineCallFrames, not just those on the stack at the time of exit
1652         https://bugs.webkit.org/show_bug.cgi?id=133880
1653
1654         Reviewed by Filip Pizlo.
1655
1656         * wtf/Bag.h:
1657         (WTF::Bag::iterator::operator!=): Add != to the Bag iterator so we can use it in range-based iteration.
1658
1659 2014-06-12  Gavin Barraclough  <barraclough@apple.com>
1660
1661         Add support for thread/WorkQueue QoS
1662         https://bugs.webkit.org/show_bug.cgi?id=130688
1663
1664         Reviewed by Anders Carlson & Simon Fraser.
1665
1666         Add the ability to mark threads as UserInteractive.
1667
1668         * wtf/Threading.cpp:
1669         (WTF::setCurrentThreadIsUserInteractive):
1670             - added method to set QoS of current thread to UserInteractive.
1671         * wtf/Threading.h:
1672             - added declaration.
1673
1674 2014-06-12  Alexey Proskuryakov  <ap@apple.com>
1675
1676         Fix Mac after r169880.
1677
1678         This revision added a C++ comment to Platform.h, which breaks sandbox profile
1679         preprocessing.
1680
1681         Also, I do not believe that this comment was entirely accurate - we've always used
1682         this technique with GCC, so there has to be more to it. So, I just removed the comment.
1683
1684         * wtf/Platform.h:
1685
1686 2014-06-11  Csaba Osztrogonác  <ossy@webkit.org>
1687
1688         [EFL][GTK] Ultimate fix not to have build failures
1689         in the future because of "#if TARGET_OS_IPHONE" guards.
1690
1691         Unreviewed buildfix.
1692
1693         * wtf/Platform.h: Define TARGET_OS_IPHONE to 0 on EFL and GTK.
1694
1695 2014-06-11  Ryosuke Niwa  <rniwa@webkit.org>
1696
1697         Turning on DUMP_PROPERTYMAP_STATS causes a build failure
1698         https://bugs.webkit.org/show_bug.cgi?id=133673
1699
1700         Reviewed by Andreas Kling.
1701
1702         Added DEFINE_GLOBAL_FOR_LOGGING to allow running a destructor in logging code
1703         that needs to be enabled in release builds (e.g. for JavaScriptCore).
1704
1705         * wtf/StdLibExtras.h:
1706
1707 2014-06-09  Benjamin Poulain  <bpoulain@apple.com>
1708
1709         Improve CSSPrimitiveValue::customCSSText for ARMv7
1710         https://bugs.webkit.org/show_bug.cgi?id=133597
1711
1712         Reviewed by Andreas Kling.
1713
1714         * wtf/RefPtr.h:
1715         (WTF::RefPtr<T>::RefPtr):
1716         * wtf/text/WTFString.h:
1717         (WTF::String::String):
1718
1719 2014-06-05  Yoav Weiss  <yoav@yoav.ws>
1720
1721         Align srcset parser with recent spec changes
1722         https://bugs.webkit.org/show_bug.cgi?id=133504
1723
1724         Reviewed by Darin Adler.
1725
1726         I've added toInt and toFloat methods to StringView, and exposed
1727         charactersToInt so that they can be used by
1728         HTMLSrcsetParser.cpp.
1729
1730         * wtf/text/WTFString.h:
1731         * wtf/text/StringView.h:
1732         (WTF::StringView::toInt):
1733         (WTF::StringView::toFloat):
1734
1735 2014-06-04  Alex Christensen  <achristensen@webkit.org>
1736
1737         Enable WebGL on Windows.
1738         https://bugs.webkit.org/show_bug.cgi?id=133503
1739
1740         Reviewed by Brent Fulgham.
1741
1742         * wtf/FeatureDefines.h:
1743         Enable WebGL for AppleWin and WinCairo ports.
1744
1745 2014-06-01  Jer Noble  <jer.noble@apple.com>
1746
1747         [MSE] Appends of overlapping sample data do not clear existing samples properly.
1748         https://bugs.webkit.org/show_bug.cgi?id=133435
1749
1750         Reviewed by Darin Adler.
1751
1752         Add a dump method to MediaTime, so that MediaTimes can be easily converted to strings (for logging purposes).
1753
1754         * wtf/MediaTime.cpp:
1755         (WTF::MediaTime::dump):
1756         * wtf/MediaTime.h:
1757
1758 2014-05-31  Anders Carlsson  <andersca@apple.com>
1759
1760         Add a LazyNeverDestroyed class template and use it
1761         https://bugs.webkit.org/show_bug.cgi?id=133425
1762
1763         Reviewed by Darin Adler.
1764
1765         LazyNeverDestroyed is similar to NeverDestroyed, except it's lazily constructed
1766         by calling construct(). This makes it useful for using inside std::call_once functions.
1767         
1768         * wtf/Forward.h:
1769         * wtf/NeverDestroyed.h:
1770         (WTF::LazyNeverDestroyed::construct):
1771         (WTF::LazyNeverDestroyed::operator T&):
1772         (WTF::LazyNeverDestroyed::get):
1773         (WTF::LazyNeverDestroyed::asPtr):
1774         (WTF::LazyNeverDestroyed::MaybeRelax::MaybeRelax):
1775         * wtf/mac/DeprecatedSymbolsUsedBySafari.mm:
1776         (WTF::atomicallyInitializedStaticMutex):
1777         * wtf/unicode/icu/CollatorICU.cpp:
1778         (WTF::cachedCollatorMutex):
1779
1780 2014-05-29  Alex Christensen  <achristensen@webkit.org>
1781
1782         Enable css jit by default on arm64.
1783         https://bugs.webkit.org/show_bug.cgi?id=133246
1784         <rdar://problem/17073407>
1785
1786         Reviewed by Benjamin Poulain.
1787
1788         * wtf/Platform.h:
1789         Added arm64 to list of supported architectures.
1790
1791 2014-05-28  Filip Pizlo  <fpizlo@apple.com>
1792
1793         DFG::DCEPhase inserts into an insertion set in reverse, causing hilarious basic block corruption if you kill a lot of NewArrays
1794         https://bugs.webkit.org/show_bug.cgi?id=133368
1795
1796         Reviewed by Mark Lam.
1797
1798         * wtf/Insertion.h:
1799         (WTF::executeInsertions): This algorithm is only correct if insertions are added in the right order. Assert that the order is right.
1800
1801 2014-05-27  Jon Lee  <jonlee@apple.com>
1802
1803         Update ENABLE(MEDIA_SOURCE) on Mac
1804         https://bugs.webkit.org/show_bug.cgi?id=133141
1805
1806         Reviewed by Darin Adler.
1807
1808         * wtf/FeatureDefines.h: #ifdef unneeded for Mac since it's covered in the .xcconfigs.
1809
1810 2014-05-27  Tibor Meszaros  <tmeszaros.u-szeged@partner.samsung.com>
1811
1812         Remove BLOB guards
1813         https://bugs.webkit.org/show_bug.cgi?id=132863
1814
1815         Reviewed by Csaba Osztrogonác.
1816
1817         * wtf/FeatureDefines.h:
1818
1819 2014-05-27  Gwang Yoon Hwang  <yoon@igalia.com>
1820
1821         [GLIB] RunLoop::dispatch always executes the function on the main thread instead of the target thread.
1822         https://bugs.webkit.org/show_bug.cgi?id=133291
1823
1824         Reviewed by Carlos Garcia Campos.
1825
1826         GMainLoopSource::schedule[AfterDelay] must be used with the appropriate
1827         GMainContext. Because current implementations in RunLoopGtk passes nullptr
1828         instead of its runLoopContext when using GMainLoopSource, all of dispatched
1829         functions are executed on the main thread regardless of which runloops is used.
1830
1831         This patch fixes the issue by passing the m_runLoopContext instead the default
1832         parameter to the GMainLoopSource::schedule[AfterDelay].
1833
1834         * wtf/gtk/RunLoopGtk.cpp:
1835         (WTF::RunLoop::wakeUp):
1836         (WTF::RunLoop::TimerBase::start):
1837
1838 2014-05-26  Darin Adler  <darin@apple.com>
1839
1840         Class name matching should use ASCII case-insensitive matching, not Unicode case folding
1841         https://bugs.webkit.org/show_bug.cgi?id=133292
1842
1843         Reviewed by Anders Carlsson.
1844
1845         * wtf/text/AtomicString.cpp:
1846         (WTF::AtomicString::addSlowCase): Change to take references instead of pointers since these
1847         arguments can never be null.
1848         (WTF::AtomicString::lower): Rearranged slightly to use PassRef in a more efficient but
1849         slightly uglier way.
1850         (WTF::AtomicString::convertToASCIILowercase): Added.
1851         * wtf/text/AtomicString.h: Updated for above changes.
1852
1853         * wtf/text/StringImpl.cpp:
1854         (WTF::StringImpl::convertToASCIILowercase): Added.
1855         * wtf/text/StringImpl.h: Updated for above.
1856
1857         * wtf/text/WTFString.cpp:
1858         (WTF::String::convertToASCIILowercase): Added.
1859         * wtf/text/WTFString.h: Updated for above.
1860
1861 2014-05-22  Zan Dobersek  <zdobersek@igalia.com>
1862
1863         Add the partial specialization for VectorTraits<std::unique_ptr<P>>
1864         https://bugs.webkit.org/show_bug.cgi?id=133083
1865
1866         Reviewed by Andreas Kling.
1867
1868         * wtf/VectorTraits.h: Like for RefPtr<P>, OwnPtr<P> and Ref<P>, the partial
1869         specialization for VectorTraits<std::unique_ptr<P>> should exist and should
1870         inherit from SimpleClassVector.
1871
1872 2014-05-20  Geoffrey Garen  <ggaren@apple.com>
1873
1874         Rolled out <http://trac.webkit.org/changeset/166184>
1875         https://bugs.webkit.org/show_bug.cgi?id=133144
1876
1877         Reviewed by Gavin Barraclough.
1878
1879         It caused a performance regression.
1880
1881         * wtf/FastMalloc.cpp:
1882         (WTF::TCMalloc_PageHeap::runScavengerThread):
1883         * wtf/Threading.h:
1884         * wtf/ThreadingPthreads.cpp:
1885         (WTF::createThreadInternal):
1886         (WTF::setCurrentThreadQOSUtility): Deleted.
1887         * wtf/ThreadingWin.cpp:
1888         (WTF::setCurrentThreadQOSUtility): Deleted.
1889
1890 2014-05-20  Jer Noble  <jer.noble@apple.com>
1891
1892         [Mac] AVAssets are never destroyed; lack of an autorelease pool when calling callOnMainThread.
1893         https://bugs.webkit.org/show_bug.cgi?id=133130
1894
1895         Reviewed by Geoff Garen.
1896
1897         Wrap the function to be called in an autorelease pool, so that autoreleased objects are cleaned
1898         up immediately after the end of the function.
1899
1900         * wtf/mac/MainThreadMac.mm:
1901         (WTF::timerFired):
1902
1903 2014-05-18  Rik Cabanier  <cabanier@adobe.com>
1904
1905         support for navigator.hardwareConcurrency
1906         https://bugs.webkit.org/show_bug.cgi?id=132588
1907
1908         Reviewed by Filip Pizlo.
1909
1910         * wtf/FeatureDefines.h:
1911
1912 2014-05-14  Tibor Meszaros  <tmeszaros.u-szeged@partner.samsung.com>
1913
1914         Remove CSS_STICKY_POSITION guards
1915         https://bugs.webkit.org/show_bug.cgi?id=132676
1916
1917         Reviewed by Simon Fraser.
1918
1919         * wtf/FeatureDefines.h:
1920
1921 2014-05-13  Simon Fraser  <simon.fraser@apple.com>
1922
1923         [iOS WK2] background-attachment:fixed behaves very poorly
1924         https://bugs.webkit.org/show_bug.cgi?id=132881
1925         <rdar://problem/16789526>
1926
1927         Reviewed by Beth Dakin.
1928         
1929         Remove ENABLE_FAST_MOBILE_SCROLLING. Ports can use the fixedBackgroundsPaintRelativeToDocument
1930         setting now.
1931
1932         * wtf/FeatureDefines.h:
1933
1934 2014-05-08  Alexey Proskuryakov  <ap@apple.com>
1935
1936         Automatically zip document bundles used via File API
1937         https://bugs.webkit.org/show_bug.cgi?id=132713
1938         <rdar://problem/13397892>
1939
1940         Reviewed by Anders Carlsson.
1941
1942         * wtf/FeatureDefines.h: Added ENABLE_FILE_REPLACEMENT for Mac.
1943
1944 2014-05-07  Filip Pizlo  <fpizlo@apple.com>
1945
1946         UNREACHABLE_FOR_PLATFORM() is meant to be a release crash.
1947
1948         Rubber stamped by Mark Hahnenberg..
1949
1950         * wtf/Assertions.h:
1951         (UNREACHABLE_FOR_PLATFORM):
1952
1953 2014-05-06  Alberto Garcia  <berto@igalia.com>
1954
1955         There is no HW_AVAILCPU on FreeBSD, NetBSD, and OpenBSD
1956         https://bugs.webkit.org/show_bug.cgi?id=132542
1957
1958         Reviewed by Michael Saboff.
1959
1960         Use sysconf() to get the number of processor cores.
1961
1962         * wtf/NumberOfCores.cpp:
1963         (WTF::numberOfProcessorCores):
1964
1965 2014-05-04  Darin Adler  <darin@apple.com>
1966
1967         RetainPtr: Use adoptCF function instead of AdoptCF constructor argument
1968         https://bugs.webkit.org/show_bug.cgi?id=80222
1969
1970         Reviewed by Alexey Proskuryakov.
1971
1972         All the clients are gone, so we can now remove AdoptCF and AdoptNS.
1973
1974         * wtf/RetainPtr.h: Removed the public constructors that let you specify AdoptCF
1975         and AdoptNS. Instead, made the adoptCF and adoptNS functions be friends and use
1976         a private constructor that takes an Adopt argument.
1977         (WTF::adoptCF): Moved the Objective-C class check in here.
1978         (WTF::adoptNS): Moved the code to deal with the CFRetain for garbage collection
1979         in here; it used to be spread across the constructor and adoptNSReference.
1980
1981 2014-05-04  Andreas Kling  <akling@apple.com>
1982
1983         Optimize JSRopeString for resolving directly to AtomicString.
1984         <https://webkit.org/b/132548>
1985
1986         Add AtomicString::find([LU]Char*, unsigned length) helpers for finding
1987         an existing AtomicString without a StringImpl on hand.
1988
1989         Reviewed by Filip Pizlo.
1990
1991         * wtf/text/AtomicString.h:
1992         * wtf/text/AtomicString.cpp:
1993         (WTF::AtomicString::find):
1994
1995 2014-05-01  Brent Fulgham  <bfulgham@apple.com>
1996
1997         Fix handling of attributes prior to compiling shader
1998         https://bugs.webkit.org/show_bug.cgi?id=132430
1999
2000         Reviewed by Dean Jackson.
2001
2002         WebGL programs that called bindAttribLocations prior to compiling shader sources
2003         would perform the bind using the non-hashed symbol name, but would later create
2004         the attributes as hashed names. Consequently, the program would refer to
2005         attributes that were never actually part of any shader, resulting in some amazing
2006         display artifacts.
2007
2008         This patch adds a dictionary of hashed symbol names so that we can tell the WebGL
2009         program the proper name that will be used when the shader is eventually compiled,
2010         allowing the WebGL program to link against the proper symbol after compiling and
2011         linking completes.
2012
2013         * wtf/HexNumber.h:
2014         (WTF::appendUnsigned64AsHex): Add uint64_t-compatible hex->string converter.
2015
2016 2014-04-30  Geoffrey Garen  <ggaren@apple.com>
2017
2018         Link against bmalloc in production builds
2019         https://bugs.webkit.org/show_bug.cgi?id=132413
2020
2021         Reviewed by Sam Weinig.
2022
2023         Production builders have been configured to handle this, so let's build
2024         it.
2025
2026         * Configurations/WTF.xcconfig:
2027
2028 2014-05-01  Ryuan Choi  <ryuan.choi@samsung.com>
2029
2030         [EFL] There are many warnings with software backend
2031         https://bugs.webkit.org/show_bug.cgi?id=132422
2032
2033         Reviewed by Gyuyoung Kim.
2034
2035         * wtf/efl/EflTypedefs.h: Added Ecore_X_Window typedef
2036
2037 2014-04-30  Simon Fraser  <simon.fraser@apple.com>
2038
2039         Remove ENABLE_PLUGIN_PROXY_FOR_VIDEO
2040         https://bugs.webkit.org/show_bug.cgi?id=132396
2041
2042         Reviewed by Eric Carlson.
2043
2044         Remove ENABLE_PLUGIN_PROXY_FOR_VIDEO and related code.
2045
2046         * wtf/FeatureDefines.h:
2047
2048 2014-04-30  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
2049
2050         [GTK][GStreamer] Remove unnecessary GLIB_CHECK_VERSION #ifdefs
2051         https://bugs.webkit.org/show_bug.cgi?id=132390
2052
2053         Reviewed by Philippe Normand.
2054
2055         Since EFL port use GLib 2.38 and GTK+, 2.33.2, I assume it is OK
2056         remove, in GTK+ and GST, the existing glib version guards.
2057
2058         This code was rollback from r149879 because Qt MIPS used it. But since
2059         Qt is gone, it is safe to remove now.
2060
2061         * wtf/gobject/GRefPtr.cpp:
2062         (WTF::refGPtr): Deleted.
2063         (WTF::derefGPtr): Deleted.
2064
2065 2014-04-29  Alex Christensen  <achristensen@webkit.org>
2066
2067         [WinCairo] Switch video from GStreamer to Media Foundation.
2068         https://bugs.webkit.org/show_bug.cgi?id=132358
2069
2070         Reviewed by Brent Fulgham.
2071
2072         * WTF.vcxproj/WTF.vcxproj:
2073         Removed dependencies on GStreamer.
2074         * wtf/Platform.h:
2075         Use Media Foundation instead of GStreamer and GLib.
2076
2077 2014-04-29  Filip Pizlo  <fpizlo@apple.com>
2078
2079         Unreviewed, fix cloop build.
2080
2081         * wtf/Platform.h:
2082
2083 2014-04-29  Michael Saboff  <msaboff@apple.com>
2084
2085         For DARWIN platforms, use system temporary directory for DataLog output
2086         https://bugs.webkit.org/show_bug.cgi?id=132346
2087
2088         Reviewed by Geoffrey Garen.
2089
2090         Added code to call confstr() to access the process's temporary directory to use that
2091         location instead of /tmp/.  Put the code behind #ifdef DATA_LOG_TO_DARWIN_TEMP_DIR.
2092
2093         * wtf/DataLog.cpp:
2094         (WTF::initializeLogFileOnce):
2095
2096 2014-04-25  Filip Pizlo  <fpizlo@apple.com>
2097
2098         Figure out how many cores are available for realsies.
2099
2100         Rubber stamped by Andreas Kling.
2101         
2102         HW_AVAILCPU is more canonical than HW_NCPU. For example if you use hacks to tell Darwin
2103         to make it seem like there are fewer CPUs, HW_AVAILCPU will change but HW_NCPU won't.
2104         HW_NCPU doesn't reflect how much actual paralellism you'll get; it's merely reporting
2105         facts about the machine you're running on. HW_AVAILCPU is almost always what WebKit
2106         wants since it uses this information to decide how many threads to launch for various
2107         things.
2108
2109         * wtf/NumberOfCores.cpp:
2110         (WTF::numberOfProcessorCores):
2111
2112 2014-04-22  Brent Fulgham  <bfulgham@apple.com>
2113
2114         [Win] Support Python 2.7 in Cygwin
2115         https://bugs.webkit.org/show_bug.cgi?id=132023
2116
2117         Reviewed by Michael Saboff.
2118
2119         * WTF.vcxproj/WTFGenerated.make: Use proper path to Python.
2120
2121 2014-04-21  Eric Carlson  <eric.carlson@apple.com>
2122
2123         [Mac] implement WebKitDataCue
2124         https://bugs.webkit.org/show_bug.cgi?id=131799
2125
2126         Reviewed by Dean Jackson.
2127
2128         * wtf/FeatureDefines.h: Define ENABLE_DATACUE_VALUE.
2129
2130 2014-04-21  Darin Adler  <darin@apple.com>
2131
2132         Add HashSet::takeAny
2133         https://bugs.webkit.org/show_bug.cgi?id=131928
2134
2135         Reviewed by Benjamin Poulain.
2136
2137         * wtf/HashSet.h: Added an overload of take that takes an iterator,
2138         and used it to implement both the existing take and new takeAny functions.
2139
2140 2014-04-20  Andreas Kling  <akling@apple.com>
2141
2142         Speed up jsStringWithCache() through WeakGCMap inlining.
2143         <https://webkit.org/b/131923>
2144
2145         Add HashMap::fastAdd(), which is the same as add() except we'll tell
2146         the compiler to aggressively inline it.
2147
2148         Reviewed by Darin Adler.
2149
2150         * wtf/HashMap.h:
2151         * wtf/HashTable.h:
2152
2153 2014-04-19  Filip Pizlo  <fpizlo@apple.com>
2154
2155         Make it easier to check if an integer sum would overflow
2156         https://bugs.webkit.org/show_bug.cgi?id=131900
2157
2158         Reviewed by Darin Adler.
2159
2160         * wtf/CheckedArithmetic.h:
2161         (WTF::checkedSum):
2162         (WTF::sumOverflows):
2163
2164 2014-04-18  Commit Queue  <commit-queue@webkit.org>
2165
2166         Unreviewed, rolling out r167527.
2167         https://bugs.webkit.org/show_bug.cgi?id=131883
2168
2169         Broke 32-bit build (Requested by ap on #webkit).
2170
2171         Reverted changeset:
2172
2173         "[Mac] implement WebKitDataCue"
2174         https://bugs.webkit.org/show_bug.cgi?id=131799
2175         http://trac.webkit.org/changeset/167527
2176
2177 2014-04-18  Eric Carlson  <eric.carlson@apple.com>
2178
2179         [Mac] implement WebKitDataCue
2180         https://bugs.webkit.org/show_bug.cgi?id=131799
2181
2182         Reviewed by Dean Jackson.
2183
2184         * wtf/FeatureDefines.h: Define ENABLE_DATACUE_VALUE.
2185
2186 2014-04-18  Martin Robinson  <mrobinson@igalia.com>
2187
2188         Remove DynamicAnnotations.h?
2189         https://bugs.webkit.org/show_bug.cgi?id=131754
2190
2191         Reviewed by Simon Fraser.
2192
2193         This file, which helped support tools like Valgrind was unused.
2194
2195         * WTF.vcxproj/WTF.vcxproj: Remove references to the files.
2196         * WTF.vcxproj/WTF.vcxproj.filters: Remove references to the files.
2197         * WTF.xcodeproj/project.pbxproj: Remove references to the files.
2198         * wtf/CMakeLists.txt: Remove references to the files.
2199         * wtf/DynamicAnnotations.cpp: Removed.
2200         * wtf/DynamicAnnotations.h: Removed.
2201         * wtf/ThreadSafeRefCounted.h: Remove references to the files.
2202         * wtf/text/StringStatics.cpp: Remove references to the files.
2203
2204 2014-04-18  Philippe Normand  <pnormand@igalia.com>
2205
2206         Remove NETWORK_INFO support
2207         https://bugs.webkit.org/show_bug.cgi?id=131841
2208
2209         Reviewed by Gyuyoung Kim.
2210
2211         * wtf/FeatureDefines.h:
2212
2213 2014-04-17  Filip Pizlo  <fpizlo@apple.com>
2214
2215         Don't include CompilationThread.h from StringImpl.h
2216         https://bugs.webkit.org/show_bug.cgi?id=131817
2217
2218         Reviewed by Simon Fraser.
2219
2220         * wtf/CompilationThread.h:
2221         * wtf/StdLibExtras.h:
2222         * wtf/text/StringImpl.h:
2223
2224 2014-04-17  Darin Adler  <darin@apple.com>
2225
2226         Use HashMap<unique_ptr> and Vector<unique_ptr> instead of deprecatedDeleteAllValues
2227         https://bugs.webkit.org/show_bug.cgi?id=73757
2228
2229         Reviewed by Brent Fulgham.
2230
2231         * wtf/Vector.h:
2232         (WTF::deprecatedDeleteAllValues): Deleted.
2233
2234 2014-04-17  Darin Adler  <darin@apple.com>
2235
2236         Add separate flag for IndexedDatabase in workers since the current implementation is not threadsafe
2237         https://bugs.webkit.org/show_bug.cgi?id=131785
2238         rdar://problem/16003108
2239
2240         Reviewed by Brady Eidson.
2241
2242         * wtf/FeatureDefines.h: Added INDEXED_DATABASE_IN_WORKERS.
2243
2244 2014-04-16  Simon Fraser  <simon.fraser@apple.com>
2245
2246         Don't include CryptographicallyRandomNumber.h in StringImpl.h
2247         https://bugs.webkit.org/show_bug.cgi?id=131772
2248
2249         Reviewed by Sam Weinig.
2250
2251         * wtf/text/StringImpl.h:
2252
2253 2014-04-16  Gavin Barraclough  <barraclough@apple.com>
2254
2255         Update to pthread QoS SPI
2256         https://bugs.webkit.org/show_bug.cgi?id=131753
2257
2258         Rubber stamped by Benjamin Poulain
2259
2260         * wtf/ThreadingPthreads.cpp:
2261         (WTF::setCurrentThreadQOSUtility):
2262
2263 2014-04-14  Geoffrey Garen  <ggaren@apple.com>
2264
2265         WTF should have an optional mbmalloc target so we can benchmark FastMalloc
2266         https://bugs.webkit.org/show_bug.cgi?id=131662
2267
2268         Reviewed by Darin Adler.
2269
2270         * WTF.xcodeproj/project.pbxproj: Added the target.
2271         * wtf/mbmalloc.cpp: Added. Implements the libmbmalloc.dylib API required
2272         by MallocBench.
2273
2274 2014-04-16  Darin Adler  <darin@apple.com>
2275
2276         Make Vector::takeLast work with move-only types (and optimize for types where move is faster)
2277         https://bugs.webkit.org/show_bug.cgi?id=131735
2278
2279         Reviewed by Alexey Proskuryakov.
2280
2281         * wtf/Vector.h:
2282         (WTF::Vector::takeLast): Added a missing std::move. All the other take functions have it.
2283
2284 2014-04-14  Mark Lam  <mark.lam@apple.com>
2285
2286         monotonicallyIncreasingTime() should only initialize its static timebaseInfo once.
2287         <https://webkit.org/b/131630>
2288
2289         Reviewed by Filip Pizlo.
2290
2291         The current initialization of the static field is not thread safe.
2292
2293         * wtf/CurrentTime.cpp:
2294         (WTF::monotonicallyIncreasingTime):
2295
2296 2014-04-14  Benjamin Poulain  <benjamin@webkit.org>
2297
2298         [JSC] Improve the call site of string comparison in some hot path
2299         https://bugs.webkit.org/show_bug.cgi?id=131605
2300
2301         Reviewed by Darin Adler.
2302
2303         * wtf/text/StringImpl.cpp:
2304         (WTF::stringImplContentEqual):
2305         Inline that function to reduce the call overhead for JSC.
2306         This is only inlined twice, it is not catastrophic for our binary.
2307
2308 2014-04-13  Andy Estes  <aestes@apple.com>
2309
2310         Relax adoption requirements of RefCounted objects that are NeverDestroyed
2311         https://bugs.webkit.org/show_bug.cgi?id=131593
2312
2313         Reviewed by Dan Bernstein.
2314
2315         RefCounted objects that are created by NeverDestroyed<> won't have a
2316         RefPtr adopting them, so call relaxAdoptionRequirements().
2317
2318         * wtf/NeverDestroyed.h:
2319         (WTF::NeverDestroyed::NeverDestroyed):
2320         (WTF::NeverDestroyed::MaybeRelax::MaybeRelax):
2321
2322 2014-04-10  Brent Fulgham  <bfulgham@apple.com>
2323
2324         [Win] Clean up some 64-bit warnings from Visual Studio analyzer
2325         https://bugs.webkit.org/show_bug.cgi?id=131514
2326
2327         Reviewed by Tim Horton.
2328
2329         * WTF.vcxproj/WTF.vcxproj: Use correct platform settings for
2330         64-bit build.
2331         * config.h: Ditto.
2332         * wtf/CurrentTime.cpp:
2333         (WTF::highResUpTime): Resolve warning about deprecated API.
2334         * wtf/StackBounds.cpp:
2335         (WTF::StackBounds::initialize): Silence warning about
2336         an uninitialized variable.
2337
2338 2014-04-09  Geoffrey Garen  <ggaren@apple.com>
2339
2340         Rolled back in r166972.
2341
2342         This time, we conditionally exclude linking against bmalloc in Production
2343         builds. Production builds will not be able to link against bmalloc
2344         until the Production build system has been updated to build bmalloc.
2345
2346             WTF should link against bmalloc
2347             https://bugs.webkit.org/show_bug.cgi?id=131403
2348
2349             Reviewed by Mark Rowe.
2350
2351             * Configurations/WTF.xcconfig:
2352             * WTF.xcodeproj/project.pbxproj:
2353
2354 2014-04-09  Geoffrey Garen  <ggaren@apple.com>
2355
2356         Put bmalloc headers in the right place
2357         https://bugs.webkit.org/show_bug.cgi?id=131464
2358
2359         Reviewed by Mark Rowe.
2360
2361         * wtf/FastMalloc.cpp: Use "<bmalloc/...>" syntax so we can find our
2362         headers in <header-root>/usr/local/include/bmalloc/.
2363
2364 2014-04-09  Geoffrey Garen  <ggaren@apple.com>
2365
2366         Rolled back out r166972.
2367
2368         The production buildbots are still broken because the build-root script
2369         doesn't build bmalloc.
2370
2371         * WTF.xcodeproj/project.pbxproj:
2372
2373 2014-04-09  Geoffrey Garen  <ggaren@apple.com>
2374
2375         Rolled back in r166972.
2376
2377         The iOS buildbot's scripts have been updated to build bmalloc, so the
2378         build should now succeed on the bot.
2379
2380         Also renamed "Frameworks" to "Libraries" as suggested in a review comment.
2381
2382             WTF should link against bmalloc
2383             https://bugs.webkit.org/show_bug.cgi?id=131403
2384
2385             Reviewed by Michael Saboff.
2386
2387             This is required to build successfullly with bmalloc enabled.
2388
2389             * WTF.xcodeproj/project.pbxproj:
2390
2391 2014-04-08  Geoffrey Garen  <ggaren@apple.com>
2392
2393         Stop linking WTF against bmalloc.
2394
2395         Reviewed by Enrica Casucci.
2396
2397         This seems to have broken an iOS buildbot script. Disable it for now
2398         until we can fix the script.
2399
2400         * WTF.xcodeproj/project.pbxproj:
2401
2402 2014-04-08  Geoffrey Garen  <ggaren@apple.com>
2403
2404         WTF should link against bmalloc
2405         https://bugs.webkit.org/show_bug.cgi?id=131403
2406
2407         Reviewed by Michael Saboff.
2408
2409         This is required to build successfullly with bmalloc enabled.
2410
2411         * WTF.xcodeproj/project.pbxproj:
2412
2413 2014-04-08  Geoffrey Garen  <ggaren@apple.com>
2414
2415         Added a bmalloc back-end for FastMalloc
2416         https://bugs.webkit.org/show_bug.cgi?id=131387
2417
2418         Reviewed by Andreas Kling.
2419
2420         We'll need to rethink some things if we adopt this back-end. For example,
2421         fastMallocSize() and fastMallocGoodSize() are no longer real things. But,
2422         this is enough to test for now.
2423
2424         * wtf/FastMalloc.cpp:
2425         (WTF::fastMalloc):
2426         (WTF::fastCalloc):
2427         (WTF::fastRealloc):
2428         (WTF::fastFree):
2429         (WTF::fastMallocSize):
2430         (WTF::fastMallocGoodSize):
2431         (WTF::tryFastMalloc):
2432         (WTF::tryFastRealloc):
2433         (WTF::tryFastCalloc):
2434         (WTF::releaseFastMallocFreeMemory):
2435         (WTF::fastMallocStatistics):
2436
2437 2014-04-08  Andres Gomez  <agomez@igalia.com>
2438
2439         [GTK] [EFL] Build fails with GCC < 4.8.x
2440         https://bugs.webkit.org/show_bug.cgi?id=130585
2441
2442         Reviewed by Martin Robinson.
2443
2444         The behavior in lower versions of GCC seem to be related to
2445         http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-active.html#2132.
2446
2447         Provided explicit casts for the failing ambiguous overloads.
2448
2449         * wtf/gtk/MainThreadGtk.cpp:
2450         (WTF::scheduleDispatchFunctionsOnMainThread):
2451         * wtf/gtk/RunLoopGtk.cpp:
2452         (WTF::RunLoop::wakeUp): Provided lambda with a RefPtr instead of
2453         ref and de-referring.
2454
2455 2014-04-04  Mark Lam  <mark.lam@apple.com>
2456
2457         Date object needs to check for ES5 15.9.1.14 TimeClip limit.
2458         <https://webkit.org/b/131248>
2459
2460         Reviewed by Mark Hahnenberg.
2461
2462         * wtf/DateMath.cpp:
2463         - Moved the definition of maxECMAScriptTime to the .h file so that we
2464           can use it in other files as well.
2465         (WTF::msToYear):
2466         - Removed a stale comment for parseDateFromNullTerminatedCharacters().
2467         * wtf/DateMath.h:
2468
2469 2014-04-04  Mark Hahnenberg  <mhahnenberg@apple.com>
2470
2471         Enhanced GC logging
2472         https://bugs.webkit.org/show_bug.cgi?id=131246
2473
2474         Reviewed by Geoff Garen.
2475
2476         Remove OBJECT_MARK_LOGGING
2477
2478         * wtf/FeatureDefines.h:
2479         * wtf/Platform.h:
2480
2481 2014-04-03  Zsolt Borbely  <zsborbely.u-szeged@partner.samsung.com>
2482
2483         [EFL] Enable CSS JIT again, it works fine after r166666.
2484
2485         Reviewed by Csaba Osztrogonác.
2486
2487         * wtf/Platform.h:
2488
2489 2014-04-03  Javier Fernandez  <jfernandez@igalia.com>
2490
2491         [GTK][Cmake] Enable CSS JIT
2492         https://bugs.webkit.org/show_bug.cgi?id=131022
2493
2494         Reviewed by Martin Robinson.
2495
2496         * wtf/Platform.h: Enable CSS JIT for GTK port.
2497
2498 2014-04-02  Frédéric Wang  <fred.wang@free.fr>
2499
2500         Operator stretching: read the Open Type MATH table
2501         https://bugs.webkit.org/show_bug.cgi?id=130324
2502
2503         Reviewed by Chris Fleizach.
2504
2505         * wtf/Platform.h: enable OPENTYPE_MATH on platforms that can read OpenType tables.
2506
2507 2014-04-02  Alex Christensen  <achristensen@webkit.org>
2508
2509         [WinCairo] Build fix with GMainLoopSource.
2510         https://bugs.webkit.org/show_bug.cgi?id=131089
2511
2512         Reviewed by Carlos Garcia Campos.
2513
2514         * wtf/gobject/GMainLoopSource.cpp:
2515         Only compile if glib is used, which fixes compile errors with video disabled in WinCairo.
2516         * wtf/gobject/GMainLoopSource.h:
2517         Export the GMainLoopSource functions to WTF.dll to link with where they are called in the GStreamer code.
2518         Also removed spaces to appease style bot.
2519
2520 2014-04-01  Zsolt Borbely  <zsborbely.u-szeged@partner.samsung.com>
2521
2522         [EFL] REGRESSION(166569): It made DoYouEvenBench/Full.html, CSS/QuerySelector.html and Dromaeo performance tests crash
2523         https://bugs.webkit.org/show_bug.cgi?id=131039
2524
2525         Reviewed by Csaba Osztrogonác.
2526
2527         * wtf/Platform.h: Disable CSS JIT on EFL until proper fix.
2528
2529 2014-04-01  Commit Queue  <commit-queue@webkit.org>
2530
2531         Unreviewed, rolling out r166583.
2532         https://bugs.webkit.org/show_bug.cgi?id=131040
2533
2534         It's causing frequent crashes when running Layout Tests
2535         (Requested by svillar on #webkit).
2536
2537         Reverted changeset:
2538
2539         "[GTK][Cmake] Enable CSS JIT"
2540         https://bugs.webkit.org/show_bug.cgi?id=131022
2541         http://trac.webkit.org/changeset/166583
2542
2543 2014-04-01  Javier Fernandez  <jfernandez@igalia.com>
2544
2545         [GTK][Cmake] Enable CSS JIT
2546         https://bugs.webkit.org/show_bug.cgi?id=131022
2547
2548         Reviewed by Martin Robinson.
2549
2550         * wtf/Platform.h: Enable CSS JIT for GTK port.
2551
2552 2014-04-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2553
2554         [CMake][EFL] Enable CSS JIT
2555         https://bugs.webkit.org/show_bug.cgi?id=131010
2556
2557         Reviewed by Benjamin Poulain.
2558
2559         * wtf/Platform.h: Enable CSS JIT for EFL port.
2560
2561 2014-03-31  Dean Jackson  <dino@apple.com>
2562
2563         Remove WEB_ANIMATIONS
2564         https://bugs.webkit.org/show_bug.cgi?id=130989
2565
2566         Reviewed by Simon Fraser.
2567
2568         Remove this feature flag until we plan to implement.
2569
2570         * wtf/FeatureDefines.h:
2571
2572 2014-03-31  Alex Christensen  <achristensen@webkit.org>
2573
2574         Preparation for using Soup on Windows.
2575         https://bugs.webkit.org/show_bug.cgi?id=130615
2576
2577         Reviewed by Carlos Garcia Campos.
2578
2579         * WTF.vcxproj/WTF.vcxproj:
2580         * WTF.vcxproj/WTF.vcxproj.filters:
2581         Add all gobject source files in WinCairo build.
2582         * wtf/gobject/GRefPtr.h:
2583         Export refGPtr and derefGPtr overloads in WTF.dll to fix linker errors with WebKit.dll when using soup.
2584
2585 2014-03-31  Zan Dobersek  <zdobersek@igalia.com>
2586
2587         Use std::unique_ptr in WTF::CompressedVector, WTF::GenericCompressedData
2588         https://bugs.webkit.org/show_bug.cgi?id=130737
2589
2590         Switch to using std::unique_ptr instead of OwnPtr and PassOwnPtr
2591         for the CompressedVector and GenericCompressedData classes.
2592
2593         * wtf/Compression.cpp:
2594         (WTF::GenericCompressedData::create):
2595         * wtf/Compression.h:
2596         (WTF::CompressedVector::create):
2597         (WTF::CompressibleVector::decompressIfNecessary):
2598
2599 2014-03-28  Alexey Proskuryakov  <ap@apple.com>
2600
2601         [Mac] Enable async text input implementation
2602         https://bugs.webkit.org/show_bug.cgi?id=130856
2603
2604         Reviewed by Sam Weinig.
2605
2606         * wtf/Platform.h: Added a USE macro definition.
2607
2608 2014-03-28  peavo@outlook.com  <peavo@outlook.com>
2609
2610         Null pointer crash in String::append(UChar).
2611         https://bugs.webkit.org/show_bug.cgi?id=130900
2612
2613         Reviewed by Michael Saboff.
2614
2615         * wtf/text/WTFString.cpp:
2616         (WTF::String::append): Check and initialize m_impl member first, to avoid null pointer crash.
2617
2618 2014-03-27  Commit Queue  <commit-queue@webkit.org>
2619
2620         Unreviewed, rolling out r166360.
2621         https://bugs.webkit.org/show_bug.cgi?id=130869
2622
2623         Seems to have broken PLT (Requested by ap on #webkit).
2624
2625         Reverted changeset:
2626
2627         "Connection::dispatchOneMessage() can be re-entered while
2628         handling Cmd-key menu"
2629         https://bugs.webkit.org/show_bug.cgi?id=130767
2630         http://trac.webkit.org/changeset/166360
2631
2632 2014-03-27  Alexey Proskuryakov  <ap@apple.com>
2633
2634         Connection::dispatchOneMessage() can be re-entered while handling Cmd-key menu
2635         equivalents, ASSERT(!_data->_keyDownEventBeingResent)
2636         https://bugs.webkit.org/show_bug.cgi?id=130767
2637         <rdar://problem/16307487>
2638
2639         Reviewed by Darin Adler.
2640
2641         Changed RunLoop to wake up and fire timers only in default run loop mode by default,
2642         and added an ability to add more modes (can't use AppKit symbols in WTF).
2643
2644         In addition to this bug, the change also blocks modal alerts from appearing under
2645         menus during menu tracking.
2646
2647         * wtf/RunLoop.h:
2648         * wtf/cf/RunLoopCF.cpp:
2649         (WTF::RunLoop::RunLoop):
2650         (WTF::RunLoop::addModeForWakeUpAndTimers):
2651         (WTF::RunLoop::TimerBase::start):
2652
2653 2014-03-26  Zan Dobersek  <zdobersek@igalia.com>
2654
2655         Unreviewed. Removing the remaining Automake cruft.
2656
2657         * GNUmakefile.list.am: Removed.
2658
2659 2014-03-25  Martin Robinson  <mrobinson@igalia.com>
2660
2661         [GTK] Remove the autotools build
2662         https://bugs.webkit.org/show_bug.cgi?id=130717
2663
2664         Reviewed by Anders Carlsson.
2665
2666         * GNUmakefile.am: Removed.
2667         * config.h: Removed references to the autotools configure file.
2668
2669 2014-03-25  Gabor Rapcsanyi  <rgabor@webkit.org>
2670
2671         [ARM64] GCC generates wrong code with -O2 flag in WTF::weakCompareAndSwap
2672         https://bugs.webkit.org/show_bug.cgi?id=130500
2673
2674         Reviewed by Filip Pizlo.
2675
2676         Set the first operand to the exact register in the inline assembly with GCC.
2677
2678         * wtf/Atomics.h:
2679         (WTF::weakCompareAndSwap):
2680
2681 2014-03-25  Gabor Rapcsanyi  <rgabor@webkit.org>
2682
2683         [EFL] Add ARM64 build support
2684         https://bugs.webkit.org/show_bug.cgi?id=130506
2685
2686         Rubber stamped by Gyuyoung Kim.
2687
2688         * wtf/Platform.h: Set WTF_CPU_ARM64 when __aarch64__ is defined.
2689
2690 2014-03-24  Andy Estes  <aestes@apple.com>
2691
2692         Fix the iOS build.
2693
2694         * wtf/ThreadingPthreads.cpp:
2695         (WTF::createThreadInternal):
2696         (WTF::setCurrentThreadQOSUtility):
2697
2698 2014-03-24  Gavin Barraclough  <barraclough@apple.com>
2699
2700         Add support for thread QoS
2701         https://bugs.webkit.org/show_bug.cgi?id=130688
2702
2703         Speculative EFL build fix.
2704
2705         * wtf/ThreadingPthreads.cpp:
2706         (WTF::setCurrentThreadQOSUtility):
2707
2708 2014-03-24  Gavin Barraclough  <barraclough@apple.com>
2709
2710         Add support for thread QoS
2711         https://bugs.webkit.org/show_bug.cgi?id=130688
2712
2713         Reviewed by Andreas Kling.
2714
2715         * wtf/FastMalloc.cpp:
2716         (WTF::TCMalloc_PageHeap::runScavengerThread):
2717             - block freeing is a utility activity.
2718         * wtf/Threading.h:
2719             - declaration.
2720         * wtf/ThreadingPthreads.cpp:
2721         (WTF::createThreadInternal):
2722             - default to interactive.
2723         (WTF::setCurrentThreadQOSUtility):
2724             - implementation.
2725         * wtf/ThreadingWin.cpp:
2726         (WTF::setCurrentThreadQOSUtility):
2727             - no-op implementation.
2728
2729 2014-03-23  Hyowon Kim  <hw1008.kim@samsung.com>
2730
2731         Move all EFL typedefs into EflTypedefs.h.
2732         https://bugs.webkit.org/show_bug.cgi?id=130511
2733
2734         Reviewed by Gyuyoung Kim.
2735
2736         * wtf/Platform.h: include EflTypedefs.h.
2737         * wtf/efl/EflTypedefs.h: Added.
2738         * wtf/efl/RefPtrEfl.h: Remove EFL typedefs.
2739
2740 2014-03-22  Darin Adler  <darin@apple.com>
2741
2742         Remove String::deprecatedCharacters
2743         https://bugs.webkit.org/show_bug.cgi?id=126854
2744
2745         Reviewed by Sam Weinig.
2746
2747         * wtf/text/StringBuilder.cpp:
2748         (WTF::StringBuilder::reifyString): Removed code to update 16-bit shadow.
2749
2750         * wtf/text/StringBuilder.h: Removed deprecatedCharacters.
2751         (WTF::StringBuilder::StringBuilder): Removed m_valid16BitShadowLength.
2752         (WTF::StringBuilder::clear): Removed code to clear m_valid16BitShadowLength.
2753         (WTF::StringBuilder::swap): Removed code to swap m_valid16BitShadowLength.
2754
2755         * wtf/text/StringImpl.cpp:
2756         (WTF::StringImpl::~StringImpl): Removed code to free m_copyData16.
2757         (WTF::StringImpl::upper): Use StringView::upconvertedCharacters for slow case.
2758         (WTF::StringImpl::lower): Ditto.
2759         (WTF::StringImpl::find): Use characters8/16 rather than deprecatedCharacters.
2760         Added an 8-bit code path to one of the overloads. Might want to revisit later
2761         to decide whether to use templates instead of copy/paste, or even use StringView
2762         to cut down on duplicate code paths.
2763         (WTF::StringImpl::findIgnoringCase): Ditto.
2764         (WTF::StringImpl::sizeInBytes): Remove code to handle has16BitShadow case.
2765         (WTF::equalIgnoringNullity): Added. To be called by the Vector template in the header.
2766
2767         * wtf/text/StringImpl.h: Removed deprecatedCharacters, has16BitShadow,
2768         upconvertCharacters, getData16SlowCase, s_hashFlagHas16BitShadow, and m_copyData16.
2769         (WTF::equalIgnoringNullity): Changed the template function into an inline that calls
2770         a non-inline helper function. The non-inline function handles both 8-bit and 16-bit
2771         strings.
2772
2773         * wtf/text/StringView.h:
2774         (WTF::StringView::StringView): Added an overload so we can make one of these directly
2775         from a StringImpl without first wrapping it in a string. Added an adapter so we can
2776         use StringView as part of string concatenation. Added an append function so we can
2777         append to a Vector<UChar>.
2778
2779         * wtf/text/WTFString.cpp:
2780         (WTF::String::append): Use StringView::getCharactersWithUpconvert. Also changed
2781         single-character append so it won't always turn an 8-bit string into a 16-bit one.
2782         (WTF::String::insert): Removed one insert overload and changed the other to use
2783         StringView::getCharactersWithUpconvert.
2784         (WTF::String::truncate): Changed to use StringImpl::substring.
2785         (WTF::String::percentage): Added characters8/16 paths instead of using
2786         deprecatedCharacters.
2787
2788         * wtf/text/WTFString.h: Removed deprecatedCharacters, getCharactersWithUpconvert,
2789         insert(UChar*, unsigned, unsigned), and the append overload for Vector<UChar>.
2790
2791 2014-03-20  Darin Adler  <darin@apple.com>
2792
2793         Fix a header guard mistake (harmless but clearly wrong)
2794         https://bugs.webkit.org/show_bug.cgi?id=130559
2795
2796         Reviewed by Andreas Kling.
2797
2798         * wtf/text/StringConcatenate.h: Correct the macro name in the header guard.
2799
2800 2014-03-20  Hyowon Kim  <hw1008.kim@samsung.com>
2801
2802         Move to using std::unique_ptr for EFL objects.
2803         https://bugs.webkit.org/show_bug.cgi?id=129853
2804
2805         Reviewed by Gyuyoung Kim.
2806
2807         EflUniquePtr is a template alias of std::unique_ptr
2808         with a custom deleter for each Efl Objects, which is motivated by GUniquePtr.
2809         This patch replaces uses of OwnPtr and PassOwnPtr for Efl objects with EflUniquePtr.
2810
2811         * wtf/OwnPtrCommon.h:
2812         * wtf/PlatformEfl.cmake:
2813         * wtf/RunLoop.h:
2814         * wtf/efl/MainThreadEfl.cpp:
2815         (WTF::pipeObject):
2816         (WTF::initializeMainThreadPlatform):
2817         * wtf/efl/OwnPtrEfl.cpp: Removed.
2818         * wtf/efl/RunLoopEfl.cpp:
2819         (WTF::RunLoop::RunLoop):
2820         * wtf/efl/UniquePtrEfl.h: Added.
2821         (WTF::EflPtrDeleter::operator()):
2822
2823 2014-03-20  Gavin Barraclough  <barraclough@apple.com>
2824
2825         Remove IdentifierTable typedef, isIdentifier()
2826         https://bugs.webkit.org/show_bug.cgi?id=130533
2827
2828         Rubber stamped by Geoff Garen.
2829
2830         Code should use AtomicStringTable, isAtomic() directly.
2831
2832         * wtf/WTFThreadData.h:
2833         (WTF::WTFThreadData::setCurrentAtomicStringTable):
2834         (WTF::WTFThreadData::resetCurrentAtomicStringTable):
2835             - removed IdentifierTypedef.
2836         * wtf/text/StringImpl.h:
2837         (WTF::StringImpl::flagIsAtomic):
2838             - renamed flagIsIdentfier -> flagIsAtomic.
2839
2840 2014-03-20  Gavin Barraclough  <barraclough@apple.com>
2841
2842         Merge AtomicString, Identifier
2843         https://bugs.webkit.org/show_bug.cgi?id=128624
2844
2845         Reviewed by Geoff Garen.
2846
2847         WTF::StringImpl currently supports two uniquing mechanism - AtomicString and
2848         Identifer - that is one too many.
2849
2850         Remove Identifier in favour of AtomicString. Identifier had two interesting
2851         mechanisms that we preserve.
2852
2853         (1) JSC API VMs each get their own string table, switch the string table on
2854             API entry/exit.
2855         (2) JSC caches a pointer to the string table on the VM to avoid a thread
2856             specific access. Adds a new AtomicString::add method to support this.
2857
2858         * wtf/WTFThreadData.cpp:
2859         (WTF::WTFThreadData::WTFThreadData):
2860             - remove allocation of IdentifierTable.
2861         (WTF::WTFThreadData::~WTFThreadData):
2862             - remove deletion of IdentifierTable.
2863         * wtf/WTFThreadData.h:
2864         (WTF::WTFThreadData::atomicStringTable):
2865             - table is now switched by JSC API, return the current table.
2866         (WTF::WTFThreadData::currentIdentifierTable):
2867             - now returns the current AtomicStringTable.
2868         (WTF::WTFThreadData::setCurrentIdentifierTable):
2869             - now sets the current AtomicStringTable.
2870         (WTF::WTFThreadData::resetCurrentIdentifierTable):
2871             - now resets the AtomicStringTable.
2872         * wtf/text/AtomicString.cpp:
2873         (WTF::AtomicString::addSlowCase):
2874             - add without thread-specific access to access string table.
2875         * wtf/text/AtomicString.h:
2876         (WTF::AtomicString::addWithStringTableProvider):
2877             - add without thread-specific access (used by JSC, string table provided by VM or ExecState).
2878         * wtf/text/AtomicStringTable.cpp:
2879         (WTF::AtomicStringTable::create):
2880             - renamed m_atomicStringTable -> m_defaultAtomicStringTable.
2881         (WTF::AtomicStringTable::~AtomicStringTable):
2882         (WTF::AtomicStringTable::destroy):
2883             - clearing of table moved from AtomicStringTable::destroy to destructor.
2884         * wtf/text/AtomicStringTable.h:
2885             - added destructor.
2886         * wtf/text/StringImpl.cpp:
2887         (WTF::StringImpl::~StringImpl):
2888             - Identifers no longer exist; no need to remove them from IdentifierTable.
2889         * wtf/text/StringImpl.h:
2890         (WTF::StringImpl::StringImpl):
2891             - removed s_hashFlagIsIdentifier.
2892         (WTF::StringImpl::flagIsIdentifier):
2893             - s_hashFlagIsIdentifier -> s_hashFlagIsAtomic.
2894         (WTF::StringImpl::isIdentifier):
2895             - now synonymous to isAtomic().
2896         * wtf/text/StringStatics.cpp:
2897         (WTF::StringImpl::hashAndFlagsForEmptyUnique):
2898             - removed s_hashFlagIsIdentifier.
2899
2900 2014-03-20  Zan Dobersek  <zdobersek@igalia.com>
2901
2902         Unreviewed Clang build fix for the GTK port after r165952.
2903
2904         * wtf/gobject/GMainLoopSource.h: Include the <functional> header for the std::function<> objects.
2905
2906 2014-03-18  Carlos Garcia Campos  <cgarcia@igalia.com>
2907
2908         [GLIB] Add GMainLoopSource class to wrap idle and timeout sources
2909         https://bugs.webkit.org/show_bug.cgi?id=130027
2910
2911         Reviewed by Martin Robinson.
2912
2913         GLib main loop sources like idle and timeouts are sometimes
2914         unconvenient to use and it's very common to forget canceling the
2915         source when the object is destroyed or reset the source ID in the
2916         callback when called. GMainLoopSource is a wrapper class to make it
2917         easier to handle sources and also to avoid those typical mistakes.
2918         It forces to create sources with a name and the user doesn't have
2919         to deal with the source ID anymore. The source is cancelled when
2920         the object is deleted or when a new source is scheduled. It uses
2921         std::function for callbacks so that we no longer need to use the
2922         "proxy" static callbacks either. We can use std::bind to use a
2923         function pointer or a member or even lambda functions. It also handles
2924         repeating sources automatically depending on whether the given
2925         function returns a bool or not.
2926
2927         * GNUmakefile.list.am:
2928         * wtf/PlatformEfl.cmake:
2929         * wtf/PlatformGTK.cmake:
2930         * wtf/RunLoop.h:
2931         * wtf/gobject/GMainLoopSource.cpp: Added.
2932         (WTF::GMainLoopSource::createAndDeleteOnDestroy):
2933         (WTF::GMainLoopSource::GMainLoopSource):
2934         (WTF::GMainLoopSource::~GMainLoopSource):
2935         (WTF::GMainLoopSource::cancel):
2936         (WTF::GMainLoopSource::reset):
2937         (WTF::GMainLoopSource::scheduleIdleSource):
2938         (WTF::GMainLoopSource::schedule):
2939         (WTF::GMainLoopSource::scheduleTimeoutSource):
2940         (WTF::GMainLoopSource::scheduleAfterDelay):
2941         (WTF::GMainLoopSource::voidCallback):
2942         (WTF::GMainLoopSource::boolCallback):
2943         (WTF::GMainLoopSource::socketCallback):
2944         (WTF::GMainLoopSource::destroy):
2945         (WTF::GMainLoopSource::voidSourceCallback):
2946         (WTF::GMainLoopSource::boolSourceCallback):
2947         (WTF::GMainLoopSource::socketSourceCallback):
2948         * wtf/gobject/GMainLoopSource.h: Added.
2949         (WTF::GMainLoopSource::isScheduled):
2950         * wtf/gtk/MainThreadGtk.cpp:
2951         (WTF::scheduleDispatchFunctionsOnMainThread):
2952         * wtf/gtk/RunLoopGtk.cpp:
2953         (WTF::RunLoop::wakeUp):
2954         (WTF::RunLoop::TimerBase::TimerBase):
2955         (WTF::RunLoop::TimerBase::start):
2956         (WTF::RunLoop::TimerBase::stop):
2957         (WTF::RunLoop::TimerBase::isActive):
2958
2959 2014-03-19  Gavin Barraclough  <barraclough@apple.com>
2960
2961         https://bugs.webkit.org/show_bug.cgi?id=130494
2962         EmptyUnique strings are Identifiers/Atomic
2963
2964         Reviewed by Geoff Garen.
2965
2966         EmptyUnique strings should set the Identifier/Atomic flag.
2967
2968         * wtf/text/AtomicString.h:
2969         (WTF::AtomicString::add):
2970             - Previously we assumed the only StringImpl that was validly allowed to claim to be
2971               Atomic but not be in a table was the canonical empty string. Now that EmptyUniques
2972               are also marked Atomic, all empty strings may pass this condition.
2973         * wtf/text/StringImpl.cpp:
2974         (WTF::StringImpl::~StringImpl):
2975             - EmptyUnique strings are not in the Atomic/Identfiier tabels, so don't need removing.
2976         * wtf/text/StringImpl.h:
2977         (WTF::StringImpl::StringImpl):
2978             - Change EmptyUnique constructor to call hashAndFlagsForEmptyUnique.
2979         * wtf/text/StringStatics.cpp:
2980         (WTF::StringImpl::hashAndFlagsForEmptyUnique):
2981             - Allocate a sequential hash code (this should be just as good for distribution & better
2982               for debugging than the random value) and set flags, now including Atomic & Identifier.
2983
2984 2014-03-19  Gavin Barraclough  <barraclough@apple.com>
2985
2986         Small cleanup of empty string
2987         https://bugs.webkit.org/show_bug.cgi?id=130438
2988
2989         Reviewed by Anders Carlson.
2990
2991         The empty string is weird becuase it is used as the impl for an AtomicString, but isAtomic()
2992         returns false.
2993         Also, we set a valid pointer for the characters pointer due to an old PCRE bug; remove this.
2994         Also, we currently only create one 'static' string, the empty string. Adding more might break
2995         assumtions, inhibit the constructor from being used to create other static strings for now.
2996
2997         * wtf/text/AtomicString.h:
2998         (WTF::AtomicString::add):
2999             - update assert.
3000         * wtf/text/StringImpl.h:
3001         (WTF::StringImpl::StringImpl):
3002             - Merge ConstructStaticString constructors, only allow the empty static string to be constructed.
3003         * wtf/text/StringStatics.cpp:
3004         (WTF::StringImpl::empty):
3005             - ConstructStaticString -> ConstructEmptyString, remove arguments, DEPRECATED_DEFINE_STATIC_LOCAL -> NeverDestroyed.
3006
3007 2014-03-18  Darin Adler  <darin@apple.com>
3008
3009         Reduce use of deprecatedCharacters in WebCore
3010         https://bugs.webkit.org/show_bug.cgi?id=130318
3011
3012         Reviewed by Andreas Kling.
3013
3014         * wtf/text/WTFString.h: Export another overload of charactersToFloat since it's used
3015         in WebCore now.
3016
3017         * wtf/text/cf/StringViewCF.cpp: Change so this can build on Windows.
3018
3019         * WTF.vcxproj/WTF.vcxproj: Added StringViewCF.cpp.
3020         * WTF.vcxproj/WTF.vcxproj.filters: Added StringViewCF.cpp.
3021
3022 2014-03-18  Filip Pizlo  <fpizlo@apple.com>
3023
3024         More FTL enabling.
3025
3026         Rubber stamped by Dan Bernstein and Mark Hahnenberg.
3027
3028         * wtf/Platform.h:
3029
3030 2014-03-17  Darin Adler  <darin@apple.com>
3031
3032         Remove most uses of deprecatedCharacter in WTF
3033         https://bugs.webkit.org/show_bug.cgi?id=130317
3034
3035         Reviewed by Andreas Kling.
3036
3037         Re-landing after fixing the "80 instead of 0x80" typo in equalLatin1WithUTF8.
3038
3039         * wtf/text/AtomicString.cpp:
3040         (WTF::HashAndUTF8CharactersTranslator::equal): Add an 8-bit code path to the
3041         non-ASCII path.
3042         (WTF::SubstringTranslator8::hash): Added.
3043         (WTF::SubstringTranslator8::equal): Added.
3044         (WTF::SubstringTranslator16::hash): Renamed class.
3045         (WTF::SubstringTranslator16::equal): Ditto.
3046         (WTF::AtomicString::add): Added an 8-bit code path to the substring case.
3047
3048         * wtf/text/Base64.cpp:
3049         (WTF::base64Decode): Added an 8 bit code path.
3050         (WTF::base64URLDecode): Ditto.
3051
3052         * wtf/text/StringImpl.cpp:
3053         (WTF::StringImpl::find): Fixed a case that was incorrectly using characters16
3054         without first using is8Bit. Need to return later to remove use of deprecatedCharacters.
3055
3056         * wtf/unicode/UTF8.cpp:
3057         (WTF::Unicode::equalUTF16WithUTF8): Added a case for when the UTF-16 characters
3058         are ASCII. Also removed the aEnd argument, since the caller only calls this when the
3059         lengths are equal.
3060         (WTF::Unicode::equalLatin1WithUTF8): Added.
3061         * wtf/unicode/UTF8.h: Updated as described above.
3062
3063 2014-03-17  Commit Queue  <commit-queue@webkit.org>
3064
3065         Unreviewed, rolling out r165721.
3066         https://bugs.webkit.org/show_bug.cgi?id=130367
3067
3068         It makes the debug bots flaky (Requested by benjaminp on
3069         #webkit).
3070
3071         Reverted changeset:
3072
3073         "Remove most uses of deprecatedCharacter in WTF"
3074         https://bugs.webkit.org/show_bug.cgi?id=130317
3075         http://trac.webkit.org/changeset/165721
3076
3077 2014-03-17  Zan Dobersek  <zdobersek@igalia.com>
3078
3079         Use RunLoop objects through references instead of pointers
3080         https://bugs.webkit.org/show_bug.cgi?id=130313
3081
3082         Reviewed by Andreas Kling.
3083
3084         Make RunLoop::current() and RunLoop::main() return a RunLoop reference instead
3085         of a pointer. RunLoop::Holder now uses a Ref<RunLoop> member. Timer and TimerBase
3086         constructors take in a RunLoop reference, with TimerBase now storing a RunLoop
3087         reference member instead of a pointer. Platform-specific bits of the RunLoop
3088         class are updated accordingly.
3089
3090         * wtf/RunLoop.cpp:
3091         (WTF::RunLoop::Holder::Holder):
3092         (WTF::RunLoop::Holder::runLoop):
3093         (WTF::RunLoop::initializeMainRunLoop):
3094         (WTF::RunLoop::current):
3095         (WTF::RunLoop::main):
3096         (WTF::RunLoop::isMain):
3097         * wtf/RunLoop.h:
3098         (WTF::RunLoop::Timer::Timer):
3099         * wtf/cf/RunLoopCF.cpp:
3100         (WTF::RunLoop::run):
3101         (WTF::RunLoop::TimerBase::TimerBase):
3102         (WTF::RunLoop::TimerBase::start):
3103         * wtf/efl/RunLoopEfl.cpp:
3104         (WTF::RunLoop::TimerBase::TimerBase):
3105         * wtf/gtk/RunLoopGtk.cpp:
3106         (WTF::RunLoop::run):
3107         (WTF::RunLoop::TimerBase::TimerBase):
3108         (WTF::RunLoop::TimerBase::start):
3109         * wtf/win/RunLoopWin.cpp:
3110         (WTF::RunLoop::TimerBase::TimerBase):
3111         (WTF::RunLoop::TimerBase::start):
3112         (WTF::RunLoop::TimerBase::stop):
3113         (WTF::RunLoop::TimerBase::isActive):
3114
3115 2014-03-17  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
3116
3117         One more fix after r165725.
3118
3119         Reviewed by Csaba Osztrogonác.
3120
3121         * wtf/WTFThreadData.h:
3122
3123 2014-03-17  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
3124
3125         Buildfix after r165725 for non Mac platforms.
3126
3127         Reviewed by Csaba Osztrogonác.
3128
3129         * wtf/WTFThreadData.h:
3130
3131 2014-03-17  Andreas Kling  <akling@apple.com>
3132
3133         [Mac] WTFThreadData should use _pthread_getspecific_direct().
3134         <https://webkit.org/b/130320>
3135
3136         Hack WTFThreadData to use a direct key for TLS access when available.
3137         This mechanism uses a dedicated segment register and is the same way
3138         we implement the fast path in FastMalloc.
3139
3140         Reviewed by Darin Adler.
3141
3142         * wtf/FastMalloc.cpp:
3143         * wtf/WTFThreadData.cpp:
3144         (WTF::WTFThreadData::createAndRegisterForGetspecificDirect):
3145         * wtf/WTFThreadData.h:
3146         (WTF::wtfThreadData):
3147
3148 2014-03-16  Darin Adler  <darin@apple.com>
3149
3150         Remove most uses of deprecatedCharacter in WTF
3151         https://bugs.webkit.org/show_bug.cgi?id=130317
3152
3153         Reviewed by Andreas Kling.
3154
3155         * wtf/text/AtomicString.cpp:
3156         (WTF::HashAndUTF8CharactersTranslator::equal): Add an 8-bit code path to the
3157         non-ASCII path.
3158         (WTF::SubstringTranslator8::hash): Added.
3159         (WTF::SubstringTranslator8::equal): Added.
3160         (WTF::SubstringTranslator16::hash): Renamed class.
3161         (WTF::SubstringTranslator16::equal): Ditto.
3162         (WTF::AtomicString::add): Added an 8-bit code path to the substring case.
3163
3164         * wtf/text/Base64.cpp:
3165         (WTF::base64Decode): Added an 8 bit code path.
3166         (WTF::base64URLDecode): Ditto.
3167
3168         * wtf/text/StringImpl.cpp:
3169         (WTF::StringImpl::find): Fixed a case that was incorrectly using characters16
3170         without first using is8Bit. Need to return later to remove use of deprecatedCharacters.
3171
3172         * wtf/unicode/UTF8.cpp:
3173         (WTF::Unicode::equalUTF16WithUTF8): Added a case for when the UTF-16 characters
3174         are ASCII. Also removed the aEnd argument, since the caller only calls this when the
3175         lengths are equal.
3176         (WTF::Unicode::equalLatin1WithUTF8): Added.
3177         * wtf/unicode/UTF8.h: Updated as described above.
3178
3179 2014-03-16  David Kilzer  <ddkilzer@apple.com>
3180
3181         Follow-up: Fix undefined behavior in WTF::equal() in StringImpl.h for i386/x86_64
3182         <http://webkit.org/b/130283>
3183         <rdar://problem/16281477>
3184
3185         Reviewed by Darin Adler.
3186
3187         * wtf/text/StringImpl.h:
3188         (WTF::loadUnaligned): Restore behavior prior to r165681 for
3189         compilers other than clang.
3190
3191 2014-03-16  Darin Adler  <darin@apple.com>
3192
3193         Remove all uses of deprecatedCharacters from JavaScriptCore
3194         https://bugs.webkit.org/show_bug.cgi?id=130304
3195
3196         Reviewed by Anders Carlsson.
3197
3198         * wtf/dtoa.h:
3199         (WTF::parseDouble): Added an overload that takes a StringView.
3200
3201 2014-03-15  Darin Adler  <darin@apple.com>
3202
3203         Remove all uses of deprecatedCharacters from WebKit2
3204         https://bugs.webkit.org/show_bug.cgi?id=130197
3205
3206         Reviewed by Andreas Kling.
3207
3208         * wtf/text/StringView.h: Added new getCharactersWithUpconvert and upconvertedCharacters
3209         functions. These are useful for callers that need UTF-16.
3210
3211 2014-03-15  Darin Adler  <darin@apple.com>
3212
3213         Try to fix EFL build.
3214
3215         * wtf/ThreadingPthreads.cpp: (WTF::changeThreadPriority): Code in this function
3216         was setting the priority of the current thread instead of the passed-in thread.
3217         That was triggering an unused variable warning in the compiler used to build for
3218         EFL. Fixed by using the thread handle instead of pthread_self.
3219
3220 2014-03-15  Michael Saboff  <msaboff@apple.com>
3221
3222         It should be possible to adjust DFG and FTL compiler thread priorities
3223         https://bugs.webkit.org/show_bug.cgi?id=130288
3224
3225         Reviewed by Filip Pizlo.
3226
3227         Added ability to change thread priorities relative to its current priority.
3228         Created options to adjust the priority of the DFG and FTL compilation work thread
3229         pools.  For two core systems, there might be three runnable threads, the main thread,
3230         the DFG compilation thread and the FTL compilation thread.  With the same priority,
3231         the scheduler is free to schedule whatever thread it wants.  By lowering the
3232         compilation threads, the main thread can run.  Further tests may suggest better values
3233         for the new options, priorityDeltaOfDFGCompilerThreads and priorityDeltaOfFTLCompilerThreads.
3234
3235         For a two-core device, this change has a net positive improvement of 1-3% across
3236         SunSpider, Octane, Kraken and AsmBench.
3237
3238         * wtf/Threading.h:
3239         * wtf/ThreadingPthreads.cpp:
3240         (WTF::changeThreadPriority):
3241         * wtf/ThreadingWin.cpp:
3242         (WTF::changeThreadPriority):
3243
3244 2014-03-15  David Kilzer  <ddkilzer@apple.com>
3245
3246         Fix undefined behavior in WTF::equal() in StringImpl.h for i386/x86_64
3247         <http://webkit.org/b/130283>
3248         <rdar://problem/16281477>
3249
3250         Reviewed by Geoff Garen.
3251
3252         * wtf/text/StringImpl.h:
3253         (WTF::loadUnaligned): Add template method.
3254         (WTF::equal): Switch to using loadUnaligned<>().
3255
3256 2014-03-14  Mark Rowe  <mrowe@apple.com>
3257
3258         Fix the production build.
3259
3260         Don't rely on USE_INTERNAL_SDK being set for the Production configuration since UseInternalSDK.xcconfig won't
3261         be at the expected relative path when working from installed source.
3262
3263         * Configurations/Base.xcconfig:
3264
3265 2014-03-14  Maciej Stachowiak  <mjs@apple.com>
3266
3267         Replace "Apple Computer, Inc." with "Apple Inc." in copyright headers
3268         https://bugs.webkit.org/show_bug.cgi?id=130276
3269         <rdar://problem/16266927>
3270         
3271         Reviewed by Simon Fraser.
3272
3273         * wtf/ASCIICType.h:
3274         * wtf/AVLTree.h:
3275         * wtf/Assertions.cpp:
3276         * wtf/Assertions.h:
3277         * wtf/Atomics.cpp:
3278         * wtf/Atomics.h:
3279         * wtf/AutodrainedPool.h:
3280         * wtf/AutodrainedPoolMac.mm:
3281         * wtf/BoundsCheckedPointer.h:
3282         * wtf/CryptographicUtilities.cpp:
3283         * wtf/CryptographicallyRandomNumber.h:
3284         * wtf/CurrentTime.h:
3285         * wtf/Deque.h:
3286         * wtf/DisallowCType.h:
3287         * wtf/ExportMacros.h:
3288         * wtf/FeatureDefines.h:
3289         * wtf/GetPtr.h:
3290         * wtf/HashIterators.h:
3291         * wtf/Locker.h:
3292         * wtf/MainThread.cpp:
3293         * wtf/MainThread.h:
3294         * wtf/MathExtras.h:
3295         * wtf/MediaTime.cpp:
3296         * wtf/MediaTime.h:
3297         * wtf/MessageQueue.h:
3298         * wtf/MetaAllocator.cpp:
3299         * wtf/MetaAllocator.h:
3300         * wtf/MetaAllocatorHandle.h:
3301         * wtf/OSRandomSource.cpp:
3302         * wtf/OSRandomSource.h:
3303         * wtf/Platform.h:
3304         * wtf/RandomNumber.cpp:
3305         * wtf/RandomNumber.h:
3306         * wtf/RandomNumberSeed.h:
3307         * wtf/RedBlackTree.h:
3308         * wtf/RunLoopTimer.h:
3309         * wtf/RunLoopTimerCF.cpp:
3310         * wtf/SchedulePair.h:
3311         * wtf/SchedulePairCF.cpp:
3312         * wtf/SchedulePairMac.mm:
3313         * wtf/SegmentedVector.h:
3314         * wtf/StackBounds.h:
3315         * wtf/StaticConstructors.h:
3316         * wtf/StringExtras.h:
3317         * wtf/ThreadFunctionInvocation.h:
3318         * wtf/ThreadSafeRefCounted.h:
3319         * wtf/ThreadSpecific.h:
3320         * wtf/Threading.h:
3321         * wtf/ThreadingPrimitives.h:
3322         * wtf/ThreadingPthreads.cpp:
3323         * wtf/ThreadingWin.cpp:
3324         * wtf/WTFThreadData.cpp:
3325         * wtf/WTFThreadData.h:
3326         * wtf/efl/OwnPtrEfl.cpp:
3327         * wtf/mac/MainThreadMac.mm:
3328         * wtf/text/AtomicStringHash.h:
3329         * wtf/text/AtomicStringImpl.h:
3330         * wtf/text/Base64.h:
3331         * wtf/text/CString.cpp:
3332         * wtf/text/CString.h:
3333         * wtf/text/LChar.h:
3334         * wtf/text/cf/StringCF.cpp:
3335         * wtf/text/mac/StringMac.mm:
3336         * wtf/unicode/CharacterNames.h:
3337         * wtf/unicode/Collator.h:
3338         * wtf/unicode/CollatorDefault.cpp:
3339         * wtf/unicode/UTF8.cpp:
3340         * wtf/unicode/UTF8.h:
3341         * wtf/unicode/icu/CollatorICU.cpp:
3342         * wtf/win/MainThreadWin.cpp:
3343
3344 2014-03-14  Byungseon Shin  <sun.shin@lge.com>
3345
3346         Incorrect Date returned between March 1, 2034 and February 28, 2100.
3347         https://bugs.webkit.org/show_bug.cgi?id=130123
3348
3349         Reviewed by Mark Lam.
3350
3351         Fix logic by using predefined Date APIs.
3352
3353         * wtf/DateMath.cpp:
3354         (WTF::ymdhmsToSeconds):
3355
3356 2014-03-12  Sergio Villar Senin  <svillar@igalia.com>
3357
3358         Rename DEFINE_STATIC_LOCAL to DEPRECATED_DEFINE_STATIC_LOCAL
3359         https://bugs.webkit.org/show_bug.cgi?id=129612
3360
3361         Reviewed by Darin Adler.
3362
3363         For new code use static NeverDestroyed<T> instead.
3364
3365         * wtf/RunLoop.cpp:
3366         (WTF::RunLoop::current):
3367         * wtf/StdLibExtras.h:
3368         * wtf/ThreadingPthreads.cpp:
3369         (WTF::threadMapMutex):
3370         (WTF::threadMap):
3371         * wtf/efl/MainThreadEfl.cpp:
3372         (WTF::pipeObject):
3373         * wtf/text/StringStatics.cpp:
3374         (WTF::StringImpl::empty):
3375
3376 2014-03-13  Radu Stavila  <stavila@adobe.com>
3377
3378         Webkit not building on XCode 5.1 due to garbage collection no longer being supported
3379         https://bugs.webkit.org/show_bug.cgi?id=130087
3380
3381         Reviewed by Mark Rowe.
3382
3383         Disable garbage collection on macosx when not using internal SDK.
3384
3385         * Configurations/Base.xcconfig:
3386
3387 2014-03-12  Ryuan Choi  <ryuan.choi@samsung.com>
3388
3389         [EFL] Enable Parallel GC
3390         https://bugs.webkit.org/show_bug.cgi?id=130177
3391
3392         Reviewed by Geoffrey Garen.
3393
3394         * wtf/Platform.h: Turn on ENABLE_PARALLEL_GC for the EFL build.
3395
3396 2014-03-12  Joseph Pecoraro  <pecoraro@apple.com>
3397
3398         Web Inspector: Disable REMOTE_INSPECTOR in earlier OS X releases
3399         https://bugs.webkit.org/show_bug.cgi?id=130118
3400
3401         Reviewed by Timothy Hatcher.
3402
3403         * wtf/FeatureDefines.h:
3404
3405 2014-03-11  Brent Fulgham  <bfulgham@apple.com>
3406
3407         [Win] Unreviewed gardening.
3408
3409         * wtf/MathExtras.h: VS2013 provides an lrint implementation. No need to implement
3410         our own.
3411
3412 2014-03-10  Jer Noble  <jer.noble@apple.com>
3413
3414         Improve WeakPtr operators.
3415         https://bugs.webkit.org/show_bug.cgi?id=130053
3416
3417         Reviewed by Andreas Kling.
3418
3419         Replace the "operator!()" with an explicit bool operator.  Add an "operator->()".
3420
3421         * wtf/WeakPtr.h:
3422         (WTF::WeakPtr::operator bool):
3423         (WTF::WeakPtr::operator->):
3424
3425 2014-03-10  Brent Fulgham  <bfulgham@apple.com>
3426
3427         [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
3428         https://bugs.webkit.org/show_bug.cgi?id=130023.
3429
3430         Reviewed by Dean Jackson.
3431
3432         * WTF.vcxproj/WTF.proj: Avoid putting trailing slashes in system paths to avoid
3433         escaping during later string substitution.
3434         * WTF.vcxproj/build-generated-files.sh: Accept environment values passed by VS.
3435
3436 2014-03-10  Mark Hahnenberg  <mhahnenberg@apple.com>
3437
3438         Turn on GenGC on other 64-bit platforms
3439         https://bugs.webkit.org/show_bug.cgi?id=129258
3440
3441         Reviewed by Oliver Hunt.
3442
3443         * wtf/Platform.h: 
3444
3445 2014-03-07  peavo@outlook.com  <peavo@outlook.com>
3446
3447         [Win64] Compile error after r165128.
3448         https://bugs.webkit.org/show_bug.cgi?id=129807
3449
3450         Reviewed by Mark Lam.
3451
3452         * wtf/Platform.h: MSVC does not support computed goto.
3453         Also enabled COMPUTED_GOTO_OPCODES when !ENABLE(LLINT_C_LOOP). This is needed because the ASM LLINT operates like COMPUTED_GOTO_OPCODES,
3454         and relies on the related data structures being defined to support this. On Win32, the platform does not HAVE_COMPUTED_GOTO support,
3455         but does want ENABLE_COMPUTED_GOTO_OPCODES because it uses the ASM LLINT.
3456
3457 2014-03-06  Michael Saboff  <msaboff@apple.com>
3458
3459         JSC should disable the JIT when building for ARMv7k
3460         https://bugs.webkit.org/show_bug.cgi?id=129829
3461
3462         Reviewed by Oliver Hunt.
3463
3464         Added WTF_CPU_APPLE_ARMV7K CPU define.  Disabled the JITs when
3465         that feature define is set.
3466
3467         * wtf/Platform.h:
3468
3469 2014-03-06  Filip Pizlo  <fpizlo@apple.com>
3470
3471         Use the LLVM disassembler on ARM64 if we are enabling the FTL
3472         https://bugs.webkit.org/show_bug.cgi?id=129785
3473
3474         Reviewed by Geoffrey Garen.
3475
3476         * wtf/Platform.h:
3477
3478 2014-03-05  peavo@outlook.com  <peavo@outlook.com>
3479
3480         [Win32][LLINT] Crash when running JSC stress tests.
3481         https://bugs.webkit.org/show_bug.cgi?id=129429
3482
3483         Reviewed by Geoffrey Garen.
3484
3485         * wtf/Platform.h: Enable LLINT on Win32.
3486
3487 2014-03-04  Zan Dobersek  <zdobersek@igalia.com>
3488
3489         [GTK] Build the Udis86 disassembler
3490         https://bugs.webkit.org/show_bug.cgi?id=129679
3491
3492         Reviewed by Michael Saboff.
3493
3494         * wtf/Platform.h: Also enable the Udis86 disassembler for the GTK port on Linux.
3495
3496 2014-03-02  Jaehun Lim  <ljaehun.lim@samsung.com>
3497
3498         [EFL] Remove m_initEfl from RunLoop.
3499         https://bugs.webkit.org/show_bug.cgi?id=129568
3500
3501         Reviewed by Gyuyoung Kim.
3502
3503         We don't use m_initEfl except RunLoop constructor.
3504
3505         * wtf/RunLoop.h:
3506         * wtf/efl/RunLoopEfl.cpp:
3507         (WTF::RunLoop::RunLoop):
3508
3509 2014-03-02  Darin Adler  <darin@apple.com>
3510
3511         Cut down use of OwnPtr within WTF itself
3512         https://bugs.webkit.org/show_bug.cgi?id=129567
3513
3514         Reviewed by Sam Weinig.
3515
3516         * wtf/RefCounted.h: Removed OwnPtr includes.
3517
3518         * wtf/StreamBuffer.h: Removed OwnPtr includes and switched to use
3519         std::make_unique and std::unique_ptr instead.
3520
3521         * wtf/Threading.cpp: Removed OwnPtr includes.
3522         * wtf/ThreadingPthreads.cpp: Ditto.
3523         * wtf/Vector.h: Ditto.
3524
3525 2014-02-26  Gavin Barraclough  <barraclough@apple.com>
3526
3527         FastMalloc should use vm_page_shift intead of PAGE_SHIFT.
3528         https://bugs.webkit.org/show_bug.cgi?id=129370
3529
3530         Reviewed by Mark Rowe.
3531
3532         "Doesn't this lead to the page map using fewer bits than it was before?
3533         It seems like this will cause some page addresses to no longer be
3534         representable in the map when using 4K pages. Am I missing something?"
3535
3536         * wtf/FastMalloc.cpp:
3537             - bdash raises a valid point. This should make the TCMalloc_PageMap
3538               larger than absolutely necessary, rather than potentially too small.
3539
3540 2014-02-25  Gavin Barraclough  <barraclough@apple.com>
3541
3542         FastMalloc should use vm_page_shift intead of PAGE_SHIFT.
3543         https://bugs.webkit.org/show_bug.cgi?id=129370
3544
3545         Reviewed by Geoff Garen.
3546
3547         Previously we used PAGE_SHIFT to initialize kPageShift.
3548         Since this was a constant, it could be used to calculate other
3549         contants used in the code. Some of these values are used in the
3550         definition of certain data structures (specifiying the length of
3551         some array members).
3552
3553         Make kPageShift & dependent properties variables setup during
3554         initialization. Add upper bound values (K_PAGE_SHIFT_MAX,
3555         K_NUM_CLASSES_MAX) for use in cases where we need a constant.
3556
3557         * wtf/FastMalloc.cpp:
3558         (WTF::InitSizeClasses):
3559             - initialize kPageShift, kNumClasses, kPageSize, kMaxValidPages.
3560         (WTF::pages):
3561             - added ASSERT.
3562         (WTF::AllocationSize):
3563             - added ASSERT.
3564         (WTF::TCMalloc_PageHeap::FreeBytes):
3565             - added ASSERT.
3566         (WTF::TCMalloc_PageHeap::init):
3567             - COMPILE_ASSERT -> ASSERT
3568         (WTF::TCMalloc_PageHeap::scavenge):
3569             - added ASSERT.
3570         (WTF::TCMalloc_PageHeap::Carve):
3571             - added ASSERT.
3572         (WTF::mergeDecommittedStates):
3573             - added ASSERT.
3574         (WTF::TCMalloc_PageHeap::IncrementalScavenge):
3575             - added ASSERT.
3576         (WTF::TCMalloc_PageHeap::ReturnedBytes):
3577             - added ASSERT.
3578         (WTF::PagesToMB):
3579             - added ASSERT.
3580         (WTF::TCMalloc_PageHeap::GrowHeap):
3581             - added ASSERT.
3582         (WTF::TCMalloc_PageHeap::ReleaseFreeList):
3583             - kNumClasses -> K_NUM_CLASSES_MAX
3584         (WTF::TCMalloc_ThreadCache::enumerateFreeObjects):
3585             - added ASSERT.
3586         (WTF::TCMalloc_Central_FreeList::Init):
3587             - added ASSERT.
3588         (WTF::TCMalloc_Central_FreeList::ReleaseToSpans):
3589             - added ASSERT.
3590         (WTF::TCMalloc_Central_FreeList::EvictRandomSizeClass):
3591             - added ASSERT.
3592         (WTF::TCMalloc_Central_FreeList::MakeCacheSpace):
3593             - added ASSERT.
3594         (WTF::TCMalloc_Central_FreeList::InsertRange):
3595             - added ASSERT.
3596         (WTF::TCMalloc_Central_FreeList::Populate):
3597             - added ASSERT.
3598         (WTF::TCMalloc_ThreadCache::Init):
3599             - added ASSERT.
3600         (WTF::TCMalloc_ThreadCache::Cleanup):
3601             - added ASSERT.
3602         (WTF::TCMalloc_ThreadCache::Scavenge):
3603             - added ASSERT.
3604         (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
3605             - added ASSERT.
3606
3607 2014-02-24  Alex Christensen  <achristensen@webkit.org>
3608
3609         Disabled WebGL on WinCairo.
3610
3611         Unreviewed.
3612
3613         * wtf/FeatureDefines.h:
3614         Removed ENABLE_WEBGL definition for WinCairo port.
3615         WebGL has not worked on WinCairo since r163079
3616         and it was not compiling with a recent ANGLE update.
3617
3618 2014-02-24  Mark Hahnenberg  <mhahnenberg@apple.com>
3619
3620         Turn GenGC on for 32-bit systems
3621         https://bugs.webkit.org/show_bug.cgi?id=128824
3622
3623         Reviewed by Geoffrey Garen.
3624
3625         * wtf/Platform.h:
3626
3627 2014-02-21  Benjamin Poulain  <benjamin@webkit.org>
3628
3629         jsDocumentPrototypeFunctionGetElementById should not create an AtomicString for the function argument
3630         https://bugs.webkit.org/show_bug.cgi?id=128893
3631
3632         Reviewed by Darin Adler.
3633
3634         AtomicString::find() is a special case optimized for the JavaScript bindings. The method can only
3635         be called under specific conditions.
3636         The method is renamed to findStringWithHash().
3637
3638         The new AtomicString::find is generic and does not require any propery on the input.
3639
3640         * wtf/text/AtomicString.cpp:
3641         (WTF::AtomicString::findStringWithHash):
3642         (WTF::AtomicString::findSlowCase):
3643         * wtf/text/AtomicString.h:
3644         (WTF::AtomicString::find):
3645
3646 2014-02-20  Csaba Osztrogonác  <ossy@webkit.org>
3647
3648         Add StackStats sources to cmake and autotools build files
3649         https://bugs.webkit.org/show_bug.cgi?id=129103
3650
3651         Reviewed by Anders Carlsson.
3652
3653         * GNUmakefile.list.am:
3654         * wtf/CMakeLists.txt:
3655
3656 2014-02-20  Csaba Osztrogonác  <ossy@webkit.org>
3657
3658         Get rid of redundant Platform.h includes
3659         https://bugs.webkit.org/show_bug.cgi?id=128817
3660
3661         Reviewed by Brent Fulgham.
3662
3663         * wtf/Assertions.h:
3664         * wtf/Atomics.h:
3665         * wtf/ByteOrder.h:
3666         * wtf/DataLog.h:
3667         * wtf/DisallowCType.h:
3668         * wtf/DynamicAnnotations.h:
3669         * wtf/ExportMacros.h:
3670         * wtf/FastMalloc.h:
3671         * wtf/FlipBytes.h:
3672         * wtf/InlineASM.h:
3673         * wtf/PrintStream.h:
3674         * wtf/ProcessID.h:
3675         * wtf/Threading.h:
3676         * wtf/ThreadingPrimitives.h:
3677
3678 2014-02-19  Jon Honeycutt  <jhoneycutt@apple.com>
3679
3680         Crash in WTF::StringBuilder::append()
3681
3682         https://bugs.webkit.org/show_bug.cgi?id=125817
3683         <rdar://problem/15671883>
3684
3685         Reviewed by Oliver Hunt.
3686
3687         * wtf/text/StringBuilder.cpp:
3688         (WTF::expandedCapacity):
3689         Ensure that we return a new capacity of at least 'requiredLength' in
3690         the case where requiredLength is large. Also, use unsigned rather than
3691         size_t for the parameters and the return value, as callers pass
3692         unsigned arguments and treat the result as an unsigned int.
3693
3694 2014-02-19  Anders Carlsson  <andersca@apple.com>
3695
3696         Add WTF_MAKE_FAST_ALLOCATED to more classes
3697         https://bugs.webkit.org/show_bug.cgi?id=129064
3698
3699         Reviewed by Andreas Kling.
3700
3701         * wtf/Bitmap.h:
3702
3703 2014-02-19  Zan Dobersek  <zdobersek@igalia.com>