Reduce use of deprecatedCharacters in WebCore
[WebKit-https.git] / Source / WTF / ChangeLog
1 2014-03-18  Darin Adler  <darin@apple.com>
2
3         Reduce use of deprecatedCharacters in WebCore
4         https://bugs.webkit.org/show_bug.cgi?id=130318
5
6         Reviewed by Andreas Kling.
7
8         * wtf/text/WTFString.h: Export another overload of charactersToFloat since it's used
9         in WebCore now.
10
11         * wtf/text/cf/StringViewCF.cpp: Change so this can build on Windows.
12
13         * WTF.vcxproj/WTF.vcxproj: Added StringViewCF.cpp.
14         * WTF.vcxproj/WTF.vcxproj.filters: Added StringViewCF.cpp.
15
16 2014-03-18  Filip Pizlo  <fpizlo@apple.com>
17
18         More FTL enabling.
19
20         Rubber stamped by Dan Bernstein and Mark Hahnenberg.
21
22         * wtf/Platform.h:
23
24 2014-03-17  Darin Adler  <darin@apple.com>
25
26         Remove most uses of deprecatedCharacter in WTF
27         https://bugs.webkit.org/show_bug.cgi?id=130317
28
29         Reviewed by Andreas Kling.
30
31         Re-landing after fixing the "80 instead of 0x80" typo in equalLatin1WithUTF8.
32
33         * wtf/text/AtomicString.cpp:
34         (WTF::HashAndUTF8CharactersTranslator::equal): Add an 8-bit code path to the
35         non-ASCII path.
36         (WTF::SubstringTranslator8::hash): Added.
37         (WTF::SubstringTranslator8::equal): Added.
38         (WTF::SubstringTranslator16::hash): Renamed class.
39         (WTF::SubstringTranslator16::equal): Ditto.
40         (WTF::AtomicString::add): Added an 8-bit code path to the substring case.
41
42         * wtf/text/Base64.cpp:
43         (WTF::base64Decode): Added an 8 bit code path.
44         (WTF::base64URLDecode): Ditto.
45
46         * wtf/text/StringImpl.cpp:
47         (WTF::StringImpl::find): Fixed a case that was incorrectly using characters16
48         without first using is8Bit. Need to return later to remove use of deprecatedCharacters.
49
50         * wtf/unicode/UTF8.cpp:
51         (WTF::Unicode::equalUTF16WithUTF8): Added a case for when the UTF-16 characters
52         are ASCII. Also removed the aEnd argument, since the caller only calls this when the
53         lengths are equal.
54         (WTF::Unicode::equalLatin1WithUTF8): Added.
55         * wtf/unicode/UTF8.h: Updated as described above.
56
57 2014-03-17  Commit Queue  <commit-queue@webkit.org>
58
59         Unreviewed, rolling out r165721.
60         https://bugs.webkit.org/show_bug.cgi?id=130367
61
62         It makes the debug bots flaky (Requested by benjaminp on
63         #webkit).
64
65         Reverted changeset:
66
67         "Remove most uses of deprecatedCharacter in WTF"
68         https://bugs.webkit.org/show_bug.cgi?id=130317
69         http://trac.webkit.org/changeset/165721
70
71 2014-03-17  Zan Dobersek  <zdobersek@igalia.com>
72
73         Use RunLoop objects through references instead of pointers
74         https://bugs.webkit.org/show_bug.cgi?id=130313
75
76         Reviewed by Andreas Kling.
77
78         Make RunLoop::current() and RunLoop::main() return a RunLoop reference instead
79         of a pointer. RunLoop::Holder now uses a Ref<RunLoop> member. Timer and TimerBase
80         constructors take in a RunLoop reference, with TimerBase now storing a RunLoop
81         reference member instead of a pointer. Platform-specific bits of the RunLoop
82         class are updated accordingly.
83
84         * wtf/RunLoop.cpp:
85         (WTF::RunLoop::Holder::Holder):
86         (WTF::RunLoop::Holder::runLoop):
87         (WTF::RunLoop::initializeMainRunLoop):
88         (WTF::RunLoop::current):
89         (WTF::RunLoop::main):
90         (WTF::RunLoop::isMain):
91         * wtf/RunLoop.h:
92         (WTF::RunLoop::Timer::Timer):
93         * wtf/cf/RunLoopCF.cpp:
94         (WTF::RunLoop::run):
95         (WTF::RunLoop::TimerBase::TimerBase):
96         (WTF::RunLoop::TimerBase::start):
97         * wtf/efl/RunLoopEfl.cpp:
98         (WTF::RunLoop::TimerBase::TimerBase):
99         * wtf/gtk/RunLoopGtk.cpp:
100         (WTF::RunLoop::run):
101         (WTF::RunLoop::TimerBase::TimerBase):
102         (WTF::RunLoop::TimerBase::start):
103         * wtf/win/RunLoopWin.cpp:
104         (WTF::RunLoop::TimerBase::TimerBase):
105         (WTF::RunLoop::TimerBase::start):
106         (WTF::RunLoop::TimerBase::stop):
107         (WTF::RunLoop::TimerBase::isActive):
108
109 2014-03-17  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
110
111         One more fix after r165725.
112
113         Reviewed by Csaba Osztrogonác.
114
115         * wtf/WTFThreadData.h:
116
117 2014-03-17  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
118
119         Buildfix after r165725 for non Mac platforms.
120
121         Reviewed by Csaba Osztrogonác.
122
123         * wtf/WTFThreadData.h:
124
125 2014-03-17  Andreas Kling  <akling@apple.com>
126
127         [Mac] WTFThreadData should use _pthread_getspecific_direct().
128         <https://webkit.org/b/130320>
129
130         Hack WTFThreadData to use a direct key for TLS access when available.
131         This mechanism uses a dedicated segment register and is the same way
132         we implement the fast path in FastMalloc.
133
134         Reviewed by Darin Adler.
135
136         * wtf/FastMalloc.cpp:
137         * wtf/WTFThreadData.cpp:
138         (WTF::WTFThreadData::createAndRegisterForGetspecificDirect):
139         * wtf/WTFThreadData.h:
140         (WTF::wtfThreadData):
141
142 2014-03-16  Darin Adler  <darin@apple.com>
143
144         Remove most uses of deprecatedCharacter in WTF
145         https://bugs.webkit.org/show_bug.cgi?id=130317
146
147         Reviewed by Andreas Kling.
148
149         * wtf/text/AtomicString.cpp:
150         (WTF::HashAndUTF8CharactersTranslator::equal): Add an 8-bit code path to the
151         non-ASCII path.
152         (WTF::SubstringTranslator8::hash): Added.
153         (WTF::SubstringTranslator8::equal): Added.
154         (WTF::SubstringTranslator16::hash): Renamed class.
155         (WTF::SubstringTranslator16::equal): Ditto.
156         (WTF::AtomicString::add): Added an 8-bit code path to the substring case.
157
158         * wtf/text/Base64.cpp:
159         (WTF::base64Decode): Added an 8 bit code path.
160         (WTF::base64URLDecode): Ditto.
161
162         * wtf/text/StringImpl.cpp:
163         (WTF::StringImpl::find): Fixed a case that was incorrectly using characters16
164         without first using is8Bit. Need to return later to remove use of deprecatedCharacters.
165
166         * wtf/unicode/UTF8.cpp:
167         (WTF::Unicode::equalUTF16WithUTF8): Added a case for when the UTF-16 characters
168         are ASCII. Also removed the aEnd argument, since the caller only calls this when the
169         lengths are equal.
170         (WTF::Unicode::equalLatin1WithUTF8): Added.
171         * wtf/unicode/UTF8.h: Updated as described above.
172
173 2014-03-16  David Kilzer  <ddkilzer@apple.com>
174
175         Follow-up: Fix undefined behavior in WTF::equal() in StringImpl.h for i386/x86_64
176         <http://webkit.org/b/130283>
177         <rdar://problem/16281477>
178
179         Reviewed by Darin Adler.
180
181         * wtf/text/StringImpl.h:
182         (WTF::loadUnaligned): Restore behavior prior to r165681 for
183         compilers other than clang.
184
185 2014-03-16  Darin Adler  <darin@apple.com>
186
187         Remove all uses of deprecatedCharacters from JavaScriptCore
188         https://bugs.webkit.org/show_bug.cgi?id=130304
189
190         Reviewed by Anders Carlsson.
191
192         * wtf/dtoa.h:
193         (WTF::parseDouble): Added an overload that takes a StringView.
194
195 2014-03-15  Darin Adler  <darin@apple.com>
196
197         Remove all uses of deprecatedCharacters from WebKit2
198         https://bugs.webkit.org/show_bug.cgi?id=130197
199
200         Reviewed by Andreas Kling.
201
202         * wtf/text/StringView.h: Added new getCharactersWithUpconvert and upconvertedCharacters
203         functions. These are useful for callers that need UTF-16.
204
205 2014-03-15  Darin Adler  <darin@apple.com>
206
207         Try to fix EFL build.
208
209         * wtf/ThreadingPthreads.cpp: (WTF::changeThreadPriority): Code in this function
210         was setting the priority of the current thread instead of the passed-in thread.
211         That was triggering an unused variable warning in the compiler used to build for
212         EFL. Fixed by using the thread handle instead of pthread_self.
213
214 2014-03-15  Michael Saboff  <msaboff@apple.com>
215
216         It should be possible to adjust DFG and FTL compiler thread priorities
217         https://bugs.webkit.org/show_bug.cgi?id=130288
218
219         Reviewed by Filip Pizlo.
220
221         Added ability to change thread priorities relative to its current priority.
222         Created options to adjust the priority of the DFG and FTL compilation work thread
223         pools.  For two core systems, there might be three runnable threads, the main thread,
224         the DFG compilation thread and the FTL compilation thread.  With the same priority,
225         the scheduler is free to schedule whatever thread it wants.  By lowering the
226         compilation threads, the main thread can run.  Further tests may suggest better values
227         for the new options, priorityDeltaOfDFGCompilerThreads and priorityDeltaOfFTLCompilerThreads.
228
229         For a two-core device, this change has a net positive improvement of 1-3% across
230         SunSpider, Octane, Kraken and AsmBench.
231
232         * wtf/Threading.h:
233         * wtf/ThreadingPthreads.cpp:
234         (WTF::changeThreadPriority):
235         * wtf/ThreadingWin.cpp:
236         (WTF::changeThreadPriority):
237
238 2014-03-15  David Kilzer  <ddkilzer@apple.com>
239
240         Fix undefined behavior in WTF::equal() in StringImpl.h for i386/x86_64
241         <http://webkit.org/b/130283>
242         <rdar://problem/16281477>
243
244         Reviewed by Geoff Garen.
245
246         * wtf/text/StringImpl.h:
247         (WTF::loadUnaligned): Add template method.
248         (WTF::equal): Switch to using loadUnaligned<>().
249
250 2014-03-14  Mark Rowe  <mrowe@apple.com>
251
252         Fix the production build.
253
254         Don't rely on USE_INTERNAL_SDK being set for the Production configuration since UseInternalSDK.xcconfig won't
255         be at the expected relative path when working from installed source.
256
257         * Configurations/Base.xcconfig:
258
259 2014-03-14  Maciej Stachowiak  <mjs@apple.com>
260
261         Replace "Apple Computer, Inc." with "Apple Inc." in copyright headers
262         https://bugs.webkit.org/show_bug.cgi?id=130276
263         <rdar://problem/16266927>
264         
265         Reviewed by Simon Fraser.
266
267         * wtf/ASCIICType.h:
268         * wtf/AVLTree.h:
269         * wtf/Assertions.cpp:
270         * wtf/Assertions.h:
271         * wtf/Atomics.cpp:
272         * wtf/Atomics.h:
273         * wtf/AutodrainedPool.h:
274         * wtf/AutodrainedPoolMac.mm:
275         * wtf/BoundsCheckedPointer.h:
276         * wtf/CryptographicUtilities.cpp:
277         * wtf/CryptographicallyRandomNumber.h:
278         * wtf/CurrentTime.h:
279         * wtf/Deque.h:
280         * wtf/DisallowCType.h:
281         * wtf/ExportMacros.h:
282         * wtf/FeatureDefines.h:
283         * wtf/GetPtr.h:
284         * wtf/HashIterators.h:
285         * wtf/Locker.h:
286         * wtf/MainThread.cpp:
287         * wtf/MainThread.h:
288         * wtf/MathExtras.h:
289         * wtf/MediaTime.cpp:
290         * wtf/MediaTime.h:
291         * wtf/MessageQueue.h:
292         * wtf/MetaAllocator.cpp:
293         * wtf/MetaAllocator.h:
294         * wtf/MetaAllocatorHandle.h:
295         * wtf/OSRandomSource.cpp:
296         * wtf/OSRandomSource.h:
297         * wtf/Platform.h:
298         * wtf/RandomNumber.cpp:
299         * wtf/RandomNumber.h:
300         * wtf/RandomNumberSeed.h:
301         * wtf/RedBlackTree.h:
302         * wtf/RunLoopTimer.h:
303         * wtf/RunLoopTimerCF.cpp:
304         * wtf/SchedulePair.h:
305         * wtf/SchedulePairCF.cpp:
306         * wtf/SchedulePairMac.mm:
307         * wtf/SegmentedVector.h:
308         * wtf/StackBounds.h:
309         * wtf/StaticConstructors.h:
310         * wtf/StringExtras.h:
311         * wtf/ThreadFunctionInvocation.h:
312         * wtf/ThreadSafeRefCounted.h:
313         * wtf/ThreadSpecific.h:
314         * wtf/Threading.h:
315         * wtf/ThreadingPrimitives.h:
316         * wtf/ThreadingPthreads.cpp:
317         * wtf/ThreadingWin.cpp:
318         * wtf/WTFThreadData.cpp:
319         * wtf/WTFThreadData.h:
320         * wtf/efl/OwnPtrEfl.cpp:
321         * wtf/mac/MainThreadMac.mm:
322         * wtf/text/AtomicStringHash.h:
323         * wtf/text/AtomicStringImpl.h:
324         * wtf/text/Base64.h:
325         * wtf/text/CString.cpp:
326         * wtf/text/CString.h:
327         * wtf/text/LChar.h:
328         * wtf/text/cf/StringCF.cpp:
329         * wtf/text/mac/StringMac.mm:
330         * wtf/unicode/CharacterNames.h:
331         * wtf/unicode/Collator.h:
332         * wtf/unicode/CollatorDefault.cpp:
333         * wtf/unicode/UTF8.cpp:
334         * wtf/unicode/UTF8.h:
335         * wtf/unicode/icu/CollatorICU.cpp:
336         * wtf/win/MainThreadWin.cpp:
337
338 2014-03-14  Byungseon Shin  <sun.shin@lge.com>
339
340         Incorrect Date returned between March 1, 2034 and February 28, 2100.
341         https://bugs.webkit.org/show_bug.cgi?id=130123
342
343         Reviewed by Mark Lam.
344
345         Fix logic by using predefined Date APIs.
346
347         * wtf/DateMath.cpp:
348         (WTF::ymdhmsToSeconds):
349
350 2014-03-12  Sergio Villar Senin  <svillar@igalia.com>
351
352         Rename DEFINE_STATIC_LOCAL to DEPRECATED_DEFINE_STATIC_LOCAL
353         https://bugs.webkit.org/show_bug.cgi?id=129612
354
355         Reviewed by Darin Adler.
356
357         For new code use static NeverDestroyed<T> instead.
358
359         * wtf/RunLoop.cpp:
360         (WTF::RunLoop::current):
361         * wtf/StdLibExtras.h:
362         * wtf/ThreadingPthreads.cpp:
363         (WTF::threadMapMutex):
364         (WTF::threadMap):
365         * wtf/efl/MainThreadEfl.cpp:
366         (WTF::pipeObject):
367         * wtf/text/StringStatics.cpp:
368         (WTF::StringImpl::empty):
369
370 2014-03-13  Radu Stavila  <stavila@adobe.com>
371
372         Webkit not building on XCode 5.1 due to garbage collection no longer being supported
373         https://bugs.webkit.org/show_bug.cgi?id=130087
374
375         Reviewed by Mark Rowe.
376
377         Disable garbage collection on macosx when not using internal SDK.
378
379         * Configurations/Base.xcconfig:
380
381 2014-03-12  Ryuan Choi  <ryuan.choi@samsung.com>
382
383         [EFL] Enable Parallel GC
384         https://bugs.webkit.org/show_bug.cgi?id=130177
385
386         Reviewed by Geoffrey Garen.
387
388         * wtf/Platform.h: Turn on ENABLE_PARALLEL_GC for the EFL build.
389
390 2014-03-12  Joseph Pecoraro  <pecoraro@apple.com>
391
392         Web Inspector: Disable REMOTE_INSPECTOR in earlier OS X releases
393         https://bugs.webkit.org/show_bug.cgi?id=130118
394
395         Reviewed by Timothy Hatcher.
396
397         * wtf/FeatureDefines.h:
398
399 2014-03-11  Brent Fulgham  <bfulgham@apple.com>
400
401         [Win] Unreviewed gardening.
402
403         * wtf/MathExtras.h: VS2013 provides an lrint implementation. No need to implement
404         our own.
405
406 2014-03-10  Jer Noble  <jer.noble@apple.com>
407
408         Improve WeakPtr operators.
409         https://bugs.webkit.org/show_bug.cgi?id=130053
410
411         Reviewed by Andreas Kling.
412
413         Replace the "operator!()" with an explicit bool operator.  Add an "operator->()".
414
415         * wtf/WeakPtr.h:
416         (WTF::WeakPtr::operator bool):
417         (WTF::WeakPtr::operator->):
418
419 2014-03-10  Brent Fulgham  <bfulgham@apple.com>
420
421         [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
422         https://bugs.webkit.org/show_bug.cgi?id=130023.
423
424         Reviewed by Dean Jackson.
425
426         * WTF.vcxproj/WTF.proj: Avoid putting trailing slashes in system paths to avoid
427         escaping during later string substitution.
428         * WTF.vcxproj/build-generated-files.sh: Accept environment values passed by VS.
429
430 2014-03-10  Mark Hahnenberg  <mhahnenberg@apple.com>
431
432         Turn on GenGC on other 64-bit platforms
433         https://bugs.webkit.org/show_bug.cgi?id=129258
434
435         Reviewed by Oliver Hunt.
436
437         * wtf/Platform.h: 
438
439 2014-03-07  peavo@outlook.com  <peavo@outlook.com>
440
441         [Win64] Compile error after r165128.
442         https://bugs.webkit.org/show_bug.cgi?id=129807
443
444         Reviewed by Mark Lam.
445
446         * wtf/Platform.h: MSVC does not support computed goto.
447         Also enabled COMPUTED_GOTO_OPCODES when !ENABLE(LLINT_C_LOOP). This is needed because the ASM LLINT operates like COMPUTED_GOTO_OPCODES,
448         and relies on the related data structures being defined to support this. On Win32, the platform does not HAVE_COMPUTED_GOTO support,
449         but does want ENABLE_COMPUTED_GOTO_OPCODES because it uses the ASM LLINT.
450
451 2014-03-06  Michael Saboff  <msaboff@apple.com>
452
453         JSC should disable the JIT when building for ARMv7k
454         https://bugs.webkit.org/show_bug.cgi?id=129829
455
456         Reviewed by Oliver Hunt.
457
458         Added WTF_CPU_APPLE_ARMV7K CPU define.  Disabled the JITs when
459         that feature define is set.
460
461         * wtf/Platform.h:
462
463 2014-03-06  Filip Pizlo  <fpizlo@apple.com>
464
465         Use the LLVM disassembler on ARM64 if we are enabling the FTL
466         https://bugs.webkit.org/show_bug.cgi?id=129785
467
468         Reviewed by Geoffrey Garen.
469
470         * wtf/Platform.h:
471
472 2014-03-05  peavo@outlook.com  <peavo@outlook.com>
473
474         [Win32][LLINT] Crash when running JSC stress tests.
475         https://bugs.webkit.org/show_bug.cgi?id=129429
476
477         Reviewed by Geoffrey Garen.
478
479         * wtf/Platform.h: Enable LLINT on Win32.
480
481 2014-03-04  Zan Dobersek  <zdobersek@igalia.com>
482
483         [GTK] Build the Udis86 disassembler
484         https://bugs.webkit.org/show_bug.cgi?id=129679
485
486         Reviewed by Michael Saboff.
487
488         * wtf/Platform.h: Also enable the Udis86 disassembler for the GTK port on Linux.
489
490 2014-03-02  Jaehun Lim  <ljaehun.lim@samsung.com>
491
492         [EFL] Remove m_initEfl from RunLoop.
493         https://bugs.webkit.org/show_bug.cgi?id=129568
494
495         Reviewed by Gyuyoung Kim.
496
497         We don't use m_initEfl except RunLoop constructor.
498
499         * wtf/RunLoop.h:
500         * wtf/efl/RunLoopEfl.cpp:
501         (WTF::RunLoop::RunLoop):
502
503 2014-03-02  Darin Adler  <darin@apple.com>
504
505         Cut down use of OwnPtr within WTF itself
506         https://bugs.webkit.org/show_bug.cgi?id=129567
507
508         Reviewed by Sam Weinig.
509
510         * wtf/RefCounted.h: Removed OwnPtr includes.
511
512         * wtf/StreamBuffer.h: Removed OwnPtr includes and switched to use
513         std::make_unique and std::unique_ptr instead.
514
515         * wtf/Threading.cpp: Removed OwnPtr includes.
516         * wtf/ThreadingPthreads.cpp: Ditto.
517         * wtf/Vector.h: Ditto.
518
519 2014-02-26  Gavin Barraclough  <barraclough@apple.com>
520
521         FastMalloc should use vm_page_shift intead of PAGE_SHIFT.
522         https://bugs.webkit.org/show_bug.cgi?id=129370
523
524         Reviewed by Mark Rowe.
525
526         "Doesn't this lead to the page map using fewer bits than it was before?
527         It seems like this will cause some page addresses to no longer be
528         representable in the map when using 4K pages. Am I missing something?"
529
530         * wtf/FastMalloc.cpp:
531             - bdash raises a valid point. This should make the TCMalloc_PageMap
532               larger than absolutely necessary, rather than potentially too small.
533
534 2014-02-25  Gavin Barraclough  <barraclough@apple.com>
535
536         FastMalloc should use vm_page_shift intead of PAGE_SHIFT.
537         https://bugs.webkit.org/show_bug.cgi?id=129370
538
539         Reviewed by Geoff Garen.
540
541         Previously we used PAGE_SHIFT to initialize kPageShift.
542         Since this was a constant, it could be used to calculate other
543         contants used in the code. Some of these values are used in the
544         definition of certain data structures (specifiying the length of
545         some array members).
546
547         Make kPageShift & dependent properties variables setup during
548         initialization. Add upper bound values (K_PAGE_SHIFT_MAX,
549         K_NUM_CLASSES_MAX) for use in cases where we need a constant.
550
551         * wtf/FastMalloc.cpp:
552         (WTF::InitSizeClasses):
553             - initialize kPageShift, kNumClasses, kPageSize, kMaxValidPages.
554         (WTF::pages):
555             - added ASSERT.
556         (WTF::AllocationSize):
557             - added ASSERT.
558         (WTF::TCMalloc_PageHeap::FreeBytes):
559             - added ASSERT.
560         (WTF::TCMalloc_PageHeap::init):
561             - COMPILE_ASSERT -> ASSERT
562         (WTF::TCMalloc_PageHeap::scavenge):
563             - added ASSERT.
564         (WTF::TCMalloc_PageHeap::Carve):
565             - added ASSERT.
566         (WTF::mergeDecommittedStates):
567             - added ASSERT.
568         (WTF::TCMalloc_PageHeap::IncrementalScavenge):
569             - added ASSERT.
570         (WTF::TCMalloc_PageHeap::ReturnedBytes):
571             - added ASSERT.
572         (WTF::PagesToMB):
573             - added ASSERT.
574         (WTF::TCMalloc_PageHeap::GrowHeap):
575             - added ASSERT.
576         (WTF::TCMalloc_PageHeap::ReleaseFreeList):
577             - kNumClasses -> K_NUM_CLASSES_MAX
578         (WTF::TCMalloc_ThreadCache::enumerateFreeObjects):
579             - added ASSERT.
580         (WTF::TCMalloc_Central_FreeList::Init):
581             - added ASSERT.
582         (WTF::TCMalloc_Central_FreeList::ReleaseToSpans):
583             - added ASSERT.
584         (WTF::TCMalloc_Central_FreeList::EvictRandomSizeClass):
585             - added ASSERT.
586         (WTF::TCMalloc_Central_FreeList::MakeCacheSpace):
587             - added ASSERT.
588         (WTF::TCMalloc_Central_FreeList::InsertRange):
589             - added ASSERT.
590         (WTF::TCMalloc_Central_FreeList::Populate):
591             - added ASSERT.
592         (WTF::TCMalloc_ThreadCache::Init):
593             - added ASSERT.
594         (WTF::TCMalloc_ThreadCache::Cleanup):
595             - added ASSERT.
596         (WTF::TCMalloc_ThreadCache::Scavenge):
597             - added ASSERT.
598         (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
599             - added ASSERT.
600
601 2014-02-24  Alex Christensen  <achristensen@webkit.org>
602
603         Disabled WebGL on WinCairo.
604
605         Unreviewed.
606
607         * wtf/FeatureDefines.h:
608         Removed ENABLE_WEBGL definition for WinCairo port.
609         WebGL has not worked on WinCairo since r163079
610         and it was not compiling with a recent ANGLE update.
611
612 2014-02-24  Mark Hahnenberg  <mhahnenberg@apple.com>
613
614         Turn GenGC on for 32-bit systems
615         https://bugs.webkit.org/show_bug.cgi?id=128824
616
617         Reviewed by Geoffrey Garen.
618
619         * wtf/Platform.h:
620
621 2014-02-21  Benjamin Poulain  <benjamin@webkit.org>
622
623         jsDocumentPrototypeFunctionGetElementById should not create an AtomicString for the function argument
624         https://bugs.webkit.org/show_bug.cgi?id=128893
625
626         Reviewed by Darin Adler.
627
628         AtomicString::find() is a special case optimized for the JavaScript bindings. The method can only
629         be called under specific conditions.
630         The method is renamed to findStringWithHash().
631
632         The new AtomicString::find is generic and does not require any propery on the input.
633
634         * wtf/text/AtomicString.cpp:
635         (WTF::AtomicString::findStringWithHash):
636         (WTF::AtomicString::findSlowCase):
637         * wtf/text/AtomicString.h:
638         (WTF::AtomicString::find):
639
640 2014-02-20  Csaba Osztrogonác  <ossy@webkit.org>
641
642         Add StackStats sources to cmake and autotools build files
643         https://bugs.webkit.org/show_bug.cgi?id=129103
644
645         Reviewed by Anders Carlsson.
646
647         * GNUmakefile.list.am:
648         * wtf/CMakeLists.txt:
649
650 2014-02-20  Csaba Osztrogonác  <ossy@webkit.org>
651
652         Get rid of redundant Platform.h includes
653         https://bugs.webkit.org/show_bug.cgi?id=128817
654
655         Reviewed by Brent Fulgham.
656
657         * wtf/Assertions.h:
658         * wtf/Atomics.h:
659         * wtf/ByteOrder.h:
660         * wtf/DataLog.h:
661         * wtf/DisallowCType.h:
662         * wtf/DynamicAnnotations.h:
663         * wtf/ExportMacros.h:
664         * wtf/FastMalloc.h:
665         * wtf/FlipBytes.h:
666         * wtf/InlineASM.h:
667         * wtf/PrintStream.h:
668         * wtf/ProcessID.h:
669         * wtf/Threading.h:
670         * wtf/ThreadingPrimitives.h:
671
672 2014-02-19  Jon Honeycutt  <jhoneycutt@apple.com>
673
674         Crash in WTF::StringBuilder::append()
675
676         https://bugs.webkit.org/show_bug.cgi?id=125817
677         <rdar://problem/15671883>
678
679         Reviewed by Oliver Hunt.
680
681         * wtf/text/StringBuilder.cpp:
682         (WTF::expandedCapacity):
683         Ensure that we return a new capacity of at least 'requiredLength' in
684         the case where requiredLength is large. Also, use unsigned rather than
685         size_t for the parameters and the return value, as callers pass
686         unsigned arguments and treat the result as an unsigned int.
687
688 2014-02-19  Anders Carlsson  <andersca@apple.com>
689
690         Add WTF_MAKE_FAST_ALLOCATED to more classes
691         https://bugs.webkit.org/show_bug.cgi?id=129064
692
693         Reviewed by Andreas Kling.
694
695         * wtf/Bitmap.h:
696
697 2014-02-19  Zan Dobersek  <zdobersek@igalia.com>
698
699         Make PrintStream::print() a variadic template
700         https://bugs.webkit.org/show_bug.cgi?id=126388
701
702         Reviewed by Brent Fulgham.
703
704         PrintStream::print() can be converted into a variadic template, printing the value
705         of the first parameter and recursively calling itself until the single parameter version
706         is used for printing the last value.
707
708         * wtf/DataLog.h:
709         (WTF::dataLog): Convert the function to a variadic template as well.
710         * wtf/PrintStream.h:
711         (WTF::PrintStream::print):
712         * wtf/StringPrintStream.h:
713         (WTF::toCString): Ditto.
714         (WTF::toString): Ditto.
715
716 2014-02-19  Zan Dobersek  <zdobersek@igalia.com>
717
718         Use std::swap() in HashTable::swap()
719         https://bugs.webkit.org/show_bug.cgi?id=128995
720
721         Reviewed by Brent Fulgham.
722
723         Use std::swap() to swap the member variable values of two HashTable objects in HashTable::swap().
724
725         * wtf/HashTable.h:
726         (WTF::KeyTraits>::swap):
727
728 2014-02-19  Zan Dobersek  <zdobersek@igalia.com>
729
730         SegmentedVector::append() should take in rvalue reference, forward it to Vector::uncheckedAppend()
731         https://bugs.webkit.org/show_bug.cgi?id=128996
732
733         Reviewed by Brent Fulgham.
734
735         * wtf/SegmentedVector.h:
736         (WTF::SegmentedVector::append): Take in an rvalue reference of the object that's to be appended and
737         then forward it to Vector::uncheckedAppend(). This avoids unnecessary copies in the current situation
738         where a const lvalue is accepted and passed on.
739
740 2014-02-19  Dan Bernstein  <mitz@apple.com>
741
742         Simplify PLATFORM(MAC) && !PLATFORM(IOS) and similar expressions
743         https://bugs.webkit.org/show_bug.cgi?id=129029
744
745         Reviewed by Mark Rowe.
746
747         * wtf/FeatureDefines.h:
748         * wtf/Platform.h:
749         * wtf/Threading.cpp:
750         * wtf/text/cf/StringImplCF.cpp:
751         (garbageCollectionEnabled):
752
753 2014-02-18  Dan Bernstein  <mitz@apple.com>
754
755         PLATFORM(MAC) is true when building for iOS
756         https://bugs.webkit.org/show_bug.cgi?id=129025
757
758         Reviewed by Mark Rowe.
759
760         * wtf/Platform.h: Changed to define WTF_PLATFORM_MAC only on when building for OS X (but
761         still not when WTF_PLATFORM_GTK or WTF_PLATFORM_EFL are defined).
762
763 2014-02-18  Joseph Pecoraro  <pecoraro@apple.com>
764
765         [iOS] Web Inspector: JSContext inspection crashes in isMainThread, uninitialized WebCoreWebThreadIsLockedOrDisabled
766         https://bugs.webkit.org/show_bug.cgi?id=128959
767
768         Reviewed by David Kilzer.
769
770         When JavaScriptCore is used without WebCore on iOS (e.g. JSContext)
771         the WebCoreWebThread* functions will not be initialized. Avoid
772         calling the function pointer if it is uninitialized. This was
773         happening with remote inspection via StringImpl::createCFString
774         for implicit NSString / WTFString conversion which uses isMainThread.
775
776         * wtf/mac/MainThreadMac.mm:
777         (WTF::webThreadIsUninitializedOrLockedOrDisabled):
778         (WTF::isMainThread):
779         (WTF::canAccessThreadLocalDataForThread):
780
781 2014-02-17  Filip Pizlo  <fpizlo@apple.com>
782
783         More ARM FTL glue
784         https://bugs.webkit.org/show_bug.cgi?id=128948
785
786         Reviewed by Sam Weinig.
787
788         * wtf/Platform.h:
789
790 2014-02-17  Anders Carlsson  <andersca@apple.com>
791
792         Remove ENABLE_GLOBAL_FASTMALLOC_NEW
793         https://bugs.webkit.org/show_bug.cgi?id=127067
794
795         Reviewed by Geoffrey Garen.
796
797         Remove the global operator new/operator delete overrides. Having ALWAYS_INLINE operators
798         like we do is really undefined behavior according to the C++ standard and we've been lucky enough
799         to get away with it so far, but any code that calls operator new/operator delete inside from the C++ standard
800         library (not from headers that are included) will be mismatched and potentially crash. libc++ calls
801         delete in it's std::thread implementation for example.
802         
803         The only supported way to override operator new and operator delete globally is to not use inline
804         functions, but that would mean that any application using WebKit would not be able to provide custom
805         operator new/operator delete functions so we'll just reuse the already existing infrastructure consisting
806         of the WTF_MAKE_FAST_ALLOCATED macro.
807
808         * wtf/FastMalloc.cpp:
809         (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
810         * wtf/FastMalloc.h:
811         * wtf/Platform.h:
812
813 2014-02-17  Ryan Lortie  <desrt@desrt.ca>
814
815         Enable DFG_JIT on FreeBSD
816         https://bugs.webkit.org/show_bug.cgi?id=128898
817
818         Reviewed by Csaba Osztrogonác.
819
820         * wtf/Platform.h:
821
822 2014-02-15  Filip Pizlo  <fpizlo@apple.com>
823
824         FTL should inline polymorphic heap accesses
825         https://bugs.webkit.org/show_bug.cgi?id=128795
826
827         Reviewed by Oliver Hunt.
828
829         * wtf/PrintStream.h:
830         (WTF::PointerDumpInContext::PointerDumpInContext):
831         (WTF::PointerDumpInContext::dump):
832         (WTF::pointerDumpInContext):
833
834 2014-02-16  Zan Dobersek  <zdobersek@igalia.com>
835
836         Reintroduce const qualifiers for return types of (Filter|Transform)Iterator::operator*()
837         https://bugs.webkit.org/show_bug.cgi?id=126875
838
839         The const qualifiers for the return types of FilterIterator::operator*() and TransformIterator::operator*()
840         were removed in r161797 and r161802 because of compilation failures when using GCC and having an Iterator
841         type that already had the const qualifier. std::remove_const is now used to appease GCC and enforce the const
842         qualifier on the return type, regardless of the Iterator type and its qualifiers.
843
844         * wtf/IteratorAdaptors.h:
845         (WTF::FilterIterator::operator*):
846         (WTF::TransformIterator::operator*):
847
848 2014-02-15  Filip Pizlo  <fpizlo@apple.com>
849
850         Vector with inline capacity should work with non-PODs
851         https://bugs.webkit.org/show_bug.cgi?id=128864
852
853         Reviewed by Michael Saboff.
854         
855         Previously, we would copy the inline storage of a vector as if it was a bag of bits.
856         This presumed that the element type was relocatable. In general this is only true for
857         PODs.
858         
859         This patch changes this by introducing a swap operation over inline storage. This swap
860         operation requires being told about the size that is in use.
861         
862         Deques would have required some cleverness to make this work, because the swap
863         operation needs to know which subset of elements are in-use and assumes that a size is
864         sufficient for this. That's not true for deques. Instead of trying to do very clever
865         things, I just removed the inline capacity option from Deque. I believe that this is
866         fine since there are only two users of Deque with inline capacity, and both of them
867         appear to be allocated rarely enough that inline capacity probably doesn't help much.
868
869         * wtf/Deque.h:
870         (WTF::DequeIterator::DequeIterator):
871         (WTF::DequeConstIterator::DequeConstIterator):
872         (WTF::Deque<T>::checkValidity):
873         (WTF::Deque<T>::checkIndexValidity):
874         (WTF::Deque<T>::invalidateIterators):
875         (WTF::Deque<T>::Deque):
876         (WTF::=):
877         (WTF::Deque<T>::destroyAll):
878         (WTF::Deque<T>::~Deque):
879         (WTF::Deque<T>::swap):
880         (WTF::Deque<T>::clear):
881         (WTF::Deque<T>::expandCapacityIfNeeded):
882         (WTF::Deque<T>::expandCapacity):
883         (WTF::Deque<T>::append):
884         (WTF::Deque<T>::prepend):
885         (WTF::Deque<T>::removeFirst):
886         (WTF::Deque<T>::removeLast):
887         (WTF::Deque<T>::remove):
888         (WTF::DequeIteratorBase<T>::checkValidity):
889         (WTF::DequeIteratorBase<T>::addToIteratorsList):
890         (WTF::DequeIteratorBase<T>::removeFromIteratorsList):
891         (WTF::DequeIteratorBase<T>::DequeIteratorBase):
892         (WTF::DequeIteratorBase<T>::~DequeIteratorBase):
893         (WTF::DequeIteratorBase<T>::isEqual):
894         (WTF::DequeIteratorBase<T>::increment):
895         (WTF::DequeIteratorBase<T>::decrement):
896         (WTF::DequeIteratorBase<T>::after):
897         (WTF::DequeIteratorBase<T>::before):
898         * wtf/Vector.h:
899         (WTF::VectorBuffer::swap):
900         (WTF::VectorBuffer::swapInlineBuffer):
901         (WTF::VectorBuffer::swapInlineBuffers):
902         (WTF::Vector::swap):
903
904 2014-02-15  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
905
906         Remove 'static' specifier from free inline functions in StringImpl.h
907         https://bugs.webkit.org/show_bug.cgi?id=118554
908
909         Reviewed by Darin Adler.
910
911         At first 'static' does not bring any use here, secondly static free
912         inline functions in headers is a bad practice in general as each instance
913         of function defined as inline is treated as a separate function and each
914         instance has its own copy of static locals and string literals.
915
916         * wtf/text/StringImpl.h:
917         (WTF::codePointCompare):
918         (WTF::codePointCompare8):
919         (WTF::codePointCompare16):
920         (WTF::codePointCompare8To16):
921         (WTF::isSpaceOrNewline):
922
923 2014-02-14  Benjamin Poulain  <bpoulain@apple.com>
924
925         Improve the performance on mobile of FTPDirectoryDocument
926         https://bugs.webkit.org/show_bug.cgi?id=128778
927
928         Reviewed by Antti Koivisto.
929
930         * wtf/text/WTFString.h:
931         (WTF::String::endsWith): add a missing overload.
932
933 2014-02-14  Wojciech Bielawski  <w.bielawski@samsung.com>
934
935         (try)append and insert operations don't need new operator for PODs
936         https://bugs.webkit.org/show_bug.cgi?id=128185
937
938         Reviewed by Darin Adler.
939
940         Vector's methods use VectorCopier to copy data.
941         VectorCopier for PODs exteded to be used with different types. For different types placement new copy approach is applied. For the same types memcpy is applied.
942
943         * wtf/Vector.h:
944         (WTF::OverflowHandler>::append): use VectorCopier to copy data.
945         (WTF::OverflowHandler>::tryAppend): use VectorCopier to copy data.
946         (WTF::OverflowHandler>::insert): use VectorCopier to copy data.
947
948 2014-02-13  Daniel Bates  <dabates@apple.com>
949
950         Fix the iOS build after <http://trac.webkit.org/changeset/164064
951
952         * wtf/Platform.h:
953
954 2014-02-13  Daniel Bates  <dabates@apple.com>
955
956         [iOS] Disable HAVE_ARM_NEON_INTRINSICS
957
958         For now, disable HAVE_ARM_NEON_INTRINSICS when building for iOS. We want
959         to audit the applicable code before we enable this define.
960
961         * wtf/Platform.h:
962
963 2014-02-11  Filip Pizlo  <fpizlo@apple.com>
964
965         Hoist and combine array bounds checks
966         https://bugs.webkit.org/show_bug.cgi?id=125433
967
968         Reviewed by Mark Hahnenberg.
969
970         * GNUmakefile.list.am:
971         * WTF.vcxproj/WTF.vcxproj:
972         * WTF.xcodeproj/project.pbxproj:
973         * wtf/CMakeLists.txt:
974         * wtf/HashMethod.h: Added.
975         (WTF::HashMethod::operator()):
976
977 2014-02-13  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
978
979         Code cleanup: remove gcc<4.7 guards.
980         https://bugs.webkit.org/show_bug.cgi?id=128729
981
982         Reviewed by Anders Carlsson.
983
984         Remove GCC_VERSION_AT_LEAST guards when it checks for pre-4.7 versions,
985         as WK does not compile with earlier gcc versions.
986
987         * wtf/Assertions.cpp:
988         * wtf/Platform.h:
989
990 2014-02-12  Mark Lam  <mark.lam@apple.com>
991
992         No need to save reservedZoneSize when dropping the JSLock.
993         <https://webkit.org/b/128719>
994
995         Reviewed by Geoffrey Garen.
996
997         * wtf/WTFThreadData.cpp:
998         (WTF::WTFThreadData::WTFThreadData):
999         * wtf/WTFThreadData.h:
1000         - removed unnneeded m_savedReservedZoneSize.
1001
1002 2014-02-11  Mark Hahnenberg  <mhahnenberg@apple.com>
1003
1004         32-bit LLInt writeBarrierOnGlobalObject is wrong
1005         https://bugs.webkit.org/show_bug.cgi?id=128556
1006
1007         Reviewed by Geoffrey Garen.
1008
1009         * wtf/Platform.h: Removed OBJECT_MARK_LOGGING from Platform.h since it already exists in FeatureDefines.h
1010
1011 2014-02-11  peavo@outlook.com  <peavo@outlook.com>
1012
1013         [WinCairo] Compile error, deleted file in WTF.
1014         https://bugs.webkit.org/show_bug.cgi?id=128601
1015
1016         Reviewed by Csaba Osztrogonác.
1017
1018         * WTF.vcxproj/WTF.vcxproj: Removed reference to deleted file.
1019         * WTF.vcxproj/WTF.vcxproj.filters: Ditto.
1020
1021 2014-02-10  Michael Saboff  <msaboff@apple.com>
1022
1023         Re-enable ARM Thumb2 disassembler
1024         https://bugs.webkit.org/show_bug.cgi?id=128577
1025
1026         Reviewed by Filip Pizlo.
1027
1028         Added definition of WTF_USE_ARMV7_DISASSEMBLER back to Platform.h
1029
1030         * wtf/Platform.h:
1031
1032 2014-02-10  Benjamin Poulain  <benjamin@webkit.org>
1033
1034         Add the basic infrastructure to compile attributes matching in selectors
1035         https://bugs.webkit.org/show_bug.cgi?id=128484
1036
1037         Reviewed by Gavin Barraclough.
1038
1039         * wtf/Vector.h:
1040         (WTF::VectorBufferBase::bufferMemoryOffset):
1041         (WTF::Vector::sizeMemoryOffset):
1042         (WTF::Vector::dataMemoryOffset):
1043         Expose the memory offsets of Vector::size() and the memory buffer pointer for the JIT.
1044
1045 2014-02-10  Enrica Casucci  <enrica@apple.com>
1046
1047         copyShortASCIIString crashes on iOS after r163793.
1048         https://bugs.webkit.org/show_bug.cgi?id=128548.
1049
1050         Reviewed by Alexey Proskuryakov.
1051
1052         Adding null check.
1053
1054         * wtf/unicode/icu/CollatorICU.cpp:
1055         (WTF::copyShortASCIIString):
1056
1057 2014-02-10  Carlos Garcia Campos  <cgarcia@igalia.com>
1058
1059         [GLIB] Add GUniqueOutPtr and use it instead of GOwnPtr
1060         https://bugs.webkit.org/show_bug.cgi?id=127554
1061
1062         Reviewed by Gustavo Noronha Silva.
1063
1064         GUniqueOutPtr is a simplified version of GOwnPtr for the cases
1065         where we need the address of the contained pointer. GUniqueOutPtr
1066         uses GUniquePtr to free the contained object and to release the
1067         container pointer. The API is very simple to make sure this is
1068         only used when outPtr() is needed. It can't be constructed with a
1069         pointer, and there's not method to set a new pointer. Another
1070         difference with the old GOwnPtr is that outPtr() can be used
1071         multiple times, because it frees any pointer previously set.
1072
1073         * GNUmakefile.list.am:
1074         * wtf/PlatformEfl.cmake:
1075         * wtf/PlatformGTK.cmake:
1076         * wtf/gobject/GOwnPtr.cpp: Removed.
1077         * wtf/gobject/GOwnPtr.h: Removed.
1078         * wtf/gobject/GUniquePtr.h:
1079         (WTF::GUniqueOutPtr::GUniqueOutPtr):
1080         (WTF::GUniqueOutPtr::~GUniqueOutPtr):
1081         (WTF::GUniqueOutPtr::outPtr):
1082         (WTF::GUniqueOutPtr::reset):
1083         (WTF::GUniqueOutPtr::release):
1084         (WTF::GUniqueOutPtr::operator*):
1085         (WTF::GUniqueOutPtr::operator->):
1086         (WTF::GUniqueOutPtr::get):
1087         (WTF::GUniqueOutPtr::operator!):
1088         (WTF::GUniqueOutPtr::operator UnspecifiedBoolType):
1089
1090 2014-02-10  Darin Adler  <darin@apple.com>
1091
1092         Stop using String::deprecatedCharacters to call WTF::Collator
1093         https://bugs.webkit.org/show_bug.cgi?id=128517
1094
1095         WTF passes ICU’s deprecated ULOC_REQUESTED_LOCALE to ucol_getLocaleByType()
1096         rdar://problem/15183390
1097
1098         Reviewed by Alexey Proskuryakov.
1099
1100         This patch fixes both bugs above by reworking WTF::Collator.
1101
1102         * wtf/unicode/Collator.h: Fixed formatting. Got rid of the Collator::Result type,
1103         since the collator uses the same return value scheme as strcmp and as ICU; an int
1104         will do for the return type. Simplified the support for UCONFIG_NO_COLLATION by
1105         using a separate copy of the class definition. (We should check if anyone needs
1106         UCONFIG_NO_COLLATION support, and remove it if not.) Changed the lower-first flag
1107         from a separate function to a constructor argument. Changed the arguments to
1108         the collate function to StringView. Added a collate UTF8 function. Changed the
1109         m_collate data member to no longer be mutable since we no longer allocate it lazily.
1110
1111         * wtf/unicode/CollatorDefault.cpp:
1112         (WTF::Collator::collate): Rewrote to be simpler.
1113         (WTF::Collator::collateUTF8): Added. Converts from UTF-8 to a String and then calls
1114         the collate function above.
1115
1116         * wtf/unicode/icu/CollatorICU.cpp: Added a FIXME about the fact that this file
1117         has the wrong name and location. Since we always use ICU, there's no need to mention
1118         it in the file name.
1119         (WTF::copyASCIIString): Added.
1120         (WTF::copyDefaultLocale): Added.
1121         (WTF::resolveDefaultLocale): Added. Maps null locale to a default on Mac and iOS,
1122         since on those platforms ICU does not use the correct default locale when passed null.
1123         (WTF::localesMatch): Added.
1124         (WTF::Collator::Collator): Moved most of the code from createCollator here.
1125         Simplified it by storing the collator configuration along with the collator in globals.
1126         (WTF::Collator::~Collator): Moved most of the code from releaseCollator here.
1127         (WTF::getIndexLatin1): Added.
1128         (WTF::moveLatin1): Added.
1129         (WTF::hasNextLatin1): Added.
1130         (WTF::hasPreviousLatin1): Added.
1131         (WTF::currentLatin1): Added.
1132         (WTF::nextLatin1): Added.
1133         (WTF::previousLatin1): Added.
1134         (WTF::getStateLatin1): Added.
1135         (WTF::setStateLatin1): Added.
1136         (WTF::createLatin1Iterator): Added. Uses the functions above to make a UCharIterator
1137         that works for a WTF::StringView-style Latin-1 string.
1138         (WTF::createIterator): Added. Uses either createLatin1Iterator or uiter_setString to
1139         make a UCharIterator that works for a WTF::StringView.
1140         (WTF::Collator::collate): Changed to use ucol_strcollIter.
1141         (WTF::createIteratorUTF8): Added. Uses uiter_setUTF8.
1142         (WTF::Collator::collateUTF8): Added. Like collate, but for null-terminated UTF-8 strings.
1143
1144 2014-02-10  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
1145
1146         Code cleanup: Remove BUILDING_ON / TARGETING definitions.
1147         https://bugs.webkit.org/show_bug.cgi?id=128242
1148
1149         Reviewed by Brent Fulgham.
1150
1151         The BUILDING_ON_* and TARGETING_* macros have not been used for a while.
1152         According to the FIXME: they are removed.
1153
1154         * wtf/Platform.h:
1155
1156 2014-02-09  Anders Carlsson  <andersca@apple.com>
1157
1158         Add WTF_MAKE_FAST_ALLOCATED to more classes
1159         https://bugs.webkit.org/show_bug.cgi?id=128506
1160
1161         Reviewed by Andreas Kling.
1162
1163         * wtf/Bag.h:
1164         * wtf/ListHashSet.h:
1165
1166 2014-02-08  Anders Carlsson  <andersca@apple.com>
1167
1168         Stop using getCharactersWithUpconvert in JavaScriptCore
1169         https://bugs.webkit.org/show_bug.cgi?id=128457
1170
1171         Reviewed by Andreas Kling.
1172
1173         * wtf/text/StringBuilder.h:
1174         (WTF::StringBuilder::append):
1175         Add a new overload that takes a StringView.
1176
1177         * wtf/text/StringView.h:
1178         (WTF::StringView::find):
1179         Add new find member function.
1180
1181 2014-02-08  Darin Adler  <darin@apple.com>
1182
1183         Change TextIterator to use StringView, preparing to wean it from deprecatedCharacters
1184         https://bugs.webkit.org/show_bug.cgi?id=128233
1185
1186         Reviewed by Anders Carlsson.
1187
1188         * WTF.xcodeproj/project.pbxproj: Added new source files.
1189
1190         * wtf/text/StringView.h: Added operator[], createCFStringWithoutCopying, and
1191         createNSStringWithoutCopying.
1192         * wtf/text/cf/StringViewCF.cpp:
1193         (WTF::StringView::createCFStringWithoutCopying): Added.
1194         * wtf/text/mac/StringViewObjC.mm:
1195         (WTF::StringView::createNSString): Added.
1196         (WTF::StringView::createNSStringWithoutCopying): Added.
1197
1198 2014-02-06  Andreas Kling  <akling@apple.com>
1199
1200         Remove unused ENABLE(REPAINT_THROTTLING) flag.
1201         <https://webkit.org/b/128329>
1202
1203         Reviewed by Antti Koivisto.
1204
1205         * wtf/FeatureDefines.h:
1206
1207 2014-02-06  Filip Pizlo  <fpizlo@apple.com>
1208
1209         More FTL build scaffolding
1210         https://bugs.webkit.org/show_bug.cgi?id=128330
1211
1212         Reviewed by Geoffrey Garen.
1213
1214         * wtf/Platform.h:
1215
1216 2014-02-06  Anders Carlsson  <andersca@apple.com>
1217
1218         Use std::chrono functions in dispatchFunctionsFromMainThread()
1219         https://bugs.webkit.org/show_bug.cgi?id=128308
1220
1221         Reviewed by Antti Koivisto.
1222
1223         * wtf/MainThread.cpp:
1224         (WTF::dispatchFunctionsFromMainThread):
1225
1226 2014-02-05  Zan Dobersek  <zdobersek@igalia.com>
1227
1228         Remove the WTF_COMPILER_SUPPORTS_CXX_GENERALIZED_INITIALIZERS macro
1229         https://bugs.webkit.org/show_bug.cgi?id=128267
1230
1231         Reviewed by Andreas Kling.
1232
1233         Remove the WTF_COMPILER_SUPPORTS_CXX_GENERALIZED_INITIALIZERS macro that was manually defined for compilers
1234         that support the C++11 initializer lists. The feature is well supported in Clang, MSVC and also GCC. It
1235         was actually already used unguarded in HashSet.
1236
1237         * wtf/Compiler.h:
1238         * wtf/HashMap.h:
1239         (WTF::HashMap::HashMap):
1240         * wtf/Vector.h:
1241         (WTF::Vector::Vector):
1242
1243 2014-02-05  Andreas Kling  <akling@apple.com>
1244
1245         Remove ENABLE(DIRECTORY_UPLOAD).
1246         <https://webkit.org/b/128275>
1247
1248         Rubber-stamped by Ryosuke Niwa.
1249
1250         * wtf/FeatureDefines.h:
1251
1252 2014-02-05  Carlos Garcia Campos  <cgarcia@igalia.com>
1253
1254         HashMap can't be used with std::unique_ptr as value when it has a custom deleter
1255         https://bugs.webkit.org/show_bug.cgi?id=128250
1256
1257         Reviewed by Darin Adler.
1258
1259         The problem is that the HashMap is using a unique_ptr with the
1260         default deleter, so that when trying to move the unique_ptr the
1261         deleters don't match.
1262
1263         * wtf/HashTraits.h: Add the deleter also in the template
1264         definitation of the parent class for the HashTraits<std::unique_ptr<T, Deleter>>
1265
1266 2014-02-05  Csaba Osztrogonác  <ossy@webkit.org>
1267
1268         Remove ENABLE(SVG) guards
1269         https://bugs.webkit.org/show_bug.cgi?id=127991
1270
1271         Reviewed by Sam Weinig.
1272
1273         * wtf/FeatureDefines.h:
1274
1275 2014-02-04  Mark Lam  <mark.lam@apple.com>
1276
1277         The stack limit computation does not work for Windows.
1278         <https://webkit.org/b/128226>
1279
1280         Reviewed by Geoffrey Garen.
1281
1282         The current stack limit computation assumes that the stack is allocated
1283         in high memory. On Windows, the stack seems to be allocated very near
1284         address 0, and is smaller in size than our Options::maxPerThreadStackUsage().
1285         This combination triggers a bug where StackBounds::recursionLimit()
1286         underflows and computes a limit address that is ridiculously high in memory.
1287         The net effect is that the Windows port thinks its out of stack space all
1288         the time.
1289
1290         We now check for potential underflows in StackBounds and return an
1291         appropriate limit address.
1292
1293         * wtf/StackBounds.h:
1294         (WTF::StackBounds::recursionLimit):
1295
1296 2014-02-04  Andreas Kling  <akling@apple.com>
1297
1298         Remove <iframe seamless> support.
1299         <https://webkit.org/b/128213>
1300
1301         Rubber-stamped by Antti Koivisto.
1302
1303         * wtf/FeatureDefines.h:
1304
1305 2014-02-04  Anders Carlsson  <andersca@apple.com>
1306
1307         Store StringImpl substring backpointers as tail data
1308         https://bugs.webkit.org/show_bug.cgi?id=128220
1309
1310         Reviewed by Geoffrey Garen.
1311
1312         This lets us get rid of m_substringBuffer from the union.
1313
1314         * wtf/text/StringImpl.cpp:
1315         (WTF::StringImpl::~StringImpl):
1316         (WTF::StringImpl::getData16SlowCase):
1317         * wtf/text/StringImpl.h:
1318         (WTF::StringImpl::StringImpl):
1319         (WTF::StringImpl::createSubstringSharingImpl8):
1320         (WTF::StringImpl::createSubstringSharingImpl):
1321         (WTF::StringImpl::cost):
1322         (WTF::StringImpl::costDuringGC):
1323         (WTF::StringImpl::substringBuffer):
1324
1325 2014-02-04  Anders Carlsson  <andersca@apple.com>
1326
1327         Rename the substring sharing StringImpl::create variants to better indicate what they do
1328         https://bugs.webkit.org/show_bug.cgi?id=128214
1329
1330         Reviewed by Geoffrey Garen.
1331
1332         * wtf/text/AtomicString.cpp:
1333         (WTF::SubstringTranslator::translate):
1334         * wtf/text/StringBuilder.cpp:
1335         (WTF::StringBuilder::reifyString):
1336         (WTF::StringBuilder::resize):
1337         * wtf/text/StringImpl.h:
1338         (WTF::StringImpl::createSubstringSharingImpl8):
1339         (WTF::StringImpl::createSubstringSharingImpl):
1340         * wtf/text/WTFString.cpp:
1341         (WTF::String::substringSharingImpl):
1342
1343 2014-02-04  Alexey Proskuryakov  <ap@apple.com>
1344
1345         WebCrypto HMAC verification uses a non-constant-time memcmp
1346         https://bugs.webkit.org/show_bug.cgi?id=128198
1347         <rdar://problem/15976961>
1348
1349         Reviewed by Oliver Hunt.
1350
1351         Added a "constant time" memcmp that doesn't depend on data. The name is somewhat
1352         strange, as the function is of course O(length) and not constant time at all,
1353         but apparently this is how everyone calls such functions.
1354
1355         * GNUmakefile.list.am:
1356         * WTF.vcxproj/WTF.vcxproj:
1357         * WTF.vcxproj/WTF.vcxproj.filters:
1358         * WTF.xcodeproj/project.pbxproj:
1359         * wtf/CMakeLists.txt:
1360         * wtf/CryptographicUtilities.cpp: Added. (WTF::constantTimeMemcmp):
1361         * wtf/CryptographicUtilities.h: Added.
1362
1363 2014-02-04  Anders Carlsson  <andersca@apple.com>
1364
1365         Rename StringImpl::getCharacters to StringImpl::characters
1366         https://bugs.webkit.org/show_bug.cgi?id=128205
1367
1368         Reviewed by Antti Koivisto.
1369
1370         This lets us use StringImpl::getCharacters for the upconverting version.
1371         Also, change StringImpl::characters<UChar>() to call characters16() instead of deprecatedCharacters()
1372         and audit all call sites to make sure we weren't relying on upconversion anywhere.
1373
1374         * wtf/text/AtomicString.cpp:
1375         (WTF::findString):
1376         * wtf/text/StringImpl.cpp:
1377         (WTF::StringImpl::simplifyMatchedCharactersToSpace):
1378         * wtf/text/StringImpl.h:
1379         (WTF::StringImpl::characters<LChar>):
1380         (WTF::StringImpl::characters<UChar>):
1381
1382 2014-02-04  Anders Carlsson  <andersca@apple.com>
1383
1384         Rename equalNonNull to equal and make it take const StringImpl& instead
1385         https://bugs.webkit.org/show_bug.cgi?id=128206
1386
1387         Reviewed by Andreas Kling.
1388
1389         * wtf/text/StringHash.h:
1390         (WTF::StringHash::equal):
1391         * wtf/text/StringImpl.cpp:
1392         (WTF::stringImplContentEqual):
1393         (WTF::equal):
1394         * wtf/text/StringImpl.h:
1395
1396 2014-02-04  Anders Carlsson  <andersca@apple.com>
1397
1398         Get rid of StringImpl::m_buffer
1399         https://bugs.webkit.org/show_bug.cgi?id=128200
1400
1401         Reviewed by Michael Saboff.
1402
1403         Trade one lousy hack for another by changing the CreateEmptyUnique StringImpl
1404         constructor to initialize its character buffer to point to m_length instead
1405         since it will always be null.
1406
1407         Also change it to be an 8-bit string because why not.
1408
1409         * wtf/text/StringImpl.h:
1410         (WTF::StringImpl::StringImpl):
1411
1412 2014-02-04  Anders Carlsson  <andersca@apple.com>
1413
1414         Rename String::getCharacters to String::characters
1415         https://bugs.webkit.org/show_bug.cgi?id=128196
1416
1417         Reviewed by Andreas Kling.
1418
1419         This means String::characters() will end up calling either characters8() or characters16() which
1420         makes more logical sense. It also frees up the getCharacters name so we can use it for a new function
1421         that will do upconversion.
1422         
1423         * wtf/text/StringBuilder.cpp:
1424         (WTF::StringBuilder::appendUninitializedSlow):
1425         * wtf/text/WTFString.h:
1426         (WTF::String::characters<LChar>):
1427         (WTF::String::characters<UChar>):
1428
1429 2014-02-03  Anders Carlsson  <andersca@apple.com>
1430
1431         Fix Windows build.
1432
1433         * wtf/text/StringImpl.h:
1434         (WTF::StringImpl::tailOffset):
1435
1436 2014-02-03  Anders Carlsson  <andersca@apple.com>
1437
1438         StringImpl::tailOffset() should return the offset right after m_hashAndFlags
1439         https://bugs.webkit.org/show_bug.cgi?id=128141
1440
1441         Reviewed by Andreas Kling.
1442
1443         * wtf/text/StringImpl.h:
1444         (WTF::StringImpl::tailOffset):
1445
1446 2014-02-03  Anders Carlsson  <andersca@apple.com>
1447
1448         More tail pointer consolidation
1449         https://bugs.webkit.org/show_bug.cgi?id=128139
1450
1451         Reviewed by Andreas Kling.
1452
1453         Add a new tailOffset() function and reimplement allocationSize() and tailPointer()
1454         in terms of it. Use tailPointer() instead of reinterpret_cast-ing this + 1.
1455
1456         * wtf/text/StringImpl.cpp:
1457         (WTF::StringImpl::createUninitializedInternalNonEmpty):
1458         * wtf/text/StringImpl.h:
1459         (WTF::StringImpl::StringImpl):
1460         (WTF::StringImpl::requiresCopy):
1461         (WTF::StringImpl::allocationSize):
1462         (WTF::StringImpl::tailOffset):
1463         (WTF::StringImpl::tailPointer):
1464
1465 2014-02-03  Gustavo Noronha Silva  <gns@gnome.org>
1466
1467         [GTK][CMake] Enable SUBPIXEL_LAYOUT in FeatureDefines.h like EFL does
1468         https://bugs.webkit.org/show_bug.cgi?id=128136
1469
1470         Reviewed by Martin Robinson.
1471
1472         * wtf/FeatureDefines.h: enable SUBPIXEL_LAYOUT if it's not set, for GTK+.
1473
1474 2014-02-03  Mark Hahnenberg  <mhahnenberg@apple.com>
1475
1476         Turn GenGC on
1477         https://bugs.webkit.org/show_bug.cgi?id=128109
1478
1479         Reviewed by Oliver Hunt.
1480
1481         * wtf/Platform.h: Initially it will only be enabled for X86-64.
1482
1483 2014-02-03  Anders Carlsson  <andersca@apple.com>
1484
1485         Consolidate StringImpl tail handling into two functions
1486         https://bugs.webkit.org/show_bug.cgi?id=128122
1487
1488         Reviewed by Andreas Kling.
1489
1490         * wtf/text/StringImpl.cpp:
1491         (WTF::StringImpl::createUninitializedInternalNonEmpty):
1492         (WTF::StringImpl::reallocateInternal):
1493         * wtf/text/StringImpl.h:
1494         (WTF::StringImpl::tryCreateUninitialized):
1495         (WTF::StringImpl::allocationSize):
1496         (WTF::StringImpl::tailPointer):
1497
1498 2014-02-03  Darin Adler  <darin@apple.com>
1499
1500         Remove Unicode.h
1501         https://bugs.webkit.org/show_bug.cgi?id=128106
1502
1503         Reviewed by Anders Carlsson.
1504
1505         * GNUmakefile.list.am: Removed files.
1506         * WTF.vcxproj/WTF.vcxproj: Ditto.
1507         * WTF.vcxproj/WTF.vcxproj.filters: Ditto.
1508         * WTF.xcodeproj/project.pbxproj: Ditto.
1509         * wtf/CMakeLists.txt: Ditto.
1510
1511         * wtf/unicode/ScriptCodesFromICU.h: Removed.
1512         * wtf/unicode/Unicode.h: Removed.
1513         * wtf/unicode/UnicodeMacrosFromICU.h: Removed.
1514         * wtf/unicode/icu/UnicodeIcu.h: Removed.
1515         * wtf/unicode/wchar/UnicodeWchar.cpp: Removed.
1516         * wtf/unicode/wchar/UnicodeWchar.h: Removed.
1517
1518 2014-01-25  Darin Adler  <darin@apple.com>
1519
1520         Stop using Unicode.h
1521         https://bugs.webkit.org/show_bug.cgi?id=127633
1522
1523         Reviewed by Anders Carlsson.
1524
1525         * wtf/StringHasher.h:
1526         * wtf/dtoa.h:
1527         * wtf/text/ASCIIFastPath.h:
1528         * wtf/text/LChar.h:
1529         * wtf/text/StringBuffer.h:
1530         * wtf/text/StringImpl.h:
1531         * wtf/text/WTFString.cpp:
1532         * wtf/unicode/CharacterNames.h:
1533         * wtf/unicode/Collator.h:
1534         * wtf/unicode/UTF8.h:
1535         Removed includes of <wtf/unicode/Unicode.h>, adding includes of
1536         ICU headers and <wtf/text/LChar.h> as needed to replace it.
1537
1538 2014-02-02  Darin Adler  <darin@apple.com>
1539
1540         Obey "delete this" comments, including deleting String::characters and friends
1541         https://bugs.webkit.org/show_bug.cgi?id=126865
1542
1543         Reviewed by Andreas Kling.
1544
1545         * wtf/text/AtomicString.h: Deleted the characters function.
1546         * wtf/text/StringBuilder.h: Deleted the characters function, leaving behind the
1547         deprecatedCharacters function.
1548         * wtf/text/StringImpl.h: Ditto.
1549         * wtf/text/WTFString.h: Ditto. Also added a constructor that takes a StringImpl&,
1550         helpful for later string refactoring.
1551
1552 2014-02-02  Dan Bernstein  <mitz@apple.com>
1553
1554         Stop using PLATFORM(MAC) in WTF except where it means “OS X but not iOS”
1555         https://bugs.webkit.org/show_bug.cgi?id=128089
1556
1557         Reviewed by Darin Adler.
1558
1559         Replaced all uses of PLATFORM(MAC) that weren’t accompanied by !PLATFORM(IOS) with
1560         equivalent(*) tests that are more idiomatic and will not change once PLATFORM(MAC) changes to
1561         be false when building for iOS.
1562
1563         * - One exception noted below.
1564
1565         * wtf/AutodrainedPool.h: Changed PLATFORM(MAC) to USE(FOUNDATION), because NSAutoreleasePool
1566         is a Foundation class.
1567
1568         * wtf/CurrentTime.cpp:
1569         (WTF::monotonicallyIncreasingTime): Changed PLATFORM(MAC) to OS(DARWIN), because Mach is
1570         part of the Darwin kernel, but reordered such that the EFL and GLIB implementations continue
1571         to take precedence regardless of the OS.
1572
1573         * wtf/MainThread.cpp: Changed PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK).
1574         * wtf/MainThread.h: Ditto.
1575
1576         * wtf/Platform.h: Changed USE(CG) and USE(CA) to depend on COCOA, rather than MAC or IOS.
1577         Ditto for USE(CFURLCACHE), HAVE(ACCESSIBILITY), USE(PROTECTION_SPACE_AUTH_CALLBACK),
1578         USE(ACCESSIBILITY_CONTEXT_MENUS), USE(EXPORT_MACROS), USE(AVFOUNDATION),
1579         USE(REQUEST_ANIMATION_FRAME_TIMER), USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR),
1580         USE(CONTENT_FILTERING), USE(UNIFIED_TEXT_CHECKING), USE(MARKER_REMOVAL_UPON_EDITING),
1581         USE(AUDIO_SESSION), USE(IOSURFACE), and ENABLE(CSS3_TEXT_DECORATION_SKIP_INK). Changed
1582         PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK) in controlling various
1583         JavaScriptCore or JavaScriptCore-dependent behaviors.
1584
1585         * wtf/RunLoop.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1586         * wtf/RunLoopTimerCF.cpp: Ditto.
1587
1588         * wtf/SchedulePair.h: Changed PLATFORM(MAC) to USE(FOUNDATION), since it was used to guard
1589         usage of Foundation API.
1590
1591         * wtf/Threading.cpp: Added an explicit !PLATFORM(IOS) in a guard around something needed
1592         only on OS X and Windows.
1593
1594 2014-01-31  Benjamin Poulain  <bpoulain@apple.com>
1595
1596         Remove LEGACY_VIEWPORT_ADAPTION
1597         https://bugs.webkit.org/show_bug.cgi?id=128028
1598
1599         Reviewed by Anders Carlsson.
1600
1601         * wtf/FeatureDefines.h:
1602
1603 2014-01-31  Tim Horton  <timothy_horton@apple.com>
1604
1605         [wk2] PlatformCALayerRemoteCustom doesn't work on iOS
1606         https://bugs.webkit.org/show_bug.cgi?id=128025
1607         <rdar://problem/15950271>
1608
1609         Reviewed by Simon Fraser.
1610
1611         * wtf/Platform.h:
1612         Rename HAVE_LAYER_HOSTING_IN_WINDOW_SERVER to HAVE_OUT_OF_PROCESS_LAYER_HOSTING
1613         and make it true on iOS.
1614
1615 2014-01-31  Michael Saboff  <msaboff@apple.com>
1616
1617         REGRESSION: Crash in sanitizeStackForVMImpl when scrolling @ lifehacker.com.au
1618         https://bugs.webkit.org/show_bug.cgi?id=128017
1619
1620         Reviewed by Filip Pizlo.
1621
1622         Moved the setting and saving of VM::stackPointerAtVMEntry and the corresponding stack limit
1623         to JSLock and JSLock::DropAllLocks.  The saved data is now stored in per-thread in
1624         WTFThreadData.
1625
1626         * wtf/WTFThreadData.cpp:
1627         (WTF::WTFThreadData::WTFThreadData):
1628         * wtf/WTFThreadData.h:
1629         (WTF::WTFThreadData::savedStackPointerAtVMEntry):
1630         (WTF::WTFThreadData::setSavedStackPointerAtVMEntry):
1631         (WTF::WTFThreadData::savedLastStackTop):
1632         (WTF::WTFThreadData::setSavedLastStackTop):
1633         (WTF::WTFThreadData::savedReservedZoneSize):
1634         (WTF::WTFThreadData::setSavedReservedZoneSize):
1635
1636 2014-01-30  Andrei Bucur  <abucur@adobe.com>
1637
1638         Remove the ACCELERATED_COMPOSITING flag
1639         https://bugs.webkit.org/show_bug.cgi?id=127833
1640
1641         Reviewed by Antti Koivisto.
1642
1643         Remove the USE(ACCELERATED_COMPOSITING) conditionals from the code base and make AC
1644         mandatory.
1645
1646         * wtf/OwnPtrCommon.h:
1647         * wtf/Platform.h:
1648         * wtf/efl/OwnPtrEfl.cpp:
1649         (WTF::deleteOwnedPtr):
1650
1651 2014-01-28  Michael Saboff  <msaboff@apple.com>
1652
1653         Merge the jsCStack branch
1654         https://bugs.webkit.org/show_bug.cgi?id=127763
1655
1656         Reviewed by Mark Hahnenberg.
1657
1658         Changes from http://svn.webkit.org/repository/webkit/branches/jsCStack
1659         up to changeset 162958.
1660
1661 2014-01-29  Csaba Osztrogonác  <ossy@webkit.org>
1662
1663         Remove ENABLE(JAVASCRIPT_DEBUGGER) guards
1664         https://bugs.webkit.org/show_bug.cgi?id=127840
1665
1666         Reviewed by Mark Lam.
1667
1668         * wtf/FeatureDefines.h:
1669
1670 2014-01-28  Anders Carlsson  <andersca@apple.com>
1671
1672         Actually turn stack stats back off.
1673
1674         * wtf/StackStats.cpp:
1675         * wtf/StackStats.h:
1676
1677 2014-01-28  Anders Carlsson  <andersca@apple.com>
1678
1679         Turn stack stats back off.
1680
1681         * wtf/StackStats.cpp:
1682
1683 2014-01-28  Anders Carlsson  <andersca@apple.com>
1684
1685         Use std::mutex instead of WTF::Mutex in WTF
1686         https://bugs.webkit.org/show_bug.cgi?id=127783
1687
1688         Reviewed by Antti Koivisto.
1689
1690         * wtf/CryptographicallyRandomNumber.cpp:
1691         * wtf/MainThread.cpp:
1692         (WTF::mainThreadFunctionQueueMutex):
1693         (WTF::functionQueue):
1694         (WTF::dispatchFunctionsFromMainThread):
1695         (WTF::callOnMainThread):
1696         (WTF::cancelCallOnMainThread):
1697         * wtf/StackStats.cpp:
1698         (WTF::StackStats::initialize):
1699         (WTF::StackStats::CheckPoint::CheckPoint):
1700         (WTF::StackStats::CheckPoint::~CheckPoint):
1701         (WTF::StackStats::probe):
1702         (WTF::StackStats::LayoutCheckPoint::LayoutCheckPoint):
1703         (WTF::StackStats::LayoutCheckPoint::~LayoutCheckPoint):
1704         * wtf/StackStats.h:
1705
1706 2014-01-27  Joseph Pecoraro  <pecoraro@apple.com>
1707
1708         WebCore: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where needed
1709         https://bugs.webkit.org/show_bug.cgi?id=127671
1710
1711         Reviewed by Ryosuke Niwa.
1712
1713         * wtf/text/WTFString.h:
1714         (WTF::appendNumber):
1715
1716 2014-01-27  Jer Noble  <jer.noble@apple.com>
1717
1718         [WK2] callOnMainThread() from main thread sometimes results in ASSERTs.
1719         https://bugs.webkit.org/show_bug.cgi?id=127370
1720
1721         Reviewed by Alexey Proskuryakov.
1722
1723         When WEB_THREAD is enabled, and callOnMainThread() is called from the main
1724         thread, if the web thread is locked, a timer is set and the passed-in function
1725         is called on the next run-loop. However, by that time the web thread may have
1726         been unlocked, and isMainThread() will no longer return true, resulting in
1727         an assert.
1728
1729         Instead, scheduleDispatchFunctionsOnMainThread() should check isWebThread(),
1730         which is equivalent to isMainThread() when the WEB_THREAD is disabled, but
1731         will do the correct thing when WEB_THREAD is enabled.
1732
1733         * wtf/mac/MainThreadMac.mm:
1734         (WTF::scheduleDispatchFunctionsOnMainThread):
1735
1736 2014-01-27  Dan Bernstein  <mitz@apple.com>
1737
1738         Build fix.
1739
1740         * wtf/ThreadSafeRefCounted.h: Added a necessary #include.
1741
1742 2014-01-25  Sam Weinig  <sam@webkit.org>
1743
1744         Remove unused support for DRAGGABLE_REGION
1745         https://bugs.webkit.org/show_bug.cgi?id=127642
1746
1747         Reviewed by Simon Fraser.
1748
1749         * wtf/FeatureDefines.h:
1750
1751 2014-01-25  Joseph Pecoraro  <pecoraro@apple.com>
1752
1753         Add FALLTHROUGH and -Wimplicit-fallthrough to warn about unannotated implicit fallthroughs in switches
1754         https://bugs.webkit.org/show_bug.cgi?id=127637
1755
1756         Reviewed by Darin Adler.
1757
1758         For information about [[clang::fallthrough]], see:
1759         <http://clang.llvm.org/docs/LanguageExtensions.html#the-clang-fallthrough-attribute>
1760
1761         * Configurations/Base.xcconfig:
1762         Enable -Wimplicit-fallthrough warnings.
1763
1764         * wtf/Compiler.h:
1765         Define FALLTHROUGH on clang and fallback to outputing nothing when unsupported.
1766
1767         * wtf/dtoa/fast-dtoa.cc:
1768         * wtf/unicode/UTF8.cpp:
1769         (WTF::Unicode::convertLatin1ToUTF8):
1770         (WTF::Unicode::convertUTF16ToUTF8):
1771         (WTF::Unicode::isLegalUTF8):
1772         (WTF::Unicode::readUTF8Sequence):
1773         Explicitly annotate implicit fallthroughs with FALLTHROUGH.
1774
1775 2014-01-25  Darin Adler  <darin@apple.com>
1776
1777         Call deprecatedCharacters instead of characters at more call sites
1778         https://bugs.webkit.org/show_bug.cgi?id=127631
1779
1780         Reviewed by Sam Weinig.
1781
1782         * wtf/text/StringImpl.cpp:
1783         (WTF::StringImpl::replace):
1784         * wtf/text/WTFString.h:
1785         (WTF::String::isAllSpecialCharacters):
1786         Use the new name.
1787
1788 2014-01-25  Darin Adler  <darin@apple.com>
1789
1790         Add a new separate LChar.h header file, to be used after we remove Unicode.h
1791         https://bugs.webkit.org/show_bug.cgi?id=127630
1792
1793         Reviewed by Sam Weinig.
1794
1795         * GNUmakefile.list.am: Added the new file
1796         * WTF.vcxproj/WTF.vcxproj: Ditto.
1797         * WTF.vcxproj/WTF.vcxproj.filters: Ditto.
1798         * WTF.xcodeproj/project.pbxproj: Ditto.
1799         * wtf/CMakeLists.txt: Ditto.
1800         * wtf/text/LChar.h: Added.
1801
1802 2014-01-25  Darin Adler  <darin@apple.com>
1803
1804         Get rid of ICU_UNICODE and WCHAR_UNICODE remnants
1805         https://bugs.webkit.org/show_bug.cgi?id=127623
1806
1807         Reviewed by Anders Carlsson.
1808
1809         * wtf/CMakeLists.txt: Removed WTF_USE_ICU_UNICODE and
1810         WTF_USE_WCHAR_UNICODE since they are true and false respectively.
1811
1812         * wtf/Platform.h: Removed code to set WTF_USE_ICU_UNICODE.
1813
1814         * wtf/unicode/Collator.h: Removed ifdefs.
1815         * wtf/unicode/CollatorDefault.cpp: Ditto.
1816         * wtf/unicode/Unicode.h: Ditto.
1817         * wtf/unicode/icu/CollatorICU.cpp: Ditto.
1818
1819 2014-01-25  Anders Carlsson  <andersca@apple.com>
1820
1821         Remove atomicIncrement/atomicDecrement
1822         https://bugs.webkit.org/show_bug.cgi?id=127625
1823
1824         Reviewed by Andreas Kling.
1825
1826         Replace atomicIncrement/atomicDecrement with std::atomic.
1827
1828         * wtf/Atomics.h:
1829         * wtf/RefCountedLeakCounter.cpp:
1830         (WTF::RefCountedLeakCounter::~RefCountedLeakCounter):
1831         (WTF::RefCountedLeakCounter::increment):
1832         (WTF::RefCountedLeakCounter::decrement):
1833         * wtf/RefCountedLeakCounter.h:
1834         * wtf/ThreadSafeRefCounted.h:
1835         (WTF::ThreadSafeRefCountedBase::ref):
1836         (WTF::ThreadSafeRefCountedBase::refCount):
1837         (WTF::ThreadSafeRefCountedBase::derefBase):
1838
1839 2014-01-25  Anders Carlsson  <andersca@apple.com>
1840
1841         Modernize HashTable threading code
1842         https://bugs.webkit.org/show_bug.cgi?id=127621
1843
1844         Reviewed by Darin Adler.
1845
1846         Use std::mutex and std::atomic instead of WTF threading primitives.
1847
1848         * wtf/DynamicAnnotations.h:
1849         Include Platform.h here since this file relies on USE macros.
1850
1851         * wtf/HashTable.cpp:
1852         (WTF::HashTableStats::recordCollisionAtCount):
1853         Change this to take an unsigned.
1854
1855         (WTF::HashTableStats::dumpStats):
1856         * wtf/HashTable.h:
1857         (WTF::KeyTraits>::HashTable):
1858         (WTF::KeyTraits>::remove):
1859         (WTF::KeyTraits>::invalidateIterators):
1860         Use a single probe counter.
1861
1862         (WTF::addIterator):
1863         (WTF::removeIterator):
1864
1865 2014-01-25  Darin Adler  <darin@apple.com>
1866
1867         Restore alphabetical order in Compiler.h
1868         https://bugs.webkit.org/show_bug.cgi?id=127620
1869
1870         Reviewed by Sam Weinig.
1871
1872         * wtf/Compiler.h: Resorted some things into alphabetical order
1873
1874 2014-01-24  Brent Fulgham  <bfulgham@apple.com>
1875
1876         [Win] Convert some NMake files to MSBuild project files
1877         https://bugs.webkit.org/show_bug.cgi?id=127579
1878
1879         Reviewed by Tim Horton.
1880
1881         * WTF.vcxproj/WTF.make: Removed.
1882         * WTF.vcxproj/WTF.proj: Added.
1883
1884 2014-01-24  Anders Carlsson  <andersca@apple.com>
1885
1886         Get rid of monotonicallyIncreasingTimeMS and start using std::chrono instead
1887         https://bugs.webkit.org/show_bug.cgi?id=127571
1888
1889         Reviewed by Antti Koivisto.
1890
1891         * wtf/Compiler.h:
1892         Add a CONSTEXPR define so we can still use constexpr on compilers that don't support them (MSVC).
1893
1894         * wtf/CurrentTime.h:
1895         Remove monotonicallyIncreasingTimeMS().
1896
1897         * wtf/StdLibExtras.h:
1898         (std::literals::chrono_literals::operator _s):
1899         (std::literals::chrono_literals::operator _ms):
1900         Add _s and _ms literals. Once we switch over to C++14, we can drop them and just use the built-in ones.
1901
1902 2014-01-24  Anders Carlsson  <andersca@apple.com>
1903
1904         The CXX_EXPLICIT_CONVERSIONS COMPILER_SUPPORTS macro has been removed, and all
1905         compilers support explicit conversions now so simply remove the #ifdef.
1906
1907         * wtf/RetainPtr.h:
1908
1909 2014-01-24  Darin Adler  <darin@apple.com>
1910
1911         Simplify Compiler.h
1912         https://bugs.webkit.org/show_bug.cgi?id=127491
1913
1914         Reviewed by Anders Carlsson.
1915
1916         * wtf/Assertions.h: Remove COMPILER_SUPPORTS(CXX_STATIC_ASSERT), since
1917         we now have that for all compilers that can build WebKit.
1918
1919         * wtf/Compiler.h: Removed always true feature flags, including:
1920         COMPILER_SUPPORTS(CXX_VARIADIC_TEMPLATES), COMPILER_SUPPORTS(CXX_RVALUE_REFERENCES),
1921         COMPILER_SUPPORTS(CXX_DELETED_FUNCTIONS), COMPILER_SUPPORTS(CXX_NULLPTR),
1922         COMPILER_SUPPORTS(CXX_EXPLICIT_CONVERSIONS), COMPILER_SUPPORTS(CXX_STATIC_ASSERT),
1923         COMPILER_SUPPORTS(CXX_OVERRIDE_CONTROL), COMPILER_SUPPORTS(CXX_STRONG_ENUMS), and
1924         COMPILER_SUPPORTS(CXX_AUTO_TYPE). Sorted sections alphabetically. Separated out
1925         nested #if and #else into separate checks for greater readability. Removed obsolete
1926         check for COMPILER(RVCT). Removed unused COMPILER(GCCE) detection.
1927
1928         * wtf/RefPtr.h: Remove COMPILER_SUPPORTS(CXX_NULLPTR), since we now have
1929         that for all compilers that can build WebKit.
1930         * wtf/RetainPtr.h: Ditto.
1931
1932 2014-01-23  Max Vujovic  <mvujovic@adobe.com>
1933
1934         Remove CSS Custom Filters code and tests
1935         https://bugs.webkit.org/show_bug.cgi?id=127382
1936
1937         Reviewed by Simon Fraser.
1938
1939         * wtf/FeatureDefines.h:
1940
1941 2014-01-22  Brent Fulgham  <bfulgham@apple.com>
1942
1943         [Win] Update project and solution files for 64-bit builds.
1944         https://bugs.webkit.org/show_bug.cgi?id=127457
1945
1946         Reviewed by Eric Carlson.
1947
1948         * WTF.vcxproj/WTF.submit.sln: Add x64 targets.
1949         * WTF.vcxproj/WTF.vcxproj: Update for VS2013
1950
1951 2014-01-22  Myles C. Maxfield  <mmaxfield@apple.com>
1952
1953         Remove CSS3_TEXT_DECORATION define
1954         https://bugs.webkit.org/show_bug.cgi?id=127333
1955
1956         Reviewed by Simon Fraser.
1957
1958         This is required for unprefixing the text-decoration-* CSS properties.
1959
1960         * wtf/Platform.h:
1961
1962 2014-01-22  Jae Hyun Park  <jae.park@company100.net>
1963
1964         Remove unnecessary include in Noncopyable.h
1965         https://bugs.webkit.org/show_bug.cgi?id=127406
1966
1967         Reviewed by Anders Carlsson.
1968
1969         * wtf/Noncopyable.h: We don't need Compiler.h as of r162198.
1970
1971 2014-01-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1972
1973         [GTK] Add GUniquePtr
1974         https://bugs.webkit.org/show_bug.cgi?id=127170
1975
1976         Reviewed by Gustavo Noronha Silva.
1977
1978         The idea is to replace GOwnPtr with a template alias of
1979         std:unique_ptr. Not everything can be replaced, though, because
1980         GOwnPtr::outPtr() doesn't seem to be possible to implement with
1981         unique_ptr. This smart pointer is more flexible than GOwnPtr and
1982         allows to transfer the ownership of the pointer using
1983         std::move().
1984
1985         * GNUmakefile.list.am: Add new file to compilation.
1986         * wtf/gobject/GUniquePtr.h: Added.
1987         (WTF::GPtrDeleter::operator()):
1988
1989 2014-01-20  Anders Carlsson  <andersca@apple.com>
1990
1991         Remove an unused member variable
1992         https://bugs.webkit.org/show_bug.cgi?id=127295
1993
1994         Reviewed by Antti Koivisto.
1995
1996         * wtf/MainThread.cpp:
1997         (WTF::FunctionWithContext::FunctionWithContext):
1998         (WTF::FunctionWithContext::operator == ):
1999         (WTF::dispatchFunctionsFromMainThread):
2000
2001 2014-01-20  Anders Carlsson  <andersca@apple.com>
2002
2003         Remove MutexTryLocker
2004         https://bugs.webkit.org/show_bug.cgi?id=127294
2005
2006         Reviewed by Antti Koivisto.
2007
2008         MutexTryLocker has been replaced with std::unique_lock with std::try_to_lock everywhere now.
2009
2010         * wtf/ThreadingPrimitives.h:
2011
2012 2014-01-19  Carlos Garcia Campos  <cgarcia@igalia.com>
2013
2014         [GLIB] GVariant floating references are not correctly handled by GRefPtr
2015         https://bugs.webkit.org/show_bug.cgi?id=127246
2016
2017         Reviewed by Martin Robinson.
2018
2019         GRefPtr should always use g_variant_ref_sink to deal with GVariant
2020         floating references. In case of full references,
2021         g_variant_ref_sink calls g_variant_ref, so it's safe to use it always.
2022
2023         * wtf/gobject/GRefPtr.cpp:
2024         (WTF::refGPtr): Use g_variant_ref_sink().
2025
2026 2014-01-18  Anders Carlsson  <andersca@apple.com>
2027
2028         Remove support for the viewsource attribute
2029         https://bugs.webkit.org/show_bug.cgi?id=127232
2030
2031         Reviewed by Andreas Kling.
2032
2033         * wtf/FeatureDefines.h:
2034
2035 2014-01-18  Anders Carlsson  <andersca@apple.com>
2036
2037         Remove ENABLE_THREADED_HTML_PARSER defines everywhere
2038         https://bugs.webkit.org/show_bug.cgi?id=127225
2039
2040         Reviewed by Andreas Kling.
2041
2042         This concludes the removal of over 8.8 million lines of threaded parser code.
2043
2044         * wtf/FeatureDefines.h:
2045
2046 2014-01-17  Anders Carlsson  <andersca@apple.com>
2047
2048         Add a callOnMainThreadAndWait variant in SocketStreamHandle
2049         https://bugs.webkit.org/show_bug.cgi?id=127180
2050
2051         Reviewed by Geoffrey Garen.
2052
2053         Remove callOnMainThreadAndWait from WTF.
2054
2055         * wtf/MainThread.cpp:
2056         * wtf/MainThread.h:
2057
2058 2014-01-17  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
2059
2060         Remove workaround for compilers not supporting deleted functions
2061         https://bugs.webkit.org/show_bug.cgi?id=127166
2062
2063         Reviewed by Andreas Kling.
2064
2065         * wtf/Compiler.h:
2066         * wtf/Noncopyable.h:
2067         * wtf/PassRefPtr.h:
2068
2069 2014-01-16  Benjamin Poulain  <bpoulain@apple.com>
2070
2071         Remove Nix from WTF
2072         https://bugs.webkit.org/show_bug.cgi?id=127150
2073
2074         Reviewed by Alexey Proskuryakov.
2075
2076         * wtf/DisallowCType.h:
2077         * wtf/FeatureDefines.h:
2078         * wtf/Platform.h:
2079         * wtf/PlatformNix.cmake: Removed.
2080         * wtf/nix: Removed.
2081
2082 2014-01-16  Anders Carlsson  <andersca@apple.com>
2083
2084         Remove FINAL macro
2085         https://bugs.webkit.org/show_bug.cgi?id=127149
2086
2087         Reviewed by Tim Horton.
2088
2089         * wtf/Compiler.h:
2090
2091 2014-01-16  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
2092
2093         Remove workaround for compilers not supporting explicit override control
2094         https://bugs.webkit.org/show_bug.cgi?id=127111
2095
2096         Reviewed by Anders Carlsson.
2097
2098         Now all compilers support explicit override control, this workaround can be removed.
2099
2100         * wtf/Compiler.h:
2101         * wtf/FilePrintStream.h:
2102         * wtf/RunLoop.h:
2103         * wtf/StringPrintStream.h:
2104
2105 2014-01-16  Alberto Garcia  <berto@igalia.com>
2106
2107         Source/WTF/wtf/Atomics.h:300: Error: bad register name `%bpl'
2108         https://bugs.webkit.org/show_bug.cgi?id=126985
2109
2110         Reviewed by Csaba Osztrogonác.
2111
2112         Use the 'q' constraint to force using a register that allows
2113         access to its lower byte.
2114
2115         * wtf/Atomics.h:
2116         (WTF::weakCompareAndSwap):
2117
2118 2014-01-16  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
2119
2120         Fix unnecessary checks for Clang compiler if the compiler is MSVC.
2121         https://bugs.webkit.org/show_bug.cgi?id=127037
2122
2123         Reviewed by Csaba Osztrogonác.
2124
2125         Inside the #if defined(_MSC_VER) there's no need for checking whether the compiler is not Clang.
2126
2127         * wtf/Compiler.h:
2128
2129 2014-01-16  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
2130
2131         Require at least GCC version 4.7
2132         https://bugs.webkit.org/show_bug.cgi?id=127049
2133
2134         Reviewed by Csaba Osztrogonác.
2135
2136         r161770 added a template alias, so the minimum GCC version is 4.7 now.
2137
2138         Also fixed a typo in the error message about old MSVC version.
2139
2140         * wtf/Compiler.h:
2141
2142 2014-01-15  Alberto Garcia  <berto@igalia.com>
2143
2144         [GTK] v2.3.3 fails to build in Debian / FreeBSD
2145         https://bugs.webkit.org/show_bug.cgi?id=126502
2146
2147         Reviewed by Mark Lam.
2148
2149         * wtf/Platform.h: Add LLINT support to FreeBSD.
2150
2151 2014-01-15  Anders Carlsson  <andersca@apple.com>
2152
2153         Get rid of RefCountedCustomAllocated
2154         https://bugs.webkit.org/show_bug.cgi?id=127051
2155
2156         Reviewed by Antti Koivisto.
2157
2158         It's not used anywhere anymore, get rid of it.
2159
2160         * wtf/RefCounted.h:
2161         * wtf/SizeLimits.cpp:
2162
2163 2014-01-14  Anders Carlsson  <andersca@apple.com>
2164
2165         And yet another build fix.
2166
2167         * wtf/SizeLimits.cpp:
2168
2169 2014-01-14  Anders Carlsson  <andersca@apple.com>
2170
2171         Another build fix.
2172
2173         * wtf/SizeLimits.cpp:
2174
2175 2014-01-14  Daniel Bates  <dabates@apple.com>
2176
2177         [iOS] Enable WTF_USE_UIKIT_EDITING
2178
2179         * wtf/Platform.h:
2180
2181 2014-01-14  Daniel Bates  <dabates@apple.com>
2182
2183         [iOS] Enable QuickLook
2184         https://bugs.webkit.org/show_bug.cgi?id=126954
2185
2186         Reviewed by David Kilzer.
2187
2188         * wtf/Platform.h:
2189
2190 2014-01-14  Anders Carlsson  <andersca@apple.com>
2191
2192         Get rid of ThreadRestrictionVerifier
2193         https://bugs.webkit.org/show_bug.cgi?id=127004
2194
2195         Reviewed by Sam Weinig.
2196
2197         The ThreadRestrictionVerifier mechanism has been turned off for a while
2198         since it doesn't really have a good solution for objects that are passed between threads.
2199         Instead of having dead code in the tree, just get rid of it.
2200         
2201         * GNUmakefile.list.am:
2202         * WTF.vcxproj/WTF.vcxproj:
2203         * WTF.vcxproj/WTF.vcxproj.filters:
2204         * WTF.xcodeproj/project.pbxproj:
2205         * wtf/CMakeLists.txt:
2206         * wtf/RefCounted.h:
2207         (WTF::RefCountedBase::ref):
2208         (WTF::RefCountedBase::hasOneRef):
2209         (WTF::RefCountedBase::refCount):
2210         (WTF::RefCountedBase::derefBase):
2211         * wtf/ThreadRestrictionVerifier.h: Removed.
2212
2213 2014-01-14  Benjamin Poulain  <benjamin@webkit.org>
2214
2215         Enable the experimental selector code generator by default
2216         https://bugs.webkit.org/show_bug.cgi?id=126953
2217
2218         Reviewed by Gavin Barraclough.
2219
2220         * wtf/Platform.h:
2221         Enable CSS_SELECTOR_JIT on OS X x86_64 by default.
2222         The feature is not ready to ship but it is stable enough to enable
2223         for the bots and nightly.
2224
2225 2014-01-14  Brian J. Burg  <burg@cs.washington.edu>
2226
2227         Add ENABLE(WEB_REPLAY) feature flag to the build system
2228         https://bugs.webkit.org/show_bug.cgi?id=126949
2229
2230         Reviewed by Joseph Pecoraro.
2231
2232         * wtf/FeatureDefines.h: for now, disable the flag by default.
2233
2234 2014-01-14  peavo@outlook.com  <peavo@outlook.com>
2235
2236         [Win] Application name in user agent string is truncated.
2237         https://bugs.webkit.org/show_bug.cgi?id=126810
2238
2239         Reviewed by Anders Carlsson.
2240
2241         * wtf/text/StringConcatenate.h:
2242         (WTF::tryMakeString): Add missing 8 bit check for last argument. 
2243
2244 2014-01-13  Anders Carlsson  <andersca@apple.com>
2245
2246         Move another deprecated symbol to DeprecatedSymbolsUsedBySafari.mm
2247         https://bugs.webkit.org/show_bug.cgi?id=126909
2248
2249         Reviewed by Ryosuke Niwa.
2250
2251         * wtf/MainThread.cpp:
2252         * wtf/MainThread.h:
2253         * wtf/mac/DeprecatedSymbolsUsedBySafari.mm:
2254         (WTF::callOnMainThread):
2255
2256 2014-01-13  Anders Carlsson  <andersca@apple.com>
2257
2258         Fix Windows build.
2259
2260         * wtf/ThreadingWin.cpp:
2261         (WTF::initializeThreading):
2262
2263 2014-01-13  Anders Carlsson  <andersca@apple.com>
2264
2265         Remove AtomicallyInitializedStatic
2266         https://bugs.webkit.org/show_bug.cgi?id=126864
2267
2268         Reviewed by Andreas Kling.
2269
2270         Remove the lockAtomicallyInitializedStaticMutex and unlockAtomicallyInitializedStaticMutex functions
2271         everywhere except on Mac (where they unfortunately were used by Safari).
2272         
2273         On Mac, add them to a separate file which will hold functions and symbols that we would like
2274         to remove but that are used by Safari. Reimplement them in terms of std::call_once and std::mutex.
2275
2276         * WTF.xcodeproj/project.pbxproj:
2277         * wtf/Threading.h:
2278         * wtf/ThreadingPthreads.cpp:
2279         (WTF::initializeThreading):
2280         * wtf/ThreadingWin.cpp:
2281         (WTF::initializeThreading):
2282         * wtf/mac/DeprecatedSymbolsUsedBySafari.mm: Added.
2283         (WTF::atomicallyInitializedStaticMutex):
2284         (WTF::lockAtomicallyInitializedStaticMutex):
2285         (WTF::unlockAtomicallyInitializedStaticMutex):
2286
2287 2014-01-13  Commit Queue  <commit-queue@webkit.org>
2288
2289         Unreviewed, rolling out r161855.
2290         http://trac.webkit.org/changeset/161855
2291         https://bugs.webkit.org/show_bug.cgi?id=126880
2292
2293         Sister commit of r161852 (Requested by kling on #webkit).
2294
2295         * wtf/ThreadingPthreads.cpp:
2296         (WTF::initializeThreading):
2297
2298 2014-01-13  Commit Queue  <commit-queue@webkit.org>
2299
2300         Unreviewed, rolling out r161852.
2301         http://trac.webkit.org/changeset/161852
2302         https://bugs.webkit.org/show_bug.cgi?id=126877
2303
2304         Broke ToT with system Safari (Requested by kling on #webkit).
2305
2306         * wtf/Threading.h:
2307         * wtf/ThreadingPthreads.cpp:
2308         (WTF::initializeThreading):
2309         (WTF::lockAtomicallyInitializedStaticMutex):
2310         (WTF::unlockAtomicallyInitializedStaticMutex):
2311         * wtf/ThreadingWin.cpp:
2312         (WTF::lockAtomicallyInitializedStaticMutex):
2313         (WTF::unlockAtomicallyInitializedStaticMutex):
2314         (WTF::initializeThreading):
2315
2316 2014-01-12  Commit Queue  <commit-queue@webkit.org>
2317
2318         Unreviewed, rolling out r161840.
2319         http://trac.webkit.org/changeset/161840
2320         https://bugs.webkit.org/show_bug.cgi?id=126870
2321
2322         Caused jsscore and layout test failures (Requested by smfr on
2323         #webkit).
2324
2325         * wtf/text/StringImpl.cpp:
2326         (WTF::StringImpl::replace):
2327         * wtf/text/WTFString.h:
2328         (WTF::String::isAllSpecialCharacters):
2329
2330 2014-01-12  Dan Bernstein  <mitz@apple.com>
2331
2332         Fix an assertion failure in initializeDates() when launching Safari, which was introduced in r161852.
2333
2334         Reviewed by Andy Estes.
2335
2336         * wtf/ThreadingPthreads.cpp:
2337         (WTF::initializeThreading): Set isInitialized to true.
2338
2339 2014-01-12  Darin Adler  <darin@apple.com>
2340
2341         Add PLATFORM(COCOA) and USE(FOUNDATION)
2342         https://bugs.webkit.org/show_bug.cgi?id=126859
2343
2344         Reviewed by Anders Carlsson.
2345
2346         * wtf/Platform.h: Added PLATFORM(COCOA), which for now is set at exactly the same
2347         times that PLATFORM(MAC) is. Added USE(FOUNDATION), which is set at the same times
2348         that PLATFORM(COCOA) is. Re-organize the PLATFORM(MAC) and PLATFORM(IOS) settings
2349         in the header so they are a bit easier to read. Put HAVE_LANGINFO_H in with the
2350         rest of the OS(UNIX) settings and put HAVE_READLINE in with the rest of the
2351         OS(DARWIN) settings. Tweak formatting a bit.
2352
2353 2014-01-12  Anders Carlsson  <andersca@apple.com>
2354
2355         Remove AtomicallyInitializedStatic
2356         https://bugs.webkit.org/show_bug.cgi?id=126864
2357
2358         Reviewed by Darin Adler.
2359
2360         * wtf/Threading.h:
2361         * wtf/ThreadingPthreads.cpp:
2362         (WTF::initializeThreading):
2363         * wtf/ThreadingWin.cpp:
2364         (WTF::initializeThreading):
2365
2366 2014-01-12  Darin Adler  <darin@apple.com>
2367
2368         Add deprecatedCharacters as a synonym for characters and convert most call sites
2369         https://bugs.webkit.org/show_bug.cgi?id=126858
2370
2371         Reviewed by Anders Carlsson.
2372
2373         * wtf/text/AtomicString.cpp:
2374         (WTF::HashAndUTF8CharactersTranslator::equal):
2375         (WTF::SubstringTranslator::hash):
2376         (WTF::SubstringTranslator::equal):
2377         * wtf/text/AtomicString.h:
2378         (WTF::AtomicString::characters):
2379         * wtf/text/Base64.cpp:
2380         (WTF::base64Decode):
2381         (WTF::base64URLDecode):
2382         * wtf/text/StringBuilder.h:
2383         (WTF::StringBuilder::characters):
2384         (WTF::StringBuilder::deprecatedCharacters):
2385         * wtf/text/StringImpl.cpp:
2386         (WTF::StringImpl::getData16SlowCase):
2387         (WTF::StringImpl::upper):
2388         (WTF::StringImpl::lower):
2389         (WTF::StringImpl::find):
2390         (WTF::StringImpl::findIgnoringCase):
2391         * wtf/text/StringImpl.h:
2392         (WTF::StringImpl::characters):
2393         (WTF::StringImpl::deprecatedCharacters):
2394         (WTF::StringImpl::getCharacters<UChar>):
2395         (WTF::equalIgnoringNullity):
2396         * wtf/text/WTFString.cpp:
2397         (WTF::String::append):
2398         (WTF::String::appendInternal):
2399         (WTF::String::insert):
2400         (WTF::String::truncate):
2401         (WTF::String::percentage):
2402         * wtf/text/WTFString.h:
2403         (WTF::String::characters):
2404         (WTF::String::deprecatedCharacters):
2405         (WTF::String::getCharactersWithUpconvert<UChar>):
2406         (WTF::append):
2407         Use deprecatedCharacters instead of characters.
2408
2409 2014-01-12  Anders Carlsson  <andersca@apple.com>
2410
2411         Remove the last remaining uses of AtomicallyInitializedStatic
2412         https://bugs.webkit.org/show_bug.cgi?id=126863
2413
2414         Reviewed by Darin Adler.
2415
2416         * wtf/HashTable.cpp:
2417         (WTF::hashTableStatsMutex):
2418         (WTF::HashTableStats::recordCollisionAtCount):
2419         (WTF::HashTableStats::dumpStats):
2420         * wtf/unicode/icu/CollatorICU.cpp:
2421         (WTF::cachedCollatorMutex):
2422         (WTF::Collator::createCollator):
2423         (WTF::Collator::releaseCollator):
2424
2425 2014-01-12  Darin Adler  <darin@apple.com>
2426
2427         Reduce use of String::characters
2428         https://bugs.webkit.org/show_bug.cgi?id=126854
2429
2430         Reviewed by Sam Weinig.
2431
2432         * wtf/text/StringImpl.cpp:
2433         (WTF::StringImpl::replace): Use characters16 here since is8Bit was already checked.
2434         * wtf/text/WTFString.h:
2435         (WTF::String::isAllSpecialCharacters): Use characters16 here since is8Bit was
2436         already checked. Also renamed "len" to "length".
2437
2438 2014-01-12  Anders Carlsson  <andersca@apple.com>
2439
2440         Replace more uses of AtomicallyInitializedStatic with std::call_once
2441         https://bugs.webkit.org/show_bug.cgi?id=126847
2442
2443         Reviewed by Sam Weinig.
2444
2445         * wtf/Forward.h:
2446         Forward declare NeverDestroyed.
2447
2448 2014-01-11  Zan Dobersek  <zdobersek@igalia.com>
2449
2450         Unreviewed build fix for ports using GCC after r161770.
2451
2452         * wtf/IteratorAdaptors.h:
2453         (WTF::FilterIterator::operator*): Replicating r161797, the const qualifier for
2454         FilterIterator::operator*() is removed since it clashes with some iterator types
2455         that are also const, causing compilation failures with GCC.
2456
2457 2014-01-11  Anders Carlsson  <andersca@apple.com>
2458
2459         Use std::call_once instead of AtomicallyInitializedStatic when creating a HTTP header set
2460         https://bugs.webkit.org/show_bug.cgi?id=126837
2461
2462         Reviewed by Sam Weinig.
2463
2464         * wtf/HashSet.h:
2465         (WTF::HashSet::HashSet):
2466         Add a HashSet constructor that takes an initializer list.
2467
2468 2014-01-11  Sam Weinig  <sam@webkit.org>
2469
2470         Fix the EFL build.
2471
2472         * wtf/IteratorAdaptors.h:
2473         (WTF::TransformIterator::operator*):
2474
2475 2014-01-11  Sam Weinig  <sam@webkit.org>
2476
2477         Add support for null StringViews
2478         https://bugs.webkit.org/show_bug.cgi?id=126827
2479
2480         Reviewed by Anders Carlsson.
2481
2482         - Do some style cleanup while in the neighborhood.
2483
2484         * wtf/text/StringView.h:
2485         (WTF::StringView::StringView):
2486         Add default constructor to create a null StringView.
2487
2488         (WTF::StringView::isNull):
2489         Add isNull(), matching the semantics of String.
2490
2491         (WTF::StringView::operator bool):
2492         Add an explicit operator bool() to allow use in if-statements. 
2493
2494 2014-01-11  Sam Weinig  <sam@webkit.org>
2495
2496         Clean up iterator filter / iterator range code
2497         https://bugs.webkit.org/show_bug.cgi?id=126817
2498
2499         Reviewed by Anders Carlsson.
2500
2501         - Renames IteratorPair to IteratorRange.
2502         - Splits FilterIterator into FilterIterator (which now only filters) and
2503           TransformIterator (which does the transform part of the old FilterIterator).
2504           Move both of these to IteratorAdaptors.h
2505
2506         * GNUmakefile.list.am:
2507         * WTF.vcxproj/WTF.vcxproj:
2508         * WTF.vcxproj/WTF.vcxproj.filters:
2509         * WTF.xcodeproj/project.pbxproj:
2510         * wtf/CMakeLists.txt:
2511         * wtf/FilterIterator.h: Removed.
2512         Add/remove files.
2513
2514         * wtf/HashMap.h:
2515         (WTF::HashMap::keys):
2516         (WTF::HashMap::values):
2517         * wtf/RefPtrHashMap.h:
2518         Update for rename to IteratorRange. Simplify by using makeIteratorRange().
2519
2520         * wtf/IteratorAdaptors.h: Copied from wtf/FilterIterator.h.
2521         (WTF::FilterIterator::FilterIterator):
2522         (WTF::FilterIterator::operator*):
2523         (WTF::makeFilterIterator):
2524         (WTF::TransformIterator::TransformIterator):
2525         (WTF::TransformIterator::operator++):
2526         (WTF::TransformIterator::operator*):
2527         (WTF::TransformIterator::operator==):
2528         (WTF::TransformIterator::operator!=):
2529         (WTF::makeTransformIterator):
2530         Split up filtering and transforming. Add makeFilterIterator() and makeTransformIterator()
2531         helpers.
2532
2533         * wtf/IteratorPair.h: Removed.
2534         * wtf/IteratorRange.h: Copied from wtf/IteratorPair.h.
2535         (WTF::IteratorRange::IteratorRange):
2536         (WTF::makeIteratorRange):
2537         Renamed to IteratorRange and adds makeIteratorRange() helper.
2538
2539 2014-01-10  David Kilzer  <ddkilzer@apple.com>
2540
2541         Clean up architectures in xcconfig files
2542         <http://webkit.org/b/126794>
2543
2544         Reviewed by Andy Estes.
2545
2546         * Configurations/Base.xcconfig:
2547         - Add new arch.
2548
2549 2014-01-10  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
2550
2551         [EFL][JSC] Enable udis86 disassembler on efl.
2552         https://bugs.webkit.org/show_bug.cgi?id=125502
2553
2554         Reviewed by Michael Saboff.
2555
2556         Enable udis86 disassembler on efl and fix build warnings.
2557
2558         * wtf/Platform.h:
2559           Enable udis86 disassembler on EFL.
2560
2561 2014-01-10  Hunseop Jeong  <hs85.jeong@samsung.com>
2562
2563         [EFL] Enable the DFG_JIT on ARMv7
2564         https://bugs.webkit.org/show_bug.cgi?id=126742
2565
2566         Reviewed by Gyuyoung Kim.
2567
2568         Turn on ENABLE_DFG_JIT on ARMv7 for EFL.
2569
2570         * wtf/Platform.h:
2571
2572 2014-01-07  Mark Hahnenberg  <mhahnenberg@apple.com>
2573
2574         Marking should be generational
2575         https://bugs.webkit.org/show_bug.cgi?id=126552
2576
2577         Reviewed by Geoffrey Garen.
2578
2579         * wtf/Bitmap.h:
2580         (WTF::WordType>::count): Added a cast that became necessary when Bitmap
2581         is used with smaller types than int32_t.
2582
2583 2014-01-09  Simon Fraser  <simon.fraser@apple.com>
2584
2585         Enable async scrolling for iOS
2586         https://bugs.webkit.org/show_bug.cgi?id=126730
2587
2588         Reviewed by Tim Horton.
2589         
2590         Turn on ENABLE_ASYNC_SCROLLING for iOS.
2591
2592         * wtf/FeatureDefines.h:
2593
2594 2014-01-09  Anders Carlsson  <andersca@apple.com>
2595
2596         Remove Blackberry and QNX bits from WTF
2597         https://bugs.webkit.org/show_bug.cgi?id=126726
2598
2599         Reviewed by Benjamin Poulain.
2600
2601         * wtf/Assertions.cpp:
2602         * wtf/Atomics.h:
2603         * wtf/CurrentTime.cpp:
2604         (WTF::currentCPUTime):
2605         * wtf/DateMath.cpp:
2606         * wtf/DisallowCType.h:
2607         * wtf/FeatureDefines.h:
2608         * wtf/InlineASM.h:
2609         * wtf/MathExtras.h:
2610         * wtf/NumberOfCores.cpp:
2611         (WTF::numberOfProcessorCores):
2612         * wtf/OSAllocatorPosix.cpp:
2613         (WTF::OSAllocator::reserveUncommitted):
2614         (WTF::OSAllocator::commit):
2615         (WTF::OSAllocator::decommit):
2616         * wtf/Platform.h:
2617         * wtf/PlatformBlackBerry.cmake: Removed.
2618         * wtf/RAMSize.cpp:
2619         (WTF::computeRAMSize):
2620         * wtf/StackBounds.cpp:
2621         * wtf/ThreadingPthreads.cpp:
2622         (WTF::initializeThreading):
2623         (WTF::initializeCurrentThreadInternal):
2624         * wtf/blackberry/MainThreadBlackBerry.cpp: Removed.
2625         * wtf/blackberry/RunLoopBlackBerry.cpp: Removed.
2626         * wtf/text/AtomicString.h:
2627         * wtf/text/StringImpl.h:
2628         * wtf/text/WTFString.h:
2629
2630 2014-01-09  Daniel Bates  <dabates@apple.com>
2631
2632         [iOS] Upstream WebCore/platform changes
2633         https://bugs.webkit.org/show_bug.cgi?id=126654
2634
2635         Rubber-stamped by David Kilzer.
2636
2637         * wtf/MainThread.cpp:
2638         (WTF::canAccessThreadLocalDataForThread):
2639         * wtf/MainThread.h:
2640
2641 2014-01-09  Commit Queue  <commit-queue@webkit.org>
2642
2643         Unreviewed, rolling out r161540.
2644         http://trac.webkit.org/changeset/161540
2645         https://bugs.webkit.org/show_bug.cgi?id=126704
2646
2647         Caused assertion failures on multiple tests (Requested by ap
2648         on #webkit).
2649
2650         * wtf/Bitmap.h:
2651         (WTF::WordType>::count):
2652
2653 2014-01-07  Mark Hahnenberg  <mhahnenberg@apple.com>
2654
2655         Marking should be generational
2656         https://bugs.webkit.org/show_bug.cgi?id=126552
2657
2658         Reviewed by Geoffrey Garen.
2659
2660         * wtf/Bitmap.h:
2661         (WTF::WordType>::count): Added a cast that became necessary when Bitmap
2662         is used with smaller types than int32_t.
2663
2664 2014-01-08  Anders Carlsson  <andersca@apple.com>
2665
2666         Add WTF::StringView and use it for grammar checking
2667         https://bugs.webkit.org/show_bug.cgi?id=126644
2668
2669         Reviewed by Antti Koivisto.
2670
2671         Add a new StringView class which is an immutable reference to either an 8-bit or a 16-bit string.
2672
2673         This makes it easier to pass substrings around without having to either copy string data
2674         or upconvert and use UChar pointers.
2675
2676         The StringView class is very loosely based on the std::string_view class which is proposed for a future version of C++,
2677         see http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3609.html for more details.
2678
2679         * GNUmakefile.list.am:
2680         * WTF.vcxproj/WTF.vcxproj:
2681         * WTF.vcxproj/WTF.vcxproj.filters:
2682         * WTF.xcodeproj/project.pbxproj:
2683         * wtf/CMakeLists.txt:
2684         * wtf/Forward.h:
2685         * wtf/text/StringView.h: Added.
2686         (WTF::StringView::StringView):
2687         (WTF::StringView::empty):
2688         (WTF::StringView::characters8):
2689         (WTF::StringView::characters16):
2690         (WTF::StringView::isEmpty):
2691         (WTF::StringView::length):
2692         (WTF::StringView::is8Bit):
2693         (WTF::StringView::substring):
2694         (WTF::StringView::toString):
2695         (WTF::StringView::toStringWithoutCopying):
2696         (WTF::StringView::encodedCharacters):
2697
2698 2014-01-07  David Farler  <dfarler@apple.com>
2699
2700         [ASAN] Building with trunk clang corrupts sandbox profile with comment from Compiler.h
2701         https://bugs.webkit.org/show_bug.cgi?id=124532
2702
2703         Reviewed by David Kilzer.
2704
2705         * wtf/Compiler.h:
2706         Remove this quirk - it does nothing.
2707
2708 2014-01-06  Filip Pizlo  <fpizlo@apple.com>
2709
2710         Get rid of ENABLE(VALUE_PROFILER). It's on all the time now.
2711
2712         Rubber stamped by Mark Hahnenberg.
2713
2714         * wtf/Platform.h:
2715
2716 2014-01-06  Zan Dobersek  <zdobersek@igalia.com>
2717
2718         Remove using directives for the std namespace from WTF
2719         https://bugs.webkit.org/show_bug.cgi?id=126524
2720
2721         Reviewed by Alexey Proskuryakov.
2722
2723         Remove the using directives for the std namespace throughout the WTF code.
2724         The more explicit std:: nested name specifier should be used instead.
2725
2726         * wtf/MediaTime.cpp:
2727         (WTF::MediaTime::createWithFloat):
2728         (WTF::MediaTime::createWithDouble):
2729         * wtf/text/StringImpl.cpp:
2730         (WTF::StringImpl::create):
2731         (WTF::StringImpl::lower):
2732         (WTF::StringImpl::upper):
2733         (WTF::StringImpl::foldCase):
2734         (WTF::StringImpl::find):
2735         (WTF::StringImpl::findIgnoringCase):
2736         (WTF::reverseFindInner):
2737         (WTF::StringImpl::reverseFind):
2738         (WTF::reverseFindIgnoringCaseInner):
2739         (WTF::StringImpl::reverseFindIgnoringCase):
2740         (WTF::StringImpl::replace):
2741         (WTF::StringImpl::utf8ForCharacters):
2742         (WTF::StringImpl::utf8ForRange):
2743         * wtf/text/WTFString.cpp:
2744         (WTF::String::append):
2745         (WTF::String::appendInternal):
2746         (WTF::String::insert):
2747         (WTF::String::substringSharingImpl):
2748         (WTF::String::fromUTF8):
2749         (WTF::toIntegralType):
2750         * wtf/win/RunLoopWin.cpp:
2751
2752 2014-01-03  Mark Hahnenberg  <mhahnenberg@apple.com>
2753
2754         DoublyLinkedLists can't be concatenated
2755         https://bugs.webkit.org/show_bug.cgi?id=125976
2756
2757         Reviewed by Filip Pizlo.
2758
2759         * wtf/DoublyLinkedList.h:
2760         (WTF::DoublyLinkedList<T>::append):
2761
2762 2014-01-04  Zan Dobersek  <zdobersek@igalia.com>
2763
2764         Explicitly use the std:: nested name specifier when using std::pair, std::make_pair
2765         https://bugs.webkit.org/show_bug.cgi?id=126439
2766
2767         Reviewed by Andreas Kling.
2768
2769         * wtf/VectorTraits.h: Stop bringing std::pair into the current scope.
2770
2771 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
2772
2773         Refactor NSActivity handling code from ChildProcess to UserActivity
2774         https://bugs.webkit.org/show_bug.cgi?id=126330
2775
2776         Reviewed by Sam Weinig.
2777
2778         UserActivity is a mechanism to express to the operating system (where appropriate)
2779         that a user initiated activity is taking place, and as such that resources should be
2780         made available to the process accordingly.
2781
2782         Currently we hold a single NSActivity, at the WebKit layer. This refactoring allows us
2783         to hold different activity tokens for different user actions (which simplifies the
2784         handling, and aides debugging since the token can more accurately express the activity
2785         taking place), and also will allow us to avoid the layering difficulty of calling back
2786         up the stack to WebKit to register that an activity is taking place.
2787
2788         * wtf/Platform.h:
2789             - added HAVE_NS_ACTIVITY.
2790
2791 2013-12-30  Commit Queue  <commit-queue@webkit.org>
2792
2793         Unreviewed, rolling out r161157, r161158, r161160, r161161,
2794         r161163, and r161165.
2795         http://trac.webkit.org/changeset/161157
2796         http://trac.webkit.org/changeset/161158
2797         http://trac.webkit.org/changeset/161160
2798         http://trac.webkit.org/changeset/161161
2799         http://trac.webkit.org/changeset/161163
2800         http://trac.webkit.org/changeset/161165
2801         https://bugs.webkit.org/show_bug.cgi?id=126332
2802
2803         Broke WebKit2 on Mountain Lion (Requested by ap on #webkit).
2804
2805         * GNUmakefile.list.am:
2806         * WTF.vcxproj/WTF.vcxproj:
2807         * WTF.vcxproj/WTF.vcxproj.filters:
2808         * WTF.xcodeproj/project.pbxproj:
2809         * wtf/CMakeLists.txt:
2810         * wtf/Forward.h:
2811         * wtf/PlatformWin.cmake:
2812         * wtf/threads/BinarySemaphore.cpp: Added.
2813         (WTF::BinarySemaphore::BinarySemaphore):
2814         (WTF::BinarySemaphore::~BinarySemaphore):
2815         (WTF::BinarySemaphore::signal):
2816         (WTF::BinarySemaphore::wait):
2817         * wtf/threads/BinarySemaphore.h: Added.
2818         (WTF::BinarySemaphore::event):
2819         * wtf/threads/win/BinarySemaphoreWin.cpp: Added.
2820         (WTF::BinarySemaphore::BinarySemaphore):
2821         (WTF::BinarySemaphore::~BinarySemaphore):
2822         (WTF::BinarySemaphore::signal):
2823         (WTF::BinarySemaphore::wait):
2824
2825 2013-12-30  Anders Carlsson  <andersca@apple.com>
2826
2827         Replace yield() and pauseBriefly() with std::this_thread::yield()
2828         https://bugs.webkit.org/show_bug.cgi?id=126105
2829
2830         Reviewed by Sam Weinig.
2831
2832         * wtf/ByteSpinLock.h:
2833         (WTF::ByteSpinLock::lock):
2834         * wtf/Threading.h:
2835         * wtf/ThreadingPrimitives.h:
2836         * wtf/ThreadingPthreads.cpp:
2837         * wtf/ThreadingWin.cpp:
2838
2839 2013-12-30  Sam Weinig  <sam@webkit.org>
2840
2841         Remove unnecessary non-const overload in IteratorPair
2842         https://bugs.webkit.org/show_bug.cgi?id=126314
2843
2844         Reviewed by Anders Carlsson.
2845
2846         * wtf/IteratorPair.h:
2847
2848 2013-12-30  Sam Weinig  <sam@webkit.org>
2849
2850         Remove WTF's BinarySemaphore
2851         https://bugs.webkit.org/show_bug.cgi?id=126310
2852
2853         Reviewed by Anders Carlsson.
2854
2855         It's unused. Also remove the now empty wtf/threads directory.
2856
2857         * GNUmakefile.list.am:
2858         * WTF.vcxproj/WTF.vcxproj:
2859         * WTF.vcxproj/WTF.vcxproj.filters:
2860         * WTF.xcodeproj/project.pbxproj:
2861         * wtf/CMakeLists.txt:
2862         * wtf/Forward.h:
2863         * wtf/PlatformWin.cmake:
2864         * wtf/threads: Removed.
2865         * wtf/threads/BinarySemaphore.cpp: Removed.
2866         * wtf/threads/BinarySemaphore.h: Removed.
2867         * wtf/threads/win: Removed.
2868         * wtf/threads/win/BinarySemaphoreWin.cpp: Removed.
2869
2870 2013-12-30  Roger Fong  <roger_fong@apple.com>
2871
2872         [Windows] Unreviewed build fix following r160959.
2873
2874         * wtf/Platform.h:
2875
2876 2013-12-30  Anders Carlsson  <andersca@apple.com>
2877
2878         Replace WTF::ThreadingOnce with std::call_once
2879         https://bugs.webkit.org/show_bug.cgi?id=126215
2880
2881         Reviewed by Sam Weinig.
2882
2883         * GNUmakefile.list.am:
2884         * wtf/CompilationThread.cpp:
2885         (WTF::initializeCompilationThreads):
2886         * wtf/ThreadingOnce.h: Removed.
2887
2888 2013-12-26  Sam Weinig  <sam@webkit.org>
2889
2890         Move FilterIterator and IteratorPair to WTF and reimplement HashMap::keys() and HashMap::values() using IteratorPair
2891         https://bugs.webkit.org/show_bug.cgi?id=126253
2892
2893         Reviewed by Anders Carlsson.
2894
2895         * GNUmakefile.list.am:
2896         * WTF.vcxproj/WTF.vcxproj:
2897         * WTF.vcxproj/WTF.vcxproj.filters:
2898         * WTF.xcodeproj/project.pbxproj:
2899         * wtf/CMakeLists.txt:
2900         Add new files.
2901
2902         * wtf/HashMap.h:
2903         * wtf/RefPtrHashMap.h:
2904         Remove the old implementation of keys() and values() and replace it with one
2905         that uses IteratorPair.
2906         
2907         * wtf/FilterIterator.h: Copied from Source/WebKit2/Shared/FilterIterator.h.
2908         * wtf/IteratorPair.h: Copied from Source/WebKit2/Shared/IteratorPair.h.
2909
2910 2013-12-27  Daniel Bates  <dabates@apple.com>
2911
2912         [iOS] Upstream WebCore/page changes
2913         https://bugs.webkit.org/show_bug.cgi?id=126180
2914
2915         Reviewed by Darin Adler.
2916
2917         * wtf/FeatureDefines.h: Define ENABLE_IOS_TOUCH_EVENTS to be enabled by default
2918         when building iOS with ENABLE(TOUCH_EVENTS).
2919
2920 2013-12-25  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2921
2922         [Nix] Building with DRAG_SUPPORT enabled
2923         https://bugs.webkit.org/show_bug.cgi?id=126233
2924
2925         Reviewed by Daniel Bates.
2926
2927         * wtf/nix/FeatureDefinesNix.h:
2928
2929 2013-12-24  Commit Queue  <commit-queue@webkit.org>
2930
2931         Unreviewed, rolling out r160959.
2932         http://trac.webkit.org/changeset/160959
2933         https://bugs.webkit.org/show_bug.cgi?id=126222
2934
2935         Caused Windows build to fail (Requested by rfong on #webkit).
2936
2937         * wtf/ByteSpinLock.h:
2938         (WTF::ByteSpinLock::lock):
2939         * wtf/Threading.h:
2940         * wtf/ThreadingPrimitives.h:
2941         (WTF::pauseBriefly):
2942         * wtf/ThreadingPthreads.cpp:
2943         (WTF::yield):
2944         * wtf/ThreadingWin.cpp:
2945         (WTF::yield):
2946
2947 2013-12-23  Benjamin Poulain  <bpoulain@apple.com>
2948
2949         Fix the build after r161031
2950
2951         I enabled ENABLE_CSS_SELECTOR_JIT by accident.
2952
2953         * wtf/Platform.h:
2954
2955 2013-12-23  Zan Dobersek  <zdobersek@igalia.com>
2956
2957         [GTK] Clean up compiler optimizations flags for libWTF, libJSC
2958         https://bugs.webkit.org/show_bug.cgi?id=126157
2959
2960         Reviewed by Gustavo Noronha Silva.
2961
2962         * GNUmakefile.am: Remove the -fstrict-aliasing and -O3 compiler flags for libWTF.la. -O3 gets
2963         overridden by -O2 that's listed in CXXFLAGS (or -O0 in case of debug builds) and -fstrict-aliasing
2964         is enabled when -O2 is used (and shouldn't be enabled in debug builds anyway).
2965
2966 2013-12-20  Anders Carlsson  <andersca@apple.com>
2967
2968         Replace yield() and pauseBriefly() with std::this_thread::yield()
2969         https://bugs.webkit.org/show_bug.cgi?id=126105
2970
2971         Reviewed by Sam Weinig.
2972
2973         * wtf/ByteSpinLock.h:
2974         (WTF::ByteSpinLock::lock):
2975         * wtf/Threading.h:
2976         * wtf/ThreadingPrimitives.h:
2977         * wtf/ThreadingPthreads.cpp:
2978         * wtf/ThreadingWin.cpp:
2979
2980 2013-12-20  Anders Carlsson  <andersca@apple.com>
2981
2982         Speed up case folding for 8-bit strings
2983         https://bugs.webkit.org/show_bug.cgi?id=126098
2984
2985         Reviewed by Geoffrey Garen.
2986
2987         Add a case folding lookup table for 8-bit strings and use it instead of calling down to u_foldCase.
2988         On a simple microbenchmark using a lookup table is about 15x faster.
2989
2990         * wtf/text/StringHash.h:
2991         (WTF::CaseFoldingHash::foldCase):
2992         * wtf/text/StringImpl.cpp:
2993         (WTF::equalIgnoringCase):
2994         * wtf/text/StringImpl.h:
2995
2996 2013-12-20  Myles C. Maxfield  <mmaxfield@apple.com>
2997
2998         Faster implementation of text-decoration-skip: ink
2999         https://bugs.webkit.org/show_bug.cgi?id=125718
3000
3001         Reviewed by Simon Fraser.
3002
3003         This creates a new preprocessor define, CSS3_TEXT_DECORATION_SKIP_INK,
3004         which enables the use of the text-decoration-skip: ink CSS value.
3005         Creating this new value simplifies the logic about when to enable the
3006         codepath for this CSS value.
3007
3008         * wtf/Platform.h:
3009
3010 2013-12-20  Simon Fraser  <simon.fraser@apple.com>
3011
3012         Change "threaded scrolling" terminology to "asynchronous scrolling"
3013         https://bugs.webkit.org/show_bug.cgi?id=126094
3014
3015         Reviewed by Tim Horton.
3016
3017         Rename ENABLE_THREADED_SCROLLING to ENABLE_ASYNC_SCROLLING.
3018
3019         * wtf/FeatureDefines.h:
3020
3021 2013-12-20  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
3022
3023         Build fails in debug mode after r160834.
3024         https://bugs.webkit.org/show_bug.cgi?id=126059
3025
3026         Reviewed by Csaba Osztrogonác.
3027
3028         Debug mode build failed due to comparing signed and unsigned in
3029         ASSERT(). Now both values are unsigned.
3030
3031         * wtf/dtoa/double-conversion.cc:
3032
3033 2013-12-19  Alex Christensen  <achristensen@webkit.org>
3034
3035         Final preparations for GStreamer on Windows.
3036         https://bugs.webkit.org/show_bug.cgi?id=125958
3037
3038         Reviewed by Benjamin Poulain.
3039
3040         * WTF.vcxproj/WTFDebugWinCairo.props:
3041         * WTF.vcxproj/WTFReleaseWinCairo.props:
3042         Include WinCairo.props.
3043         * wtf/Platform.h:
3044         Use GLib and GStreamer on WinCairo with video.
3045
3046 2013-12-18  Daniel Bates  <dabates@apple.com>
3047
3048         WTF, JavaScriptCore fails to build with trunk clang: operators new, new[],
3049         delete, delete[] cannot be declared inline
3050         https://bugs.webkit.org/show_bug.cgi?id=124186
3051         <rdar://problem/15644039>
3052
3053         Reviewed by Geoffrey Garen and Anders Carlsson.
3054
3055         Following <http://llvm.org/viewvc/llvm-project?view=revision&revision=193044>
3056         (http://llvm.org/bugs/show_bug.cgi?id=17591>), Clang emits warnings when
3057         operator new, delete are inlined. Such definitions cannot be inline per
3058         replacement.functions (17.6.4.6/3) of the C++ standard. For now,
3059         disable these warnings instead of exporting these functions.
3060
3061         * wtf/FastMalloc.h:
3062
3063 2013-12-19  Hugo Parente Lima  <hugo.lima@openbossa.org>
3064
3065         WTF fails to compile with gcc 4.8.2 and -Werror=array-bounds
3066         https://bugs.webkit.org/show_bug.cgi?id=125936
3067
3068         Reviewed by Anders Carlsson.
3069
3070         * wtf/dtoa/double-conversion.cc: Use a unsigned instead of int on buffer_pos type.
3071
3072 2013-12-19  Peter Szanka  <h868064@stud.u-szeged.hu>
3073
3074         Delete RVCT related code parts.
3075         https://bugs.webkit.org/show_bug.cgi?id=125626
3076
3077         Reviewed by Csaba Osztrogonác.
3078
3079         * wtf/Compiler.h: follow-up fix for r160648, remove an unnecessary comment.
3080
3081 2013-12-18  Alex Christensen  <achristensen@webkit.org>
3082
3083         [WinCairo] Preparation for GStreamer on Windows.
3084         https://bugs.webkit.org/show_bug.cgi?id=125946
3085
3086         Reviewed by Brent Fulgham.
3087
3088         * WTF.vcxproj/WTF.vcxproj:
3089         Use new GStreamer property sheets for WinCairo.
3090
3091 2013-12-18  Mark Hahnenberg  <mhahnenberg@apple.com>
3092
3093         DFG should have a separate StoreBarrier node
3094         https://bugs.webkit.org/show_bug.cgi?id=125530
3095
3096         Reviewed by Filip Pizlo.
3097
3098         * wtf/Platform.h: Added an #define for ENABLE(GGC) which will be used for landing things related to GenGC.
3099
3100 2013-12-16  Daniel Bates  <dabates@apple.com>
3101
3102         [iOS] Upstream WebCore/html changes
3103         https://bugs.webkit.org/show_bug.cgi?id=125765
3104
3105         Reviewed by Darin Adler.
3106
3107         Defined ENABLE_IOS_AUTOCORRECT_AND_AUTOCAPITALIZE, enabled by default on iOS.
3108
3109         * wtf/FeatureDefines.h:
3110
3111 2013-12-17  Alex Christensen  <achristensen@webkit.org>
3112
3113         Compile fix for WebGL on Windows without GRAPHICS_SURFACE.
3114         https://bugs.webkit.org/show_bug.cgi?id=125867
3115
3116         Reviewed by Martin Robinson.
3117
3118         * wtf/FeatureDefines.h:
3119         Removed unused ENABLE_GLIB_SUPPORT macro.
3120         * wtf/Platform.h:
3121         Don't use GRAPHICS_SURFACE for WebGL on Windows.
3122
3123 2013-12-17  Alex Christensen  <achristensen@webkit.org>
3124
3125         [Win] Fixed linker error with GStreamer.
3126         https://bugs.webkit.org/show_bug.cgi?id=124861
3127
3128         Reviewed by Martin Robinson.
3129
3130         * wtf/gobject/GOwnPtr.cpp:
3131         (WTF::GError):
3132         * wtf/gobject/GOwnPtr.h:
3133         Added WTF_EXPORT_PRIVATE to freeOwnedGPtr<GError> declaration and definition.
3134
3135 2013-12-17  Benjamin Poulain  <benjamin@webkit.org>
3136
3137         Add a simple register allocator to WebCore for x86_64
3138         https://bugs.webkit.org/show_bug.cgi?id=125771
3139
3140         Reviewed by Geoffrey Garen.
3141
3142         * wtf/Platform.h: Add a new flag "CSS_SELECTOR_JIT" to guard
3143         an experimental JIT compiler in WebCore.
3144
3145 2013-12-16  Anders Carlsson  <andersca@apple.com>
3146
3147         Remove EnumClass.h from WTF
3148         https://bugs.webkit.org/show_bug.cgi?id=125820
3149
3150         Reviewed by Darin Adler.
3151
3152         All compilers we build on now support real strongly typed enums, so we can remove the ENUM_CLASS version.
3153
3154         * WTF.vcxproj/WTF.vcxproj:
3155         * WTF.vcxproj/WTF.vcxproj.filters:
3156         * WTF.xcodeproj/project.pbxproj:
3157         * wtf/CheckedArithmetic.h:
3158         * wtf/EnumClass.h: Removed.
3159
3160 2013-12-16  Brent Fulgham  <bfulgham@apple.com>
3161
3162         [Win] Remove dead code after conversion to VS2013
3163         https://bugs.webkit.org/show_bug.cgi?id=125795
3164
3165         Reviewed by Darin Adler.
3166
3167         * wtf/Assertions.h: Include <inttypes.h> now that it exists.
3168         * wtf/Compiler.h: Update compiler checks for VS2013, and
3169         enable support for NEVER_INLINE
3170         * wtf/HashFunctions.h:
3171         (WTF::PtrHash::hash): Remove compiler workaround.
3172         * wtf/MathExtras.h: Remove C99 functions that are now supplied
3173         by the MS runtime library.
3174         * wtf/Platform.h: Remove old MSVC support flags.
3175         * wtf/StdLibExtras.h: Remove old MSVC workaround code.
3176
3177 2013-12-16  Alex Christensen  <achristensen@webkit.org>
3178
3179         Fixed Win64 build on VS2013.
3180         https://bugs.webkit.org/show_bug.cgi?id=125753
3181
3182         Reviewed by Brent Fulgham.
3183
3184         * WTF.vcxproj/WTF.vcxproj:
3185         Added correct PlatformToolset for 64-bit builds.
3186
3187 2013-12-16  Peter Szanka  <h868064@stud.u-szeged.hu>
3188
3189         Delete RVCT related code parts.
3190         https://bugs.webkit.org/show_bug.cgi?id=125626
3191
3192         Reviewed by Darin Adler.
3193
3194         * wtf/Assertions.h:
3195         * wtf/Compiler.h:
3196         * wtf/FastMalloc.h:
3197         * wtf/Platform.h:
3198
3199 2013-12-13  Brent Fulgham  <bfulgham@apple.com>
3200
3201         [Win] Remove Pre-VS2013 support code.
3202         https://bugs.webkit.org/show_bug.cgi?id=125693
3203
3204         Reviewed by Darin Adler.
3205
3206         * wtf/StringPrintStream.cpp:
3207         (WTF::StringPrintStream::vprintf): Use va_copy, like a civilized person.
3208
3209 2013-12-12  Darin Adler  <darin@apple.com>
3210
3211         Incorrect handling of non-ASCII characters in WTF::base64DecodeInternal
3212         https://bugs.webkit.org/show_bug.cgi?id=125658
3213
3214         Reviewed by Alexey Proskuryakov.
3215
3216         * wtf/text/Base64.cpp:
3217         (WTF::base64EncodeInternal): Use a reference to an array instead of a pointer
3218         for the table argument type so we check the size of the array at the call site.
3219         (WTF::base64DecodeInternal): Ditto. Also added an bounds check before using the
3220         table so we don't load some random value for non-ASCII characters.
3221
3222 2013-12-13  Brent Fulgham  <bfulgham@apple.com>
3223
3224         [Win] Unreviewed build fix after r160548
3225
3226         * WTF.vcxproj/WTFGenerated.vcxproj: Specify that we are using
3227         the vs12_xp target for Makefile-based projects.
3228
3229 2013-12-13  Anders Carlsson  <andersca@apple.com>
3230
3231         Require variadic templates to build WebKit
3232         https://bugs.webkit.org/show_bug.cgi?id=125701
3233
3234         Reviewed by Andreas Kling.
3235
3236         * wtf/Compiler.h:
3237         Add an #error if variadic templates are disabled.
3238
3239         * wtf/NeverDestroyed.h:
3240         * wtf/PassRef.h:
3241         * wtf/StdLibExtras.h:
3242         Remove a bunch of COMPILER_SUPPORTS(CXX_VARIADIC_TEMPLATES) #ifdefs.
3243
3244 2013-12-13  Peter Szanka  <h868064@stud.u-szeged.hu>
3245
3246         Delete INTEL C compiler related code parts.
3247         https://bugs.webkit.org/show_bug.cgi?id=125625
3248
3249         Reviewed by Darin Adler.
3250
3251         * wtf/Assertions.h:
3252         * wtf/Compiler.h:
3253
3254 2013-12-13  Brent Fulgham  <bfulgham@apple.com>
3255
3256         [Win] Switch WebKit solution to Visual Studio 2013
3257         https://bugs.webkit.org/show_bug.cgi?id=125192
3258
3259         Reviewed by Anders Carlsson.
3260
3261         * WTF.vcxproj/WTF.vcxproj: Update for VS2013
3262         * WTF.vcxproj/WTF.vcxproj.filters: Ditto
3263
3264 2013-12-12  Brady Eidson  <beidson@apple.com>
3265
3266         DatabaseProcess IndexedDB: Establish a metadata backing store on disk
3267         https://bugs.webkit.org/show_bug.cgi?id=125258
3268
3269         Reviewed by Alexey Proskuryakov, Anders Carlsson, and Tim Horton.
3270
3271         * wtf/text/WTFString.h: Export toUInt64Strict().
3272
3273 2013-12-12  Sam Weinig  <sam@webkit.org>
3274
3275         Replace uses of WTF::BitArray with std::bitset
3276         https://bugs.webkit.org/show_bug.cgi?id=125642
3277
3278         Reviewed by Anders Carlsson.
3279
3280         * GNUmakefile.list.am:
3281         * WTF.vcxproj/WTF.vcxproj:
3282         * WTF.vcxproj/WTF.vcxproj.filters:
3283         * WTF.xcodeproj/project.pbxproj:
3284         * wtf/BitArray.h: Removed.
3285         * wtf/CMakeLists.txt:
3286
3287 2013-12-11  David Kilzer  <ddkilzer@apple.com>
3288
3289         Define m_hasBadParent in InlineBox if defined(ADDRESS_SANITIZER)
3290         <http://webkit.org/b/125329>
3291
3292         Reviewed by Darin Adler.
3293
3294         * wtf/Assertions.h: Define macro
3295         ASSERT_WITH_SECURITY_IMPLICATION_DISABLED based on whether
3296         ASSERT_WITH_SECURITY_IMPLICATION() is enabled.
3297
3298 2013-12-11  Brendan Long  <b.long@cablelabs.com>
3299
3300         Type punning error in MD5.cpp
3301         https://bugs.webkit.org/show_bug.cgi?id=125412
3302
3303         Reviewed by Darin Adler.
3304
3305         * wtf/MD5.cpp:
3306         (WTF::toLittleEndian): Renamed, and use memcpy instead of casting.
3307         (WTF::MD5::addBytes): Renamed reverseBytes to toLittleEndian.
3308         (WTF::MD5::checksum): Same, and use memcpy instead of casting to prevent type punning error.
3309
3310 2013-12-11  Laszlo Vidacs  <lac@inf.u-szeged.hu>
3311
3312         Store SHA1 hash in std::array
3313         https://bugs.webkit.org/show_bug.cgi?id=125446
3314
3315         Reviewed by Darin Adler.
3316
3317         Change Vector to std::array and use typedef.
3318
3319         * wtf/SHA1.cpp:
3320         (WTF::SHA1::computeHash):
3321         (WTF::SHA1::hexDigest):
3322         (WTF::SHA1::computeHexDigest):
3323         * wtf/SHA1.h:
3324
3325 2013-12-11  Oliver Hunt  <oliver@apple.com>
3326
3327         Give Unique StringImpls a meaningful data pointer
3328         https://bugs.webkit.org/show_bug.cgi?id=125598
3329
3330         Reviewed by Michael Saboff.
3331
3332         Found by code inspection.  If there is a collision in an Identifier
3333         table when comparing to a string literal we attempt to use the data
3334         pointer (essentially this ends up being a null termination check).
3335
3336         Previously unique pointers just used the literal 1 as the data address
3337         but this obviously fails when dereferenced.  Instead we now make the
3338         data pointer point to the location of the buffer pointer itself.  As
3339         the buffer pointer is initialised to 0, this satisfies the requirement
3340         that the 0-length unique string is null terminated.
3341
3342         * wtf/text/StringImpl.h:
3343         (WTF::StringImpl::StringImpl):
3344
3345 2013-12-10  Anders Carlsson  <andersca@apple.com>
3346
3347         Add a HashMap constructor that takes an initializer list
3348         https://bugs.webkit.org/show_bug.cgi?id=125551
3349
3350         Reviewed by Dan Bernstein.
3351
3352         * wtf/HashMap.h:
3353         (WTF::HashMap::HashMap):
3354
3355 2013-12-10  Laszlo Vidacs  <lac@inf.u-szeged.hu>
3356
3357         Use std::array when computing MD5 checksum
3358         https://bugs.webkit.org/show_bug.cgi?id=125509
3359
3360         Reviewed by Anders Carlsson.
3361
3362         Added MD5::Digest type and MD5::hashSize for computing MD5 checksum.
3363
3364         * wtf/MD5.cpp:
3365         (WTF::MD5::checksum):
3366         * wtf/MD5.h:
3367
3368 2013-12-10  Martin Robinson  <mrobinson@igalia.com>
3369
3370         Various fixes for the CMake GTK+ build
3371
3372         Reviewed by Gustavo Noronha.
3373
3374         * wtf/PlatformGTK.cmake: Add Zlib library to the WTF build.
3375
3376 2013-12-09  Sam Weinig  <sam@webkit.org>
3377
3378         Remove FixedArray
3379         https://bugs.webkit.org/show_bug.cgi?id=125478
3380
3381         Reviewed by Anders Carlsson.
3382
3383         * GNUmakefile.list.am:
3384         * WTF.vcxproj/WTF.vcxproj:
3385         * WTF.vcxproj/WTF.vcxproj.filters:
3386         * WTF.xcodeproj/project.pbxproj:
3387         * wtf/CMakeLists.txt:
3388         * wtf/FixedArray.h: Removed.
3389
3390 2013-12-09  Sam Weinig  <sam@webkit.org>
3391
3392         Replace use of WTF::FixedArray with std::array
3393         https://bugs.webkit.org/show_bug.cgi?id=125475
3394
3395         Reviewed by Anders Carlsson.
3396
3397         * wtf/AVLTree.h:
3398         * wtf/Bitmap.h:
3399         * wtf/SixCharacterHash.cpp:
3400         (WTF::integerToSixCharacterHashString):
3401         * wtf/SixCharacterHash.h:
3402
3403 2013-12-06  Roger Fong <roger_fong@apple.com> and Brent Fulgham  <bfulgham@apple.com>
3404
3405         [Win] Support compiling with VS2013
3406         https://bugs.webkit.org/show_bug.cgi?id=125353
3407
3408         Reviewed by Anders Carlsson.
3409
3410         * wtf/Compiler.h: Show proper features for VS2012 and VS2013.
3411         * wtf/MathExtras.h: Don't implement common C99 routines when
3412         they are available through the runtime libraries.
3413         * wtf/RetainPtr.h:
3414         (WTF::RetainPtr::operator bool): Added.
3415         * wtf/StdLibExtras.h: Use Microsoft's version of make_unique
3416         when it exists.
3417
3418 2013-12-06  Laszlo Vidacs  <lac@inf.u-szeged.hu>
3419
3420         Define SHA1 hash size in SHA1.h and use it at various places.
3421         https://bugs.webkit.org/show_bug.cgi?id=125345
3422
3423         Reviewed by Darin Adler.
3424
3425         Use SHA1::hashSize instead of local variables.
3426
3427         * wtf/SHA1.h: define SHA1 hash size
3428
3429 2013-12-05  Iain Lane  <iain.lane@canonical.com>
3430
3431         Remove USE(LOCKFREE_THREADSAFEREFCOUNTED) from Atomics.cpp since it is
3432         no longer defined.
3433         https://bugs.webkit.org/show_bug.cgi?id=124502
3434
3435         Reviewed by Anders Carlsson.
3436
3437         * wtf/Atomics.cpp:
3438
3439 2013-12-04  Ryosuke Niwa  <rniwa@webkit.org>
3440
3441         Enable HTMLTemplateElement by default
3442         https://bugs.webkit.org/show_bug.cgi?id=123851
3443
3444         Reviewed by Antti Koivisto.
3445
3446         * wtf/FeatureDefines.h:
3447
3448 2013-12-04  Dan Bernstein  <mitz@apple.com>
3449
3450         Replace USE(SECURITY_FRAMEWORK) with finer-grained defines
3451         https://bugs.webkit.org/show_bug.cgi?id=125242
3452
3453         Reviewed by Sam Weinig.
3454
3455         * wtf/Platform.h: Removed definitions of WTF_USE_SECURITY_FRAMEWORK, and defined
3456         HAVE_SEC_IDENTITY and HAVE_SEC_KEYCHAIN.
3457
3458 2013-12-03  Joseph Pecoraro  <pecoraro@apple.com>
3459
3460         Web Inspector: Push Remote Inspector debugging connection management into JavaScriptCore
3461         https://bugs.webkit.org/show_bug.cgi?id=124613
3462
3463         Reviewed by Timothy Hatcher.
3464
3465         * wtf/ios/WebCoreThread.cpp:
3466         * wtf/ios/WebCoreThread.h:
3467         Expose WebThreadRun/WebThreadRunSync iOS methods defined in WebCore through
3468         WTF so that JavaScriptCore can use it. Another such method already existed.
3469
3470 2013-12-03  Mark Lam  <mark.lam@apple.com>
3471
3472         testapi test crashes on Windows in WTF::Vector<wchar_t,64,WTF::UnsafeVectorOverflow>::size().
3473         https://bugs.webkit.org/show_bug.cgi?id=121972.
3474
3475         Reviewed by Brent Fulgham.
3476
3477         * wtf/OSAllocatorWin.cpp:
3478         (WTF::OSAllocator::decommit):
3479         (WTF::OSAllocator::releaseDecommitted):
3480         - Added a check to ensure that the bytes to decommit / release is not 0.
3481           On Windows, a 0 length passed to VirtualFree() has a special meaning,
3482           and it's not "decommit / release nothing" as one would expect. Adding
3483           this check makes OSAllocatorWin consistent with OSAllocatorPosix for
3484           these 2 functions.
3485
3486 2013-12-02  Mark Lam  <mark.lam@apple.com>
3487
3488         Build failure when disabling JIT, YARR_JIT, and ASSEMBLER.
3489         https://bugs.webkit.org/show_bug.cgi?id=123809.
3490
3491         Reviewed by Geoffrey Garen.
3492
3493         * wtf/Platform.h:
3494         - Ensure that the ASSEMBLER is enabled when the DISASSEMBLER is enabled.
3495
3496 2013-11-30  peavo@outlook.com  <peavo@outlook.com>
3497
3498         [Win] Some JavaScript date tests are failing.
3499         https://bugs.webkit.org/show_bug.cgi?id=124946
3500
3501         Reviewed by Brent Fulgham.
3502
3503         Use native Win32 api functions to compute Daylight saving time offset.
3504
3505         * wtf/DateMath.cpp:
3506         (WTF::UnixTimeToFileTime): Added method to calculate Win32 specific struct FILETIME from time_t value.
3507         (WTF::calculateDSTOffset): Use native Win32 api functions to compute Daylight saving time offset.
3508
3509 2013-11-28  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3510
3511         Nix Upstream: Updating Nix WTF files
3512         https://bugs.webkit.org/show_bug.cgi?id=124980
3513
3514         Reviewed by Csaba Osztrogonác.
3515
3516         Just to sync our private repo files and the trunk, as part of the upstream process.
3517
3518         * wtf/DisallowCType.h:
3519         * wtf/PlatformNix.cmake:
3520         * wtf/nix/FeatureDefinesNix.h:
3521         * wtf/nix/PlatformNix.h:
3522         * wtf/nix/RunLoopNix.cpp: Added.
3523
3524 2013-11-28  Antti Koivisto  <antti@apple.com>
3525
3526         Remove feature: CSS variables
3527         https://bugs.webkit.org/show_bug.cgi?id=114119
3528
3529         Reviewed by Andreas Kling.
3530
3531         * wtf/FeatureDefines.h:
3532
3533 2013-11-26  Filip Pizlo  <fpizlo@apple.com>
3534
3535         Do bytecode validation as part of testing
3536         https://bugs.webkit.org/show_bug.cgi?id=124913
3537
3538         Reviewed by Oliver Hunt.
3539
3540         * GNUmakefile.list.am:
3541         * WTF.vcxproj/WTF.vcxproj:
3542         * WTF.xcodeproj/project.pbxproj:
3543         * wtf/CMakeLists.txt:
3544         * wtf/FastBitVector.cpp: Added.
3545         (WTF::FastBitVector::dump):
3546         * wtf/FastBitVector.h:
3547         (WTF::FastBitVector::resize):
3548         (WTF::FastBitVector::bitCount):
3549         (WTF::FastBitVector::arrayLength):
3550
3551 2013-11-27  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
3552
3553         Remove Sparc specific code.
3554         https://bugs.webkit.org/show_bug.cgi?id=124941
3555
3556         Reviewed by Michael Saboff.
3557
3558         Sparc is not supported, remove leftover code.
3559
3560         * wtf/Platform.h:
3561         * wtf/dtoa/utils.h:
3562
3563 2013-11-26  Marcelo Lira  <marcelo.lira@openbossa.org>
3564
3565         Nix upstreaming - Adding build files and supporting scripts
3566         https://bugs.webkit.org/show_bug.cgi?id=118367
3567
3568         Reviewed by Ryosuke Niwa.
3569
3570         * wtf/FeatureDefines.h:
3571         * wtf/Platform.h:
3572         * wtf/PlatformNix.cmake: Added.
3573
3574 2013-11-26  Drew Yao  <ayao@apple.com>
3575
3576         ASSERT_WITH_SECURITY_IMPLICATION should crash in a distinct way.
3577         https://bugs.webkit.org/show_bug.cgi?id=124757
3578
3579         Change ASSERT_WITH_SECURITY_IMPLICATION to access a different address from CRASH()
3580         in order to help screen fuzzing bugs.
3581
3582         Reviewed by Brent Fulgham.
3583
3584         * wtf/Assertions.cpp:
3585         * wtf/Assertions.h:
3586
3587 2013-11-24  Tim Horton  <timothy_horton@apple.com>
3588
3589         Upstream USE(IOSURFACE) from the iOS port
3590         https://bugs.webkit.org/show_bug.cgi?id=124814
3591
3592         Reviewed by Sam Weinig.
3593
3594         Some code guarded by USE(IOSURFACE) was recently upstreamed,
3595         but not the definition of WTF_USE_IOSURFACE itself.
3596
3597         * wtf/Platform.h:
3598
3599 2013-11-23  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3600
3601         [GStreamer] Remove 0.10 codepath
3602         https://bugs.webkit.org/show_bug.cgi?id=124534
3603
3604         Reviewed by Philippe Normand.
3605
3606         * wtf/Platform.h: Removed macro for GStreamer 1.0 as it is the
3607         only codepath now.
3608
3609 2013-11-21  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
3610
3611         Remove ENABLE_WORKERS
3612         https://bugs.webkit.org/show_bug.cgi?id=105784
3613
3614         Reviewed by Darin Adler.
3615
3616         * wtf/FeatureDefines.h:
3617         * wtf/nix/FeatureDefinesNix.h:
3618
3619 2013-11-21  Mark Rowe  <mrowe@apple.com>
3620
3621         <https://webkit.org/b/124701> Fix an error in a few Xcode configuration setting files.
3622
3623         Reviewed by Alexey Proskuryakov.
3624
3625         * Configurations/Base.xcconfig:
3626
3627 2013-11-20  Mark Lam  <mark.lam@apple.com>
3628
3629         Introducing VMEntryScope to update the VM stack limit.
3630         https://bugs.webkit.org/show_bug.cgi?id=124634.
3631
3632         Reviewed by Geoffrey Garen.
3633
3634         * wtf/Platform.h:
3635         * wtf/StackBounds.h:
3636         (WTF::StackBounds::StackBounds):
3637
3638 2013-11-18  Filip Pizlo  <fpizlo@apple.com>
3639
3640         Allow the FTL debug dumps to include the new size field
3641         https://bugs.webkit.org/show_bug.cgi?id=124479
3642
3643         Reviewed by Mark Hahnenberg.
3644
3645         * wtf/PrintStream.cpp:
3646         (WTF::printInternal):
3647         * wtf/PrintStream.h:
3648
3649 2013-11-17  Jer Noble  <jer.noble@apple.com>
3650
3651         [WTF] Media time should not have a constructor which accepts a single int or float.
3652         https://bugs.webkit.org/show_bug.cgi?id=124470
3653
3654         Having a constructor taking a single number value, as it's very easy to accidentially mis-
3655         initialize a MediaTime with a double (automatically casted to a int64_t).
3656
3657         Reviewed by Eric Carlson.
3658
3659         * wtf/MediaTime.h:
3660
3661 2013-11-18  Csaba Osztrogonác  <ossy@webkit.org>
3662
3663         URTBF after r159432 to make WinCairo build happy.
3664
3665         * wtf/text/WTFString.h:
3666
3667 2013-11-18  Carlos Garcia Campos  <cgarcia@igalia.com>
3668
3669         Unreviewed. Fix make distcheck.
3670
3671         * GNUmakefile.list.am: Add missing header file.
3672
3673 2013-11-16  Alexey Proskuryakov  <ap@apple.com>
3674
3675         Use uint8_t vectors for WebCrypto data
3676         https://bugs.webkit.org/show_bug.cgi?id=124466
3677
3678         Reviewed by Sam Weinig.
3679
3680         Binary data can be UTF-8, in which case "char*" is idiomatic, or it can be arbitrary
3681         binary data, in which case "uint8_t*" is more common.
3682
3683         Changed encode functions that took "const char *" to "const void*", and decode
3684         functions that took "Vector<char>&" now take an adapter class.
3685
3686         The adapter relies on Vector<char> and Vector<uint8_t> classes having an identical layout.
3687
3688         * wtf/text/Base64.cpp:
3689         (WTF::base64Encode):
3690         (WTF::base64URLEncode):
3691         (WTF::base64DecodeInternal):
3692         (WTF::base64Decode):
3693         (WTF::base64UR