1 2015-03-30: Version 4.3.61
3 Performance and stability improvements on all platforms.
6 2015-03-28: Version 4.3.60
8 Reland^2 "Filter invalid slots out from the SlotsBuffer after marking."
9 (Chromium issues 454297, 470801).
11 This fixes missing incremental write barrier issue when double fields
12 unboxing is enabled (Chromium issue 469146).
14 Performance and stability improvements on all platforms.
17 2015-03-27: Version 4.3.59
19 Use a slot that is located on a heap page when removing invalid entries
20 from the SlotsBuffer (Chromium issue 470801).
22 Performance and stability improvements on all platforms.
25 2015-03-26: Version 4.3.58
27 Return timestamp of the last recorded interval to the caller of
28 HeapProfiler::GetHeapStats (Chromium issue 467222).
30 Performance and stability improvements on all platforms.
33 2015-03-26: Version 4.3.57
35 Reland [V8] Removed SourceLocationRestrict (Chromium issue 468781).
37 Performance and stability improvements on all platforms.
40 2015-03-25: Version 4.3.56
42 Remove v8::Isolate::ClearInterrupt.
44 Performance and stability improvements on all platforms.
47 2015-03-25: Version 4.3.55
49 Performance and stability improvements on all platforms.
52 2015-03-24: Version 4.3.54
54 Do not assign positions to parser-generated desugarings (Chromium issue
57 Performance and stability improvements on all platforms.
60 2015-03-24: Version 4.3.53
62 Filter invalid slots out from the SlotsBuffer after marking (Chromium
65 Fix OOM bug 3976 (issue 3976).
67 Performance and stability improvements on all platforms.
70 2015-03-24: Version 4.3.52
72 Remove calls to IdleNotification().
74 Save heap object tracking data in heap snapshot (Chromium issue 467222).
76 Performance and stability improvements on all platforms.
79 2015-03-24: Version 4.3.51
81 [V8] Removed SourceLocationRestrict (Chromium issue 468781).
83 [turbofan] Fix control reducer bug with walking non-control edges during
84 ConnectNTL phase (Chromium issue 469605).
86 Performance and stability improvements on all platforms.
89 2015-03-23: Version 4.3.50
91 Performance and stability improvements on all platforms.
94 2015-03-23: Version 4.3.49
96 Ensure we don't overflow in BCE (Chromium issue 469148).
98 [turbofan] Fix lowering of Math.max for integral inputs (Chromium issue
101 Use libdl to get symbols for backtraces.
103 Performance and stability improvements on all platforms.
106 2015-03-19: Version 4.3.48
108 Clarify what APIs return Maybe and MaybeLocal values (issue 3929).
110 Introduce explicit constant for per Context debug data set by embedder
111 (Chromium issue 466631).
113 Adjust key behaviour for weak collections (issues 3970, 3971, Chromium
116 Turn on overapproximation of the weak closure (issue 3862).
118 Performance and stability improvements on all platforms.
121 2015-03-18: Version 4.3.47
123 Performance and stability improvements on all platforms.
126 2015-03-17: Version 4.3.46
128 Performance and stability improvements on all platforms.
131 2015-03-17: Version 4.3.45
133 Performance and stability improvements on all platforms.
136 2015-03-17: Version 4.3.44
138 Performance and stability improvements on all platforms.
141 2015-03-16: Version 4.3.43
143 Bugfix in hydrogen GVN (Chromium issue 467481).
145 Remove obsolete TakeHeapSnapshot method from API (Chromium issue
148 Beautify syntax error for unterminated argument list (Chromium issue
151 Performance and stability improvements on all platforms.
154 2015-03-16: Version 4.3.42
156 Performance and stability improvements on all platforms.
159 2015-03-15: Version 4.3.41
161 Performance and stability improvements on all platforms.
164 2015-03-14: Version 4.3.40
166 Performance and stability improvements on all platforms.
169 2015-03-14: Version 4.3.39
171 Performance and stability improvements on all platforms.
174 2015-03-14: Version 4.3.38
176 Remove --harmony-scoping flag.
178 Performance and stability improvements on all platforms.
181 2015-03-13: Version 4.3.37
183 Implement TDZ in StoreIC for top-level lexicals (issue 3941).
185 Turn on job-based optimizing compiler (issue 3608).
187 Performance and stability improvements on all platforms.
190 2015-03-13: Version 4.3.36
192 Performance and stability improvements on all platforms.
195 2015-03-12: Version 4.3.35
197 Add Cast() for Int32 and Uint32 (Chromium issue 462402).
199 Incorrect handling of HTransitionElementsKind in hydrogen check
200 elimination phase fixed (Chromium issue 460917).
202 Performance and stability improvements on all platforms.
205 2015-03-12: Version 4.3.34
207 Performance and stability improvements on all platforms.
210 2015-03-12: Version 4.3.33
212 Fix the toolchain used to build the snapshots in GN (Chromium issues
215 Performance and stability improvements on all platforms.
218 2015-03-11: Version 4.3.32
220 Reland of Remove slots that point to unboxed doubles from the
221 StoreBuffer/SlotsBuffer (Chromium issues 454297, 465273).
223 Performance and stability improvements on all platforms.
226 2015-03-11: Version 4.3.31
228 Performance and stability improvements on all platforms.
231 2015-03-11: Version 4.3.30
233 Remove uid and title from HeapSnapshot (Chromium issue 465651).
235 Remove deprecated CpuProfiler methods.
237 [turbofan] Fix --turbo-osr for OSRing into inner loop inside for-in
238 (Chromium issue 462775).
240 Performance and stability improvements on all platforms.
243 2015-03-10: Version 4.3.29
245 Performance and stability improvements on all platforms.
248 2015-03-10: Version 4.3.28
250 Performance and stability improvements on all platforms.
253 2015-03-10: Version 4.3.27
255 Performance and stability improvements on all platforms.
258 2015-03-07: Version 4.3.26
260 Remove slots that point to unboxed doubles from the
261 StoreBuffer/SlotsBuffer (Chromium issue 454297).
263 Performance and stability improvements on all platforms.
266 2015-03-06: Version 4.3.25
268 Performance and stability improvements on all platforms.
271 2015-03-06: Version 4.3.24
273 convert more things to maybe (issue 3929).
275 Performance and stability improvements on all platforms.
278 2015-03-05: Version 4.3.23
280 [V8] Use Function.name for stack frames in v8::StackTrace (Chromium
283 Allow passing sourceMapUrl when compiling scripts (Chromium issue
286 convert compile functions to use maybe (issue 3929).
288 Performance and stability improvements on all platforms.
291 2015-03-05: Version 4.3.22
293 give UniquePersistent full move semantics (issue 3669).
295 Performance and stability improvements on all platforms.
298 2015-03-05: Version 4.3.21
300 Performance and stability improvements on all platforms.
303 2015-03-04: Version 4.3.20
305 convert remaining object functions to maybes (issue 3929).
307 Performance and stability improvements on all platforms.
310 2015-03-04: Version 4.3.19
312 ARM assembler: fix undefined behaviour in fits_shifter (Chromium issues
315 Implement subclassing Arrays (issue 3930).
317 [es6] Fix for-const loops (issue 3983).
319 Performance and stability improvements on all platforms.
322 2015-03-04: Version 4.3.18
324 Implement subclassing Arrays (issue 3930).
326 Performance and stability improvements on all platforms.
329 2015-03-04: Version 4.3.17
331 Implement subclassing Arrays (issue 3930).
333 convert more object functions to return maybes (issue 3929).
335 Performance and stability improvements on all platforms.
338 2015-03-03: Version 4.3.16
340 check for null context on execution entry (issue 3929).
342 convert object::* to return maybe values (issue 3929).
344 Removed funky Maybe constructor and made fields private (issue 3929).
346 Polish Maybe API a bit, removing useless creativity and fixing some
347 signatures (issue 3929).
349 Performance and stability improvements on all platforms.
352 2015-03-02: Version 4.3.15
354 Performance and stability improvements on all platforms.
357 2015-03-02: Version 4.3.14
359 Performance and stability improvements on all platforms.
362 2015-02-28: Version 4.3.13
364 Disallow subclassing Arrays (issue 3930).
366 Performance and stability improvements on all platforms.
369 2015-02-28: Version 4.3.12
371 Performance and stability improvements on all platforms.
374 2015-02-27: Version 4.3.11
376 Disallow subclassing Arrays (issue 3930).
378 convert Value::*Value() function to return Maybe results (issue 3929).
380 Performance and stability improvements on all platforms.
383 2015-02-27: Version 4.3.10
385 Convert v8::Value::To* to use MaybeLocal (issue 3929).
387 Performance and stability improvements on all platforms.
390 2015-02-26: Version 4.3.9
392 Add public version macros (issue 3075).
394 Performance and stability improvements on all platforms.
397 2015-02-26: Version 4.3.8
399 Performance and stability improvements on all platforms.
402 2015-02-25: Version 4.3.7
404 Performance and stability improvements on all platforms.
407 2015-02-25: Version 4.3.6
409 Performance and stability improvements on all platforms.
412 2015-02-25: Version 4.3.5
414 Turn on job based recompilation (issue 3608).
416 Performance and stability improvements on all platforms.
419 2015-02-24: Version 4.3.4
421 Reland "Correctly propagate terminate exception in TryCall." (issue
424 Performance and stability improvements on all platforms.
427 2015-02-24: Version 4.3.3
429 Performance and stability improvements on all platforms.
432 2015-02-24: Version 4.3.2
434 Update GN build files with the cpu_arch -> current_cpu change.
436 Performance and stability improvements on all platforms.
439 2015-02-23: Version 4.3.1
441 Limit size of first page based on serialized data (Chromium issue
444 Performance and stability improvements on all platforms.
447 2015-02-19: Version 4.2.77
449 Make generator constructors configurable (issue 3902).
451 Performance and stability improvements on all platforms.
454 2015-02-19: Version 4.2.76
456 Performance and stability improvements on all platforms.
459 2015-02-18: Version 4.2.75
461 Performance and stability improvements on all platforms.
464 2015-02-18: Version 4.2.74
466 Correctly propagate terminate exception in TryCall (issue 3892).
468 Performance and stability improvements on all platforms.
471 2015-02-17: Version 4.2.73
473 Performance and stability improvements on all platforms.
476 2015-02-17: Version 4.2.72
478 [turbofan] Fix control reducer with re-reducing branches (Chromium issue
481 Performance and stability improvements on all platforms.
484 2015-02-16: Version 4.2.71
486 Implement ES6 rest parameters (issue 2159).
488 Performance and stability improvements on all platforms.
491 2015-02-13: Version 4.2.70
493 new classes: no longer experimental (issue 3834).
495 Make it possible to define arguments for CompileFunctionInContext.
497 Performance and stability improvements on all platforms.
500 2015-02-12: Version 4.2.69
502 Performance and stability improvements on all platforms.
505 2015-02-11: Version 4.2.68
507 Performance and stability improvements on all platforms.
510 2015-02-11: Version 4.2.67
512 Throw on range error when creating a string via API (issue 3853).
514 Performance and stability improvements on all platforms.
517 2015-02-11: Version 4.2.66
519 Performance and stability improvements on all platforms.
522 2015-02-10: Version 4.2.65
524 Performance and stability improvements on all platforms.
527 2015-02-10: Version 4.2.64
529 Performance and stability improvements on all platforms.
532 2015-02-10: Version 4.2.63
534 Introduce a compile method that takes context extensions (Chromium issue
537 Performance and stability improvements on all platforms.
540 2015-02-09: Version 4.2.62
542 Performance and stability improvements on all platforms.
545 2015-02-09: Version 4.2.61
547 Performance and stability improvements on all platforms.
550 2015-02-07: Version 4.2.60
552 Performance and stability improvements on all platforms.
555 2015-02-07: Version 4.2.59
557 Performance and stability improvements on all platforms.
560 2015-02-07: Version 4.2.58
562 Performance and stability improvements on all platforms.
565 2015-02-06: Version 4.2.57
567 Performance and stability improvements on all platforms.
570 2015-02-06: Version 4.2.56
572 Performance and stability improvements on all platforms.
575 2015-02-06: Version 4.2.55
577 Protect against uninitialized lexical variables at top-level (Chromium
580 Performance and stability improvements on all platforms.
583 2015-02-05: Version 4.2.54
585 Fix HConstant(double, ...) constructor (issue 3865).
587 Add NativeWeakMap to v8.h (Chromium issue 437416).
589 Performance and stability improvements on all platforms.
592 2015-02-05: Version 4.2.53
594 Fix issue with multiple properties and emit store (issue 3856).
596 Class methods should be non enumerable (issue 3330).
598 Performance and stability improvements on all platforms.
601 2015-02-04: Version 4.2.52
603 Add WeakKeyMap to v8.h (Chromium issue 437416).
605 Performance and stability improvements on all platforms.
608 2015-02-04: Version 4.2.51
610 Performance and stability improvements on all platforms.
613 2015-02-03: Version 4.2.50
615 Reset inlining limits due to overly long compilation times in
616 Speedometer, Dart2JS (Chromium issue 454625).
618 Add WeakMap to v8.h (Chromium issue 437416).
620 [V8] Added line, column and script symbols for SyntaxError (Chromium
623 Performance and stability improvements on all platforms.
626 2015-02-03: Version 4.2.49
628 Compute the same hash for all NaN values (issue 3859).
630 Performance and stability improvements on all platforms.
633 2015-02-03: Version 4.2.48
635 Performance and stability improvements on all platforms.
638 2015-02-02: Version 4.2.47
640 Check global object behind global proxy for extensibility (Chromium
643 Performance and stability improvements on all platforms.
646 2015-02-02: Version 4.2.46
648 Performance and stability improvements on all platforms.
651 2015-02-02: Version 4.2.45
653 Performance and stability improvements on all platforms.
656 2015-02-01: Version 4.2.44
658 Performance and stability improvements on all platforms.
661 2015-02-01: Version 4.2.43
663 Performance and stability improvements on all platforms.
666 2015-01-31: Version 4.2.42
668 Performance and stability improvements on all platforms.
671 2015-01-31: Version 4.2.41
673 Layout descriptor sharing issue fixed (issue 3832, Chromium issue
676 Performance and stability improvements on all platforms.
679 2015-01-30: Version 4.2.40
681 Performance and stability improvements on all platforms.
684 2015-01-30: Version 4.2.38
686 Move object literal checking into checker classes (issue 3819).
688 [turbofan] Fix OSR compilations of for-in.
690 Performance and stability improvements on all platforms.
693 2015-01-30: Version 4.2.37
695 Do not create unresolved variables when parsing arrow functions lazily
698 Performance and stability improvements on all platforms.
701 2015-01-29: Version 4.2.36
703 Performance and stability improvements on all platforms.
706 2015-01-29: Version 4.2.35
708 Performance and stability improvements on all platforms.
711 2015-01-28: Version 4.2.34
713 Performance and stability improvements on all platforms.
716 2015-01-28: Version 4.2.33
718 Performance and stability improvements on all platforms.
721 2015-01-27: Version 4.2.32
723 Do not generalize field representations when making elements kind or
724 observed transition (Chromium issue 448711).
726 Performance and stability improvements on all platforms.
729 2015-01-27: Version 4.2.31
731 [x86] Disable AVX unless the operating system explicitly claims to
732 support it (issue 3846, Chromium issue 452033).
734 Performance and stability improvements on all platforms.
737 2015-01-27: Version 4.2.30
739 Performance and stability improvements on all platforms.
742 2015-01-26: Version 4.2.29
744 MIPS: Fixed Hydrogen environment handling for mul-i ARM and ARM64 (issue
747 [turbofan] Simplify reduction if IfTrue and IfFalse and fix bugs
748 (Chromium issue 451958).
750 Add HeapNumber fast path to v8::Value::{Uint,Int}32Value() (Chromium
753 Performance and stability improvements on all platforms.
756 2015-01-26: Version 4.2.28
758 Fixed Hydrogen environment handling for mul-i on ARM and ARM64 (issue
761 Performance and stability improvements on all platforms.
764 2015-01-25: Version 4.2.27
766 Performance and stability improvements on all platforms.
769 2015-01-24: Version 4.2.26
771 ES6 Array.prototype.toString falls back on Object.prototype.toString if
772 method "join" is not callable (issue 3793).
774 Performance and stability improvements on all platforms.
777 2015-01-23: Version 4.2.25
779 Performance and stability improvements on all platforms.
782 2015-01-23: Version 4.2.24
784 Performance and stability improvements on all platforms.
787 2015-01-23: Version 4.2.23
789 [x86] Blacklist AVX for Windows versions before 6.1 (Windows 7) (issue
792 Performance and stability improvements on all platforms.
795 2015-01-23: Version 4.2.22
797 Fix run-time ARMv6 detection (issue 3844).
799 Support concatenating with zero-size arrays with DICTIONARY_ELEMENTS in
800 Runtime_ArrayConcat (Chromium issue 450895).
802 Performance and stability improvements on all platforms.
805 2015-01-22: Version 4.2.21
807 Performance and stability improvements on all platforms.
810 2015-01-22: Version 4.2.20
812 Add a pretty printer to improve the error message non-function calls
813 (Chromium issue 259443).
815 Remove implicit uint8_t to char cast in string replace (Chromium issue
818 Performance and stability improvements on all platforms.
821 2015-01-21: Version 4.2.19
823 Performance and stability improvements on all platforms.
826 2015-01-20: Version 4.2.18
828 Fix issue with __proto__ when using ES6 object literals (issue 3818).
830 Performance and stability improvements on all platforms.
833 2015-01-20: Version 4.2.17
835 Performance and stability improvements on all platforms.
838 2015-01-20: Version 4.2.16
840 Performance and stability improvements on all platforms.
843 2015-01-19: Version 4.2.15
845 Unobscurified OFStream (Chromium issue 448102).
847 Performance and stability improvements on all platforms.
850 2015-01-19: Version 4.2.14
852 Performance and stability improvements on all platforms.
855 2015-01-18: Version 4.2.13
857 Performance and stability improvements on all platforms.
860 2015-01-18: Version 4.2.12
862 Performance and stability improvements on all platforms.
865 2015-01-17: Version 4.2.11
867 Performance and stability improvements on all platforms.
870 2015-01-16: Version 4.2.10
872 Performance and stability improvements on all platforms.
875 2015-01-16: Version 4.2.9
877 MIPS: ES6 computed property names (issue 3754).
879 ES6 computed property names (issue 3754).
881 Performance and stability improvements on all platforms.
884 2015-01-15: Version 4.2.8
886 Performance and stability improvements on all platforms.
889 2015-01-15: Version 4.2.7
891 Performance and stability improvements on all platforms.
894 2015-01-15: Version 4.2.6
896 Performance and stability improvements on all platforms.
899 2015-01-15: Version 4.2.5
901 Performance and stability improvements on all platforms.
904 2015-01-14: Version 4.2.4
906 Auto-generate v8 version based on tags (Chromium issue 446166).
908 Remove support for signatures with arguments.
910 Add proper support for proxies to HType (Chromium issue 448730).
912 [turbofan] Fix truncation/representation sloppiness wrt. bool/bit (issue
915 Performance and stability improvements on all platforms.
918 2015-01-14: Version 4.2.3
920 Performance and stability improvements on all platforms.
923 2015-01-14: Version 4.2.2
925 Performance and stability improvements on all platforms.
928 2015-01-14: Version 4.2.1
930 Map -0 to integer 0 for typed array constructors (Chromium issue
933 Introduce a gyp variable to control whether or not slow dchecks are on.
935 Correctly setup the freelist of the coderange on Win64 (Chromium issue
938 Fast forward V8 to version 4.2.
940 Remove "extra checks".
942 Performance and stability improvements on all platforms.
945 2015-01-08: Version 3.32.7
947 Correctly parse line ends for debugging (issue 2825).
949 Fixed printing during DCE (issue 3679).
951 Performance and stability improvements on all platforms.
954 2015-01-08: Version 3.32.6
956 Performance and stability improvements on all platforms.
959 2015-01-08: Version 3.32.5
961 Correct handling of exceptions occured during getting of exception stack
962 trace (Chromium issue 444805).
964 Fix bug in Runtime_CompileOptimized resulting from stack overflow
965 (Chromium issue 446774).
967 Turn on job-based recompilation (issue 3608).
969 Performance and stability improvements on all platforms.
972 2015-01-07: Version 3.32.4
974 Performance and stability improvements on all platforms.
977 2015-01-07: Version 3.32.3
979 Performance and stability improvements on all platforms.
982 2015-01-07: Version 3.32.2
984 Performance and stability improvements on all platforms.
987 2015-01-07: Version 3.32.1
989 [turbofan] Don't crash when typing load from a Uint8ClampedArray
990 (Chromium issue 446156).
992 [turbofan] Truncation of Bit/Word8/16 to Word32 is a no-op (Chromium
995 [x64] Rearrange code for OOB integer loads (Chromium issue 445858).
997 Fix %NeverOptimizeFunction() intrinsic (Chromium issue 445732).
999 [turbofan] Fix invalid bounds check with overflowing offset (Chromium
1002 [turbofan] Raise max virtual registers and call parameter limit (issue
1005 Performance and stability improvements on all platforms.
1008 2014-12-23: Version 3.31.74
1010 [turbofan] Turn DCHECK for fixed slot index into a CHECK (Chromium issue
1013 Performance and stability improvements on all platforms.
1016 2014-12-23: Version 3.31.73
1018 [turbofan] Fix missing ChangeUint32ToUint64 in lowering of LoadBuffer
1019 (Chromium issue 444695).
1021 Enable the embedder to specify what kind of context was disposed.
1023 Performance and stability improvements on all platforms.
1026 2014-12-22: Version 3.31.72
1028 [turbofan] Correctify lowering of Uint8ClampedArray buffer access
1029 (Chromium issue 444508).
1031 Performance and stability improvements on all platforms.
1034 2014-12-20: Version 3.31.71
1036 Performance and stability improvements on all platforms.
1039 2014-12-20: Version 3.31.70
1041 Performance and stability improvements on all platforms.
1044 2014-12-20: Version 3.31.69
1046 Performance and stability improvements on all platforms.
1049 2014-12-19: Version 3.31.68
1051 [turbofan] Fix unsafe out-of-bounds check for checked loads/stores
1052 (Chromium issue 443744).
1054 Performance and stability improvements on all platforms.
1057 2014-12-19: Version 3.31.67
1059 Performance and stability improvements on all platforms.
1062 2014-12-19: Version 3.31.66
1064 Ship ES6 template literals (issue 3230).
1066 Performance and stability improvements on all platforms.
1069 2014-12-18: Version 3.31.65
1071 ES6 template literals should not use legacy octal strings (issue 3736).
1073 Performance and stability improvements on all platforms.
1076 2014-12-18: Version 3.31.64
1078 Fixed -fsanitize=float-cast-overflow problems (issue 3773).
1080 Performance and stability improvements on all platforms.
1083 2014-12-18: Version 3.31.63
1085 ES6 computed property names (issue 3754).
1087 Performance and stability improvements on all platforms.
1090 2014-12-17: Version 3.31.62
1092 Performance and stability improvements on all platforms.
1095 2014-12-17: Version 3.31.61
1097 ES6: Update unscopables to match spec (issue 3632).
1099 ES6 computed property names (issue 3754).
1101 More -fsanitize=vptr fixes (Chromium issue 441099).
1103 [turbofan] Cache conversions inserted during typed lowering (issue
1106 Performance and stability improvements on all platforms.
1109 2014-12-16: Version 3.31.60
1111 Performance and stability improvements on all platforms.
1114 2014-12-16: Version 3.31.59
1116 Performance and stability improvements on all platforms.
1119 2014-12-16: Version 3.31.58
1121 Ship ES6 classes (issue 3330).
1123 ES6 computed property names (issue 3754).
1125 Performance and stability improvements on all platforms.
1128 2014-12-12: Version 3.31.57
1130 Consistently use only one of virtual/OVERRIDE/FINAL (issue 3753).
1132 Performance and stability improvements on all platforms.
1135 2014-12-12: Version 3.31.56
1137 Performance and stability improvements on all platforms.
1140 2014-12-12: Version 3.31.55
1142 Performance and stability improvements on all platforms.
1145 2014-12-11: Version 3.31.54
1147 Implement Array.from() (issue 3336).
1149 move v8_use_external_startup_data to standalone.gypi (Chromium issue
1152 Performance and stability improvements on all platforms.
1155 2014-12-11: Version 3.31.53
1157 Performance and stability improvements on all platforms.
1160 2014-12-11: Version 3.31.52
1162 Ship ES6 block scoping (issue 2198).
1164 Optimize Object.seal and Object.preventExtensions (issue 3662, Chromium
1167 Add Array.prototype.includes (issue 3575).
1169 Performance and stability improvements on all platforms.
1172 2014-12-10: Version 3.31.51
1174 [x64] Fix optimization for certain checked load/stores (Chromium issue
1177 Performance and stability improvements on all platforms.
1180 2014-12-09: Version 3.31.50
1182 Temporarily restore make dependencies.
1184 Performance and stability improvements on all platforms.
1187 2014-12-09: Version 3.31.49
1189 Performance and stability improvements on all platforms.
1192 2014-12-09: Version 3.31.48
1194 Performance and stability improvements on all platforms.
1197 2014-12-09: Version 3.31.47
1199 Temporarily restore make dependencies.
1201 Performance and stability improvements on all platforms.
1204 2014-12-08: Version 3.31.46
1206 Performance and stability improvements on all platforms.
1209 2014-12-08: Version 3.31.45
1211 Update all DEPS to match chromium's DEPS at edb488e.
1213 Turn on DCHECKs and other debugging code if dcheck_always_on is 1 (issue
1216 Optimize GetPrototype.
1218 Performance and stability improvements on all platforms.
1221 2014-12-05: Version 3.31.44
1223 Performance and stability improvements on all platforms.
1226 2014-12-04: Version 3.31.43
1228 ES6 template literals: Fix issue with template after rbrace (issue
1231 Stage ES6 template literals (issue 3230).
1233 Performance and stability improvements on all platforms.
1236 2014-12-04: Version 3.31.42
1238 Performance and stability improvements on all platforms.
1241 2014-12-04: Version 3.31.41
1243 Simplify template literal raw string creation (issue 3710).
1245 Performance and stability improvements on all platforms.
1248 2014-12-03: Version 3.31.40
1250 Performance and stability improvements on all platforms.
1253 2014-12-03: Version 3.31.39
1255 Performance and stability improvements on all platforms.
1258 2014-12-03: Version 3.31.38
1260 Stage ES6 classes and object literal extensions (issue 3330).
1262 Fixed environment handling for LFlooringDivI on ARM (Chromium issue
1265 Add GetIdentityHash to v8::Name object API (Chromium issue 437416).
1267 Set V8_CC_GNU or V8_CC_MSVC for clang in gcc / cl mode (Chromium issue
1270 Performance and stability improvements on all platforms.
1273 2014-12-02: Version 3.31.37
1275 Performance and stability improvements on all platforms.
1278 2014-12-02: Version 3.31.36
1280 Set V8_CC_GNU or V8_CC_MSVC for clang in gcc / cl mode (Chromium issue
1283 Performance and stability improvements on all platforms.
1286 2014-12-02: Version 3.31.35
1288 Performance and stability improvements on all platforms.
1291 2014-12-01: Version 3.31.34
1293 Performance and stability improvements on all platforms.
1296 2014-12-01: Version 3.31.33
1298 Performance and stability improvements on all platforms.
1301 2014-12-01: Version 3.31.32
1303 Performance and stability improvements on all platforms.
1306 2014-12-01: Version 3.31.31
1308 Performance and stability improvements on all platforms.
1311 2014-11-29: Version 3.31.30
1313 Performance and stability improvements on all platforms.
1316 2014-11-28: Version 3.31.29
1318 Stage @@toStringTag (--harmony-tostring).
1320 Performance and stability improvements on all platforms.
1323 2014-11-28: Version 3.31.28
1325 Performance and stability improvements on all platforms.
1328 2014-11-28: Version 3.31.27
1330 Ship harmony-strings.
1332 Performance and stability improvements on all platforms.
1335 2014-11-28: Version 3.31.26
1337 Abort optimization in corner case (Chromium issue 436893).
1339 Performance and stability improvements on all platforms.
1342 2014-11-26: Version 3.31.25
1344 Stage ES6 block scoping (issue 2198).
1346 Introduce legacy const slots in correct context (Chromium issue 410030).
1348 Performance and stability improvements on all platforms.
1351 2014-11-26: Version 3.31.24
1353 Performance and stability improvements on all platforms.
1356 2014-11-25: Version 3.31.23
1358 Performance and stability improvements on all platforms.
1361 2014-11-25: Version 3.31.22
1363 Performance and stability improvements on all platforms.
1366 2014-11-24: Version 3.31.21
1368 Performance and stability improvements on all platforms.
1371 2014-11-24: Version 3.31.20
1373 Performance and stability improvements on all platforms.
1376 2014-11-22: Version 3.31.19
1378 Performance and stability improvements on all platforms.
1381 2014-11-21: Version 3.31.18
1383 Performance and stability improvements on all platforms.
1386 2014-11-21: Version 3.31.17
1388 Performance and stability improvements on all platforms.
1391 2014-11-21: Version 3.31.16
1393 Cache template literal callSiteObj (issue 3230).
1395 Rename String.prototype.contains to 'includes'.
1397 Reserve code range block for evacuation (Chromium issue 430118).
1399 Performance and stability improvements on all platforms.
1402 2014-11-20: Version 3.31.15
1404 Rename String.prototype.contains to 'includes'.
1406 Performance and stability improvements on all platforms.
1409 2014-11-19: Version 3.31.14
1411 Remove Weak{Map,Set}.prototype.clear.
1413 Performance and stability improvements on all platforms.
1416 2014-11-19: Version 3.31.13
1418 Performance and stability improvements on all platforms.
1421 2014-11-19: Version 3.31.12
1423 Classes: Expand test to cover strict runtime behavior (issue 3330).
1425 v8::String::Concat must not throw (Chromium issue 420240).
1427 Fix disabling all break points from within the debug event callback
1428 (Chromium issue 432493).
1430 Performance and stability improvements on all platforms.
1433 2014-11-18: Version 3.31.11
1435 Performance and stability improvements on all platforms.
1438 2014-11-17: Version 3.31.10
1440 Performance and stability improvements on all platforms.
1443 2014-11-17: Version 3.31.9
1445 Expose internal properties of map/set iterators via mirrors.
1447 Performance and stability improvements on all platforms.
1450 2014-11-17: Version 3.31.8
1452 Performance and stability improvements on all platforms.
1455 2014-11-15: Version 3.31.7
1457 Classes: Add support for stepping through default constructors (issue
1460 Performance and stability improvements on all platforms.
1463 2014-11-14: Version 3.31.6
1465 Fix desugaring of let bindings in for loops to handle continue properly
1468 Performance and stability improvements on all platforms.
1471 2014-11-14: Version 3.31.5
1473 Classes: Implement correct name binding (issue 3330).
1475 Performance and stability improvements on all platforms.
1478 2014-11-14: Version 3.31.4
1480 Performance and stability improvements on all platforms.
1483 2014-11-14: Version 3.31.3
1485 Classes: Cleanup default constructor flag.
1487 Soft fail for invalid cache data.
1489 Implement .of() on typed arrays (issue 3578).
1491 Performance and stability improvements on all platforms.
1494 2014-11-13: Version 3.31.2
1496 MIPS: Leaving a generator via an exception causes it to close (issue
1499 MIPS: ES6: Add support for super in object literals (issue 3571).
1501 Increase the target new space size to the max new space size (issue
1504 Leaving a generator via an exception causes it to close (issue 3096).
1506 Correctly compute line numbers in functions from the function
1507 constructor (Chromium issue 109362).
1509 Rename v8::Exception::GetMessage to CreateMessage.
1511 Classes: Add support for arguments in default constructor (issue 3672).
1513 ES6: Add support for super in object literals (issue 3571).
1515 Performance and stability improvements on all platforms.
1518 2014-11-12: Version 3.31.1
1520 Fix has_constant_parameter_count() confusion in LReturn (Chromium issue
1523 Performance and stability improvements on all platforms.
1526 2014-11-05: Version 3.30.33
1528 `1..isPrototypeOf.call(null)` should return false, not throw TypeError
1531 Refactor ObjectGetOwnPropertyKeys to accept bitmask rather than boolean
1534 Add debug mirror support for ES6 Map/Set iterators (Chromium issue
1537 Performance and stability improvements on all platforms.
1540 2014-11-04: Version 3.30.30
1542 Performance and stability improvements on all platforms.
1545 2014-11-02: Version 3.30.27
1547 Performance and stability improvements on all platforms.
1550 2014-11-02: Version 3.30.26
1552 Performance and stability improvements on all platforms.
1555 2014-11-01: Version 3.30.25
1557 Performance and stability improvements on all platforms.
1560 2014-11-01: Version 3.30.24
1562 Ensure we don't try to inline raw access to indexed interceptor
1563 receivers (Chromium issue 419220).
1565 Performance and stability improvements on all platforms.
1568 2014-10-31: Version 3.30.23
1570 Introduce v8::Exception::GetMessage to find location of an error object
1571 (Chromium issue 427954).
1573 Performance and stability improvements on all platforms.
1576 2014-10-30: Version 3.30.22
1578 MIPS: Classes: Add super support in methods and accessors (issue 3330).
1580 Classes: Add super support in methods and accessors (issue 3330).
1582 Performance and stability improvements on all platforms.
1585 2014-10-29: Version 3.30.21
1587 MIPS: Classes: Add basic support for properties (issue 3330).
1589 Classes: Add more tests for prototype edge cases (Chromium issue 3655).
1591 Classes: Add test for method prototype (issue 3330).
1593 Get stack trace for uncaught exceptions/promise rejections from the
1594 simple stack when available.
1596 Classes: Add basic support for properties (issue 3330).
1598 Allow duplicate property names in classes (issue 3570).
1600 Windows: use SystemTimeToTzSpecificLocalTime instead of localtime_s
1601 (Chromium issue 417640).
1603 Performance and stability improvements on all platforms.
1606 2014-10-28: Version 3.30.20
1608 Performance and stability improvements on all platforms.
1611 2014-10-27: Version 3.30.19
1613 Check string literals with escapes in PreParserTraits::GetSymbol()
1616 only define ARRAYSIZE_UNSAFE for NaCl builds (Chromium issue 405225).
1618 Performance and stability improvements on all platforms.
1621 2014-10-24: Version 3.30.18
1623 Narrow cases where Sparse/Smart versions of Array methods are used
1624 (issues 2615, 3612, 3621).
1626 Shrink new space in idle notification (Chromium issue 424423).
1628 Performance and stability improvements on all platforms.
1631 2014-10-23: Version 3.30.17
1633 ARM64: Fix stack manipulation (Chromium issue 425585).
1635 Speed up creation of Objects whose prototype has dictionary elements
1636 (Chromium issue 422754).
1638 Enable libstdc++ debug mode in debug builds (issue 3638).
1640 Performance and stability improvements on all platforms.
1643 2014-10-22: Version 3.30.16
1645 Remove v8stdint.h, it doesn't serve a purpose anymore.
1647 Performance and stability improvements on all platforms.
1650 2014-10-21: Version 3.30.15
1652 Avoid the Marsaglia effect in 3D (Chromium issue 423311).
1654 Performance and stability improvements on all platforms.
1657 2014-10-20: Version 3.30.14
1659 Performance and stability improvements on all platforms.
1662 2014-10-17: Version 3.30.13
1664 Don't expose Array.prototype.values as it breaks webcompat (Chromium
1667 Fix break location calculation (Chromium issue 419663).
1669 Enable libstdc++ debug mode in debug builds (issue 3638).
1671 Performance and stability improvements on all platforms.
1674 2014-10-17: Version 3.30.12
1676 Implement .forEach() on typed arrays (issue 3578).
1678 Introduce v8::Exception::GetStackTrace API method.
1680 Remove SmartMove, bringing Array methods further into spec compliance
1683 Convert argument toObject() in Object.getOwnPropertyNames/Descriptors
1686 Performance and stability improvements on all platforms.
1689 2014-10-15: Version 3.30.11
1691 Array.prototype.{every, filter, find, findIndex, forEach, map, some}:
1692 Use fresh primitive wrapper for calls (issue 3536).
1694 Correctly expand literal buffer for surrogate pairs (Chromium issue
1697 Performance and stability improvements on all platforms.
1700 2014-10-15: Version 3.30.10
1702 Squeeze the layout of various AST node types (Chromium issue 417697).
1704 Performance and stability improvements on all platforms.
1707 2014-10-14: Version 3.30.9
1709 Performance and stability improvements on all platforms.
1712 2014-10-13: Version 3.30.8
1714 AST nodes have at most one bailout/typefeedback ID now, saving lots of
1715 memory (Chromium issue 417697).
1717 Allow identifier code points from supplementary multilingual planes
1720 Performance and stability improvements on all platforms.
1723 2014-10-10: Version 3.30.7
1725 Fix computation of UTC time from local time at DST change points (issue
1726 3116, Chromium issues 415424, 417640).
1728 Convert `obj` ToObject in Object.keys() (issue 3587).
1730 Performance and stability improvements on all platforms.
1733 2014-10-09: Version 3.30.6
1735 Update unicode to 7.0.0 (issue 2892).
1737 Classes: Add support for toString (issue 3330).
1739 Don't enable WPO on Win64 and require Server 2003 / x64 for win64
1740 (Chromium issue 421363).
1742 Performance and stability improvements on all platforms.
1745 2014-10-08: Version 3.30.5
1747 Performance and stability improvements on all platforms.
1750 2014-10-08: Version 3.30.4
1752 This uses a runtime function to set up the the constructor and its
1753 prototype (issue 3330).
1755 Remove PersistentBase::ClearAndLeak.
1757 Squeeze the layout of variable proxy nodes (Chromium issue 417697).
1759 Add MonotonicallyIncreasingTime to V8 Platform (Chromium issue 417668).
1761 Fix representation of HLoadRoot (Chromium issue 419036).
1763 Performance and stability improvements on all platforms.
1766 2014-10-03: Version 3.30.3
1768 Removed the Isolate* field from literal nodes (Chromium issue 417697).
1770 Squeeze the layout of expression nodes a bit (Chromium issue 417697).
1772 Merged FeedbackSlotInterface into AstNode, removing the need for a 2nd
1773 vtable (Chromium issue 417697).
1775 Extend CPU profiler with mapping ticks to source lines.
1777 Remove support for parallel sweeping.
1779 Introduce v8::Object::GetIsolate().
1781 Performance and stability improvements on all platforms.
1784 2014-10-02: Version 3.30.2
1786 Fix Hydrogen's BuildStore() (Chromium issue 417508).
1788 Move unit tests to test/unittests (issue 3489).
1790 Changes to ALLOW_UNUSED to match upcoming changes to the Chromium trunk:
1791 * Eliminate usage of ALLOW_UNUSED to define COMPILE_ASSERT and just use
1792 static_assert() in all cases now that all platforms build with C++11. *
1793 Convert remaining uses of ALLOW_UNUSED to ALLOW_UNUSED_TYPE to match how
1794 Chromium will be splitting this functionality. (In Chromium we'll have
1795 both ALLOW_UNUSED_TYPE and ALLOW_UNUSED_LOCAL, which have different
1796 syntax to enable us to use these with MSVC.) (Chromium issue 81439).
1798 Performance and stability improvements on all platforms.
1801 2014-10-01: Version 3.30.1
1803 Introduce PromiseRejectCallback (issue 3093).
1805 ES6: Implement object literal property shorthand (issue 3584).
1807 Performance and stability improvements on all platforms.
1810 2014-09-30: Version 3.29.93
1812 Add a getter for the address and size of the code range to the pulic API
1815 Convert `obj` ToObject in Object.keys() (issue 3587).
1817 Performance and stability improvements on all platforms.
1820 2014-09-29: Version 3.29.92
1822 Performance and stability improvements on all platforms.
1825 2014-09-26: Version 3.29.91
1827 Performance and stability improvements on all platforms.
1830 2014-09-25: Version 3.29.88
1832 Performance and stability improvements on all platforms.
1835 2014-09-24: Version 3.29.87
1837 Preserve message when rethrowing exception (issue 3583).
1839 Fix escaped index JSON parsing (Chromium issue 416449).
1841 Performance and stability improvements on all platforms.
1844 2014-09-23: Version 3.29.84
1846 Performance and stability improvements on all platforms.
1849 2014-09-23: Version 3.29.83
1851 Performance and stability improvements on all platforms.
1854 2014-09-23: Version 3.29.82
1856 Fix escaped index JSON parsing (Chromium issue 416449).
1858 Performance and stability improvements on all platforms.
1861 2014-09-17: Version 3.29.70
1863 Enable ES6 generators (issue 2355).
1865 Fixed int vs. uintptr_t confusion (plus some cleanup on the way) (issue
1868 Move configuration of ResourceConstraints to Isolate construction.
1870 Performance and stability improvements on all platforms.
1873 2014-09-16: Version 3.29.66
1875 Currently, a new isolate is created in an uninitialized state, and
1876 several API methods will automatically initialize it. During this
1877 uninitialized state, code event handlers and function entry handlers can
1878 be attached to the isolate.
1880 Performance and stability improvements on all platforms.
1883 2014-09-15: Version 3.29.64
1885 ES6: String(symbol) should work like symbol.toString (issue 3554).
1887 Arrow functions: Cleanup handling of the prototype property (issue
1890 Remove V8_HOST_CAN_READ_UNALIGNED and its uses (Chromium issue 412967).
1892 Fix Smi vs. HeapObject confusion in HConstants (Chromium issue 412215).
1894 Performance and stability improvements on all platforms.
1897 2014-09-12: Version 3.29.59
1899 Do not use wide reads in CopyCharsUnsigned (Chromium issue 412967).
1901 Fix inaccurate type condition in Hydrogen (Chromium issue 412210).
1903 Fix crash in ScriptDebugServer::wrapCallFrames (Chromium issue 411196).
1905 Performance and stability improvements on all platforms.
1908 2014-09-11: Version 3.29.57
1910 ES6: Add support for method shorthand in object literals (issue 3516).
1912 Unbreak FreeBSD build (hopefully) (issue 3548).
1914 Performance and stability improvements on all platforms.
1917 2014-09-09: Version 3.29.53
1919 Performance and stability improvements on all platforms.
1922 2014-09-08: Version 3.29.50
1924 Allocate a new empty number dictionary when resetting elements (Chromium
1927 Performance and stability improvements on all platforms.
1930 2014-09-05: Version 3.29.43
1932 Enforce correct number comparisons when inlining Array.indexOf (Chromium
1935 Performance and stability improvements on all platforms.
1938 2014-09-04: Version 3.29.41
1940 Performance and stability improvements on all platforms.
1943 2014-09-03: Version 3.29.40
1945 Use correct receiver for DOM accessors on the prototype chain (issue
1948 Performance and stability improvements on all platforms.
1951 2014-09-02: Version 3.29.38
1953 Do not clear weak monomorphic IC after context disposal (Chromium issue
1956 Turn on job-based sweeping (issue 3104).
1958 Performance and stability improvements on all platforms.
1961 2014-09-01: Version 3.29.35
1963 Performance and stability improvements on all platforms.
1966 2014-08-29: Version 3.29.29
1968 Performance and stability improvements on all platforms.
1971 2014-08-28: Version 3.29.27
1973 Performance and stability improvements on all platforms.
1976 2014-08-28: Version 3.29.25
1978 Performance and stability improvements on all platforms.
1981 2014-08-28: Version 3.29.24
1983 Tweaks to generate XP-compatible .exes (Chromium issue 407517).
1985 Performance and stability improvements on all platforms.
1988 2014-08-28: Version 3.29.23
1990 Performance and stability improvements on all platforms.
1993 2014-08-27: Version 3.29.20
1995 Handle empty allocation list in CodeRange properly (issue 3540, Chromium
1998 Fixed inlining of constant values (issue 3529).
2000 Performance and stability improvements on all platforms.
2003 2014-08-25: Version 3.29.17
2005 Performance and stability improvements on all platforms.
2008 2014-08-24: Version 3.29.16
2010 Fix issue with numeric property names (issue 3507).
2012 Add back the duplicate property checker (issue 3498).
2014 Performance and stability improvements on all platforms.
2017 2014-08-22: Version 3.29.14
2019 Don't inline Array.shift() if receiver map is not extensible (Chromium
2022 Performance and stability improvements on all platforms.
2025 2014-08-21: Version 3.29.11
2027 Refactor ParseObjectLiteral.
2029 Support symbol-named properties in API (issue 3394).
2031 Suppress test262 test that tests duplicate properties.
2033 ES6: Duplicate properties are no longer an error (issue 3498).
2035 Expose function CheckDebugBreak in the debugger api.
2037 Remove RegExp.$input (issue 3486).
2039 Performance and stability improvements on all platforms.
2042 2014-08-21: Version 3.29.10
2044 ES6: Make sure we do not store -0 as the key in Map/Set (issue 3515).
2046 Remove removed flags from tests.
2048 Expose well-known Symbols to C++ API (Chromium issue 341423).
2050 Implement ES6 Array.of() (issue 3427).
2052 Performance and stability improvements on all platforms.
2055 2014-08-20: Version 3.29.9
2057 Correctly handle holes when concat()ing double arrays (Chromium issue
2060 [turbofan] Refactor the InstructionSelector tests (issue 3489).
2062 ES6: Make Map/Set constructors support iterable values (issue 3508).
2064 WeakMap/WeakSet: Add test for non object keys (issue 3399).
2066 Performance and stability improvements on all platforms.
2069 2014-08-12: Version 3.28.71
2071 ToNumber(Symbol) should throw TypeError (issue 3499).
2073 Performance and stability improvements on all platforms.
2076 2014-08-11: Version 3.28.69
2078 Performance and stability improvements on all platforms.
2081 2014-08-09: Version 3.28.65
2083 Performance and stability improvements on all platforms.
2086 2014-08-08: Version 3.28.64
2088 ES6: Implement WeakMap and WeakSet constructor logic (issue 3399).
2090 Enable ES6 unscopables (issue 3401).
2092 Turn on harmony_unscopables for es_staging (issue 3401).
2094 Remove proxies from --harmony switch for M38, because problems.
2096 Reland "Add initial support for compiler unit tests using GTest/GMock."
2099 Enable ES6 iteration by default (issue 2214).
2101 Performance and stability improvements on all platforms.
2104 2014-08-07: Version 3.28.62
2106 Only escape U+0022 in argument values of `String.prototype` HTML methods
2109 Update webkit test for expected own properties.
2111 This implements unscopables (issue 3401).
2113 Add `CheckObjectCoercible` for the `String.prototype` HTML methods
2116 Add initial support for compiler unit tests using GTest/GMock (issue
2119 Trigger exception debug events on Promise reject (Chromium issue
2122 Refactor unit tests for the base library to use GTest (issue 3489).
2124 Performance and stability improvements on all platforms.
2127 2014-08-06: Version 3.28.60
2129 Enable ES6 Map and Set by default (issue 1622).
2131 Performance and stability improvements on all platforms.
2134 2014-08-06: Version 3.28.59
2136 Removed GetConstructor from the API. Instead either get the
2137 "constructor" property stored in the prototype, or keep a side-table.
2139 Enable ES6 Symbols by default (issue 2158).
2141 Performance and stability improvements on all platforms.
2144 2014-08-05: Version 3.28.57
2146 Add dependencies on gtest and gmock.
2148 Performance and stability improvements on all platforms.
2151 2014-08-04: Version 3.28.54
2153 Performance and stability improvements on all platforms.
2156 2014-08-01: Version 3.28.53
2158 Performance and stability improvements on all platforms.
2161 2014-07-31: Version 3.28.52
2163 Performance and stability improvements on all platforms.
2166 2014-07-31: Version 3.28.51
2168 Drop deprecated memory related notification API (Chromium issue 397026).
2170 Performance and stability improvements on all platforms.
2173 2014-07-31: Version 3.28.50
2175 Use emergency memory in the case of out of memory during evacuation
2176 (Chromium issue 395314).
2178 Performance and stability improvements on all platforms.
2181 2014-07-30: Version 3.28.48
2183 Fix Object.freeze with field type tracking. Keep the descriptor properly
2184 intact while update the field type (issue 3458).
2186 Performance and stability improvements on all platforms.
2189 2014-07-29: Version 3.28.45
2191 Performance and stability improvements on all platforms.
2194 2014-07-28: Version 3.28.43
2196 Performance and stability improvements on all platforms.
2199 2014-07-25: Version 3.28.38
2201 Fix issue with setters and their holders in accessors.cc (Chromium issue
2204 Introduce more debug events for promises (issue 3093).
2206 Move gc notifications from V8 to Isolate and make idle hint mandatory
2207 (Chromium issue 397026).
2209 The accessors should get the value from the holder and not from this
2212 Performance and stability improvements on all platforms.
2215 2014-07-24: Version 3.28.35
2217 Rebaseline/update the intl tests with ICU 52 (issue 3454).
2219 Expose the content of Sets and WeakSets through SetMirror (issue 3093).
2221 Performance and stability improvements on all platforms.
2224 2014-07-23: Version 3.28.32
2226 Update ICU to 5.2 (matching chromium) (issue 3452).
2228 Performance and stability improvements on all platforms.
2231 2014-07-22: Version 3.28.31
2233 Remove harmony-typeof.
2235 Implement String.prototype.codePointAt and String.fromCodePoint (issue
2238 Performance and stability improvements on all platforms.
2241 2014-07-21: Version 3.28.30
2243 Performance and stability improvements on all platforms.
2246 2014-07-21: Version 3.28.29
2248 Performance and stability improvements on all platforms.
2251 2014-07-18: Version 3.28.28
2253 Performance and stability improvements on all platforms.
2256 2014-07-17: Version 3.28.26
2258 Ship ES6 Math functions (issue 2938).
2260 Make ToPrimitive throw on symbol wrappers (issue 3442).
2262 Performance and stability improvements on all platforms.
2265 2014-07-16: Version 3.28.25
2267 Performance and stability improvements on all platforms.
2270 2014-07-16: Version 3.28.24
2272 Removed some copy-n-paste from StackFrame::Foo API entries (issue 3436).
2274 Performance and stability improvements on all platforms.
2277 2014-07-15: Version 3.28.23
2279 Fix error message about read-only symbol properties (issue 3441).
2281 Include symbol properties in Object.{create,defineProperties} (issue
2284 Performance and stability improvements on all platforms.
2287 2014-07-14: Version 3.28.22
2289 Performance and stability improvements on all platforms.
2292 2014-07-11: Version 3.28.21
2294 Make `let` usable as an identifier in ES6 sloppy mode (issue 2198).
2296 Support ES6 Map and Set in heap profiler (issue 3368).
2298 Performance and stability improvements on all platforms.
2301 2014-07-10: Version 3.28.20
2303 Remove deprecate counter/histogram methods.
2305 Fixed printing of external references (Chromium issue 392068).
2307 Fix several issues with ES6 redeclaration checks (issue 3426).
2309 Performance and stability improvements on all platforms.
2312 2014-07-09: Version 3.28.19
2314 Performance and stability improvements on all platforms.
2317 2014-07-09: Version 3.28.18
2319 Reland "Postpone termination exceptions in debug scope." (issue 3408).
2321 Performance and stability improvements on all platforms.
2324 2014-07-08: Version 3.28.17
2326 MIPS: Fix computed properties on object literals with a double as
2327 propertyname (Chromium issue 390732).
2329 Performance and stability improvements on all platforms.
2332 2014-07-08: Version 3.28.16
2334 Fix computed properties on object literals with a double as propertyname
2335 (Chromium issue 390732).
2337 Avoid brittle use of .bind in Promise.all (issue 3420).
2339 Performance and stability improvements on all platforms.
2342 2014-07-07: Version 3.28.15
2344 Remove a bunch of Isolate::UncheckedCurrent calls.
2346 Performance and stability improvements on all platforms.
2349 2014-07-07: Version 3.28.14
2351 Use the HeapObjectIterator to scan-on-scavenge map pages (Chromium issue
2354 Introduce debug events for Microtask queue (Chromium issue 272416).
2356 Split out libplatform into a separate libary.
2358 Add clang-format to presubmit checks.
2360 Stack traces exposed to Javascript should omit extensions (issue 311).
2362 Remove deprecated v8::Context::HasOutOfMemoryException.
2364 Postpone termination exceptions in debug scope (issue 3408).
2366 Performance and stability improvements on all platforms.
2369 2014-07-04: Version 3.28.13
2374 2014-07-04: Version 3.28.12
2376 Use the HeapObjectIterator to scan-on-scavenge map pages (Chromium issue
2379 Introduce debug events for Microtask queue (Chromium issue 272416).
2381 Performance and stability improvements on all platforms.
2384 2014-07-03: Version 3.28.11
2386 Split out libplatform into a separate libary.
2388 Performance and stability improvements on all platforms.
2391 2014-07-03: Version 3.28.10
2393 Add clang-format to presubmit checks.
2395 Stack traces exposed to Javascript should omit extensions (issue 311).
2397 Remove deprecated v8::Context::HasOutOfMemoryException.
2399 Postpone termination exceptions in debug scope (issue 3408).
2401 Performance and stability improvements on all platforms.
2404 2014-07-02: Version 3.28.9
2406 Make freeze & friends ignore private properties (issue 3419).
2408 Introduce a builddeps make target (issue 3418).
2410 Performance and stability improvements on all platforms.
2413 2014-07-01: Version 3.28.8
2415 Remove static initializer from isolate.
2417 ES6: Add missing Set.prototype.keys function (issue 3411).
2419 Introduce debug events for promises (issue 3093).
2421 Performance and stability improvements on all platforms.
2424 2014-06-30: Version 3.28.7
2426 Performance and stability improvements on all platforms.
2429 2014-06-30: Version 3.28.6
2431 Unbreak "os" stuff in shared d8 builds (issue 3407).
2433 Performance and stability improvements on all platforms.
2436 2014-06-26: Version 3.28.4
2438 Compile optimized code with active debugger but no break points
2439 (Chromium issue 386492).
2441 Optimize Map/Set.prototype.forEach.
2443 Collect garbage with kReduceMemoryFootprintMask in IdleNotification
2444 (Chromium issue 350720).
2446 Performance and stability improvements on all platforms.
2449 2014-06-26: Version 3.28.3
2451 Grow heap slower if GC freed many global handles (Chromium issue
2454 Performance and stability improvements on all platforms.
2457 2014-06-25: Version 3.28.2
2459 Remove bogus assertions in HCompareObjectEqAndBranch (Chromium issue
2462 Do not eagerly update allow_osr_at_loop_nesting_level (Chromium issue
2465 Set host_arch to ia32 on machines with a 32bit userland but a 64bit
2466 kernel (Chromium issue 368384).
2468 Map/Set: Implement constructor parameter handling (issue 3398).
2470 Performance and stability improvements on all platforms.
2473 2014-06-24: Version 3.28.1
2475 Support LiveEdit on Arm64 (Chromium issue 368580).
2477 Run JS micro tasks in the appropriate context (Chromium issue 385349).
2479 Add a use counter API.
2481 Set host_arch to ia32 on machines with a 32bit userland but a 64bit
2484 Performance and stability improvements on all platforms.
2487 2014-06-23: Version 3.28.0
2489 MIPS: Support LiveEdit (Chromium issue 368580).
2491 Array.concat: properly go to dictionary mode when required (Chromium
2494 Support LiveEdit on ARM (Chromium issue 368580).
2496 Performance and stability improvements on all platforms.
2499 2014-06-18: Version 3.27.34
2501 Reduce number of writes to DependentCode array when inserting dependent
2502 IC (Chromium issue 305878).
2504 Performance and stability improvements on all platforms.
2507 2014-06-17: Version 3.27.33
2509 Do GC if CodeRange fails to allocate a block (Chromium issue 305878).
2511 Throw syntax error when a getter/setter has the wrong number of params
2514 Performance and stability improvements on all platforms.
2517 2014-06-17: Version 3.27.32
2519 Performance and stability improvements on all platforms.
2522 2014-06-16: Version 3.27.31
2527 2014-06-16: Version 3.27.30
2529 Fix representation of Phis for mutable-heapnumber-in-object-literal
2530 properties (issue 3392).
2532 Performance and stability improvements on all platforms.
2535 2014-06-16: Version 3.27.29
2537 Emulate MLS on pre-ARMv6T2. Cleaned up thumbee vs. thumb2 confusion.
2539 X87: Fixed flooring division by a power of 2, once again.. (issue 3259).
2541 Fixed undefined behavior in RNG (Chromium issue 377790).
2543 Performance and stability improvements on all platforms.
2546 2014-06-13: Version 3.27.28
2548 Add v8::Promise::Then (Chromium issue 371288).
2550 Performance and stability improvements on all platforms.
2553 2014-06-12: Version 3.27.27
2555 Fix detection of VFP3D16 on Galaxy Tab 10.1 (issue 3387).
2557 Performance and stability improvements on all platforms.
2560 2014-06-12: Version 3.27.26
2562 MIPS: Fixed flooring division by a power of 2, once again.. (issue
2565 Fixed flooring division by a power of 2, once again.. (issue 3259).
2567 Fix unsigned comparisons (issue 3380).
2569 Performance and stability improvements on all platforms.
2572 2014-06-11: Version 3.27.25
2574 Performance and stability improvements on all platforms.
2577 2014-06-11: Version 3.27.24
2579 Fix invalid attributes when generalizing because of incompatible map
2580 change (Chromium issue 382143).
2582 Fix missing smi check in inlined indexOf/lastIndexOf (Chromium issue
2585 Performance and stability improvements on all platforms.
2588 2014-06-06: Version 3.27.23
2590 Performance and stability improvements on all platforms.
2593 2014-06-06: Version 3.27.22
2595 Performance and stability improvements on all platforms.
2598 2014-06-06: Version 3.27.21
2600 Turn on harmony_collections for es_staging (issue 1622).
2602 Do not make heap iterable eagerly (Chromium issue 379740).
2604 Performance and stability improvements on all platforms.
2607 2014-06-05: Version 3.27.20
2609 Fix invalid loop condition for Array.lastIndexOf() (Chromium issue
2612 Add API support for passing a C++ function as a microtask callback.
2614 Performance and stability improvements on all platforms.
2617 2014-06-04: Version 3.27.19
2619 Split Put into Put and Remove.
2621 ES6: Add support for values/keys/entries for Map and Set (issue 1793).
2623 Performance and stability improvements on all platforms.
2626 2014-06-03: Version 3.27.18
2628 Remove PROHIBITS_OVERWRITING as it is subsumed by non-configurable
2631 Performance and stability improvements on all platforms.
2634 2014-06-02: Version 3.27.17
2636 BuildNumberToString: Check for undefined keys in the cache (Chromium
2639 HRor and HSar can deoptimize (issue 3359).
2641 Simplify, speed-up correct-context ObjectObserve calls.
2643 Performance and stability improvements on all platforms.
2646 2014-05-29: Version 3.27.16
2648 Allow microtasks to throw exceptions and handle them gracefully
2649 (Chromium issue 371566).
2651 Performance and stability improvements on all platforms.
2654 2014-05-28: Version 3.27.15
2656 Performance and stability improvements on all platforms.
2659 2014-05-27: Version 3.27.14
2661 Reland "Customized support for feedback on calls to Array." and follow-
2662 up fixes (Chromium issues 377198, 377290).
2664 Performance and stability improvements on all platforms.
2667 2014-05-26: Version 3.27.13
2669 Performance and stability improvements on all platforms.
2672 2014-05-26: Version 3.27.12
2674 Check for cached transition to ExternalArray elements kind (issue 3337).
2676 Support ES6 weak collections in heap profiler (Chromium issue 376196).
2678 Performance and stability improvements on all platforms.
2681 2014-05-23: Version 3.27.11
2683 Add support for ES6 Symbol in heap profiler (Chromium issue 376194).
2685 Performance and stability improvements on all platforms.
2688 2014-05-22: Version 3.27.10
2690 Implement Mirror object for Symbols (issue 3290).
2692 Allow debugger to step into Map and Set forEach callbacks (issue 3341).
2694 Fix ArrayShift hydrogen support (Chromium issue 374838).
2696 Use SameValueZero for Map and Set (issue 1622).
2698 Array Iterator next should check for own property.
2700 Performance and stability improvements on all platforms.
2703 2014-05-21: Version 3.27.9
2705 Disable ArrayShift hydrogen support (Chromium issue 374838).
2707 ES6 Map/Set iterators/forEach improvements (issue 1793).
2709 Performance and stability improvements on all platforms.
2712 2014-05-20: Version 3.27.8
2714 Move microtask queueing logic from JavaScript to C++.
2716 Partial revert of "Next bunch of fixes for check elimination" (Chromium
2719 Performance and stability improvements on all platforms.
2722 2014-05-19: Version 3.27.7
2724 Performance and stability improvements on all platforms.
2727 2014-05-19: Version 3.27.6
2729 Performance and stability improvements on all platforms.
2732 2014-05-16: Version 3.27.5
2734 Performance and stability improvements on all platforms.
2737 2014-05-15: Version 3.27.4
2739 Drop thenable coercion cache (Chromium issue 372788).
2741 Skip write barriers when updating the weak hash table (Chromium issue
2744 Performance and stability improvements on all platforms.
2747 2014-05-14: Version 3.27.3
2749 Performance and stability improvements on all platforms.
2752 2014-05-13: Version 3.27.2
2754 Harden %SetIsObserved with RUNTIME_ASSERTs (Chromium issue 371782).
2756 Drop unused static microtask API.
2758 Introduce an api to query the microtask autorun state of an isolate.
2760 Performance and stability improvements on all platforms.
2763 2014-05-12: Version 3.27.1
2765 Object.observe: avoid accessing acceptList properties more than once
2768 Array Iterator prototype should not have a constructor (issue 3293).
2770 Fix typos in unit test for Array.prototype.fill().
2772 Shorten autogenerated error message for functions only (issue 3019,
2773 Chromium issue 331971).
2775 Reland "Removed default Isolate." (Chromium issue 359977).
2777 Performance and stability improvements on all platforms.
2780 2014-05-09: Version 3.27.0
2782 Unbreak samples and tools.
2784 Performance and stability improvements on all platforms.
2787 2014-05-08: Version 3.26.33
2789 Removed default Isolate (Chromium issue 359977).
2791 Performance and stability improvements on all platforms.
2794 2014-05-07: Version 3.26.32
2796 Performance and stability improvements on all platforms.
2799 2014-05-06: Version 3.26.31
2801 Add a basic gn file for V8.
2803 Performance and stability improvements on all platforms.
2806 2014-05-05: Version 3.26.30
2808 Introduce a microtask suppression scope and move microtask methods to
2809 isolate (Chromium issue 369503).
2811 Re-enable Object.observe and add enforcement for security invariants.
2813 Move cache line size calculation directly into CPU::FlushICache
2814 (Chromium issue 359977).
2816 Generation of our home-grown memmove doesn't depend on serializer state
2817 anymore (Chromium issue 359977).
2819 Fix |RunMicrotasks()| leaking reference to the last context being run
2822 Object.defineProperty shouldn't be a hint that we're constructing a
2823 dictionary (Chromium issue 362870).
2825 Performance and stability improvements on all platforms.
2828 2014-05-01: Version 3.26.29
2830 Added a Isolate* parameter to Serializer::enabled() (Chromium issue
2833 ES6: Add support for Array.prototype.fill() (issue 3273).
2835 Performance and stability improvements on all platforms.
2838 2014-04-29: Version 3.26.28
2840 PromiseThen should ignore non-function parameters (Chromium issue
2843 Performance and stability improvements on all platforms.
2846 2014-04-29: Version 3.26.27
2848 Error stack getter should not overwrite itself with a data property
2851 Performance and stability improvements on all platforms.
2854 2014-04-28: Version 3.26.26
2856 Expose promise value through promise mirror (issue 3093).
2858 Simplified CPU/CpuFeatures a bit (Chromium issue 359977).
2860 Performance and stability improvements on all platforms.
2863 2014-04-28: Version 3.26.25
2865 Add timestamps to CPU profile samples (Chromium issue 363976).
2867 Expose promise status through promise mirror (issue 3093).
2869 Remove static CallCompletedCallback handlers.
2871 Added an Isolate* field to NoTrackDoubleFieldsForSerializerScope,
2872 PlatformFeatureScope and BinaryOpIC::State (Chromium issue 359977).
2874 Trigger debug event on not yet caught exception in promises (issue
2877 Unbreak vtunejit=on (issue 3288).
2879 Performance and stability improvements on all platforms.
2882 2014-04-25: Version 3.26.24
2884 MIPS: CodeStubs contain their corresponding Isolate* now. (part 2)
2885 (Chromium issue 359977).
2887 MIPS: CodeStubs contain their corresponding Isolate* now. (part 1)
2888 (Chromium issue 359977).
2890 CodeStubs contain their corresponding Isolate* now. (part 2) (Chromium
2893 Make DescriptorArray::IsMoreGeneralThan() and DescriptorArray::Merge()
2894 compatible again (Chromium issue 365172).
2896 CodeStubs contain their corresponding Isolate* now. (part 1) (Chromium
2899 Performance and stability improvements on all platforms.
2902 2014-04-24: Version 3.26.23
2904 Performance and stability improvements on all platforms.
2907 2014-04-23: Version 3.26.22
2909 Disable field type tracking by default (Chromium issue 365172).
2911 Performance and stability improvements on all platforms.
2914 2014-04-23: Version 3.26.21
2916 Context-allocate all parameters in generators (issue 3280).
2918 Simplify v8/Isolate teardown (Chromium issue 359977).
2920 Performance and stability improvements on all platforms.
2923 2014-04-21: Version 3.26.20
2925 ES6: Add support for Map/Set forEach (Chromium issues 1793, 2323).
2927 Performance and stability improvements on all platforms.
2930 2014-04-18: Version 3.26.19
2932 ES6: Add support for Map/Set forEach (Chromium issues 1793, 2323).
2934 Performance and stability improvements on all platforms.
2937 2014-04-17: Version 3.26.18
2939 Removed Isolate::EnterDefaultIsolate (Chromium issue 359977).
2941 Performance and stability improvements on all platforms.
2944 2014-04-16: Version 3.26.17
2946 Clear invalid field maps in PropertyAccessInfo (Chromium issue 363956).
2948 ES6: Add support for Map/Set forEach (Chromium issues 1793, 2323).
2950 Performance and stability improvements on all platforms.
2953 2014-04-16: Version 3.26.16
2955 Removed EnterIsolateIfNeeded and a soon-to-be-useless assertion
2956 (Chromium issue 359977).
2958 Removed GetDefaultIsolate{Debugger,ForLocking,StackGuard} (Chromium
2961 Performance and stability improvements on all platforms.
2964 2014-04-15: Version 3.26.15
2966 Fix result of LCodeGen::DoWrapReceiver for strict functions and builtins
2967 (Chromium issue 362128).
2969 Performance and stability improvements on all platforms.
2972 2014-04-15: Version 3.26.14
2974 Performance and stability improvements on all platforms.
2977 2014-04-14: Version 3.26.13
2979 Make maps in monomorphic IC stubs weak (issue 2073).
2981 x64: Make sure that the upper half of a 64bit register contains 0 for
2982 int32 values (Chromium issue 360611).
2984 Performance and stability improvements on all platforms.
2987 2014-04-11: Version 3.26.12
2989 Do not use ranges after range analysis (Chromium issue 361608).
2991 Performance and stability improvements on all platforms.
2994 2014-04-10: Version 3.26.11
2996 Performance and stability improvements on all platforms.
2999 2014-04-10: Version 3.26.10
3001 Allow the embedder to pass the virtual memory limit to v8.
3003 Performance and stability improvements on all platforms.
3006 2014-04-09: Version 3.26.9
3008 Fix invalid local property lookup for transitions (Chromium issue
3011 MIPS: Fixed flooring division by -1 (issue 3259).
3013 Fixed flooring division by -1 on ARM (issue 3259).
3015 Make `String.prototype.contains` throw when passing a regular expression
3018 Performance and stability improvements on all platforms.
3021 2014-04-08: Version 3.26.8
3023 Yet another regression test for range analysis (issue 3204).
3025 Performance and stability improvements on all platforms.
3028 2014-04-07: Version 3.26.7
3030 Performance and stability improvements on all platforms.
3033 2014-04-04: Version 3.26.6
3035 Performance and stability improvements on all platforms.
3038 2014-04-03: Version 3.26.5
3040 Performance and stability improvements on all platforms.
3043 2014-04-03: Version 3.26.4
3045 Make stray 'return' an early error.
3047 Show references from weak containers as weak in heap snapshots (Chromium
3050 Make invalid LHSs that are calls late errors (Chromium issue 358346).
3052 Performance and stability improvements on all platforms.
3055 2014-04-02: Version 3.26.3
3057 Support typed arrays in IsMoreGeneralElementsKindTransition (Chromium
3060 Remove debugger_auto_break flag.
3062 Store i18n meta data in hidden symbols instead of js accessible
3063 properties (Chromium issue 354967).
3065 Performance and stability improvements on all platforms.
3068 2014-04-01: Version 3.26.2
3070 Performance and stability improvements on all platforms.
3073 2014-04-01: Version 3.26.1
3075 Fix Type::Intersect to skip uninhabited bitsets (Chromium issue 357330).
3077 Fix PrepareKeyedOperand on arm (Chromium issue 358057).
3079 Performance and stability improvements on all platforms.
3082 2014-03-31: Version 3.26.0
3084 Deprecate Start/StopCpuProfiling methods (issue 3213).
3086 Don't crash if we get a timezone change notification on an uninitialized
3087 isolate (Chromium issue 357362).
3089 Performance and stability improvements on all platforms.
3092 2014-03-28: Version 3.25.30
3094 NativeContext::map_cache reference should be strong in heap snapshots
3095 (Chromium issue 357060).
3097 Performance and stability improvements on all platforms.
3100 2014-03-27: Version 3.25.29
3102 Performance and stability improvements on all platforms.
3105 2014-03-27: Version 3.25.28
3107 Performance and stability improvements on all platforms.
3110 2014-03-26: Version 3.25.27
3112 Promise constructor should not be enumerable (Chromium issue 352597).
3114 Performance and stability improvements on all platforms.
3117 2014-03-26: Version 3.25.26
3119 Performance and stability improvements on all platforms.
3122 2014-03-25: Version 3.25.25
3124 Roll ICU 239289:258359 and add support for external ICU data tables
3125 (issue 3142, Chromium issue 72633).
3127 Performance and stability improvements on all platforms.
3130 2014-03-25: Version 3.25.24
3132 Add support for per-isolate private symbols.
3134 No longer OOM on invalid string length (issue 3060).
3136 Remove Failure::OutOfMemory propagation and
3137 V8::IgnoreOutOfMemoryException (issue 3060).
3139 Tentative Windows dll build fix: Don't V8_EXPORT ScriptCompiler::Source
3142 Performance and stability improvements on all platforms.
3145 2014-03-24: Version 3.25.23
3147 Rename A64 port to ARM64 port (Chromium issue 354405).
3149 Fix missing access check in Runtime_SetPrototype (Chromium issue
3152 Fix polymorphic hydrogen handling of SLOPPY_ARGUMENTS_ELEMENTS (Chromium
3155 Performance and stability improvements on all platforms.
3158 2014-03-20: Version 3.25.22
3160 Increase the "local variables in a function" limit (issue 3205).
3162 Implement ES6 symbol registry and predefined symbols.
3164 Throw exception on invalid string length instead of OOM (Chromium issue
3167 Performance and stability improvements on all platforms.
3170 2014-03-20: Version 3.25.21
3172 Performance and stability improvements on all platforms.
3175 2014-03-20: Version 3.25.20
3177 Fix polymorphic keyed loads for SLOPPY_ARGUMENTS_ELEMENTS (Chromium
3180 Performance and stability improvements on all platforms.
3183 2014-03-19: Version 3.25.19
3185 Performance and stability improvements on all platforms.
3188 2014-03-19: Version 3.25.18
3190 Performance and stability improvements on all platforms.
3193 2014-03-19: Version 3.25.17
3195 Performance and stability improvements on all platforms.
3198 2014-03-18: Version 3.25.16
3200 Apply numeric casts correctly in typed arrays and related code (Chromium
3203 Performance and stability improvements on all platforms.
3206 2014-03-18: Version 3.25.15
3208 Don't generate keyed store ICs for global proxies (Chromium issue
3211 MIPS: Make invalid LHSs a parse-time (reference) error (Chromium issue
3214 Make invalid LHSs a parse-time (reference) error (Chromium issue
3217 Add Promises/A+ Compliance Test Suite (Chromium issue 347095).
3219 Split Promise API into Promise/Resolver.
3221 Performance and stability improvements on all platforms.
3224 2014-03-17: Version 3.25.14
3226 Performance and stability improvements on all platforms.
3229 2014-03-17: Version 3.25.13
3231 Move profiler callback interfaces from v8.h to v8-profiler.h.
3233 Performance and stability improvements on all platforms.
3236 2014-03-14: Version 3.25.12
3238 PromiseCoerce should deal with an error during accessing "then"
3239 (Chromium issue 347095).
3241 Propagate updated offsets in BoundsCheckBbData (Chromium issue 350863).
3243 Add regression test for range analysis bug (issue 3204).
3245 Continued fix for 351257. Reusing the feedback vector is too complex
3246 (Chromium issue 351257).
3248 StopCpuProfiling should return non-const CpuProfile (issue 3213).
3250 Allow for compiling with xcode 5.1 (which doesn't have gcc anymore).
3252 Performance and stability improvements on all platforms.
3255 2014-03-14: Version 3.25.11
3257 MIPS: Remove uses of CanBeNegative() in HMod (issue 3204).
3259 MIPS: Remove uses of RangeCanInclude() in flooring division by power of
3262 MIPS: Fix uses of range analysis results in HChange (issue 3204).
3264 Make translation of modulus operation '--stress-opt'-proof (Chromium
3267 Remove uses of CanBeNegative() in HMod (issue 3204).
3269 Remove uses of RangeCanInclude() in flooring division by power of 2
3272 Fix uses of range analysis results in HChange (issue 3204).
3274 Performance and stability improvements on all platforms.
3277 2014-03-14: Version 3.25.10
3279 This version was not committed due to script failures.
3282 2014-03-13: Version 3.25.9
3284 Reland "Enable Object.observe by default" again (issue 2409).
3286 Use intrinsics for builtin ArrayBuffer property accesses (Chromium issue
3289 Performance and stability improvements on all platforms.
3292 2014-03-12: Version 3.25.8
3294 Fix HIsSmiAndBranch::KnownSuccessorBlock() by deleting it (Chromium
3297 Fix handling of polymorphic array accesses with constant index (Chromium
3300 Fix lazy deopt after tagged binary ops (Chromium issue 350434).
3302 MIPS: Cleanup some of the range uses in ModI/DivI (issue 3204).
3304 Fix issue with getOwnPropertySymbols and hidden properties (Chromium
3307 Cleanup some of the range uses in ModI/DivI (issue 3204).
3309 PromiseCoerce should ignore primitive values (Chromium issue 347095).
3311 Use a per-isolate cache for the date object JS bits (Chromium issue
3314 Performance and stability improvements on all platforms.
3317 2014-03-11: Version 3.25.7
3319 Promise.all and Promise.race should reject non-array parameter (Chromium
3322 Promise.all and Promise race should use "then" rather than "chain"
3323 (Chromium issue 347427).
3325 Merge the "Compute Minus Zero Checks" phase into the range analysis
3328 Performance and stability improvements on all platforms.
3331 2014-03-10: Version 3.25.6
3333 Replace the recursion in PropagateMinusZeroChecks() with a loop and a
3334 worklist (issue 3204).
3336 Reland "Enable Object.observe by default" (issue 2409).
3338 Enable Object.observe by default (issue 2409).
3340 AllocationTracker now maintains a map from address range to stack trace
3341 that allocated the range. When snapshot is generated the map is used to
3342 find construction stack trace for an object using its address (Chromium
3345 Introduce Runtime_GetAllScopesDetails to get all scopes at once for a
3346 frame (Chromium issue 340285).
3348 Reduce heavy runtime calls from debug mirrors (Chromium issue 340285).
3350 Check and clear date cache in DateCurrentTime, DateLocalTimezone and
3351 getTimezoneOffset (Chromium issue 142141).
3353 Performance and stability improvements on all platforms.
3356 2014-03-06: Version 3.25.5
3358 Fix HConstants with Smi-ranged HeapNumber values (Chromium issue
3361 Fix issues with JSON stringify replacer array (issues 3200, 3201).
3363 Performance and stability improvements on all platforms.
3366 2014-03-05: Version 3.25.4
3368 x64: Fix LMathMinMax for constant Smi right-hand operands (Chromium
3371 Performance and stability improvements on all platforms.
3374 2014-03-04: Version 3.25.3
3376 Clear optimized code cache in shared function info when code gets
3377 deoptimized (Chromium issue 343609).
3379 Fixed constant folding for Math.clz32 (Chromium issue 347906).
3381 Fix JSObject::PrintTransitions (Chromium issue 347912).
3383 Fix handling of constant global variable assignments (Chromium issue
3386 Removed bogus ASSERT (Chromium issue 347542).
3388 Mark HCompareMap as having Tagged representation (Chromium issue
3391 Fix crasher in Object.getOwnPropertySymbols (Chromium issue 346141).
3393 Fix the bit massaging code in CompleteParserRecorder::WriteNumber
3394 (Chromium issue 346221).
3396 Don't eliminate loads with incompatible types or representations
3397 (Chromium issue 346343).
3399 Check that after a weak callback, the handle is either dead or strong
3400 (Chromium issue 346061).
3402 Lazy preparsing vs. lazy parsing fix (Chromium issue 346207).
3404 Performance and stability improvements on all platforms.
3407 2014-02-25: Version 3.25.2
3409 Fix the bit massaging code in CompleteParserRecorder::WriteNumber
3410 (Chromium issue 346221).
3412 Revert r19455 "Load target types and handlers before IC computation."
3413 (Chromium issue 346149).
3415 Don't eliminate loads with incompatible types or representations
3416 (Chromium issue 346343).
3418 Fix for a smi stores optimization on x64 with a regression test
3419 (Chromium issue 345715).
3421 Check that after a weak callback, the handle is either dead or strong
3422 (Chromium issue 346061).
3424 negative bounds checking on realm calls (Chromium issue 344285).
3426 Lazy preparsing vs. lazy parsing fix (Chromium issue 346207).
3428 Fix optimistic BCE to back off after deopt (issue 3176).
3430 Performance and stability improvements on all platforms.
3433 2014-02-21: Version 3.25.1
3435 Performance and stability improvements on all platforms.
3438 2014-02-19: Version 3.25.0
3440 ES6: Tighten up Object.prototype.__proto__ (issue 3064).
3442 Fix Hydrogen bounds check elimination (Chromium issue 344186).
3444 Performance and stability improvements on all platforms.
3447 2014-02-19: Version 3.24.40
3449 A64: Let the MacroAssembler resolve branches to distant targets (issue
3452 Fixed and improved code for integral division. Fixed and extended tests
3455 MIPS: Fix assignment of function name constant (issue 3138).
3457 Fix assignment of function name constant (issue 3138).
3459 Performance and stability improvements on all platforms.
3462 2014-02-14: Version 3.24.39
3464 Introduce --job-based-sweeping flag and use individual jobs for sweeping
3465 if set (issue 3104).
3467 Performance and stability improvements on all platforms.
3470 2014-02-13: Version 3.24.38
3472 Merge experimental/a64 to bleeding_edge (issue 3113).
3474 Performance and stability improvements on all platforms.
3477 2014-02-12: Version 3.24.37
3479 Fix spec violations in JSON.stringify wrt replacer array (issue 3135).
3481 Performance and stability improvements on all platforms.
3484 2014-02-11: Version 3.24.36
3486 Fix inconsistencies wrt whitespaces (issue 3109).
3488 Performance and stability improvements on all platforms.
3491 2014-02-10: Version 3.24.35
3493 Fix inconsistencies wrt whitespaces (issue 3109).
3495 Performance and stability improvements on all platforms.
3498 2014-02-07: Version 3.24.34
3500 Performance and stability improvements on all platforms.
3503 2014-02-06: Version 3.24.33
3505 Allow externalizing strings in old pointer space (Chromium issue
3508 Performance and stability improvements on all platforms.
3511 2014-02-05: Version 3.24.32
3513 Add Box object to heap profiler.
3515 Check the offset argument of TypedArray.set for fitting into Smi
3516 (Chromium issue 340125).
3518 Performance and stability improvements on all platforms.
3521 2014-02-04: Version 3.24.31
3523 Fix short-circuiting logical and/or in HOptimizedGraphBuilder (Chromium
3526 Elements field of newly allocated JSArray could be left uninitialized in
3527 some cases (fast literal case) (Chromium issue 340124).
3529 Re-enable escape analysis.
3531 Performance and stability improvements on all platforms.
3534 2014-02-03: Version 3.24.30
3536 Performance and stability improvements on all platforms.
3539 2014-02-01: Version 3.24.29
3541 Performance and stability improvements on all platforms.
3544 2014-01-31: Version 3.24.28
3546 Don't crash in Array.join() if the resulting string exceeds the max
3547 string length (Chromium issue 336820).
3549 Implements ES6 String.prototype.normalize method (issue 2943).
3551 Performance and stability improvements on all platforms.
3554 2014-01-30: Version 3.24.27
3556 Performance and stability improvements on all platforms.
3559 2014-01-29: Version 3.24.26
3561 ES6: Map and Set needs to normalize minus zero (issue 3069).
3563 Make `String.prototype.{starts,ends}With` throw when passing a regular
3564 expression (issue 3070).
3566 Performance and stability improvements on all platforms.
3569 2014-01-28: Version 3.24.25
3571 Performance and stability improvements on all platforms.
3574 2014-01-27: Version 3.24.24
3576 MIPS: Reduce the stack requirements of GetNoCodeAgeSequence (issue
3579 Delete v8_shell target now that chrome uses d8 (Chromium issue 331585).
3581 ARM: Reduce the stack requirements of GetNoCodeAgeSequence (issue 3111).
3583 Performance and stability improvements on all platforms.
3586 2014-01-24: Version 3.24.23
3588 Performance and stability improvements on all platforms.
3591 2014-01-23: Version 3.24.22
3593 Fix compilation on x64 architectures (issue 3110).
3595 Ensure we don't overwrite transitions in SetPropertyIgnoreAttributes
3596 (Chromium issue 326155).
3598 ES6: Implement Object.setPrototypeOf (issue 2675).
3600 Fixed floor-of-div optimization (Chromium issue 334708).
3602 Performance and stability improvements on all platforms.
3605 2014-01-22: Version 3.24.21
3607 Performance and stability improvements on all platforms.
3610 2014-01-21: Version 3.24.20
3612 ES6: Implement Object.setPrototypeOf (issue 2675).
3614 Performance and stability improvements on all platforms.
3617 2014-01-20: Version 3.24.19
3619 Introduce a setting to control the toolset for which d8 is compiled
3622 Performance and stability improvements on all platforms.
3625 2014-01-17: Version 3.24.18
3627 Performance and stability improvements on all platforms.
3630 2014-01-16: Version 3.24.17
3632 Make cells pointing to JSObjects weak in optimized code (issue 2073).
3634 Performance and stability improvements on all platforms.
3637 2014-01-15: Version 3.24.16
3639 Annotate mapped memory regions for LeakSanitizer (Chromium issue
3642 Turn Runtime_MigrateInstance into Runtime_TryMigrateInstance (Chromium
3645 Performance and stability improvements on all platforms.
3648 2014-01-14: Version 3.24.15
3650 Introduce an API mirroring the gc extension.
3652 Performance and stability improvements on all platforms.
3655 2014-01-10: Version 3.24.14
3657 ES6: Add Object.getOwnPropertySymbols (issue 3049).
3659 Performance and stability improvements on all platforms.
3662 2014-01-09: Version 3.24.13
3664 Add Isolate parameter to HandleScope::NumberOfHandles (Chromium issue
3667 Removed v8::AssertNoGCScope.
3669 Performance and stability improvements on all platforms.
3672 2014-01-08: Version 3.24.12
3674 Correctly handle instances without elements in polymorphic keyed
3675 load/store (Chromium issue 331416).
3677 Fix selection of popular pages in store buffer (Chromium issue 331444).
3679 Prepare removal of ObjectTemplate::New without Isolate parameter
3680 (Chromium issue 324225).
3682 Performance and stability improvements on all platforms.
3685 2014-01-07: Version 3.24.11
3687 Remove generated makefiles on linux when running gyp_v8
3688 (Chromium issue 331475)
3690 Fix building d8 with readline support due to API changes
3692 Performance and stability improvements on all platforms.
3695 2014-01-03: Version 3.24.10
3697 Reland r18383: More API cleanup (Chromium issue 324225).
3699 MIPS: Fix loading of global object in LWrapReceiver (Chromium issue
3702 Performance and stability improvements on all platforms.
3705 2014-01-02: Version 3.24.9
3707 Performance and stability improvements on all platforms.
3710 2013-12-30: Version 3.24.8
3712 ARM: fix loading of global object in LWrapReceiver (Chromium issue
3715 Fix a race between concurrent recompilation and OSR (Chromium issue
3718 Turn off concurrent sweeping (issue 3071).
3720 Performance and stability improvements on all platforms.
3723 2013-12-23: Version 3.24.7
3725 Fix small spec violation in String.prototype.split (issue 3026).
3727 Correctly resolve forcibly context allocated parameters in debug-
3728 evaluate (Chromium issue 325676).
3730 Introduce Function::GetBoundFunction.
3732 Performance and stability improvements on all platforms.
3735 2013-12-20: Version 3.24.6
3737 Performance and stability improvements on all platforms.
3740 2013-12-19: Version 3.24.5
3742 Performance and stability improvements on all platforms.
3745 2013-12-18: Version 3.24.4
3747 Removed all stuff marked as V8_DEPRECATED.
3749 Performance and stability improvements on all platforms.
3752 2013-12-17: Version 3.24.3
3754 Performance and stability improvements on all platforms.
3757 2013-12-17: Version 3.24.2
3759 Flush instruction cache for deserialized code objects.
3761 Performance and stability improvements on all platforms.
3764 2013-12-13: Version 3.24.1
3766 Fix polymorphic inlined calls with migrating prototypes.
3768 Fixed global object leak caused by overwriting the global receiver (the
3769 global proxy) in the global object with the global object itself
3770 (Chromium issue 324812).
3772 Initialize Date parse cache with SMI instead of double to workaround
3773 sharing mutable heap numbers in snapshot (Chromium issue 280531).
3775 Switch armv7 setting to arm_version==7 in v8 gyp files (Chromium issue
3778 Performance and stability improvements on all platforms.
3781 2013-12-09: Version 3.24.0
3783 Performance and stability improvements on all platforms.
3786 2013-12-04: Version 3.23.18
3788 Performance and stability improvements on all platforms.
3791 2013-12-03: Version 3.23.17
3793 Performance and stability improvements on all platforms.
3796 2013-12-02: Version 3.23.16
3798 Array builtins need to be prevented from changing frozen objects, and
3799 changing structure on sealed objects (Chromium issue 299979).
3801 Performance and stability improvements on all platforms.
3804 2013-11-29: Version 3.23.15
3806 Fix context register allocation in LTransitionElementsKind
3807 (Chromium issue 324306).
3809 Fix bug in inlining Function.apply (Chromium issue 323942).
3811 Ensure that length is Smi in TypedArrayFromArrayLike constructor
3812 (Chromium issue 324028).
3814 Performance and stability improvements on all platforms.
3817 2013-11-28: Version 3.23.14
3819 Shorten autogenerated error message (issue 3019).
3821 Performance and stability improvements on all platforms.
3824 2013-11-27: Version 3.23.13
3826 Increase precision for base conversion for large integers (issue 3025).
3828 Flatten cons string for single character substrings (Chromium issue
3831 Performance and stability improvements on all platforms.
3834 2013-11-26: Version 3.23.12
3836 Performance and stability improvements on all platforms.
3839 2013-11-25: Version 3.23.11
3841 Deprecate old versions of Isolate::SetData and GetData.
3843 Performance and stability improvements on all platforms.
3846 2013-11-22: Version 3.23.10
3848 Remove preemption thread and API.
3851 Performance and stability improvements on all platforms.
3854 2013-11-21: Version 3.23.9
3856 API: Change AdjustAmountOfExternalAllocatedMemory calls to use int64_t
3857 instead of intptr_t.
3859 Remove deprecated v8::SetResourceConstraints without Isolate parameter.
3861 Remove deprecated v8-defaults.h and defaults.cc.
3862 (Chromium issue 312241)
3864 Make it possible to add more than one piece of embedder data to
3866 (Chromium issue 317398)
3868 Performance and stability improvements on all platforms.
3871 2013-11-20: Version 3.23.8
3873 Fixed crashes exposed though fuzzing.
3874 (Chromium issue 320948)
3876 Deprecated v8::External::New without Isolate parameter.
3878 Made number of available threads isolate-dependent and exposed it to
3879 ResourceConstraints.
3882 Performance and stability improvements on all platforms.
3885 2013-11-19: Version 3.23.7
3887 Bugfix: dependent code field in AllocationSite was keeping code objects
3888 alive even after context death.
3889 (Chromium issue 320532)
3891 Fixed data view accessors to throw execptions on offsets bigger than
3895 Performance and stability improvements on all platforms.
3898 2013-11-18: Version 3.23.6
3900 Limit size of dehoistable array indices.
3901 (Chromium issues 319835, 319860)
3903 Limit the size for typed arrays to MaxSmi.
3904 (Chromium issue 319722)
3906 Performance and stability improvements on all platforms.
3909 2013-11-15: Version 3.23.5
3911 Fixed missing type feedback check for Generic*String addition.
3912 (Chromium issue 318671)
3914 Fixed duplicate check in DependentCode::Insert.
3915 (Chromium issue 318454)
3917 Performance and stability improvements on all platforms.
3920 2013-11-14: Version 3.23.4
3922 Fixed overflow in TypedArray initialization function.
3923 (Chromium issue 319120)
3925 Performance and stability improvements on all platforms.
3928 2013-11-13: Version 3.23.3
3930 Fixed compilation with GCC 4.8.
3933 Added explicit Isolate parameter to External::New.
3934 (Chromium issue 266838)
3936 Performance and stability improvements on all platforms.
3939 2013-11-12: Version 3.23.2
3941 Fixed --extra-code flag for snapshot creation.
3944 Fixed error message wording when instanceof throws.
3945 (Chromium issue 82797, issue 1593)
3947 Performance and stability improvements on all platforms.
3950 2013-11-08: Version 3.23.1
3952 Made HCapturedObjects non-deletable for DCE. (issue 2987)
3954 Use a fixed random seed per default. (issue 1880, 2885)
3956 Fixed y-umlaut to uppercase. (issue 2984)
3958 Performance and stability improvements on all platforms.
3961 2013-11-06: Version 3.23.0
3963 Fixed loading message from an Error object. (Chromium issue 306220)
3965 Made Object.freeze/seal/preventExtensions observable. (issue 2975, 2941)
3967 Made snapshots reproducible. (issue 2885)
3969 Added missing negative dictionary lookup to NonexistentHandlerFrontend.
3972 Performance and stability improvements on all platforms.
3975 2013-10-31: Version 3.22.24
3977 Fixed uint32-to-smi conversion in Lithium.
3978 (Chromium issue 309623)
3980 Performance and stability improvements on all platforms.
3983 2013-10-28: Version 3.22.23
3985 Renamed deprecated __attribute__((no_address_safety_analysis)) to
3986 __attribute__((no_sanitize_address)) (Chromium issue 311283)
3988 Defined DEBUG for v8_optimized_debug=2
3990 Performance and stability improvements on all platforms.
3993 2013-10-25: Version 3.22.22
3995 Record allocation stack traces. (Chromium issue 277984,v8:2949)
3997 Performance and stability improvements on all platforms.
4000 2013-10-24: Version 3.22.21
4002 Performance and stability improvements on all platforms.
4005 2013-10-24: Version 3.22.20
4007 Made Array.prototype.pop throw if the last element is not configurable.
4009 Fixed HObjectAccess for loads from migrating prototypes.
4010 (Chromium issue 305309)
4012 Enabled preaging of code objects when --optimize-for-size.
4013 (Chromium issue 280984)
4015 Exposed v8::Function::GetDisplayName to public API.
4016 (Chromium issue 17356)
4018 Performance and stability improvements on all platforms.
4021 2013-10-23: Version 3.22.19
4023 Fix materialization of captured objects with field tracking.
4024 (Chromium issue 298990)
4026 Performance and stability improvements on all platforms.
4029 2013-10-22: Version 3.22.18
4031 Add tool to visualize machine code/lithium.
4033 Handle misaligned loads and stores in load elimination. Do not track
4034 misaligned loads and be conservative about invalidating misaligned
4035 stores. (issue 2934)
4037 Performance and stability improvements on all platforms.
4040 2013-10-21: Version 3.22.17
4042 Harmony: Implement Math.trunc and Math.sign. (issue 2938)
4044 Performance and stability improvements on all platforms.
4047 2013-10-21: Version 3.22.16
4049 Performance and stability improvements on all platforms.
4052 2013-10-18: Version 3.22.15
4054 Enabled calling the SetReference* & SetObjectGroupId functions with a
4055 Persistent<SubclassOfValue>.
4057 Performance and stability improvements on all platforms.
4060 2013-10-17: Version 3.22.14
4062 Performance and stability improvements on all platforms.
4065 2013-10-16: Version 3.22.13
4067 Do not look up ArrayBuffer on global object in typed array constructor.
4070 Performance and stability improvements on all platforms.
4073 2013-10-15: Version 3.22.12
4075 Added histograms to track fraction of heap spaces and percentage of
4076 generated crankshaft code.
4078 Moved v8_optimized_debug default value to standalone.gypi.
4080 Track JS allocations as they arrive with no affection on performance
4081 when tracking is switched off (Chromium issue 277984).
4083 Performance and stability improvements on all platforms.
4086 2013-10-14: Version 3.22.11
4088 Performance and stability improvements on all platforms.
4091 2013-10-11: Version 3.22.10
4093 Fixed timezone issues with date-time/parse-* tests.
4094 (Chromium issue 2919)
4096 Added column getter to CpuProfileNode (Chromium issue 302537)
4098 Performance and stability improvements on all platforms.
4101 2013-10-10: Version 3.22.9
4103 Ensure only whitelisted stubs have sse2 versions in the snapshot.
4104 (fix for chromium 304565)
4106 Implement ArrayBuffer.isView.
4108 Performance and stability improvements on all platforms.
4111 2013-10-04: Version 3.22.8
4113 Performance and stability improvements on all platforms.
4116 2013-10-03: Version 3.22.7
4118 Debug: Allow stepping into on a given call frame
4119 (Chromium issue 296963).
4121 Always use timeGetTime() for TimeTicks::Now() on Windows
4122 (Chromium issue 288924).
4124 Performance and stability improvements on all platforms.
4127 2013-10-02: Version 3.22.6
4129 Performance and stability improvements on all platforms.
4132 2013-10-01: Version 3.22.5
4134 Disabled externalization of sliced/cons strings in old pointer space
4135 (Chromium issue 276357).
4137 Turned on handle zapping for release builds
4139 Performance and stability improvements on all platforms.
4142 2013-09-30: Version 3.22.4
4144 Function::Call and Object::CallAsFunction APIs should allow v8::Value as
4145 a receiver (issue 2915).
4147 Removed unnecessary mutex (Chromium issue 291236).
4149 Removed ArrayBufferView::BaseAddress method.
4151 Performance and stability improvements on all platforms.
4154 2013-09-27: Version 3.22.3
4156 Added methods to enable configuration of ResourceConstraints based on
4157 limits derived at runtime.
4158 (Chromium issue 292928)
4160 Added -optimize-for-size flag to optimize for memory size (will be used
4161 by pre-aging CL), and removed the is_memory_constrained
4163 (Chromium issue 292928)
4165 Performance and stability improvements on all platforms.
4168 2013-09-26: Version 3.22.2
4170 Performance and stability improvements on all platforms.
4173 2013-09-25: Version 3.22.1
4175 Sped up creating typed arrays from array-like objects.
4176 (Chromium issue 270507)
4178 Performance and stability improvements on all platforms.
4181 2013-09-23: Version 3.22.0
4183 LiveEdit to mark more closure functions for re-instantiation when scope
4187 Made bounds check elimination iterative instead of recursive.
4188 (Chromium issue 289706)
4190 Turned on i18n support by default.
4192 Set the proper instance-type on HAllocate in BuildFastLiteral.
4193 (Chromium issue 284577)
4195 Performance and stability improvements on all platforms.
4198 2013-09-18: Version 3.21.17
4200 Implemented local load/store elimination on basic blocks.
4202 Added mutex when accessing concurrent recompilation output queue.
4203 (Chromium issue 291236)
4205 Don't lookup the cache for the result of Function::New.
4206 (Chromium issue 272579)
4208 Tweaked HConstant::EmitAtUses() to eliminate useless constant
4210 (Chromium issue 2881)
4212 Performance and stability improvements on all platforms.
4215 2013-09-16: Version 3.21.16
4217 Every place where AllocationMemento is initialized with an
4218 AllocationSite is now checked to be sure a valid Site goes in. This is
4219 temporary code to diagnose chromium bug 284577.
4221 Performance and stability improvements on all platforms.
4224 2013-09-13: Version 3.21.15
4226 Non-JSObject heap objects are now handled using slow-path IC stub
4228 (Chromium issue 280632)
4230 i18n Javascript code added to the snapshot.
4233 Performance and stability improvements on all platforms.
4235 2013-09-12: Version 3.21.14
4237 Added access check for observed objects.
4240 Cleaned up v8::ArrayBuffer::Allocator interface.
4243 Performance and stability improvements on all platforms.
4245 2013-09-11: Version 3.21.13
4247 Added a ResourceConstraint for the embedder to specify that V8 is
4248 running on a memory constrained device.
4249 (Chromium issue 280984)
4251 Removed HandleScope default ctor.
4252 (Chromium issue 236173)
4254 Enabled escape analysis for Hydrogen.
4256 Correctly stringified mixed encoding indirect strings.
4257 (Chromium issue 287476)
4259 Performance and stability improvements on all platforms.
4262 2013-09-09: Version 3.21.12
4264 Fixed bitwise negation on x64.
4265 (Chromium issue 285355)
4267 Dropped GetCurrentThreadId() and TerminateExecution(int) from
4270 Fixed polymorphic INTERCEPTOR StoreICs on ARM/MIPS.
4271 (Chromium issue 284998)
4273 Added check if timeout has expired after processing each sample.
4274 (issue 2814,v8:2871)
4276 Removed obsolete global V8::has_been_fooed flags.
4279 Performance and stability improvements on all platforms.
4282 2013-09-05: Version 3.21.11
4284 Performance and stability improvements on all platforms.
4287 2013-09-04: Version 3.21.10
4289 Fixed Eternal::IsEmpty logic (issue 2870).
4291 Performance and stability improvements on all platforms.
4294 2013-09-03: Version 3.21.9
4296 Deprecated Persistent functions which were marked to be deprecated.
4298 Allowed uncacheable identifiers to go generic (issue 2867).
4300 Performance and stability improvements on all platforms.
4303 2013-09-02: Version 3.21.8
4305 Added scriptId to StackTrace frames (issue 2865).
4307 Performance and stability improvements on all platforms.
4310 2013-08-30: Version 3.21.7
4312 Fixed casts of eternal handles.
4314 Turned on global handle zapping.
4316 Always visit branches during HGraph building (Chromium issue 280333).
4318 Profiler changes: removed deprecated API, support higher sampling
4321 Performance and stability improvements on all platforms.
4324 2013-08-29: Version 3.21.6
4326 Fixed inlined 'throw' statements interfering with live range
4327 computation. (issue 2843)
4329 Performance and stability improvements on all platforms.
4332 2013-08-28: Version 3.21.5
4334 Fixed compilation with recent MinGW64 versions. (issue 2300)
4336 Added RemovePrototype to FunctionTemplate. (Chromium issue 272440)
4338 Performance and stability improvements on all platforms.
4341 2013-08-26: Version 3.21.4
4343 Lowered kInitialMaxFastElementArray constant to 95K (issue 2790).
4345 Use signals for cpu profiling on Mac OS X (issue 2814).
4347 Deprecated CpuProfileNode::GetSelfSamplesCount (Chromium issue 267595).
4349 Added support for higher CPU profiler sampling rate on posix systems
4352 Worked around 'inlining failed' build error with older GCC 4.x releases.
4354 Added source map support to tick processor.
4356 Stability improvements on all platforms.
4359 2013-08-23: Version 3.21.3
4361 Temporarily disabled optimization for StringWrappers to use native
4362 valueOf. (issue 2855)
4364 Fixed crash on function declarations in eval inside non-trivial local
4367 Rewrote SamplingCircularQueue. (issue 2814)
4369 Fixed hidden properties on object with frozen prototype. (issue 2829)
4371 Fix deoptimization bug. (Chromium issue 274164)
4373 Stability improvements on all platforms.
4376 2013-08-22: Version 3.21.2
4378 Stability improvements on all platforms.
4381 2013-08-21: Version 3.21.1
4383 Promoted ArrayBuffer, DataView and typed arrays to non-experimental.
4384 (Chromium issue 270527)
4386 Replaced OS::MemCopy with memcpy in typed array initialization.
4387 (Chromium issue 270642)
4389 Moved i18n break iterator C++ code to runtime (issue 2745)
4391 Fixed invalid out-of-bounds store in MacroAssembler::Allocate.
4392 (Chromium issue 263515)
4394 Fixed register misuse in Allocate() on ARM. (issue 2851)
4396 Fixed empty handle dereference in Runtime_InternalNumberFormat.
4397 (Chromium issue 275467)
4399 Performance and stability improvements on all platforms.
4402 2013-08-19: Version 3.21.0
4404 Fixed GC-related crasher (Chromium issue 274438)
4406 Reverted making Intl non-enumerable.
4408 Performance and stability improvements on all platforms.
4411 2013-08-14: Version 3.20.17
4413 Fixed Math.round/floor that had bogus Smi representation
4414 (Chromium issue 272564)
4416 Performance and stability improvements on all platforms.
4419 2013-08-13: Version 3.20.16
4421 Fixed bug in HPhi::SimplifyConstantInput (Chromium issue 269679)
4423 Fixed gcmole bugs in i18n code (issue 2745)
4425 ia32: Calls to the TranscendentalCacheStub must ensure that esi is
4428 Made sure polymorphic element access creates non-replaying
4431 Allowed HPhis to have an invalid merge index. (issue 2815)
4433 Fixed smi-based math floor. (Chromium issue 270268)
4435 Deprecated self and total time getters and total sample count
4436 getter on CpuProfileNode. (Chromium issue 267595)
4438 Fixed Object.freeze, Object.observe wrt CountOperation and
4439 CompoundAssignment. (issue 2774,2779)
4441 Performance and stability improvements on all platforms.
4444 2013-08-07: Version 3.20.15
4446 Exposed eternal handle api.
4448 Bugfix to solve issues with enabling V8 typed arrays in Blink.
4450 Fixed Array index dehoisting. (Chromium issue 264203)
4452 Updated Array Iterator to use numeric indexes (issue 2818)
4454 Return start/end profiling time in microseconds instead of milliseconds
4457 Performance and stability improvements on all platforms.
4460 2013-08-06: Version 3.20.14
4462 Added new Harmony methods to Array.prototype object.
4463 (issue 2776,v8:2777)
4465 Performance and stability improvements on all platforms.
4468 2013-08-01: Version 3.20.12
4470 Removed buggy ToNumber truncation (partial fix for issue 2813)
4472 Calling Map etc without new should throw TypeError (issue 2819)
4474 Fixed a crash for large code objects on ARM (Chromium issue 2736)
4476 Fixed stale unhandlified value in JSObject::SetPropertyForResult.
4477 (Chromium issue 265894)
4479 Added new Harmony methods to String.prototype object.
4480 (issue 2796,v8:2797,v8:2798,v8:2799)
4482 Performance and stability improvements on all platforms.
4485 2013-07-30: Version 3.20.11
4487 Performance and stability improvements on all platforms.
4490 2013-07-29: Version 3.20.10
4492 Performance and stability improvements on all platforms.
4495 2013-07-26: Version 3.20.9
4497 Check that ExternalString objects get aligned resources.
4499 Fixed JSArray-specific length lookup in polymorphic array handling
4500 (Chromium issues 263276, 263905).
4502 Performance and stability improvements on all platforms.
4505 2013-07-24: Version 3.20.8
4507 Deprecated v8::V8::Pause/ResumeProfiler.
4509 Fixed Chromium issues 247688, 258519 and 260203.
4511 Performance and stability improvements on all platforms.
4514 2013-07-22: Version 3.20.7
4516 Deprecated some debugger methods.
4518 Fixed wrong bailout id in polymorphic stores (Chromium issue 259787).
4520 Fixed data race in SamplingCircularQueue (Chromium issue 251218).
4522 Fixed type feedback in presence of negative lookups
4523 (Chromium issue 252797).
4525 Do not materialize context-allocated values for debug-evaluate
4526 (Chromium issue 259300).
4528 Synchronized Compare-Literal behavior in FullCodegen and Hydrogen
4529 (Chromium issue 260345).
4531 Performance and stability improvements on all platforms.
4534 2013-07-17: Version 3.20.6
4536 Try to remove invalidated stubs before falling back to checking the
4537 constant state (Chromium issue 260585).
4539 Fixed gyp_v8 to work with use_system_icu=1 (issue 2475).
4541 Fixed sloppy-mode 'const' under Harmony flag (Chromium issue 173361).
4543 Use internal array as API function cache (Chromium issue 260106).
4545 Fixed possible stack overflow in range analysis
4546 (Chromium issue 259452).
4548 Performance and stability improvements on all platforms.
4551 2013-07-15: Version 3.20.5
4553 Ensured that the length of frozen arrays is immutable
4554 (issue 2711, Chromium issue 259548).
4556 Performance and stability improvements on all platforms.
4559 2013-07-10: Version 3.20.4
4561 Fixed garbage-collection issue that causes a crash on ARM
4562 (Chromium issue 254570)
4564 Performance and stability improvements on all platforms.
4567 2013-07-08: Version 3.20.3
4569 Performance and stability improvements on all platforms.
4572 2013-07-05: Version 3.20.2
4574 Remove deprecated heap profiler methods from V8 public API
4576 Mark i18n functions as native and set proper names
4579 Correctly report stack trace when current function is FunctionApply
4580 builtin (Chromium issue 252097)
4582 Enable GDBJIT interface for standalone by default.
4584 Fix debuggersupport=off build. (issue 2754)
4586 Introduce -m64 flag for making x64 when the default gcc compiler is for
4589 Performance and stability improvements on all platforms.
4592 2013-07-02: Version 3.20.1
4594 Implemented WeakMap.prototype.clear function. (issue 2753)
4596 Ensure CheckInitialized is present independent of define.
4597 (Chromium issue 255779)
4599 Performance and stability improvements on all platforms.
4602 2013-06-28: Version 3.20.0
4604 Migrated several tests from blink to V8 repository.
4606 Allowed users of the V8 API to distinguish between unset and undefined
4607 HiddenValues (issue 2746).
4609 Deprecated old style callbacks in the V8 API.
4611 Turned on parallel recompilation.
4613 Performance and stability improvements on all platforms.
4616 2013-06-18: Version 3.19.18
4618 Fixed read-only attribute of Function.length in strict mode.
4621 Fixed Runtime_SetProperty to properly handle OOM failures
4622 (Chromium issue 249873)
4624 Emit deprecated check for constant function transitions.
4625 (Chromium issue 250609)
4627 Made MathFloorOfDiv optimization trigger more often
4630 Make more GCs in idle notification handler.
4631 (Chromium issue 241815)
4633 Increased default type info threshold.
4636 Performance and stability improvements on all platforms.
4639 2013-06-14: Version 3.19.16
4641 Performance and stability improvements on all platforms.
4644 2013-06-13: Version 3.19.15
4646 Performance and stability improvements on all platforms.
4649 2013-06-13: Version 3.19.14
4651 Fixed crashes when calling new Array(a) with a single argument that
4652 could result in creating a holey array with a packed elements kind.
4653 (Chromium issue 245480)
4655 Fixed issues in parallel compilation.
4656 (Chromium issue 248076)
4658 Performance and stability improvements on all platforms.
4661 2013-06-11: Version 3.19.13
4663 Performance and stability improvements on all platforms.
4666 2013-06-10: Version 3.19.12
4668 Fixed arguments array access. (Chromium issue 247303)
4670 Fixed bug in LookupForWrite. (Chromium issue 242332)
4672 Performance and stability improvements on all platforms.
4675 2013-06-07: Version 3.19.11
4677 Performance and stability improvements on all platforms.
4680 2013-06-06: Version 3.19.10
4682 Performance and stability improvements on all platforms.
4685 2013-06-05: Version 3.19.9
4687 Implemented Load IC support for loading properties from primitive
4688 values to avoid perpetual soft deopts. (Chromium issue 242512)
4690 Implemented Freeing of PerThreadAssertData when possible to avoid
4691 memory leak. (Chromium issue 246567)
4693 Removed V8_USE_OLD_STYLE_PERSISTENT_HANDLE_VISITORS.
4695 Performance and stability improvements on all platforms.
4698 2013-06-03: Version 3.19.8
4700 Fixed bug with inlining 'Array' function. (Chromium issue 244461)
4702 Fixed initialization of literal objects. (Chromium issue 245424)
4704 Fixed function name inferred inside closures. (Chromium issue 224884)
4706 Performance and stability improvements on all platforms.
4709 2013-05-31: Version 3.19.7
4711 Added support for //# sourceURL similar to deprecated //@ sourceURL one.
4714 Made sure IfBuilder::Return clears the current block.
4715 (Chromium issue 243868)
4717 Fixed two CPU profiler tests on ARM and MIPS simulators
4720 Fixed idle incremental GC for large objects.
4721 (Chromium issue 241815)
4723 Disabled --optimize-constructed-arrays due to crashes
4724 (Chromium issue 244461)
4726 Performance and stability improvements on all platforms.
4729 2013-05-28: Version 3.19.6
4731 Fixed IfBuilder::Deopt to clear the current block
4732 (Chromium issue 243868).
4734 Performance and stability improvements on all platforms.
4737 2013-05-27: Version 3.19.5
4739 Reset regexp parser flag after scanning ahead for capture groups.
4742 Removed flakiness in test-cpu-profiler/SampleWhenFrameIsNotSetup.
4745 Performance and stability improvements on all platforms.
4748 2013-05-24: Version 3.19.4
4750 Fixed edge case in stack trace formatting. (Chromium issue 237617)
4752 Fixed embedded new-space pointer in LCmpObjectEqAndBranch. (Chromium
4755 Made Object.freeze fast (issue 1858, Chromium issue 115960)
4757 Fixed bogus deopt in BuildEmitDeepCopy for holey arrays. (Chromium issue
4760 Performance and stability improvements on all platforms.
4763 2013-05-22: Version 3.19.3
4765 Performance and stability improvements on all platforms.
4768 2013-05-17: Version 3.19.2
4770 Fill in one-word-fillers for the unused property fields
4771 (Chromium issue 240056).
4773 Removed use_system_v8 logic from the mainline gyp file
4774 (Chromium issue 226860).
4776 Skip CPU profiler samples where top function's stack frame is not
4777 set up properly (issue 2628).
4779 Performance and stability improvements on all platforms.
4782 2013-05-14: Version 3.19.1
4784 Fixed missing hole check for loads from Smi arrays when all uses are
4785 changes (Chromium issue 233737)
4787 Performance and stability improvements on all platforms.
4790 2013-05-10: Version 3.19.0
4792 Deprecated Context::New which returns Persistent.
4794 Added Persistent<T>::Reset which disposes the handle and redirects it to
4795 point to another object.
4797 Deprecated WriteAscii and MayContainNonAscii.
4799 Exposed AssertNoAllocation to API.
4801 Performance and stability improvements on all platforms.
4804 2013-04-30: Version 3.18.5
4806 Allowed setting debugger breakpoints on CompareNilICs (issue 2660)
4808 Fixed beyond-heap load on x64 Crankshafted StringCharFromCode
4809 (Chromium issue 235311)
4811 Change 'Parse error' to three more informative messages.
4812 (Chromium issue 2636)
4814 Performance and stability improvements on all platforms.
4817 2013-04-26: Version 3.18.4
4819 Added a preliminary API for ES6 ArrayBuffers
4821 Replaced qsort with std::sort. (Chromium issue 2639)
4823 Performance and stability improvements on all platforms.
4826 2013-04-24: Version 3.18.3
4828 Exposed the GC under a name that is less collision prone than window.gc.
4831 Do not emit double values at their use sites. (Chromium issue 234101)
4833 Added methods to allow resuming execution after calling
4834 TerminateExecution(). (issue 2361)
4836 Performance and stability improvements on all platforms.
4839 2013-04-22: Version 3.18.2
4841 OS::MemMove/OS::MemCopy: Don't call through to generated code when size
4842 == 0 to avoid prefetching invalid memory (Chromium issue 233500)
4844 Removed heap snapshot size limit. (Chromium issue 232305)
4846 Performance and stability improvements on all platforms.
4849 2013-04-18: Version 3.18.1
4851 Removed SCons related files and deprecated test suite configurations.
4853 Improved handling of unary plus (issue 2527).
4855 Performance and stability improvements on all platforms.
4858 2013-04-17: Version 3.18.0
4860 Enabled pretenuring of fast literals in high promotion mode.
4862 Removed preparser library; link preparser executable against full V8.
4864 Fixed set-up of intrinsic's 'constructor' properties.
4865 (Chromium issue 229445)
4867 ES6 symbols: extended V8 API to support symbols (issue 2158).
4869 Removed ARM support for VFP2.
4871 Made __proto__ a real JavaScript accessor property.
4872 (issue 1949 and issue 2606)
4874 Performance and stability improvements on all platforms.
4877 2013-04-04: Version 3.17.16
4879 Stack trace API: poison stack frames below the first strict mode frame.
4882 Made Isolate::GetHeapStatistics robust against half-initialized
4883 isolates (Chromium issue 2591).
4885 Finished implementation of ES6 symbols aka. private names (issue 2158).
4887 Performance and stability improvements on all platforms.
4890 2013-03-21: Version 3.17.15
4892 Rolled back API changes to maintain compatibility with older
4893 3.17.x versions of V8.
4895 Disable zapping of global handles in release mode.
4897 Always mark the entire valid prefix of the descriptor array.
4898 (Chromium issue 196331)
4900 Use internal memcpy for CopyWords and when copying code.
4901 (Chromium issue 196330)
4903 Performance and stability improvements on all platforms.
4906 2013-03-20: Version 3.17.14
4908 Use internal memcpy when initializing code objects.
4909 (Chromium issue 196330)
4911 Disabled weak embedded maps because of crashes.
4912 (Chromium issues 172489, 217858)
4914 Performance and stability improvements on all platforms.
4917 2013-03-19: Version 3.17.13
4919 Turned Flags into a uint32_t typedef (Chromium issue 194749).
4921 Performance and stability improvements on all platforms.
4924 2013-03-18: Version 3.17.12
4926 Unified kMaxArguments with number of bits used to encode it.
4927 (Chromium issue 211741)
4929 Fixed detection of |handle_smi| case in
4930 HOptimizedGraphBuilder::HandlePolymorphicCallNamed.
4931 (Chromium issue 196583)
4933 Performance and stability improvements on all platforms.
4936 2013-03-15: Version 3.17.11
4938 Added a version of the v8::HandleScope constructor with an v8::Isolate
4939 parameter and made AdjustAmountOfExternalAllocatedMemory an instance
4940 method of v8::Isolate.
4943 Fixed two register allocator bugs (off-by-one error/failure
4944 propagation). (issue 2576)
4946 Fixed huge heap snapshot when a heavily shared context has many
4947 variables. (Chromium issue 145687)
4949 Performance and stability improvements on all platforms.
4952 2013-03-13: Version 3.17.10
4954 Fixed heap snapshot creation for Harmony collections. (issue 2535)
4956 Fixed register allocation corner case. (Chromium issue 177883)
4958 Performance and stability improvements on all platforms.
4961 2013-03-08: Version 3.17.9
4963 Restored Function()'s expected string representation. (issue 2470)
4965 Enabled deprecatations (again). (issue 2487)
4967 Avoid bool to Oddball conversions by being lazy. (issue 2491)
4969 Added %p option to --logfile.
4971 Hardened Function()'s parsing of function literals. (issue 2470)
4973 ES6 symbols: Refine test for getOwnPropertyNames. (issue 2158)
4975 Performance and stability improvements on all platforms.
4978 2013-03-07: Version 3.17.8
4980 Added missing license headers. (Chromium issue 98597)
4982 Inserted missing type cast in JSON.stringify. (issue 2570)
4984 Reverted "Send SIGPROF signals on the profiler event processor thread"
4987 Fixed Array.length, String.length and Function.prototype LoadICs on x64.
4990 ES6 symbols: filter symbols form for-in loops and Object.keys.
4993 Properly handle misses for StoreArrayLengthStub on ia32 and x64
4996 Fixed x32 handling of Atomic64. (Chromium issue chromium-os:36866)
4998 Removed "library" variable from standalone.gypi. (Chromium issue 111541)
5000 Fixed HCheckSmiOrInt <-> HBoundsCheck interaction wrt. representations.
5003 Enabled zapping of disposed global handles in release mode.
5004 (Chromium issue 176056)
5006 Added workaround for redefinition of __proto__ property. (issue 2565)
5008 ES6 symbols: Allow symbols as property names. (issue 2158)
5010 Performance and stability improvements on all platforms.
5013 2013-03-04: Version 3.17.7
5015 Limited recursion in regexp compilation by a budget.
5016 (Chromium issue 178790)
5018 ES6 symbols: Implemented Symbol intrinsic and basic functionality
5021 Performance and stability improvements on all platforms.
5024 2013-02-28: Version 3.17.6
5026 Fixed materialization of arguments objects with unknown values.
5027 (Chromium issue 163530)
5029 Set default number of sweeper threads to at most four.
5031 Performance and stability improvements on all platforms.
5034 2013-02-27: Version 3.17.5
5036 Made __proto__ a foreign callback on Object.prototype.
5037 (issue 621, issue 1949 and issue 2441)
5039 Performance and stability improvements on all platforms.
5042 2013-02-25: Version 3.17.4
5044 Performance and stability improvements on all platforms.
5047 2013-02-21: Version 3.17.3
5049 Performance and stability improvements on all platforms.
5052 2013-02-19: Version 3.17.2
5054 Removed bogus check for TOP register in deoptimizer.
5055 (Chromium issue 176943)
5057 Made the Isolate parameter mandatory for internal HandleScopes.
5060 Fixed f.apply() optimization when declared arguments are mutated.
5063 Performance and stability improvements on all platforms.
5066 2013-02-14: Version 3.17.1
5068 Performance and stability improvements on all platforms.
5071 2013-02-13: Version 3.17.0
5073 Enabled parallel sweeping.
5075 Don't try to unlink instructions twice during GVN
5076 (Chromium issue 175141)
5078 Fixed code flusher disabling while marking incrementally.
5079 (Chromium issue 173458, 168582)
5081 Don't use TLS for space iterators.
5084 Added new GetHeapStatistics API entry and deprecated old one.
5086 Fixed DoubleStackSlot-to-DoubleStackSlot moves on ia32. Unified
5087 platform-independent code.
5088 (Chromium issue 173907)
5090 Added --trace-array-abuse to help find OOB accesses.
5092 Performance and stability improvements on all platforms.
5095 2013-02-06: Version 3.16.14
5097 Performance and stability improvements on all platforms.
5100 2013-02-04: Version 3.16.13
5102 Tagged stubs that rely on instance types as MEGAMORPHIC.
5103 (Chromium issue 173974)
5105 Fixed clearing of dead dependent codes and verifing of weak
5106 embedded maps on full GC. (Chromium issue 172488,172489)
5108 Made the arm port build cleanly with Clang.
5110 Performance and stability improvements on all platforms.
5113 2013-01-31: Version 3.16.12
5115 Performance and stability improvements on all platforms.
5118 2013-01-30: Version 3.16.11
5120 Put making embedded maps in optimized code weak behind a flag.
5121 (Chromium issue 172488,172489)
5123 Performance and stability improvements on all platforms.
5126 2013-01-25: Version 3.16.10
5128 Avoid excessive memory usage during redundant phi elimination.
5131 Fixed additional spec violations wrt RegExp.lastIndex.
5134 Added Isolate parameter to Persistent class.
5137 Performance and stability improvements on all platforms.
5140 2013-01-24: Version 3.16.9
5142 Made embedded maps in optimized code weak.
5145 Fixed corner case when JSFunction is evicted from flusher.
5146 (Chromium issue 168801)
5148 Correctly set kCanBeDivByZero flag for HMathFloorOfDiv.
5149 (Chromium issue 171641)
5151 Performance and stability improvements on all platforms.
5154 2013-01-23: Version 3.16.8
5156 Correctly reset lastIndex in an RegExp object.
5157 (Chromium issue 170856)
5159 Added a workaround for Windows compilation problems related to V8EXPORT.
5162 tools/run-tests.py: shlex.split() the value of --command-prefix
5163 (Chromium issue 171553)
5165 Fixed pattern detection for replacing shifts by rotation.
5166 (Chromium issue 2499)
5168 Performance and stability improvements on all platforms.
5171 2013-01-21: Version 3.16.7
5173 Removed <(library) usage from v8.gyp.
5174 (Chromium issue 111541)
5176 Fixed out of bounds memory access in TestJSArrayForAllocationSiteInfo.
5177 (Chromium issue 169928)
5179 Performance and stability improvements on all platforms.
5182 2013-01-18: Version 3.16.6
5184 Made the Isolate parameter mandatory in Locker and Unlocker classes.
5187 Avoid pointer underflow in CopyCharsUnsigned.
5190 Generate shim headers when using system v8.
5191 (Chromium issue 165264)
5193 Fixed arguments materialization for inlined apply().
5196 Sync'ed laziness between BuildFunctionInfo and MakeFunctionInfo.
5197 (Chromium issue 147497)
5199 Added sanity check to CodeFlusher::AddCandidate.
5200 (Chromium issue 169209)
5202 Performance and stability improvements on all platforms.
5205 2013-01-15: Version 3.16.5
5207 Removed deprecated functions from V8's external API.
5209 Prepared API for WebKit use of Latin-1.
5211 Fixed V8 issue 2486.
5213 Fixed Chromium issue 169723.
5215 Performance and stability improvements on all platforms.
5218 2013-01-11: Version 3.16.4
5220 Fixed Chromium issues 168545 and 169209.
5222 Performance and stability improvements on all platforms.
5225 2013-01-09: Version 3.16.3
5227 Improved GC performance when moving parts of a FixedArray (issue 2452).
5229 Enabled readline on d8 while building a shared lib (issue 1781).
5231 Fixed missing exception check in typed array constructor
5232 (Chromium issue 168545).
5234 Check for read-only-ness when preparing for array sort (issue 2419).
5236 Performance and stability improvements on all platforms.
5239 2013-01-04: Version 3.16.2
5241 Added Makefile options to build for the Raspberry Pi (armv7=0,
5244 Performance and stability improvements on all platforms.
5247 2012-12-27: Version 3.16.1
5249 Fixed x64 MathMinMax for negative untagged int32 arguments.
5250 (Chromium issue 164442)
5252 Fixed FloatingPointHelper::CheckSSE2OperandIsInt32.
5255 Performance and stability improvements on all platforms.
5258 2012-12-21: Version 3.16.0
5260 V8_Fatal now prints C++ stack trace in debug mode.
5262 Added HTML-based tick processor.
5264 Continued implementation of Object.observe (V8 issue 2409).
5266 Fixed V8 issues 2243, 2340, 2393, 2399, 2457.
5268 Fixed Chromium issues 125308, 165637, 166379, 166553.
5270 Performance and stability improvements on all platforms.
5273 2012-12-10: Version 3.15.11
5275 Define CAN_USE_VFP2/3_INSTRUCTIONS based on arm_neon and arm_fpu GYP
5278 Performance and stability improvements on all platforms.
5281 2012-12-07: Version 3.15.10
5283 Enabled optimisation of functions inside eval. (issue 2315)
5285 Fixed spec violations in methods of Number.prototype. (issue 2443)
5287 Added GCTracer metrics for a scavenger GC for DOM wrappers.
5289 Performance and stability improvements on all platforms.
5292 2012-12-06: Version 3.15.9
5294 Fixed candidate eviction in code flusher.
5295 (Chromium issue 159140)
5297 Iterate through all arguments for side effects in Math.min/max.
5300 Fixed spec violations related to regexp.lastIndex
5301 (issue 2437, issue 2438)
5303 Performance and stability improvements on all platforms.
5306 2012-12-04: Version 3.15.8
5308 Enforced stack allocation of TryCatch blocks.
5309 (issue 2166,chromium:152389)
5311 Fixed external exceptions in external try-catch handlers.
5314 Activated incremental code flushing by default.
5316 Performance and stability improvements on all platforms.
5319 2012-11-30: Version 3.15.7
5321 Activated code aging by default.
5323 Included more information in --prof log.
5325 Removed eager sweeping for lazy swept spaces. Try to find in
5326 SlowAllocateRaw a bounded number of times a big enough memory slot.
5329 Performance and stability improvements on all platforms.
5332 2012-11-26: Version 3.15.6
5334 Ensure double arrays are filled with holes when extended from
5335 variations of empty arrays. (Chromium issue 162085)
5337 Performance and stability improvements on all platforms.
5340 2012-11-23: Version 3.15.5
5342 Fixed JSON.stringify for objects with interceptor handlers.
5343 (Chromium issue 161028)
5345 Fixed corner case in x64 compare stubs. (issue 2416)
5347 Performance and stability improvements on all platforms.
5350 2012-11-16: Version 3.15.4
5352 Fixed Array.prototype.join evaluation order. (issue 2263)
5354 Perform CPU sampling by CPU sampling thread only iff processing thread
5355 is not running. (issue 2364)
5357 When using an Object as a set in Object.getOwnPropertyNames, null out
5358 the proto. (issue 2410)
5360 Disabled EXTRA_CHECKS in Release build.
5362 Heap explorer: Show representation of strings.
5364 Removed 'type' and 'arguments' properties from Error object.
5367 Added atomics implementation for ThreadSanitizer v2.
5368 (Chromium issue 128314)
5370 Fixed LiveEdit crashes when object/array literal is added. (issue 2368)
5372 Performance and stability improvements on all platforms.
5375 2012-11-13: Version 3.15.3
5377 Changed sample shell to send non-JS output (e.g. errors) to stderr
5380 Correctly check for stack overflow even when interrupt is pending.
5383 Collect stack trace on stack overflow. (issue 2394)
5385 Performance and stability improvements on all platforms.
5388 2012-11-12: Version 3.15.2
5390 Function::GetScriptOrigin supplies sourceURL when script name is
5391 not available. (Chromium issue 159413)
5393 Made formatting error message side-effect-free. (issue 2398)
5395 Fixed length check in JSON.stringify. (Chromium issue 160010)
5397 ES6: Added support for Set and Map clear method (issue 2400)
5399 Fixed slack tracking when instance prototype changes.
5400 (Chromium issue 157019)
5402 Fixed disabling of code flusher while marking. (Chromium issue 159140)
5404 Added a test case for object grouping in a scavenger GC (issue 2077)
5406 Support shared library build of Android for v8.
5407 (Chromium issue 158821)
5409 ES6: Added support for size to Set and Map (issue 2395)
5411 Performance and stability improvements on all platforms.
5414 2012-11-06: Version 3.15.1
5416 Put incremental code flushing behind a flag. (Chromium issue 159140)
5418 Performance and stability improvements on all platforms.
5421 2012-10-31: Version 3.15.0
5423 Loosened aligned code target requirement on ARM (issue 2380)
5425 Fixed JSON.parse to treat leading zeros correctly.
5426 (Chromium issue 158185)
5428 Performance and stability improvements on all platforms.
5431 2012-10-22: Version 3.14.5
5433 Killed off the SCons based build.
5435 Added a faster API for creating v8::Integer objects.
5437 Speeded up function deoptimization by avoiding quadratic pass over
5438 optimized function list. (Chromium issue 155270)
5440 Always invoke the default Array.sort functions from builtin functions.
5443 Reverted recent CPU profiler changes because they broke --prof.
5446 Switched code flushing to use different JSFunction field.
5449 Performance and stability improvements on all platforms.
5452 2012-10-15: Version 3.14.4
5454 Allow evals for debugger even if they are prohibited in the debugee
5455 context. (Chromium issue 154733)
5457 Enabled --verify-heap in release mode (issue 2120)
5459 Performance and stability improvements on all platforms.
5462 2012-10-11: Version 3.14.3
5464 Use native context to retrieve ErrorMessageForCodeGenerationFromStrings
5465 (Chromium issue 155076).
5467 Bumped variable limit further to 2^17 (Chromium issue 151625).
5469 Performance and stability improvements on all platforms.
5472 2012-10-10: Version 3.14.2
5474 ARM: allowed VFP3 instructions when hardfloat is enabled.
5475 (Chromium issue 152506)
5477 Fixed instance_descriptors() and PushStackTraceAndDie regressions.
5478 (Chromium issue 151749)
5480 Made GDBJIT interface compile again. (issue 1804)
5482 Fixed Accessors::FunctionGetPrototype's proto chain traversal.
5483 (Chromium issue 143967)
5485 Made sure that names of temporaries do not clash with real variables.
5488 Rejected local module declarations. (Chromium issue 150628)
5490 Rejected uses of lexical for-loop variable on the RHS. (issue 2322)
5492 Fixed slot recording of code target patches.
5493 (Chromium issue 152615,chromium:144230)
5495 Changed the Android makefile to use GCC 4.6 instead of GCC 4.4.3.
5497 Performance and stability improvements on all platforms.
5500 2012-10-01: Version 3.14.1
5502 Don't set -m32 flag when compiling with Android ARM compiler.
5503 (Chromium issue 143889)
5505 Restore the descriptor array before returning allocation failure.
5506 (Chromium issue 151750)
5508 Lowered kMaxVirtualRegisters (v8 issue 2139, Chromium issues 123822 and
5511 Pull more recent gyp in 'make dependencies'.
5513 Made sure that the generic KeyedStoreIC changes length and element_kind
5514 atomically (issue 2346).
5516 Bumped number of allowed variables per scope to 65535, to address GWT.
5517 (Chromium issue 151625)
5519 Support sourceURL for dynamically inserted scripts (issue 2342).
5521 Performance and stability improvements on all platforms.
5524 2012-09-20: Version 3.14.0
5526 Fixed missing slot recording during clearing of CallICs.
5527 (Chromium issue 144230)
5529 Fixed LBoundsCheck on x64 to handle (stack slot + constant) correctly.
5530 (Chromium issue 150729)
5532 Fixed minus zero test. (Issue 2133)
5534 Fixed setting array length to zero for slow elements.
5535 (Chromium issue 146910)
5537 Fixed lost arguments dropping in HLeaveInlined.
5538 (Chromium issue 150545)
5540 Fixed casting error for receiver of interceptors.
5541 (Chromium issue 149912)
5543 Throw a more descriptive exception when blocking 'eval' via CSP.
5544 (Chromium issue 140191)
5546 Fixed debugger's eval when close to stack overflow. (issue 2318)
5548 Added checks to live edit. (issue 2297)
5550 Switched on code compaction on incremental GCs.
5552 Fixed caching of optimized code for OSR. (issue 2326)
5554 Not mask exception thrown by toString in String::UtfValue etc.
5557 Fixed API check for length of external arrays. (Chromium issue 148896)
5559 Ensure correct enumeration indices in the dict (Chromium issue 148376)
5561 Correctly initialize regexp global cache. (Chromium issue 148378)
5563 Fixed arguments object materialization during deopt. (issue 2261)
5565 Introduced new API to expose external string resource regardless of
5568 Fixed CHECK failure in LCodeGen::DoWrapReceiver when
5569 --deopt-every-n-times flag is present
5570 (Chromium issue 148389)
5572 Fixed edge case of extension with NULL as source string.
5573 (Chromium issue 144649)
5575 Fixed array index dehoisting. (Chromium issue 141395)
5577 Performance and stability improvements on all platforms.
5580 2012-09-11: Version 3.13.7
5582 Enable/disable LiveEdit using the (C++) debug API.
5584 Performance and stability improvements on all platforms.
5587 2012-09-06: Version 3.13.6
5589 Added validity checking to API functions and calls.
5591 Disabled accessor inlining (Chromium issue 134609).
5593 Fixed bug in Math.min/max in optimized code (Chromium issue 145961).
5595 Directly use %ObjectKeys in json stringify (Chromium issue 2312).
5597 Fixed VS2005 build (issue 2313).
5599 Activated fixed ES5 readonly semantics by default.
5601 Added hardfp flag to the Makefile.
5603 Performance and stability improvements on all platforms.
5606 2012-08-29: Version 3.13.5
5608 Release stack trace data after firing Error.stack accessor.
5611 Added a new API V8::SetJitCodeEventHandler to push code name and
5612 location to users such as profilers.
5614 Allocate block-scoped global bindings to global context.
5616 Performance and stability improvements on all platforms.
5619 2012-08-28: Version 3.13.4
5621 Print reason for disabling optimization. Kill --trace-bailout flag.
5623 Provided option to disable full DEBUG build on Android.
5625 Introduced global contexts to represent lexical global scope(s).
5627 Fixed rounding in Uint8ClampedArray setter. (issue 2294)
5629 Performance and stability improvements on all platforms.
5632 2012-08-21: Version 3.13.3
5634 Performance and stability improvements on all platforms.
5637 2012-08-20: Version 3.13.2
5639 Performance and stability improvements on all platforms.
5642 2012-08-16: Version 3.13.1
5644 Performance and stability improvements on all platforms.
5647 2012-08-10: Version 3.13.0
5649 Added histograms for total allocated/live heap size, as well as
5650 allocated size and percentage of total for map and cell space.
5652 Fixed parseInt's octal parsing behavior (ECMA-262 Annex E 15.1.2.2).
5655 Added checks for interceptors to negative lookup code in Crankshaft.
5656 (Chromium issue 140473)
5658 Made incremental marking clear ICs and type feedback cells.
5660 Performance and stability improvements on all platforms.
5663 2012-08-01: Version 3.12.19
5665 Performance and stability improvements on all platforms.
5668 2012-07-30: Version 3.12.18
5670 Forced using bit-pattern for signed zero double. (issue 2239)
5672 Made sure double to int conversion is correct. (issue 2260)
5674 Performance and stability improvements on all platforms.
5677 2012-07-27: Version 3.12.17
5679 Always set the callee's context when calling a function from optimized
5681 (Chromium issue 138887)
5683 Fixed building with GCC 3.x
5686 Improved API calls that return empty handles.
5689 Performance and stability improvements on all platforms.
5692 2012-07-25: Version 3.12.16
5694 Performance and stability improvements on all platforms.
5697 2012-07-24: Version 3.12.15
5699 Added PRESERVE_ASCII_NULL option to String::WriteAscii.
5702 Added dependency to HLoadKeyed* instructions to prevent invalid
5703 hoisting. (Chromium issue 137768)
5705 Enabled building d8 for Android on Mac.
5707 Interpret negative hexadecimal literals as NaN.
5710 Expose counters in javascript when using --track-gc-object-stats.
5712 Enabled building and testing V8 on Android IA.
5714 Added --trace-parse flag to parser.
5716 Performance and stability improvements on all platforms.
5719 2012-07-18: Version 3.12.14
5721 Deactivated optimization of packed arrays.
5722 (Chromium issue 137768)
5724 Fixed broken accessor transition.
5725 (Chromium issue 137689)
5727 Performance and stability improvements on all platforms.
5730 2012-07-17: Version 3.12.13
5732 Fixed missing tagging of stack value in finally block.
5733 (Chromium issue 137496)
5735 Added more support for heap analysis.
5737 Performance and stability improvements on all platforms.
5740 2012-07-16: Version 3.12.12
5742 Added an option to the tickprocessor to specify the directory for lib
5745 Fixed ICs for slow objects with native accessor (Chromium issue 137002).
5747 Fixed transcendental cache on ARM in optimized code (issue 2234).
5749 New heap inspection tools: counters for object sizes and counts,
5750 histograms for external fragmentation.
5752 Incorporated constness into inferred interfaces (in preparation for
5753 handling imports) (issue 1569).
5755 Performance and stability improvements on all platforms.
5758 2012-07-12: Version 3.12.11
5760 Renamed "mips" arch to "mipsel" in the GYP build.
5762 Fixed computation of call targets on prototypes in Crankshaft.
5763 (Chromium issue 125148)
5765 Removed use of __lookupGetter__ when generating stack trace.
5768 Turned on ES 5.2 globals semantics by default.
5769 (issue 1991, Chromium issue 80591)
5771 Synced preparser and parser wrt syntax error in switch..case.
5774 Fixed reporting of octal literals in strict mode when preparsing.
5777 Fixed inline constructors for Harmony Proxy prototypes.
5780 Performance and stability improvements on all platforms.
5783 2012-07-10: Version 3.12.10
5785 Re-enabled and fixed issue with array bounds check elimination
5786 (Chromium issue 132114).
5788 Fixed Debug::Break crash. (Chromium issue 131642)
5790 Added optimizing compiler support for JavaScript getters.
5792 Performance and stability improvements on all platforms.
5795 2012-07-06: Version 3.12.9
5797 Correctly advance the scanner when scanning unicode regexp flag.
5798 (Chromium issue 136084)
5800 Fixed unhandlified code calling Harmony Proxy traps.
5803 Performance and stability improvements on all platforms.
5806 2012-07-05: Version 3.12.8
5808 Implemented TypedArray.set and ArrayBuffer.slice in d8.
5810 Performance and stability improvements on all platforms.
5813 2012-07-03: Version 3.12.7
5815 Fixed lazy compilation for strict eval scopes.
5816 (Chromium issue 135066)
5818 Made MACOSX_DEPLOYMENT_TARGET configurable in GYP.
5821 Report "hidden properties" in heap profiler for properties case.
5824 Activated optimization of packed arrays by default.
5826 Performance and stability improvements on all platforms.
5829 2012-06-29: Version 3.12.6
5831 Cleaned up hardfp ABI detection for ARM (V8 issue 2140).
5833 Extended TypedArray support in d8.
5836 2012-06-28: Version 3.12.5
5838 Fixed lazy parsing heuristics to respect outer scope.
5839 (Chromium issue 135008)
5841 Allow using test-wrapper-gypbuild.py on Windows when no python
5842 interpreter is registered.
5844 Performance and stability improvements on all platforms.
5847 2012-06-27: Version 3.12.4
5849 Removed -fomit-frame-pointer flag from Release builds to make
5850 the stack walkable by TCMalloc (Chromium issue 133723).
5852 Ported r7868 (constant masking) to x64 (issue 1374).
5854 Expose more detailed memory statistics (issue 2201).
5856 Fixed Harmony Maps and WeakMaps for undefined values
5857 (Chromium issue 132744).
5859 Correctly throw reference error in strict mode with ICs disabled
5862 Performance and stability improvements on all platforms.
5865 2012-06-25: Version 3.12.3
5867 Reverted r11835 'Unify promotion and allocation limit computation' due
5868 to V8 Splay performance regression on Mac. (Chromium issue 134183)
5870 Fixed sharing of literal boilerplates for optimized code. (issue 2193)
5872 Performance and stability improvements on all platforms.
5875 2012-06-22: Version 3.12.2
5877 Made near-jump check more strict in LoadNamedFieldPolymorphic on
5878 ia32/x64. (Chromium issue 134055)
5880 Fixed lazy sweeping heuristics to prevent old-space expansion.
5883 Performance and stability improvements on all platforms.
5886 2012-06-21: Version 3.12.1
5888 Performance and stability improvements on all platforms.
5891 2012-06-20: Version 3.12.0
5893 Fixed Chromium issues:
5894 115100, 129628, 131994, 132727, 132741, 132742, 133211
5897 915, 1914, 2034, 2087, 2094, 2134, 2156, 2166, 2172, 2177, 2179, 2185
5899 Added --extra-code flag to mksnapshot to load JS code into the VM
5900 before creating the snapshot.
5902 Support 'restart call frame' command in the debugger.
5904 Performance and stability improvements on all platforms.
5907 2012-06-13: Version 3.11.10
5909 Implemented heap profiler memory usage reporting.
5911 Preserved error message during finally block in try..finally.
5912 (Chromium issue 129171)
5914 Fixed EnsureCanContainElements to properly handle double values.
5917 Improved heuristics to keep objects in fast mode with inherited
5920 Performance and stability improvements on all platforms.
5923 2012-06-06: Version 3.11.9
5925 Implemented ES5-conformant semantics for inherited setters and read-only
5926 properties. Currently behind --es5_readonly flag, because it breaks
5929 Exposed last seen heap object id via v8 public api.
5931 Performance and stability improvements on all platforms.
5934 2012-05-31: Version 3.11.8
5936 Avoid overdeep recursion in regexp where a guarded expression with a
5937 minimum repetition count is inside another quantifier.
5938 (Chromium issue 129926)
5940 Fixed missing write barrier in store field stub.
5941 (issues 2143, 1465, Chromium issue 129355)
5943 Proxies: Fixed receiver for setters inherited from proxies.
5944 Proxies: Fixed ToStringArray function so that it does not reject some
5948 Performance and stability improvements on all platforms.
5951 2012-05-29: Version 3.11.7
5953 Get better function names in stack traces.
5955 Performance and stability improvements on all platforms.
5958 2012-05-24: Version 3.11.6
5960 Fixed RegExp.prototype.toString for incompatible receivers
5963 Performance and stability improvements on all platforms.
5966 2012-05-23: Version 3.11.5
5968 Performance and stability improvements on all platforms.
5971 2012-05-22: Version 3.11.4
5973 Some cleanup to common.gypi. This fixes some host/target combinations
5974 that weren't working in the Make build on Mac.
5976 Handle EINTR in socket functions and continue incomplete sends.
5979 Fixed python deprecations. (issue 1391)
5981 Made socket send and receive more robust and return 0 on failure.
5982 (Chromium issue 15719)
5984 Fixed GCC 4.7 (C++11) compilation. (issue 2136)
5986 Set '-m32' option for host and target platforms
5988 Performance and stability improvements on all platforms.
5991 2012-05-18: Version 3.11.3
5993 Disable optimization for functions that have scopes that cannot be
5994 reconstructed from the context chain. (issue 2071)
5996 Define V8_EXPORT to nothing for clients of v8. (Chromium issue 90078)
5998 Correctly check for native error objects. (Chromium issue 2138)
6000 Performance and stability improvements on all platforms.
6003 2012-05-16: Version 3.11.2
6005 Revert r11496. (Chromium issue 128146)
6007 Implement map collection for incremental marking. (issue 1465)
6009 Add toString method to CallSite (which describes a frame of the
6013 2012-05-15: Version 3.11.1
6015 Added a readbuffer function to d8 that reads a file into an ArrayBuffer.
6017 Fix freebsd build. (V8 issue 2126)
6019 Performance and stability improvements on all platforms.
6022 2012-05-11: Version 3.11.0
6024 Fixed compose-discard crasher from r11524 (issue 2123).
6026 Activated new global semantics by default. Global variables can
6027 now shadow properties of the global object (ES5.1 erratum).
6029 Properly set ElementsKind of empty FAST_DOUBLE_ELEMENTS arrays when
6030 transitioning (Chromium issue 117409).
6032 Made Error.prototype.name writable again, as required by the spec and
6033 the web (Chromium issue 69187).
6035 Implemented map collection with incremental marking (issue 1465).
6037 Regexp: Fixed overflow in min-match-length calculation
6038 (Chromium issue 126412).
6040 MIPS: Fixed illegal instruction use on Loongson in code for
6041 Math.random() (issue 2115).
6043 Fixed crash bug in VisitChoice (Chromium issue 126272).
6045 Fixed unsigned-Smi check in MappedArgumentsLookup
6046 (Chromium issue 126414).
6048 Fixed LiveEdit for function with no locals (issue 825).
6050 Fixed register clobbering in LoadIC for interceptors
6051 (Chromium issue 125988).
6053 Implemented clearing of CompareICs (issue 2102).
6055 Performance and stability improvements on all platforms.
6058 2012-05-03: Version 3.10.8
6060 Enabled MIPS cross-compilation.
6062 Ensured reload of elements pointer in StoreFastDoubleElement stub.
6063 (Chromium issue 125515)
6065 Fixed corner cases in truncation behavior when storing to
6066 TypedArrays. (issue 2110)
6068 Fixed failure to properly recognize and report out-of-memory
6069 conditions when allocating code space pages. (Chromium issue
6072 Fixed idle notifications to perform a round of incremental GCs
6073 after context disposal. (issue 2107)
6075 Fixed preparser for try statement. (issue 2109)
6077 Performance and stability improvements on all platforms.
6080 2012-04-30: Version 3.10.7
6082 Performance and stability improvements on all platforms.
6085 2012-04-26: Version 3.10.6
6087 Fixed some bugs in accessing details of the last regexp match.
6089 Fixed source property of empty RegExp objects. (issue 1982)
6091 Enabled inlining some V8 API functions.
6093 Performance and stability improvements on all platforms.
6096 2012-04-23: Version 3.10.5
6098 Put new global var semantics behind a flag until WebKit tests are
6101 Enabled stepping into callback passed to builtins.
6102 (Chromium issue 109564)
6104 Performance and stability improvements on all platforms.
6107 2012-04-19: Version 3.10.4
6109 Fixed issues when stressing compaction with WeakMaps.
6111 Fixed missing GVN flag for new-space promotion. (Chromium issue 123919)
6113 Simplify invocation sequence at monomorphic function invocation sites.
6116 Performance and stability improvements on all platforms.
6119 2012-04-17: Version 3.10.3
6121 Fixed several bugs in heap profiles (including issue 2078).
6123 Throw syntax errors on illegal escape sequences.
6125 Implemented rudimentary module linking (behind --harmony flag)
6127 Implemented ES5 erratum: Global declarations should shadow
6128 inherited properties.
6130 Made handling of const more consistent when combined with 'eval'
6133 Fixed V8 on MinGW-x64 (issue 2026).
6135 Performance and stability improvements on all platforms.
6138 2012-04-13: Version 3.10.2
6140 Fixed native ARM build (issues 1744, 539)
6142 Return LOOKUP variable instead of CONTEXT for non-context allocated
6143 outer scope parameters (Chromium issue 119609).
6145 Fixed regular and ElementsKind transitions interfering with each other
6146 (Chromium issue 122271).
6148 Improved performance of keyed loads/stores which have a HeapNumber
6149 index (issues 1388, 1295).
6151 Fixed WeakMap processing for evacuation candidates (issue 2060).
6153 Bailout on possible direct eval calls (Chromium issue 122681).
6155 Do not assume that names of function expressions are context-allocated
6158 Performance and stability improvements on all platforms.
6161 2012-04-10: Version 3.10.1
6163 Fixed bug with arguments object in inlined functions (issue 2045).
6165 Fixed performance bug with lazy initialization (Chromium issue
6168 Added suppport for Mac OS X 64bit builds with GYP.
6169 (Patch contributed by Filipe David Manana <fdmanana@gmail.com>)
6171 Fixed bug with hidden properties (issue 2034).
6173 Fixed a performance bug when reloading pages (Chromium issue 117767,
6176 Fixed bug when optimizing throw in top-level code (issue 2054).
6178 Fixed two bugs with array literals (issue 2055, Chromium issue 121407).
6180 Fixed bug with Math.min/Math.max with NaN inputs (issue 2056).
6182 Fixed a bug with the new runtime profiler (Chromium issue 121147).
6184 Fixed compilation of V8 using uClibc.
6186 Optimized boot-up memory use.
6188 Optimized regular expressions.
6191 2012-03-30: Version 3.10.0
6193 Fixed store IC writability check in strict mode
6194 (Chromium issue 120099).
6196 Resynchronize timers if the Windows system time was changed.
6197 (Chromium issue 119815)
6199 Removed "-mfloat-abi=hard" from host compiler cflags when building for
6201 (https://code.google.com/p/chrome-os-partner/issues/detail?id=8539)
6203 Fixed edge case for case independent regexp character classes
6206 Reset function info counters after context disposal.
6207 (Chromium issue 117767, V8 issue 1902)
6209 Fixed missing write barrier in CopyObjectToObjectElements.
6210 (Chromium issue 119926)
6212 Fixed missing bounds check in HasElementImpl.
6213 (Chromium issue 119925)
6215 Performance and stability improvements on all platforms.
6218 2012-03-23: Version 3.9.24
6220 Activated count-based profiler for ARM.
6222 Fixed use of proxies as f.prototype properties. (issue 2021)
6224 Enabled snapshots on MIPS.
6226 Performance and stability improvements on all platforms.
6229 2012-03-21: Version 3.9.23
6231 Use correct arguments adaptation environment when inlining function
6232 containing arguments. (Issue 2014)
6234 Performance and stability improvements on all platforms.
6237 2012-03-20: Version 3.9.22
6239 Enabled count-based profiler by default.
6241 Implemented a hash based look-up to speed up address checks
6242 in large object space (issue 853).
6244 Performance and stability improvements on all platforms.
6247 2012-03-19: Version 3.9.21
6249 Fixed push-to-trunk script (and re-push).
6251 Added API call that identifies strings that are guaranteed only to
6252 contain ASCII characters.
6255 2012-03-19: Version 3.9.20
6257 Fixed declarations escaping global strict eval. (Issue 1624)
6259 Fixed wrapping of receiver for non-strict callbacks. (Issue 1973)
6261 Fixed function declarations overwriting read-only global properties.
6262 (Chromium issue 115452)
6264 Fixed --use-strict flag in combination with --harmony[-scoping].
6266 Debugger: naive implementation of "step into Function.prototype.bind".
6268 Debugger: added ability to set script source from within OnBeforeCompile
6270 Added flag to always call DebugBreak on abort.
6272 Re-enabled constructor inlining and inline === comparison with boolean
6273 constants. (Issue 2009)
6275 Don't use an explicit s0 in ClampDoubleToUint8. (Issue 2004)
6277 Performance and stability improvements on all platforms.
6280 2012-03-14: Version 3.9.19
6282 Ensure there is a smi check of the receiver for global load and call
6283 ICs (Chromium issue 117794).
6285 Performance and stability improvements on all platforms.
6288 2012-03-13: Version 3.9.18
6290 Ensure consistency of Math.sqrt on Intel platforms.
6292 Remove static initializers in v8. (issue 1859)
6294 Add explicit dependency on v8_base in the GYP-based build.
6296 Performance and stability improvements on all platforms.
6299 2012-03-12: Version 3.9.17
6301 Fixed VFP detection through compiler defines. (issue 1996)
6303 Add Code-related fields to postmortem metadata.
6305 Performance and stability improvements on all platforms.
6308 2012-03-09: Version 3.9.16
6310 Added basic interface inference for modules (behind the --harmony flag).
6312 Added Object.is, Number.isFinite, Number.isNaN.
6314 Updated the Unicode tables to Unicode version 6.1.0.
6316 Performance and stability improvements on all platforms.
6319 2012-03-06: Version 3.9.15
6321 Fix the heap profiler crash caused by memory layout changes between
6324 Fix Error.prototype.toString to throw TypeError. (issue 1980)
6326 Fix double-rounding in strtod for MinGW. (issue 1062)
6328 Fix corrupted snapshot serializaton on ia32. (Chromium issue v8/1985)
6330 Performance and stability improvements on all platforms.
6333 2012-03-01: Version 3.9.14
6335 Performance and stability improvements on all platforms.
6338 2012-02-29: Version 3.9.13
6340 Added code kind check before preparing for OSR. (issue 1900, 115073)
6342 Fixed issue 1802: Pass zone explicitly to zone-allocation on x64 and
6345 Ported string construct stub to x64. (issue 849)
6347 Performance and stability improvements on all platforms.
6350 2012-02-28: Version 3.9.12
6352 Fixed the negative lookup stub to handle deleted entries in a
6353 dictionary. (issue 1964)
6355 Added a new API where the host can supply a callback function. The
6356 callback function can resolve the location of a return address on stack
6357 to the location where a return-address rewriting profiler stashed the
6358 original return address.
6360 Fixed Chromium issue http://crbug.com/115646: When compiling for-in
6361 pass correct context value to the increment instruction.
6363 Fixed issue 1853: Update breakpoints set with partial file name after
6367 2012-02-27: Version 3.9.11
6369 Made 'module' a context-sensitive keyword (V8 issue 1957).
6372 2012-02-24: Version 3.9.10
6374 Fixed V8 issues 1322, 1772 and 1969.
6376 Conformance improvements.
6378 Performance and stability improvements on all platforms.
6381 2012-02-23: Version 3.9.9
6383 Supported fast case for-in in Crankshaft.
6385 Sped up heap snapshot serialization and dominators construction.
6387 Randomized allocation addresses on windows. (Chromium issue 115151)
6389 Fixed compilation with MinGW-w64. (issue 1943)
6391 Fixed incorrect value of assignments to non-extensible properties.
6393 Fixed a crash bug in generated code on ia32.
6395 Performance and stability improvements on all platforms.
6398 2012-02-21: Version 3.9.8
6400 Fixed memory leak and missing #include in StartupDataDecompressor
6403 Renamed static methods to avoid shadowing virtual methods and fix Clang
6404 C++11 compile error.
6406 Fixed sequence of element access in array builtins (issue 1790).
6408 Performance and stability improvements on all platforms.
6411 2012-02-16: Version 3.9.7
6413 Fixed V8 issues 1322, 1878, 1942, 1945 and Chromium issue 113924.
6415 Fixed GCC-4.7 warnings.
6417 Added Navier-Stokes benchmark.
6419 Performance and stability improvements on all platforms.
6422 2012-02-14: Version 3.9.6
6424 Fixed template-related linker error. (issue 1936)
6426 Allowed inlining of functions containing object literals. (issue 1322)
6428 Added --call-graph-size option to tickprocessor. (issue 1937)
6430 Heap Snapshot maximum size limit is too low for really big apps. At the
6431 moment the limit is 256MB. (Chromium issue 113015)
6433 Performance and stability improvements on all platforms.
6436 2012-02-09: Version 3.9.5
6438 Removed unused command line flags.
6440 Performance and stability improvements on all platforms.
6443 2012-02-08: Version 3.9.4
6445 Properly initialize element-transitioning array literals on ARM.
6448 Bug fixes on all platforms.
6451 2012-02-07: Version 3.9.3
6453 When rethrowing an exception, print the stack trace of its original
6454 site instead of rethrow site (Chromium issue 60240).
6456 Increased size of small stacks from 32k to 64k to avoid hitting limits
6457 in Chromium (Chromium issue 112843).
6460 2012-02-06: Version 3.9.2
6462 Added timestamp to --trace-gc output. (issue 1932)
6464 Heap profiler reports implicit references.
6466 Optionally export metadata with libv8 to enable debuggers to inspect V8
6470 2012-02-02: Version 3.9.1
6472 Fixed memory leak in NativeObjectsExplorer::FindOrAddGroupInfo
6473 (Chromium issue 112315).
6475 Fixed a crash in dev tools (Chromium issue 107996).
6477 Added 'dependencies_traverse': 1 to v8 GYP target.
6479 Performance and stability improvements on all platforms.
6482 2012-02-01: Version 3.9.0
6484 Reduced memory use immediately after starting V8.
6486 Stability fixes and performance improvements on all platforms.
6489 2012-01-26: Version 3.8.9
6491 Flush number string cache on GC (issue 1605).
6493 Provide access to function inferred name with
6494 v8::Function::GetInferredName in V8 public API.
6496 Fix building with Clang (issue 1912).
6498 Reduce the space used by the stack for the profiling thread.
6500 Fix misleading documentation of v8::Locker (issue 542).
6502 Introduce readbinary function in d8 to read binary files.
6504 Performance and stability improvements on all platforms.
6507 2012-01-23: Version 3.8.8
6509 Limited number of loop iterations in Heap::ReserveSpace
6510 (Chromium issue 99027).
6512 Fixed solaris build (VirtualMemory) (issue 1761).
6514 Fixed strict vs. non-strict handling of function proxies in
6515 higher-order array and string methods.
6517 Enabled asynchronous remote debugging with d8 (issue 1691).
6519 Stability and performance improvements on all platforms.
6522 2012-01-19: Version 3.8.7
6524 Ensure that LRandom restores rsi after call to the C function on x64.
6525 (Chromium issue http://crbug.com/110509)
6527 Fixing include issues on *bsd when building with scons.
6530 Provide a switch to specify -fno-strict-aliasing
6533 Move WIN32 define from standalone.gypi to common.gypi
6536 Fix corner-case in heap size estimation.
6539 Fix and enable NEW_NON_STRICT_FAST ArgumentsAccess stub on x64.
6542 Performance improvements and bug fixes.
6545 2012-01-16: Version 3.8.6
6547 Add primitive WebGL array support to d8.
6549 Improve heap size estimation (issue 1893).
6551 Hash collision DOS workaround extended from string keys
6554 Provide an API for iterating through all external strings referenced
6557 Adjust position recorded for call expressions. http://crbug.com/109195
6559 Fix GC crash related to instanceof. http://crbug.com/109448
6561 Performance improvements and bug fixes.
6564 2012-01-05: Version 3.8.5
6566 Fix broken test that assumes that no GC can clear the regexp cache (GC
6567 can happen at any time due to Crankshaft).
6569 Fix handling of bogus receivers for Harmony collections. (issue 1884)
6571 Add netbsd support to gyp build.
6573 Determine page size at runtime on posix platforms.
6575 Ensure that store buffer filtering hash sets are cleared after
6576 StoreBuffer::Filter.
6578 Randomize the seed used for string hashing. This helps guard against
6579 CPU-eating DOS attacks against node.js servers. Based on code from
6580 Bert Belder. This version only solves the issue for those that compile
6581 V8 themselves or those that do not use snapshots. A snapshot-based
6582 precompiled V8 will still have predictable string hash codes.
6584 Implement callback when script finishes running in V8 API.
6586 Improve performance of Math.min and Math.max for the case of two
6587 arguments. (issue 1325)
6590 2012-01-02: Version 3.8.4
6592 Performance improvements for large Smi-only arrays.
6594 Fixed InternalArrays construction. (issue 1878)
6597 2011-12-27: Version 3.8.3
6599 Avoid embedding new space objects into code objects in the lithium gap
6600 resolver. (chromium:108296)
6602 Bug fixes and performance optimizations on all platforms.
6605 2011-12-21: Version 3.8.2
6607 Add max optimization flag to v8 gyp build to ensure V8 is always built
6608 fully optimized in Chrome.
6610 MIPS: Bring MIPS to parity with other platforms.
6612 Optimizations and stability improvements on all platforms.
6615 2011-12-19: Version 3.8.1
6617 Fixed GCC 4.7 warnings. Patch from Tobias Burnus.
6619 Stability improvements on all platforms.
6622 2011-12-13: Version 3.8.0
6624 Fixed handling of arrays in DefineOwnProperty. (issue 1756)
6626 Sync parser and preparser on do-while and return statements.
6629 Fixed another corner case for DefineOwnProperty on arrays (issue 1756).
6631 Stability and performance improvements on all platforms.
6634 2011-12-01: Version 3.7.12
6636 Increase tick interval for the android platform.
6638 Fix a bug in the register allocator. (chromium:105112)
6640 Fix handling of recompiling code. (chromium:105375, v8:1782)
6642 Start incremental marking on idle notification. (v8:1458)
6644 Build fixes for various platforms.
6646 Various performance improvements.
6649 2011-11-29: Version 3.7.11
6651 Fixed bug when generating padding to ensure space for lazy
6655 Further reduced pause times due to GC.
6657 Stability and performance improvements on all platforms.
6660 2011-11-23: Version 3.7.10
6662 Set maximum length of FixedArray in terms of elements instead an
6663 absolute number of bytes.
6664 (Chromium issue 103103)
6666 Stability and performance improvements on all platforms.
6669 2011-11-21: Version 3.7.9
6671 Removed exit-time destructors.
6673 Stability and performance improvements on all platforms.
6676 2011-11-17: Version 3.7.8
6678 Removed hidden prototype from builtins, i.e., deleting an overridden
6679 function on builtins will not make the original function reappear.
6681 Added NetBSD support for scons build.
6683 Performance improvements on all platforms.
6686 2011-11-14: Version 3.7.7
6688 Fix missing fast property accessors in heap snapshots.
6692 2011-11-11: Version 3.7.6
6694 Fixed filtering of store buffer for large object pages.
6697 Fixed generated hash function on all platforms.
6700 Fixed Heap::Shrink to ensure that it does not free pages that are
6702 (Chromium issue 100414)
6704 Stability and performance improvements on all platforms.
6707 2011-11-10: Version 3.7.5
6709 Added initial gyp infrastructure for MIPS.
6711 Implemented performance improvements to the incremental garbage
6714 Added optimizations and stability improvements on all platforms.
6717 2011-11-07: Version 3.7.4
6719 Proper "libv8.so.3.7.4" SONAME for Linux shared library (issue 1786).
6721 Fix Harmony sets and maps to allow null and undefined as keys
6722 (still hidden behind --harmony flag) (issue 1622).
6724 Implement VirtualMemory on FreeBSD to fix build (issue 1807).
6726 Enable VFP instructions for Android.
6728 Fix error handling in Date.prototype.toISOString (issue 1792).
6730 Bug fixes and performance improvements for all platforms.
6732 Not officially supported but noteworthy: Crankshaft for MIPS :-)
6735 2011-10-28: Version 3.7.3
6737 Slight deoptimization as a workaround for issue with jslint: Issue
6741 2011-10-27: Version 3.7.2
6743 Fix bug in deoptimization. Known issue with jslint: Issue 1789.
6746 2011-10-26: Version 3.7.1
6748 Achieved 33% speedup in debug-mode tests.
6750 Removed special casing of calls to RegExp test and exec methods with no
6751 argument. Now matches new JSC behaviour. crbug.com/75740.
6753 Return the empty string on cyclic references in toString (ES5
6756 Fixed bug triggered by JSBeautifier. crbug.com/100409.
6758 Made Math.random state per-context instead of per-process (issue 864).
6760 Fixed stack traces to skip native functions.
6762 Make snapshots (new contexts) smaller and faster.
6764 Fixed handling of Function.apply for non-array arguments.
6766 Fixed evaluation order in defineProperties to match FireFox.
6768 Fixed handling of non-object receivers for array builtins,
6771 Multiple fixes to improve compliance with test262.
6773 Fixed compatibility with older Android releases.
6775 Fixed compilation with gcc-4.5.3.
6777 Improved performance of WriteUtf8, issue 1665.
6779 Made native syntax an early error in the preparser.
6781 Fixed issues 793 and 893 relating to Function.prototype.bind.
6783 Improved let, const, Set and Map support and other Harmony features
6784 (behind the --harmony flag).
6786 Changed evaluation order for > and <= to match ES5 instead of ES3.
6788 Bug fixes and performance improvements on all platforms.
6791 2011-10-13: Version 3.7.0
6793 Fixed array handling for Object.defineOwnProperty (ES5 conformance).
6795 Fixed issue 1757 (string slices of external strings).
6797 Fixed issue 1759 (ARM).
6799 Added flag --noclever-optimizations to disable some things that
6800 caused trouble in the past.
6802 Added flag --stress-compaction for testing.
6804 Added flag --harmony to activate all experimental Harmony features.
6807 2011-10-10: Version 3.6.6
6809 Added a GC pause visualization tool.
6811 Added presubmit=no and werror=no flags to Makefile.
6813 ES5/Test262 conformance improvements.
6815 Fixed compilation issues with GCC 4.5.x (issue 1743).
6817 Bug fixes and performance improvements on all platforms.
6820 2011-10-05: Version 3.6.5
6822 New incremental garbage collector.
6824 Removed the hard heap size limit (soft heap size limit is still
6825 700/1400Mbytes by default).
6827 Implemented ES5 generic Array.prototype.toString (Issue 1361).
6829 V8 now allows surrogate pair codes in decodeURIComponent (Issue 1415).
6831 Fixed x64 RegExp start-of-string bug (Issues 1746, 1748).
6833 Fixed propertyIsEnumerable for numeric properties (Issue 1692).
6835 Fixed the MinGW and Windows 2000 builds.
6837 Fixed "Prototype chain is not searched if named property handler does
6838 not set a property" (Issue 1636).
6840 Made the RegExp.prototype object be a RegExp object (Issue 1217).
6842 Disallowed future reserved words as labels in strict mode.
6844 Fixed string split to correctly coerce the separator to a string
6847 API: Added an optional source length field to the Extension
6850 API: Added Debug::DisableAgent to match existing Debug::EnableAgent
6853 Added "native" target to Makefile for the benefit of Linux distros.
6855 Fixed: debugger stops stepping outside evaluate (Issue 1639).
6857 More work on ES-Harmony proxies. Still hidden behind a flag.
6859 Bug fixes and performance improvements on all platforms.
6862 2011-09-15: Version 3.6.4
6864 Fixed d8's broken readline history.
6866 Removed the need for code delete events in CPU profiler (Issue 1466).
6868 Fixed debugger stepping next with trycatch recursion (Issue 1639).
6870 Fixing parallel execution in d8 (with -p) and some memory leaks.
6872 Support for precise stepping in functions compiled before debugging was
6876 2011-09-13: Version 3.6.3
6878 Implemented better support of typed arrays in the d8 shell.
6880 Bug fixes and performance improvements on all platforms.
6883 2011-09-08: Version 3.6.2
6885 Added "dependencies" target to top-level Makefile.
6887 Added ability to turn profiler on/off in d8.
6889 Added "soname_version" parameter to common.gypi, v8.gyp, and Makefile.
6891 Fixed several crash bugs.
6894 2011-09-07: Version 3.6.1
6896 Fixed a bug in abrupt exit from with or catch inside finally.
6898 Fixed possible crash in FixedDoubleArray::Initialize() (Chromium
6901 Fixed a bug in Page::GetRegionMaskForSpan (Chromium issue 94425).
6903 Fixed a few clang warnings (which -Werror treated as errors).
6905 Performance improvements on all platforms.
6908 2011-09-05: Version 3.6.0
6910 Fixed a bug when optimizing named function expression (issue 1647).
6912 Fixed a bug when optimizing f.call.apply (issue 1650).
6914 Made arguments and caller always be null on native functions
6915 (issues 1548 and 1643).
6917 Fixed issue 1648 (cross-compiling x64 targeting ia32).
6919 Fixed issue 371 (d8 printing of strings containing \0).
6921 Fixed order of evaluation in arguments to parseInt (issue 1649).
6923 Fixed a problem with large heap snapshots in Chrome DevTools
6924 (issue 1658, chromium issue 89268).
6926 Upped default maximum heap size from 512M to 700M.
6929 2011-08-31: Version 3.5.10
6931 Added dependency of v8_base on WinSocket2 Windows library in
6937 2011-08-29: Version 3.5.9
6939 Made FromPropertyDescriptor not trigger inherited setters.
6941 Fixed .gyp files to work on the ARM simulator.
6943 Fixed shared library build warnings for MSVS.
6946 2011-08-24: Version 3.5.8
6948 Added V8EXPORT attributes for v8::Array::CheckCast and
6949 v8::Number::CheckCast.
6951 Made a slight API change enabling opting out from null termination
6952 in String::Write*().
6954 Fixed arm build for gcc-4.6.
6957 2011-08-22: Version 3.5.7
6959 Make scanner handle invalid unicode escapes in identifiers correctly.
6961 Make regexp flag parsing stricter.
6963 Fix several memory leaks.
6966 2011-08-17: Version 3.5.6
6968 Fixed issue that could cause crashes when running with --heap-stats.
6970 Fixed compilation on Linux 2.6.9 and older.
6972 Fixed live-object-list to work with isolates.
6974 Fixed memory leaks in zones and isolates.
6976 Fixed a performance regression for TypedArrays on x64.
6978 Stability improvements on all platforms.
6981 2011-08-15: Version 3.5.5
6983 Fixed bugs involving negative zero and the optimizing compiler.
6985 Fixed optimized version of Function.apply(x, arguments). (issue 1592)
6987 Eliminated uses of deprecated ARM instructions.
6989 Sped up Math.floor by using SSE 4.1 roundsd instruction on ia32.
6991 Removed restriction on the size of disassembled code that is printed.
6994 2011-08-10: Version 3.5.4
6996 Added a preliminary implementation of ES Harmony weak maps. Weak
6997 maps can be enabled by the flag --harmony-weakmaps.
6999 Introduced a toplevel Makefile to support GYP-based building. GYP
7000 can be obtained from http://gyp.googlecode.com.
7002 Fixed a bug in the length property of functions created by
7003 Function.prototype.bind.
7005 Reduced malloc heap allocation on process startup.
7007 Several important code generation bug fixes.
7009 Performance improvements on all platforms.
7012 2011-08-03: Version 3.5.3
7014 MIPS: Port of fix to ClassOf check from ARM.
7015 Patch from Paul Lind <plind44@gmail.com>.
7017 Stopped using mprotect on Cygwin.
7018 Avoided uninitialized member warning on gcc 4.3.4
7019 Both patches by Bert Belder.
7021 Bug fixes and performance improvements on all platforms.
7024 2011-08-01: Version 3.5.2
7026 Performance improvements on all platforms.
7029 2011-07-28: Version 3.5.1
7031 Fixed setting the readonly flag on the prototype property using the
7032 API call FunctionTemplate::SetPrototypeAttributes (issue 1539).
7034 Changed the tools/test.py script to use d8 instead of shell for
7037 Fixed crash in ToBooleanStub when GC happens during invocation.
7039 Enabled automatic unboxing of double arrays.
7041 Performance improvements on all platforms.
7044 2011-07-25: Version 3.5.0
7046 Implemented Object.prototype.{hasOwnProperty, propertyIsEnumerable} for
7049 Removed logging to memory support.
7051 Bugfixes and performance work.
7054 2011-07-20: Version 3.4.14
7056 Fix the debugger for strict-mode functions. (Chromium issue 89236)
7058 Add GetPropertyAttribute method for Object in the API. (Patch by
7061 Fix -Wunused-but-set-variable for gcc-4.6 on x64. (Issue 1291)
7064 2011-07-18: Version 3.4.13
7066 Improved debugger support to allow inspection of optimized frames (issue
7069 Fixed a bug in prototype transitions cache clearing introduced by r8165.
7071 Fixed shortcutting bug in HInferRepresentation. Patch by Andy Wingo.
7073 Fixed a memory leak in sample/shell.cc (dispose semaphores).
7075 Simplified HClampToUint8. Patch by Andy Wingo.
7077 Exposed APIs for detecting boxed primitives, native errors. Patch by
7080 Added map check for COW elements to crankshaft array handling code
7083 Sample shell and (a light version of) D8 links against a shared library
7086 Fixed bug in array filter and reduce functions (issue 1559).
7088 Avoid TLS load in AstNode constructor.
7090 Introduced a random entropy source which can optionally be provided at
7091 initialization. (Chromium issue 89462).
7094 2011-07-13: Version 3.4.12
7096 Added --prof profiling option to d8 shell.
7098 Fixed a bug where reading a directory in d8 shell hangs (issue 1533).
7100 Fixed a potential assertion failure in const declarations.
7102 Fixed an assertion failure in descriptor arrays (issue 1526).
7104 Enabled fast thread-local storage by default on supported platforms.
7106 Improved reporting of source position for global variable loads
7110 2011-07-11: Version 3.4.11
7112 Fixed MinGW32 build.
7114 Fixed a GC bug with RegExp code flushing.
7116 Implemented Object.defineProperty for proxies.
7118 Fixed a bug in for/in iteration of arguments objects (issue 1531).
7120 Added debugger support for inspecting optimized frames (issue 1140).
7122 Allowed JSObject::PreventExtensions to work for arguments objects.
7124 Bugfixes and performance work.
7127 2011-07-06: Version 3.4.10
7129 Fixed debugger not breaking on certain "if" statements (issue 1523).
7131 Fixed assertion failure in runtime profiler when running on IA32
7132 without snapshot (issue 1522).
7134 Fixed ABI for API calls on IA32 (for clang compatibility).
7136 Introduced code flushing of RegExp code to free memory used by
7139 Fixed linux-tick-processor built wrong version of v8 (issue 1532).
7141 Fixed assertion failure in v8::TryCache::StackTrace (issue 1529).
7143 Performance improvements on all platforms.
7146 2011-07-04: Version 3.4.9
7148 Added support for debugger inspection of locals in optimized frames
7151 Fixed SConstruct to pass correct defines to samples/preparser when
7152 building with library=shared.
7154 Made date parser handle ES5 Date Time Strings correctly (issue 1498).
7156 Fixed a bug in Object.defineProperty on the arguments object.
7158 Performance improvements on all platforms.
7161 2011-06-29: Version 3.4.8
7163 Ensure 16-byte stack alignment on Solaris (issue 1505).
7165 Fix "illegal access" when calling parseInt with a radix
7166 that is not a smi. (issue 1246).
7169 2011-06-27: Version 3.4.7
7171 Fixed 64-bit build on FreeBSD.
7173 Added API to set the property attributes for the prototype
7174 property on functions created from FunctionTemplates.
7176 Bugfixes and performance work.
7179 2011-06-22: Version 3.4.6
7181 Lowered limit on code space for systems with low memory supply.
7183 Allowed compiling v8_shell with the 'host' toolset (issue 82437).
7185 Extended setBreakpoint API to accept partial script name (issue 1418).
7187 Made multi-line comments not count when deciding whether the '-->'
7188 comment starter is first on a line. This matches Safari.
7190 Made handling of non-array recievers in Array length setter correct
7193 Added ability to heap profiler to iterate over snapshot's node
7197 2011-06-20: Version 3.4.5
7199 Fixed issues 794, 1097, 1215(partial), 1417, 1435, 1472, 1473,
7202 Improved code generation for !0 and !1.
7204 Reduced memory usage for regular expressions with nested qualifiers.
7207 Fixed V8 to count line terminators in multi-line comments.
7208 (Chromium issue 86431)
7210 Fixed disassembler=on option for release-mode builds. (issue 1473)
7212 Performance improvements on all platforms.
7215 2011-06-15: Version 3.4.4
7217 Added snapshot compression support and --stress-opt flag to d8.
7219 Improved performance of try/catch.
7221 Several GYP-related changes: Added support for building Xcode project
7222 files. Make the ARM simulator build with GYP again. Generate Makefiles
7223 for all architectures on Linux.
7225 Fixed Array.prototype.{reduce,reduceRight} to pass undefined as the
7226 receiver for strict mode callbacks. (issue 1436)
7228 Fixed a bug where an array load was incorrectly hoisted by GVN.
7230 Handle 'undefined' correctly when === has been specialized for doubles.
7233 Corrected the limit of local variables in an optimized function from 64
7236 Correctly set ReadOnly flag on indexed properties when using the API Set
7237 method. (issue 1470)
7239 Give the correct error message when Object.isExtensible is called on a
7240 non-object. (issue 1452)
7242 Added GetOwnPropertyNames method for Object in the API. Patch by Peter
7245 Do not redefine properties unneccesarily in seal and freeze. (issue
7248 IsExecutionTerminating has an Isolate parameter now.
7250 Distinguish keyed loads with a symbol key from fast elements loads,
7251 avoiding some useless deoptimizations. (issue 1471)
7254 2011-06-08: Version 3.4.3
7256 Clear the global thread table when an isolate is disposed
7259 Converted time zone name to UTF8 on Windows (issue 1290).
7261 Limited the number of arguments in a function call to 32766
7264 Compress sources of JS libraries in addition to the snapshot.
7266 Fixed a bug in Lithium environment iteration.
7268 Performance improvements on all platforms.
7271 2011-06-06: Version 3.4.2
7273 More work on ES-Harmony proxies. Still hidden behind a flag.
7275 Fixed some crash bugs and improved performance.
7277 Fixed building with gdb debugging support.
7279 Do not install SIGPROF handler until it is needed.
7281 Added DateTimeFormat to i18n API.
7283 Fixed compilation on OpenBSD.
7285 Take the ulimit into account when sizing the heap. OpenBSD users
7286 may still have to increase the default ulimit to run heavy pages in
7290 2011-06-01: Version 3.4.1
7292 Fixed JSON stringify issue with arrays.
7294 Changed calls to JS builtins to be passed undefined when called with
7297 Implemented the set trap for Harmony proxies. Proxies still need to
7298 be enabled with the --harmony-proxies flag.
7301 2011-05-30: Version 3.4.0
7303 Changed calls to undefined property setters to not throw (issue 1355).
7305 Made RegExp objects not callable.
7307 Fixed issues on special case large JSON strings in new json parser
7308 (issues http://crbug.com/83877 and http://crbug.com/84186).
7310 Performance improvements on all platforms.
7313 2011-05-25: Version 3.3.10
7315 Fixed calls of strict mode function with an implicit receiver.
7317 Fixed fast handling of arrays to properly deal with changes to the
7318 Object prototype (issue 1403).
7320 Changed strict mode poison pill to be the same type error function
7323 Fixed a debug crash in arguments object handling (issue 1227).
7325 Fixed a bug in deoptimization on x64 (issue 1404).
7327 Performance improvements and bug fixes on all platforms.
7330 2011-05-23: Version 3.3.9
7332 Added DateTimeFormat class to experimental i18n API.
7334 Extended preparser to give early errors for some strict mode
7337 Removed legacy execScript function from V8.
7339 Extended isolate API with the ability to add embedder-specific
7342 Added basic support for polymorphic loads from JS and external
7345 Fixed bug in handling of switch statements in the optimizing
7349 2011-05-18: Version 3.3.8
7351 Added MarkIndependent to the persistent handle API. Independent
7352 handles are independent of all other persistent handles and can be
7353 garbage collected more frequently.
7355 Implemented the get trap for Harmony proxies. Proxies are enabled
7356 with the --harmony-proxies flag.
7358 Performance improvements and bug fixes on all platforms.
7361 2011-05-16: Version 3.3.7
7363 Updated MIPS infrastructure files.
7365 Performance improvements and bug fixes on all platforms.
7368 2011-05-11: Version 3.3.6
7370 Updated MIPS infrastructure files.
7372 Added method IsCallable for Object to the API.
7373 Patch by Peter Varga.
7376 2011-05-09: Version 3.3.5
7378 Fixed build on FreeBSD. Patch by Akinori MUSHA.
7380 Added check that receiver is JSObject on API calls.
7382 Implemented CallAsConstructor method for Object in the API (Issue 1348).
7383 Patch by Peter Varga.
7385 Added CallAsFunction method to the Object class in the API (Issue 1336).
7386 Patch by Peter Varga.
7388 Added per-isolate locking and unlocking.
7390 Fixed bug in x64 >>> operator (Issue 1359).
7393 2011-05-04: Version 3.3.4
7395 Implemented API to disallow code generation from strings for a context
7398 Fixed bug with whitespaces in parseInt (issue 955).
7400 Fixed bug with == comparison of Date objects (issue 1356).
7402 Added GYP variables for ARM code generation:
7403 v8_can_use_vfp_instructions, v8_can_use_unaligned_accesses
7404 and v8_use_arm_eabi_hardfloat.
7407 2011-05-02: Version 3.3.3
7409 Added support for generating Visual Studio solution and project files
7412 Implemented support for ARM EABI calling convention variation where
7413 floating-point arguments are passed in registers (hardfloat).
7415 Added Object::HasOwnProperty() to the API.
7417 Added support for compressing startup data to reduce binary size. This
7418 includes build time support and an API for the embedder to decompress
7419 the startup data before initializing V8.
7421 Reduced the profiling hooks overhead from >400% to 25% when using
7424 Performance improvements and bug fixes on all platforms.
7427 2011-04-27: Version 3.3.2
7429 Fixed crash bug on ARM with no VFP3 hardware.
7431 Fixed compilation of V8 without debugger support.
7433 Improved performance on JSLint.
7435 Added support Float64 WebGL arrays.
7437 Fixed crash bug in regexp replace.
7440 2011-04-20: Version 3.3.1
7442 Reduced V8 binary size by removing virtual functions from hydrogen.
7444 Fixed crash bug on x64.
7446 Performance improvements on ARM and IA32.
7449 2011-04-18: Version 3.3.0
7451 Fixed bug in floating point rounding in Crankshaft on ARM
7454 Fixed a number of issues with running without VFPv3 support on ARM
7457 Introduced v8Locale.Collator, a partial implementation of Collator
7458 per last ECMAScript meeting + mailing list.
7460 Minor performance improvements and bug fixes.
7463 2011-04-13: Version 3.2.10
7465 Fixed bug in external float arrays on ARM (issue 1323).
7467 Minor performance improvements and bug fixes.
7470 2011-04-11: Version 3.2.9
7472 Removed support for ABI prior to EABI on ARM.
7474 Fixed multiple crash bugs.
7476 Added GCMole to the repository, a simple static analysis tool that
7477 searches for GC-unsafe evaluation order dependent callsites.
7479 Made preparser API be exported in shared libraries.
7481 Fixed multiple issues in EcmaScript 5 strict mode implementation.
7483 Fixed mutable __proto__ property if object is not extensible
7486 Fixed auto suspension of the sampler thread.
7489 2011-04-06: Version 3.2.8
7491 Exposed WebGL typed array constructors in the shell sample.
7493 Performance improvements on all platforms.
7496 2011-04-04: Version 3.2.7
7498 Disabled the original 'classic' V8 code generator. Crankshaft is
7499 now the default on all platforms.
7501 Changed the heap profiler to use more descriptive names.
7503 Performance and stability improvements to isolates on all platforms.
7506 2011-03-30: Version 3.2.6
7508 Fixed xcode build warning in shell.cc (out of order initialization).
7510 Fixed null-pointer dereference in the compiler when running without
7511 SSE3 support (Chromium issue 77654).
7513 Fixed x64 compilation error due to some dead code. (Issue 1286)
7515 Introduced scons target to build the preparser stand-alone example.
7517 Made FreeBSD build and pass all tests.
7520 2011-03-28: Version 3.2.5
7522 Fixed build with Irregexp interpreter (issue 1266).
7524 Added Crankshaft support for external arrays.
7526 Fixed two potential crash bugs.
7529 2011-03-23: Version 3.2.4
7531 Added isolates which allows several V8 instances in the same process.
7532 This is controlled through the new Isolate class in the API.
7534 Implemented more of EcmaScript 5 strict mode.
7536 Reduced the time it takes to make detailed heap snapshot.
7538 Added a number of commands to the ARM simulator and enhanced the ARM
7542 2011-03-17: Version 3.2.3
7544 Fixed a number of crash bugs.
7546 Fixed Array::New(length) to return an array with a length (issue 1256).
7548 Fixed FreeBSD build.
7550 Changed __defineGetter__ to not throw (matching the behavior of Safari).
7552 Implemented more of EcmaScript 5 strict mode.
7554 Improved Crankshaft performance on all platforms.
7557 2011-03-14: Version 3.2.2
7559 Fixed a number of crash and correctness bugs.
7561 Improved Crankshaft performance on all platforms.
7563 Fixed Crankshaft on Solaris/Illumos.
7566 2011-03-10: Version 3.2.1
7568 Fixed a number of crash bugs.
7570 Improved Crankshaft for x64 and ARM.
7572 Implemented more of EcmaScript 5 strict mode.
7575 2011-03-07: Version 3.2.0
7577 Fixed a number of crash bugs.
7579 Turned on Crankshaft by default on x64 and ARM.
7581 Improved Crankshaft for x64 and ARM.
7583 Implemented more of EcmaScript 5 strict mode.
7586 2011-03-02: Version 3.1.8
7588 Fixed a number of crash bugs.
7590 Improved Crankshaft for x64 and ARM.
7592 Implemented more of EcmaScript 5 strict mode.
7594 Fixed issue with unaligned reads and writes on ARM.
7596 Improved heap profiler support.
7599 2011-02-28: Version 3.1.7
7601 Fixed a number of crash bugs.
7603 Improved Crankshaft for x64 and ARM.
7605 Fixed implementation of indexOf/lastIndexOf for sparse
7606 arrays (http://crbug.com/73940).
7608 Fixed bug in map space compaction (http://crbug.com/59688).
7610 Added support for direct getter accessors calls on ARM.
7613 2011-02-24: Version 3.1.6
7615 Fixed a number of crash bugs.
7617 Added support for Cygwin (issue 64).
7619 Improved Crankshaft for x64 and ARM.
7621 Added Crankshaft support for stores to pixel arrays.
7623 Fixed issue in CPU profiler with Crankshaft.
7626 2011-02-16: Version 3.1.5
7628 Change RegExp parsing to disallow /(*)/.
7630 Added GDB JIT support for ARM.
7632 Fixed several crash bugs.
7634 Performance improvements on the IA32 platform.
7637 2011-02-14: Version 3.1.4
7639 Fixed incorrect compare of prototypes of the global object (issue
7642 Fixed a bug in optimizing calls to global functions (issue 1106).
7644 Made optimized Function.prototype.apply safe for non-JSObject first
7645 arguments (issue 1128).
7647 Fixed an error related to element accessors on Object.prototype and
7648 parser errors (issue 1130).
7650 Fixed a bug in sorting an array with large array indices (issue 1131).
7652 Properly treat exceptions thrown while compiling (issue 1132).
7654 Fixed bug in register requirements for function.apply (issue 1133).
7656 Fixed a representation change bug in the Hydrogen graph construction
7659 Fixed the semantics of delete on parameters (issue 1136).
7661 Fixed a optimizer bug related to moving instructions with side effects
7664 Added support for the global object in Object.keys (issue 1150).
7666 Fixed incorrect value for Math.LOG10E
7667 (issue http://code.google.com/p/chromium/issues/detail?id=72555)
7669 Performance improvements on the IA32 platform.
7671 Implement assignment to undefined reference in ES5 Strict Mode.
7674 2011-02-09: Version 3.1.3
7676 Fixed a bug triggered by functions with huge numbers of declared
7679 Fixed zap value aliasing a real object - debug mode only (issue 866).
7681 Fixed issue where Array.prototype.__proto__ had been set to null
7684 Fixed stability bugs in Crankshaft for x86.
7687 2011-02-07: Version 3.1.2
7689 Added better security checks when accessing properties via
7690 Object.getOwnPropertyDescriptor.
7692 Fixed bug in Object.defineProperty and related access bugs (issues
7693 992, 1083 and 1092).
7695 Added LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to ease
7696 copyright notice generation for embedders.
7699 2011-02-02: Version 3.1.1
7701 Perform security checks before fetching the value in
7702 Object.getOwnPropertyDescriptor.
7704 Fixed a bug in Array.prototype.splice triggered by passing no
7707 Fixed bugs in -0 in arithmetic and in Math.pow.
7709 Fixed bugs in the register allocator and in switching from optimized
7710 to unoptimized code.
7713 2011-01-31: Version 3.1.0
7715 Performance improvements on all platforms.
7718 2011-01-28: Version 3.0.12
7720 Added support for strict mode parameter and object property
7723 Fixed a couple of crash bugs.
7726 2011-01-25: Version 3.0.11
7728 Fixed a bug in deletion of lookup slots that could cause global
7729 variables to be accidentally deleted (http://crbug.com/70066).
7731 Added support for strict mode octal literal verification.
7733 Fixed a couple of crash bugs (issues 1070 and 1071).
7736 2011-01-24: Version 3.0.10
7738 Fixed External::Wrap for 64-bit addresses (issue 1037).
7740 Fixed incorrect .arguments variable proxy handling in the full
7741 code generator (issue 1060).
7743 Introduced partial strict mode support.
7745 Changed formatting of recursive error messages to match Firefox and
7746 Safari (issue http://crbug.com/70334).
7748 Fixed incorrect rounding for float-to-integer conversions for external
7749 array types, which implement the Typed Array spec
7750 (issue http://crbug.com/50972).
7752 Performance improvements on the IA32 platform.
7755 2011-01-19: Version 3.0.9
7757 Added basic GDB JIT Interface integration.
7759 Make invalid break/continue statements a syntax error instead of a
7763 2011-01-17: Version 3.0.8
7765 Exposed heap size limit to the heap statistics gathered by
7766 the GetHeapStatistics API.
7768 Wrapped external pointers more carefully (issue 1037).
7770 Hardened the implementation of error objects to avoid setters
7771 intercepting the properties set then throwing an error.
7773 Avoided trashing the FPSCR when calculating Math.floor on ARM.
7775 Performance improvements on the IA32 platform.
7778 2011-01-10: Version 3.0.7
7780 Stopped calling inherited setters when creating object literals
7783 Changed interpretation of malformed \c? escapes in RegExp to match
7786 Enhanced the command-line debugger interface and fixed some minor
7787 bugs in the debugger.
7789 Performance improvements on the IA32 platform.
7792 2011-01-05: Version 3.0.6
7794 Allowed getters and setters on JSArray elements (issue 900).
7796 Stopped JSON objects from hitting inherited setters (part of
7799 Allowed numbers and strings as names of getters/setters in object
7800 initializer (issue 820).
7802 Added use_system_v8 option to gyp (off by default), to make it easier
7803 for Linux distributions to ship with system-provided V8 library.
7805 Exported external array data accessors (issue 1016).
7807 Added labelled thread names to help with debugging (on Linux).
7810 2011-01-03: Version 3.0.5
7812 Fixed a couple of cast errors for gcc-3.4.3.
7814 Performance improvements in GC and IA32 code generator.
7817 2010-12-21: Version 3.0.4
7819 Added Date::ResetCache() to the API so that the cached values in the
7820 Date object can be reset to allow live DST / timezone changes.
7822 Extended existing support for printing (while debugging) the contents
7823 of objects. Added support for printing objects from release builds.
7825 Fixed V8 issues 989, 1006, and 1007.
7828 2010-12-17: Version 3.0.3
7830 Reapplied all changes for version 3.0.1.
7832 Improved debugger protocol for remote debugging.
7834 Added experimental support for using gyp to generate build files
7837 Fixed implementation of String::Write in the API (issue 975).
7840 2010-12-15: Version 3.0.2
7842 Revert version 3.0.1 and patch 3.0.1.1.
7845 2010-12-13: Version 3.0.1
7847 Added support for an experimental internationalization API as an
7848 extension. This extension is disabled by default but can be enabled
7849 when building V8. The ECMAScript internationalization strawman is
7850 at http://wiki.ecmascript.org/doku.php?id=strawman:i18n_api.
7852 Made RegExp character class parsing stricter. This mirrors a change
7853 to RegExp parsing in WebKit.
7855 Fixed a bug in Object.defineProperty when used to change attributes
7856 of an existing property. It incorrectly set the property value to
7857 undefined (issue 965).
7859 Fixed several different compilation failures on various platforms
7860 caused by the 3.0.0 release.
7862 Optimized Math.pow so it can work on unboxed doubles.
7864 Sped up quoting of JSON strings by removing one traversal of the
7868 2010-12-07: Version 3.0.0
7870 Improved performance by (partially) addressing issue 957 on
7871 IA-32. Still needs more work for the other architectures.
7874 2010-11-29: Version 2.5.9
7876 Fixed crashes during GC caused by partially initialize heap
7879 Fixed bug in process sample that caused memory leaks.
7881 Improved performance on ARM by implementing missing stubs and
7884 Improved heap profiler support.
7886 Added separate seeding on Windows of the random number generator
7887 used internally by the compiler (issue 936).
7889 Exposed API for getting the name of the function used to construct
7892 Fixed date parser to handle one and two digit millisecond
7895 Fixed number parsing to disallow space between sign and
7899 2010-11-23: Version 2.5.8
7901 Removed dependency on Gay's dtoa.
7903 Improved heap profiler precision and speed.
7905 Reduced overhead of callback invocations on ARM.
7908 2010-11-18: Version 2.5.7
7910 Fixed obscure evaluation order bug (issue 931).
7912 Split the random number state between JavaScript and the private API.
7914 Fixed performance bug causing GCs when generating stack traces on
7915 code from very large scripts.
7917 Fixed bug in parser that allowed (foo):42 as a labelled statement
7920 Provide more accurate results about used heap size via
7923 Allow build-time customization of the max semispace size.
7925 Made String.prototype.split honor limit when separator is empty
7928 Added missing failure check after expecting an identifier in
7929 preparser (Chromium issue 62639).
7932 2010-11-10: Version 2.5.6
7934 Added support for VFP rounding modes to the ARM simulator.
7936 Fixed multiplication overflow bug (issue 927).
7938 Added a limit for the amount of executable memory (issue 925).
7941 2010-11-08: Version 2.5.5
7943 Added more aggressive GC of external objects in near out-of-memory
7946 Fixed a bug that gave the incorrect result for String.split called
7947 on the empty string (issue 924).
7950 2010-11-03: Version 2.5.4
7952 Improved V8 VFPv3 runtime detection to address issue 914.
7955 2010-11-01: Version 2.5.3
7957 Fixed a bug that prevents constants from overwriting function values
7958 in object literals (issue 907).
7960 Fixed a bug with reporting of impossible nested calls of DOM functions
7961 (issue http://crbug.com/60753).
7964 2010-10-27: Version 2.5.2
7966 Improved sampler resolution on Linux.
7968 Allowed forcing the use of a simulator from the build script
7969 independently of the host architecture.
7971 Fixed FreeBSD port (issue 912).
7973 Made windows-tick-processor respect D8_PATH.
7975 Implemented --noinline-new flag fully on IA32, X64 and ARM platforms.
7978 2010-10-20: Version 2.5.1
7980 Fixed bug causing spurious out of memory exceptions
7981 (issue http://crbug.com/54580).
7983 Fixed compilation error on Solaris platform (issue 901).
7985 Fixed error in strtod (string to floating point number conversion)
7986 due to glibc's use of 80-bit floats in the FPU on 32-bit linux.
7988 Adjusted randomized allocations of executable memory to have 64k
7989 granularity (issue http://crbug.com/56036).
7991 Supported profiling using kernel perf_events on linux. Added ll_prof
7992 script to tools and --ll-prof flag to V8.
7995 2010-10-18: Version 2.5.0
7997 Fixed bug in cache handling of lastIndex on global regexps
7998 (issue http://crbug.com/58740).
8000 Added USE_SIMULATOR macro that explicitly indicates that we wish to use
8001 the simulator as the execution engine (by Mark Lam <mark.lam@palm.com>
8002 from Hewlett-Packard Development Company, LP).
8004 Fixed compilation error on ARM with gcc 4.4 (issue 894).
8007 2010-10-13: Version 2.4.9
8009 Fixed a bug in the handling of conditional expressions in test
8010 contexts in compiler for top-level code.
8012 Added "//@ sourceURL" information to the StackTrace API.
8014 Exposed RegExp construction through the API.
8017 2010-10-04: Version 2.4.8
8019 Fixed a bug in ResumeProfilerEx causing it to not always write out the
8020 whole snapshot (issue 868).
8022 Performance improvements on all platforms.
8025 2010-09-30: Version 2.4.7
8027 Changed the command-line flag --max-new-space-size to be in kB and the
8028 flag --max-old-space-size to be in MB (previously they were in bytes).
8030 Added Debug::CancelDebugBreak to the debugger API.
8032 Fixed a bug in getters for negative numeric property names
8033 (https://bugs.webkit.org/show_bug.cgi?id=46689).
8035 Performance improvements on all platforms.
8038 2010-09-27: Version 2.4.6
8040 Fixed assertion failure related to copy-on-write arrays (issue 876).
8042 Fixed build failure of 64-bit V8 on Windows.
8044 Fixed a bug in RegExp (issue http://crbug.com/52801).
8046 Improved the profiler's coverage to cover more functions (issue 858).
8048 Fixed error in shift operators on 64-bit V8
8049 (issue http://crbug.com/54521).
8052 2010-09-22: Version 2.4.5
8054 Changed the RegExp benchmark to exercise the regexp engine on different
8055 inputs by scrambling the input strings.
8057 Fixed a bug in keyed loads on strings.
8059 Fixed a bug with loading global function prototypes.
8061 Fixed a bug with profiling RegExp calls (issue http://crbug.com/55999).
8063 Performance improvements on all platforms.
8066 2010-09-15: Version 2.4.4
8068 Fixed bug with hangs on very large sparse arrays.
8070 Now tries harder to free up memory when running out of space.
8072 Added heap snapshots to JSON format to API.
8074 Recalibrated benchmarks.
8077 2010-09-13: Version 2.4.3
8079 Made Date.parse properly handle TZ offsets (issue 857).
8081 Performance improvements on all platforms.
8084 2010-09-08: Version 2.4.2
8088 Fixed stack corruption bug.
8090 Fixed compilation for newer C++ compilers that found Operand(0)
8094 2010-09-06: Version 2.4.1
8096 Added the ability for an embedding application to receive a callback
8097 when V8 allocates (V8::AddMemoryAllocationCallback) or deallocates
8098 (V8::RemoveMemoryAllocationCallback) from the OS.
8100 Fixed several JSON bugs (including issue 855).
8102 Fixed memory overrun crash bug triggered during V8's tick-based
8105 Performance improvements on all platforms.
8108 2010-09-01: Version 2.4.0
8110 Fixed bug in Object.freeze and Object.seal when Array.prototype or
8111 Object.prototype are changed (issue 842).
8113 Updated Array.splice to follow Safari and Firefox when called
8114 with zero arguments.
8116 Fixed a missing live register when breaking at keyed loads on ARM.
8118 Performance improvements on all platforms.
8121 2010-08-25: Version 2.3.11
8123 Fixed bug in RegExp related to copy-on-write arrays.
8125 Refactored tools/test.py script, including the introduction of
8126 VARIANT_FLAGS that allows specification of sets of flags with which
8127 all tests should be run.
8129 Fixed a bug in the handling of debug breaks in CallIC.
8131 Performance improvements on all platforms.
8134 2010-08-23: Version 2.3.10
8136 Fixed bug in bitops on ARM.
8138 Build fixes for unusual compilers.
8140 Track high water mark for RWX memory.
8142 Performance improvements on all platforms.
8145 2010-08-18: Version 2.3.9
8147 Fixed compilation for ARMv4 on OpenBSD/FreeBSD.
8149 Removed specialized handling of GCC 4.4 (issue 830).
8151 Fixed DST cache to take into account the suspension of DST in
8152 Egypt during the 2010 Ramadan (issue http://crbug.com/51855).
8154 Performance improvements on all platforms.
8157 2010-08-16: Version 2.3.8
8159 Fixed build with strict aliasing on GCC 4.4 (issue 463).
8161 Fixed issue with incorrect handling of custom valueOf methods on
8162 string wrappers (issue 760).
8164 Fixed compilation for ARMv4 (issue 590).
8166 Improved performance.
8169 2010-08-11: Version 2.3.7
8171 Reduced size of heap snapshots produced by heap profiler (issue 783).
8173 Introduced v8::Value::IsRegExp method.
8175 Fixed CPU profiler crash in start / stop sequence when non-existent
8176 name is passed (issue http://crbug.com/51594).
8178 Introduced new indexed property query callbacks API (issue 816). This
8179 API is guarded by USE_NEW_QUERY_CALLBACK define and is disabled
8182 Removed support for object literal get/set with number/string
8185 Fixed handling of JSObject::elements in CalculateNetworkSize
8188 Allowed compiling with strict aliasing enabled on GCC 4.4 (issue 463).
8191 2010-08-09: Version 2.3.6
8193 RegExp literals create a new object every time they are evaluated
8196 Object.seal and Object.freeze return the modified object (issue 809).
8198 Fixed building using GCC 4.4.4.
8201 2010-08-04: Version 2.3.5
8203 Added support for ES5 property names. Object initialisers and
8204 dot-notation property access now allows keywords. Also allowed
8205 non-identifiers after "get" or "set" in an object initialiser.
8207 Randomized the addresses of allocated executable memory on Windows.
8210 2010-08-02: Version 2.3.4
8212 Fixed problems in implementation of ES5 function.prototype.bind.
8214 Fixed error when using apply with arguments object on ARM (issue 784).
8216 Added setting of global flags to debugger protocol.
8218 Fixed an error affecting cached results of sin and cos (issue 792).
8220 Removed memory leak from a boundary case where V8 is not initialized.
8222 Fixed issue where debugger could set breakpoints outside the body
8225 Fixed issue in debugger when using both live edit and step in features.
8227 Added Number-letter (Nl) category to Unicode tables. These characters
8228 can now be used in identifiers.
8230 Fixed an assert failure on X64 (issue 806).
8232 Performance improvements on all platforms.
8235 2010-07-26: Version 2.3.3
8237 Fixed error when building the d8 shell in a fresh checkout.
8239 Implemented Function.prototype.bind (ES5 15.3.4.5).
8241 Fixed an error in inlined stores on ia32.
8243 Fixed an error when setting a breakpoint at the end of a function
8244 that does not end with a newline character.
8246 Performance improvements on all platforms.
8249 2010-07-21: Version 2.3.2
8251 Fixed compiler warnings when building with LLVM.
8253 Fixed a bug with for-in applied to strings (issue 785).
8255 Performance improvements on all platforms.
8258 2010-07-19: Version 2.3.1
8260 Fixed compilation and linking with V8_INTERPRETED_REGEXP flag.
8262 Fixed bug related to code flushing while compiling a lazy
8263 compilable function (issue http://crbug.com/49099).
8265 Performance improvements on all platforms.
8268 2010-07-15: Version 2.3.0
8270 Added ES5 Object.seal and Object.isSealed.
8272 Added debugger API for scheduling debugger commands from a
8276 2010-07-14: Version 2.2.24
8278 Added API for capturing stack traces for uncaught exceptions.
8280 Fixed crash bug when preparsing from a non-external V8 string
8283 Fixed JSON.parse bug causing input not to be converted to string
8286 Added ES5 Object.freeze and Object.isFrozen.
8288 Performance improvements on all platforms.
8291 2010-07-07: Version 2.2.23
8293 API change: Convert Unicode code points outside the basic multilingual
8294 plane to the replacement character. Previous behavior was to silently
8295 truncate the value to 16 bits.
8297 Fixed crash: handle all flat string types in regexp replace.
8299 Prevent invalid pre-parsing data passed in through the API from
8302 Performance improvements on all platforms.
8305 2010-07-05: Version 2.2.22
8307 Added ES5 Object.isExtensible and Object.preventExtensions.
8309 Enabled building V8 as a DLL.
8311 Fixed a bug in date code where -0 was not interpreted as 0
8314 Performance improvements on all platforms.
8317 2010-06-30: Version 2.2.21
8319 Fixed bug in externalizing some ASCII strings (Chromium issue 47824).
8321 Updated JSON.stringify to floor the space parameter (issue 753).
8323 Updated the Mozilla test expectations to the newest version.
8325 Updated the ES5 Conformance Test expectations to the latest version.
8327 Updated the V8 benchmark suite.
8329 Provide actual breakpoints locations in response to setBreakpoint
8330 and listBreakpoints requests.
8333 2010-06-28: Version 2.2.20
8335 Fixed bug with for-in on x64 platform (issue 748).
8337 Fixed crash bug on x64 platform (issue 756).
8339 Fixed bug in Object.getOwnPropertyNames. (chromium issue 41243).
8341 Fixed a bug on ARM that caused the result of 1 << x to be
8342 miscalculated for some inputs.
8344 Performance improvements on all platforms.
8347 2010-06-23: Version 2.2.19
8349 Fixed bug that causes the build to break when profillingsupport=off
8352 Added expose-externalize-string flag for testing extensions.
8354 Resolve linker issues with using V8 as a DLL causing a number of
8355 problems with unresolved symbols.
8357 Fixed build failure for cctests when ENABLE_DEBUGGER_SUPPORT is not
8360 Performance improvements on all platforms.
8363 2010-06-16: Version 2.2.18
8365 Added API functions to retrieve information on indexed properties
8366 managed by the embedding layer. Fixes bug 737.
8368 Made ES5 Object.defineProperty support array elements. Fixes bug 619.
8370 Added heap profiling to the API.
8372 Removed old named property query from the API.
8374 Incremental performance improvements.
8377 2010-06-14: Version 2.2.17
8379 Improved debugger support for stepping out of functions.
8381 Incremental performance improvements.
8384 2010-06-09: Version 2.2.16
8386 Removed the SetExternalStringDiposeCallback API. Changed the
8387 disposal of external string resources to call a virtual Dispose
8388 method on the resource.
8390 Added support for more precise break points when debugging and
8393 Memory usage improvements on all platforms.
8396 2010-06-07: Version 2.2.15
8398 Added an API to control the disposal of external string resources.
8400 Added missing initialization of a couple of variables which makes
8401 some compilers complaint when compiling with -Werror.
8403 Improved performance on all platforms.
8406 2010-06-02: Version 2.2.14
8408 Fixed a crash in code generated for String.charCodeAt.
8410 Fixed a compilation issue with some GCC versions (issue 727).
8412 Performance optimizations on x64 and ARM platforms.
8415 2010-05-31: Version 2.2.13
8417 Implemented Object.getOwnPropertyDescriptor for element indices and
8418 strings (issue 599).
8420 Fixed bug for windows 64 bit C calls from generated code.
8422 Added new scons flag unalignedaccesses for arm builds.
8424 Performance improvements on all platforms.
8427 2010-05-26: Version 2.2.12
8429 Allowed accessors to be defined on objects rather than just object
8432 Changed the ScriptData API.
8435 2010-05-21: Version 2.2.11
8437 Fixed crash bug in liveedit on 64 bit.
8439 Use 'full compiler' when debugging is active. This should increase
8440 the density of possible break points, making single step more fine
8441 grained. This will only take effect for functions compiled after
8442 debugging has been started, so recompilation of all functions is
8443 required to get the full effect. IA32 and x64 only for now.
8445 Misc. fixes to the Solaris build.
8447 Added new flags --print-cumulative-gc-stat and --trace-gc-nvp.
8449 Added filtering of CPU profiles by security context.
8451 Fixed crash bug on ARM when running without VFP2 or VFP3.
8453 Incremental performance improvements in all backends.
8456 2010-05-17: Version 2.2.10
8458 Performance improvements in the x64 and ARM backends.
8461 2010-05-10: Version 2.2.9
8463 Allowed Object.create to be called with a function (issue 697).
8465 Fixed bug with Date.parse returning a non-NaN value when called on a
8466 non date string (issue 696).
8468 Allowed unaligned memory accesses on ARM targets that support it (by
8469 Subrato K De of CodeAurora <subratokde@codeaurora.org>).
8471 C++ API for retrieving JavaScript stack trace information.
8474 2010-05-05: Version 2.2.8
8476 Performance improvements in the x64 and ARM backends.
8479 2010-05-03: Version 2.2.7
8481 Added support for ES5 date time string format to Date.parse.
8483 Performance improvements in the x64 backend.
8486 2010-04-28: Version 2.2.6
8488 Added "amd64" as recognized architecture in scons build script
8489 (by Ryan Dahl <coldredlemur@gmail.com>).
8491 Fixed bug in String search and replace with very simple RegExps.
8493 Fixed bug in RegExp containing "\b^".
8495 Performance improvements on all platforms.
8498 2010-04-26: Version 2.2.5
8500 Various performance improvements (especially for ARM and x64)
8502 Fixed bug in CPU profiling (http://crbug.com/42137)
8504 Fixed a bug with the natives cache.
8506 Fixed two bugs in the ARM code generator that can cause
8509 Fixed a bug that may cause a wrong result for shift operations.
8512 2010-04-21: Version 2.2.4
8514 Fixed warnings on arm on newer GCC versions.
8516 Fixed a number of minor bugs.
8518 Performance improvements on all platforms.
8521 2010-04-14: Version 2.2.3
8523 Added stack command and mem command to ARM simulator debugger.
8525 Fixed scons snapshot and ARM build, and Windows X64 build issues.
8527 Performance improvements on all platforms.
8530 2010-04-12: Version 2.2.2
8532 Introduced new profiler API.
8534 Fixed random number generator to produce full 32 random bits.
8537 2010-04-06: Version 2.2.1
8539 Debugger improvements.
8544 2010-03-29: Version 2.2.0
8546 Fixed a few minor bugs.
8548 Performance improvements for string operations.
8551 2010-03-26: Version 2.1.10
8553 Fixed scons build issues.
8555 Fixed a couple of minor bugs.
8558 2010-03-25: Version 2.1.9
8560 Added API support for reattaching a global object to a context.
8562 Extended debugger API with access to the internal debugger context.
8564 Fixed Chromium crashes (issues http://crbug.com/39128 and
8565 http://crbug.com/39160)
8568 2010-03-24: Version 2.1.8
8570 Added fine-grained garbage collection callbacks to the API.
8572 Performance improvements on all platforms.
8575 2010-03-22: Version 2.1.7
8579 Fixed a bug where __proto__ was sometimes enumerated (issue 646).
8581 Performance improvements for arithmetic operations.
8583 Performance improvements for string operations.
8585 Print script name and line number information in stack trace.
8588 2010-03-17: Version 2.1.6
8590 Performance improvements for arithmetic operations.
8592 Performance improvements for string operations.
8595 2010-03-10: Version 2.1.4
8597 Fixed code cache lookup for keyed IC's (issue http://crbug.com/37853).
8599 Performance improvements on all platforms.
8602 2010-03-10: Version 2.1.3
8604 Added API method for context-disposal notifications.
8606 Added API method for accessing elements by integer index.
8608 Added missing implementation of Uint32::Value and Value::IsUint32
8611 Added IsExecutionTerminating API method.
8613 Disabled strict aliasing for GCC 4.4.
8615 Fixed string-concatenation bug (issue 636).
8617 Performance improvements on all platforms.
8620 2010-02-23: Version 2.1.2
8622 Fixed a crash bug caused by wrong assert.
8624 Fixed a bug with register names on 64-bit V8 (issue 615).
8626 Performance improvements on all platforms.
8629 2010-02-19: Version 2.1.1
8631 [ES5] Implemented Object.defineProperty.
8633 Improved profiler support.
8635 Added SetPrototype method in the public V8 API.
8637 Added GetScriptOrigin and GetScriptLineNumber methods to Function
8640 Performance improvements on all platforms.
8643 2010-02-03: Version 2.1.0
8645 Values are now always wrapped in objects when used as a receiver.
8648 [ES5] Implemented Object.getOwnPropertyNames.
8650 [ES5] Restrict JSON.parse to only accept strings that conforms to the
8653 Improvement of debugger agent (issue 549 and 554).
8655 Fixed problem with skipped stack frame in profiles (issue 553).
8657 Solaris support by Erich Ocean <erich.ocean@me.com> and Ryan Dahl
8658 <ry@tinyclouds.org>.
8660 Fixed a bug that Math.round() returns incorrect results for huge
8663 Fixed enumeration order for objects created from some constructor
8664 functions (isue http://crbug.com/3867).
8666 Fixed arithmetic on some integer constants (issue 580).
8668 Numerous performance improvements including porting of previous IA-32
8669 optimizations to x64 and ARM architectures.
8672 2010-01-14: Version 2.0.6
8674 Added ES5 Object.getPrototypeOf, GetOwnPropertyDescriptor,
8675 GetOwnProperty, FromPropertyDescriptor.
8677 Fixed Mac x64 build errors.
8679 Improved performance of some math and string operations.
8681 Improved performance of some regexp operations.
8683 Improved performance of context creation.
8685 Improved performance of hash tables.
8688 2009-12-18: Version 2.0.5
8690 Extended to upper limit of map space to allow for 7 times as many map
8691 to be allocated (issue 524).
8693 Improved performance of code using closures.
8695 Improved performance of some binary operations involving doubles.
8698 2009-12-16: Version 2.0.4
8700 Added ECMAScript 5 Object.create.
8702 Improved performance of Math.max and Math.min.
8704 Optimized adding of strings on 64-bit platforms.
8706 Improved handling of external strings by using a separate table
8707 instead of weak handles. This improves garbage collection
8708 performance and uses less memory.
8710 Changed code generation for object and array literals in toplevel
8711 code to be more compact by doing more work in the runtime.
8713 Fixed a crash bug triggered when garbage collection happened during
8714 generation of a callback load inline cache stub.
8716 Fixed crash bug sometimes triggered when local variables shadowed
8717 parameters in functions that used the arguments object.
8720 2009-12-03: Version 2.0.3
8722 Optimized handling and adding of strings, for-in and Array.join.
8724 Heap serialization is now non-destructive.
8726 Improved profiler support with information on time spend in C++
8727 callbacks registered through the API.
8729 Added commands to the debugger protocol for starting/stopping
8732 Enabled the non-optimizing compiler for top-level code.
8734 Changed the API to only allow strings to be set as data objects on
8735 Contexts and scripts to avoid potentially keeping global objects
8736 around for too long (issue 528).
8738 OpenBSD support patch by Peter Valchev <pvalchev@gmail.com>.
8743 2009-11-24: Version 2.0.2
8745 Improved profiler support.
8747 Fixed bug that broke compilation of d8 with readline support.
8750 2009-11-20: Version 2.0.1
8752 Fixed crash bug in String.prototype.replace.
8754 Reverted a change which caused Chromium interactive ui test
8758 2009-11-18: Version 2.0.0
8760 Added support for VFP on ARM.
8762 Added TryCatch::ReThrow method to the API.
8764 Reduced the size of snapshots and improved the snapshot load time.
8766 Improved heap profiler support.
8768 64-bit version now supported on Windows.
8770 Fixed a number of debugger issues.
8775 2009-10-29: Version 1.3.18
8777 Reverted a change which caused crashes in RegExp replace.
8779 Reverted a change which caused Chromium ui_tests failure.
8782 2009-10-28: Version 1.3.17
8784 Added API method to get simple heap statistics.
8786 Improved heap profiler support.
8788 Fixed the implementation of the resource constraint API so it
8789 works when using snapshots.
8791 Fixed a number of issues in the Windows 64-bit version.
8793 Optimized calls to API getters.
8795 Added valgrind notification on code modification to the 64-bit version.
8797 Fixed issue where we logged shared library addresses on Windows at
8798 startup and never used them.
8801 2009-10-16: Version 1.3.16
8803 X64: Convert smis to holding 32 bits of payload.
8805 Introduced v8::Integer::NewFromUnsigned method.
8807 Added missing null check in Context::GetCurrent.
8809 Added trim, trimLeft and trimRight methods to String
8810 Patch by Jan de Mooij <jandemooij@gmail.com>
8812 Implement ES5 Array.isArray
8813 Patch by Jan de Mooij <jandemooij@gmail.com>
8815 Skip access checks for hidden properties.
8817 Added String::Concat(Handle<String> left, Handle<String> right) to the
8820 Fixed GYP-based builds of V8.
8823 2009-10-07: Version 1.3.15
8825 Expanded the maximum size of the code space to 512MB for 64-bit mode.
8827 Fixed a crash bug happening when starting profiling (issue
8828 http://crbug.com/23768).
8831 2009-10-07: Version 1.3.14
8833 Added GetRealNamedProperty to the API to lookup real properties
8834 located on the object or in the prototype chain skipping any
8837 Fixed the stack limits setting API to work correctly with threads. The
8838 stack limit now needs to be set to each thread thich is used with V8.
8840 Removed the high-priority flag from IdleNotification()
8842 Ensure V8 is initialized before locking and unlocking threads.
8844 Implemented a new JavaScript minifier for compressing the source of
8845 the built-in JavaScript. This removes non-Open Source code from Douglas
8846 Crockford from the project.
8848 Added a missing optimization in StringCharAt.
8850 Fixed some flaky socket tests.
8852 Change by Alexander Botero-Lowry to fix profiler sampling on FreeBSD
8855 Fixed memory leaks in the thread management code.
8857 Fixed the result of assignment to a pixel array. The assigned value
8860 Error reporting for invalid left-hand sides in for-in statements, pre-
8861 and postfix count expressions, and assignments now matches the JSC
8862 behavior in Safari 4.
8864 Follow the spec in disallowing function declarations without a name.
8866 Always allocate code objects within a 2 GB range. On x64 architecture
8867 this is used to use near calls (32-bit displacement) in Code objects.
8869 Optimized array construction ported to x64 and ARM architectures.
8871 [ES5] Changed Object.keys to return strings for element indices.
8874 2009-09-23: Version 1.3.13
8876 Fixed uninitialized memory problem.
8878 Improved heap profiler support.
8881 2009-09-22: Version 1.3.12
8883 Changed behavior of |function|.toString() on built-in functions to
8884 be compatible with other implementations. Patch by Jan de Mooij.
8886 Added Object::IsDirty in the API.
8888 Optimized array construction; it is now handled purely in native
8891 [ES5] Made properties of the arguments array enumerable.
8893 [ES5] Added test suite adapter for the es5conform test suite.
8895 [ES5] Added Object.keys function.
8898 2009-09-15: Version 1.3.11
8900 Fixed crash in error reporting during bootstrapping.
8902 Optimized generated IA32 math code by using SSE2 instructions when
8905 Implemented missing pieces of debugger infrastructure on ARM. The
8906 debugger is now fully functional on ARM.
8908 Made 'hidden' the default visibility for gcc.
8911 2009-09-09: Version 1.3.10
8913 Fixed profiler on Mac in 64-bit mode.
8915 Optimized creation of objects from simple constructor functions on
8918 Fixed a number of debugger issues.
8920 Reduced the amount of memory consumed by V8.
8923 2009-09-02: Version 1.3.9
8925 Optimized stack guard checks on ARM.
8927 Optimized API operations by inlining more in the API.
8929 Optimized creation of objects from simple constructor functions.
8931 Enabled a number of missing optimizations in the 64-bit port.
8933 Implemented native-code support for regular expressions on ARM.
8935 Stopped using the 'sahf' instruction on 64-bit machines that do
8938 Fixed a bug in the support for forceful termination of JavaScript
8942 2009-08-26: Version 1.3.8
8944 Changed the handling of idle notifications to allow idle
8945 notifications when V8 has not yet been initialized.
8947 Fixed ARM simulator compilation problem on Windows.
8950 2009-08-25: Version 1.3.7
8952 Reduced the size of generated code on ARM platforms by reducing
8953 the size of constant pools.
8955 Changed build files to not include the 'ENV' user environment
8956 variable in the build environment.
8958 Changed the handling of idle notifications.
8961 2009-08-21: Version 1.3.6
8963 Added support for forceful termination of JavaScript execution.
8965 Added low memory notification to the API. The embedding host can signal
8966 a low memory situation to V8.
8968 Changed the handling of global handles (persistent handles in the API
8969 sense) to avoid issues regarding allocation of new global handles
8970 during weak handle callbacks.
8972 Changed the growth policy of the young space.
8974 Fixed a GC issue introduced in version 1.3.5.
8977 2009-08-19: Version 1.3.5
8979 Optimized initialization of some arrays in the builtins.
8981 Fixed mac-nm script to support filenames with spaces.
8983 Support for using the V8 profiler when V8 is embedded in a Windows DLL.
8985 Changed typeof RegExp from 'object' to 'function' for compatibility.
8986 Fixed bug where regexps were not callable across contexts.
8988 Added context independent script compilation to the API.
8990 Added API call to get the stack trace for an exception.
8992 Added API for getting object mirrors.
8994 Made sure that SSE3 instructions are used whenever possible even when
8995 running off a snapshot generated without using SSE3 instructions.
8997 Tweaked the handling of the initial size and growth policy of the heap.
8999 Added native code generation for RegExp to 64-bit version.
9001 Added JavaScript debugger support to 64-bit version.
9004 2009-08-13: Version 1.3.4
9006 Added a readline() command to the d8 shell.
9008 Fixed bug in json parsing.
9010 Added idle notification to the API and reduced memory on idle
9014 2009-08-12: Version 1.3.3
9016 Fixed issue 417: incorrect %t placeholder expansion.
9018 Added .gitignore file similar to Chromium's one.
9020 Fixed SConstruct file to build with new logging code for Android.
9022 API: added function to find instance of template in prototype
9023 chain. Inlined Object::IsInstanceOf.
9025 Land change to notify valgrind when we modify code on x86.
9027 Added api call to determine whether a string can be externalized.
9029 Added a write() command to d8.
9032 2009-08-05: Version 1.3.2
9034 Started new compiler infrastructure for two-pass compilation using a
9035 control flow graph constructed from the AST.
9037 Profiler stack sampling for X64.
9039 Safe handling of NaN to Posix platform-dependent time functions.
9041 Added a new profiler control API to unify controlling various aspects
9047 2009-07-30: Version 1.3.1
9049 Speed improvements to accessors and interceptors.
9051 Added support for capturing stack information on custom errors.
9053 Added support for morphing an object into a pixel array where its
9054 indexed properties are stored in an external byte array. Values written
9055 are always clamped to the 0..255 interval.
9057 Profiler on x64 now handles C/C++ functions from shared libraries.
9059 Changed the debugger to avoid stepping into function.call/apply if the
9060 function is a built-in.
9062 Initial implementation of constructor heap profile for JS objects.
9064 More fine grained control of profiling aspects through the API.
9066 Optimized the called as constructor check for API calls.
9069 2009-07-27: Version 1.3.0
9071 Allowed RegExp objects to be called as functions (issue 132).
9073 Fixed issue where global property cells would escape after
9074 detaching the global object; see http://crbug.com/16276.
9076 Added support for stepping into setters and getters in the
9079 Changed the debugger to avoid stopping in its own JavaScript code
9080 and in the code of built-in functions.
9082 Fixed issue 345 by avoiding duplicate escaping labels.
9084 Fixed ARM code generator crash in short-circuited boolean
9085 expressions and added regression tests.
9087 Added an external allocation limit to avoid issues where small V8
9088 objects would hold on to large amounts of external memory without
9089 causing garbage collections.
9091 Finished more of the inline caching stubs for x64 targets.
9094 2009-07-13: Version 1.2.14
9096 Added separate paged heap space for global property cells and
9097 avoid updating the write barrier when storing into them.
9099 Improved peep-hole optimization on ARM platforms by not emitting
9100 unnecessary debug information.
9102 Re-enabled ICs for loads and calls that skip a global object
9103 during lookup through the prototype chain.
9105 Allowed access through global proxies to use ICs.
9110 2009-07-09: Version 1.2.13
9112 Fixed issue 397, issue 398, and issue 399.
9114 Added support for breakpoint groups.
9116 Fixed bugs introduced with the new global object representation.
9118 Fixed a few bugs in the ARM code generator.
9121 2009-07-06: Version 1.2.12
9123 Added stack traces collection to Error objects accessible through
9124 the e.stack property.
9126 Changed RegExp parser to use a recursive data structure instead of
9127 stack-based recursion.
9129 Optimized Date object construction and string concatenation.
9131 Improved performance of div, mod, and mul on ARM platforms.
9134 2009-07-02: Version 1.2.11
9136 Improved performance on IA-32 and ARM.
9138 Fixed profiler sampler implementation on Mac OS X.
9140 Changed the representation of global objects to improve
9141 performance of adding a lot of new properties.
9144 2009-06-29: Version 1.2.10
9146 Improved debugger support.
9148 Fixed bug in exception message reporting (issue 390).
9150 Improved overall performance.
9153 2009-06-23: Version 1.2.9
9155 Improved math performance on ARM.
9157 Fixed profiler name-inference bug.
9159 Fixed handling of shared libraries in the profiler tick processor
9162 Fixed handling of tests that time out in the test scripts.
9164 Fixed compilation on MacOS X version 10.4.
9166 Fixed two bugs in the regular expression engine.
9168 Fixed a bug in the string type inference.
9170 Fixed a bug in the handling of 'constant function' properties.
9172 Improved overall performance.
9175 2009-06-16: Version 1.2.8
9177 Optimized math on ARM platforms.
9179 Fixed two crash bugs in the handling of getters and setters.
9181 Improved the debugger support by adding scope chain information.
9183 Improved the profiler support by compressing log data transmitted
9186 Improved overall performance.
9189 2009-06-08: Version 1.2.7
9191 Improved debugger and profiler support.
9193 Reduced compilation time by improving the handling of deferred
9196 Optimized interceptor accesses where the property is on the object
9197 on which the interceptors is attached.
9199 Fixed compilation problem on GCC 4.4 by changing the stack
9200 alignment to 16 bytes.
9202 Fixed handle creation to follow stric aliasing rules.
9204 Fixed compilation on FreeBSD.
9206 Introduced API for forcing the deletion of a property ignoring
9207 interceptors and attributes.
9210 2009-05-29: Version 1.2.6
9212 Added a histogram recording hit rates at different levels of the
9215 Added stack overflow check for the RegExp analysis phase. Previously a
9216 very long regexp graph could overflow the stack with recursive calls.
9218 Use a dynamic buffer when collecting log events in memory.
9220 Added start/stop events to the profiler log.
9222 Fixed infinite loop which could happen when setting a debug break while
9223 executing a RegExp compiled to native code.
9225 Fixed handling of lastIndexOf called with negative index (issue 351).
9227 Fixed irregular crash in profiler test (issue 358).
9229 Fixed compilation issues with some versions of gcc.
9232 2009-05-26: Version 1.2.5
9234 Fixed bug in initial boundary check for Boyer-Moore text
9237 Fixed compilation issues with MinGW and gcc 4.3+ and added support
9238 for armv7 and cortex-a8 architectures. Patches by Lei Zhang and
9241 Added a script cache to the debugger.
9243 Optimized compilation performance by improving internal data
9244 structures and avoiding expensive property load optimizations for
9245 code that's infrequently executed.
9247 Exposed the calling JavaScript context through the static API
9248 function Context::GetCalling().
9251 2009-05-18: Version 1.2.4
9253 Improved performance of floating point number allocation for ARM
9256 Fixed crash when using the instanceof operator on functions with
9257 number values in their prototype chain (issue 341).
9259 Optimized virtual frame operations in the code generator to speed
9260 up compilation time and allocated the frames in the zone.
9262 Made the representation of virtual frames and jump targets in the
9263 code generator much more compact.
9265 Avoided linear search for non-locals in scope code when resolving
9266 variables inside with and eval scopes.
9268 Optimized lexical scanner by dealing with whitespace as part of
9269 the token scanning instead of as a separate step before it.
9271 Changed the scavenging collector so that promoted objects do not
9272 reside in the old generation while their remembered set is being
9273 swept for pointers into the young generation.
9275 Fixed numeric overflow handling when compiling count operations.
9278 2009-05-11: Version 1.2.3
9280 Fixed bug in reporting of out-of-memory situations.
9282 Introduced hidden prototypes on certain builtin prototype objects
9283 such as String.prototype to emulate JSC's behavior of restoring
9284 the original function when deleting functions from those prototype
9287 Fixed crash bug in the register allocator.
9290 2009-05-04: Version 1.2.2
9292 Fixed bug in array sorting for sparse arrays (issue 326).
9294 Added support for adding a soname when building a shared library
9295 on Linux (issue 151).
9297 Fixed bug caused by morphing internal ASCII strings to external
9298 two-byte strings. Slices over ASCII strings have to forward ASCII
9299 checks to the underlying buffer string.
9301 Allowed API call-as-function handlers to be called as
9304 Fixed a crash bug where an external string was disposed but a
9305 slice of the external string survived as a symbol.
9308 2009-04-27: Version 1.2.1
9310 Added EcmaScript 5 JSON object.
9312 Fixed bug in preemption support on ARM.
9315 2009-04-23: Version 1.2.0
9317 Optimized floating-point operations on ARM.
9319 Added a number of extensions to the debugger API.
9321 Changed the enumeration order for unsigned integer keys to always
9324 Added a "read" extension to the shell sample.
9326 Added support for Array.prototype.reduce and
9327 Array.prototype.reduceRight.
9329 Added an option to the SCons build to control Microsoft Visual C++
9330 link-time code generation.
9332 Fixed a number of bugs (in particular issue 315, issue 316,
9333 issue 317 and issue 318).
9336 2009-04-15: Version 1.1.10
9338 Fixed crash bug that occurred when loading a const variable in the
9341 Allowed using with and eval in registered extensions in debug mode
9342 by fixing bogus assert.
9344 Fixed the source position for function returns to enable the
9345 debugger to break there.
9348 2009-04-14: Version 1.1.9
9350 Made the stack traversal code in the profiler robust by avoiding
9351 to look into the heap.
9353 Added name inferencing for anonymous functions to facilitate
9354 debugging and profiling.
9356 Re-enabled stats timers in the developer shell (d8).
9358 Fixed issue 303 by avoiding to shortcut cons-symbols.
9361 2009-04-11: Version 1.1.8
9363 Changed test-debug/ThreadedDebugging to be non-flaky (issue 96).
9365 Fixed step-in handling for Function.prototype.apply and call in
9366 the debugger (issue 269).
9368 Fixed v8::Object::DeleteHiddenValue to not bail out when there
9369 are no hidden properties.
9371 Added workaround for crash bug, where external symbol table
9372 entries with deleted resources would lead to NPEs when looking
9373 up in the symbol table.
9376 2009-04-07: Version 1.1.7
9378 Added support for easily importing additional environment
9379 variables into the SCons build.
9381 Optimized strict equality checks.
9383 Fixed crash in indexed setters on objects without a corresponding
9386 Re-enabled script compilation cache.
9389 2009-04-01: Version 1.1.6
9391 Reverted an unsafe code generator change.
9394 2009-04-01: Version 1.1.5
9396 Fixed bug that caused function literals to not be optimized as
9397 much as other functions.
9399 Improved profiler support.
9401 Fixed a crash bug in connection with debugger unloading.
9403 Fixed a crash bug in the code generator caused by losing the
9404 information that a frame element was copied.
9406 Fixed an exception propagation bug that could cause non-null
9407 return values when exceptions were thrown.
9410 2009-03-30: Version 1.1.4
9412 Optimized String.prototype.match.
9414 Improved the stack information in profiles.
9416 Fixed bug in ARM port making it possible to compile the runtime
9417 system for thumb mode again.
9419 Implemented a number of optimizations in the code generator.
9421 Fixed a number of memory leaks in tests.
9423 Fixed crash bug in connection with script source code and external
9427 2009-03-24: Version 1.1.3
9429 Fixed assertion failures in compilation of loop conditions.
9431 Removed STL dependency from developer shell (d8).
9433 Added infrastructure for protecting the V8 heap from corruption
9434 caused by memory modifications from the outside.
9437 2009-03-24: Version 1.1.2
9439 Improved frame merge code generated by the code generator.
9441 Optimized String.prototype.replace.
9443 Implemented __defineGetter__ and __defineSetter__ for properties
9444 with integer keys on non-array objects.
9446 Improved debugger and profiler support.
9448 Fixed a number of portability issues to allow compilation for
9449 smaller ARM devices.
9451 Exposed object cloning through the API.
9453 Implemented hidden properties. This is used to expose an identity
9454 hash for objects through the API.
9456 Implemented restarting of regular expressions if their input
9457 string changes representation during preemption.
9459 Fixed a code generator bug that could cause assignments in loops
9460 to be ignored if using continue to break out of the loop (issue
9464 2009-03-12: Version 1.1.1
9466 Fixed an assertion in the new compiler to take stack overflow
9467 exceptions into account.
9469 Removed exception propagation code that could cause crashes.
9471 Fixed minor bug in debugger line number computations.
9473 8-byte align the C stack on Linux and Windows to speed up floating
9477 2009-03-12: Version 1.1.0
9479 Improved code generation infrastructure by doing simple register
9480 allocation and constant folding and propagation.
9482 Optimized regular expression matching by avoiding to create
9483 intermediate string arrays and by flattening nested array
9484 representations of RegExp data.
9486 Traverse a few stack frames when recording profiler samples to
9487 include partial call graphs in the profiling output.
9489 Added support for using OProfile to profile generated code.
9491 Added remote debugging support to the D8 developer shell.
9493 Optimized creation of nested literals like JSON objects.
9495 Fixed a bug in garbage collecting unused maps and turned it on by
9496 default (--collect-maps).
9498 Added support for running tests under Valgrind.
9501 2009-02-27: Version 1.0.3
9503 Optimized double-to-integer conversions in bit operations by using
9504 SSE3 instructions if available.
9506 Optimized initialization sequences that store to multiple
9507 properties of the same object.
9509 Changed the D8 debugger frontend to use JSON messages.
9511 Force garbage collections when disposing contexts.
9513 Align code objects at 32-byte boundaries.
9516 2009-02-25: Version 1.0.2
9518 Improved profiling support by performing simple call stack
9519 sampling for ticks and by fixing a bug in the logging of code
9522 Fixed a number of debugger issues.
9524 Optimized code that uses eval.
9526 Fixed a couple of bugs in the regular expression engine.
9528 Reduced the size of generated code for certain regular expressions.
9530 Removed JSCRE completely.
9532 Fixed issue where test could not be run if there was a dot in the
9536 2009-02-13: Version 1.0.1
9538 Fixed two crash-bugs in irregexp (issue 231 and 233).
9540 Fixed a number of minor bugs (issue 87, 227 and 228).
9542 Added support for morphing strings to external strings on demand
9543 to avoid having to create copies in the embedding code.
9545 Removed experimental support for external symbol callbacks.
9548 2009-02-09: Version 1.0.0
9550 Fixed crash-bug in the code generation for case independent 16 bit
9553 Made shells more robust in the presence of string conversion
9554 failures (issue 224).
9556 Fixed a potential infinite loop when attempting to resolve
9559 Miscellaneous fixes to the new regular expression engine.
9561 Reduced binary by stripping unneeded text from JavaScript library and
9562 minifying some JavaScript files.
9565 2009-01-27: Version 0.4.9
9567 Enabled new regular expression engine.
9569 Made a number of changes to the debugger protocol.
9571 Fixed a number of bugs in the preemption support.
9573 Added -p option to the developer shell to run files in parallel
9576 Fixed a number of minor bugs (including issues 176, 187, 189, 192,
9579 Fixed a number of bugs in the serialization/deserialization
9580 support for the ARM platform.
9583 2009-01-19: Version 0.4.8.1
9585 Minor patch to debugger support.
9588 2009-01-16: Version 0.4.8
9590 Fixed string length bug on ARM (issue 171).
9592 Made most methods in the API const.
9594 Optimized object literals by improving data locality.
9596 Fixed bug that caused incomplete functions to be cached in case of
9597 stack overflow exceptions.
9599 Fixed bugs that caused catch variables and variables introduced by
9600 eval to behave incorrectly when using accessors (issues 186, 190
9604 2009-01-06: Version 0.4.7
9606 Minor bugfixes and optimizations.
9608 Added command line debugger to D8 shell.
9610 Fixed subtle bug that caused the wrong 'this' to be used when
9611 calling a caught function in a catch clause.
9613 Inline array loads within loops directly in the code instead of
9614 always calling a stub.
9617 2008-12-11: Version 0.4.6
9619 Fixed exception reporting bug where certain exceptions were
9620 incorrectly reported as uncaught.
9622 Improved the memory allocation strategy used during compilation to
9623 make running out of memory when compiling huge scripts less
9626 Optimized String.replace by avoiding the construction of certain
9629 Fixed bug in code generation for large switch statements on ARM.
9631 Fixed bug that caused V8 to change the global object template
9632 passed in by the user.
9634 Changed the API for creating object groups used during garbage
9635 collection. Entire object groups are now passed to V8 instead of
9636 individual members of the groups.
9639 2008-12-03: Version 0.4.5
9641 Added experimental API support for allocating V8 symbols as
9644 Fixed bugs in debugging support on ARM.
9646 Changed eval implementation to correctly detect whether or not a
9647 call to eval is aliased.
9649 Fixed bug caused by a combination of the compilation cache and
9650 dictionary probing in native code. The bug caused us to sometimes
9651 call functions that had not yet been compiled.
9653 Added platform support for FreeBSD.
9655 Added support for building V8 on Windows with either the shared or
9656 static version of MSVCRT
9658 Added the v8::jscre namespace around the jscre functions to avoid
9659 link errors (duplicate symbols) when building Google Chrome.
9661 Added support for calling a JavaScript function with the current
9662 debugger execution context as its argument to the debugger
9665 Changed the type of names of counters from wchar_t to char.
9667 Changed the Windows system call used to compute daylight savings
9668 time. The system call that we used to use became four times
9669 slower on WinXP SP3.
9671 Added support in the d8 developer shell for memory-mapped counters
9672 and added a stats-viewer tool.
9674 Fixed bug in upper/lower case mappings (issue 149).
9677 2008-11-17: Version 0.4.4
9679 Reduced code size by using shorter instruction encoding when
9682 Added a --help option to the shell sample and to the d8 shell.
9684 Added visual studio project files for building the ARM simulator.
9686 Fixed a number of ARM simulator issues.
9688 Fixed bug in out-of-memory handling on ARM.
9690 Implemented shell support for passing arguments to a script from
9693 Fixed bug in date code that made certain date functions return -0
9694 instead of 0 for dates before the epoch.
9696 Restricted applications of eval so it can only be used in the
9697 context of the associated global object.
9699 Treat byte-order marks as whitespace characters.
9702 2008-11-04: Version 0.4.3
9704 Added support for API accessors that prohibit overwriting by
9705 accessors defined in JavaScript code by using __defineGetter__ and
9708 Improved handling of conditionals in test status files.
9710 Introduced access control in propertyIsEnumerable.
9712 Improved performance of some string operations by caching
9713 information about the type of the string between operations.
9715 Fixed bug in fast-case code for switch statements that only have
9719 2008-10-30: Version 0.4.2
9721 Improved performance of Array.prototype.concat by moving the
9722 implementation to C++ (issue 123).
9724 Fixed heap growth policy to avoid growing old space to its maximum
9725 capacity before doing a garbage collection and fixed issue that
9726 would lead to artificial out of memory situations (issue 129).
9728 Fixed Date.prototype.toLocaleDateString to return the date in the
9729 same format as WebKit.
9731 Added missing initialization checks to debugger API.
9733 Added removing of unused maps during GC.
9736 2008-10-28: Version 0.4.1
9738 Added caching of RegExp data in compilation cache.
9740 Added Visual Studio project file for d8 shell.
9742 Fixed function call performance regression introduced in version
9743 0.4.0 when splitting the global object in two parts (issue 120).
9745 Fixed issue 131 by checking for empty handles before throwing and
9746 reporting exceptions.
9749 2008-10-23: Version 0.4.0
9751 Split the global object into two parts: The state holding global
9752 object and the global object proxy.
9754 Fixed bug that affected the value of an assignment to an element
9755 in certain cases (issue 116).
9757 Added GetPropertyNames functionality (issue 33) and extra Date
9758 functions (issue 77) to the API.
9760 Changed WeakReferenceCallback to take a Persistent<Value> instead
9761 of a Persistent<Object> (issue 101).
9763 Fixed issues with message reporting for exceptions in try-finally
9764 blocks (issues 73 and 75).
9766 Optimized flattening of strings and string equality checking.
9768 Improved Boyer-Moore implementation for faster indexOf operations.
9770 Added development shell (d8) which includes counters and
9773 Fixed problem with the receiver passed to functions called from
9777 2008-10-16: Version 0.3.5
9779 Improved string hash-code distribution by excluding bit-field bits
9782 Changed string search algorithm used in indexOf from KMP to
9785 Improved the generated code for the instanceof operator.
9787 Improved performance of slow-case string equality checks by
9788 specializing the code based on the string representation.
9790 Improve the handling of out-of-memory situations (issue 70).
9792 Improved performance of strict equality checks.
9794 Improved profiler output to make it easier to see anonymous
9797 Improved performance of slow-case keyed loads.
9799 Improved property access performance by allocating a number of
9800 properties in the front object.
9802 Changed the toString behavior on the built-in object constructors
9803 to print [native code] instead of the actual source. Some web
9804 applications do not like constructors with complex toString
9808 2008-10-06: Version 0.3.4
9810 Changed Array.prototype.sort to use quick sort.
9812 Fixed code generation issue where leaving a finally block with
9813 break or continue would accumulate elements on the expression
9816 Made sure that the name accessor on functions returns the expected
9817 names for builtin JavaScript functions and C++ callback functions.
9819 Added fast case code for extending the property storage array of
9822 Ported switch statement optimizations introduced in version 0.3.3
9823 to the ARM code generator.
9825 Allowed GCC to use strict-aliasing rules when compiling.
9827 Improved performance of arguments object allocation by taking care
9828 of arguments adaptor frames in the generated code.
9830 Updated the V8 benchmark suite to version 2.
9833 2008-09-25: Version 0.3.3
9835 Improved handling of relocation information to enable more
9836 peep-hole optimizations.
9838 Optimized switch statements where all labels are constant small
9841 Optimized String.prototype.indexOf for common cases.
9843 Fixed more build issues (issue 80).
9845 Fixed a couple of profiler issues.
9847 Fixed bug where the body of a function created using the Function
9848 constructor was not allowed to end with a single-line comment
9851 Improved handling of object literals by canonicalizing object
9852 literal maps. This will allow JSON objects with the same set of
9853 properties to share the same map making inline caching work better
9857 2008-09-17: Version 0.3.2
9859 Generalized the EvalCache into a CompilationCache and enabled it
9860 for scripts too. The current strategy is to retire all entries
9861 whenever a mark-sweep collection is started.
9863 Fixed bug where switch statements containing only a default case
9864 would lead to an unbalanced stack (issue 69).
9866 Fixed bug that made access to the function in a named function
9867 expression impossible in certain situations (issue 24).
9869 Fixed even more build issues.
9871 Optimized calling conventions on ARM. The conventions on ARM and
9874 Removed static initializers for flags and counters.
9876 Improved inline caching behavior for uncommon cases where lazily
9877 loading Date and RegExp code could force certain code paths go
9880 Removed arguments adaption for builtins written in C++. This
9881 makes Array.prototype.push and Array.prototype.pop slightly
9885 2008-09-11: Version 0.3.1
9887 Fixed a number of build issues.
9889 Fixed problem with missing I-cache flusing on ARM.
9891 Changed space layout in memory management by splitting up
9892 code space into old data space and code space.
9894 Added utf-8 conversion support to the API (issue 57).
9896 Optimized repeated calls to eval with the same strings. These
9897 repeated calls are common in web applications.
9899 Added Xcode project file.
9901 Optimized a couple of Array operation.
9903 Fixed parser bug by checking for end-of-string when parsing break
9904 and continue (issue 35).
9906 Fixed problem where asian characters were not categorized as
9909 Fixed bug that disallowed calling functions fetched from an array
9910 using a string as an array index (issue 32).
9912 Fixed bug where the internal field count on object templates were
9913 sometimes ignored (issue 54).
9915 Added -f option to the shell sample for compatibility with other
9918 Added source info to TryCatches in the API.
9920 Fixed problem where the seed for the random number generator was
9921 clipped in a double to unsigned int conversion.
9923 Fixed bug where cons string symbols were sometimes converted to
9924 non-symbol flat strings during GC.
9926 Fixed bug in error reporting when attempting to convert null to an
9930 2008-09-04: Version 0.3.0
9932 Added support for running tests on the ARM simulator.
9934 Fixed bug in the 'in' operator where negative indices were not
9937 Fixed build issues on gcc-4.3.1.
9939 Changed Date.prototype.toLocaleTimeString to not print the
9940 timezone part of the time.
9942 Renamed debug.h to v8-debug.h to reduce the risk of name conflicts
9946 2008-09-02: Version 0.2.5
9948 Renamed the top level directory 'public' to 'include'.
9950 Added 'env' option to the SCons build scripts to support
9951 overriding the ENV part of the build environment. This is mostly
9952 to support Windows builds in cases where SCons cannot find the
9953 correct paths to the Windows SDK, as these paths cannot be passed
9954 through shell environment variables.
9956 Enabled "Buffer Security Check" on for the Windows SCons build and
9957 added the linker option /OPT:ICF as an optimization.
9959 Added the V8 benchmark suite to the repository.
9962 2008-09-01: Version 0.2.4
9964 Included mjsunit JavaScript test suite and C++ unit tests.
9966 Changed the shell sample to not print the result of executing a
9967 script provided on the command line.
9969 Fixed issue when building samples on Windows using a shared V8
9970 library. Added visibility option on Linux build which makes the
9971 generated library 18% smaller.
9973 Changed build system to accept multiple build modes in one build
9974 and generate separate objects, libraries and executables for each
9977 Removed deferred negation optimization (a * -b => -(a * b)) since
9978 this visibly changes operand conversion order.
9980 Improved parsing performance by introducing stack guard in
9981 preparsing. Without a stack guard preparsing always bails out
9982 with stack overflow.
9984 Changed shell sample to take flags directly from the command-line.
9985 Added API call that implements this.
9987 Added load, quit and version functions to the shell sample so it's
9988 easier to run benchmarks and tests.
9990 Fixed issue with building samples and cctests on 64-bit machines.
9992 Fixed bug in the runtime system where the prototype chain was not
9993 always searched for a setter when setting a property that does not
9997 2008-08-14: Version 0.2.3
9999 Improved performance of garbage collection by moving the
10000 function that updates pointers during compacting collection
10001 into the updating visitor. This gives the compiler a better
10002 chance to inline and avoid a function call per (potential)
10005 Extended the shell sample with a --runtime-flags option.
10007 Added Visual Studio project files for the shell.cc and
10008 process.cc samples.
10011 2008-08-13: Version 0.2.2
10013 Improved performance of garbage collection by changing the way
10014 we use the marking stack in the event of stack overflow during
10015 full garbage collection and by changing the way we mark roots.
10017 Cleaned up ARM version by removing top of stack caching and by
10018 introducing push/pop elimination.
10020 Cleaned up the way runtime functions are called to allow
10021 runtime calls with no arguments.
10023 Changed Windows build options to make sure that exceptions are
10024 disabled and that optimization flags are enabled.
10026 Added first version of Visual Studio project files.
10029 2008-08-06: Version 0.2.1
10031 Improved performance of unary addition by avoiding runtime calls.
10033 Fixed the handling of '>' and '<=' to use right-to-left conversion
10034 and left-to-right evaluation as specified by ECMA-262.
10036 Fixed a branch elimination bug on the ARM platform where incorrect
10037 code was generated because of overly aggressive branch
10040 Improved performance of code that repeatedly assigns the same
10041 function to the same property of different objects with the same
10044 Untangled DEBUG and ENABLE_DISASSEMBLER defines. The disassembler
10045 no longer expects DEBUG to be defined.
10047 Added platform-nullos.cc to serve as the basis for new platform
10051 2008-07-30: Version 0.2.0
10053 Changed all text files to have native svn:eol-style.
10055 Added a few samples and support for building them. The samples
10056 include a simple shell that can be used to benchmark and test V8.
10058 Changed V8::GetVersion to return the version as a string.
10060 Added source for lazily loaded scripts to snapshots and made
10061 serialization non-destructive.
10063 Improved ARM support by fixing the write barrier code to use
10064 aligned loads and stores and by removing premature locals
10065 optimization that relied on broken support for callee-saved
10066 registers (removed).
10068 Refactored the code for marking live objects during garbage
10069 collection and the code for allocating objects in paged
10070 spaces. Introduced an abstraction for the map word of a heap-
10071 allocated object and changed the memory allocator to allocate
10072 executable memory only for spaces that may contain code objects.
10074 Moved StringBuilder to utils.h and ScopedLock to platform.h, where
10075 they can be used by debugging and logging modules. Added
10076 thread-safe message queues for dealing with debugger events.
10078 Fixed the source code reported by toString for certain builtin
10079 empty functions and made sure that the prototype property of a
10080 function is enumerable.
10082 Improved performance of converting values to condition flags in
10085 Merged disassembler-{arch} files.
10088 2008-07-28: Version 0.1.4
10090 Added support for storing JavaScript stack traces in a stack
10091 allocated buffer to make it visible in shallow core dumps.
10092 Controlled by the --preallocate-message-memory flag which is
10093 disabled by default.
10096 2008-07-25: Version 0.1.3
10098 Fixed bug in JSObject::GetPropertyAttributePostInterceptor where
10099 map transitions would count as properties.
10101 Allowed aliased eval invocations by treating them as evals in the
10102 global context. This may change in the future.
10104 Added support for accessing the last entered context through the
10105 API and renamed Context::Current to Context::GetCurrent and
10106 Context::GetSecurityContext to Context::GetCurrentSecurityContext.
10108 Fixed bug in the debugger that would cause the debugger scripts to
10109 be recursively loaded and changed all disabling of interrupts to
10110 be block-structured.
10112 Made snapshot data read-only to allow it to be more easily shared
10113 across multiple users of V8 when linked as a shared library.
10116 2008-07-16: Version 0.1.2
10118 Fixed building on Mac OS X by recognizing i386 and friends as
10121 Added propagation of stack overflow exceptions that occur while
10122 compiling nested functions.
10124 Improved debugger with support for recursive break points and
10125 handling of exceptions that occur in the debugger JavaScript code.
10127 Renamed GetInternal to GetInternalField and SetInternal to
10128 SetInternalField in the API and moved InternalFieldCount and
10129 SetInternalFieldCount from FunctionTemplate to ObjectTemplate.
10132 2008-07-09: Version 0.1.1
10134 Fixed bug in stack overflow check code for IA-32 targets where a
10135 non-tagged value in register eax was pushed to the stack.
10137 Fixed potential quadratic behavior when converting strings to
10140 Fixed bug where the return value from Object::SetProperty could
10141 end up being the property holder instead of the written value.
10143 Improved debugger support by allowing nested break points and by
10144 dealing with stack-overflows when compiling functions before
10145 setting break points in them.
10148 2008-07-03: Version 0.1.0