Replace tools32 folder with tools and update WebKit Windows solution accordingly.
[WebKit-https.git] / Source / WTF / ChangeLog
1 2013-06-18  Roger Fong  <roger_fong@apple.com>
2
3         Replace tools32 folder with tools and update WebKit Windows solution accordingly.
4         <rdar://problem/14118143>.
5
6         Rubberstamped by Brent Fulgham.
7
8         * WTF.vcxproj/WTF.vcxproj:
9         * WTF.vcxproj/WTFDebug.props:
10         * WTF.vcxproj/WTFDebugWinCairo.props:
11         * WTF.vcxproj/WTFGenerated.vcxproj:
12         * WTF.vcxproj/WTFGeneratedDebug.props:
13         * WTF.vcxproj/WTFGeneratedProduction.props:
14         * WTF.vcxproj/WTFGeneratedRelease.props:
15         * WTF.vcxproj/WTFProduction.props:
16         * WTF.vcxproj/WTFRelease.props:
17         * WTF.vcxproj/WTFReleaseWinCairo.props:
18         * WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:
19         (react_to_vsprops_changes):
20
21 2013-06-18  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
22
23         PackedIntVector: check template arguments at compile time
24         https://bugs.webkit.org/show_bug.cgi?id=117737
25
26         Use 'COMPILE_ASSERT' instead of 'ASSERT' in PackedIntVector class
27         constructor.
28
29         Reviewed by Sam Weinig.
30
31         * wtf/PackedIntVector.h:
32         (WTF::PackedIntVector::PackedIntVector):
33
34 2013-06-17  Andy Estes  <aestes@apple.com>
35
36         A static_assert() in RetainPtr.h sometimes causes the build to fail.
37
38         Wrap the first argument to a static_assert() in parentheses since it
39         contains a comma, which sometimes tricks the preprocessor into thinking
40         the macro is being passed three arguments rather than two.
41
42         Reviewed by Brian Weinstein.
43
44         * wtf/RetainPtr.h:
45         (WTF::RetainPtr::RetainPtr):
46
47 2013-06-17  Zan Dobersek  <zdobersek@igalia.com>
48
49         REGRESSION (r149184): Build errors in RefPtr.h when building with Clang, C++98 standard
50         https://bugs.webkit.org/show_bug.cgi?id=116352
51
52         Reviewed by Anders Carlsson.
53
54         Use the __has_feature macro instead of the __has_extension one when detecting what features the Clang compiler
55         that's being used is capable to provide. With the project moving onto using C++11 throughout its components,
56         there currently exist cases where C++11-specific functionality (for instance std::move) is used despite being
57         guarded by compiler-specific feature guards that still get enabled even when compiling in C++98 with Clang.
58         The problematic features are enabled because they're available as C++98 language extensions by Clang.
59
60         Using __has_feature instead enables the feature guard only if the tested feature is actually standardized in
61         the currently used language standard.
62
63         * wtf/Compiler.h:
64
65 2013-06-17  Ryosuke Niwa  <rniwa@webkit.org>
66
67         Initialize AtomicStringTable in WTFThreadData's constructor
68         https://bugs.webkit.org/show_bug.cgi?id=117671
69
70         Reviewed by Geoffrey Garen.
71
72         Extracted AtomicStringTable from AtomicString.cpp into AtomicStringTable.h/cpp
73         and made WTFThreadDada::WTFThreadData create the atomic string table for the thread.
74
75         This eliminates a branch from stringTable() in AtomicString.cpp.
76
77         * GNUmakefile.list.am:
78         * WTF.pro:
79         * WTF.vcxproj/WTF.vcxproj:
80         * WTF.vcxproj/WTF.vcxproj.filters:
81         * WTF.xcodeproj/project.pbxproj:
82         * wtf/CMakeLists.txt:
83         * wtf/WTFThreadData.cpp:
84         (WTF::WTFThreadData::WTFThreadData):
85         * wtf/text/AtomicString.cpp:
86         (WTF::stringTable):
87         * wtf/text/AtomicStringTable.cpp: Added.
88         (WTF::AtomicStringTable::create):
89         (WTF::AtomicStringTable::destroy):
90         * wtf/text/AtomicStringTable.h: Added.
91         (WTF::AtomicStringTable::table):
92
93 2013-06-17  Roger Fong  <roger_fong@apple.com>
94
95         Modify Windows makefiles to copy some bin output into Program Files.
96         https://bugs.webkit.org/show_bug.cgi?id=117714.
97         <rdar://problem/14179054>
98
99         Reviewed by Brent Fulgham.
100
101         * WTF.vcxproj/WTF.make:
102
103 2013-06-17  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
104
105         Unreviewed, rolling out r151632.
106         http://trac.webkit.org/changeset/151632
107         https://bugs.webkit.org/show_bug.cgi?id=117585
108
109         Debug build error ASSERT(WTF_USE_GRAMMAR_CHECKING) for non MAC
110         platforms
111
112         * wtf/Platform.h:
113
114 2013-06-14  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
115
116         Context menu grammar checking items are available when GRAMMAR_CHECKING macro is off
117         https://bugs.webkit.org/show_bug.cgi?id=117585
118
119         Reviewed by Anders Carlsson.
120
121         Enable GRAMMAR_CHECKING for WebKit ports that use/implement it.
122
123         * wtf/Platform.h:
124
125 2013-06-14  Patrick Gansterer  <paroga@webkit.org>
126
127         Introduce USE(WINGDI) for the Windows port
128         https://bugs.webkit.org/show_bug.cgi?id=116138
129
130         Reviewed by Ryosuke Niwa.
131
132         Using USE(WINGDI) instead of OS(WINCE) will allow us to
133         compile the GDI based Windows port on WinNT too.
134
135         * wtf/Platform.h:
136
137 2013-06-13  Ryosuke Niwa  <rniwa@webkit.org>
138
139         Remove LiteralIdentifierTable
140         https://bugs.webkit.org/show_bug.cgi?id=117613
141
142         Reviewed by Geoffrey Garen.
143
144         Removed LiteralIdentifierTable since it doesn't seem to have any perf. impact now.
145
146         * wtf/WTFThreadData.h:
147
148 2013-06-13  Brent Fulgham  <bfulgham@apple.com>
149
150         [WinCairo] Correct FeatureDefines.h Default for ENABLE_VIEW_MODE_CSS_MEDIA
151         https://bugs.webkit.org/show_bug.cgi?id=114396
152
153         Reviewed by Dean Jackson.
154
155         * wtf/FeatureDefines.h: The WinCairo port does not (currently) support Media elements,
156         so make sure we do not enable this feature by default for that port.
157
158 2013-06-13  Brent Fulgham  <bfulgham@apple.com>
159
160         [Windows] Unreviewed gardening.
161
162         * WTF.vcxproj/WTF.vcxproj: Add FeatureDefines.h to visible files.
163         * WTF.vcxproj/WTF.vcxproj.filters: Ditto.
164
165 2013-06-13  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
166
167         Optimize String::fromUTF8 for ASCII
168         https://bugs.webkit.org/show_bug.cgi?id=117586
169
170         Reviewed by Brent Fulgham.
171
172         From Blink r152243 by <abarth@chromium.org>
173
174         Current String::fromUTF8() implementation converts 8 bit ASCII character into 16 bit.
175         Instead of always trying to convert into a 16 bit buffer, we can add a call to charactersAreAllASCII.
176         In the common case when characters are ASCII, we directly copy it into an 8 bit string buffer.
177
178         * wtf/text/WTFString.cpp:
179         (WTF::String::fromUTF8):
180
181 2013-06-12  Brent Fulgham  <bfulgham@apple.com>
182
183         [Windows] Activate supported C++11 Features for VS2010
184         https://bugs.webkit.org/show_bug.cgi?id=117569
185
186         Reviewed by Anders Carlsson.
187
188         * wtf/Compiler.h: Turn on rvalue references and static_assert
189         when compiling with VS2010 (or newer)
190
191 2013-06-07  Roger Fong  <roger_fong@apple.com>
192
193         Unreviewed. Makefile fix. Copy WTF.dll over as well.
194
195         * WTF.vcxproj/WTF.make:
196
197 2013-06-07  Commit Queue  <commit-queue@webkit.org>
198
199         Unreviewed, rolling out r151318.
200         http://trac.webkit.org/changeset/151318
201         https://bugs.webkit.org/show_bug.cgi?id=117356
202
203         Broke Windows Release Build (Requested by bfulgham on
204         #webkit).
205
206         * WTF.vcxproj/WTF.vcxproj:
207         * WTF.vcxproj/WTFCommon.props:
208         * WTF.vcxproj/WTFCoreFoundation.props: Removed.
209         * WTF.vcxproj/WTFDebug.props:
210         * WTF.vcxproj/WTFRelease.props:
211
212 2013-06-07  peavo@outlook.com  <peavo@outlook.com>
213
214         [WinCairo] WTF.dll is linking with CoreFoundation.lib in VS2010.
215         https://bugs.webkit.org/show_bug.cgi?id=117294
216
217         Reviewed by Darin Adler.
218
219         WinCairo build should not use CoreFoundation.
220
221         * WTF.vcxproj/WTF.vcxproj: Exclude unneeded file from WinCairo build.
222         * WTF.vcxproj/WTFCommon.props: Removed CoreFoundation.lib from common props.
223         * WTF.vcxproj/WTFCoreFoundation.props: Added.
224         * WTF.vcxproj/WTFDebug.props: Inherit from WTFCoreFoundations.props.
225         * WTF.vcxproj/WTFRelease.props: Inherit from WTFCoreFoundations.props.
226
227 2013-06-06  Roger Fong  <roger_fong@apple.com>
228
229         Unreviewed. Fix typo with winmm linker input.
230
231         * WTF.vcxproj/WTFCommon.props:
232
233 2013-06-05  Benjamin Poulain  <bpoulain@apple.com>
234
235         WebSQL forces 16-bit strings
236         https://bugs.webkit.org/show_bug.cgi?id=116935
237
238         Reviewed by Darin Adler.
239
240         Merge chromium 49c9632ac135f6f06e623a7a81d9da1f6bb7196f.
241         https://chromium.googlesource.com/chromium/blink/+/49c9632ac135f6f06e623a7a81d9da1f6bb7196f
242
243         * wtf/text/StringImpl.cpp:
244         (WTF::StringImpl::create8BitIfPossible):
245         * wtf/text/StringImpl.h:
246         (WTF::lengthOfNullTerminatedString):
247         * wtf/text/WTFString.cpp:
248         (WTF::String::String):
249
250 2013-06-03  Roger Fong  <roger_fong@apple.com>
251
252         Nuke VS2005 files from the tree.
253         <rdar://problem/14042021>.
254
255         Rubberstamped by Brent Fulgham.
256
257         * WTF.vcproj: Removed.
258         * WTF.vcproj/WTF.make: Removed.
259         * WTF.vcproj/WTF.sln: Removed.
260         * WTF.vcproj/WTF.vcproj: Removed.
261         * WTF.vcproj/WTFCommon.vsprops: Removed.
262         * WTF.vcproj/WTFDebug.vsprops: Removed.
263         * WTF.vcproj/WTFDebugAll.vsprops: Removed.
264         * WTF.vcproj/WTFDebugCairoCFLite.vsprops: Removed.
265         * WTF.vcproj/WTFGenerated.make: Removed.
266         * WTF.vcproj/WTFGenerated.vcproj: Removed.
267         * WTF.vcproj/WTFGeneratedCommon.vsprops: Removed.
268         * WTF.vcproj/WTFGeneratedDebug.vsprops: Removed.
269         * WTF.vcproj/WTFGeneratedDebugAll.vsprops: Removed.
270         * WTF.vcproj/WTFGeneratedDebugCairoCFLite.vsprops: Removed.
271         * WTF.vcproj/WTFGeneratedProduction.vsprops: Removed.
272         * WTF.vcproj/WTFGeneratedRelease.vsprops: Removed.
273         * WTF.vcproj/WTFGeneratedReleaseCairoCFLite.vsprops: Removed.
274         * WTF.vcproj/WTFPostBuild.cmd: Removed.
275         * WTF.vcproj/WTFPreBuild.cmd: Removed.
276         * WTF.vcproj/WTFProduction.vsprops: Removed.
277         * WTF.vcproj/WTFRelease.vsprops: Removed.
278         * WTF.vcproj/WTFReleaseCairoCFLite.vsprops: Removed.
279         * WTF.vcproj/build-generated-files.sh: Removed.
280         * WTF.vcproj/copy-files.cmd: Removed.
281         * WTF.vcproj/work-around-vs-dependency-tracking-bugs.py: Removed.
282
283 2013-06-03  Patrick Gansterer  <paroga@webkit.org>
284
285         Unreviewed WinCE build fix after r150833.
286
287         * wtf/DateMath.cpp:
288         (WTF::calculateDSTOffset):
289
290 2013-06-03  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
291
292         [WTF] Add OwnArrayPtr vectortraits template 
293         https://bugs.webkit.org/show_bug.cgi?id=117131
294
295         Reviewed by Darin Adler.
296
297         To support Vector<OwnArrayPtr<P>>, which will be used by EFL port.
298
299         * wtf/VectorTraits.h:
300
301 2013-05-31  Rafael Brandao  <rafael.lobo@openbossa.org>
302
303         Fix double hash lookup in PageMapMemoryUsageRecorder::visit
304         https://bugs.webkit.org/show_bug.cgi?id=117071
305
306         Reviewed by Andreas Kling.
307
308         * wtf/FastMalloc.cpp:
309         (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
310
311 2013-05-31  Brent Fulgham  <bfulgham@apple.com>
312
313         [Windows] Speculative build fix for pre-VS2010 compilers
314
315         * wtf/Platform.h: Only treat WTF as DLL for VS2010 builds
316
317 2013-05-31  Zan Dobersek  <zdobersek@igalia.com>
318
319         Move MD5, SHA1 unit tests from WTF to TestWebKitAPI
320         https://bugs.webkit.org/show_bug.cgi?id=116445
321
322         Reviewed by Benjamin Poulain.
323
324         Remove the MD5 and SHA1 test cases from the WTF code. The same cases are now built and run under TestWebKitAPI.
325
326         * wtf/MD5.cpp:
327         (WTF::MD5::MD5):
328         * wtf/SHA1.cpp:
329         (WTF::SHA1::SHA1):
330
331 2013-05-30  Roger Fong  <roger_fong@apple.com>
332
333         Another unreviewed build fix for Mac.
334
335         * wtf/text/WTFString.h:
336         (WTF::String::fromUTF8WithLatin1Fallback):
337
338 2013-05-30  Roger Fong  <roger_fong@apple.com>
339
340         Unreviewed build fix for Mac.
341
342         * wtf/OSAllocator.h:
343         * wtf/text/WTFString.h:
344         (WTF::String::fromUTF8):
345
346 2013-05-30  Roger Fong  <roger_fong@apple.com>
347
348         Get rid of JavaScript exports file on AppleWin port.
349         https://bugs.webkit.org/show_bug.cgi?id=117050.
350
351         Reviewed by Darin Adler.
352
353         This requires turning WTF into a shared library and adding the WTF_EXPORT_PRIVATE to some methods where it was missed.
354
355         * WTF.vcxproj/WTF.vcxproj:
356         * WTF.vcxproj/WTFCommon.props:
357         * wtf/DateMath.h:
358         * wtf/ExportMacros.h:
359         * wtf/FilePrintStream.h:
360         * wtf/OSAllocator.h:
361         * wtf/PageAllocationAligned.h:
362         * wtf/Platform.h:
363         * wtf/PrintStream.h:
364         * wtf/StackBounds.h:
365         * wtf/StringPrintStream.h:
366         * wtf/ThreadSpecific.h:
367         * wtf/WTFThreadData.h:
368         * wtf/dtoa/cached-powers.h:
369         * wtf/dtoa/double-conversion.h:
370         * wtf/text/WTFString.h:
371         * wtf/unicode/Collator.h:
372         * wtf/unicode/UTF8.h:
373
374 2013-05-29  Kent Tamura  <tkent@chromium.org>
375
376         Remove ENABLE_INPUT_MULTIPLE_FIELDS_UI.
377         https://bugs.webkit.org/show_bug.cgi?id=116796
378
379         Reviewed by Ryosuke Niwa.
380
381         * wtf/FeatureDefines.h:
382
383 2013-05-27  Gavin Barraclough  <barraclough@apple.com>
384
385         String(new Date(2010,10,1)) is wrong in KRAT, YAKT
386         https://bugs.webkit.org/show_bug.cgi?id=106750
387
388         Reviewed by Darin Adler.
389
390         First part of a fix, simplfy date handling code, instead of operating separately
391         on the UTC-standard and standard-DST offsets, just generate a combined UTC-local
392         offset (this is what we actually need, and what the OS gives us).
393
394         * wtf/DateMath.cpp:
395         (WTF::calculateUTCOffset):
396         (WTF::calculateDSTOffset):
397             - made static, now not called from outside of this file.
398         (WTF::calculateLocalTimeOffset):
399             - This combines the 2038 related adjustment from calculateDSTOffset with the
400               maxUnixTime adjustment from calculateDSTOffsetSimple. Then, if HAVE(TM_GMTOFF)
401               just call getLocalTime, if not use calculateUTCOffset/calculateDSTOffset.
402         (WTF::parseDateFromNullTerminatedCharacters):
403             - call calculateLocalTimeOffset instead of calculateUTCOffset/calculateDSTOffset
404         * wtf/DateMath.h:
405         (WTF::LocalTimeOffset::LocalTimeOffset):
406         (LocalTimeOffset):
407         (WTF::LocalTimeOffset::operator==):
408             - new struct type, a tuple of UTC-local offset & isDST flag.
409             - replaced calculateUTCOffset/calculateDSTOffset with calculateLocalTimeOffset
410         * wtf/GregorianDateTime.cpp:
411         (WTF::GregorianDateTime::setToCurrentLocalTime):
412             - call calculateLocalTimeOffset instead of calculateUTCOffset/calculateDSTOffset
413
414 2013-05-27  Patrick Gansterer  <paroga@webkit.org>
415
416         Use correct stack size on Solaris and OpenBSD
417         https://bugs.webkit.org/show_bug.cgi?id=114978
418
419         Recommit after wrong rollout in r150621.
420
421         * wtf/StackBounds.cpp:
422         (WTF):
423         (WTF::StackBounds::initialize):
424
425 2013-05-27  Patrick Gansterer  <paroga@webkit.org>
426
427         Use ICU_INCLUDE_DIRS in BlackBerry CMake files
428         https://bugs.webkit.org/show_bug.cgi?id=116210
429
430         Reviewed by Rob Buis.
431
432         Set and use the ICU_INCLUDE_DIRS variable to avoid
433         duplicated adding of the ICU include directory.
434
435         * wtf/PlatformBlackBerry.cmake:
436
437 2013-05-27  Ádám Kallai  <kadam@inf.u-szeged.hu>
438
439         [Qt] Enable parallel GC. Probably it has been fixed in r131791.
440         https://bugs.webkit.org/show_bug.cgi?id=90957
441
442         Reviewed by Csaba Osztrogonác.
443
444         * wtf/Platform.h:
445
446 2013-05-26  Patrick Gansterer  <paroga@webkit.org>
447
448         [WINCE] Add wtf_bsearch()
449         https://bugs.webkit.org/show_bug.cgi?id=116528
450
451         Reviewed by Darin Adler.
452
453         r149833 introduced usage of ::bsearch(), which does not exist on Windwos CE.
454         Add our own implementation of this function as wtf_bsearch and define
455         bsearch as wtf_bsearch to fix compilation on Windwos CE.
456
457         * wtf/StdLibExtras.h:
458         (wtf_bsearch):
459
460 2013-05-26  Kent Tamura  <tkent@chromium.org>
461
462         Remove ENABLE_CALENDAR_PICKER
463         https://bugs.webkit.org/show_bug.cgi?id=116795
464
465         Reviewed by Ryosuke Niwa.
466
467         * wtf/FeatureDefines.h:
468
469 2013-05-24  Benjamin Poulain  <bpoulain@apple.com>
470
471         Inline TCMalloc_Central_FreeList's RemoveRange and FetchFromSpansSafe
472         https://bugs.webkit.org/show_bug.cgi?id=116700
473
474         Reviewed by Darin Adler.
475
476         The two functions only have one call site each.
477
478         * wtf/FastMalloc.cpp:
479         (WTF::TCMalloc_Central_FreeList::RemoveRange):
480         (WTF::TCMalloc_Central_FreeList::FetchFromSpansSafe):
481
482 2013-05-24  Filip Pizlo  <fpizlo@apple.com>
483
484         We broke !(0/0)
485         https://bugs.webkit.org/show_bug.cgi?id=116736
486
487         Reviewed by Gavin Barraclough.
488
489         * wtf/MathExtras.h:
490         (isNotZeroAndOrdered):
491         (isZeroOrUnordered):
492
493 2013-05-24  Anders Carlsson  <andersca@apple.com>
494
495         Remove PagePopup code
496         https://bugs.webkit.org/show_bug.cgi?id=116732
497
498         Reviewed by Andreas Kling.
499
500         Remove ENABLE_PAGE_POPUP.
501
502         * wtf/FeatureDefines.h:
503
504 2013-05-25  Jer Noble  <jer.noble@apple.com>
505
506         Mac: Set the default audio buffer size to a large value for <video> elements.
507         https://bugs.webkit.org/show_bug.cgi?id=116342
508
509         Reviewed by Eric Carlson.
510
511         * wtf/Platform.h: Add a WTF_USE_AUDIO_SESSION setting.
512
513 2013-05-23  Brent Fulgham  <bfulgham@apple.com>
514
515         [Windows] Rolling back r150600 as it breaks the VS2010 builds.
516
517         * wtf/StackBounds.cpp: Rollback.
518
519 2013-05-23 Patrick Gansterer <paroga@webkit.org>
520
521         Use correct stack size on Solaris and OpenBSD
522         https://bugs.webkit.org/show_bug.cgi?id=114978
523
524         Reviewed by Oliver Hunt.
525
526         Original patch by David Hill <david@wmol.com>.
527
528         Use stack_t.ss_size for getting the size of the stack.
529
530         * wtf/Platform.h:
531         * wtf/StackBounds.cpp:
532         (WTF):
533         (WTF::StackBounds::initialize):
534
535 2013-05-23  Patrick Gansterer  <paroga@webkit.org>
536
537         [WIN] Implement correct detection of stack size
538         https://bugs.webkit.org/show_bug.cgi?id=116661
539
540         Reviewed by Oliver Hunt.
541
542         * wtf/StackBounds.cpp:
543         (WTF):
544         (WTF::StackBounds::initialize):
545
546 2013-05-22  Dean Jackson  <dino@apple.com>
547
548         Rolling out r150555. It borked about 30 media tests.
549
550         * wtf/Platform.h:
551
552 2013-05-21  Anders Carlsson  <andersca@apple.com>
553
554         Build fix.
555
556         * wtf/NeverDestroyed.h:
557         (NeverDestroyed):
558
559 2013-05-20  Anders Carlsson  <andersca@apple.com>
560
561         Add WTF::NeverDestroyed and start using it in WTF
562         https://bugs.webkit.org/show_bug.cgi?id=116472
563
564         Reviewed by Benjamin Poulain.
565
566         NeverDestroyed is a class template that can be used for singletons and other objects that we never
567         want to destroy. It's intended as a replacement for WTF_STATIC_LOCAL with the advantage that it doesn't
568         fragment the heap.
569
570         * GNUmakefile.list.am:
571         * WTF.vcproj/WTF.vcproj:
572         * WTF.vcxproj/WTF.vcxproj:
573         * WTF.vcxproj/WTF.vcxproj.filters:
574         * WTF.xcodeproj/project.pbxproj:
575         Add NeverDestroyed.h
576
577         * wtf/Compiler.h:
578         Add a helper macro, WTF_DELETED_FUNCTION.
579
580         * wtf/CryptographicallyRandomNumber.cpp:
581         Use NeverDestroyed.
582
583         * wtf/NeverDestroyed.h: Added.
584
585         * wtf/Noncopyable.h:
586         Use WTF_DELETED_FUNCTION.
587
588         * wtf/text/WTFString.cpp:
589         (WTF::emptyString):
590         Use 
591
592 2013-05-20  Zan Dobersek  <zdobersek@igalia.com>
593
594         Use '__typeof__' keyword to avoid problems when compiling in C++11 standard compliance
595         https://bugs.webkit.org/show_bug.cgi?id=116447
596
597         Reviewed by Darin Adler.
598
599         The 'typeof' keyword is a GNU C extension which becomes unavailable when compiling in ANSI or specific standard mode
600         (such as -std=c++11). The '__typeof__' keyword should be used instead as it's available in all modes both under GCC and Clang.
601
602         * wtf/FastMalloc.cpp:
603         (WTF): Replace the 'typeof' keyword with '__typeof__'.
604
605 2013-05-19  Anders Carlsson  <andersca@apple.com>
606
607         Remove link prerendering code
608         https://bugs.webkit.org/show_bug.cgi?id=116415
609
610         Reviewed by Darin Adler.
611
612         This code was only used by Chromium and is dead now.
613
614         * wtf/FeatureDefines.h:
615
616 2013-05-18  Patrick Gansterer  <paroga@webkit.org>
617
618         [CMake] Replace *_LIBRARY_NAME with *_OUTPUT_NAME
619         https://bugs.webkit.org/show_bug.cgi?id=114554
620
621         Reviewed by Gyuyoung Kim.
622
623         Using variables as target names is very uncommon in CMake.
624         The usual way to specify the name of the resulting binary
625         is to set the OUTPUT_NAME target property.
626
627         * wtf/CMakeLists.txt:
628
629 2013-05-17  Andreas Kling  <akling@apple.com>
630
631         Re-align the OS(AIX) macro...
632         ...in the hopes that the resulting world rebuild will fix failures after r150294.
633
634         * wtf/Platform.h:
635
636 2013-05-17  Anders Carlsson  <andersca@apple.com>
637
638         WKKeyValueStorageManagerGetKeyValueStorageOrigins should get origins from the UI process
639         https://bugs.webkit.org/show_bug.cgi?id=116346
640         <rdar://problem/13852829>
641
642         Reviewed by Andreas Kling.
643
644         Add forward declaration for Function.
645
646         * wtf/Forward.h:
647
648 2013-05-17  Patrick Gansterer  <paroga@webkit.org>
649
650         [CMake] Remove invalid include paths
651         https://bugs.webkit.org/show_bug.cgi?id=116213
652
653         Reviewed by Gyuyoung Kim.
654
655         Since "${JAVASCRIPTCORE_DIR}/wtf" does not exist, it is safe
656         to remove them from the list of include directories.
657
658         * wtf/PlatformEfl.cmake:
659         * wtf/PlatformGTK.cmake:
660
661 2013-05-16  Benjamin Poulain  <bpoulain@apple.com>
662
663         Add the symbol WTFInvokeCrashHook back for binary compatibility.
664
665         Reviewed by Ryosuke Niwa.
666
667         * wtf/Assertions.cpp:
668         * wtf/Assertions.h:
669
670 2013-05-16  Seokju Kwon  <seokju.kwon@gmail.com>
671
672         [CMAKE] Need to set WTF_LIBRARIES in wtf/CMakeLists.txt
673         https://bugs.webkit.org/show_bug.cgi?id=116209
674
675         Reviewed by Gyuyoung Kim.
676
677         * wtf/CMakeLists.txt: Replace list with set.
678
679 2013-05-16  Benjamin Poulain  <benjamin@webkit.org>
680
681         Crash properly on iOS
682         https://bugs.webkit.org/show_bug.cgi?id=115782
683
684         Reviewed by Darin Adler.
685
686         Improve crash handling. <rdar://problem/13842771>
687
688         * wtf/Assertions.cpp:
689         * wtf/Assertions.h:
690
691 2013-05-15  Ryuan Choi  <ryuan.choi@samsung.com>
692
693         Unreviewed build fix after r150123
694
695         * wtf/CMakeLists.txt: 
696
697 2013-05-15  Oliver Hunt  <oliver@apple.com>
698
699         RefCountedArray needs to use vector initialisers for its backing store
700         https://bugs.webkit.org/show_bug.cgi?id=116194
701
702         Reviewed by Gavin Barraclough.
703
704         Use VectorOperations to operate on the backing store
705
706         * wtf/RefCountedArray.h:
707         (WTF::RefCountedArray::RefCountedArray):
708         (WTF::RefCountedArray::operator=):
709         (WTF::RefCountedArray::~RefCountedArray):
710
711 2013-05-15  Nico Weber  <thakis@chromium.org>
712
713         WebKit doesn't support MSVS2003 any more, remove preprocessor checks for older versions.
714         https://bugs.webkit.org/show_bug.cgi?id=116157
715
716         Reviewed by Anders Carlsson.
717
718         Also remove a gcc3.2 workaround.
719
720         Merges parts of these two commits by the talented Nico Weber:
721         https://chromium.googlesource.com/chromium/blink/+/3677e2f47348daeff405a40b6f90fbdf0654c2f5
722         https://chromium.googlesource.com/chromium/blink/+/0fcd96c448dc30be1416dcc15713c53710c1a312
723
724         * wtf/Alignment.h:
725         (WTF):
726         * wtf/Assertions.h:
727         * wtf/Atomics.h:
728         (WTF):
729         * wtf/Compiler.h:
730         * wtf/DateMath.cpp:
731         (WTF::getLocalTime):
732         * wtf/MathExtras.h:
733         * wtf/RefCountedLeakCounter.h:
734         (RefCountedLeakCounter):
735         * wtf/StaticConstructors.h:
736
737 2013-05-15  Patrick Gansterer  <paroga@webkit.org>
738
739         Consolidate lists in WTF CMake files
740         https://bugs.webkit.org/show_bug.cgi?id=116142
741
742         Reviewed by Martin Robinson.
743
744         Move common files into the CMakeLists.txt to avoid duplicating the list of files.
745         Also rebase the recently added GTK files to match the other CMake ports, since
746         the submitted patch was based on an older version of the source tree.
747
748         * wtf/CMakeLists.txt:
749         * wtf/PlatformBlackBerry.cmake:
750         * wtf/PlatformEfl.cmake:
751         * wtf/PlatformGTK.cmake:
752         * wtf/PlatformWinCE.cmake:
753
754 2013-05-14  Carlos Garcia Campos  <cgarcia@igalia.com>
755
756         Remove WTF_USE_PLATFORM_STRATEGIES
757         https://bugs.webkit.org/show_bug.cgi?id=114431
758
759         Reviewed by Darin Adler.
760
761         * wtf/Platform.h:
762
763 2013-05-14  Carlos Garcia Campos  <cgarcia@igalia.com>
764
765         [BlackBerry] Use requestAnimationFrame for animations
766         https://bugs.webkit.org/show_bug.cgi?id=115896
767
768         Reviewed by Rob Buis.
769
770         * wtf/Platform.h: Disable REQUEST_ANIMATION_FRAME_TIMER and
771         WTF_USE_REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR for BlackBerry
772         port.
773
774 2013-05-14  Carlos Garcia Campos  <cgarcia@igalia.com>
775
776         [BlackBerry] Implement platform strategies
777         https://bugs.webkit.org/show_bug.cgi?id=112162
778
779         Reviewed by Rob Buis.
780
781         * wtf/Platform.h: Add BlackBerry platform to the list of platforms
782         using platform strategies.
783
784 2013-05-13  Benjamin Poulain  <benjamin@webkit.org>
785
786         Improve stringProtoFuncLastIndexOf for the prefix case
787         https://bugs.webkit.org/show_bug.cgi?id=115952
788
789         Reviewed by Geoffrey Garen.
790
791         Add an optimized version of StringImpl::startsWith() for JavaScriptCore.
792
793         * wtf/text/StringImpl.cpp:
794         (WTF::StringImpl::startsWith):
795         * wtf/text/StringImpl.h:
796         (StringImpl):
797         (WTF::StringImpl::startsWith):
798         * wtf/text/WTFString.h:
799         (WTF::String::startsWith):
800
801 2013-05-13  Carlos Garcia Campos  <cgarcia@igalia.com>
802
803         Unreviewed. Fix Qt Linux MIPS32R2 build after r149879.
804
805         Bring back GLIB_CHECK_VERSION for GBytes since Qt Linux MIPS32R2
806         depends on glib 2.24.2.
807
808         * wtf/gobject/GRefPtr.cpp:
809         (_GBytes):
810         (WTF::refGPtr):
811         (WTF::derefGPtr):
812
813 2013-05-13  Anders Carlsson  <andersca@apple.com>
814
815         Remove UnusedParam.h
816         https://bugs.webkit.org/show_bug.cgi?id=116029
817
818         Reviewed by Andreas Kling.
819
820         Remove UnusedParam.h, it's empty now.
821
822         * GNUmakefile.list.am:
823         * WTF.pro:
824         * WTF.vcproj/WTF.vcproj:
825         * WTF.vcxproj/WTF.vcxproj:
826         * WTF.vcxproj/WTF.vcxproj.filters:
827         * WTF.xcodeproj/project.pbxproj:
828         * wtf/CMakeLists.txt:
829         * wtf/UnusedParam.h: Removed.
830
831 2013-05-13  Zalan Bujtas  <zalan@apple.com>
832
833         WebProcess consuming very high CPU on linkedin.com
834         https://bugs.webkit.org/show_bug.cgi?id=115601
835
836         Reviewed by Andreas Kling.
837
838         Disable WEB_TIMING_MINIMAL.
839         Turn off window.performance and performance.now(). Some JS frameworks expect
840         additional Web Timing APIs, when performance.now() is available.
841
842         * wtf/FeatureDefines.h:
843
844 2013-05-12  Anders Carlsson  <andersca@apple.com>
845
846         Stop including UnusedParam.h
847         https://bugs.webkit.org/show_bug.cgi?id=116003
848
849         Reviewed by Sam Weinig.
850
851         UnusedParam.h is empty now so there's no need to include it anymore.
852
853         * wtf/Atomics.h:
854         * wtf/BoundsCheckedPointer.h:
855         * wtf/DateMath.h:
856         * wtf/FastMalloc.cpp:
857         * wtf/NumberOfCores.cpp:
858         * wtf/OSAllocator.h:
859         * wtf/OSAllocatorPosix.cpp:
860         * wtf/PageAllocation.h:
861         * wtf/RefCounted.h:
862         * wtf/TCSystemAlloc.cpp:
863         * wtf/ThreadingPthreads.cpp:
864         * wtf/Vector.h:
865         * wtf/dtoa/cached-powers.cc:
866         * wtf/dtoa/fixed-dtoa.cc:
867
868 2013-05-12  Anders Carlsson  <andersca@apple.com>
869
870         Move UNUSED_PARAM and UNUSED_LABEL macros to Compiler.h
871         https://bugs.webkit.org/show_bug.cgi?id=115997
872
873         Reviewed by Benjamin Poulain.
874
875         UnusedParam.h predates Compiler.h and the macros defined there should just go into Compiler.h
876
877         * wtf/Compiler.h:
878         (unusedParam):
879         * wtf/UnusedParam.h:
880
881 2013-05-12  Anders Carlsson  <andersca@apple.com>
882
883         Remove Complex.h from WTF
884         https://bugs.webkit.org/show_bug.cgi?id=115989
885
886         Reviewed by Beth Dakin.
887
888         Complex.h contains a typedef and a single function (that already has an equivalent in the STL).
889         The header is used by three files in WebCore, so just use std::complex<double> and std::polar directly.
890
891         * GNUmakefile.list.am:
892         * WTF.vcproj/WTF.vcproj:
893         * WTF.vcxproj/WTF.vcxproj:
894         * WTF.vcxproj/WTF.vcxproj.filters:
895         * WTF.xcodeproj/project.pbxproj:
896         * wtf/CMakeLists.txt:
897         * wtf/Complex.h: Removed.
898
899 2013-05-11  Martin Robinson  <mrobinson@igalia.com>
900
901         [GTK] Add a basic cmake build for WTF and JavaScriptCore
902         https://bugs.webkit.org/show_bug.cgi?id=115967
903
904         Reviewed by Laszlo Gombos.
905
906         * wtf/PlatformGTK.cmake: Added.
907
908 2013-05-11  Martin Robinson  <mrobinson@igalia.com>
909
910         Move defines to platform
911
912         [GTK] Move defines that will never be configured to Platform.h
913         https://bugs.webkit.org/show_bug.cgi?id=115965
914
915         Reviewed by Andreas Kling.
916
917         * wtf/Platform.h: Add new defines that were previously in the autoconf header.
918
919 2013-05-12  Anders Carlsson  <andersca@apple.com>
920
921         Simplify AutodrainedPool
922         https://bugs.webkit.org/show_bug.cgi?id=115986
923
924         Reviewed by Andreas Kling.
925
926         Remove the ability to cycle an AutodrainedPool, as well as the iteration count.
927         Creating and draining pools is fast enough now that we don't need to try to be clever about it.
928
929         * wtf/AutodrainedPool.h:
930         (AutodrainedPool):
931         (WTF::AutodrainedPool::AutodrainedPool):
932         * wtf/AutodrainedPoolMac.mm:
933         (WTF::AutodrainedPool::AutodrainedPool):
934
935 2013-05-12  Anders Carlsson  <andersca@apple.com>
936
937         Move RemoteMemoryReader into FastMalloc.cpp
938         https://bugs.webkit.org/show_bug.cgi?id=115985
939
940         Reviewed by Andreas Kling.
941
942         RemoteMemoryReader is only used in FastMalloc.cpp, and even had one of its member functions
943         implemented there, so move the entire class template there and remove MallocZoneSupport.h.
944
945         * GNUmakefile.list.am:
946         * WTF.pro:
947         * WTF.vcproj/WTF.vcproj:
948         * WTF.vcxproj/WTF.vcxproj:
949         * WTF.vcxproj/WTF.vcxproj.filters:
950         * WTF.xcodeproj/project.pbxproj:
951         * wtf/CMakeLists.txt:
952         * wtf/FastMalloc.cpp:
953         (WTF):
954         (PageHeapAllocator):
955         (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
956         * wtf/MallocZoneSupport.h: Removed.
957
958 2013-05-10  Laszlo Gombos  <l.gombos@samsung.com>
959
960         Remove USE(OS_RANDOMNESS)
961         https://bugs.webkit.org/show_bug.cgi?id=108095
962
963         Reviewed by Darin Adler.
964
965         Remove the USE(OS_RANDOMNESS) guard as it is turned on for all
966         ports.
967
968         * wtf/CryptographicallyRandomNumber.cpp:
969         (WTF::cryptographicallyRandomValues):
970         * wtf/CryptographicallyRandomNumber.h:
971         * wtf/OSRandomSource.cpp:
972         (WTF::cryptographicallyRandomValuesFromOS):
973         * wtf/OSRandomSource.h:
974         * wtf/Platform.h:
975         * wtf/RandomNumber.cpp:
976         (WTF::randomNumber):
977         * wtf/RandomNumber.h:
978         * wtf/RandomNumberSeed.h:
979         (WTF::initializeRandomNumberGenerator):
980
981 2013-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
982
983         [GTK] Remove unnecessary GLIB_CHECK_VERSION #ifdefs
984         https://bugs.webkit.org/show_bug.cgi?id=115904
985
986         Reviewed by Martin Robinson.
987
988         * wtf/gobject/GRefPtr.cpp:
989
990 2013-05-09  Darin Adler  <darin@apple.com>
991
992         RenderQuote has giant function for language to quotes map
993         https://bugs.webkit.org/show_bug.cgi?id=115807
994
995         Reviewed by Anders Carlsson.
996
997         * wtf/unicode/CharacterNames.h: Added a couple of character names.
998
999 2013-05-08  Michael Saboff  <msaboff@apple.com>
1000
1001         JSC: There should be a disassembler for ARM Thumb 2
1002         https://bugs.webkit.org/show_bug.cgi?id=115827
1003
1004         Reviewed by Filip Pizlo.
1005
1006         Added a new disassembler for ARMv7 Thumb2 instructions for use by the JSC debugging
1007         and profiling code.  Enabled the disassembler for IOS bulds.
1008
1009         * wtf/Platform.h:
1010
1011 2013-05-08  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1012
1013         Simplify RetainPtrObjectHashTraits
1014         https://bugs.webkit.org/show_bug.cgi?id=115822
1015
1016         Reviewed by Benjamin Poulain.
1017
1018         RetainPtrObjectHashTraits is inherited from SimpleClassHashTraits
1019         instead of GenericHashTraits re-using more shared functionality.
1020
1021         * wtf/RetainPtr.h:
1022         (WTF::RetainPtrObjectHashTraits::emptyValue):
1023
1024 2013-05-08  Anders Carlsson  <andersca@apple.com>
1025
1026         Assert at compile time that we don't pass Objective-C object pointers to adoptCF
1027         https://bugs.webkit.org/show_bug.cgi?id=115823
1028
1029         Reviewed by Geoffrey Garen.
1030
1031         static_assert in adoptCF that the object passed in is not an Objective-C object.
1032         * wtf/RetainPtr.h:
1033
1034 2013-05-08  Anders Carlsson  <andersca@apple.com>
1035
1036         Remove RetainPtr::adoptNS and RetainPtr::adoptCF
1037         https://bugs.webkit.org/show_bug.cgi?id=115817
1038
1039         Reviewed by Jessie Berlin.
1040
1041         These functions are now unused so remove them. The preferred way to create a RetainPtr with an
1042         adopted reference is to use the adoptNS/adoptCF free functions.
1043         
1044         Rewrite the move assignment operators to just call CFRelease explicitly.
1045
1046         * wtf/RetainPtr.h:
1047
1048 2013-05-08  Anders Carlsson  <andersca@apple.com>
1049
1050         Remove ThreadingNone.cpp
1051
1052         Rubber-stamped by Beth Dakin.
1053
1054         ThreadingNone.cpp is empty and not used anywhere.
1055
1056         * wtf/ThreadingNone.cpp: Removed.
1057
1058 2013-05-08  Anders Carlsson  <andersca@apple.com>
1059
1060         Remove HashMap::deleteAllKeys
1061         https://bugs.webkit.org/show_bug.cgi?id=115806
1062
1063         Reviewed by Brent Fulgham.
1064
1065         This function was not used anywhere so let's get rid of it.
1066
1067         * wtf/HashMap.h:
1068
1069 2013-05-08  Eric Carlson  <eric.carlson@apple.com>
1070
1071         [Mac] Inband text tracks are not in track menu on Lion
1072         https://bugs.webkit.org/show_bug.cgi?id=115740
1073
1074         Reviewed by Dean Jackson.
1075
1076         * wtf/Platform.h: AVFOUNDATION_TEXT_TRACK_SUPPORT -> AVFOUNDATION_MEDIA_SELECTION_GROUP
1077
1078 2013-05-08  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1079
1080         HashTraits<RefPtr<P> >::peek should consider empty value
1081         https://bugs.webkit.org/show_bug.cgi?id=115799
1082
1083         Reviewed by Darin Adler.
1084
1085         HashTraits<RefPtr<P> >::peek() should consider passing of empty value which is
1086         raw pointer equal to '0', and return it right away instead of converting it to RefPtr
1087         and invoking get().
1088
1089         * wtf/HashTraits.h:
1090
1091 2013-05-08  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1092
1093         Avoid unnecessary arguments copying inside GenericHashTraits methods
1094         https://bugs.webkit.org/show_bug.cgi?id=115733
1095
1096         Reviewed by Darin Adler.
1097
1098         Before the change both WTF::GenericHashTraits::passOut and WTF::GenericHashTraits::passOut
1099         used to return the given argument always by value and that caused implicit extra
1100         copying of the argument. It was OK as long as argument type T was POD, as compiler
1101         could optimize it, but in case T was a class having non-trivial copy constructor the
1102         extra copying of the argument could not have been obviated.
1103
1104         The proposed solution is to provide overloaded functions that accept non-temporary
1105         values and return them by reference thus avoiding extra copying.
1106
1107         The proposed solution made an impact on the size of libjavascriptcore_efl.so (EFL
1108         release build): the size decreased from 6554992 bytes to 6554560 bytes.
1109
1110         * wtf/HashTraits.h:
1111         (WTF::GenericHashTraits::passOut): 
1112         (WTF::GenericHashTraits::peek):
1113
1114 2013-05-07  Anders Carlsson  <andersca@apple.com>
1115
1116         Remove AlwaysInline.h from WTF
1117         https://bugs.webkit.org/show_bug.cgi?id=115727
1118
1119         Reviewed by Brent Fulgham.
1120
1121         The macro that used to be in AlwaysInline.h is now in Compiler.h so there's no reason
1122         to keep AlwaysInline.h around anymore.
1123
1124         * WTF.vcproj/WTF.vcproj:
1125         * WTF.vcxproj/WTF.vcxproj:
1126         * WTF.vcxproj/WTF.vcxproj.filters:
1127         * WTF.xcodeproj/project.pbxproj:
1128         * wtf/AlwaysInline.h: Removed.
1129         * wtf/BloomFilter.h:
1130         * wtf/FastMalloc.cpp:
1131         * wtf/PassRefPtr.h:
1132         * wtf/dtoa.cpp:
1133         * wtf/gobject/GRefPtr.h:
1134
1135 2013-05-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1136
1137         HashTraits<RefPtr<P> >::PeekType should be raw pointer for better performance
1138         https://bugs.webkit.org/show_bug.cgi?id=115646
1139
1140         Reviewed by Darin Adler.
1141
1142         HashTraits<RefPtr<P> >::PeekType should be raw pointer so that we
1143         can obviate multiple RefPtr copying when invoking HashMap<.., RefPtr>::get()
1144         method.
1145
1146         * wtf/HashTraits.h:
1147
1148 2013-05-06  Cosmin Truta  <ctruta@blackberry.com>
1149
1150         Cherry-pick fixes to bignum from upstream
1151         https://bugs.webkit.org/show_bug.cgi?id=115658
1152
1153         Reviewed by Darin Adler.
1154
1155         Cherry-picked the following change lists:
1156
1157         Fix bug in bignum implementation
1158         http://codereview.chromium.org/13454019
1159
1160         Make VS2005 project files compile without errors
1161         http://codereview.chromium.org/6286135
1162
1163         * wtf/dtoa/bignum.cc:
1164
1165 2013-05-06  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1166
1167         Change HashTraits<RefPtr<P> >::PassOutType to PassRefPtr for better performance
1168         https://bugs.webkit.org/show_bug.cgi?id=115410
1169
1170         Reviewed by Darin Adler.
1171
1172         The type HashTraits<RefPtr<P> >::PassOutType is PassRefPtr now to
1173         avoid extra ref/unrefing on return from HashMap methods that transfer
1174         ownership, such as take.
1175
1176         * wtf/HashTable.h:
1177         (WTF::IdentityHashTranslator::equal):
1178         * wtf/HashTraits.h:
1179
1180 2013-05-05  Anders Carlsson  <andersca@apple.com>
1181
1182         Remove Vector::prepend
1183         https://bugs.webkit.org/show_bug.cgi?id=115618
1184
1185         Reviewed by Geoffrey Garen.
1186
1187         Given the performance characteristics of prepending something to a Vector, not having prepend
1188         will hopefully make developers think about whether prepending is necessary at all. For example,
1189         the functions in HexNumber.h were easily converted to using Vector::append and then Vector::reverse.
1190
1191         * wtf/HexNumber.h:
1192         (WTF::appendUnsignedAsHex):
1193         (WTF::appendUnsignedAsHexFixedSize):
1194         * wtf/Vector.h:
1195         (Vector):
1196
1197 2013-05-05  Anders Carlsson  <andersca@apple.com>
1198
1199         Remove the Vector::append overload that takes a Vector
1200         https://bugs.webkit.org/show_bug.cgi?id=115535
1201
1202         Reviewed by Andreas Kling.
1203
1204         The Vector::append overload that takes a Vector conflicts with rvalues in C++11, so remove it and
1205         replace calls to it with calls to appendVector.
1206
1207         * wtf/Vector.h:
1208         (Vector):
1209
1210 2013-05-04  Andreas Kling  <akling@apple.com>
1211
1212         Unreviewed, rolling out r149563.
1213         http://trac.webkit.org/changeset/149563
1214         https://bugs.webkit.org/show_bug.cgi?id=115587
1215
1216         Broke LLInt build.
1217
1218         * wtf/text/StringImpl.h:
1219         (StringImpl):
1220
1221 2013-05-04  Xan Lopez  <xlopez@igalia.com>
1222
1223         No need to declare JSC::LLInt::Data as friend class of WTF::StringImpl
1224         https://bugs.webkit.org/show_bug.cgi?id=115587
1225
1226         Reviewed by Andreas Kling.
1227
1228         No need to declare LLInt::Data as friend class of WTF::StringImpl,
1229         it does not use any private method/data member of the latter.
1230
1231         * wtf/text/StringImpl.h:
1232         (StringImpl):
1233
1234 2013-05-03  Brent Fulgham  <bfulgham@webkit.org>
1235
1236         Make ThreadFunctionInvocation fast allocated.
1237         https://bugs.webkit.org/show_bug.cgi?id=115552
1238
1239         Reviewed by Benjamin Poulain.
1240
1241         * wtf/ThreadFunctionInvocation.h:
1242         (ThreadFunctionInvocation): Make Fast-allocated.
1243
1244 2013-05-03  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1245
1246         Remove WTF::ListRefPtr class
1247         https://bugs.webkit.org/show_bug.cgi?id=115516
1248
1249         Reviewed by Anders Carlsson.
1250
1251         ListRefPtr was used only by FontFamily class, besides it strongly depended
1252         on FontFamily class semantics which made it non-generic and inappropriate
1253         for being present inside WTF.
1254
1255         This patch removes WTF::ListRefPtr class and moves its the functionality
1256         into FontFamily class.
1257
1258         * GNUmakefile.list.am:
1259         * WTF.pro:
1260         * WTF.vcproj/WTF.vcproj:
1261         * WTF.vcxproj/WTF.vcxproj:
1262         * WTF.vcxproj/WTF.vcxproj.filters:
1263         * WTF.xcodeproj/project.pbxproj:
1264         * wtf/CMakeLists.txt:
1265         * wtf/Forward.h:
1266         (WTF):
1267         * wtf/ListRefPtr.h: Removed.
1268
1269 2013-05-02  Brent Fulgham  <bfulgham@webkit.org>
1270
1271         [WinCairo] Unreviewed build fix.
1272
1273         * WTF.vcxproj/WTF.vcxproj: Use WinCairo FeatureDefines
1274         * WTF.vcxproj/WTF.vcxproj.filters: Use WinCairo FeatureDefines
1275         * WTF.vcxproj/WTFDebugWinCairo.props: Added.
1276         * WTF.vcxproj/WTFReleaseWinCairo.props: Added.
1277
1278 2013-05-02  Brent Fulgham  <bfulgham@webkit.org>
1279
1280         [Windows, WinCairo] Fix crash in fast/js/create-lots-of-workers.html
1281         https://bugs.webkit.org/show_bug.cgi?id=115130
1282
1283         Reviewed by Tim Horton.
1284
1285         Windows is suffering from mismatched allocation/deallocation
1286         between the system allocator and fastMalloc/fastFree.  By turning
1287         off the global switch to fastMalloc, only classes specified to
1288         honor fastMalloc/fastFree are affected, and other memory allocation
1289         and freeing is done with consistent library calls.
1290
1291         * wtf/Platform.h: Deactivate ENABLE_GLOBAL_FASTMALLOC_NEW for
1292         the Windows build.
1293
1294 2013-05-02  Eric Carlson  <eric.carlson@apple.com>
1295
1296         Caption menu does not include in-band captions
1297         https://bugs.webkit.org/show_bug.cgi?id=111934
1298
1299         Reviewed by Dean Jackson.
1300
1301         * wtf/Platform.h: Define HAVE_AVFOUNDATION_TEXT_TRACK_SUPPORT on 10.8 and higher. Added
1302             HAVE_AVFOUNDATION_LEGIBLE_OUTPUT_SUPPORT.
1303
1304 2013-05-02  Brent Fulgham  <bfulgham@webkit.org>
1305
1306         Make BloomFilter fast allocated.
1307         https://bugs.webkit.org/show_bug.cgi?id=115519
1308
1309         Reviewed by Benjamin Poulain.
1310
1311         * wtf/BloomFilter.h:
1312         (BloomFilter): Make BloomFilter Fast-allocated.
1313
1314 2013-05-01  Michael Saboff  <msaboff@apple.com>
1315
1316         FastMalloc.cpp should use system defined page size instead of literal constant
1317         https://bugs.webkit.org/show_bug.cgi?id=115502
1318
1319         Reviewed by Geoffrey Garen.
1320
1321         Updated kPageShift to be PAGE_SHIFT for Mac.  Changed kMaxSize to be fixed at 32K.
1322         Updated kNumClasses for 4K and 16K page sizes.
1323
1324         * wtf/FastMalloc.cpp:
1325         kPageShift: Changed this to be PAGE_SHIFT on mac.
1326
1327 2013-05-01  Roger Fong  <roger_fong@apple.com>
1328
1329         Set Path in makefile for AppleWin.
1330
1331         * WTF.vcxproj/WTF.make:
1332
1333 2013-05-01  Anders Carlsson  <andersca@apple.com>
1334
1335         Add FunctionDispatcher class and make RunLoop derive from it
1336         https://bugs.webkit.org/show_bug.cgi?id=115480
1337
1338         Reviewed by Sam Weinig.
1339
1340         Add FunctionDispatcher files.
1341
1342         * WTF.pro:
1343         * WTF.vcproj/WTF.vcproj:
1344         * WTF.vcxproj/WTF.vcxproj:
1345         * WTF.xcodeproj/project.pbxproj:
1346         * wtf/FunctionDispatcher.cpp: Added.
1347         (WTF::FunctionDispatcher::FunctionDispatcher):
1348         (WTF::FunctionDispatcher::~FunctionDispatcher):
1349         * wtf/FunctionDispatcher.h: Added.
1350
1351 2013-05-01  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
1352
1353         [Qt][Win] Fix build after r149416.
1354         https://bugs.webkit.org/show_bug.cgi?id=115474
1355
1356         Reviewed by Anders Carlsson.
1357
1358         * WTF.pro:
1359         * wtf/threads/BinarySemaphore.h:
1360         (BinarySemaphore):
1361
1362 2013-05-01  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
1363
1364         [Qt] Unreviewed buildfix after r149416.
1365
1366         * WTF.pro:
1367
1368 2013-04-30  Anders Carlsson  <andersca@apple.com>
1369
1370         Remove the WebKit2 BinarySemaphore class
1371         https://bugs.webkit.org/show_bug.cgi?id=115458
1372
1373         Reviewed by Benjamin Poulain.
1374
1375         * wtf/Forward.h:
1376         Add BinarySemaphore forward declaration.
1377
1378         * wtf/threads/BinarySemaphore.h:
1379         Add WTF_EXPORT_PRIVATE to declarations.
1380
1381 2013-04-30  Commit Queue  <rniwa@webkit.org>
1382
1383         Unreviewed, rolling out r149408.
1384         http://trac.webkit.org/changeset/149408
1385         https://bugs.webkit.org/show_bug.cgi?id=115453
1386
1387         Broke Windows Build (Requested by bfulgham on #webkit).
1388
1389         * wtf/Platform.h:
1390
1391 2013-04-30  Brent Fulgham  <bfulgham@webkit.org>
1392
1393         [Windows, WinCairo] Fix crash in fast/js/create-lots-of-workers.html
1394         https://bugs.webkit.org/show_bug.cgi?id=115130
1395
1396         Reviewed by Tim Horton.
1397
1398         Windows is suffering from mismatched allocation/deallocation
1399         between the system allocator and fastMalloc/fastFree.  By turning
1400         off the global switch to fastMalloc, only classes specified to
1401         honor fastMalloc/fastFree are affected, and other memory allocation
1402         and freeing is done with consistent library calls.
1403
1404         * wtf/Platform.h: Deactivate ENABLE_GLOBAL_FASTMALLOC_NEW for
1405         the Windows build.
1406
1407 2013-04-30  Commit Queue  <rniwa@webkit.org>
1408
1409         Unreviewed, rolling out r149349 and r149354.
1410         http://trac.webkit.org/changeset/149349
1411         http://trac.webkit.org/changeset/149354
1412         https://bugs.webkit.org/show_bug.cgi?id=115444
1413
1414          The Thumb version of compileSoftModulo make invalid use of
1415         registers (Requested by benjaminp on #webkit).
1416
1417         * wtf/Platform.h:
1418
1419 2013-04-30  Darin Adler  <darin@apple.com>
1420
1421         [Mac] Make adoptNS faster on platforms without garbage collection by skipping a CFRetain/NSRelease pair
1422         https://bugs.webkit.org/show_bug.cgi?id=115424
1423
1424         Reviewed by Eric Carlson.
1425
1426         * wtf/RetainPtr.h:
1427         (WTF::adoptNSReference): When OBJC_NO_GC is set, make this an empty function, because in that case
1428         CFRetain and -[NSObject retain] are the same thing and there is no need to call CFRetain and
1429         -[NSObject release] to adopt an Objective-C object.
1430
1431 2013-04-30  Anders Carlsson  <andersca@apple.com>
1432
1433         String::isolatedCopy() can avoid a copy if the original is a temporary
1434         https://bugs.webkit.org/show_bug.cgi?id=115425
1435
1436         Reviewed by Darin Adler.
1437
1438         * wtf/Compiler.h:
1439         Add WTF_COMPILER_SUPPORTS_CXX_REFERENCE_QUALIFIED_FUNCTIONS define.
1440
1441         * wtf/text/WTFString.cpp:
1442         (WTF::String::isolatedCopy):
1443         * wtf/text/WTFString.h:
1444         If COMPILER_SUPPORTS(CXX_REFERENCE_QUALIFIED_FUNCTIONS) is true, add two overloads of String::isolatedCopy().
1445         One is used if *this is an lvalue, and one is used if *this is an rvalue. In the latter case, we know that the original
1446         String object is a temporary and will be going away, so if it's safe to send it to another thread (if it's not an AtomicString,
1447         and if it's refcount is 1), then we can just steal the StringImpl from the original and avoid a copy altogether.
1448
1449 2013-04-30  Zalan Bujtas  <zalan@apple.com>
1450
1451         Animations fail to start on http://www.google.com/insidesearch/howsearchworks/thestory/
1452         https://bugs.webkit.org/show_bug.cgi?id=111244
1453
1454         Reviewed by David Kilzer.
1455         
1456         Enable performance.now() as a minimal subset of Web Timing API. 
1457         It returns DOMHighResTimeStamp, a monotonically increasing value representing the 
1458         number of milliseconds from the start of the navigation of the current document.
1459         JS libraries use this API to check against the requestAnimationFrame() timestamp.
1460
1461         * wtf/FeatureDefines.h:
1462
1463 2013-04-29  Cosmin Truta  <ctruta@blackberry.com>
1464
1465         [ARM] Expand the use of integer division
1466         https://bugs.webkit.org/show_bug.cgi?id=115138
1467
1468         Reviewed by Benjamin Poulain.
1469
1470         * wtf/Platform.h: Added ENABLE_ARM_INTEGER_DIV.
1471
1472 2013-04-29  Anders Carlsson  <andersca@apple.com>
1473
1474         It should be an error to use adoptPtr with RefCounted subclasses
1475         https://bugs.webkit.org/show_bug.cgi?id=115389
1476
1477         Reviewed by Benjamin Poulain.
1478
1479         * wtf/PassOwnPtr.h:
1480         (WTF::adoptPtr):
1481         Add COMPILE_ASSERTs.
1482
1483 2013-04-29  Patrick Gansterer  <paroga@webkit.org>
1484
1485         [WIN] Add workaround for UNUSED_PARAM()
1486         https://bugs.webkit.org/show_bug.cgi?id=115350
1487
1488         Reviewed by Andreas Kling.
1489
1490         r147882 added an workaround for the MSVC compiler on Windows CE.
1491         Extend this workaround to whole MSVC compiler, since the same
1492         problem occurs with the Visual Studio 10 compiler too.
1493
1494         * wtf/UnusedParam.h:
1495
1496 2013-04-29  Patrick Gansterer  <paroga@webkit.org>
1497
1498         [WIN] Add WTF_USE_IMLANG_FONT_LINK2
1499         https://bugs.webkit.org/show_bug.cgi?id=115198
1500
1501         Reviewed by Andreas Kling.
1502
1503         * wtf/Platform.h:
1504
1505 2013-04-29  Patrick Gansterer  <paroga@webkit.org>
1506
1507         Define USE(ICU_UNICODE) if USE(WCHAR_UNICODE) is false
1508         https://bugs.webkit.org/show_bug.cgi?id=115349
1509
1510         Reviewed by Andreas Kling.
1511
1512         Since we support only ICU and WCHAR as Unicode backend (ICU is the default)
1513         automatically use ICU if WCHAR was not selected via compiler defines.
1514
1515         * wtf/Platform.h:
1516
1517 2013-04-29  Patrick Gansterer  <paroga@webkit.org>
1518
1519         Build fix for WinCE after r148888 and r149097
1520         https://bugs.webkit.org/show_bug.cgi?id=115168
1521
1522         Reviewed by Anders Carlsson.
1523
1524         When using compiler intrinsics on Windows CE the compiler complains
1525         about wrong linkage specification of replaced CRT functions defined
1526         in math.h. This is because the compiler has intrinsics for this
1527         functions defined, and requires them to have extern "C" linkage.
1528
1529         * wtf/MathExtras.h:
1530         (wtf_atan2): Added extern "C" to function signature.
1531         (wtf_fmod): Ditto.
1532         (wtf_pow): Ditto.
1533
1534 2013-04-29  Carlos Garcia Campos  <cgarcia@igalia.com>
1535
1536         Unreviewed. Fix make distcheck.
1537
1538         * GNUmakefile.list.am: Add missing header file to compilation.
1539
1540 2013-04-27  Darin Adler  <darin@apple.com>
1541
1542         Move from constructor and member function adoptCF/NS to free function adoptCF/NS.
1543         https://bugs.webkit.org/show_bug.cgi?id=115307
1544
1545         Reviewed by Geoffrey Garen.
1546
1547         * wtf/RunLoopTimerCF.cpp:
1548         (WTF::RunLoopTimerBase::start):
1549         * wtf/SchedulePair.h:
1550         (WTF::SchedulePair::SchedulePair):
1551         * wtf/SchedulePairMac.mm:
1552         (WTF::SchedulePair::SchedulePair):
1553         * wtf/unicode/icu/CollatorICU.cpp:
1554         (WTF::Collator::userDefault):
1555         Use adoptCF free function.
1556
1557 2013-04-26  Geoffrey Garen  <ggaren@apple.com>
1558
1559         Filled out more cases of branch folding in bytecode when emitting expressions into a branching context
1560         https://bugs.webkit.org/show_bug.cgi?id=115057
1561
1562         Reviewed by Filip Pizlo.
1563
1564         Added a helper constructor for TriState so clients can make one without
1565         branching or making assumptions about the integer values of TriStates.
1566
1567         * wtf/TriState.h:
1568         (WTF::triState):
1569         (WTF):
1570
1571 2013-04-26  Roger Fong  <roger_fong@apple.com>
1572
1573         Make Apple Windows VS2010 build results into and get dependencies from __32 suffixed folders.
1574         Make the DebugSuffix configuration use _debug dependencies.
1575
1576         * WTF.vcxproj/WTF.make:
1577         * WTF.vcxproj/WTF.vcxproj:
1578         * WTF.vcxproj/WTFCommon.props:
1579         * WTF.vcxproj/WTFDebug.props:
1580         * WTF.vcxproj/WTFGenerated.make:
1581         * WTF.vcxproj/WTFGenerated.vcxproj:
1582         * WTF.vcxproj/WTFGeneratedCommon.props:
1583         * WTF.vcxproj/WTFGeneratedDebug.props:
1584         * WTF.vcxproj/WTFGeneratedProduction.props:
1585         * WTF.vcxproj/WTFGeneratedRelease.props:
1586         * WTF.vcxproj/WTFProduction.props:
1587         * WTF.vcxproj/WTFRelease.props:
1588         * WTF.vcxproj/build-generated-files.sh:
1589         * WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:
1590         (react_to_vsprops_changes):
1591
1592 2013-04-26  Martin Robinson  <mrobinson@igalia.com>
1593
1594         Remove the remaining Skia #ifdefs
1595         https://bugs.webkit.org/show_bug.cgi?id=114886
1596
1597         Reviewed by Benjamin Poulain.
1598
1599         * wtf/Platform.h:
1600
1601 2013-04-26  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1602
1603         Add move semantics to RefPtr
1604         https://bugs.webkit.org/show_bug.cgi?id=115033
1605
1606         Reviewed by Anders Carlsson.
1607
1608         Add move constructors and move assignment operators to RefPtr when
1609         COMPILER_SUPPORTS(CXX_RVALUE_REFERENCES).
1610         This obviates unnecessary reffing/ureffing when RefPtr is created
1611         or assigned from rvalue references.
1612
1613         * wtf/RefPtr.h:
1614         (RefPtr):
1615         (WTF::RefPtr::RefPtr):
1616         (WTF::RefPtr::operator=):
1617
1618 2013-04-26  Andreas Kling  <akling@apple.com>
1619
1620         Remove wxWebKit from WTF.
1621         <http://webkit.org/b/115249>
1622
1623         Reviewed by Antti Koivisto.
1624
1625         * wscript: Removed.
1626         * wtf/ArrayBufferView.h:
1627         (ArrayBufferView):
1628         * wtf/CurrentTime.cpp:
1629         * wtf/DisallowCType.h:
1630         * wtf/ExportMacros.h:
1631         * wtf/FeatureDefines.h:
1632         * wtf/Platform.h:
1633         * wtf/text/WTFString.h:
1634         (String):
1635         * wtf/wx/MainThreadWx.cpp: Removed.
1636         * wtf/wx/StringWx.cpp: Removed.
1637
1638 2013-04-25  Filip Pizlo  <fpizlo@apple.com>
1639
1640         Unreviewed, roll out http://trac.webkit.org/changeset/148999
1641         It broke http://kripken.github.io/ammo.js/examples/new/ammo.html
1642
1643         * wtf/TriState.h:
1644
1645 2013-04-25  Oliver Hunt  <oliver@apple.com>
1646
1647         Fix 32bit build
1648
1649         * wtf/StackBounds.cpp:
1650         (WTF::StackBounds::initialize):
1651
1652 2013-04-25  Oliver Hunt  <oliver@apple.com>
1653
1654         Stack guards are too conservative
1655         https://bugs.webkit.org/show_bug.cgi?id=115147
1656
1657         Reviewed by Mark Hahnenberg.
1658
1659         Use getrlimit on darwin to get the stack size for the main thread.
1660
1661         * wtf/StackBounds.cpp:
1662         (WTF::StackBounds::initialize):
1663
1664 2013-04-25  Andreas Kling  <akling@apple.com>
1665
1666         Remove ENABLE(PARSED_STYLE_SHEET_CACHING) and make it always-on.
1667
1668         Rubber-stamped by Anders Koivisto.
1669
1670         * wtf/FeatureDefines.h:
1671
1672 2013-04-25  peavo@outlook.com  <peavo@outlook.com>
1673
1674         [Windows] Compile fix.
1675         https://bugs.webkit.org/show_bug.cgi?id=115170
1676
1677         Reviewed by Filip Pizlo.
1678
1679         Forward declare function, instead of including intrin.h.
1680
1681         * wtf/Atomics.h:
1682
1683 2013-04-25  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1684
1685         Use std::move in AtomicString
1686         https://bugs.webkit.org/show_bug.cgi?id=115102
1687
1688         Reviewed by Anders Carlsson.
1689
1690         Use std::move in AtomicString instead of direct casting to rvalue references.
1691
1692         * wtf/text/AtomicString.h:
1693         (AtomicString):
1694         (WTF::AtomicString::AtomicString):
1695         (WTF::AtomicString::operator=):
1696
1697 2013-04-25  Patrick Gansterer  <paroga@webkit.org>
1698
1699         Unreviewed WinCE build fix after r148888.
1700
1701         * wtf/Atomics.h: WinCE version of intrin.h is called cmnintrin.h.
1702
1703 2013-04-24  Roger Fong  <roger_fong@apple.com>
1704
1705         Have VS2010 WebKit solution look in WebKit_Libraries/lib32 for dependencies.
1706
1707         * WTF.vcxproj/build-generated-files.sh:
1708
1709 2013-04-24  Benjamin Poulain  <benjamin@webkit.org>
1710
1711         Use post-branch store for RefCountedBase::derefBase
1712         https://bugs.webkit.org/show_bug.cgi?id=115078
1713
1714         Reviewed by Andreas Kling.
1715
1716         * wtf/RefCounted.h:
1717         (WTF::RefCountedBase::derefBase): This makes the assembly easier to follow.
1718
1719 2013-04-23  Geoffrey Garen  <ggaren@apple.com>
1720
1721         Filled out more cases of branch folding in bytecode when emitting expressions into a branching context
1722         https://bugs.webkit.org/show_bug.cgi?id=115057
1723
1724         Reviewed by Filip Pizlo.
1725
1726         Added a helper constructor for TriState so clients can make one without
1727         branching or making assumptions about the integer values of TriStates.
1728
1729         * wtf/TriState.h:
1730         (WTF::triState):
1731         (WTF):
1732
1733 2013-04-23  Roger Fong  <roger_fong@apple.com>
1734
1735         AppleWin build fix.
1736
1737         * WTF.vcproj/WTF.vcproj:
1738
1739 2013-04-23  Benjamin Poulain  <bpoulain@apple.com>
1740
1741         Remove unused code of RefCounted after chromium removal
1742         https://bugs.webkit.org/show_bug.cgi?id=115009
1743
1744         Reviewed by Ryosuke Niwa.
1745
1746         * wtf/RefCounted.h:
1747         (WTF::RefCountedBase::refCount):
1748         (RefCountedBase):
1749         It looks like addressOfCount() is no longer needed.
1750         Also change the type back to unsigned as it make more sense.
1751
1752 2013-04-23  David Kilzer  <ddkilzer@apple.com>
1753
1754         RetainPtr.h should compile with -Wshorten-64-to-32
1755         <http://webkit.org/b/115047>
1756
1757         Reviewed by Anders Carlsson.
1758
1759         Fixes the following warning:
1760
1761             RetainPtr.h:318:20: error: implicit conversion loses integer precision: 'CFHashCode' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]
1762                         return CFHash(o.get());
1763                         ~~~~~~ ^~~~~~~~~~~~~~~
1764
1765         * wtf/RetainPtr.h:
1766         (WTF::RetainPtrObjectHash::hash): Cast return value of CFHash()
1767         to unsigned.  This has no effect on 32-bit architectures, but
1768         takes the lower 32-bits of the CFHashCode (unsigned long) on
1769         64-bit architectures, which is what happens implicitly now.
1770
1771 2013-04-22  Patrick Gansterer  <paroga@webkit.org>
1772
1773         [CMake] Move NullPtr.cpp from PlatformWinCE.cmake to CMakeLists.txt
1774         https://bugs.webkit.org/show_bug.cgi?id=114557
1775
1776         Reviewed by Laszlo Gombos.
1777
1778         This file is not specific to Windwos CE. Move it the the general
1779         CMakeLists.txt so other ports can use it to. It does not affect
1780         ports which do not need it, since it contains a preprocessor guard.
1781
1782         * wtf/CMakeLists.txt:
1783         * wtf/PlatformWinCE.cmake:
1784
1785 2013-04-22  Benjamin Poulain  <benjamin@webkit.org>
1786
1787         Remove the memory instrumentation code
1788         https://bugs.webkit.org/show_bug.cgi?id=114931
1789
1790         Reviewed by Andreas Kling.
1791
1792         On Mac x86_64, the code removal cause the binary to be
1793         9224 bytes smaller.
1794
1795         * GNUmakefile.list.am:
1796         * WTF.pro:
1797         * WTF.vcproj/WTF.vcproj:
1798         * WTF.vcxproj/WTF.vcxproj:
1799         * WTF.vcxproj/WTF.vcxproj.filters:
1800         * WTF.xcodeproj/project.pbxproj:
1801         * wtf/CMakeLists.txt:
1802         * wtf/Forward.h:
1803         * wtf/ListHashSet.h:
1804         (ListHashSet):
1805         (ListHashSetNodeAllocator):
1806         (WTF::ListHashSetNodeAllocator::pool):
1807         (WTF::ListHashSetNodeAllocator::pastPool):
1808         * wtf/MemoryInstrumentation.cpp: Removed.
1809         * wtf/MemoryInstrumentation.h: Removed.
1810         * wtf/MemoryInstrumentationArrayBufferView.h: Removed.
1811         * wtf/MemoryInstrumentationHashCountedSet.h: Removed.
1812         * wtf/MemoryInstrumentationHashMap.h: Removed.
1813         * wtf/MemoryInstrumentationHashSet.h: Removed.
1814         * wtf/MemoryInstrumentationListHashSet.h: Removed.
1815         * wtf/MemoryInstrumentationSequence.h: Removed.
1816         * wtf/MemoryInstrumentationString.h: Removed.
1817         * wtf/MemoryInstrumentationVector.h: Removed.
1818         * wtf/MemoryObjectInfo.h: Removed.
1819         * wtf/text/AtomicString.h:
1820         * wtf/text/StringImpl.h:
1821         (WTF::StringImpl::isASCIILiteral):
1822         * wtf/text/WTFString.h:
1823
1824 2013-04-22  David Kilzer  <ddkilzer@apple.com>
1825
1826         StringImpl.h should compile with -Wshorten-64-to-32
1827         <http://webkit.org/b/114970>
1828
1829         Reviewed by Darin Adler.
1830
1831         Fixes the following warnings with -Wshorten-64-to-32:
1832
1833             StringImpl.h:317:25: error: implicit conversion loses integer precision: 'uintptr_t' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]
1834                     unsigned hash = reinterpret_cast<uintptr_t>(this);
1835                              ~~~~   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1836
1837         * wtf/text/StringImpl.h:
1838         (WTF::StringImpl::StringImpl): Add static_cast<uint32_t>() to
1839         formalize taking the lower 32-bits of the pointer value on
1840         64-bit architectures.
1841
1842 2013-04-22  Andreas Kling  <akling@apple.com>
1843
1844         Shrink baseline size of WTF::Vector on 64-bit by switching to unsigned capacity and size.
1845         <http://webkit.org/b/97268>
1846         <rdar://problem/12376519>
1847
1848         Reviewed by Sam Weinig.
1849
1850         Shrink Vector by 8 bytes on 64-bit by using 32-bit capacity and size.
1851         Vector now inherits from VectorBuffer instead of having a VectorBuffer member;
1852         this is necessary for m_size to fall into the padding after the base class members.
1853
1854         The WTF::Vector API still uses size_t.
1855
1856         Based on Blink r148313 by <cevans@chromium.org>.
1857
1858         * wtf/SizeLimits.cpp:
1859         * wtf/Vector.h:
1860         (WTF::VectorBufferBase::allocateBuffer):
1861         (WTF::VectorBufferBase::tryAllocateBuffer):
1862         (VectorBufferBase):
1863         (WTF::VectorBuffer::shouldReallocateBuffer):
1864         (Vector):
1865         (WTF::Vector::Vector):
1866         (WTF::Vector::capacity):
1867         (WTF::Vector::at):
1868         (WTF::Vector::data):
1869         (WTF::Vector::swap):
1870         (WTF::::Vector):
1871         (WTF::::reserveCapacity):
1872         (WTF::::tryReserveCapacity):
1873         (WTF::::reserveInitialCapacity):
1874         (WTF::::shrinkCapacity):
1875         (WTF::::releaseBuffer):
1876
1877 2013-04-21  Filip Pizlo  <fpizlo@apple.com>
1878
1879         Memory barrier support should also ensure that we always do a compiler fence
1880         https://bugs.webkit.org/show_bug.cgi?id=114934
1881
1882         Reviewed by Michael Saboff.
1883         
1884         This is a cherry-pick merge of the WTF part of r148836 from the dfgFourthTier
1885         branch. It fixes a memory ordering bug that is likely asymptomatic, but
1886         nonetheless real: TCSpinLock expects that using a memoryBarrierBeforeUnlock()
1887         prior to setting lockword_ to 0 will ensure that the assignment to lockword_
1888         won't get floated above any of the stores in the critical section. While that
1889         memory barrier does indeed do the right thing on ARM, it doesn't do the right
1890         thing on other architectures: it turns into empty code that the compiler blows
1891         away, which is fine for the hardware since X86 won't reorder that store - but
1892         it's not fine for the compiler, which may still do its own reorderings.
1893         
1894         The WTF part of r148836 fixes this by using a compiler fence: an empty asm
1895         volatile block that is marked as clobbering memory.
1896         
1897         Instead of doing a separate surgical fix in trunk, I decided to merge the
1898         whole WTF change over, to make merging easier in the future.
1899         
1900         Performance testing of this change in dfgFourthTier showed no regression.
1901
1902         * wtf/Atomics.h:
1903         (WTF::compilerFence):
1904         (WTF::armV7_dmb):
1905         (WTF::armV7_dmb_st):
1906         (WTF::loadLoadFence):
1907         (WTF::loadStoreFence):
1908         (WTF::storeLoadFence):
1909         (WTF::storeStoreFence):
1910         (WTF::memoryBarrierAfterLock):
1911         (WTF::memoryBarrierBeforeUnlock):
1912         (WTF::x86_mfence):
1913
1914 2013-04-22  David Kilzer  <ddkilzer@apple.com>
1915
1916         WTF::AtomicString::find() should take unsigned 'start' argument
1917         <http://webkit.org/b/114958>
1918
1919         Reviewed by Darin Adler.
1920
1921         Fixes the following warnings with -Wshorten-64-to-32:
1922
1923             AtomicString.h:113:76: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]
1924                 size_t find(UChar c, size_t start = 0) const { return m_string.find(c, start); }
1925                                                                       ~~~~~~~~         ^~~~~
1926             AtomicString.h:115:35: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]
1927                     { return m_string.find(s, start, caseSentitive); }
1928                              ~~~~~~~~         ^~~~~
1929             AtomicString.h:117:35: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]
1930                     { return m_string.find(s, start, caseSentitive); }
1931                              ~~~~~~~~         ^~~~~
1932
1933         * wtf/text/AtomicString.h:
1934         (WTF::AtomicString::find): Change type of 'start' argument from
1935         size_t to unsigned.
1936
1937 2013-04-21  Benjamin Poulain  <benjamin@webkit.org>
1938
1939         Improve StringImpl code density for older ARM hardware
1940         https://bugs.webkit.org/show_bug.cgi?id=114898
1941
1942         Reviewed by Geoffrey Garen.
1943
1944         Reduce the number of instructions needed for StringImpl::deref
1945         on older ARM hardware.
1946
1947         The extra indirection should have a negligible impact on x86_64.
1948
1949         * wtf/text/StringImpl.cpp:
1950         (WTF::StringImpl::destroy):
1951         * wtf/text/StringImpl.h:
1952         (StringImpl):
1953         (WTF::StringImpl::deref):
1954
1955 2013-04-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1956
1957         LLint should be able to use x87 instead of SSE for floating pointer
1958         https://bugs.webkit.org/show_bug.cgi?id=112239
1959
1960         Reviewed by Filip Pizlo.
1961
1962         Disable GTK workaround now that LLInt does not require SSE2.
1963
1964         * wtf/Platform.h:
1965
1966 2013-04-19  Roger Fong  <roger_fong@apple.com>
1967
1968         Remove uses of WebKit_Source from AppleWin build in WTF.
1969
1970         * WTF.vcxproj/WTF.make:
1971         * WTF.vcxproj/copy-files.cmd:
1972         * WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:
1973         (react_to_vsprops_changes):
1974         (react_to_webkit1_interface_changes):
1975
1976 2013-04-19  Benjamin Poulain  <benjamin@webkit.org>
1977
1978         Remove the declaration of MemoryObjectInfo from StringImpl
1979         https://bugs.webkit.org/show_bug.cgi?id=114788
1980
1981         Reviewed by Andreas Kling.
1982
1983         * wtf/text/StringImpl.h: The declaration is an other left over from chromium.
1984
1985 2013-04-19  Benjamin Poulain  <benjamin@webkit.org>
1986
1987         Make StringImpl::cost const
1988         https://bugs.webkit.org/show_bug.cgi?id=114790
1989
1990         Reviewed by Andreas Kling.
1991
1992         * wtf/text/StringImpl.h:
1993         (WTF::StringImpl::cost):
1994
1995 2013-04-19  Roger Fong  <roger_fong@apple.com>
1996
1997         Unreviewed. WebKit_Source is incorrectly set.
1998
1999         * WTF.vcxproj/WTF.make:
2000
2001 2013-04-19  Alberto Garcia  <agarcia@igalia.com>
2002
2003         OSAllocatorPosix: fix build warnings about unused parameters in QNX
2004         https://bugs.webkit.org/show_bug.cgi?id=114859
2005
2006         Reviewed by Carlos Garcia Campos.
2007
2008         * wtf/OSAllocatorPosix.cpp:
2009         (WTF::OSAllocator::reserveUncommitted):
2010
2011 2013-04-19  Dan Beam  <dbeam@chromium.org>
2012
2013         Remove unmaintained feature REQUEST_AUTOCOMPLETE
2014         https://bugs.webkit.org/show_bug.cgi?id=114846
2015
2016         Reviewed by Kent Tamura.
2017
2018         * wtf/FeatureDefines.h: Remove REQUEST_AUTOCOMPLETE as a feature definition.
2019
2020 2013-04-18  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
2021
2022         Speculative build fix for Qt Mountain Lion Release after r148639.
2023         https://bugs.webkit.org/show_bug.cgi?id=114793
2024
2025         Reviewed by Michael Saboff.
2026
2027         * wtf/CurrentTime.cpp:
2028
2029 2013-04-17  Mark Lam  <mark.lam@apple.com>
2030
2031         Added currentCPUTime() and currentCPUTimeMS().
2032         https://bugs.webkit.org/show_bug.cgi?id=114577.
2033
2034         Reviewed by Geoffrey Garen.
2035
2036         The currentCPUTime() implementation came from the old TimeoutChecker.cpp.
2037
2038         * wtf/CurrentTime.cpp:
2039         (WTF::currentCPUTime):
2040         (WTF::currentCPUTimeMS):
2041         * wtf/CurrentTime.h:
2042
2043 2013-04-17  Ryosuke Niwa  <rniwa@webkit.org>
2044
2045         REGRESSION(r148584): WebKit nightly builds don't load any page
2046         https://bugs.webkit.org/show_bug.cgi?id=114752
2047
2048         Reviewed by Anders Carlsson.
2049
2050         We can't use C++ style (//) comments in Platform.h because WebKit2/DerivedSource.make doesn't know
2051         how to strip it to be merged with *.sb.in to generate *.sb files. Specifically, we have:
2052         
2053         # Some versions of clang incorrectly strip out // comments in c89 code.
2054         # Use -traditional as a workaround, but only when needed since that causes
2055         # other problems with later versions of clang.
2056         ifeq ($(shell echo '//x' | $(CC) -E -P -x c -std=c89 - | grep x),)
2057         TEXT_PREPROCESSOR_FLAGS=-E -P -x c -traditional -w
2058         else
2059         TEXT_PREPROCESSOR_FLAGS=-E -P -x c -std=c89 -w
2060         endif
2061
2062         * wtf/Platform.h:
2063
2064 2013-04-17  Brent Fulgham  <bfulgham@webkit.org>
2065
2066         [Windows, WinCairo] Remove Include Settings for Pthreads from WTF
2067         https://bugs.webkit.org/show_bug.cgi?id=114694
2068
2069         Reviewed by Ryosuke Niwa.
2070
2071         * WTF.vcproj/WTFCommon.vsprops: Remove pthread search path.
2072         * WTF.vcxproj/WTFCommon.props: Remove pthread search path.
2073         * wtf/FastMalloc.cpp: Guard pthread.h include for non-pthread
2074         builds.
2075
2076 2013-04-16  Oliver Hunt  <oliver@apple.com>
2077
2078         Harden FastMalloc against partial pointer overflows
2079         https://bugs.webkit.org/show_bug.cgi?id=114716
2080
2081         Reviewed by Gavin Barraclough.
2082
2083         Bite the bullet and perform object alignment checks on free.
2084         malloc/free micro benchmark shows a regression, but real
2085         benchmarks don't.  There's a little code motion in this avoid
2086         taking too much of a performance hit.  In addition to the
2087         alignment check we also validate the containing span as
2088         we've already taken the hit of finding it.
2089
2090         * wtf/FastMalloc.cpp:
2091         (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
2092
2093 2013-04-16  Sam Weinig  <sam@webkit.org>
2094
2095         Fix fallout after r148545.
2096
2097         * wtf/Platform.h:
2098         Move Platform defines that were incorrectly in WebCore, into Platform.h
2099
2100 2013-04-15  Commit Queue  <rniwa@webkit.org>
2101
2102         Unreviewed, rolling out r148488.
2103         http://trac.webkit.org/changeset/148488
2104         https://bugs.webkit.org/show_bug.cgi?id=114660
2105
2106         Roll back in r148462 since it was a false positive. (Requested
2107         by rniwa on #webkit).
2108
2109         * wtf/FastMalloc.cpp:
2110         (WTF):
2111         (WTF::setThreadHeap):
2112         (WTF::TCMalloc_ThreadCache::GetThreadHeap):
2113         (WTF::TCMalloc_ThreadCache::InitTSD):
2114         * wtf/ThreadSpecificWin.cpp:
2115         (WTF::destructorsList):
2116         (WTF::destructorsMutex):
2117         (WTF::threadSpecificKeyCreate):
2118         (WTF::threadSpecificKeyDelete):
2119
2120 2013-04-15  Commit Queue  <rniwa@webkit.org>
2121
2122         Unreviewed, rolling out r148462.
2123         http://trac.webkit.org/changeset/148462
2124         https://bugs.webkit.org/show_bug.cgi?id=114658
2125
2126         Broke Windows builds (Requested by rniwa on #webkit).
2127
2128         * wtf/FastMalloc.cpp:
2129         (WTF):
2130         (WTF::setThreadHeap):
2131         (WTF::TCMalloc_ThreadCache::GetThreadHeap):
2132         (WTF::TCMalloc_ThreadCache::InitTSD):
2133         * wtf/ThreadSpecificWin.cpp:
2134         (WTF::destructorsList):
2135         (WTF::destructorsMutex):
2136         (WTF::threadSpecificKeyCreate):
2137         (WTF::threadSpecificKeyDelete):
2138
2139 2013-04-15  Julien Brianceau  <jbrianceau@nds.com>
2140
2141         LLInt SH4 backend implementation
2142         https://bugs.webkit.org/show_bug.cgi?id=112886
2143
2144         Reviewed by Oliver Hunt.
2145
2146         * wtf/Platform.h:
2147
2148 2013-04-15  Patrick Gansterer  <paroga@webkit.org>
2149
2150         [CMake] Add WTF_USE_*_UNICODE variables
2151         https://bugs.webkit.org/show_bug.cgi?id=114556
2152
2153         Reviewed by Brent Fulgham.
2154
2155         WTF_USE_ICU_UNICODE and WTF_USE_WCHAR_UNICODE are used to
2156         reduce duplication in the platform specific CMake files.
2157
2158         * wtf/CMakeLists.txt:
2159         * wtf/PlatformBlackBerry.cmake:
2160         * wtf/PlatformEfl.cmake:
2161         * wtf/PlatformWinCE.cmake:
2162
2163 2013-04-15  Patrick Gansterer  <paroga@webkit.org>
2164
2165         [WIN] Remove remaining calls to pthread from WTF
2166         https://bugs.webkit.org/show_bug.cgi?id=114563
2167
2168         Reviewed by Brent Fulgham.
2169
2170         Replace pthread_key_create with threadSpecificKeyCreate and
2171         pthread_setspecific with threadSpecificSet from ThreadSpecific.h.
2172         These functions provide a windows-specific implementation for the pthread functions,
2173         but require that the thread has been created with WTF::createThread(),
2174         which is the case for all threads created within WebKit.
2175         To call this function from fastMalloc we must not call fastMalloc in them.
2176         To fulfill this constraint ThreadSpecificWin will allocated its memory through the
2177         original malloc implementation and use the stack for local and static variables.
2178         Keep the Darwin implementation as it is, since it contains some performance tweaks.
2179
2180         * wtf/FastMalloc.cpp:
2181         * wtf/ThreadSpecificWin.cpp:
2182         (WTF::destructorsList):
2183         (WTF::destructorsMutex):
2184         (WTF::threadSpecificKeyCreate):
2185         (WTF::threadSpecificKeyDelete):
2186
2187 2013-04-14  Oliver Hunt  <oliver@apple.com>
2188
2189         Try to fix non-apple windows builds
2190
2191         * wtf/Platform.h:
2192
2193 2013-04-14  David Kilzer  <ddkilzer@apple.com>
2194
2195         Add EnumClass.h to project files
2196         <http://webkit.org/b/114582>
2197
2198         Rubber-stamped by Dan Bernstein.
2199
2200         * WTF.pro: Add EnumClass.h to project.
2201         * WTF.vcproj/WTF.vcproj: Ditto.
2202         * WTF.vcxproj/WTF.vcxproj: Ditto.
2203         * WTF.vcxproj/WTF.vcxproj.filters: Ditto.
2204         * WTF.xcodeproj/project.pbxproj: Ditto.
2205
2206 2013-04-12  Oliver Hunt  <oliver@apple.com>
2207
2208         Apologies to all, I have no idea what happened to cause this change.
2209
2210         * wtf/Platform.h:
2211
2212 2013-04-12  Oliver Hunt  <oliver@apple.com>
2213
2214         [Qt][Win] r148257 broke the build
2215         https://bugs.webkit.org/show_bug.cgi?id=114512
2216
2217         Build fix.
2218
2219         * wtf/Platform.h:
2220
2221 2013-04-11  Oliver Hunt  <oliver@apple.com>
2222
2223         Add more type validation to debug builds
2224         https://bugs.webkit.org/show_bug.cgi?id=114478
2225
2226         Reviewed by Mark Hahnenberg.
2227
2228         Add BINDING_VALIDATION flag and make RELEASE_ASSERT use UNLIKELY.
2229
2230         * wtf/Assertions.h:
2231         * wtf/Platform.h:
2232
2233 2013-04-10  Thiago Marcos P. Santos  <thiago.santos@intel.com>
2234
2235         [WTF] Get rid of truncated thread name warnings for non-Windows platforms
2236         https://bugs.webkit.org/show_bug.cgi?id=114266
2237
2238         Reviewed by Ryosuke Niwa.
2239
2240         Hide the annoying message from ports that are not really interested
2241         about it.
2242
2243         * wtf/Threading.cpp:
2244         (WTF::createThread):
2245
2246 2013-04-10  Benjamin Poulain  <bpoulain@apple.com>
2247
2248         Mass remove all the empty directories
2249
2250         Rubberstamped by Ryosuke Niwa.
2251
2252         * wtf/qt/compat: Removed.
2253         * wtf/unicode/glib: Removed.
2254         * wtf/unicode/qt4: Removed.
2255         * wtf/unicode/wince: Removed.
2256
2257 2013-04-08  Anders Carlsson  <andersca@apple.com>
2258
2259         Remove unneeded headers from FrameLoader.h
2260         https://bugs.webkit.org/show_bug.cgi?id=114223
2261
2262         Reviewed by Geoffrey Garen.
2263
2264         * wtf/Forward.h:
2265         Add PrintStream.
2266
2267         * wtf/HashTable.h:
2268         Don't include DataLog.h unless DUMP_HASHTABLE_STATS_PER_TABLE is 1.
2269
2270 2013-04-10  Laszlo Gombos  <l.gombos@samsung.com>
2271
2272         Remove ENABLE_3D_PLUGIN
2273         https://bugs.webkit.org/show_bug.cgi?id=108002
2274
2275         Reviewed by Antti Koivisto.
2276
2277         Remove ENABLE_3D_PLUGIN, it was only used by Chromium.
2278
2279         * wtf/FeatureDefines.h:
2280
2281 2013-04-09  Patrick Gansterer  <paroga@webkit.org>
2282
2283         [CMake] Remove conditional source file lists in WTF
2284         https://bugs.webkit.org/show_bug.cgi?id=114250
2285
2286         Reviewed by Laszlo Gombos.
2287
2288         Use the #ifdef in the source file instead of conditional adding
2289         files to the list of source files. This allows us to remove the
2290         information of enabled features from CMake in next step.
2291
2292         * wtf/CMakeLists.txt:
2293
2294 2013-04-08  Ryosuke Niwa  <rniwa@webkit.org>
2295
2296         Remove WTF.gyp/WTF.gypi
2297         https://bugs.webkit.org/show_bug.cgi?id=114237
2298
2299         Reviewed by Maciej Stachowiak.
2300
2301         * WTF.gyp: Removed.
2302         * WTF.gyp/.gitignore: Removed.
2303         * WTF.gyp/WTF.gyp: Removed.
2304         * WTF.gypi: Removed.
2305
2306 2013-04-08  Benjamin Poulain  <benjamin@webkit.org>
2307
2308         Remove HTML Notification
2309         https://bugs.webkit.org/show_bug.cgi?id=114231
2310
2311         Reviewed by Ryosuke Niwa.
2312
2313         * wtf/FeatureDefines.h:
2314
2315 2013-04-08  Benjamin Poulain  <benjamin@webkit.org>
2316
2317         wtf/dtoa/* uses a confusing name to reference its buffers
2318         https://bugs.webkit.org/show_bug.cgi?id=109709
2319
2320         Reviewed by Darin Adler.
2321
2322         The data structure Vector in wtf/dtoa has nothing to do with a traditional
2323         vector, is it just a pointer and the length of the pointed buffer.
2324
2325         Rename it to BufferReference to avoid mistakes.
2326
2327         * wtf/dtoa/bignum-dtoa.cc:
2328         * wtf/dtoa/bignum-dtoa.h:
2329         * wtf/dtoa/bignum.cc:
2330         * wtf/dtoa/bignum.h:
2331         (Bignum):
2332         * wtf/dtoa/double-conversion.cc:
2333         * wtf/dtoa/fast-dtoa.cc:
2334         * wtf/dtoa/fast-dtoa.h:
2335         * wtf/dtoa/fixed-dtoa.cc:
2336         * wtf/dtoa/fixed-dtoa.h:
2337         (double_conversion):
2338         * wtf/dtoa/strtod.cc:
2339         * wtf/dtoa/strtod.h:
2340         (double_conversion):
2341         * wtf/dtoa/utils.h:
2342         (double_conversion):
2343         (WTF::double_conversion::BufferReference::BufferReference):
2344         (WTF::double_conversion::BufferReference::SubBufferReference):
2345         (StringBuilder):
2346
2347 2013-04-08  Alberto Garcia  <agarcia@igalia.com>
2348
2349         [BlackBerry] MathExtras: macros defined in math.h conflict with the real functions
2350         https://bugs.webkit.org/show_bug.cgi?id=112683
2351
2352         Reviewed by Darin Adler.
2353
2354         After calls to signbit and friends were prefixed with std:: in
2355         r143232, the BlackBerry port no longer compiles.
2356
2357         The solution is to get rid of the macros defined in math.h and use
2358         the real functions instead.
2359
2360         * wtf/MathExtras.h:
2361
2362 2013-04-08  Max Vujovic  <mvujovic@adobe.com>
2363
2364         REGRESSION (r147502): Animations of CA filters broken
2365         https://bugs.webkit.org/show_bug.cgi?id=114067
2366
2367         Reviewed by Dean Jackson.
2368
2369         Revert r147502 [1] because it broke CA filter animations.
2370         
2371         [1]: http://trac.webkit.org/changeset/147502
2372
2373         * wtf/Platform.h:
2374
2375 2013-04-08  Andreas Kling  <akling@apple.com>
2376
2377         REGRESSION(r147894): Broke WTFReportBacktrace() on Mac.
2378         <http://webkit.org/b/114174>
2379
2380         Reviewed by Anders Carlsson.
2381
2382         An #elif !OS(ANDROID) block was erroneously removed, turn it into an #else instead since
2383         that path will still be taken for OS(DARWIN).
2384
2385         * wtf/Assertions.cpp:
2386
2387 2013-04-08  Oliver Hunt  <oliver@apple.com>
2388
2389         Build fix.
2390
2391         Remove unnecessary include of <wtf/Forward.h> from Vector.h
2392
2393         * wtf/Vector.h:
2394
2395 2013-04-08  Csaba Osztrogonác  <ossy@webkit.org>
2396
2397         Unreviewed trivial buildfix after r147799.
2398
2399         Add an ifdef guard to ensure Qt uses its own monotonicallyIncreasingTime()
2400         implemenation instead of the GLIB based one.
2401
2402         * wtf/CurrentTime.cpp:
2403         (WTF):
2404
2405 2013-04-07  Benjamin Poulain  <benjamin@webkit.org>
2406
2407         Remove the android code from WebKit Template Framework
2408         https://bugs.webkit.org/show_bug.cgi?id=114138
2409
2410         Reviewed by Dirk Schulze.
2411
2412         * wtf/Assertions.cpp:
2413         * wtf/Atomics.h:
2414         * wtf/MathExtras.h:
2415         * wtf/Platform.h:
2416         * wtf/ThreadIdentifierDataPthreads.cpp:
2417
2418 2013-04-07  Oliver Hunt  <oliver@apple.com>
2419
2420         Add bounds checking for WTF::Vector::operator[]
2421         https://bugs.webkit.org/show_bug.cgi?id=89600
2422
2423         Reviewed by Filip Pizlo.
2424
2425         Add a template parameter to Vector<> that controls whether
2426         bounds checking is performed in release builds or not.
2427         Defaults to crashing on overflow.
2428
2429         * wtf/Forward.h:
2430         (WTF):
2431         * wtf/Vector.h:
2432         (WTF):
2433         (Vector):
2434         (WTF::Vector::at):
2435         (WTF::Vector::removeLast):
2436         (WTF::::Vector):
2437         (WTF::=):
2438         (WTF::::contains):
2439         (WTF::::find):
2440         (WTF::::reverseFind):
2441         (WTF::::fill):
2442         (WTF::::appendRange):
2443         (WTF::::expandCapacity):
2444         (WTF::::tryExpandCapacity):
2445         (WTF::::resize):
2446         (WTF::::shrink):
2447         (WTF::::grow):
2448         (WTF::::reserveCapacity):
2449         (WTF::::tryReserveCapacity):
2450         (WTF::::reserveInitialCapacity):
2451         (WTF::::shrinkCapacity):
2452         (WTF::::append):
2453         (WTF::::tryAppend):
2454         (WTF::::appendSlowCase):
2455         (WTF::::uncheckedAppend):
2456         (WTF::::appendVector):
2457         (WTF::::insert):
2458         (WTF::::prepend):
2459         (WTF::::remove):
2460         (WTF::::reverse):
2461         (WTF::::releaseBuffer):
2462         (WTF::::checkConsistency):
2463         (WTF::deleteAllValues):
2464         (WTF::swap):
2465         (WTF::operator==):
2466         (WTF::operator!=):
2467
2468 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
2469
2470         [WIN] Fix problems with export macros of AutodrainedPool
2471         https://bugs.webkit.org/show_bug.cgi?id=114132
2472
2473         Reviewed by Geoffrey Garen.
2474
2475         Exporting an inline function results in an error with the MS compiler.
2476
2477         * wtf/AutodrainedPool.h:
2478         (AutodrainedPool):
2479         (WTF::AutodrainedPool::AutodrainedPool):
2480         (WTF::AutodrainedPool::~AutodrainedPool):
2481         (WTF::AutodrainedPool::cycle):
2482
2483 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
2484
2485         [WinCE] Add workaround for UNUSED_PARAM()
2486         https://bugs.webkit.org/show_bug.cgi?id=113440
2487
2488         Reviewed by Benjamin Poulain.
2489
2490         The MSVC compiler for Windwos CE throws an error when
2491         an function parameter is passed to UNUSED_PARAM() and
2492         its type is only forward declared.
2493
2494         * wtf/UnusedParam.h:
2495
2496 2013-04-07  Patrick Gansterer  <paroga@webkit.org>
2497
2498         Do not check if WTF_ARM_ARCH_VERSION is defined in WTF_ARM_ARCH_AT_LEAST macro
2499         https://bugs.webkit.org/show_bug.cgi?id=114127
2500
2501         Reviewed by Benjamin Poulain.
2502
2503         Platform.h defines WTF_ARM_ARCH_VERSION for CPU(ARM) always and removing
2504         the check works around a bug in older Microsoft compiler versions.
2505
2506         * wtf/Platform.h:
2507
2508 2013-04-07  David Kilzer  <ddkilzer@apple.com>
2509
2510         Remove the rest of SVG_DOM_OBJC_BINDINGS
2511         <http://webkit.org/b/114112>
2512
2513         Reviewed by Geoffrey Garen.
2514
2515         * wtf/FeatureDefines.h:
2516         - Remove ENABLE_SVG_DOM_OBJC_BINDINGS macro.
2517
2518 2013-04-06  Geoffrey Garen  <ggaren@apple.com>
2519
2520         Removed v8 bindings hooks from IDL files
2521         https://bugs.webkit.org/show_bug.cgi?id=114091
2522
2523         Reviewed by Anders Carlsson and Sam Weinig.
2524
2525         * wtf/ArrayBuffer.h:
2526         (WTF):
2527         (WTF::ArrayBufferContents::ArrayBufferContents):
2528         (WTF::ArrayBufferContents::transfer):
2529         (ArrayBufferContents):
2530         (ArrayBuffer):
2531         (WTF::ArrayBufferContents::~ArrayBufferContents):
2532         * wtf/Platform.h:
2533
2534 2013-04-05  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2535
2536         [GTK] Change from PLATFORM(GTK) to USE(GLIB) in WTF/CurrentTime.cpp
2537         https://bugs.webkit.org/show_bug.cgi?id=114061
2538
2539         Reviewed by Gustavo Noronha Silva.
2540
2541         Now other ports using GLib can use the correct implementation
2542         and not the fallback one without adding any other PLATFORM guards
2543         here.
2544
2545         * wtf/CurrentTime.cpp:
2546         (WTF):
2547
2548 2013-04-05  Geoffrey Garen  <ggaren@apple.com>
2549
2550         Made USE(JSC) unconditional
2551         https://bugs.webkit.org/show_bug.cgi?id=114058
2552
2553         Reviewed by Anders Carlsson.
2554
2555         * wtf/ThreadRestrictionVerifier.h:
2556         (WTF):
2557         * wtf/WTFThreadData.cpp:
2558         (WTF::WTFThreadData::WTFThreadData):
2559         (WTF::WTFThreadData::~WTFThreadData):
2560         * wtf/WTFThreadData.h:
2561         (WTFThreadData):
2562         * wtf/text/StringImpl.cpp:
2563         (WTF::StringImpl::~StringImpl):
2564
2565 2013-04-05  Roger Fong  <roger_fong@apple.com>
2566
2567         More VS2010 solution makefile fixes.
2568         <rdar://problem/13588964>
2569
2570         * WTF.vcxproj/WTF.make:
2571
2572 2013-04-05  Anders Carlsson  <andersca@apple.com>
2573
2574         Remove more dead Chromium code from WTF
2575         https://bugs.webkit.org/show_bug.cgi?id=114037
2576
2577         Reviewed by Allan Sandfeld Jensen.
2578
2579         * wtf/CurrentTime.cpp:
2580         (WTF):
2581         * wtf/DisallowCType.h:
2582         * wtf/ExportMacros.h:
2583         * wtf/MainThread.cpp:
2584         * wtf/Platform.h:
2585
2586 2013-04-05  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
2587
2588         [EFL] Disable GLOBAL_FAST_MALLOC_NEW by default.
2589         https://bugs.webkit.org/show_bug.cgi?id=114031
2590
2591         Reviewed by Alexis Menard.
2592
2593         Follow what some other ports already do and avoid globally overriding
2594         the `new' and `delete' operators with the ones in FastMalloc.
2595
2596         In many cases, third-party or client code allocates memory with
2597         standard library calls but the memory gets deleted by FastMalloc,
2598         causing a crash. The reverse (ie. memory being allocated by FastMalloc
2599         and freed by the system libraries) is also possible.
2600
2601         Commits 135666 and 121018 provide more information about this, as well
2602         as comment 6 in bug 89358.
2603
2604         * wtf/Platform.h:
2605
2606 2013-04-05  Benjamin Poulain  <bpoulain@apple.com>
2607
2608         Remove WTFURL from WebKit
2609         https://bugs.webkit.org/show_bug.cgi?id=113994
2610
2611         Reviewed by Ryosuke Niwa.
2612
2613         Painful, but that is for the best now :(
2614
2615         * GNUmakefile.list.am:
2616         * WTF.xcodeproj/project.pbxproj:
2617         * wtf/MemoryInstrumentationParsedURL.h: Removed.
2618         * wtf/url/api/ParsedURL.cpp: Removed.
2619         * wtf/url/api/ParsedURL.h: Removed.
2620         * wtf/url/api/URLBuffer.h: Removed.
2621         * wtf/url/api/URLQueryCharsetConverter.h: Removed.
2622         * wtf/url/api/URLString.cpp: Removed.
2623         * wtf/url/api/URLString.h: Removed.
2624         * wtf/url/src/RawURLBuffer.h: Removed.
2625         * wtf/url/src/URLCanon.h: Removed.
2626         * wtf/url/src/URLCanonEtc.cpp: Removed.
2627         * wtf/url/src/URLCanonFilesystemurl.cpp: Removed.
2628         * wtf/url/src/URLCanonFileurl.cpp: Removed.
2629         * wtf/url/src/URLCanonHost.cpp: Removed.
2630         * wtf/url/src/URLCanonICU.cpp: Removed.
2631         * wtf/url/src/URLCanonIP.cpp: Removed.
2632         * wtf/url/src/URLCanonInternal.cpp: Removed.
2633         * wtf/url/src/URLCanonInternal.h: Removed.
2634         * wtf/url/src/URLCanonMailto.cpp: Removed.
2635         * wtf/url/src/URLCanonPath.cpp: Removed.
2636         * wtf/url/src/URLCanonPathurl.cpp: Removed.
2637         * wtf/url/src/URLCanonQuery.cpp: Removed.
2638         * wtf/url/src/URLCanonRelative.cpp: Removed.
2639         * wtf/url/src/URLCanonStdURL.cpp: Removed.
2640         * wtf/url/src/URLCharacterTypes.cpp: Removed.
2641         * wtf/url/src/URLCharacterTypes.h: Removed.
2642         * wtf/url/src/URLComponent.h: Removed.
2643         * wtf/url/src/URLFile.h: Removed.
2644         * wtf/url/src/URLParse.cpp: Removed.
2645         * wtf/url/src/URLParse.h: Removed.
2646         * wtf/url/src/URLParseFile.cpp: Removed.
2647         * wtf/url/src/URLParseInternal.h: Removed.
2648         * wtf/url/src/URLSegments.cpp: Removed.
2649         * wtf/url/src/URLSegments.h: Removed.
2650         * wtf/url/src/URLUtil.cpp: Removed.
2651         * wtf/url/src/URLUtil.h: Removed.
2652         * wtf/url/src/URLUtilInternal.h: Removed.
2653
2654 2013-04-04  Geoffrey Garen  <ggaren@apple.com>
2655
2656         Nixed the defunct chromium folder from WTF
2657         https://bugs.webkit.org/show_bug.cgi?id=113992
2658
2659         Reviewed by Ryosuke Niwa.
2660
2661         * wtf/chromium: Removed.
2662         * wtf/chromium/ChromiumThreading.h: Removed.
2663         * wtf/chromium/MainThreadChromium.cpp: Removed.
2664
2665 2013-04-04  Martin Robinson  <mrobinson@igalia.com>
2666
2667         [GTK] Remove the gyp build
2668         https://bugs.webkit.org/show_bug.cgi?id=113942
2669
2670         Reviewed by Gustavo Noronha Silva.
2671
2672         * WTF.gyp/WTFGTK.gyp: Removed.
2673
2674 2013-04-04  Anders Carlsson  <andersca@apple.com>
2675
2676         ObjcRuntimeExtras.h should use variadic templates
2677         https://bugs.webkit.org/show_bug.cgi?id=113941
2678
2679         Reviewed by Andreas Kling.
2680
2681         Reimplement wtfObjcMsgSend and wtfCallIMP as variadic function templates.
2682
2683         * wtf/ObjcRuntimeExtras.h:
2684         (wtfObjcMsgSend):
2685         (wtfCallIMP):
2686
2687 2013-04-04  Andras Becsi  <andras.becsi@digia.com>
2688
2689         Fix the build with GCC 4.8
2690         https://bugs.webkit.org/show_bug.cgi?id=113147
2691
2692         Reviewed by Allan Sandfeld Jensen.
2693
2694         Disable diagnostic warning -Wunused-local-typedefs for GCC 4.8
2695         since dummy typedefs are commonly used in the codebase.
2696
2697         * wtf/Compiler.h:
2698
2699 2013-04-03  Pratik Solanki  <psolanki@apple.com>
2700
2701         Enable HAVE_MADV_FREE_REUSE on iOS
2702         https://bugs.webkit.org/show_bug.cgi?id=113892
2703         <rdar://problem/12787563>
2704
2705         Reviewed by Mark Rowe.
2706
2707         * wtf/Platform.h:
2708
2709 2013-04-02  Ryosuke Niwa  <rniwa@webkit.org>
2710
2711         Remove code for Mac 10.5 and earlier from WTF and WebKit2
2712         https://bugs.webkit.org/show_bug.cgi?id=113844
2713
2714         Reviewed by Benjamin Poulain.
2715
2716         Removed the code for 10.5 and removed if-def for 10.6.
2717
2718         * wtf/FastMalloc.cpp:
2719         (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
2720         * wtf/Platform.h:
2721         * wtf/ThreadingPthreads.cpp:
2722         (WTF::initializeCurrentThreadInternal):
2723         * wtf/unicode/icu/CollatorICU.cpp:
2724         (WTF::Collator::userDefault):
2725
2726 2013-04-02  Max Vujovic  <mvujovic@adobe.com>
2727
2728         [CSS Filters] Filter outsets clipped on composited layers when filter is applied after first layout
2729         https://bugs.webkit.org/show_bug.cgi?id=109098
2730
2731         Reviewed by Dean Jackson.
2732
2733         * wtf/Platform.h:
2734             Add flag for HAVE(COMPOSITOR_FILTER_OUTSETS) macro. This is used to check if a
2735             platform's compositor expands layers internally for filter outsets when it applies
2736             filters like drop-shadow and blur. Currently, only CoreAnimation does has this
2737             capability.
2738
2739 2013-04-02  Yury Semikhatsky  <yurys@chromium.org>
2740
2741         Web Inspector: memory instrumentation for external arrays is broken
2742         https://bugs.webkit.org/show_bug.cgi?id=113790
2743
2744         Reviewed by Pavel Feldman.
2745
2746         * wtf/MemoryInstrumentationArrayBufferView.h: report buffer pointer as retaining one as
2747         we know that the pointer is not broken.
2748         (WTF::reportMemoryUsage):
2749
2750 2013-04-01  Han Shen  <shenhan@google.com>
2751
2752         Move definition of nested classes that inherit enclosing class outside class definition.
2753         https://bugs.webkit.org/show_bug.cgi?id=113454
2754
2755         Reviewed by Benjamin Poulain.
2756
2757         HashMap.h does not build on GCC 4.8. Inside this file,
2758         HashMapKeysProxy and HashMapValuesProxy are defined as nested
2759         class inside HashMap - which is legal - the illegal part is that
2760         these 2 classes inherit HashMap, that is the enclosing class, that
2761         causes "reference to in-complete definition" error.
2762
2763         The fix is to move outside the definition of these 2 classes, and
2764         leave only declaration part inside HashMap as is illustrated below -
2765
2766           template class <typename T>
2767           class HashMap {
2768             ... ...
2769             ... ...
2770           private:
2771             class HashMapKeysProxy;
2772
2773             // ERROR - nested class inherits enclosing class.
2774             class HashMapKeysProxy : private HashMap {
2775                 ... ...
2776             };
2777             ... ...
2778             ... ...
2779             class HashMapKeysProxy : private HashMap {
2780                 ... ...
2781             };
2782             ... ...
2783             ... ...
2784           };
2785
2786         Fixed as below:
2787           template class <typename T>
2788           class HashMap {
2789             ... ...
2790             ... ...
2791           private:
2792             class HashMapKeysProxy;
2793             class HashMapValuesProxy;
2794
2795             ... ...
2796             ... ...
2797           };
2798
2799           template <typename T>
2800           class HashMap<T>::HashMapKeysProxy : private HashMap<T> {
2801             ... ...
2802           };
2803
2804           template <typename T>
2805           class HashMap<T>::HashMapValuesProxy : private HashMap<T> {
2806             ... ...
2807           };
2808
2809         * wtf/HashMap.h:
2810         (HashMap):
2811         (WTF): Factor out nested class definition from enclosing class.
2812
2813 2013-03-31  Mark Hahnenberg  <mhahnenberg@apple.com>
2814
2815         Regions should be allocated from the same contiguous segment of virtual memory
2816         https://bugs.webkit.org/show_bug.cgi?id=113662
2817
2818         Reviewed by Filip Pizlo.
2819
2820         Instead of letting the OS spread our Regions all over the place, we should allocate them all within 
2821         some range of each other. This change will open the door to some other optimizations, e.g. doing simple 
2822         range checks for our write barriers and compressing JSCell pointers to 32-bits.
2823
2824         * wtf/MetaAllocator.cpp: Changed the MetaAllocator to allow custom page sizes if the derived class wants to
2825         use something other than the system page size.
2826         (WTF::MetaAllocator::MetaAllocator):
2827         * wtf/MetaAllocator.h:
2828         (MetaAllocator):
2829
2830 2013-04-01  Yury Semikhatsky  <yurys@chromium.org>
2831
2832         Web Inspector: add memory instrumentation for StringBuffer
2833         https://bugs.webkit.org/show_bug.cgi?id=113507
2834
2835         Reviewed by Pavel Feldman.
2836
2837         Added memory instrumentation for StringBuffer.
2838
2839         * wtf/MemoryInstrumentationString.h:
2840         (WTF):
2841         (WTF::reportMemoryUsage):
2842
2843 2013-03-30  Tom Sepez  <tsepez@chromium.org>
2844
2845         View-source iframes are dangerous (and not very useful).
2846         https://bugs.webkit.org/show_bug.cgi?id=113345
2847
2848         Reviewed by Adam Barth.
2849
2850         * wtf/FeatureDefines.h:
2851         Default definition of ENABLE_VIEWSOURCE_ATTRIBUTE is enabled.
2852
2853 2013-03-27  Patrick Gansterer  <paroga@webkit.org>
2854
2855         Set WTF_ARM_ARCH_VERSION to correct value when used with MSVC
2856         https://bugs.webkit.org/show_bug.cgi?id=113436
2857
2858         Reviewed by Benjamin Poulain.
2859
2860         The Microsoft compiler defines _M_ARM with used ARM version.
2861
2862         * wtf/Platform.h:
2863
2864 2013-03-27  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2865
2866         Support C++11 static_assert
2867         https://bugs.webkit.org/show_bug.cgi?id=113308
2868
2869         Reviewed by Alexey Proskuryakov.
2870
2871         Use the C++11 static_assert for COMPILE_ASSERT when it is available. Note that
2872         even when compiling with C++11 support, static_assert will not always be available
2873         since Assertions.h may also be used outside of C++.
2874
2875         C11 _Static_assert is enabled for GCC when it has C11 support (gcc>=4.7 -std=c11).
2876
2877         * wtf/Assertions.h:
2878         * wtf/Compiler.h:
2879
2880 2013-03-25  Oliver Hunt  <oliver@apple.com>
2881
2882         RefCountedArray needs a size based constructor
2883         https://bugs.webkit.org/show_bug.cgi?id=113277
2884
2885         Reviewed by Benjamin Poulain.
2886
2887         Simple patch to add a size based constructor for RefCountedArray
2888         so that we can create an sharable array without a copy.
2889
2890         * wtf/RefCountedArray.h:
2891         (RefCountedArray):
2892         (WTF::RefCountedArray::RefCountedArray):
2893
2894 2013-03-26  James Robinson  <jamesr@chromium.org>
2895
2896         Compile fix - OS(WINDOWS), not OS(WIN).
2897
2898         * wtf/ProcessID.h:
2899         (WTF::getCurrentProcessID):
2900
2901 2013-03-26  James Robinson  <jamesr@chromium.org>
2902
2903         Fix compile for OS(WIN) != PLATFORM(WIN)
2904         https://bugs.webkit.org/show_bug.cgi?id=113356
2905
2906         Reviewed by Tim Horton.
2907
2908         * wtf/ProcessID.h:
2909         (WTF::getCurrentProcessID):
2910
2911 2013-03-23  Filip Pizlo  <fpizlo@apple.com>
2912
2913         JSC_enableProfiler=true should also cause JSGlobalData to save the profiler output somewhere
2914         https://bugs.webkit.org/show_bug.cgi?id=113144
2915
2916         Reviewed by Geoffrey Garen.
2917         
2918         I got tired of the fact that getpid(2) is not a syscall on Windows (unless you do
2919         _getpid() I believe), so I wrote a header that abstracts it. I also changed existing
2920         code that uses getpid() to use WTF::getCurrentProcessID().
2921
2922         * GNUmakefile.list.am:
2923         * WTF.gypi:
2924         * WTF.pro:
2925         * WTF.vcproj/WTF.vcproj:
2926         * WTF.xcodeproj/project.pbxproj:
2927         * wtf/CMakeLists.txt:
2928         * wtf/MetaAllocator.cpp:
2929         (WTF::MetaAllocator::dumpProfile):
2930         * wtf/ProcessID.h: Added.
2931         (WTF):
2932         (WTF::getCurrentProcessID):
2933         * wtf/text/StringImpl.cpp:
2934         (WTF::StringStats::printStats):
2935
2936 2013-03-25  Kent Tamura  <tkent@chromium.org>
2937
2938         Rename ENABLE_INPUT_TYPE_DATETIME
2939         https://bugs.webkit.org/show_bug.cgi?id=113254
2940
2941         Reviewed by Kentaro Hara.
2942
2943         Rename ENABLE_INPUT_TYPE_DATETIME to ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE.
2944         Actually I'd like to remove the code, but we shouldn't remove it yet
2945         because we shipped products with it on some platforms.
2946
2947         * wtf/FeatureDefines.h:
2948
2949 2013-03-25  David Kilzer  <ddkilzer@apple.com>
2950
2951         WTF::binarySearchImpl() should compile with -Wshorten-64-to-32
2952         <http://webkit.org/b/113170>
2953
2954         Reviewed by Dan Bernstein.
2955
2956         Fixes the following build failure:
2957
2958             /usr/local/include/wtf/StdLibExtras.h:190:30: error: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Werror,-Wshorten-64-to-32]
2959                     int pos = (size - 1) >> 1;
2960                         ~~~   ~~~~~~~~~~~^~~~
2961             1 error generated.
2962
2963         * wtf/StdLibExtras.h:
2964         (WTF::binarySearchImpl): Switch type from int to size_t.
2965
2966 2013-03-22  Benjamin Poulain  <bpoulain@apple.com>
2967
2968         Remove 2 bad branches from StringHash::equal() and CaseFoldingHash::equal()
2969         https://bugs.webkit.org/show_bug.cgi?id=113003
2970
2971         Reviewed by Eric Seidel.
2972
2973         StringHash::equal() and CaseFoldingHash::equal() were both testing for
2974         the nullity of the two input pointers. The catch is: neither traits handle
2975         null pointers, and any client code would have crashed on hash(), before equal()
2976         is called.
2977         Consequently, the two branches had a pass rate of zero when called from a HashMap code.
2978
2979         The function is also never inlined because it is too big (the code of equal() for characters
2980         is always inlined, causing the function to be quite big).
2981
2982         This patch introduces two new functions in the StringImpl API: equalNonNull() and
2983         equalIgnoringCaseNonNull(). Those functions are similar to their equal() equivalent
2984         but make the assumtion the input is never null.
2985
2986         The functions are used for StringHash to avoid the useless branches.
2987
2988         * wtf/text/StringHash.h:
2989         (WTF::StringHash::equal):
2990         (WTF::CaseFoldingHash::equal):
2991         * wtf/text/StringImpl.cpp:
2992         (WTF::stringImplContentEqual):
2993         (WTF::equal):
2994         (WTF::equalNonNull):
2995         (WTF::equalIgnoringCase):
2996         (WTF::equalIgnoringCaseNonNull):
2997         (WTF::equalIgnoringNullity):
2998         * wtf/text/StringImpl.h:
2999         (WTF::equalIgnoringCase):
3000
3001 2013-03-22  Benjamin Poulain  <bpoulain@apple.com>
3002
3003         Name correctly the argument of StringImpl::setIsAtomic()
3004         https://bugs.webkit.org/show_bug.cgi?id=113000
3005
3006         Reviewed by Geoffrey Garen.
3007
3008         * wtf/text/StringImpl.h:
3009         (WTF::StringImpl::setIsAtomic):
3010         The argument was probably an unfortunate copy-paste from setIsIdentifier().
3011         Fix the name.
3012
3013 2013-03-22  Hajime Morrita  <morrita@google.com>
3014
3015         Custom Elements: "readyCallback" lifecycle callback should be called.
3016         https://bugs.webkit.org/show_bug.cgi?id=112538
3017
3018         Reviewed by Elliott Sprehn.
3019
3020         * wtf/HashSet.h:
3021         (WTF::copyToVector): Generalized to let it accept variants like ListHahsSet instead of only HashSet.
3022
3023 2013-03-22  Sheriff Bot  <webkit.review.bot@gmail.com>
3024
3025         Unreviewed, rolling out r146534 and r146565.
3026         http://trac.webkit.org/changeset/146534
3027         http://trac.webkit.org/changeset/146565
3028         https://bugs.webkit.org/show_bug.cgi?id=113017
3029
3030         "r146534 caused perf regression on Chromium Linux x64"
3031         (Requested by yurys on #webkit).
3032
3033         * wtf/HashSet.h:
3034         (WTF):
3035         (WTF::copyToVector):
3036
3037 2013-03-21  Hajime Morrita  <morrita@google.com>
3038
3039         Custom Elements: "readyCallback" lifecycle callback should be called.
3040         https://bugs.webkit.org/show_bug.cgi?id=112538
3041
3042         Reviewed by Elliott Sprehn.
3043
3044         * wtf/HashSet.h:
3045         (WTF::copyToVector): Generalized to let it accept variants like ListHahsSet instead of only HashSet.
3046
3047 2013-03-21  Mark Lam  <mark.lam@apple.com>
3048
3049         Introducing String::findNextLineStart().
3050         https://bugs.webkit.org/show_bug.cgi?id=112957.
3051
3052         Reviewed by Geoffrey Garen.
3053
3054         This is replaces String::reverseFindLineTerminator() in the JSC
3055         debugger's code for computing column numbers.
3056
3057         * wtf/text/StringImpl.cpp:
3058         (WTF::StringImpl::findNextLineStart):
3059         * wtf/text/StringImpl.h:
3060         (WTF::findNextLineStart):
3061         * wtf/text/WTFString.h:
3062         (WTF::String::findNextLineStart):
3063
3064 2013-03-21  Adam Barth  <abarth@webkit.org>
3065
3066         HTMLNames should construct strings at compile time
3067         https://bugs.webkit.org/show_bug.cgi?id=112831
3068
3069         Reviewed by Darin Adler.
3070
3071         * wtf/text/StringImpl.h:
3072         (StringImpl):
3073         (StaticASCIILiteral):
3074             - This struct lets us construct StringImpl objects at compile time.
3075         (WTF::StringImpl::assertHashIsCorrect):
3076             - This function lets us sanity check StringImpl objects created from StaticData.
3077         (WTF::StringImpl::find): Remove a stray ;
3078         (WTF::StringImpl::findIgnoringCase): ditto
3079         (WTF::StringImpl::startsWith): ditto
3080         (WTF::ValueCheck<StringImpl*>):
3081         * wtf/text/AtomicStringImpl.h:
3082         (WTF::ValueCheck<AtomicStringImpl*>):
3083
3084 2013-03-21  Gabor Rapcsanyi  <rgabor@webkit.org>
3085
3086         Implement LLInt for CPU(ARM_TRADITIONAL)
3087         https://bugs.webkit.org/show_bug.cgi?id=97589
3088
3089         Reviewed by Zoltan Herczeg.
3090
3091         Enable LLInt for ARMv5 and ARMv7 traditional as well.
3092
3093         * wtf/Platform.h:
3094
3095 2013-03-20  Sheriff Bot  <webkit.review.bot@gmail.com>
3096
3097         Unreviewed, rolling out r146419.
3098         http://trac.webkit.org/changeset/146419
3099         https://bugs.webkit.org/show_bug.cgi?id=112870
3100
3101         Broke many tests on debug builds (Requested by rniwa_ on
3102         #webkit).
3103
3104         * wtf/text/StringImpl.h:
3105         (StringImpl):
3106
3107 2013-03-20  Adam Barth  <abarth@webkit.org>
3108
3109         HTMLNames should construct strings at compile time
3110         https://bugs.webkit.org/show_bug.cgi?id=112831
3111
3112         Reviewed by Darin Adler.
3113
3114         * wtf/text/StringImpl.h:
3115         (StringImpl):
3116         (StaticASCIILiteral):
3117             - This struct lets us construct StringImpl objects at compile time.
3118         (WTF::StringImpl::assertValidHash):
3119             - This function lets us sanity check StringImpl objects created from StaticData.
3120
3121 2013-03-20  Jessie Berlin  <jberlin@apple.com>
3122
3123         REGRESSION(r145592): AutodrainedPool.h. RunLoopTimer.h, SchedulePair.h are being copied into
3124         the wrong location
3125         https://bugs.webkit.org/show_bug.cgi?id=112833
3126
3127         Reviewed by Darin Adler.
3128
3129         * WTF.xcodeproj/project.pbxproj:
3130         Make sure those three headers are copied with the rest of the WTF headers.
3131
3132 2013-03-20  Mark Rowe  <mrowe@apple.com>
3133
3134         FastMalloc scavenge timer specifies an overly narrow leeway value.
3135
3136         Reviewed by Alexey Proskuryakov.
3137
3138         There's no need to allow only 1ms of leeway on a 2s timer.
3139
3140         * wtf/FastMalloc.cpp:
3141         (WTF::TCMalloc_PageHeap::initializeScavenger): Bump the leeway window
3142         to 10% of the scavenge timer.
3143
3144 2013-03-20  JungJik Lee  <jungjik.lee@samsung.com>
3145
3146         [EFL] Disable REQUEST_ANIMATION_FRAME_TIMER to render a new animation frame.
3147         https://bugs.webkit.org/show_bug.cgi?id=112114
3148
3149         Reviewed by Kenneth Rohde Christiansen.
3150
3151         The issue is that if the animation starts outside of the area covered by keepRects,
3152         the web process does not create tiles of the animation layer and the layer moves 
3153         without having any tiles. In order to fix this issue, CoordinatedLayerHost must call 
3154         scheduleLayerFlush to create new tiles when the layer enters the area covered by keepRect.
3155         However EFL port didn't call scheduleLayerFlush periodically for animation.
3156         We can tie scripted animations with synchronization of the layer and that already 
3157         has been implemented in r123786 by Qt port. This patch is for activating r123786 patch.
3158
3159         The testing is covered by ManualTests/animation/transition-on-and-offscreen-animation.html
3160
3161         * wtf/Platform.h: Disable REQUEST_ANIMATION_FRAME_TIMER.
3162
3163 2013-03-20  Mark Lam  <mark.lam@apple.com>
3164
3165         Introducing String::reverseFindLineTerminator().
3166         https://bugs.webkit.org/show_bug.cgi?id=112741.
3167
3168         Reviewed by Oliver Hunt.
3169
3170         This is needed by the JSC debugger code for computing column numbers.
3171
3172         * wtf/text/StringImpl.cpp:
3173         (WTF::StringImpl::reverseFindLineTerminator):
3174         * wtf/text/StringImpl.h:
3175         (StringImpl):
3176         (WTF::reverseFindLineTerminator):
3177         * wtf/text/WTFString.h:
3178         (WTF::String::reverseFindLineTerminator):
3179
3180 2013-03-19  Martin Robinson  <mrobinson@igalia.com>
3181
3182         Fix the WTF gyp build for GTK+.
3183
3184         * WTF.gyp/WTFGTK.gyp: Skip files with CF in the name.
3185
3186 2013-03-19  Alberto Garcia  <agarcia@igalia.com>
3187
3188         [BlackBerry] Enable USE_SYSTEM_MALLOC by default
3189         https://bugs.webkit.org/show_bug.cgi?id=112365
3190
3191         Reviewed by Benjamin Poulain.
3192
3193         Enable USE_SYSTEM_MALLOC by default via FeatureList.pm instead of
3194         harcoding it in wtf/Platform.h
3195
3196         * wtf/Platform.h:
3197
3198 2013-03-18  Benjamin Poulain  <benjamin@webkit.org>
3199
3200         [iOS] Make a UChar string equal() based on the LChar version
3201         https://bugs.webkit.org/show_bug.cgi?id=112495
3202
3203         Reviewed by David Kilzer.
3204
3205         * wtf/text/StringImpl.h:
3206         (WTF::equal):
3207         Create a equal() function for UChar based on the work done for LChar.
3208
3209         On A6, this is a speed up of about 40% for any string of 2 or more characters.
3210         It is slower by 8% on a single UChar comparison.
3211
3212 2013-03-18  Brent Fulgham  <bfulgham@webkit.org>
3213
3214         [WinCairo] Get build working under VS2010.
3215         https://bugs.webkit.org/show_bug.cgi?id=112604
3216
3217         Reviewed by Tim Horton.
3218
3219         * WTF.vcxproj/WTF.vcxproj: Add Debug_WinCairo and Release_WinCairo
3220         targets so headers get copied to appropriate build folder.
3221         * WTF.vcxproj/WTFGenerated.vcxproj: Ditto.
3222
3223 2013-03-15  Benjamin Poulain  <bpoulain@apple.com>
3224
3225         [iOS] Update StringImpl's equal to have a single version on all supported Apple CPUs
3226         https://bugs.webkit.org/show_bug.cgi?id=112400
3227
3228         Reviewed by Michael Saboff.
3229
3230         * wtf/text/StringImpl.h:
3231         (WTF::equal):
3232         Tweak the code to make it work on older Apple CPUs:
3233         -Use external "ouput" variable instead of the registers R9 and R12. This gets rid
3234          of some register pressure previously imposed on the compiler. (Clang nicely
3235          choose R9 and R12 when needed, following iOS ABI).
3236         -Instead of using "R3" for storing the length / 4, update the length by -4 on
3237          each iteration and work in the negative space for the tail. This frees one register
3238          which is then used for isEqual.
3239         -Get rid of the unconditional branch from the loop. By using subs and working in the
3240          negative space, we can test for the Carry flag to jump back to the next LDR.
3241
3242 2013-03-15  Benjamin Poulain  <bpoulain@apple.com>
3243
3244         [iOS] Fix the length pass to memcmp in the fallback versions of String's equal
3245         https://bugs.webkit.org/show_bug.cgi?id=112463
3246
3247         Reviewed by Ryosuke Niwa.
3248
3249         * wtf/text/StringImpl.h:
3250         (WTF::equal): It might be a good idea to compare the full UChar strings...
3251
3252 2013-03-15  Michael Saboff  <msaboff@apple.com>
3253
3254         Add runtime check for improper register allocations in DFG
3255         https://bugs.webkit.org/show_bug.cgi?id=112380
3256
3257         Reviewed by Geoffrey Garen.
3258
3259         * wtf/Platform.h: Added new ENABLE_DFG_REGISTER_ALLOCATION_VALIDATION compilation flag to
3260         enable generation of register allocation checking.  This is on for debug builds.
3261
3262 2013-03-13  Jessie Berlin  <jberlin@apple.com>
3263
3264         Remove svn:executable from a file that isn't supposed to be executable.
3265
3266         Rubber-stamped by Geoff Garen.
3267
3268         * wtf/MediaTime.h:
3269
3270 2013-03-13  Oliver Hunt  <oliver@apple.com>
3271
3272         Simplify Checked<> multiplication
3273         https://bugs.webkit.org/show_bug.cgi?id=112286
3274
3275         Reviewed by James Robinson.
3276
3277         Trying to correctly identify multiplication by zero complicated the
3278         unsigned * unsigned multiply, and still didn't handle all cases correctly.
3279         Now we just do the normal division based approach to overflow detection
3280         leading to much simpler reasoning.
3281
3282         Would be nice if we could have a jo style intrinsic one day.
3283
3284         * wtf/CheckedArithmetic.h:
3285
3286 2013-03-13  Dean Jackson  <dino@apple.com>
3287
3288         Unreviewed attempted build fix for Windows. SchedulePair.cpp -> SchedulePairCF.cpp
3289
3290         * WTF.vcproj/WTF.vcproj:
3291         * WTF.vcxproj/WTF.vcxproj:
3292         * WTF.vcxproj/WTF.vcxproj.filters:
3293
3294 2013-03-13  Benjamin Poulain  <bpoulain@apple.com>
3295
3296         [iOS] Add optimized version of StringImpl's equal(LChar*,LChar*) for Apple CPUs
3297         https://bugs.webkit.org/show_bug.cgi?id=112202
3298
3299         Reviewed by Gavin Barraclough.
3300
3301         * Source/WTF/wtf/Platform.h:
3302         Make the macro WTF_ARM_ARCH_VERSION valid on any architecture.
3303         * wtf/text/StringImpl.h:
3304         (WTF::equal):
3305         On ARMv7S, the new version is about 11% percent faster than the simple loop.
3306         On ARMv7 classic, memcmp is a little faster than the simple loop on Apple A5.
3307
3308 2013-03-13  James Robinson  <jamesr@chromium.org>
3309
3310         SchedulePair.cpp is CF-specific
3311         https://bugs.webkit.org/show_bug.cgi?id=112204
3312
3313         Reviewed by Oliver Hunt.
3314
3315         This renames SchedulePair.cpp SchedulePairCF.cpp, since it depends on CF, and excludes it from chromium's gyp
3316         files.
3317
3318         * WTF.gyp/WTF.gyp:
3319           Add CF to the exclusion filter for the Chromium port.
3320         * WTF.gypi:
3321           Add SchedulePairCF.cpp
3322         * WTF.xcodeproj/project.pbxproj:
3323           Update project file to point to new .cpp location
3324         * wtf/SchedulePairCF.cpp: Renamed from Source/WTF/wtf/SchedulePair.cpp.
3325
3326 2013-03-13  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3327
3328         Support C++11 features in GCC <4.6
3329         https://bugs.webkit.org/show_bug.cgi?id=111553
3330
3331         Reviewed by Simon Hausmann.
3332
3333         Enable support for rvalue references from gcc 4.3, deleted functions
3334         from gcc 4.4, explicit conversion from gcc 4.5, and strongly typed
3335         enums from gcc 4.6. 
3336
3337         * wtf/Compiler.h:
3338
3339 2013-03-12  Geoffrey Garen  <ggaren@apple.com>
3340
3341         Unreviewed attempted Windows build fix after http://trac.webkit.org/changeset/145592.
3342
3343         * wtf/SchedulePair.cpp:
3344         * wtf/SchedulePair.h:
3345         (WTF::SchedulePair::SchedulePair): Since linking is failing,
3346         try inlining this function.
3347
3348 2013-03-12  Tim Horton  <timothy_horton@apple.com>
3349
3350         Typo in earlier Windows build fix. Unreviewed.
3351
3352         * WTF.vcproj/WTF.vcproj:
3353
3354 2013-03-12  Tim Horton  <timothy_horton@apple.com>
3355
3356         Unreviewed attempted Windows build fix after http://trac.webkit.org/changeset/145592.
3357
3358         * WTF.vcproj/WTF.vcproj:
3359         * WTF.vcxproj/WTF.vcxproj:
3360         * WTF.vcxproj/WTF.vcxproj.filters:
3361
3362 2013-03-12  James Robinson  <jamesr@chromium.org>
3363
3364         Build fix for r145592 - update gyp files to refer to new file locations.
3365
3366         * WTF.gypi:
3367
3368 2013-03-12  Geoffrey Garen  <ggaren@apple.com>
3369
3370         Moved RunLoopTimer and SchedulePair to WTF
3371         https://bugs.webkit.org/show_bug.cgi?id=112171
3372
3373         Reviewed by Oliver Hunt.
3374
3375         This will allow us to use timers in lower level primitives without
3376         duplicating all the code.
3377
3378         * WTF.xcodeproj/project.pbxproj:
3379         * wtf/AutodrainedPool.h: Copied from Source/WebCore/platform/AutodrainedPool.h.
3380         (AutodrainedPool):
3381         * wtf/AutodrainedPoolMac.mm: Copied from Source/WebCore/platform/mac/AutodrainedPool.mm.
3382         * wtf/RunLoopTimer.h: Copied from Source/WebCore/platform/RunLoopTimer.h.
3383         * wtf/RunLoopTimerCF.cpp: Copied from Source/WebCore/platform/cf/RunLoopTimerCF.cpp.
3384         * wtf/SchedulePair.cpp: Copied from Source/WebCore/platform/cf/SchedulePair.cpp.
3385         * wtf/SchedulePair.h: Copied from Source/WebCore/platform/cf/SchedulePair.h.
3386         (SchedulePair):
3387         * wtf/SchedulePairMac.mm: Copied from Source/WebCore/platform/mac/SchedulePairMac.mm.
3388
3389 2013-03-12  Oliver Hunt  <oliver@apple.com>
3390
3391         Add more Checked<> tests
3392         https://bugs.webkit.org/show_bug.cgi?id=112190
3393
3394         Reviewed by Geoffrey Garen.
3395
3396         Export the CheckedState enum type
3397
3398         * wtf/CheckedArithmetic.h:
3399
3400 2013-03-12  Oliver Hunt  <oliver@apple.com>
3401
3402         Make CheckedArithmetic slightly more sane
3403         https://bugs.webkit.org/show_bug.cgi?id=112178
3404
3405         Reviewed by Geoffrey Garen.
3406
3407         Add an enum type for safeGet rather than using a bool,
3408         and correctly handle unsigned * unsigned, when one value
3409         is 0.
3410
3411         * wtf/CheckedArithmetic.h:
3412         (WTF::ENUM_CLASS):
3413         (WTF):
3414         (WTF::operator+):
3415         (WTF::operator-):
3416         (WTF::operator*):
3417
3418 2013-03-11  Michael Saboff  <msaboff@apple.com>
3419
3420         Unreviewed build fix.  Rolling out inadvertent setting of DATA_LOG_TO_FILE.
3421
3422 2013-03-11  Oliver Hunt  <oliver@apple.com>
3423
3424         Make SegmentedVector Noncopyable
3425         https://bugs.webkit.org/show_bug.cgi?id=112059
3426
3427         Reviewed by Geoffrey Garen.
3428
3429         Copying a SegmentedVector can be extraordinarily expensive, so we beat
3430         it with the Noncopyable stick - that way we can ensure that if anyone
3431         wants an actual copy they know what they're doing.
3432
3433         * wtf/SegmentedVector.h:
3434         (SegmentedVector):
3435
3436 2013-03-08  Benjamin Poulain  <benjamin@webkit.org>
3437
3438         [Mac] Add a feature flag for 'view-mode' Media Feature, disable it on Mac
3439         https://bugs.webkit.org/show_bug.cgi?id=111297
3440
3441         Reviewed by Kenneth Rohde Christiansen.
3442
3443         * wtf/FeatureDefines.h: Add a new feature flag for the view-mode
3444         CSS media: ENABLE_VIEW_MODE_CSS_MEDIA.
3445
3446 2013-03-08  Roger Fong  <roger_fong@apple.com>
3447
3448         Makefile fixes.
3449
3450         * WTF.vcxproj/WTF.make:
3451
3452 2013-03-08  Gabor Rapcsanyi  <rgabor@webkit.org>
3453
3454         Cache flush problem on ARMv7 JSC
3455         https://bugs.webkit.org/show_bug.cgi?id=111441
3456
3457         Reviewed by Zoltan Herczeg.
3458
3459         Not proper cache flush causing random crashes on ARMv7 Linux with V8 tests.
3460         The problem is similar to https://bugs.webkit.org/show_bug.cgi?id=77712.
3461         Change the cache fulsh mechanism similar to ARM traditinal and revert the
3462         temporary fix.
3463
3464         * wtf/OSAllocatorPosix.cpp:
3465         (WTF::OSAllocator::reserveUncommitted):
3466         (WTF::OSAllocator::decommit):
3467
3468 2013-03-07  Andrew Bortz  <andrew@abortz.net>
3469
3470         Replace Mersenne Twister random number generator with a simpler one.
3471         https://bugs.webkit.org/show_bug.cgi?id=111533
3472
3473         Reviewed by Adam Barth.
3474
3475         The new generator is only a single line long, but passes all the Diehard
3476         statistical tests and runs ~3x faster than the Mersenne Twister, with a
3477         guaranteed cycle length of 2^64 and only 8 bytes of state.
3478         
3479         * wtf/Platform.h: Mersenne Twister defines are no longer needed
3480         * wtf/RandomNumber.cpp:
3481         (WTF::Internal::initializeRandomNumber): State initialization
3482         (WTF::Internal::randomNumber): Actual implementation
3483         (WTF::randomNumber): We don't need to fall back on rand()-based generator anymore,
3484         so this code is greatly simplified.
3485         * wtf/RandomNumber.h:
3486         * wtf/RandomNumberSeed.h:
3487         (WTF::initializeRandomNumberGenerator): This code is no longer needed.
3488         Additionally, the code had an error, since rand() returns 32-bits, so each
3489         initializationBuffer's upper 16-bits has more bits set than random.
3490
3491 2013-03-06  Adenilson Cavalcanti  <cavalcantii@gmail.com>
3492
3493         Build fix: PageAllocationAligned no longer has executable flag
3494         https://bugs.webkit.org/show_bug.cgi?id=111659
3495
3496         Reviewed by Kentaro Hara.
3497
3498         Build fix: use false as parameter to execution flag.
3499
3500         * wtf/PageAllocationAligned.cpp:
3501         (WTF::PageAllocationAligned::allocate):
3502
3503 2013-03-06  Eric Seidel  <eric@webkit.org>
3504
3505         AtomicStringImpls are not safe to send between threads
3506         https://bugs.webkit.org/show_bug.cgi?id=111652
3507
3508         Reviewed by Benjamin Poulain.
3509
3510         We don't have this problem yet, but it's good to be safe.
3511
3512         * wtf/text/WTFString.cpp:
3513         (WTF::String::isSafeToSendToAnotherThread):
3514
3515 2013-03-06  Oliver Hunt  <oliver@apple.com>
3516
3517         Don't give PageAllocationAligned the option to allocate executable memory
3518         https://bugs.webkit.org/show_bug.cgi?id=111657
3519
3520         Reviewed by Geoffrey Garen.
3521
3522         * wtf/PageAllocationAligned.cpp:
3523         (WTF::PageAllocationAligned::allocate):
3524         * wtf/PageAllocationAligned.h:
3525         (PageAllocationAligned):
3526
3527 2013-03-04  Jer Noble  <jer.noble@apple.com>
3528
3529         Default mouse cursor behavior should be auto-hide for full screen video with custom controls
3530         https://bugs.webkit.org/show_bug.cgi?id=107601
3531
3532         Reviewed by Beth Dakin.
3533
3534         Enable the CURSOR_VISIBILITY feature.
3535
3536         * wtf/FeatureDefines.h:
3537
3538 2013-03-04  Oliver Hunt  <oliver@apple.com>
3539
3540         Make fastmalloc use guardpages
3541         https://bugs.webkit.org/show_bug.cgi?id=111353
3542
3543         Reviewed by Anders Carlsson.
3544
3545         Add PROT_NONE pages at the beginning and end of every
3546         mmap call made by fastmalloc.
3547
3548         * wtf/TCSystemAlloc.cpp:
3549         (TryMmap):
3550
3551 2013-03-06  Paweł Forysiuk  <tuxator@o2.pl>
3552
3553         Typo in inline function in ByteOrder.h
3554         https://bugs.webkit.org/show_bug.cgi?id=111473
3555
3556         Reviewed by Benjamin Poulain.
3557
3558         * wtf/ByteOrder.h:
3559         (ntohs):
3560
3561 2013-03-05  Ryuan Choi  <ryuan.choi@samsung.com>
3562
3563         [EFL] Build break with latest EFL libraries
3564         https://bugs.webkit.org/show_bug.cgi?id=111028
3565
3566         Reviewed by Dirk Pranke.
3567
3568         * wtf/PlatformEfl.cmake: Added ECORE_IMF_INCLUDE_DIRS.
3569
3570 2013-03-05  Csaba Osztrogonác  <ossy@webkit.org>
3571
3572         Fix cast-align warning in ASCIIFastPath.h on ARM
3573         https://bugs.webkit.org/show_bug.cgi?id=111436
3574
3575         Reviewed by Benjamin Poulain.
3576
3577         * wtf/text/ASCIIFastPath.h:
3578         (WTF::charactersAreAllASCII):
3579
3580 2013-03-04  Laszlo Gombos  <l.gombos@samsung.com>
3581
3582         JSC_OBJC_API_ENABLED should be removed from FeatureDefines.h
3583         https://bugs.webkit.org/show_bug.cgi?id=111269
3584
3585         Reviewed by Mark Hahnenberg.
3586
3587         JSC_OBJC_API_ENABLED flag was added to FeatureDefines.h (r143637) 
3588         so that it could be used in WebCore.exp.in to determine whether 
3589         or not we should be exporting certain symbols based on whether 
3590         the WebKit-related portion of the JSC ObjC API was enabled.
3591         
3592         It turned out conditionally including certain symbols didn't
3593         work when building fat binaries, so it's not even necessary any more.
3594
3595         * wtf/FeatureDefines.h: Remove JSC_OBJC_API_ENABLED.
3596
3597 2013-03-04  Andreas Kling  <akling@apple.com>
3598
3599         Deque: Free internal buffer in clear().
3600         <http://webkit.org/b/111316>
3601         <rdar://problem/13336675>
3602
3603         Reviewed by Antti Koivisto.
3604
3605         525 kB progression on Membuster3.
3606
3607         * wtf/Deque.h:
3608         (WTF::::clear):
3609
3610 2013-03-04  Kunihiko Sakamoto  <ksakamoto@chromium.org>
3611
3612         Add build flag for FontLoader
3613         https://bugs.webkit.org/show_bug.cgi?id=111289
3614
3615         Reviewed by Benjamin Poulain.
3616
3617         Add ENABLE_FONT_LOAD_EVENTS build flag (disabled by default).
3618
3619         * wtf/FeatureDefines.h:
3620
3621 2013-02-27  Darin Adler  <darin@apple.com>
3622
3623         StringHasher functions require alignment that call sites do not all guarantee
3624         https://bugs.webkit.org/show_bug.cgi?id=110171
3625
3626         Reviewed by Benjamin Poulain.
3627
3628         The StringHasher class is optimized for clients who pass it two characters at
3629         a time. However, the function named addCharacters did not make this clear to
3630         clients, and one calculateStringHashAndLengthFromUTF8MaskingTop8Bits got it wrong.
3631         Fix by making addCharacters work regardless of hasher alignment and adding a new
3632         function, addCharactersAssumingAligned, for use when we want a faster path and can
3633         guarantee we are adding characters two at a time.
3634
3635         * wtf/StringHasher.h:
3636         (WTF::StringHasher::addCharactersAssumingAligned): Renamed the addCharacters function
3637         addCharactersAssumingAligned, since it only works if the hasher is currently aligned,
3638         meaning it contains an even number of characters. The function already asserts
3639         that this is true, but the calculateStringHashAndLengthFromUTF8MaskingTop8Bits
3640         function was using it in cases where the assertion could fire. Also updated to
3641         call addCharactersInternal by its new name. Also added some new overloads that take
3642         data pointers and lengths so callers can always use addCharactersAssumingAligned
3643         instead of addCharacters if they know the hasher is aligned.
3644         (WTF::StringHasher::addCharacter): Updated to call the public
3645         addCharactersAssumingAligned function since that's simpler and a bit cleaner.
3646         (WTF::StringHasher::addCharacters): Added functions with this name that handle
3647         the case where the hasher is not aligned. These will be called by existing call sites
3648         that were formerly using the function named addCharactersAssumingAligned above.
3649         Also add an overload that works with the default converter automatically.
3650         (WTF::StringHasher::computeHashAndMaskTop8Bits): Changed to call
3651         addCharactersAssumingAligned to eliminate copied and pasted code. The hasher is empty,
3652         so definitely aligned.
3653         (WTF::StringHasher::computeHash): Ditto.
3654         (WTF::StringHasher::addCharactersInternal): Renamed from addCharactersToHash, since
3655         the former name did not make clear how this differs from the public functions.
3656         The real difference is that this is like addCharactersAssumingAligned, but without
3657         the assertion, so addCharactersAssumingAligned is called instead, even within the
3658         class's implementation.
3659
3660 2013-03-01  Ilya Tikhonovsky  <loislo@chromium.org>
3661
3662         Web Inspector: Native Memory Instrumentation: do not visit raw pointers by default.
3663         https://bugs.webkit.org/show_bug.cgi?id=110943
3664
3665         Reviewed by Yury Semikhatsky.
3666
3667         Unfortunately in many cases raw pointer may point to an object that has been deleted.
3668         There is no working solution to solve this problem in general.
3669         It could be solved only on case by case basis.
3670
3671         * wtf/MemoryInstrumentation.h:
3672         (WTF::MemoryInstrumentation::addObject):
3673         (WTF::MemoryInstrumentation::MemberTypeTraits::addObject):
3674         (WTF::MemoryClassInfo::addMember):
3675         (WTF::MemoryInstrumentation::addObjectImpl):
3676         * wtf/MemoryInstrumentationString.h:
3677         (WTF::reportMemoryUsage):
3678
3679 2013-03-01  Eric Seidel  <eric@webkit.org>
3680
3681         Threaded HTML Parser has an extra copy of every byte from the network
3682         https://bugs.webkit.org/show_bug.cgi?id=111135
3683
3684         Reviewed by Adam Barth.
3685
3686         The threaded html parser needs to accept ownership
3687         of a string buffer.  The easiest way to do this seemed
3688         to be to use a PassRefPtr<StringImpl>, but there was no way
3689         to generated one from a String (easily), so I added one.
3690
3691         * wtf/text/WTFString.h:
3692         (WTF::String::releaseImpl):
3693
3694 2013-02-28  Oliver Hunt  <oliver