ChangeLog 280 KB
Newer Older
1
2015-05-17: Sentinel
2

3 4
        The ChangeLog file is no longer maintained on bleeding_edge. This
        sentinel should stay on top of this list.
5 6


7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046
2015-05-17: Version 4.5.2

        Performance and stability improvements on all platforms.


2015-05-16: Version 4.5.1

        Test that TypedArray methods don't read length (issue 3578).

        Implement %TypedArray%.{fill,find,findIndex} (issue 3578).

        TypedArray.prototype.copyWithin method (issue 3578).

        Provide accessor for object internal properties that doesn't require
        debugger to be active (Chromium issue 481845).

        Don't create debug context if debug listener is not set (Chromium issue
        482290).

        Performance and stability improvements on all platforms.


2015-05-13: Version 4.4.65

        Deprecate Isolate::New.

        Factor out core of Array.forEach and .every, for use in TypedArrays
        (issue 3578).

        Performance and stability improvements on all platforms.


2015-05-12: Version 4.4.64

        Performance and stability improvements on all platforms.


2015-05-11: Version 4.4.63

        Let Runtime_GrowArrayElements accept non-Smi numbers as |key| (Chromium
        issue 485410).

        Make one copy for all TypedArray methods (issue 4085).

        Performance and stability improvements on all platforms.


2015-05-09: Version 4.4.62

        [turbofan] Fix handling of OsrLoopEntry in ControlReducer::ConnectNTL()
        (Chromium issue 485908).

        Performance and stability improvements on all platforms.


2015-05-08: Version 4.4.61

        Performance and stability improvements on all platforms.


2015-05-08: Version 4.4.60

        Performance and stability improvements on all platforms.


2015-05-08: Version 4.4.59

        Performance and stability improvements on all platforms.


2015-05-07: Version 4.4.58

        TypedArray.prototype.every method (issue 3578).

        [V8] Reland https://codereview.chromium.org/1121833003/ (Chromium issue
        480652).

        Performance and stability improvements on all platforms.


2015-05-07: Version 4.4.57

        Performance and stability improvements on all platforms.


2015-05-06: Version 4.4.56

        Shard v8_base.lib on Windows to avoid 2G .lib limit (Chromium issue
        485155).

        Implement a 'trial parse' step, that will abort pre-parsing excessively
        long and trivial functions, so that they can be eagerly compiled after
        all. This essentially allows the parser to renege on its earlier
        decision to lazy-parse, if additional information suggests it was a bad
        decision (Chromium issue 470930).

        Performance and stability improvements on all platforms.


2015-05-06: Version 4.4.55

        Handle the case when derived constructor is [[Call]]ed with 0 args
        (Chromium issue 474783).

        freed_nodes in global-handles should be addititive (Chromium issues
        479796, 484671).

        [V8] Reland https://codereview.chromium.org/1100993003/ (Chromium issue
        480652).

        [es6] When comparing two symbols we may need to throw a TypeError (issue
        4073).

        Performance and stability improvements on all platforms.


2015-05-06: Version 4.4.54

        Performance and stability improvements on all platforms.


2015-05-05: Version 4.4.53

        Performance and stability improvements on all platforms.


2015-05-05: Version 4.4.52

        Performance and stability improvements on all platforms.


2015-05-04: Version 4.4.51

        Performance and stability improvements on all platforms.


2015-05-04: Version 4.4.50

        Performance and stability improvements on all platforms.


2015-05-01: Version 4.4.49

        Performance and stability improvements on all platforms.


2015-05-01: Version 4.4.48

        [V8] Use previous token location as EOS token location (Chromium issue
        480652).

        Implement kToBeExecutedOnceCodeAge (Chromium issue 470930).

        Performance and stability improvements on all platforms.


2015-04-30: Version 4.4.47

        Performance and stability improvements on all platforms.


2015-04-30: Version 4.4.46

        Performance and stability improvements on all platforms.


2015-04-29: Version 4.4.45

        Performance and stability improvements on all platforms.


2015-04-29: Version 4.4.44

        Pass ArrayBuffer::Allocator via Isolate::CreateParams.

        Fix unobservable constructor replacement on prototype maps (Chromium
        issue 478522).

        Performance and stability improvements on all platforms.


2015-04-29: Version 4.4.43

        Performance and stability improvements on all platforms.


2015-04-28: Version 4.4.42

        MIPS: Fix FP load/store with large offsets from base register (Chromium
        issue 481519).

        Extending v8::GetHeapStatistics to return total available size (Chromium
        issue 476013).

        Performance and stability improvements on all platforms.


2015-04-28: Version 4.4.41

        Performance and stability improvements on all platforms.


2015-04-28: Version 4.4.40

        Do more to avoid last-resort stop-the-world GC (Chromium issue 481433).

        Performance and stability improvements on all platforms.


2015-04-27: Version 4.4.39

        Performance and stability improvements on all platforms.


2015-04-27: Version 4.4.38

        Performance and stability improvements on all platforms.


2015-04-25: Version 4.4.37

        Performance and stability improvements on all platforms.


2015-04-24: Version 4.4.36

        Performance and stability improvements on all platforms.


2015-04-24: Version 4.4.35

        Performance and stability improvements on all platforms.


2015-04-24: Version 4.4.34

        Performance and stability improvements on all platforms.


2015-04-23: Version 4.4.33

        Performance and stability improvements on all platforms.


2015-04-23: Version 4.4.32

        Performance and stability improvements on all platforms.


2015-04-23: Version 4.4.31

        Performance and stability improvements on all platforms.


2015-04-22: Version 4.4.30

        Performance and stability improvements on all platforms.


2015-04-22: Version 4.4.29

        Performance and stability improvements on all platforms.


2015-04-21: Version 4.4.28

        Performance and stability improvements on all platforms.


2015-04-21: Version 4.4.27

        Performance and stability improvements on all platforms.


2015-04-20: Version 4.4.26

        Allow for accessing an ArrayBuffer contents without externalizing it.

        Remove support for externally backed elements from the API (issue 3996).

        Deprecate 3-args ResourceConstraints::ConfigureDefaults.

        Indicate that low-memory-notificatin triggered GCs are "forced".

        Adding missing V8_EXPORT flag in SpaceStatistics class in v8.h (Chromium
        issues 466141, 476013).

        Performance and stability improvements on all platforms.


2015-04-20: Version 4.4.25

        Turn off SupportsFlexibleFloorAndRound for Arm64 due to a bug (Chromium
        issue 476477).

        Adding V8 api to get memory statistics of spaces in V8::Heap (Chromium
        issues 466141, 476013).

        Performance and stability improvements on all platforms.


2015-04-17: Version 4.4.24

        Performance and stability improvements on all platforms.


2015-04-17: Version 4.4.23

        Don't crash when reporting an access check failure for a detached global
        proxy (Chromium issue 475884).

        Use smaller heap growing factor in idle notification to start
        incremental marking when there is idle time >16ms (Chromium issue
        477323).

        Performance and stability improvements on all platforms.


2015-04-16: Version 4.4.22

        Reduce regexp compiler stack size when not optimizing regexps (Chromium
        issue 475705).

        Performance and stability improvements on all platforms.


2015-04-15: Version 4.4.21

        Remove support for specifying the number of available threads.

        When converting Maybe and MaybeLocal values with a check, always check.

        Performance and stability improvements on all platforms.


2015-04-15: Version 4.4.20

        Performance and stability improvements on all platforms.


2015-04-15: Version 4.4.19

        Reland "Remove support for thread-based recompilation" (issue 3608).

        Performance and stability improvements on all platforms.


2015-04-14: Version 4.4.18

        Reland "Remove support for thread-based recompilation" (issue 3608).

        Performance and stability improvements on all platforms.


2015-04-14: Version 4.4.17

        Performance and stability improvements on all platforms.


2015-04-13: Version 4.4.16

        Expose ArrayBufferView::HasBuffer (issue 3996).

        Performance and stability improvements on all platforms.


2015-04-13: Version 4.4.15

        Performance and stability improvements on all platforms.


2015-04-12: Version 4.4.14

        Performance and stability improvements on all platforms.


2015-04-12: Version 4.4.13

        Performance and stability improvements on all platforms.


2015-04-10: Version 4.4.12

        Performance and stability improvements on all platforms.


2015-04-10: Version 4.4.11

        Performance and stability improvements on all platforms.


2015-04-10: Version 4.4.10

        Don't #define snprintf in VS2015 - it's illegal and unneeded (Chromium
        issue 440500).

        Performance and stability improvements on all platforms.


2015-04-09: Version 4.4.9

        Performance and stability improvements on all platforms.


2015-04-09: Version 4.4.8

        Performance and stability improvements on all platforms.


2015-04-08: Version 4.4.7

        Make GetDebugContext a bit more robust (Chromium issue 474538).

        Performance and stability improvements on all platforms.


2015-04-08: Version 4.4.6

        Performance and stability improvements on all platforms.


2015-04-08: Version 4.4.5

        More robust when allocation fails during compaction (Chromium issue
        473307).

        MIPS: JSEntryTrampoline: check for stack space before pushing arguments
        (Chromium issue 469768).

        Performance and stability improvements on all platforms.


2015-04-07: Version 4.4.4

        Debugger: remove debug command API.

        Remove support for thread-based recompilation (issue 3608).

        JSEntryTrampoline: check for stack space before pushing arguments
        (Chromium issue 469768).

        Performance and stability improvements on all platforms.


2015-04-07: Version 4.4.3

        Performance and stability improvements on all platforms.


2015-04-06: Version 4.4.2

        Performance and stability improvements on all platforms.


2015-04-06: Version 4.4.1

        Support for typed arrays added to Heap::RightTrimFixedArray() (Chromium
        issue 472513).

        Expose an API on ArrayBufferView to copy out content w/o changing the
        buffer (issue 3996).

        Performance and stability improvements on all platforms.


2015-04-02: Version 4.3.66

        Reland: Fix JSON parser Handle leak (previous CL 1041483004) (issue
        3976, Chromium issue 472504).

        Turn off overapproximation of the weak closure again (issue 3862).

        Performance and stability improvements on all platforms.


2015-04-01: Version 4.3.65

        Performance and stability improvements on all platforms.


2015-04-01: Version 4.3.64

        Performance and stability improvements on all platforms.


2015-04-01: Version 4.3.63

        [V8] Don't ignore sourceURL comment in inline scripts in .stack (issue
        3920).

        Deprecate IdleNotification().

        Remove --harmony-numeric-literal flag.

        Performance and stability improvements on all platforms.


2015-03-31: Version 4.3.62

        Put newspace evacuation in an EvacuationScope (Chromium issue 471554).

        Fix libdl dependency on Android and remove librt hack (Chromium issue
        469973).

        Ensure that GC idle notifications either make progress or stop
        requesting more GCs (Chromium issue 470615).

        Layout descriptor must be trimmed when corresponding descriptors array
        is trimmed to stay in sync (Chromium issue 470804).

        Fix JSON parser Handle leak (issue 3976).

        Performance and stability improvements on all platforms.


2015-03-30: Version 4.3.61

        Performance and stability improvements on all platforms.


2015-03-28: Version 4.3.60

        Reland^2 "Filter invalid slots out from the SlotsBuffer after marking."
        (Chromium issues 454297, 470801).

        This fixes missing incremental write barrier issue when double fields
        unboxing is enabled (Chromium issue 469146).

        Performance and stability improvements on all platforms.


2015-03-27: Version 4.3.59

        Use a slot that is located on a heap page when removing invalid entries
        from the SlotsBuffer (Chromium issue 470801).

        Performance and stability improvements on all platforms.


2015-03-26: Version 4.3.58

        Return timestamp of the last recorded interval to the caller of
        HeapProfiler::GetHeapStats (Chromium issue 467222).

        Performance and stability improvements on all platforms.


2015-03-26: Version 4.3.57

        Reland [V8] Removed SourceLocationRestrict (Chromium issue 468781).

        Performance and stability improvements on all platforms.


2015-03-25: Version 4.3.56

        Remove v8::Isolate::ClearInterrupt.

        Performance and stability improvements on all platforms.


2015-03-25: Version 4.3.55

        Performance and stability improvements on all platforms.


2015-03-24: Version 4.3.54

        Do not assign positions to parser-generated desugarings (Chromium issue
        468661).

        Performance and stability improvements on all platforms.


2015-03-24: Version 4.3.53

        Filter invalid slots out from the SlotsBuffer after marking (Chromium
        issue 454297).

        Fix OOM bug 3976 (issue 3976).

        Performance and stability improvements on all platforms.


2015-03-24: Version 4.3.52

        Remove calls to IdleNotification().

        Save heap object tracking data in heap snapshot (Chromium issue 467222).

        Performance and stability improvements on all platforms.


2015-03-24: Version 4.3.51

        [V8] Removed SourceLocationRestrict (Chromium issue 468781).

        [turbofan] Fix control reducer bug with walking non-control edges during
        ConnectNTL phase (Chromium issue 469605).

        Performance and stability improvements on all platforms.


2015-03-23: Version 4.3.50

        Performance and stability improvements on all platforms.


2015-03-23: Version 4.3.49

        Ensure we don't overflow in BCE (Chromium issue 469148).

        [turbofan] Fix lowering of Math.max for integral inputs (Chromium issue
        468162).

        Use libdl to get symbols for backtraces.

        Performance and stability improvements on all platforms.


2015-03-19: Version 4.3.48

        Clarify what APIs return Maybe and MaybeLocal values (issue 3929).

        Introduce explicit constant for per Context debug data set by embedder
        (Chromium issue 466631).

        Adjust key behaviour for weak collections (issues 3970, 3971, Chromium
        issue 460083).

        Turn on overapproximation of the weak closure (issue 3862).

        Performance and stability improvements on all platforms.


2015-03-18: Version 4.3.47

        Performance and stability improvements on all platforms.


2015-03-17: Version 4.3.46

        Performance and stability improvements on all platforms.


2015-03-17: Version 4.3.45

        Performance and stability improvements on all platforms.


2015-03-17: Version 4.3.44

        Performance and stability improvements on all platforms.


2015-03-16: Version 4.3.43

        Bugfix in hydrogen GVN (Chromium issue 467481).

        Remove obsolete TakeHeapSnapshot method from API (Chromium issue
        465651).

        Beautify syntax error for unterminated argument list (Chromium issue
        339474).

        Performance and stability improvements on all platforms.


2015-03-16: Version 4.3.42

        Performance and stability improvements on all platforms.


2015-03-15: Version 4.3.41

        Performance and stability improvements on all platforms.


2015-03-14: Version 4.3.40

        Performance and stability improvements on all platforms.


2015-03-14: Version 4.3.39

        Performance and stability improvements on all platforms.


2015-03-14: Version 4.3.38

        Remove --harmony-scoping flag.

        Performance and stability improvements on all platforms.


2015-03-13: Version 4.3.37

        Implement TDZ in StoreIC for top-level lexicals (issue 3941).

        Turn on job-based optimizing compiler (issue 3608).

        Performance and stability improvements on all platforms.


2015-03-13: Version 4.3.36

        Performance and stability improvements on all platforms.


2015-03-12: Version 4.3.35

        Add Cast() for Int32 and Uint32 (Chromium issue 462402).

        Incorrect handling of HTransitionElementsKind in hydrogen check
        elimination phase fixed (Chromium issue 460917).

        Performance and stability improvements on all platforms.


2015-03-12: Version 4.3.34

        Performance and stability improvements on all platforms.


2015-03-12: Version 4.3.33

        Fix the toolchain used to build the snapshots in GN (Chromium issues
        395249, 465456).

        Performance and stability improvements on all platforms.


2015-03-11: Version 4.3.32

        Reland of Remove slots that point to unboxed doubles from the
        StoreBuffer/SlotsBuffer (Chromium issues 454297, 465273).

        Performance and stability improvements on all platforms.


2015-03-11: Version 4.3.31

        Performance and stability improvements on all platforms.


2015-03-11: Version 4.3.30

        Remove uid and title from HeapSnapshot (Chromium issue 465651).

        Remove deprecated CpuProfiler methods.

        [turbofan] Fix --turbo-osr for OSRing into inner loop inside for-in
        (Chromium issue 462775).

        Performance and stability improvements on all platforms.


2015-03-10: Version 4.3.29

        Performance and stability improvements on all platforms.


2015-03-10: Version 4.3.28

        Performance and stability improvements on all platforms.


2015-03-10: Version 4.3.27

        Performance and stability improvements on all platforms.


2015-03-07: Version 4.3.26

        Remove slots that point to unboxed doubles from the
        StoreBuffer/SlotsBuffer (Chromium issue 454297).

        Performance and stability improvements on all platforms.


2015-03-06: Version 4.3.25

        Performance and stability improvements on all platforms.


2015-03-06: Version 4.3.24

        convert more things to maybe (issue 3929).

        Performance and stability improvements on all platforms.


2015-03-05: Version 4.3.23

        [V8] Use Function.name for stack frames in v8::StackTrace (Chromium
        issue 17356).

        Allow passing sourceMapUrl when compiling scripts (Chromium issue
        462572).

        convert compile functions to use maybe (issue 3929).

        Performance and stability improvements on all platforms.


2015-03-05: Version 4.3.22

        give UniquePersistent full move semantics (issue 3669).

        Performance and stability improvements on all platforms.


2015-03-05: Version 4.3.21

        Performance and stability improvements on all platforms.


2015-03-04: Version 4.3.20

        convert remaining object functions to maybes (issue 3929).

        Performance and stability improvements on all platforms.


2015-03-04: Version 4.3.19

        ARM assembler: fix undefined behaviour in fits_shifter (Chromium issues
        444089, 463436).

        Implement subclassing Arrays (issue 3930).

        [es6] Fix for-const loops (issue 3983).

        Performance and stability improvements on all platforms.


2015-03-04: Version 4.3.18

        Implement subclassing Arrays (issue 3930).

        Performance and stability improvements on all platforms.


2015-03-04: Version 4.3.17

        Implement subclassing Arrays (issue 3930).

        convert more object functions to return maybes (issue 3929).

        Performance and stability improvements on all platforms.


2015-03-03: Version 4.3.16

        check for null context on execution entry (issue 3929).

        convert object::* to return maybe values (issue 3929).

        Removed funky Maybe constructor and made fields private (issue 3929).

        Polish Maybe API a bit, removing useless creativity and fixing some
        signatures (issue 3929).

        Performance and stability improvements on all platforms.


2015-03-02: Version 4.3.15

        Performance and stability improvements on all platforms.


2015-03-02: Version 4.3.14

        Performance and stability improvements on all platforms.


2015-02-28: Version 4.3.13

        Disallow subclassing Arrays (issue 3930).

        Performance and stability improvements on all platforms.


2015-02-28: Version 4.3.12

        Performance and stability improvements on all platforms.


2015-02-27: Version 4.3.11

        Disallow subclassing Arrays (issue 3930).

        convert Value::*Value() function to return Maybe results (issue 3929).

        Performance and stability improvements on all platforms.


2015-02-27: Version 4.3.10

        Convert v8::Value::To* to use MaybeLocal (issue 3929).

        Performance and stability improvements on all platforms.


2015-02-26: Version 4.3.9

        Add public version macros (issue 3075).

        Performance and stability improvements on all platforms.


2015-02-26: Version 4.3.8

        Performance and stability improvements on all platforms.


2015-02-25: Version 4.3.7

        Performance and stability improvements on all platforms.


2015-02-25: Version 4.3.6

        Performance and stability improvements on all platforms.


2015-02-25: Version 4.3.5

        Turn on job based recompilation (issue 3608).

        Performance and stability improvements on all platforms.


2015-02-24: Version 4.3.4

        Reland "Correctly propagate terminate exception in TryCall." (issue
        3892).

        Performance and stability improvements on all platforms.


2015-02-24: Version 4.3.3

        Performance and stability improvements on all platforms.


2015-02-24: Version 4.3.2

        Update GN build files with the cpu_arch -> current_cpu change.

        Performance and stability improvements on all platforms.


2015-02-23: Version 4.3.1

        Limit size of first page based on serialized data (Chromium issue
        453111).

        Performance and stability improvements on all platforms.


2015-02-19: Version 4.2.77

        Make generator constructors configurable (issue 3902).

        Performance and stability improvements on all platforms.


2015-02-19: Version 4.2.76

        Performance and stability improvements on all platforms.


2015-02-18: Version 4.2.75

        Performance and stability improvements on all platforms.


2015-02-18: Version 4.2.74

        Correctly propagate terminate exception in TryCall (issue 3892).

        Performance and stability improvements on all platforms.


2015-02-17: Version 4.2.73

        Performance and stability improvements on all platforms.


2015-02-17: Version 4.2.72

        [turbofan] Fix control reducer with re-reducing branches (Chromium issue
        458876).

        Performance and stability improvements on all platforms.


2015-02-16: Version 4.2.71

        Implement ES6 rest parameters (issue 2159).

        Performance and stability improvements on all platforms.


2015-02-13: Version 4.2.70

        new classes: no longer experimental (issue 3834).

        Make it possible to define arguments for CompileFunctionInContext.

        Performance and stability improvements on all platforms.


2015-02-12: Version 4.2.69

        Performance and stability improvements on all platforms.


2015-02-11: Version 4.2.68

        Performance and stability improvements on all platforms.


2015-02-11: Version 4.2.67

        Throw on range error when creating a string via API (issue 3853).

        Performance and stability improvements on all platforms.


2015-02-11: Version 4.2.66

        Performance and stability improvements on all platforms.


2015-02-10: Version 4.2.65

        Performance and stability improvements on all platforms.


2015-02-10: Version 4.2.64

        Performance and stability improvements on all platforms.


2015-02-10: Version 4.2.63

        Introduce a compile method that takes context extensions (Chromium issue
        456192).

        Performance and stability improvements on all platforms.


2015-02-09: Version 4.2.62

        Performance and stability improvements on all platforms.


2015-02-09: Version 4.2.61

        Performance and stability improvements on all platforms.


2015-02-07: Version 4.2.60

        Performance and stability improvements on all platforms.


2015-02-07: Version 4.2.59

        Performance and stability improvements on all platforms.


2015-02-07: Version 4.2.58

        Performance and stability improvements on all platforms.


2015-02-06: Version 4.2.57

        Performance and stability improvements on all platforms.


2015-02-06: Version 4.2.56

        Performance and stability improvements on all platforms.


2015-02-06: Version 4.2.55

        Protect against uninitialized lexical variables at top-level (Chromium
        issue 452510).

        Performance and stability improvements on all platforms.


2015-02-05: Version 4.2.54

        Fix HConstant(double, ...) constructor (issue 3865).

        Add NativeWeakMap to v8.h (Chromium issue 437416).

        Performance and stability improvements on all platforms.


2015-02-05: Version 4.2.53

        Fix issue with multiple properties and emit store (issue 3856).

        Class methods should be non enumerable (issue 3330).

        Performance and stability improvements on all platforms.


2015-02-04: Version 4.2.52

        Add WeakKeyMap to v8.h (Chromium issue 437416).

        Performance and stability improvements on all platforms.


2015-02-04: Version 4.2.51

        Performance and stability improvements on all platforms.


2015-02-03: Version 4.2.50

        Reset inlining limits due to overly long compilation times in
        Speedometer, Dart2JS (Chromium issue 454625).

        Add WeakMap to v8.h (Chromium issue 437416).

        [V8] Added line, column and script symbols for SyntaxError (Chromium
        issue 443140).

        Performance and stability improvements on all platforms.


2015-02-03: Version 4.2.49

        Compute the same hash for all NaN values (issue 3859).

        Performance and stability improvements on all platforms.


2015-02-03: Version 4.2.48

        Performance and stability improvements on all platforms.


2015-02-02: Version 4.2.47

        Check global object behind global proxy for extensibility (Chromium
        issue 454091).

        Performance and stability improvements on all platforms.


2015-02-02: Version 4.2.46

        Performance and stability improvements on all platforms.


2015-02-02: Version 4.2.45

        Performance and stability improvements on all platforms.


2015-02-01: Version 4.2.44

        Performance and stability improvements on all platforms.


2015-02-01: Version 4.2.43

        Performance and stability improvements on all platforms.


2015-01-31: Version 4.2.42

        Performance and stability improvements on all platforms.


2015-01-31: Version 4.2.41

        Layout descriptor sharing issue fixed (issue 3832, Chromium issue
        437713).

        Performance and stability improvements on all platforms.


2015-01-30: Version 4.2.40

        Performance and stability improvements on all platforms.


2015-01-30: Version 4.2.38

        Move object literal checking into checker classes (issue 3819).

        [turbofan] Fix OSR compilations of for-in.

        Performance and stability improvements on all platforms.


2015-01-30: Version 4.2.37

        Do not create unresolved variables when parsing arrow functions lazily
        (issue 3501).

        Performance and stability improvements on all platforms.


2015-01-29: Version 4.2.36

        Performance and stability improvements on all platforms.


2015-01-29: Version 4.2.35

        Performance and stability improvements on all platforms.


2015-01-28: Version 4.2.34

        Performance and stability improvements on all platforms.


2015-01-28: Version 4.2.33

        Performance and stability improvements on all platforms.


2015-01-27: Version 4.2.32

        Do not generalize field representations when making elements kind or
        observed transition (Chromium issue 448711).

        Performance and stability improvements on all platforms.


2015-01-27: Version 4.2.31

        [x86] Disable AVX unless the operating system explicitly claims to
        support it (issue 3846, Chromium issue 452033).

        Performance and stability improvements on all platforms.


2015-01-27: Version 4.2.30

        Performance and stability improvements on all platforms.


2015-01-26: Version 4.2.29

        MIPS: Fixed Hydrogen environment handling for mul-i ARM and ARM64 (issue
        451322).

        [turbofan] Simplify reduction if IfTrue and IfFalse and fix bugs
        (Chromium issue 451958).

        Add HeapNumber fast path to v8::Value::{Uint,Int}32Value() (Chromium
        issue 446097).

        Performance and stability improvements on all platforms.


2015-01-26: Version 4.2.28

        Fixed Hydrogen environment handling for mul-i on ARM and ARM64 (issue
        451322).

        Performance and stability improvements on all platforms.


2015-01-25: Version 4.2.27

        Performance and stability improvements on all platforms.


2015-01-24: Version 4.2.26

        ES6 Array.prototype.toString falls back on Object.prototype.toString if
        method "join" is not callable (issue 3793).

        Performance and stability improvements on all platforms.


2015-01-23: Version 4.2.25

        Performance and stability improvements on all platforms.


2015-01-23: Version 4.2.24

        Performance and stability improvements on all platforms.


2015-01-23: Version 4.2.23

        [x86] Blacklist AVX for Windows versions before 6.1 (Windows 7) (issue
        3846).

        Performance and stability improvements on all platforms.


2015-01-23: Version 4.2.22

        Fix run-time ARMv6 detection (issue 3844).

        Support concatenating with zero-size arrays with DICTIONARY_ELEMENTS in
        Runtime_ArrayConcat (Chromium issue 450895).

        Performance and stability improvements on all platforms.


2015-01-22: Version 4.2.21

        Performance and stability improvements on all platforms.


2015-01-22: Version 4.2.20

        Add a pretty printer to improve the error message non-function calls
        (Chromium issue 259443).

        Remove implicit uint8_t to char cast in string replace (Chromium issue
        446196).

        Performance and stability improvements on all platforms.


2015-01-21: Version 4.2.19

        Performance and stability improvements on all platforms.


2015-01-20: Version 4.2.18

        Fix issue with __proto__ when using ES6 object literals (issue 3818).

        Performance and stability improvements on all platforms.


2015-01-20: Version 4.2.17

        Performance and stability improvements on all platforms.


2015-01-20: Version 4.2.16

        Performance and stability improvements on all platforms.


2015-01-19: Version 4.2.15

        Unobscurified OFStream (Chromium issue 448102).

        Performance and stability improvements on all platforms.


2015-01-19: Version 4.2.14

        Performance and stability improvements on all platforms.


2015-01-18: Version 4.2.13

        Performance and stability improvements on all platforms.


2015-01-18: Version 4.2.12

        Performance and stability improvements on all platforms.


2015-01-17: Version 4.2.11

        Performance and stability improvements on all platforms.


2015-01-16: Version 4.2.10

        Performance and stability improvements on all platforms.


2015-01-16: Version 4.2.9

        MIPS: ES6 computed property names (issue 3754).

        ES6 computed property names (issue 3754).

        Performance and stability improvements on all platforms.


2015-01-15: Version 4.2.8

        Performance and stability improvements on all platforms.


2015-01-15: Version 4.2.7

        Performance and stability improvements on all platforms.


2015-01-15: Version 4.2.6

        Performance and stability improvements on all platforms.


2015-01-15: Version 4.2.5

        Performance and stability improvements on all platforms.


2015-01-14: Version 4.2.4

        Auto-generate v8 version based on tags (Chromium issue 446166).

        Remove support for signatures with arguments.

        Add proper support for proxies to HType (Chromium issue 448730).

        [turbofan] Fix truncation/representation sloppiness wrt. bool/bit (issue
        3812).

        Performance and stability improvements on all platforms.


2015-01-14: Version 4.2.3

        Performance and stability improvements on all platforms.


2015-01-14: Version 4.2.2

        Performance and stability improvements on all platforms.


2015-01-14: Version 4.2.1

        Map -0 to integer 0 for typed array constructors (Chromium issue
        447756).

        Introduce a gyp variable to control whether or not slow dchecks are on.

        Correctly setup the freelist of the coderange on Win64 (Chromium issue
        447555).

        Fast forward V8 to version 4.2.

        Remove "extra checks".

        Performance and stability improvements on all platforms.


2015-01-08: Version 3.32.7

        Correctly parse line ends for debugging (issue 2825).

        Fixed printing during DCE (issue 3679).

        Performance and stability improvements on all platforms.


2015-01-08: Version 3.32.6

        Performance and stability improvements on all platforms.


2015-01-08: Version 3.32.5

        Correct handling of exceptions occured during getting of exception stack
        trace (Chromium issue 444805).

        Fix bug in Runtime_CompileOptimized resulting from stack overflow
        (Chromium issue 446774).

        Turn on job-based recompilation (issue 3608).

        Performance and stability improvements on all platforms.


2015-01-07: Version 3.32.4

        Performance and stability improvements on all platforms.


2015-01-07: Version 3.32.3

        Performance and stability improvements on all platforms.


2015-01-07: Version 3.32.2

        Performance and stability improvements on all platforms.


2015-01-07: Version 3.32.1

        [turbofan] Don't crash when typing load from a Uint8ClampedArray
        (Chromium issue 446156).

        [turbofan] Truncation of Bit/Word8/16 to Word32 is a no-op (Chromium
        issue 445859).

        [x64] Rearrange code for OOB integer loads (Chromium issue 445858).

        Fix %NeverOptimizeFunction() intrinsic (Chromium issue 445732).

        [turbofan] Fix invalid bounds check with overflowing offset (Chromium
        issue 445267).

        [turbofan] Raise max virtual registers and call parameter limit (issue
        3786).

        Performance and stability improvements on all platforms.


2014-12-23: Version 3.31.74

        [turbofan] Turn DCHECK for fixed slot index into a CHECK (Chromium issue
        444681).

        Performance and stability improvements on all platforms.


2014-12-23: Version 3.31.73

        [turbofan] Fix missing ChangeUint32ToUint64 in lowering of LoadBuffer
        (Chromium issue 444695).

        Enable the embedder to specify what kind of context was disposed.

        Performance and stability improvements on all platforms.


2014-12-22: Version 3.31.72

        [turbofan] Correctify lowering of Uint8ClampedArray buffer access
        (Chromium issue 444508).

        Performance and stability improvements on all platforms.


2014-12-20: Version 3.31.71

        Performance and stability improvements on all platforms.


2014-12-20: Version 3.31.70

        Performance and stability improvements on all platforms.


2014-12-20: Version 3.31.69

        Performance and stability improvements on all platforms.


2014-12-19: Version 3.31.68

        [turbofan] Fix unsafe out-of-bounds check for checked loads/stores
        (Chromium issue 443744).

        Performance and stability improvements on all platforms.


2014-12-19: Version 3.31.67

        Performance and stability improvements on all platforms.


2014-12-19: Version 3.31.66

        Ship ES6 template literals (issue 3230).

        Performance and stability improvements on all platforms.


2014-12-18: Version 3.31.65

        ES6 template literals should not use legacy octal strings (issue 3736).

        Performance and stability improvements on all platforms.


2014-12-18: Version 3.31.64

        Fixed -fsanitize=float-cast-overflow problems (issue 3773).

        Performance and stability improvements on all platforms.


2014-12-18: Version 3.31.63

        ES6 computed property names (issue 3754).

        Performance and stability improvements on all platforms.


2014-12-17: Version 3.31.62

        Performance and stability improvements on all platforms.


2014-12-17: Version 3.31.61

        ES6: Update unscopables to match spec (issue 3632).

        ES6 computed property names (issue 3754).

        More -fsanitize=vptr fixes (Chromium issue 441099).

        [turbofan] Cache conversions inserted during typed lowering (issue
        3763).

        Performance and stability improvements on all platforms.


2014-12-16: Version 3.31.60

        Performance and stability improvements on all platforms.


2014-12-16: Version 3.31.59

        Performance and stability improvements on all platforms.


2014-12-16: Version 3.31.58

        Ship ES6 classes (issue 3330).

        ES6 computed property names (issue 3754).

        Performance and stability improvements on all platforms.


2014-12-12: Version 3.31.57

        Consistently use only one of virtual/OVERRIDE/FINAL (issue 3753).

        Performance and stability improvements on all platforms.


2014-12-12: Version 3.31.56

        Performance and stability improvements on all platforms.


2014-12-12: Version 3.31.55

        Performance and stability improvements on all platforms.


2014-12-11: Version 3.31.54

        Implement Array.from() (issue 3336).

        move v8_use_external_startup_data to standalone.gypi (Chromium issue
        421063).

        Performance and stability improvements on all platforms.


2014-12-11: Version 3.31.53

        Performance and stability improvements on all platforms.


2014-12-11: Version 3.31.52

        Ship ES6 block scoping (issue 2198).

        Optimize Object.seal and Object.preventExtensions (issue 3662, Chromium
        issue 115960).

        Add Array.prototype.includes (issue 3575).

        Performance and stability improvements on all platforms.


2014-12-10: Version 3.31.51

        [x64] Fix optimization for certain checked load/stores (Chromium issue
        439743).

        Performance and stability improvements on all platforms.


2014-12-09: Version 3.31.50

        Temporarily restore make dependencies.

        Performance and stability improvements on all platforms.


2014-12-09: Version 3.31.49

        Performance and stability improvements on all platforms.


2014-12-09: Version 3.31.48

        Performance and stability improvements on all platforms.


2014-12-09: Version 3.31.47

        Temporarily restore make dependencies.

        Performance and stability improvements on all platforms.


2014-12-08: Version 3.31.46

        Performance and stability improvements on all platforms.


2014-12-08: Version 3.31.45

        Update all DEPS to match chromium's DEPS at edb488e.

        Turn on DCHECKs and other debugging code if dcheck_always_on is 1 (issue
        3731).

        Optimize GetPrototype.

        Performance and stability improvements on all platforms.


2014-12-05: Version 3.31.44

        Performance and stability improvements on all platforms.


2014-12-04: Version 3.31.43

        ES6 template literals: Fix issue with template after rbrace (issue
        3734).

        Stage ES6 template literals (issue 3230).

        Performance and stability improvements on all platforms.


2014-12-04: Version 3.31.42

        Performance and stability improvements on all platforms.


2014-12-04: Version 3.31.41

        Simplify template literal raw string creation (issue 3710).

        Performance and stability improvements on all platforms.


2014-12-03: Version 3.31.40

        Performance and stability improvements on all platforms.


2014-12-03: Version 3.31.39

        Performance and stability improvements on all platforms.


2014-12-03: Version 3.31.38

        Stage ES6 classes and object literal extensions (issue 3330).

        Fixed environment handling for LFlooringDivI on ARM (Chromium issue
        437765).

        Add GetIdentityHash to v8::Name object API (Chromium issue 437416).

        Set V8_CC_GNU or V8_CC_MSVC for clang in gcc / cl mode (Chromium issue
        82385).

        Performance and stability improvements on all platforms.


2014-12-02: Version 3.31.37

        Performance and stability improvements on all platforms.


2014-12-02: Version 3.31.36

        Set V8_CC_GNU or V8_CC_MSVC for clang in gcc / cl mode (Chromium issue
        82385).

        Performance and stability improvements on all platforms.


2014-12-02: Version 3.31.35

        Performance and stability improvements on all platforms.


2014-12-01: Version 3.31.34

        Performance and stability improvements on all platforms.


2014-12-01: Version 3.31.33

        Performance and stability improvements on all platforms.


2014-12-01: Version 3.31.32

        Performance and stability improvements on all platforms.


2014-12-01: Version 3.31.31

        Performance and stability improvements on all platforms.


2014-11-29: Version 3.31.30

        Performance and stability improvements on all platforms.


2014-11-28: Version 3.31.29

        Stage @@toStringTag (--harmony-tostring).

        Performance and stability improvements on all platforms.


2014-11-28: Version 3.31.28

        Performance and stability improvements on all platforms.


2014-11-28: Version 3.31.27

        Ship harmony-strings.

        Performance and stability improvements on all platforms.


2014-11-28: Version 3.31.26

        Abort optimization in corner case (Chromium issue 436893).

        Performance and stability improvements on all platforms.


2014-11-26: Version 3.31.25

        Stage ES6 block scoping (issue 2198).

        Introduce legacy const slots in correct context (Chromium issue 410030).

        Performance and stability improvements on all platforms.


2014-11-26: Version 3.31.24

        Performance and stability improvements on all platforms.


2014-11-25: Version 3.31.23

        Performance and stability improvements on all platforms.


2014-11-25: Version 3.31.22

        Performance and stability improvements on all platforms.


2014-11-24: Version 3.31.21

        Performance and stability improvements on all platforms.


2014-11-24: Version 3.31.20

        Performance and stability improvements on all platforms.


2014-11-22: Version 3.31.19

        Performance and stability improvements on all platforms.


2014-11-21: Version 3.31.18

        Performance and stability improvements on all platforms.


2014-11-21: Version 3.31.17

        Performance and stability improvements on all platforms.


2014-11-21: Version 3.31.16

        Cache template literal callSiteObj (issue 3230).

        Rename String.prototype.contains to 'includes'.

        Reserve code range block for evacuation (Chromium issue 430118).

        Performance and stability improvements on all platforms.


2014-11-20: Version 3.31.15

        Rename String.prototype.contains to 'includes'.

        Performance and stability improvements on all platforms.


2014-11-19: Version 3.31.14

        Remove Weak{Map,Set}.prototype.clear.

        Performance and stability improvements on all platforms.


2014-11-19: Version 3.31.13

        Performance and stability improvements on all platforms.


2014-11-19: Version 3.31.12

        Classes: Expand test to cover strict runtime behavior (issue 3330).

        v8::String::Concat must not throw (Chromium issue 420240).

        Fix disabling all break points from within the debug event callback
        (Chromium issue 432493).

        Performance and stability improvements on all platforms.


2014-11-18: Version 3.31.11

        Performance and stability improvements on all platforms.


2014-11-17: Version 3.31.10

        Performance and stability improvements on all platforms.


2014-11-17: Version 3.31.9

        Expose internal properties of map/set iterators via mirrors.

        Performance and stability improvements on all platforms.


2014-11-17: Version 3.31.8

        Performance and stability improvements on all platforms.


2014-11-15: Version 3.31.7

        Classes: Add support for stepping through default constructors (issue
        3674).

        Performance and stability improvements on all platforms.


2014-11-14: Version 3.31.6

        Fix desugaring of let bindings in for loops to handle continue properly
        (issue 3683).

        Performance and stability improvements on all platforms.


2014-11-14: Version 3.31.5

        Classes: Implement correct name binding (issue 3330).

        Performance and stability improvements on all platforms.


2014-11-14: Version 3.31.4

        Performance and stability improvements on all platforms.


2014-11-14: Version 3.31.3

        Classes: Cleanup default constructor flag.

        Soft fail for invalid cache data.

        Implement .of() on typed arrays (issue 3578).

        Performance and stability improvements on all platforms.


2014-11-13: Version 3.31.2

        MIPS: Leaving a generator via an exception causes it to close (issue
        3096).

        MIPS: ES6: Add support for super in object literals (issue 3571).

        Increase the target new space size to the max new space size (issue
        3626).

        Leaving a generator via an exception causes it to close (issue 3096).

        Correctly compute line numbers in functions from the function
        constructor (Chromium issue 109362).

        Rename v8::Exception::GetMessage to CreateMessage.

        Classes: Add support for arguments in default constructor (issue 3672).

        ES6: Add support for super in object literals (issue 3571).

        Performance and stability improvements on all platforms.


2014-11-12: Version 3.31.1

        Fix has_constant_parameter_count() confusion in LReturn (Chromium issue
        431602).

        Performance and stability improvements on all platforms.


2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242
2014-11-05: Version 3.30.33

        `1..isPrototypeOf.call(null)` should return false, not throw TypeError
        (issue 3483).

        Refactor ObjectGetOwnPropertyKeys to accept bitmask rather than boolean
        (issue 3549).

        Add debug mirror support for ES6 Map/Set iterators (Chromium issue
        427868).

        Performance and stability improvements on all platforms.


2014-11-04: Version 3.30.30

        Performance and stability improvements on all platforms.


2014-11-02: Version 3.30.27

        Performance and stability improvements on all platforms.


2014-11-02: Version 3.30.26

        Performance and stability improvements on all platforms.


2014-11-01: Version 3.30.25

        Performance and stability improvements on all platforms.


2014-11-01: Version 3.30.24

        Ensure we don't try to inline raw access to indexed interceptor
        receivers (Chromium issue 419220).

        Performance and stability improvements on all platforms.


2014-10-31: Version 3.30.23

        Introduce v8::Exception::GetMessage to find location of an error object
        (Chromium issue 427954).

        Performance and stability improvements on all platforms.


2014-10-30: Version 3.30.22

        MIPS: Classes: Add super support in methods and accessors (issue 3330).

        Classes: Add super support in methods and accessors (issue 3330).

        Performance and stability improvements on all platforms.


2014-10-29: Version 3.30.21

        MIPS: Classes: Add basic support for properties (issue 3330).

        Classes: Add more tests for prototype edge cases (Chromium issue 3655).

        Classes: Add test for method prototype (issue 3330).

        Get stack trace for uncaught exceptions/promise rejections from the
        simple stack when available.

        Classes: Add basic support for properties (issue 3330).

        Allow duplicate property names in classes (issue 3570).

        Windows: use SystemTimeToTzSpecificLocalTime instead of localtime_s
        (Chromium issue 417640).

        Performance and stability improvements on all platforms.


2014-10-28: Version 3.30.20

        Performance and stability improvements on all platforms.


2014-10-27: Version 3.30.19

        Check string literals with escapes in PreParserTraits::GetSymbol()
        (issue 3606).

        only define ARRAYSIZE_UNSAFE for NaCl builds (Chromium issue 405225).

        Performance and stability improvements on all platforms.


2014-10-24: Version 3.30.18

        Narrow cases where Sparse/Smart versions of Array methods are used
        (issues 2615, 3612, 3621).

        Shrink new space in idle notification (Chromium issue 424423).

        Performance and stability improvements on all platforms.


2014-10-23: Version 3.30.17

        ARM64: Fix stack manipulation (Chromium issue 425585).

        Speed up creation of Objects whose prototype has dictionary elements
        (Chromium issue 422754).

        Enable libstdc++ debug mode in debug builds (issue 3638).

        Performance and stability improvements on all platforms.


2014-10-22: Version 3.30.16

        Remove v8stdint.h, it doesn't serve a purpose anymore.

        Performance and stability improvements on all platforms.


2014-10-21: Version 3.30.15

        Avoid the Marsaglia effect in 3D (Chromium issue 423311).

        Performance and stability improvements on all platforms.


2014-10-20: Version 3.30.14

        Performance and stability improvements on all platforms.


2014-10-17: Version 3.30.13

        Don't expose Array.prototype.values as it breaks webcompat (Chromium
        issue 409858).

        Fix break location calculation (Chromium issue 419663).

        Enable libstdc++ debug mode in debug builds (issue 3638).

        Performance and stability improvements on all platforms.


2014-10-17: Version 3.30.12

        Implement .forEach() on typed arrays (issue 3578).

        Introduce v8::Exception::GetStackTrace API method.

        Remove SmartMove, bringing Array methods further into spec compliance
        (issue 2615).

        Convert argument toObject() in Object.getOwnPropertyNames/Descriptors
        (issue 3443).

        Performance and stability improvements on all platforms.


2014-10-15: Version 3.30.11

        Array.prototype.{every, filter, find, findIndex, forEach, map, some}:
        Use fresh primitive wrapper for calls (issue 3536).

        Correctly expand literal buffer for surrogate pairs (Chromium issue
        423212).

        Performance and stability improvements on all platforms.


2014-10-15: Version 3.30.10

        Squeeze the layout of various AST node types (Chromium issue 417697).

        Performance and stability improvements on all platforms.


2014-10-14: Version 3.30.9

        Performance and stability improvements on all platforms.


2014-10-13: Version 3.30.8

        AST nodes have at most one bailout/typefeedback ID now, saving lots of
        memory (Chromium issue 417697).

        Allow identifier code points from supplementary multilingual planes
        (issue 3617).

        Performance and stability improvements on all platforms.


2014-10-10: Version 3.30.7

        Fix computation of UTC time from local time at DST change points (issue
        3116, Chromium issues 415424, 417640).

        Convert `obj` ToObject in Object.keys() (issue 3587).

        Performance and stability improvements on all platforms.


2014-10-09: Version 3.30.6

        Update unicode to 7.0.0 (issue 2892).

        Classes: Add support for toString (issue 3330).

        Don't enable WPO on Win64 and require Server 2003 / x64 for win64
        (Chromium issue 421363).

        Performance and stability improvements on all platforms.


2014-10-08: Version 3.30.5

        Performance and stability improvements on all platforms.


2014-10-08: Version 3.30.4

        This uses a runtime function to set up the the constructor and its
        prototype (issue 3330).

        Remove PersistentBase::ClearAndLeak.

        Squeeze the layout of variable proxy nodes (Chromium issue 417697).

        Add MonotonicallyIncreasingTime to V8 Platform (Chromium issue 417668).

        Fix representation of HLoadRoot (Chromium issue 419036).

        Performance and stability improvements on all platforms.


2014-10-03: Version 3.30.3

        Removed the Isolate* field from literal nodes (Chromium issue 417697).

        Squeeze the layout of expression nodes a bit (Chromium issue 417697).

        Merged FeedbackSlotInterface into AstNode, removing the need for a 2nd
        vtable (Chromium issue 417697).

        Extend CPU profiler with mapping ticks to source lines.

        Remove support for parallel sweeping.

        Introduce v8::Object::GetIsolate().

        Performance and stability improvements on all platforms.


2014-10-02: Version 3.30.2

        Fix Hydrogen's BuildStore() (Chromium issue 417508).

        Move unit tests to test/unittests (issue 3489).

        Changes to ALLOW_UNUSED to match upcoming changes to the Chromium trunk:
        * Eliminate usage of ALLOW_UNUSED to define COMPILE_ASSERT and just use
        static_assert() in all cases now that all platforms build with C++11. *
        Convert remaining uses of ALLOW_UNUSED to ALLOW_UNUSED_TYPE to match how
        Chromium will be splitting this functionality.  (In Chromium we'll have
        both   ALLOW_UNUSED_TYPE and ALLOW_UNUSED_LOCAL, which have different
        syntax to   enable us to use these with MSVC.) (Chromium issue 81439).

        Performance and stability improvements on all platforms.


2014-10-01: Version 3.30.1

        Introduce PromiseRejectCallback (issue 3093).

        ES6: Implement object literal property shorthand (issue 3584).

        Performance and stability improvements on all platforms.


2014-09-30: Version 3.29.93

        Add a getter for the address and size of the code range to the pulic API
        (issue 3598).

        Convert `obj` ToObject in Object.keys() (issue 3587).

        Performance and stability improvements on all platforms.


2014-09-29: Version 3.29.92

        Performance and stability improvements on all platforms.


2014-09-26: Version 3.29.91

        Performance and stability improvements on all platforms.


2014-09-25: Version 3.29.88

        Performance and stability improvements on all platforms.


2014-09-24: Version 3.29.87

        Preserve message when rethrowing exception (issue 3583).

        Fix escaped index JSON parsing (Chromium issue 416449).

        Performance and stability improvements on all platforms.


2014-09-23: Version 3.29.84

        Performance and stability improvements on all platforms.


2014-09-23: Version 3.29.83

        Performance and stability improvements on all platforms.


2014-09-23: Version 3.29.82

        Fix escaped index JSON parsing (Chromium issue 416449).

        Performance and stability improvements on all platforms.


2014-09-17: Version 3.29.70

        Enable ES6 generators (issue 2355).

        Fixed int vs. uintptr_t confusion (plus some cleanup on the way) (issue
        3556).

        Move configuration of ResourceConstraints to Isolate construction.

        Performance and stability improvements on all platforms.


2014-09-16: Version 3.29.66

        Currently, a new isolate is created in an uninitialized state, and
        several API methods will automatically initialize it. During this
        uninitialized state, code event handlers and function entry handlers can
        be attached to the isolate.

        Performance and stability improvements on all platforms.


2014-09-15: Version 3.29.64

        ES6: String(symbol) should work like symbol.toString (issue 3554).

        Arrow functions: Cleanup handling of the prototype property (issue
        2700).

        Remove V8_HOST_CAN_READ_UNALIGNED and its uses (Chromium issue 412967).

        Fix Smi vs. HeapObject confusion in HConstants (Chromium issue 412215).

        Performance and stability improvements on all platforms.


2014-09-12: Version 3.29.59

        Do not use wide reads in CopyCharsUnsigned (Chromium issue 412967).

        Fix inaccurate type condition in Hydrogen (Chromium issue 412210).

        Fix crash in ScriptDebugServer::wrapCallFrames (Chromium issue 411196).

        Performance and stability improvements on all platforms.


2014-09-11: Version 3.29.57

        ES6: Add support for method shorthand in object literals (issue 3516).

        Unbreak FreeBSD build (hopefully) (issue 3548).

        Performance and stability improvements on all platforms.


2014-09-09: Version 3.29.53

        Performance and stability improvements on all platforms.


2014-09-08: Version 3.29.50

        Allocate a new empty number dictionary when resetting elements (Chromium
        issue 410332).

        Performance and stability improvements on all platforms.


2014-09-05: Version 3.29.43

        Enforce correct number comparisons when inlining Array.indexOf (Chromium
        issue 407946).

        Performance and stability improvements on all platforms.


2014-09-04: Version 3.29.41

        Performance and stability improvements on all platforms.


2014-09-03: Version 3.29.40

        Use correct receiver for DOM accessors on the prototype chain (issue
        3538).

        Performance and stability improvements on all platforms.


2014-09-02: Version 3.29.38

        Do not clear weak monomorphic IC after context disposal (Chromium issue
        404020).

        Turn on job-based sweeping (issue 3104).

        Performance and stability improvements on all platforms.


2014-09-01: Version 3.29.35

        Performance and stability improvements on all platforms.


2014-08-29: Version 3.29.29

        Performance and stability improvements on all platforms.


2014-08-28: Version 3.29.27

        Performance and stability improvements on all platforms.


2014-08-28: Version 3.29.25

        Performance and stability improvements on all platforms.


2014-08-28: Version 3.29.24

        Tweaks to generate XP-compatible .exes (Chromium issue 407517).

        Performance and stability improvements on all platforms.


2014-08-28: Version 3.29.23

        Performance and stability improvements on all platforms.


2014-08-27: Version 3.29.20

        Handle empty allocation list in CodeRange properly (issue 3540, Chromium
        issue 407566).

        Fixed inlining of constant values (issue 3529).

        Performance and stability improvements on all platforms.


2014-08-25: Version 3.29.17

        Performance and stability improvements on all platforms.


2014-08-24: Version 3.29.16

        Fix issue with numeric property names (issue 3507).

        Add back the duplicate property checker (issue 3498).

        Performance and stability improvements on all platforms.


2014-08-22: Version 3.29.14

        Don't inline Array.shift() if receiver map is not extensible (Chromium
        issue 405517).

        Performance and stability improvements on all platforms.


2014-08-21: Version 3.29.11

        Refactor ParseObjectLiteral.

        Support symbol-named properties in API (issue 3394).

        Suppress test262 test that tests duplicate properties.

        ES6: Duplicate properties are no longer an error (issue 3498).

        Expose function CheckDebugBreak in the debugger api.

        Remove RegExp.$input (issue 3486).

        Performance and stability improvements on all platforms.


2014-08-21: Version 3.29.10

        ES6: Make sure we do not store -0 as the key in Map/Set (issue 3515).

        Remove removed flags from tests.

        Expose well-known Symbols to C++ API (Chromium issue 341423).

        Implement ES6 Array.of() (issue 3427).

        Performance and stability improvements on all platforms.


2014-08-20: Version 3.29.9

        Correctly handle holes when concat()ing double arrays (Chromium issue
        403409).

        [turbofan] Refactor the InstructionSelector tests (issue 3489).

        ES6: Make Map/Set constructors support iterable values (issue 3508).

        WeakMap/WeakSet: Add test for non object keys (issue 3399).

        Performance and stability improvements on all platforms.


2014-08-12: Version 3.28.71

        ToNumber(Symbol) should throw TypeError (issue 3499).

        Performance and stability improvements on all platforms.


2014-08-11: Version 3.28.69

        Performance and stability improvements on all platforms.


2014-08-09: Version 3.28.65

        Performance and stability improvements on all platforms.


2014-08-08: Version 3.28.64

        ES6: Implement WeakMap and WeakSet constructor logic (issue 3399).

        Enable ES6 unscopables (issue 3401).

        Turn on harmony_unscopables for es_staging (issue 3401).

        Remove proxies from --harmony switch for M38, because problems.

        Reland "Add initial support for compiler unit tests using GTest/GMock."
        (issue 3489).

        Enable ES6 iteration by default (issue 2214).

        Performance and stability improvements on all platforms.


2014-08-07: Version 3.28.62

        Only escape U+0022 in argument values of `String.prototype` HTML methods
        (issue 2217).

        Update webkit test for expected own properties.

        This implements unscopables (issue 3401).

        Add `CheckObjectCoercible` for the `String.prototype` HTML methods
        (issue 2218).

        Add initial support for compiler unit tests using GTest/GMock (issue
        3489).

        Trigger exception debug events on Promise reject (Chromium issue
        393913).

        Refactor unit tests for the base library to use GTest (issue 3489).

        Performance and stability improvements on all platforms.


2014-08-06: Version 3.28.60

        Enable ES6 Map and Set by default (issue 1622).

        Performance and stability improvements on all platforms.


2014-08-06: Version 3.28.59

        Removed GetConstructor from the API. Instead either get the
        "constructor" property stored in the prototype, or keep a side-table.

        Enable ES6 Symbols by default (issue 2158).

        Performance and stability improvements on all platforms.


2014-08-05: Version 3.28.57

        Add dependencies on gtest and gmock.

        Performance and stability improvements on all platforms.


2014-08-04: Version 3.28.54

        Performance and stability improvements on all platforms.


2014-08-01: Version 3.28.53

        Performance and stability improvements on all platforms.


2014-07-31: Version 3.28.52

        Performance and stability improvements on all platforms.


2014-07-31: Version 3.28.51

        Drop deprecated memory related notification API (Chromium issue 397026).

        Performance and stability improvements on all platforms.


2014-07-31: Version 3.28.50

        Use emergency memory in the case of out of memory during evacuation
        (Chromium issue 395314).

        Performance and stability improvements on all platforms.


2014-07-30: Version 3.28.48

        Fix Object.freeze with field type tracking. Keep the descriptor properly
        intact while update the field type (issue 3458).

        Performance and stability improvements on all platforms.


2014-07-29: Version 3.28.45

        Performance and stability improvements on all platforms.


2014-07-28: Version 3.28.43

        Performance and stability improvements on all platforms.


2014-07-25: Version 3.28.38

        Fix issue with setters and their holders in accessors.cc (Chromium issue
        3462).

        Introduce more debug events for promises (issue 3093).

        Move gc notifications from V8 to Isolate and make idle hint mandatory
        (Chromium issue 397026).

        The accessors should get the value from the holder and not from this
        (issue 3461).

        Performance and stability improvements on all platforms.


2014-07-24: Version 3.28.35

        Rebaseline/update the intl tests with ICU 52 (issue 3454).

        Expose the content of Sets and WeakSets through SetMirror (issue 3093).

        Performance and stability improvements on all platforms.


2014-07-23: Version 3.28.32

        Update ICU to 5.2 (matching chromium) (issue 3452).

        Performance and stability improvements on all platforms.


2014-07-22: Version 3.28.31

        Remove harmony-typeof.

        Implement String.prototype.codePointAt and String.fromCodePoint (issue
        2840).

        Performance and stability improvements on all platforms.


2014-07-21: Version 3.28.30

        Performance and stability improvements on all platforms.


2014-07-21: Version 3.28.29

        Performance and stability improvements on all platforms.


2014-07-18: Version 3.28.28

        Performance and stability improvements on all platforms.


2014-07-17: Version 3.28.26

        Ship ES6 Math functions (issue 2938).

        Make ToPrimitive throw on symbol wrappers (issue 3442).

        Performance and stability improvements on all platforms.


2014-07-16: Version 3.28.25

        Performance and stability improvements on all platforms.


2014-07-16: Version 3.28.24

        Removed some copy-n-paste from StackFrame::Foo API entries (issue 3436).

        Performance and stability improvements on all platforms.


2014-07-15: Version 3.28.23

        Fix error message about read-only symbol properties (issue 3441).

        Include symbol properties in Object.{create,defineProperties} (issue
        3440).

        Performance and stability improvements on all platforms.


2014-07-14: Version 3.28.22

        Performance and stability improvements on all platforms.


2014-07-11: Version 3.28.21

        Make `let` usable as an identifier in ES6 sloppy mode (issue 2198).

        Support ES6 Map and Set in heap profiler (issue 3368).

        Performance and stability improvements on all platforms.


2014-07-10: Version 3.28.20

        Remove deprecate counter/histogram methods.

        Fixed printing of external references (Chromium issue 392068).

        Fix several issues with ES6 redeclaration checks (issue 3426).

        Performance and stability improvements on all platforms.


2014-07-09: Version 3.28.19

        Performance and stability improvements on all platforms.


2014-07-09: Version 3.28.18

        Reland "Postpone termination exceptions in debug scope." (issue 3408).

        Performance and stability improvements on all platforms.


2014-07-08: Version 3.28.17

        MIPS: Fix computed properties on object literals with a double as
        propertyname (Chromium issue 390732).

        Performance and stability improvements on all platforms.


2014-07-08: Version 3.28.16

        Fix computed properties on object literals with a double as propertyname
        (Chromium issue 390732).

        Avoid brittle use of .bind in Promise.all (issue 3420).

        Performance and stability improvements on all platforms.


2014-07-07: Version 3.28.15

        Remove a bunch of Isolate::UncheckedCurrent calls.

        Performance and stability improvements on all platforms.


2014-07-07: Version 3.28.14

        Use the HeapObjectIterator to scan-on-scavenge map pages (Chromium issue
        390732).

        Introduce debug events for Microtask queue (Chromium issue 272416).

        Split out libplatform into a separate libary.

        Add clang-format to presubmit checks.

        Stack traces exposed to Javascript should omit extensions (issue 311).

        Remove deprecated v8::Context::HasOutOfMemoryException.

        Postpone termination exceptions in debug scope (issue 3408).

        Performance and stability improvements on all platforms.


2014-07-04: Version 3.28.13

        Rollback to r22134.


2014-07-04: Version 3.28.12

        Use the HeapObjectIterator to scan-on-scavenge map pages (Chromium issue
        390732).

        Introduce debug events for Microtask queue (Chromium issue 272416).

        Performance and stability improvements on all platforms.


2014-07-03: Version 3.28.11

        Split out libplatform into a separate libary.

        Performance and stability improvements on all platforms.


2014-07-03: Version 3.28.10

        Add clang-format to presubmit checks.

        Stack traces exposed to Javascript should omit extensions (issue 311).

        Remove deprecated v8::Context::HasOutOfMemoryException.

        Postpone termination exceptions in debug scope (issue 3408).

        Performance and stability improvements on all platforms.


2014-07-02: Version 3.28.9

        Make freeze & friends ignore private properties (issue 3419).

        Introduce a builddeps make target (issue 3418).

        Performance and stability improvements on all platforms.


2014-07-01: Version 3.28.8

        Remove static initializer from isolate.

        ES6: Add missing Set.prototype.keys function (issue 3411).

        Introduce debug events for promises (issue 3093).

        Performance and stability improvements on all platforms.


2014-06-30: Version 3.28.7

        Performance and stability improvements on all platforms.


2014-06-30: Version 3.28.6

        Unbreak "os" stuff in shared d8 builds (issue 3407).

        Performance and stability improvements on all platforms.


2014-06-26: Version 3.28.4

        Compile optimized code with active debugger but no break points
        (Chromium issue 386492).

        Optimize Map/Set.prototype.forEach.

        Collect garbage with kReduceMemoryFootprintMask in IdleNotification
        (Chromium issue 350720).

        Performance and stability improvements on all platforms.


2014-06-26: Version 3.28.3

        Grow heap slower if GC freed many global handles (Chromium issue
        263503).

        Performance and stability improvements on all platforms.


2014-06-25: Version 3.28.2

        Remove bogus assertions in HCompareObjectEqAndBranch (Chromium issue
        387636).

        Do not eagerly update allow_osr_at_loop_nesting_level (Chromium issue
        387599).

        Set host_arch to ia32 on machines with a 32bit userland but a 64bit
        kernel (Chromium issue 368384).

        Map/Set: Implement constructor parameter handling (issue 3398).

        Performance and stability improvements on all platforms.


2014-06-24: Version 3.28.1

        Support LiveEdit on Arm64 (Chromium issue 368580).

        Run JS micro tasks in the appropriate context (Chromium issue 385349).

        Add a use counter API.

        Set host_arch to ia32 on machines with a 32bit userland but a 64bit
        kernel.

        Performance and stability improvements on all platforms.


2014-06-23: Version 3.28.0

        MIPS: Support LiveEdit (Chromium issue 368580).

        Array.concat: properly go to dictionary mode when required (Chromium
        issue 387031).

        Support LiveEdit on ARM (Chromium issue 368580).

        Performance and stability improvements on all platforms.


2014-06-18: Version 3.27.34

        Reduce number of writes to DependentCode array when inserting dependent
        IC (Chromium issue 305878).

        Performance and stability improvements on all platforms.


2014-06-17: Version 3.27.33

        Do GC if CodeRange fails to allocate a block (Chromium issue 305878).

        Throw syntax error when a getter/setter has the wrong number of params
        (issue 3371).

        Performance and stability improvements on all platforms.


2014-06-17: Version 3.27.32

        Performance and stability improvements on all platforms.


2014-06-16: Version 3.27.31

        Version fix.


2014-06-16: Version 3.27.30

        Fix representation of Phis for mutable-heapnumber-in-object-literal
        properties (issue 3392).

        Performance and stability improvements on all platforms.


2014-06-16: Version 3.27.29

        Emulate MLS on pre-ARMv6T2. Cleaned up thumbee vs. thumb2 confusion.

        X87: Fixed flooring division by a power of 2, once again.. (issue 3259).

        Fixed undefined behavior in RNG (Chromium issue 377790).

        Performance and stability improvements on all platforms.


2014-06-13: Version 3.27.28

        Add v8::Promise::Then (Chromium issue 371288).

        Performance and stability improvements on all platforms.


2014-06-12: Version 3.27.27

        Fix detection of VFP3D16 on Galaxy Tab 10.1 (issue 3387).

        Performance and stability improvements on all platforms.


2014-06-12: Version 3.27.26

        MIPS: Fixed flooring division by a power of 2, once again.. (issue
        3259).

        Fixed flooring division by a power of 2, once again.. (issue 3259).

        Fix unsigned comparisons (issue 3380).

        Performance and stability improvements on all platforms.


2014-06-11: Version 3.27.25

        Performance and stability improvements on all platforms.


2014-06-11: Version 3.27.24

        Fix invalid attributes when generalizing because of incompatible map
        change (Chromium issue 382143).

        Fix missing smi check in inlined indexOf/lastIndexOf (Chromium issue
        382513).

        Performance and stability improvements on all platforms.


2014-06-06: Version 3.27.23

        Performance and stability improvements on all platforms.


2014-06-06: Version 3.27.22

        Performance and stability improvements on all platforms.


2014-06-06: Version 3.27.21

        Turn on harmony_collections for es_staging (issue 1622).

        Do not make heap iterable eagerly (Chromium issue 379740).

        Performance and stability improvements on all platforms.


2014-06-05: Version 3.27.20

        Fix invalid loop condition for Array.lastIndexOf() (Chromium issue
        380512).

        Add API support for passing a C++ function as a microtask callback.

        Performance and stability improvements on all platforms.


2014-06-04: Version 3.27.19

        Split Put into Put and Remove.

        ES6: Add support for values/keys/entries for Map and Set (issue 1793).

        Performance and stability improvements on all platforms.


2014-06-03: Version 3.27.18

        Remove PROHIBITS_OVERWRITING as it is subsumed by non-configurable
        properties.

        Performance and stability improvements on all platforms.


2014-06-02: Version 3.27.17

        BuildNumberToString: Check for undefined keys in the cache (Chromium
        issue 368114).

        HRor and HSar can deoptimize (issue 3359).

        Simplify, speed-up correct-context ObjectObserve calls.

        Performance and stability improvements on all platforms.


2014-05-29: Version 3.27.16

        Allow microtasks to throw exceptions and handle them gracefully
        (Chromium issue 371566).

        Performance and stability improvements on all platforms.


2014-05-28: Version 3.27.15

        Performance and stability improvements on all platforms.


2014-05-27: Version 3.27.14

        Reland "Customized support for feedback on calls to Array." and follow-
        up fixes (Chromium issues 377198, 377290).

        Performance and stability improvements on all platforms.


2014-05-26: Version 3.27.13

        Performance and stability improvements on all platforms.


2014-05-26: Version 3.27.12

        Check for cached transition to ExternalArray elements kind (issue 3337).

        Support ES6 weak collections in heap profiler (Chromium issue 376196).

        Performance and stability improvements on all platforms.


2014-05-23: Version 3.27.11

        Add support for ES6 Symbol in heap profiler (Chromium issue 376194).

        Performance and stability improvements on all platforms.


2014-05-22: Version 3.27.10

        Implement Mirror object for Symbols (issue 3290).

        Allow debugger to step into Map and Set forEach callbacks (issue 3341).

        Fix ArrayShift hydrogen support (Chromium issue 374838).

        Use SameValueZero for Map and Set (issue 1622).

        Array Iterator next should check for own property.

        Performance and stability improvements on all platforms.


2014-05-21: Version 3.27.9

        Disable ArrayShift hydrogen support (Chromium issue 374838).

        ES6 Map/Set iterators/forEach improvements (issue 1793).

        Performance and stability improvements on all platforms.


2014-05-20: Version 3.27.8

        Move microtask queueing logic from JavaScript to C++.

        Partial revert of "Next bunch of fixes for check elimination" (Chromium
        issue 372173).

        Performance and stability improvements on all platforms.


3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300
2014-05-19: Version 3.27.7

        Performance and stability improvements on all platforms.


2014-05-19: Version 3.27.6

        Performance and stability improvements on all platforms.


2014-05-16: Version 3.27.5

        Performance and stability improvements on all platforms.


2014-05-15: Version 3.27.4

        Drop thenable coercion cache (Chromium issue 372788).

        Skip write barriers when updating the weak hash table (Chromium issue
        359401).

        Performance and stability improvements on all platforms.


2014-05-14: Version 3.27.3

        Performance and stability improvements on all platforms.


2014-05-13: Version 3.27.2

        Harden %SetIsObserved with RUNTIME_ASSERTs (Chromium issue 371782).

        Drop unused static microtask API.

        Introduce an api to query the microtask autorun state of an isolate.

        Performance and stability improvements on all platforms.


2014-05-12: Version 3.27.1

        Object.observe: avoid accessing acceptList properties more than once
        (issue 3315).

        Array Iterator prototype should not have a constructor (issue 3293).

        Fix typos in unit test for Array.prototype.fill().

        Shorten autogenerated error message for functions only (issue 3019,
        Chromium issue 331971).

        Reland "Removed default Isolate." (Chromium issue 359977).

        Performance and stability improvements on all platforms.


3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484
2014-05-09: Version 3.27.0

        Unbreak samples and tools.

        Performance and stability improvements on all platforms.


2014-05-08: Version 3.26.33

        Removed default Isolate (Chromium issue 359977).

        Performance and stability improvements on all platforms.


2014-05-07: Version 3.26.32

        Performance and stability improvements on all platforms.


2014-05-06: Version 3.26.31

        Add a basic gn file for V8.

        Performance and stability improvements on all platforms.


2014-05-05: Version 3.26.30

        Introduce a microtask suppression scope and move microtask methods to
        isolate (Chromium issue 369503).

        Re-enable Object.observe and add enforcement for security invariants.

        Move cache line size calculation directly into CPU::FlushICache
        (Chromium issue 359977).

        Generation of our home-grown memmove doesn't depend on serializer state
        anymore (Chromium issue 359977).

        Fix |RunMicrotasks()| leaking reference to the last context being run
        on.

        Object.defineProperty shouldn't be a hint that we're constructing a
        dictionary (Chromium issue 362870).

        Performance and stability improvements on all platforms.


2014-05-01: Version 3.26.29

        Added a Isolate* parameter to Serializer::enabled() (Chromium issue
        359977).

        ES6: Add support for Array.prototype.fill() (issue 3273).

        Performance and stability improvements on all platforms.


2014-04-29: Version 3.26.28

        PromiseThen should ignore non-function parameters (Chromium issue
        347455).

        Performance and stability improvements on all platforms.


2014-04-29: Version 3.26.27

        Error stack getter should not overwrite itself with a data property
        (issue 3294).

        Performance and stability improvements on all platforms.


2014-04-28: Version 3.26.26

        Expose promise value through promise mirror (issue 3093).

        Simplified CPU/CpuFeatures a bit (Chromium issue 359977).

        Performance and stability improvements on all platforms.


2014-04-28: Version 3.26.25

        Add timestamps to CPU profile samples (Chromium issue 363976).

        Expose promise status through promise mirror (issue 3093).

        Remove static CallCompletedCallback handlers.

        Added an Isolate* field to NoTrackDoubleFieldsForSerializerScope,
        PlatformFeatureScope and BinaryOpIC::State (Chromium issue 359977).

        Trigger debug event on not yet caught exception in promises (issue
        3093).

        Unbreak vtunejit=on (issue 3288).

        Performance and stability improvements on all platforms.


2014-04-25: Version 3.26.24

        MIPS: CodeStubs contain their corresponding Isolate* now. (part 2)
        (Chromium issue 359977).

        MIPS: CodeStubs contain their corresponding Isolate* now. (part 1)
        (Chromium issue 359977).

        CodeStubs contain their corresponding Isolate* now. (part 2) (Chromium
        issue 359977).

        Make DescriptorArray::IsMoreGeneralThan() and DescriptorArray::Merge()
        compatible again (Chromium issue 365172).

        CodeStubs contain their corresponding Isolate* now. (part 1) (Chromium
        issue 359977).

        Performance and stability improvements on all platforms.


2014-04-24: Version 3.26.23

        Performance and stability improvements on all platforms.


2014-04-23: Version 3.26.22

        Disable field type tracking by default (Chromium issue 365172).

        Performance and stability improvements on all platforms.


2014-04-23: Version 3.26.21

        Context-allocate all parameters in generators (issue 3280).

        Simplify v8/Isolate teardown (Chromium issue 359977).

        Performance and stability improvements on all platforms.


2014-04-21: Version 3.26.20

        ES6: Add support for Map/Set forEach (Chromium issues 1793, 2323).

        Performance and stability improvements on all platforms.


2014-04-18: Version 3.26.19

        ES6: Add support for Map/Set forEach (Chromium issues 1793, 2323).

        Performance and stability improvements on all platforms.


2014-04-17: Version 3.26.18

        Removed Isolate::EnterDefaultIsolate (Chromium issue 359977).

        Performance and stability improvements on all platforms.


2014-04-16: Version 3.26.17

        Clear invalid field maps in PropertyAccessInfo (Chromium issue 363956).

        ES6: Add support for Map/Set forEach (Chromium issues 1793, 2323).

        Performance and stability improvements on all platforms.


2014-04-16: Version 3.26.16

        Removed EnterIsolateIfNeeded and a soon-to-be-useless assertion
        (Chromium issue 359977).

        Removed GetDefaultIsolate{Debugger,ForLocking,StackGuard} (Chromium
        issue 359977).

        Performance and stability improvements on all platforms.


3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726
2014-04-15: Version 3.26.15

        Fix result of LCodeGen::DoWrapReceiver for strict functions and builtins
        (Chromium issue 362128).

        Performance and stability improvements on all platforms.


2014-04-15: Version 3.26.14

        Performance and stability improvements on all platforms.


2014-04-14: Version 3.26.13

        Make maps in monomorphic IC stubs weak (issue 2073).

        x64: Make sure that the upper half of a 64bit register contains 0 for
        int32 values (Chromium issue 360611).

        Performance and stability improvements on all platforms.


2014-04-11: Version 3.26.12

        Do not use ranges after range analysis (Chromium issue 361608).

        Performance and stability improvements on all platforms.


2014-04-10: Version 3.26.11

        Performance and stability improvements on all platforms.


2014-04-10: Version 3.26.10

        Allow the embedder to pass the virtual memory limit to v8.

        Performance and stability improvements on all platforms.


2014-04-09: Version 3.26.9

        Fix invalid local property lookup for transitions (Chromium issue
        361025).

        MIPS: Fixed flooring division by -1 (issue 3259).

        Fixed flooring division by -1 on ARM (issue 3259).

        Make `String.prototype.contains` throw when passing a regular expression
        (issue 3261).

        Performance and stability improvements on all platforms.


2014-04-08: Version 3.26.8

        Yet another regression test for range analysis (issue 3204).

        Performance and stability improvements on all platforms.


2014-04-07: Version 3.26.7

        Performance and stability improvements on all platforms.


2014-04-04: Version 3.26.6

        Performance and stability improvements on all platforms.


2014-04-03: Version 3.26.5

        Performance and stability improvements on all platforms.


2014-04-03: Version 3.26.4

        Make stray 'return' an early error.

        Show references from weak containers as weak in heap snapshots (Chromium
        issue 356590).

        Make invalid LHSs that are calls late errors (Chromium issue 358346).

        Performance and stability improvements on all platforms.


2014-04-02: Version 3.26.3

        Support typed arrays in IsMoreGeneralElementsKindTransition (Chromium
        issue 357054).

        Remove debugger_auto_break flag.

        Store i18n meta data in hidden symbols instead of js accessible
        properties (Chromium issue 354967).

        Performance and stability improvements on all platforms.


2014-04-01: Version 3.26.2

        Performance and stability improvements on all platforms.


2014-04-01: Version 3.26.1

        Fix Type::Intersect to skip uninhabited bitsets (Chromium issue 357330).

        Fix PrepareKeyedOperand on arm (Chromium issue 358057).

        Performance and stability improvements on all platforms.


2014-03-31: Version 3.26.0

        Deprecate Start/StopCpuProfiling methods (issue 3213).

        Don't crash if we get a timezone change notification on an uninitialized
        isolate (Chromium issue 357362).

        Performance and stability improvements on all platforms.


2014-03-28: Version 3.25.30

        NativeContext::map_cache reference should be strong in heap snapshots
        (Chromium issue 357060).

        Performance and stability improvements on all platforms.


2014-03-27: Version 3.25.29

        Performance and stability improvements on all platforms.


2014-03-27: Version 3.25.28

        Performance and stability improvements on all platforms.


2014-03-26: Version 3.25.27

        Promise constructor should not be enumerable (Chromium issue 352597).

        Performance and stability improvements on all platforms.


2014-03-26: Version 3.25.26

        Performance and stability improvements on all platforms.


2014-03-25: Version 3.25.25

        Roll ICU 239289:258359 and add support for external ICU data tables
        (issue 3142, Chromium issue 72633).

        Performance and stability improvements on all platforms.


2014-03-25: Version 3.25.24

        Add support for per-isolate private symbols.

        No longer OOM on invalid string length (issue 3060).

        Remove Failure::OutOfMemory propagation and
        V8::IgnoreOutOfMemoryException (issue 3060).

        Tentative Windows dll build fix: Don't V8_EXPORT ScriptCompiler::Source
        (issue 3228).

        Performance and stability improvements on all platforms.


2014-03-24: Version 3.25.23

        Rename A64 port to ARM64 port (Chromium issue 354405).

        Fix missing access check in Runtime_SetPrototype (Chromium issue
        354123).

        Fix polymorphic hydrogen handling of SLOPPY_ARGUMENTS_ELEMENTS (Chromium
        issue 354391).

        Performance and stability improvements on all platforms.


2014-03-20: Version 3.25.22

        Increase the "local variables in a function" limit (issue 3205).

        Implement ES6 symbol registry and predefined symbols.

        Throw exception on invalid string length instead of OOM (Chromium issue
        349329).

        Performance and stability improvements on all platforms.


2014-03-20: Version 3.25.21

        Performance and stability improvements on all platforms.


2014-03-20: Version 3.25.20

        Fix polymorphic keyed loads for SLOPPY_ARGUMENTS_ELEMENTS (Chromium
        issue 350867).

        Performance and stability improvements on all platforms.


2014-03-19: Version 3.25.19

        Performance and stability improvements on all platforms.


2014-03-19: Version 3.25.18

        Performance and stability improvements on all platforms.


2014-03-19: Version 3.25.17

        Performance and stability improvements on all platforms.


2014-03-18: Version 3.25.16

        Apply numeric casts correctly in typed arrays and related code (Chromium
        issue 353004).

        Performance and stability improvements on all platforms.


3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744
2014-03-18: Version 3.25.15

        Don't generate keyed store ICs for global proxies (Chromium issue
        352983).

        MIPS: Make invalid LHSs a parse-time (reference) error (Chromium issue
        351658).

        Make invalid LHSs a parse-time (reference) error (Chromium issue
        351658).

        Add Promises/A+ Compliance Test Suite (Chromium issue 347095).

        Split Promise API into Promise/Resolver.

        Performance and stability improvements on all platforms.


3745 3746 3747 3748 3749
2014-03-17: Version 3.25.14

        Performance and stability improvements on all platforms.


3750 3751 3752 3753 3754 3755 3756
2014-03-17: Version 3.25.13

        Move profiler callback interfaces from v8.h to v8-profiler.h.

        Performance and stability improvements on all platforms.


3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775
2014-03-14: Version 3.25.12

        PromiseCoerce should deal with an error during accessing "then"
        (Chromium issue 347095).

        Propagate updated offsets in BoundsCheckBbData (Chromium issue 350863).

        Add regression test for range analysis bug (issue 3204).

        Continued fix for 351257. Reusing the feedback vector is too complex
        (Chromium issue 351257).

        StopCpuProfiling should return non-const CpuProfile (issue 3213).

        Allow for compiling with xcode 5.1 (which doesn't have gcc anymore).

        Performance and stability improvements on all platforms.


3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797
2014-03-14: Version 3.25.11

        MIPS: Remove uses of CanBeNegative() in HMod (issue 3204).

        MIPS: Remove uses of RangeCanInclude() in flooring division by power of
        2 (issue 3204).

        MIPS: Fix uses of range analysis results in HChange (issue 3204).

        Make translation of modulus operation '--stress-opt'-proof (Chromium
        issue 352059).

        Remove uses of CanBeNegative() in HMod (issue 3204).

        Remove uses of RangeCanInclude() in flooring division by power of 2
        (issue 3204).

        Fix uses of range analysis results in HChange (issue 3204).

        Performance and stability improvements on all platforms.


3798 3799
2014-03-14: Version 3.25.10

3800
        This version was not committed due to script failures.
3801 3802


3803 3804 3805 3806 3807 3808 3809 3810 3811 3812
2014-03-13: Version 3.25.9

        Reland "Enable Object.observe by default" again (issue 2409).

        Use intrinsics for builtin ArrayBuffer property accesses (Chromium issue
        351787).

        Performance and stability improvements on all platforms.


3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837
2014-03-12: Version 3.25.8

        Fix HIsSmiAndBranch::KnownSuccessorBlock() by deleting it (Chromium
        issue 351320).

        Fix handling of polymorphic array accesses with constant index (Chromium
        issue 351319).

        Fix lazy deopt after tagged binary ops (Chromium issue 350434).

        MIPS: Cleanup some of the range uses in ModI/DivI (issue 3204).

        Fix issue with getOwnPropertySymbols and hidden properties (Chromium
        issue 350864).

        Cleanup some of the range uses in ModI/DivI (issue 3204).

        PromiseCoerce should ignore primitive values (Chromium issue 347095).

        Use a per-isolate cache for the date object JS bits (Chromium issue
        348856).

        Performance and stability improvements on all platforms.


3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851
2014-03-11: Version 3.25.7

        Promise.all and Promise.race should reject non-array parameter (Chromium
        issue 347453).

        Promise.all and Promise race should use "then" rather than "chain"
        (Chromium issue 347427).

        Merge the "Compute Minus Zero Checks" phase into the range analysis
        (issue 3204).

        Performance and stability improvements on all platforms.


3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876
2014-03-10: Version 3.25.6

        Replace the recursion in PropagateMinusZeroChecks() with a loop and a
        worklist (issue 3204).

        Reland "Enable Object.observe by default" (issue 2409).

        Enable Object.observe by default (issue 2409).

        AllocationTracker now maintains a map from address range to stack trace
        that allocated the range. When snapshot is generated the map is used to
        find construction stack trace for an object using its address (Chromium
        issue 277984).

        Introduce Runtime_GetAllScopesDetails to get all scopes at once for a
        frame (Chromium issue 340285).

        Reduce heavy runtime calls from debug mirrors (Chromium issue 340285).

        Check and clear date cache in DateCurrentTime, DateLocalTimezone and
        getTimezoneOffset (Chromium issue 142141).

        Performance and stability improvements on all platforms.


3877 3878 3879 3880 3881 3882 3883 3884 3885 3886
2014-03-06: Version 3.25.5

        Fix HConstants with Smi-ranged HeapNumber values (Chromium issue
        349878).

        Fix issues with JSON stringify replacer array (issues 3200, 3201).

        Performance and stability improvements on all platforms.


3887 3888 3889 3890 3891 3892 3893 3894
2014-03-05: Version 3.25.4

        x64: Fix LMathMinMax for constant Smi right-hand operands (Chromium
        issue 349079).

        Performance and stability improvements on all platforms.


3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927
2014-03-04: Version 3.25.3

        Clear optimized code cache in shared function info when code gets
        deoptimized (Chromium issue 343609).

        Fixed constant folding for Math.clz32 (Chromium issue 347906).

        Fix JSObject::PrintTransitions (Chromium issue 347912).

        Fix handling of constant global variable assignments (Chromium issue
        347904).

        Removed bogus ASSERT (Chromium issue 347542).

        Mark HCompareMap as having Tagged representation (Chromium issue
        346636).

        Fix crasher in Object.getOwnPropertySymbols (Chromium issue 346141).

        Fix the bit massaging code in CompleteParserRecorder::WriteNumber
        (Chromium issue 346221).

        Don't eliminate loads with incompatible types or representations
        (Chromium issue 346343).

        Check that after a weak callback, the handle is either dead or strong
        (Chromium issue 346061).

        Lazy preparsing vs. lazy parsing fix (Chromium issue 346207).

        Performance and stability improvements on all platforms.


3928 3929
2014-02-25: Version 3.25.2

3930 3931
        Fix the bit massaging code in CompleteParserRecorder::WriteNumber
        (Chromium issue 346221).
3932 3933

        Revert r19455 "Load target types and handlers before IC computation."
3934
        (Chromium issue 346149).
3935

3936 3937
        Don't eliminate loads with incompatible types or representations
        (Chromium issue 346343).
3938

3939 3940
        Fix for a smi stores optimization on x64 with a regression test
        (Chromium issue 345715).
3941 3942

        Check that after a weak callback, the handle is either dead or strong
3943
        (Chromium issue 346061).
3944

3945
        negative bounds checking on realm calls (Chromium issue 344285).
3946

3947
        Lazy preparsing vs. lazy parsing fix (Chromium issue 346207).
3948

3949
        Fix optimistic BCE to back off after deopt (issue 3176).
3950 3951 3952 3953

        Performance and stability improvements on all platforms.


3954 3955 3956 3957 3958
2014-02-21: Version 3.25.1

        Performance and stability improvements on all platforms.


3959 3960 3961 3962 3963 3964 3965 3966 3967
2014-02-19: Version 3.25.0

        ES6: Tighten up Object.prototype.__proto__ (issue 3064).

        Fix Hydrogen bounds check elimination (Chromium issue 344186).

        Performance and stability improvements on all platforms.


3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982
2014-02-19: Version 3.24.40

        A64: Let the MacroAssembler resolve branches to distant targets (issue
        3148).

        Fixed and improved code for integral division. Fixed and extended tests
        (issue 3151).

        MIPS: Fix assignment of function name constant (issue 3138).

        Fix assignment of function name constant (issue 3138).

        Performance and stability improvements on all platforms.


3983 3984 3985 3986 3987 3988 3989 3990
2014-02-14: Version 3.24.39

        Introduce --job-based-sweeping flag and use individual jobs for sweeping
        if set (issue 3104).

        Performance and stability improvements on all platforms.


3991 3992 3993 3994 3995 3996 3997
2014-02-13: Version 3.24.38

        Merge experimental/a64 to bleeding_edge (issue 3113).

        Performance and stability improvements on all platforms.


3998 3999 4000 4001 4002 4003 4004
2014-02-12: Version 3.24.37

        Fix spec violations in JSON.stringify wrt replacer array (issue 3135).

        Performance and stability improvements on all platforms.


4005 4006 4007 4008 4009 4010 4011
2014-02-11: Version 3.24.36

        Fix inconsistencies wrt whitespaces (issue 3109).

        Performance and stability improvements on all platforms.


4012 4013 4014 4015 4016 4017 4018
2014-02-10: Version 3.24.35

        Fix inconsistencies wrt whitespaces (issue 3109).

        Performance and stability improvements on all platforms.


4019 4020 4021 4022 4023
2014-02-07: Version 3.24.34

        Performance and stability improvements on all platforms.


4024 4025 4026 4027 4028 4029 4030 4031
2014-02-06: Version 3.24.33

        Allow externalizing strings in old pointer space (Chromium issue
        268686).

        Performance and stability improvements on all platforms.


4032 4033 4034 4035 4036 4037 4038 4039 4040 4041
2014-02-05: Version 3.24.32

        Add Box object to heap profiler.

        Check the offset argument of TypedArray.set for fitting into Smi
        (Chromium issue 340125).

        Performance and stability improvements on all platforms.


4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054
2014-02-04: Version 3.24.31

        Fix short-circuiting logical and/or in HOptimizedGraphBuilder (Chromium
        issue 336148).

        Elements field of newly allocated JSArray could be left uninitialized in
        some cases (fast literal case) (Chromium issue 340124).

        Re-enable escape analysis.

        Performance and stability improvements on all platforms.


4055 4056 4057 4058 4059
2014-02-03: Version 3.24.30

        Performance and stability improvements on all platforms.


4060 4061 4062 4063 4064
2014-02-01: Version 3.24.29

        Performance and stability improvements on all platforms.


4065 4066 4067 4068 4069 4070 4071 4072 4073 4074
2014-01-31: Version 3.24.28

        Don't crash in Array.join() if the resulting string exceeds the max
        string length (Chromium issue 336820).

        Implements ES6 String.prototype.normalize method (issue 2943).

        Performance and stability improvements on all platforms.


4075 4076 4077 4078 4079
2014-01-30: Version 3.24.27

        Performance and stability improvements on all platforms.


4080 4081 4082 4083 4084 4085 4086 4087 4088 4089
2014-01-29: Version 3.24.26

        ES6: Map and Set needs to normalize minus zero (issue 3069).

        Make `String.prototype.{starts,ends}With` throw when passing a regular
        expression (issue 3070).

        Performance and stability improvements on all platforms.


4090 4091 4092 4093 4094
2014-01-28: Version 3.24.25

        Performance and stability improvements on all platforms.


4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106
2014-01-27: Version 3.24.24

        MIPS: Reduce the stack requirements of GetNoCodeAgeSequence (issue
        3111).

        Delete v8_shell target now that chrome uses d8 (Chromium issue 331585).

        ARM: Reduce the stack requirements of GetNoCodeAgeSequence (issue 3111).

        Performance and stability improvements on all platforms.


4107 4108 4109 4110 4111
2014-01-24: Version 3.24.23

        Performance and stability improvements on all platforms.


4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125
2014-01-23: Version 3.24.22

        Fix compilation on x64 architectures (issue 3110).

        Ensure we don't overwrite transitions in SetPropertyIgnoreAttributes
        (Chromium issue 326155).

        ES6: Implement Object.setPrototypeOf (issue 2675).

        Fixed floor-of-div optimization (Chromium issue 334708).

        Performance and stability improvements on all platforms.


4126 4127 4128 4129 4130
2014-01-22: Version 3.24.21

        Performance and stability improvements on all platforms.


4131 4132 4133 4134 4135 4136 4137
2014-01-21: Version 3.24.20

        ES6: Implement Object.setPrototypeOf (issue 2675).

        Performance and stability improvements on all platforms.


4138 4139 4140 4141 4142 4143 4144 4145
2014-01-20: Version 3.24.19

        Introduce a setting to control the toolset for which d8 is compiled
        (issue 1775).

        Performance and stability improvements on all platforms.


4146 4147 4148 4149 4150
2014-01-17: Version 3.24.18

        Performance and stability improvements on all platforms.


4151 4152 4153 4154 4155 4156 4157
2014-01-16: Version 3.24.17

        Make cells pointing to JSObjects weak in optimized code (issue 2073).

        Performance and stability improvements on all platforms.


4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168
2014-01-15: Version 3.24.16

        Annotate mapped memory regions for LeakSanitizer (Chromium issue
        328552).

        Turn Runtime_MigrateInstance into Runtime_TryMigrateInstance (Chromium
        issue 315252).

        Performance and stability improvements on all platforms.


4169 4170 4171 4172 4173 4174 4175
2014-01-14: Version 3.24.15

        Introduce an API mirroring the gc extension.

        Performance and stability improvements on all platforms.


4176 4177 4178 4179 4180 4181 4182
2014-01-10: Version 3.24.14

        ES6: Add Object.getOwnPropertySymbols (issue 3049).

        Performance and stability improvements on all platforms.


4183 4184 4185 4186 4187 4188 4189 4190 4191 4192
2014-01-09: Version 3.24.13

        Add Isolate parameter to HandleScope::NumberOfHandles (Chromium issue
        324225).

        Removed v8::AssertNoGCScope.

        Performance and stability improvements on all platforms.


4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205
2014-01-08: Version 3.24.12

        Correctly handle instances without elements in polymorphic keyed
        load/store (Chromium issue 331416).

        Fix selection of popular pages in store buffer (Chromium issue 331444).

        Prepare removal of ObjectTemplate::New without Isolate parameter
        (Chromium issue 324225).

        Performance and stability improvements on all platforms.


4206 4207 4208 4209 4210 4211 4212 4213 4214 4215
2014-01-07: Version 3.24.11

        Remove generated makefiles on linux when running gyp_v8
        (Chromium issue 331475)

        Fix building d8 with readline support due to API changes

        Performance and stability improvements on all platforms.


4216 4217 4218 4219 4220 4221 4222 4223 4224 4225
2014-01-03: Version 3.24.10

        Reland r18383: More API cleanup (Chromium issue 324225).

        MIPS: Fix loading of global object in LWrapReceiver (Chromium issue
        318420).

        Performance and stability improvements on all platforms.


4226 4227 4228 4229 4230
2014-01-02: Version 3.24.9

        Performance and stability improvements on all platforms.


4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243
2013-12-30: Version 3.24.8

        ARM: fix loading of global object in LWrapReceiver (Chromium issue
        318420).

        Fix a race between concurrent recompilation and OSR (Chromium issue
        330046).

        Turn off concurrent sweeping (issue 3071).

        Performance and stability improvements on all platforms.


4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255
2013-12-23: Version 3.24.7

        Fix small spec violation in String.prototype.split (issue 3026).

        Correctly resolve forcibly context allocated parameters in debug-
        evaluate (Chromium issue 325676).

        Introduce Function::GetBoundFunction. 

        Performance and stability improvements on all platforms.


4256 4257 4258 4259 4260
2013-12-20: Version 3.24.6

        Performance and stability improvements on all platforms.


4261 4262 4263 4264 4265
2013-12-19: Version 3.24.5

        Performance and stability improvements on all platforms.


4266 4267 4268 4269 4270 4271 4272
2013-12-18: Version 3.24.4

        Removed all stuff marked as V8_DEPRECATED.

        Performance and stability improvements on all platforms.


4273 4274 4275 4276 4277
2013-12-17: Version 3.24.3

        Performance and stability improvements on all platforms.


4278 4279 4280 4281 4282 4283 4284
2013-12-17: Version 3.24.2

        Flush instruction cache for deserialized code objects.

        Performance and stability improvements on all platforms.


4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301
2013-12-13: Version 3.24.1

        Fix polymorphic inlined calls with migrating prototypes.

        Fixed global object leak caused by overwriting the global receiver (the
        global proxy) in the global object with the global object itself
        (Chromium issue 324812).

        Initialize Date parse cache with SMI instead of double to workaround
        sharing mutable heap numbers in snapshot (Chromium issue 280531).

        Switch armv7 setting to arm_version==7 in v8 gyp files (Chromium issue
        234135).

        Performance and stability improvements on all platforms.


4302 4303 4304 4305 4306
2013-12-09: Version 3.24.0

        Performance and stability improvements on all platforms.


4307 4308 4309 4310 4311
2013-12-04: Version 3.23.18

        Performance and stability improvements on all platforms.


4312 4313 4314 4315 4316
2013-12-03: Version 3.23.17

        Performance and stability improvements on all platforms.


4317 4318 4319 4320 4321 4322 4323 4324
2013-12-02: Version 3.23.16

        Array builtins need to be prevented from changing frozen objects, and
        changing structure on sealed objects (Chromium issue 299979).

        Performance and stability improvements on all platforms.


4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337
2013-11-29: Version 3.23.15

        Fix context register allocation in LTransitionElementsKind
        (Chromium issue 324306).

        Fix bug in inlining Function.apply (Chromium issue 323942).

        Ensure that length is Smi in TypedArrayFromArrayLike constructor
        (Chromium issue 324028).

        Performance and stability improvements on all platforms.


4338 4339 4340 4341 4342 4343 4344
2013-11-28: Version 3.23.14

        Shorten autogenerated error message (issue 3019).

        Performance and stability improvements on all platforms.


4345 4346 4347 4348 4349 4350 4351 4352 4353 4354
2013-11-27: Version 3.23.13

        Increase precision for base conversion for large integers (issue 3025).

        Flatten cons string for single character substrings (Chromium issue
        323041).

        Performance and stability improvements on all platforms.


4355 4356 4357 4358 4359
2013-11-26: Version 3.23.12

        Performance and stability improvements on all platforms.


4360 4361 4362 4363 4364 4365 4366
2013-11-25: Version 3.23.11

        Deprecate old versions of Isolate::SetData and GetData.

        Performance and stability improvements on all platforms.


4367
2013-11-22: Version 3.23.10
4368 4369 4370 4371 4372 4373 4374

        Remove preemption thread and API.
        (issue 3004)

        Performance and stability improvements on all platforms.


4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391
2013-11-21: Version 3.23.9

        API: Change AdjustAmountOfExternalAllocatedMemory calls to use int64_t
        instead of intptr_t.

        Remove deprecated v8::SetResourceConstraints without Isolate parameter.

        Remove deprecated v8-defaults.h and defaults.cc.
        (Chromium issue 312241)

        Make it possible to add more than one piece of embedder data to
        isolates.
        (Chromium issue 317398)

        Performance and stability improvements on all platforms.


4392 4393 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405
2013-11-20: Version 3.23.8

        Fixed crashes exposed though fuzzing.
        (Chromium issue 320948)

        Deprecated v8::External::New without Isolate parameter.

        Made number of available threads isolate-dependent and exposed it to
        ResourceConstraints.
        (issue 2991)

        Performance and stability improvements on all platforms.


4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418
2013-11-19: Version 3.23.7

        Bugfix: dependent code field in AllocationSite was keeping code objects
        alive even after context death.
        (Chromium issue 320532)

        Fixed data view accessors to throw execptions on offsets bigger than
        size_t.
        (issue 3013)

        Performance and stability improvements on all platforms.


4419 4420 4421 4422 4423 4424 4425 4426 4427 4428 4429
2013-11-18: Version 3.23.6

        Limit size of dehoistable array indices.
        (Chromium issues 319835, 319860)

        Limit the size for typed arrays to MaxSmi.
        (Chromium issue 319722)

        Performance and stability improvements on all platforms.


4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440
2013-11-15: Version 3.23.5

        Fixed missing type feedback check for Generic*String addition.
        (Chromium issue 318671)

        Fixed duplicate check in DependentCode::Insert.
        (Chromium issue 318454)

        Performance and stability improvements on all platforms.


4441 4442 4443 4444 4445 4446 4447 4448
2013-11-14: Version 3.23.4

        Fixed overflow in TypedArray initialization function.
        (Chromium issue 319120)

        Performance and stability improvements on all platforms.


4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459
2013-11-13: Version 3.23.3

        Fixed compilation with GCC 4.8.
        (issue 2767, 2149)

        Added explicit Isolate parameter to External::New.
        (Chromium issue 266838)

        Performance and stability improvements on all platforms.


4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470
2013-11-12: Version 3.23.2

        Fixed --extra-code flag for snapshot creation.
        (issue 2994)

        Fixed error message wording when instanceof throws.
        (Chromium issue 82797, issue 1593)

        Performance and stability improvements on all platforms.


4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481
2013-11-08: Version 3.23.1

        Made HCapturedObjects non-deletable for DCE. (issue 2987)

        Use a fixed random seed per default. (issue 1880, 2885)

        Fixed y-umlaut to uppercase. (issue 2984)

        Performance and stability improvements on all platforms.


4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495
2013-11-06: Version 3.23.0

        Fixed loading message from an Error object.  (Chromium issue 306220)

        Made Object.freeze/seal/preventExtensions observable. (issue 2975, 2941)

        Made snapshots reproducible. (issue 2885)

        Added missing negative dictionary lookup to NonexistentHandlerFrontend.
        (issue 2980)

        Performance and stability improvements on all platforms.


4496 4497 4498 4499 4500 4501 4502 4503
2013-10-31: Version 3.22.24

        Fixed uint32-to-smi conversion in Lithium.
        (Chromium issue 309623)

        Performance and stability improvements on all platforms.


4504 4505 4506 4507 4508 4509 4510 4511 4512 4513
2013-10-28: Version 3.22.23

        Renamed deprecated __attribute__((no_address_safety_analysis)) to
        __attribute__((no_sanitize_address)) (Chromium issue 311283)

        Defined DEBUG for v8_optimized_debug=2

        Performance and stability improvements on all platforms.


4514 4515 4516 4517 4518 4519 4520
2013-10-25: Version 3.22.22

        Record allocation stack traces. (Chromium issue 277984,v8:2949)

        Performance and stability improvements on all platforms.


4521 4522 4523 4524 4525
2013-10-24: Version 3.22.21

        Performance and stability improvements on all platforms.


4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541
2013-10-24: Version 3.22.20

        Made Array.prototype.pop throw if the last element is not configurable.

        Fixed HObjectAccess for loads from migrating prototypes.
        (Chromium issue 305309)

        Enabled preaging of code objects when --optimize-for-size.
        (Chromium issue 280984)

        Exposed v8::Function::GetDisplayName to public API.
        (Chromium issue 17356)

        Performance and stability improvements on all platforms.


4542 4543 4544 4545 4546 4547 4548 4549
2013-10-23: Version 3.22.19

        Fix materialization of captured objects with field tracking.
        (Chromium issue 298990)

        Performance and stability improvements on all platforms.


4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560
2013-10-22: Version 3.22.18

        Add tool to visualize machine code/lithium.

        Handle misaligned loads and stores in load elimination. Do not track
        misaligned loads and be conservative about invalidating misaligned
        stores. (issue 2934)

        Performance and stability improvements on all platforms.


4561 4562 4563 4564 4565 4566 4567
2013-10-21: Version 3.22.17

        Harmony: Implement Math.trunc and Math.sign. (issue 2938)

        Performance and stability improvements on all platforms.


4568 4569 4570 4571 4572
2013-10-21: Version 3.22.16

        Performance and stability improvements on all platforms.


4573 4574 4575 4576 4577 4578 4579 4580
2013-10-18: Version 3.22.15

        Enabled calling the SetReference* & SetObjectGroupId functions with a
        Persistent<SubclassOfValue>.

        Performance and stability improvements on all platforms.


4581 4582 4583 4584 4585
2013-10-17: Version 3.22.14

        Performance and stability improvements on all platforms.


4586 4587 4588 4589 4590 4591 4592 4593
2013-10-16: Version 3.22.13

        Do not look up ArrayBuffer on global object in typed array constructor.
        (issue 2931)

        Performance and stability improvements on all platforms.


4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606
2013-10-15: Version 3.22.12

        Added histograms to track fraction of heap spaces and percentage of
        generated crankshaft code.

        Moved v8_optimized_debug default value to standalone.gypi.

        Track JS allocations as they arrive with no affection on performance
        when tracking is switched off (Chromium issue 277984).

        Performance and stability improvements on all platforms.


4607 4608 4609 4610 4611
2013-10-14: Version 3.22.11

        Performance and stability improvements on all platforms.


4612 4613 4614 4615 4616 4617 4618 4619 4620 4621
2013-10-11: Version 3.22.10

        Fixed timezone issues with date-time/parse-* tests.
        (Chromium issue 2919)

        Added column getter to CpuProfileNode (Chromium issue 302537)

        Performance and stability improvements on all platforms.


4622 4623 4624 4625 4626 4627 4628 4629 4630 4631
2013-10-10: Version 3.22.9

        Ensure only whitelisted stubs have sse2 versions in the snapshot.
        (fix for chromium 304565)

        Implement ArrayBuffer.isView.

        Performance and stability improvements on all platforms.


4632 4633 4634 4635 4636
2013-10-04: Version 3.22.8

        Performance and stability improvements on all platforms.


4637 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647
2013-10-03: Version 3.22.7

        Debug: Allow stepping into on a given call frame
        (Chromium issue 296963).

        Always use timeGetTime() for TimeTicks::Now() on Windows
        (Chromium issue 288924).

        Performance and stability improvements on all platforms.


4648 4649 4650 4651 4652
2013-10-02: Version 3.22.6

        Performance and stability improvements on all platforms.


4653 4654 4655 4656 4657 4658 4659 4660 4661 4662
2013-10-01: Version 3.22.5

        Disabled externalization of sliced/cons strings in old pointer space
        (Chromium issue 276357).

        Turned on handle zapping for release builds

        Performance and stability improvements on all platforms.


4663 4664 4665 4666 4667 4668 4669 4670 4671 4672 4673 4674
2013-09-30: Version 3.22.4

        Function::Call and Object::CallAsFunction APIs should allow v8::Value as
        a receiver (issue 2915).

        Removed unnecessary mutex (Chromium issue 291236).

        Removed ArrayBufferView::BaseAddress method.

        Performance and stability improvements on all platforms.


4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688
2013-09-27: Version 3.22.3

        Added methods to enable configuration of ResourceConstraints based on
        limits derived at runtime.
        (Chromium issue 292928)

        Added -optimize-for-size flag to optimize for memory size (will be used
        by pre-aging CL), and removed the is_memory_constrained
        ResourceConstraint.
        (Chromium issue 292928)

        Performance and stability improvements on all platforms.


4689 4690 4691 4692 4693
2013-09-26: Version 3.22.2

        Performance and stability improvements on all platforms.


4694 4695 4696 4697 4698 4699 4700 4701
2013-09-25: Version 3.22.1

        Sped up creating typed arrays from array-like objects.
        (Chromium issue 270507)

        Performance and stability improvements on all platforms.


4702 4703 4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717 4718
2013-09-23: Version 3.22.0

        LiveEdit to mark more closure functions for re-instantiation when scope
        layout changes.
        (issue 2872)

        Made bounds check elimination iterative instead of recursive.
        (Chromium issue 289706)

        Turned on i18n support by default.

        Set the proper instance-type on HAllocate in BuildFastLiteral.
        (Chromium issue 284577)

        Performance and stability improvements on all platforms.


4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735
2013-09-18: Version 3.21.17

        Implemented local load/store elimination on basic blocks.

        Added mutex when accessing concurrent recompilation output queue.
        (Chromium issue 291236)

        Don't lookup the cache for the result of Function::New.
        (Chromium issue 272579)

        Tweaked HConstant::EmitAtUses() to eliminate useless constant
        generation.
        (Chromium issue 2881)

        Performance and stability improvements on all platforms.


4736 4737 4738 4739 4740 4741 4742 4743 4744
2013-09-16: Version 3.21.16

        Every place where AllocationMemento is initialized with an
        AllocationSite is now checked to be sure a valid Site goes in. This is
        temporary code to diagnose chromium bug 284577.

        Performance and stability improvements on all platforms.


4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755
2013-09-13: Version 3.21.15

        Non-JSObject heap objects are now handled using slow-path IC stub
        guarded by the map.
        (Chromium issue 280632)

        i18n Javascript code added to the snapshot.
        (V8 issue 2745)

        Performance and stability improvements on all platforms.

4756 4757 4758 4759 4760 4761 4762 4763 4764 4765
2013-09-12: Version 3.21.14

        Added access check for observed objects.
        (V8 issue 2778)

        Cleaned up v8::ArrayBuffer::Allocator interface.
        (V8 issue 2823)

        Performance and stability improvements on all platforms.

4766 4767 4768 4769 4770 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782
2013-09-11: Version 3.21.13

        Added a ResourceConstraint for the embedder to specify that V8 is
        running on a memory constrained device.
        (Chromium issue 280984)

        Removed HandleScope default ctor.
        (Chromium issue 236173)

        Enabled escape analysis for Hydrogen.

        Correctly stringified mixed encoding indirect strings.
        (Chromium issue 287476)

        Performance and stability improvements on all platforms.


4783 4784 4785 4786 4787 4788 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4800 4801 4802
2013-09-09: Version 3.21.12

        Fixed bitwise negation on x64.
        (Chromium issue 285355)

        Dropped GetCurrentThreadId() and TerminateExecution(int) from 
	the external API.

        Fixed polymorphic INTERCEPTOR StoreICs on ARM/MIPS.
        (Chromium issue 284998)

        Added check if timeout has expired after processing each sample.
        (issue 2814,v8:2871)

        Removed obsolete global V8::has_been_fooed flags.
        (issue 2744)

        Performance and stability improvements on all platforms.


4803 4804 4805 4806 4807
2013-09-05: Version 3.21.11

        Performance and stability improvements on all platforms.


4808 4809 4810 4811 4812 4813 4814
2013-09-04: Version 3.21.10

        Fixed Eternal::IsEmpty logic (issue 2870).

        Performance and stability improvements on all platforms.


4815 4816 4817 4818 4819 4820 4821 4822 4823
2013-09-03: Version 3.21.9

        Deprecated Persistent functions which were marked to be deprecated.

        Allowed uncacheable identifiers to go generic (issue 2867).

        Performance and stability improvements on all platforms.


4824 4825 4826 4827 4828 4829 4830
2013-09-02: Version 3.21.8

        Added scriptId to StackTrace frames (issue 2865).

        Performance and stability improvements on all platforms.


4831 4832 4833 4834 4835 4836 4837 4838 4839 4840 4841 4842 4843 4844
2013-08-30: Version 3.21.7

        Fixed casts of eternal handles.

        Turned on global handle zapping.

        Always visit branches during HGraph building (Chromium issue 280333).

        Profiler changes: removed deprecated API, support higher sampling
        rate on Windows.

        Performance and stability improvements on all platforms.


4845 4846 4847 4848 4849 4850 4851 4852
2013-08-29: Version 3.21.6

        Fixed inlined 'throw' statements interfering with live range
        computation. (issue 2843)

        Performance and stability improvements on all platforms.


4853 4854 4855 4856 4857 4858 4859 4860 4861
2013-08-28: Version 3.21.5

        Fixed compilation with recent MinGW64 versions. (issue 2300)

        Added RemovePrototype to FunctionTemplate. (Chromium issue 272440)

        Performance and stability improvements on all platforms.


4862 4863 4864 4865 4866 4867 4868 4869 4870 4871 4872 4873 4874 4875 4876 4877 4878 4879
2013-08-26: Version 3.21.4

        Lowered kInitialMaxFastElementArray constant to 95K (issue 2790).

        Use signals for cpu profiling on Mac OS X (issue 2814).

        Deprecated CpuProfileNode::GetSelfSamplesCount (Chromium issue 267595).

        Added support for higher CPU profiler sampling rate on posix systems
        (issue 2814).

        Worked around 'inlining failed' build error with older GCC 4.x releases.

        Added source map support to tick processor.

        Stability improvements on all platforms.


4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896
2013-08-23: Version 3.21.3

        Temporarily disabled optimization for StringWrappers to use native
        valueOf. (issue 2855)

        Fixed crash on function declarations in eval inside non-trivial local
        scope. (issue 2594)

        Rewrote SamplingCircularQueue. (issue 2814)

        Fixed hidden properties on object with frozen prototype. (issue 2829)

        Fix deoptimization bug. (Chromium issue 274164)

        Stability improvements on all platforms.


4897 4898 4899 4900 4901
2013-08-22: Version 3.21.2

        Stability improvements on all platforms.


4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 4920 4921 4922
2013-08-21: Version 3.21.1

        Promoted ArrayBuffer, DataView and typed arrays to non-experimental.
        (Chromium issue 270527)

        Replaced OS::MemCopy with memcpy in typed array initialization.
        (Chromium issue 270642)

        Moved i18n break iterator C++ code to runtime (issue 2745)

        Fixed invalid out-of-bounds store in MacroAssembler::Allocate.
        (Chromium issue 263515)

        Fixed register misuse in Allocate() on ARM. (issue 2851)

        Fixed empty handle dereference in Runtime_InternalNumberFormat.
        (Chromium issue 275467)

        Performance and stability improvements on all platforms.


4923 4924 4925 4926 4927 4928 4929 4930 4931
2013-08-19: Version 3.21.0

        Fixed GC-related crasher (Chromium issue 274438)

        Reverted making Intl non-enumerable.

        Performance and stability improvements on all platforms.


4932 4933 4934 4935 4936 4937 4938 4939
2013-08-14: Version 3.20.17

        Fixed Math.round/floor that had bogus Smi representation
        (Chromium issue 272564)

        Performance and stability improvements on all platforms.


4940 4941 4942 4943 4944 4945 4946 4947 4948 4949 4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964
2013-08-13: Version 3.20.16

        Fixed bug in HPhi::SimplifyConstantInput (Chromium issue 269679)

        Fixed gcmole bugs in i18n code (issue 2745)

        ia32: Calls to the TranscendentalCacheStub must ensure that esi is
        set (issue 2827)

        Made sure polymorphic element access creates non-replaying
        phis. (issue 2815)

        Allowed HPhis to have an invalid merge index. (issue 2815)

        Fixed smi-based math floor. (Chromium issue 270268)

        Deprecated self and total time getters and total sample count
        getter on CpuProfileNode. (Chromium issue 267595)

        Fixed Object.freeze, Object.observe wrt CountOperation and
        CompoundAssignment. (issue 2774,2779)

        Performance and stability improvements on all platforms.


4965
2013-08-07: Version 3.20.15
4966 4967 4968 4969 4970 4971 4972 4973 4974 4975 4976 4977 4978 4979 4980

        Exposed eternal handle api.

        Bugfix to solve issues with enabling V8 typed arrays in Blink.

        Fixed Array index dehoisting.  (Chromium issue 264203)

        Updated Array Iterator to use numeric indexes (issue 2818)

        Return start/end profiling time in microseconds instead of milliseconds
        (issue 2824)

        Performance and stability improvements on all platforms.


4981 4982 4983 4984 4985 4986 4987 4988
2013-08-06: Version 3.20.14

        Added new Harmony methods to Array.prototype object.
        (issue 2776,v8:2777)

        Performance and stability improvements on all platforms.


4989 4990 4991 4992 4993 4994 4995 4996 4997 4998 4999 5000 5001 5002 5003 5004 5005
2013-08-01: Version 3.20.12

        Removed buggy ToNumber truncation (partial fix for issue 2813)

        Calling Map etc without new should throw TypeError (issue 2819)

        Fixed a crash for large code objects on ARM (Chromium issue 2736)

        Fixed stale unhandlified value in JSObject::SetPropertyForResult.
        (Chromium issue 265894)

        Added new Harmony methods to String.prototype object.
        (issue 2796,v8:2797,v8:2798,v8:2799)

        Performance and stability improvements on all platforms.


5006 5007 5008 5009 5010
2013-07-30: Version 3.20.11

        Performance and stability improvements on all platforms.


5011 5012 5013 5014 5015
2013-07-29: Version 3.20.10

        Performance and stability improvements on all platforms.


5016 5017 5018 5019 5020 5021 5022 5023 5024 5025
2013-07-26: Version 3.20.9

        Check that ExternalString objects get aligned resources.

        Fixed JSArray-specific length lookup in polymorphic array handling
        (Chromium issues 263276, 263905).

        Performance and stability improvements on all platforms.


5026 5027 5028 5029 5030 5031 5032 5033 5034
2013-07-24: Version 3.20.8

        Deprecated v8::V8::Pause/ResumeProfiler.

        Fixed Chromium issues 247688, 258519 and 260203.

        Performance and stability improvements on all platforms.


5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054
2013-07-22: Version 3.20.7

        Deprecated some debugger methods.

        Fixed wrong bailout id in polymorphic stores (Chromium issue 259787).

        Fixed data race in SamplingCircularQueue (Chromium issue 251218).

        Fixed type feedback in presence of negative lookups
        (Chromium issue 252797).

        Do not materialize context-allocated values for debug-evaluate
        (Chromium issue 259300).

        Synchronized Compare-Literal behavior in FullCodegen and Hydrogen
        (Chromium issue 260345).

        Performance and stability improvements on all platforms.


5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 5066 5067 5068 5069 5070 5071
2013-07-17: Version 3.20.6

        Try to remove invalidated stubs before falling back to checking the
        constant state (Chromium issue 260585).

        Fixed gyp_v8 to work with use_system_icu=1 (issue 2475).

        Fixed sloppy-mode 'const' under Harmony flag (Chromium issue 173361).

        Use internal array as API function cache  (Chromium issue 260106).

        Fixed possible stack overflow in range analysis
        (Chromium issue 259452).

        Performance and stability improvements on all platforms.


5072 5073
2013-07-15: Version 3.20.5

5074 5075
        Ensured that the length of frozen arrays is immutable
        (issue 2711, Chromium issue 259548).
5076 5077 5078 5079

        Performance and stability improvements on all platforms.


5080 5081 5082 5083 5084 5085 5086 5087
2013-07-10: Version 3.20.4

        Fixed garbage-collection issue that causes a crash on ARM
        (Chromium issue 254570)

        Performance and stability improvements on all platforms.


5088 5089 5090 5091 5092
2013-07-08: Version 3.20.3

        Performance and stability improvements on all platforms.


5093 5094 5095 5096 5097 5098 5099 5100 5101 5102 5103 5104 5105 5106 5107 5108 5109 5110 5111 5112
2013-07-05: Version 3.20.2

        Remove deprecated heap profiler methods from V8 public API

        Mark i18n functions as native and set proper names
        (issue 2745)

        Correctly report stack trace when current function is FunctionApply
        builtin (Chromium issue 252097)

        Enable GDBJIT interface for standalone by default.

        Fix debuggersupport=off build. (issue 2754)

        Introduce -m64 flag for making x64 when the default gcc compiler is for
        X32

        Performance and stability improvements on all platforms.


5113 5114 5115 5116 5117 5118 5119 5120 5121 5122
2013-07-02: Version 3.20.1

        Implemented WeakMap.prototype.clear function. (issue 2753)

        Ensure CheckInitialized is present independent of define.
        (Chromium issue 255779)

        Performance and stability improvements on all platforms.


5123 5124 5125 5126 5127 5128 5129 5130 5131 5132 5133 5134 5135 5136
2013-06-28: Version 3.20.0

        Migrated several tests from blink to V8 repository.

        Allowed users of the V8 API to distinguish between unset and undefined
        HiddenValues (issue 2746).

        Deprecated old style callbacks in the V8 API.

        Turned on parallel recompilation.

        Performance and stability improvements on all platforms.


5137 5138 5139 5140 5141 5142 5143 5144 5145 5146 5147 5148 5149 5150 5151 5152 5153 5154 5155 5156 5157 5158 5159
2013-06-18: Version 3.19.18

	Fixed read-only attribute of Function.length in strict mode.
	(issue 2705)

	Fixed Runtime_SetProperty to properly handle OOM failures
	(Chromium issue 249873)

	Emit deprecated check for constant function transitions.
	(Chromium issue 250609)
	
	Made MathFloorOfDiv optimization trigger more often
	(Issue 2205)

	Make more GCs in idle notification handler.
	(Chromium issue 241815)

	Increased default type info threshold.
	(Issue 2730)

        Performance and stability improvements on all platforms.


5160 5161 5162 5163 5164
2013-06-14: Version 3.19.16

        Performance and stability improvements on all platforms.


5165 5166 5167 5168 5169
2013-06-13: Version 3.19.15

        Performance and stability improvements on all platforms.


5170 5171 5172 5173 5174 5175 5176 5177 5178 5179 5180 5181
2013-06-13: Version 3.19.14

        Fixed crashes when calling new Array(a) with a single argument that
        could result in creating a holey array with a packed elements kind.
        (Chromium issue 245480)

        Fixed issues in parallel compilation.
        (Chromium issue 248076)

        Performance and stability improvements on all platforms.


5182 5183 5184 5185 5186
2013-06-11: Version 3.19.13

        Performance and stability improvements on all platforms.


5187 5188 5189 5190 5191 5192 5193 5194 5195
2013-06-10: Version 3.19.12

        Fixed arguments array access. (Chromium issue 247303)

        Fixed bug in LookupForWrite. (Chromium issue 242332)

        Performance and stability improvements on all platforms.


5196 5197 5198 5199 5200
2013-06-07: Version 3.19.11

        Performance and stability improvements on all platforms.


5201 5202 5203 5204 5205
2013-06-06: Version 3.19.10

        Performance and stability improvements on all platforms.


5206 5207 5208 5209 5210 5211 5212 5213 5214 5215 5216 5217 5218
2013-06-05: Version 3.19.9

        Implemented Load IC support for loading properties from primitive
        values to avoid perpetual soft deopts.  (Chromium issue 242512)

        Implemented Freeing of PerThreadAssertData when possible to avoid
        memory leak. (Chromium issue 246567)

        Removed V8_USE_OLD_STYLE_PERSISTENT_HANDLE_VISITORS.

        Performance and stability improvements on all platforms.


5219 5220 5221 5222 5223 5224 5225 5226 5227 5228 5229
2013-06-03: Version 3.19.8

        Fixed bug with inlining 'Array' function. (Chromium issue 244461)

        Fixed initialization of literal objects. (Chromium issue 245424)

        Fixed function name inferred inside closures. (Chromium issue 224884)

        Performance and stability improvements on all platforms.


5230 5231 5232 5233 5234 5235 5236 5237 5238 5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249
2013-05-31: Version 3.19.7

        Added support for //# sourceURL similar to deprecated //@ sourceURL one.
        (issue 2702)

        Made sure IfBuilder::Return clears the current block.
        (Chromium issue 243868)

        Fixed two CPU profiler tests on ARM and MIPS simulators
        (issue 2628)

        Fixed idle incremental GC for large objects.
        (Chromium issue 241815)

        Disabled --optimize-constructed-arrays due to crashes
        (Chromium issue 244461)

        Performance and stability improvements on all platforms.


5250 5251 5252 5253 5254 5255 5256 5257
2013-05-28: Version 3.19.6

        Fixed IfBuilder::Deopt to clear the current block
        (Chromium issue 243868).

        Performance and stability improvements on all platforms.


5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268
2013-05-27: Version 3.19.5

        Reset regexp parser flag after scanning ahead for capture groups.
        (issue 2690)

        Removed flakiness in test-cpu-profiler/SampleWhenFrameIsNotSetup.
        (issue 2628)

        Performance and stability improvements on all platforms.


5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283
2013-05-24: Version 3.19.4

        Fixed edge case in stack trace formatting. (Chromium issue 237617)

        Fixed embedded new-space pointer in LCmpObjectEqAndBranch. (Chromium
	issue 240032)

        Made Object.freeze fast (issue 1858, Chromium issue 115960)

        Fixed bogus deopt in BuildEmitDeepCopy for holey arrays. (Chromium issue
        242924)

        Performance and stability improvements on all platforms.


5284 5285 5286 5287 5288
2013-05-22: Version 3.19.3

        Performance and stability improvements on all platforms.


5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 5300 5301 5302
2013-05-17: Version 3.19.2

        Fill in one-word-fillers for the unused property fields
        (Chromium issue 240056).

        Removed use_system_v8 logic from the mainline gyp file
        (Chromium issue 226860).

        Skip CPU profiler samples where top function's stack frame is not
        set up properly (issue 2628).

        Performance and stability improvements on all platforms.


5303 5304 5305 5306 5307 5308 5309 5310
2013-05-14: Version 3.19.1

        Fixed missing hole check for loads from Smi arrays when all uses are
        changes (Chromium issue 233737)

        Performance and stability improvements on all platforms.


5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324
2013-05-10: Version 3.19.0

        Deprecated Context::New which returns Persistent.

        Added Persistent<T>::Reset which disposes the handle and redirects it to
        point to another object.

        Deprecated WriteAscii and MayContainNonAscii.

        Exposed AssertNoAllocation to API.

        Performance and stability improvements on all platforms.


5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337
2013-04-30: Version 3.18.5

        Allowed setting debugger breakpoints on CompareNilICs (issue 2660)

        Fixed beyond-heap load on x64 Crankshafted StringCharFromCode
        (Chromium issue 235311)

        Change 'Parse error' to three more informative messages.
        (Chromium issue 2636)

        Performance and stability improvements on all platforms.


5338 5339 5340 5341 5342 5343 5344 5345 5346
2013-04-26: Version 3.18.4

        Added a preliminary API for ES6 ArrayBuffers

        Replaced qsort with std::sort. (Chromium issue 2639)

        Performance and stability improvements on all platforms.


5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357 5358 5359
2013-04-24: Version 3.18.3

        Exposed the GC under a name that is less collision prone than window.gc.
        (issue 2641)

        Do not emit double values at their use sites. (Chromium issue 234101)

        Added methods to allow resuming execution after calling
        TerminateExecution(). (issue 2361)

        Performance and stability improvements on all platforms.


5360 5361 5362 5363 5364 5365 5366 5367 5368 5369
2013-04-22: Version 3.18.2

        OS::MemMove/OS::MemCopy: Don't call through to generated code when size
        == 0 to avoid prefetching invalid memory (Chromium issue 233500)

        Removed heap snapshot size limit. (Chromium issue 232305)

        Performance and stability improvements on all platforms.


5370 5371 5372 5373 5374 5375 5376 5377 5378
2013-04-18: Version 3.18.1

        Removed SCons related files and deprecated test suite configurations.

        Improved handling of unary plus (issue 2527).

        Performance and stability improvements on all platforms.


5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397
2013-04-17: Version 3.18.0

        Enabled pretenuring of fast literals in high promotion mode.

        Removed preparser library; link preparser executable against full V8.

        Fixed set-up of intrinsic's 'constructor' properties.
        (Chromium issue 229445)

        ES6 symbols: extended V8 API to support symbols (issue 2158).

        Removed ARM support for VFP2.

        Made __proto__ a real JavaScript accessor property.
        (issue 1949 and issue 2606)

        Performance and stability improvements on all platforms.


5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410
2013-04-04: Version 3.17.16

        Stack trace API: poison stack frames below the first strict mode frame.
        (issue 2564)

        Made Isolate::GetHeapStatistics robust against half-initialized
        isolates (Chromium issue 2591).

        Finished implementation of ES6 symbols aka. private names (issue 2158).

        Performance and stability improvements on all platforms.


5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 5421 5422 5423 5424 5425 5426
2013-03-21: Version 3.17.15

        Rolled back API changes to maintain compatibility with older
        3.17.x versions of V8.

        Disable zapping of global handles in release mode.

        Always mark the entire valid prefix of the descriptor array.
        (Chromium issue 196331)

        Use internal memcpy for CopyWords and when copying code.
        (Chromium issue 196330)

        Performance and stability improvements on all platforms.


5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 5437
2013-03-20: Version 3.17.14

        Use internal memcpy when initializing code objects.
        (Chromium issue 196330)

        Disabled weak embedded maps because of crashes.
        (Chromium issues 172489, 217858)

        Performance and stability improvements on all platforms.


5438 5439 5440 5441 5442 5443 5444
2013-03-19: Version 3.17.13

        Turned Flags into a uint32_t typedef (Chromium issue 194749).

        Performance and stability improvements on all platforms.


5445 5446 5447 5448 5449 5450 5451 5452 5453 5454 5455 5456
2013-03-18: Version 3.17.12

        Unified kMaxArguments with number of bits used to encode it.
        (Chromium issue 211741)

        Fixed detection of |handle_smi| case in
        HOptimizedGraphBuilder::HandlePolymorphicCallNamed.
        (Chromium issue 196583)

        Performance and stability improvements on all platforms.


5457 5458 5459 5460 5461 5462 5463 5464 5465 5466 5467 5468 5469 5470 5471 5472
2013-03-15: Version 3.17.11

        Added a version of the v8::HandleScope constructor with an v8::Isolate
        parameter and made AdjustAmountOfExternalAllocatedMemory an instance
        method of v8::Isolate.
        (issue 2487)

        Fixed two register allocator bugs (off-by-one error/failure
        propagation). (issue 2576)

        Fixed huge heap snapshot when a heavily shared context has many
        variables. (Chromium issue 145687)

        Performance and stability improvements on all platforms.


5473 5474 5475 5476 5477 5478 5479 5480 5481
2013-03-13: Version 3.17.10

        Fixed heap snapshot creation for Harmony collections. (issue 2535)

        Fixed register allocation corner case. (Chromium issue 177883)

        Performance and stability improvements on all platforms.


5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 5495 5496 5497 5498
2013-03-08: Version 3.17.9

        Restored Function()'s expected string representation. (issue 2470)

        Enabled deprecatations (again). (issue 2487)

        Avoid bool to Oddball conversions by being lazy. (issue 2491)

        Added %p option to --logfile.

        Hardened Function()'s parsing of function literals. (issue 2470)

        ES6 symbols: Refine test for getOwnPropertyNames. (issue 2158)

        Performance and stability improvements on all platforms.


5499 5500 5501 5502 5503 5504 5505 5506 5507 5508 5509 5510 5511 5512 5513 5514 5515 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528 5529 5530 5531 5532 5533
2013-03-07: Version 3.17.8

        Added missing license headers. (Chromium issue 98597)

        Inserted missing type cast in JSON.stringify. (issue 2570)

        Reverted "Send SIGPROF signals on the profiler event processor thread"
        (issue 2571)

        Fixed Array.length, String.length and Function.prototype LoadICs on x64.
        (issue 2568)

        ES6 symbols: filter symbols form for-in loops and Object.keys.
        (issue 2158)

        Properly handle misses for StoreArrayLengthStub on ia32 and x64
        (issue 2566)

        Fixed x32 handling of Atomic64. (Chromium issue chromium-os:36866)

        Removed "library" variable from standalone.gypi. (Chromium issue 111541)

        Fixed HCheckSmiOrInt <-> HBoundsCheck interaction wrt. representations.
        (issue 2556)

        Enabled zapping of disposed global handles in release mode.
        (Chromium issue 176056)

        Added workaround for redefinition of __proto__ property. (issue 2565)

        ES6 symbols: Allow symbols as property names. (issue 2158)

        Performance and stability improvements on all platforms.


5534 5535 5536 5537 5538 5539 5540 5541 5542 5543 5544
2013-03-04: Version 3.17.7

        Limited recursion in regexp compilation by a budget.
        (Chromium issue 178790)

        ES6 symbols: Implemented Symbol intrinsic and basic functionality
        (issue 2158)

        Performance and stability improvements on all platforms.


5545 5546 5547 5548 5549 5550 5551 5552 5553 5554
2013-02-28: Version 3.17.6

        Fixed materialization of arguments objects with unknown values.
        (Chromium issue 163530)

        Set default number of sweeper threads to at most four.

        Performance and stability improvements on all platforms.


5555 5556 5557 5558 5559 5560 5561 5562
2013-02-27: Version 3.17.5

        Made __proto__ a foreign callback on Object.prototype.
        (issue 621, issue 1949 and issue 2441)

        Performance and stability improvements on all platforms.


5563 5564 5565 5566 5567
2013-02-25: Version 3.17.4

        Performance and stability improvements on all platforms.


5568 5569 5570 5571 5572
2013-02-21: Version 3.17.3

        Performance and stability improvements on all platforms.


5573 5574 5575 5576 5577 5578 5579 5580 5581 5582 5583 5584 5585 5586
2013-02-19: Version 3.17.2

        Removed bogus check for TOP register in deoptimizer.
        (Chromium issue 176943)

        Made the Isolate parameter mandatory for internal HandleScopes.
        (issue 2487)

        Fixed f.apply() optimization when declared arguments are mutated.
        (issue 2539)

        Performance and stability improvements on all platforms.


5587 5588 5589 5590 5591
2013-02-14: Version 3.17.1

        Performance and stability improvements on all platforms.


5592 5593 5594 5595 5596 5597 5598 5599 5600 5601 5602 5603 5604 5605 5606 5607 5608 5609 5610 5611 5612 5613 5614 5615
2013-02-13: Version 3.17.0

        Enabled parallel sweeping.

        Don't try to unlink instructions twice during GVN
        (Chromium issue 175141)

        Fixed code flusher disabling while marking incrementally.
        (Chromium issue 173458, 168582)

        Don't use TLS for space iterators.
        (issue 2531)

        Added new GetHeapStatistics API entry and deprecated old one.

        Fixed DoubleStackSlot-to-DoubleStackSlot moves on ia32. Unified
        platform-independent code.
        (Chromium issue 173907)

        Added --trace-array-abuse to help find OOB accesses.

        Performance and stability improvements on all platforms.


5616 5617 5618 5619 5620
2013-02-06: Version 3.16.14

        Performance and stability improvements on all platforms.


5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633
2013-02-04: Version 3.16.13

        Tagged stubs that rely on instance types as MEGAMORPHIC.
        (Chromium issue 173974)

        Fixed clearing of dead dependent codes and verifing of weak
        embedded maps on full GC. (Chromium issue 172488,172489)

        Made the arm port build cleanly with Clang.

        Performance and stability improvements on all platforms.


5634 5635 5636 5637 5638
2013-01-31: Version 3.16.12

        Performance and stability improvements on all platforms.


5639 5640 5641 5642 5643 5644 5645 5646
2013-01-30: Version 3.16.11

        Put making embedded maps in optimized code weak behind a flag.
        (Chromium issue 172488,172489)

        Performance and stability improvements on all platforms.


5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660
2013-01-25: Version 3.16.10

        Avoid excessive memory usage during redundant phi elimination.
        (issue 2510)

        Fixed additional spec violations wrt RegExp.lastIndex.
        (issue 2437)

        Added Isolate parameter to Persistent class.
        (issue 2487)

        Performance and stability improvements on all platforms.


5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674
2013-01-24: Version 3.16.9

        Made embedded maps in optimized code weak.
        (issue 2073)

        Fixed corner case when JSFunction is evicted from flusher.
        (Chromium issue 168801)

        Correctly set kCanBeDivByZero flag for HMathFloorOfDiv.
        (Chromium issue 171641)

        Performance and stability improvements on all platforms.


5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691
2013-01-23: Version 3.16.8

        Correctly reset lastIndex in an RegExp object.
        (Chromium issue 170856)

        Added a workaround for Windows compilation problems related to V8EXPORT.
        (issue 2507)

        tools/run-tests.py: shlex.split() the value of --command-prefix
        (Chromium issue 171553)

        Fixed pattern detection for replacing shifts by rotation.
        (Chromium issue 2499)

        Performance and stability improvements on all platforms.


5692 5693 5694 5695 5696 5697 5698 5699 5700 5701 5702
2013-01-21: Version 3.16.7

        Removed <(library) usage from v8.gyp.
        (Chromium issue 111541)

        Fixed out of bounds memory access in TestJSArrayForAllocationSiteInfo.
        (Chromium issue 169928)

        Performance and stability improvements on all platforms.


5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725
2013-01-18: Version 3.16.6

        Made the Isolate parameter mandatory in Locker and Unlocker classes.
        (issue 2487)

        Avoid pointer underflow in CopyCharsUnsigned.
        (issue 2493)

        Generate shim headers when using system v8.
        (Chromium issue 165264)

        Fixed arguments materialization for inlined apply().
        (issue 2489)

        Sync'ed laziness between BuildFunctionInfo and MakeFunctionInfo.
        (Chromium issue 147497)

        Added sanity check to CodeFlusher::AddCandidate.
        (Chromium issue 169209)

        Performance and stability improvements on all platforms.


5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738
2013-01-15: Version 3.16.5

        Removed deprecated functions from V8's external API.

        Prepared API for WebKit use of Latin-1.

        Fixed V8 issue 2486.

        Fixed Chromium issue 169723.

        Performance and stability improvements on all platforms.


5739 5740 5741 5742 5743 5744 5745
2013-01-11: Version 3.16.4

        Fixed Chromium issues 168545 and 169209.

        Performance and stability improvements on all platforms.


5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759
2013-01-09: Version 3.16.3

        Improved GC performance when moving parts of a FixedArray (issue 2452).

        Enabled readline on d8 while building a shared lib (issue 1781).

        Fixed missing exception check in typed array constructor
        (Chromium issue 168545).

        Check for read-only-ness when preparing for array sort (issue 2419).

        Performance and stability improvements on all platforms.


5760 5761 5762 5763 5764 5765 5766 5767
2013-01-04: Version 3.16.2

        Added Makefile options to build for the Raspberry Pi (armv7=0,
        arm_fpu=vfp2).

        Performance and stability improvements on all platforms.


5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778
2012-12-27: Version 3.16.1

        Fixed x64 MathMinMax for negative untagged int32 arguments.
        (Chromium issue 164442)

        Fixed FloatingPointHelper::CheckSSE2OperandIsInt32.
        (issue 2458)

        Performance and stability improvements on all platforms.


5779
2012-12-21: Version 3.16.0
5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 5791 5792 5793

        V8_Fatal now prints C++ stack trace in debug mode.

        Added HTML-based tick processor.

        Continued implementation of Object.observe (V8 issue 2409).

        Fixed V8 issues 2243, 2340, 2393, 2399, 2457.

        Fixed Chromium issues 125308, 165637, 166379, 166553.

        Performance and stability improvements on all platforms.


5794 5795 5796 5797 5798 5799 5800 5801
2012-12-10: Version 3.15.11

        Define CAN_USE_VFP2/3_INSTRUCTIONS based on arm_neon and arm_fpu GYP
        flags.

        Performance and stability improvements on all platforms.


5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812
2012-12-07: Version 3.15.10

        Enabled optimisation of functions inside eval. (issue 2315)

        Fixed spec violations in methods of Number.prototype. (issue 2443)

        Added GCTracer metrics for a scavenger GC for DOM wrappers.

        Performance and stability improvements on all platforms.


5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826
2012-12-06: Version 3.15.9

        Fixed candidate eviction in code flusher.
        (Chromium issue 159140)

        Iterate through all arguments for side effects in Math.min/max.
        (issue 2444)

        Fixed spec violations related to regexp.lastIndex
        (issue 2437, issue 2438)

        Performance and stability improvements on all platforms.


5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839
2012-12-04: Version 3.15.8

        Enforced stack allocation of TryCatch blocks.
        (issue 2166,chromium:152389)

        Fixed external exceptions in external try-catch handlers.
        (issue 2166)

        Activated incremental code flushing by default.

        Performance and stability improvements on all platforms.


5840 5841 5842 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852
2012-11-30: Version 3.15.7

        Activated code aging by default.

        Included more information in --prof log.

        Removed eager sweeping for lazy swept spaces. Try to find in
        SlowAllocateRaw a bounded number of times a big enough memory slot.
        (issue 2194)

        Performance and stability improvements on all platforms.


5853 5854 5855 5856 5857 5858 5859 5860
2012-11-26: Version 3.15.6

        Ensure double arrays are filled with holes when extended from
        variations of empty arrays. (Chromium issue 162085)

        Performance and stability improvements on all platforms.


5861 5862 5863 5864 5865 5866 5867 5868 5869 5870
2012-11-23: Version 3.15.5

        Fixed JSON.stringify for objects with interceptor handlers.
        (Chromium issue 161028)

        Fixed corner case in x64 compare stubs. (issue 2416)

        Performance and stability improvements on all platforms.


5871 5872 5873 5874 5875 5876 5877 5878 5879 5880 5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895
2012-11-16: Version 3.15.4

        Fixed Array.prototype.join evaluation order. (issue 2263)

        Perform CPU sampling by CPU sampling thread only iff processing thread
        is not running. (issue 2364)

        When using an Object as a set in Object.getOwnPropertyNames, null out
        the proto. (issue 2410)

        Disabled EXTRA_CHECKS in Release build.

        Heap explorer: Show representation of strings.

        Removed 'type' and 'arguments' properties from Error object.
        (issue 2397)

        Added atomics implementation for ThreadSanitizer v2.
        (Chromium issue 128314)

        Fixed LiveEdit crashes when object/array literal is added. (issue 2368)

        Performance and stability improvements on all platforms.


5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908
2012-11-13: Version 3.15.3

        Changed sample shell to send non-JS output (e.g. errors) to stderr
        instead of stdout.

        Correctly check for stack overflow even when interrupt is pending.
        (issue 214)

        Collect stack trace on stack overflow. (issue 2394)

        Performance and stability improvements on all platforms.


5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 5931 5932 5933 5934
2012-11-12: Version 3.15.2

        Function::GetScriptOrigin supplies sourceURL when script name is
        not available.  (Chromium issue 159413)

        Made formatting error message side-effect-free.  (issue 2398)

        Fixed length check in JSON.stringify.  (Chromium issue 160010)

        ES6: Added support for Set and Map clear method (issue 2400)

        Fixed slack tracking when instance prototype changes.
        (Chromium issue 157019)

        Fixed disabling of code flusher while marking.  (Chromium issue 159140)

        Added a test case for object grouping in a scavenger GC (issue 2077)

        Support shared library build of Android for v8.
        (Chromium issue 158821)

        ES6: Added support for size to Set and Map (issue 2395)

        Performance and stability improvements on all platforms.


5935 5936 5937 5938 5939 5940 5941
2012-11-06: Version 3.15.1

        Put incremental code flushing behind a flag. (Chromium issue 159140)

        Performance and stability improvements on all platforms.


5942 5943 5944 5945 5946 5947 5948 5949 5950 5951
2012-10-31: Version 3.15.0

        Loosened aligned code target requirement on ARM (issue 2380)

        Fixed JSON.parse to treat leading zeros correctly.
        (Chromium issue 158185)

        Performance and stability improvements on all platforms.


5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972
2012-10-22: Version 3.14.5

        Killed off the SCons based build.

        Added a faster API for creating v8::Integer objects.

        Speeded up function deoptimization by avoiding quadratic pass over
        optimized function list. (Chromium issue 155270)

        Always invoke the default Array.sort functions from builtin functions.
        (issue 2372)

        Reverted recent CPU profiler changes because they broke --prof.
        (issue 2364)

        Switched code flushing to use different JSFunction field.
        (issue 1609)

        Performance and stability improvements on all platforms.


5973 5974 5975 5976 5977 5978 5979 5980 5981 5982
2012-10-15: Version 3.14.4

        Allow evals for debugger even if they are prohibited in the debugee
        context. (Chromium issue 154733)

        Enabled --verify-heap in release mode (issue 2120)

        Performance and stability improvements on all platforms.


5983 5984 5985 5986 5987 5988 5989 5990 5991 5992
2012-10-11: Version 3.14.3

        Use native context to retrieve ErrorMessageForCodeGenerationFromStrings
        (Chromium issue 155076).

        Bumped variable limit further to 2^17 (Chromium issue 151625).

        Performance and stability improvements on all platforms.


5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020
2012-10-10: Version 3.14.2

        ARM: allowed VFP3 instructions when hardfloat is enabled.
        (Chromium issue 152506)

        Fixed instance_descriptors() and PushStackTraceAndDie regressions.
        (Chromium issue 151749)

        Made GDBJIT interface compile again. (issue 1804)

        Fixed Accessors::FunctionGetPrototype's proto chain traversal.
        (Chromium issue 143967)

        Made sure that names of temporaries do not clash with real variables.
        (issue 2322)

        Rejected local module declarations. (Chromium issue 150628)

        Rejected uses of lexical for-loop variable on the RHS. (issue 2322)

        Fixed slot recording of code target patches.
        (Chromium issue 152615,chromium:144230)

        Changed the Android makefile to use GCC 4.6 instead of GCC 4.4.3.

        Performance and stability improvements on all platforms.


6021 6022 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044
2012-10-01: Version 3.14.1

        Don't set -m32 flag when compiling with Android ARM compiler.
        (Chromium issue 143889)

        Restore the descriptor array before returning allocation failure.
        (Chromium issue 151750)

        Lowered kMaxVirtualRegisters (v8 issue 2139, Chromium issues 123822 and
        128252).

        Pull more recent gyp in 'make dependencies'.

        Made sure that the generic KeyedStoreIC changes length and element_kind
        atomically (issue 2346).

        Bumped number of allowed variables per scope to 65535, to address GWT.
        (Chromium issue 151625)

        Support sourceURL for dynamically inserted scripts (issue 2342).

        Performance and stability improvements on all platforms.


6045 6046 6047 6048 6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100
2012-09-20: Version 3.14.0

        Fixed missing slot recording during clearing of CallICs.
        (Chromium issue 144230)

        Fixed LBoundsCheck on x64 to handle (stack slot + constant) correctly.
        (Chromium issue 150729)

        Fixed minus zero test. (Issue 2133)

        Fixed setting array length to zero for slow elements.
        (Chromium issue 146910)

        Fixed lost arguments dropping in HLeaveInlined.
        (Chromium issue 150545)

        Fixed casting error for receiver of interceptors.
        (Chromium issue 149912)

        Throw a more descriptive exception when blocking 'eval' via CSP.
        (Chromium issue 140191)

        Fixed debugger's eval when close to stack overflow. (issue 2318)

        Added checks to live edit. (issue 2297)

        Switched on code compaction on incremental GCs.

        Fixed caching of optimized code for OSR. (issue 2326)

        Not mask exception thrown by toString in String::UtfValue etc.
        (issue 2317)

        Fixed API check for length of external arrays. (Chromium issue 148896)

        Ensure correct enumeration indices in the dict (Chromium issue 148376)

        Correctly initialize regexp global cache. (Chromium issue 148378)

        Fixed arguments object materialization during deopt. (issue 2261)

        Introduced new API to expose external string resource regardless of
        encoding.

        Fixed CHECK failure in LCodeGen::DoWrapReceiver when
        --deopt-every-n-times flag is present
        (Chromium issue 148389)

        Fixed edge case of extension with NULL as source string.
        (Chromium issue 144649)

        Fixed array index dehoisting. (Chromium issue 141395)

        Performance and stability improvements on all platforms.


6101 6102 6103 6104 6105 6106 6107
2012-09-11: Version 3.13.7

        Enable/disable LiveEdit using the (C++) debug API.

        Performance and stability improvements on all platforms.


6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 6120 6121 6122 6123 6124 6125 6126
2012-09-06: Version 3.13.6

        Added validity checking to API functions and calls.

        Disabled accessor inlining (Chromium issue 134609).

        Fixed bug in Math.min/max in optimized code (Chromium issue 145961).

        Directly use %ObjectKeys in json stringify (Chromium issue 2312).

        Fixed VS2005 build (issue 2313).

        Activated fixed ES5 readonly semantics by default.

        Added hardfp flag to the Makefile.

        Performance and stability improvements on all platforms.


6127 6128 6129 6130 6131 6132 6133 6134 6135 6136 6137 6138 6139
2012-08-29: Version 3.13.5

        Release stack trace data after firing Error.stack accessor.
        (issue 2308)

        Added a new API V8::SetJitCodeEventHandler to push code name and
        location to users such as profilers.

        Allocate block-scoped global bindings to global context.

        Performance and stability improvements on all platforms.


6140 6141 6142 6143 6144 6145 6146 6147 6148 6149 6150 6151 6152
2012-08-28: Version 3.13.4

        Print reason for disabling optimization. Kill --trace-bailout flag.

        Provided option to disable full DEBUG build on Android.

        Introduced global contexts to represent lexical global scope(s).

        Fixed rounding in Uint8ClampedArray setter. (issue 2294)

        Performance and stability improvements on all platforms.


6153 6154 6155 6156 6157
2012-08-21: Version 3.13.3

        Performance and stability improvements on all platforms.


6158 6159 6160 6161 6162
2012-08-20: Version 3.13.2

        Performance and stability improvements on all platforms.


6163 6164 6165 6166 6167
2012-08-16: Version 3.13.1

        Performance and stability improvements on all platforms.


6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183
2012-08-10: Version 3.13.0

        Added histograms for total allocated/live heap size, as well as
        allocated size and percentage of total for map and cell space.

        Fixed parseInt's octal parsing behavior (ECMA-262 Annex E 15.1.2.2).
        (issue 1645)

        Added checks for interceptors to negative lookup code in Crankshaft.
        (Chromium issue 140473)

        Made incremental marking clear ICs and type feedback cells.

        Performance and stability improvements on all platforms.


6184 6185 6186 6187 6188
2012-08-01: Version 3.12.19

        Performance and stability improvements on all platforms.


6189 6190 6191 6192 6193 6194 6195 6196 6197
2012-07-30: Version 3.12.18

        Forced using bit-pattern for signed zero double. (issue 2239)

        Made sure double to int conversion is correct. (issue 2260)

        Performance and stability improvements on all platforms.


6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212
2012-07-27: Version 3.12.17

        Always set the callee's context when calling a function from optimized
        code.
        (Chromium issue 138887)

        Fixed building with GCC 3.x
        (issue 2016, 2017)

        Improved API calls that return empty handles.
        (issue 2245)

        Performance and stability improvements on all platforms.


6213 6214 6215 6216 6217
2012-07-25: Version 3.12.16

        Performance and stability improvements on all platforms.


6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239
2012-07-24: Version 3.12.15

        Added PRESERVE_ASCII_NULL option to String::WriteAscii.
        (issue 2252)

        Added dependency to HLoadKeyed* instructions to prevent invalid
        hoisting. (Chromium issue 137768)

        Enabled building d8 for Android on Mac.

        Interpret negative hexadecimal literals as NaN.
        (issue 2240)

        Expose counters in javascript when using --track-gc-object-stats.

        Enabled building and testing V8 on Android IA.

        Added --trace-parse flag to parser.

        Performance and stability improvements on all platforms.


6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250
2012-07-18: Version 3.12.14

        Deactivated optimization of packed arrays.
        (Chromium issue 137768)

        Fixed broken accessor transition.
        (Chromium issue 137689)

        Performance and stability improvements on all platforms.


6251 6252 6253 6254 6255 6256 6257 6258 6259 6260
2012-07-17: Version 3.12.13

        Fixed missing tagging of stack value in finally block.
        (Chromium issue 137496)

        Added more support for heap analysis.

        Performance and stability improvements on all platforms.


6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 6274 6275 6276 6277 6278
2012-07-16: Version 3.12.12

        Added an option to the tickprocessor to specify the directory for lib
        lookup.

        Fixed ICs for slow objects with native accessor (Chromium issue 137002).

        Fixed transcendental cache on ARM in optimized code (issue 2234).

        New heap inspection tools: counters for object sizes and counts,
        histograms for external fragmentation.

        Incorporated constness into inferred interfaces (in preparation for
        handling imports) (issue 1569).

        Performance and stability improvements on all platforms.


6279 6280 6281 6282 6283 6284 6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 6295 6296 6297 6298 6299 6300 6301 6302 6303
2012-07-12: Version 3.12.11

        Renamed "mips" arch to "mipsel" in the GYP build.

        Fixed computation of call targets on prototypes in Crankshaft.
        (Chromium issue 125148)

        Removed use of __lookupGetter__ when generating stack trace.
        (issue 1591)

        Turned on ES 5.2 globals semantics by default.
        (issue 1991, Chromium issue 80591)

        Synced preparser and parser wrt syntax error in switch..case.
        (issue 2210)

        Fixed reporting of octal literals in strict mode when preparsing.
        (issue 2220)

        Fixed inline constructors for Harmony Proxy prototypes.
        (issue 2225)

        Performance and stability improvements on all platforms.


6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315
2012-07-10: Version 3.12.10

        Re-enabled and fixed issue with array bounds check elimination
        (Chromium issue 132114).

        Fixed Debug::Break crash. (Chromium issue 131642)

        Added optimizing compiler support for JavaScript getters.

        Performance and stability improvements on all platforms.


6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326
2012-07-06: Version 3.12.9

        Correctly advance the scanner when scanning unicode regexp flag.
        (Chromium issue 136084)

        Fixed unhandlified code calling Harmony Proxy traps.
        (issue 2219)

        Performance and stability improvements on all platforms.


6327 6328 6329 6330 6331 6332 6333
2012-07-05: Version 3.12.8

        Implemented TypedArray.set and ArrayBuffer.slice in d8.

        Performance and stability improvements on all platforms.


6334 6335 6336 6337 6338 6339 6340 6341 6342 6343 6344 6345 6346 6347 6348 6349
2012-07-03: Version 3.12.7

        Fixed lazy compilation for strict eval scopes.
        (Chromium issue 135066)

        Made MACOSX_DEPLOYMENT_TARGET configurable in GYP.
        (issue 2151)

        Report "hidden properties" in heap profiler for properties case.
        (issue 2212)

        Activated optimization of packed arrays by default.

        Performance and stability improvements on all platforms.


6350 6351 6352 6353 6354 6355 6356
2012-06-29: Version 3.12.6

        Cleaned up hardfp ABI detection for ARM (V8 issue 2140).

        Extended TypedArray support in d8.


6357 6358 6359 6360 6361 6362 6363 6364 6365 6366 6367
2012-06-28: Version 3.12.5

        Fixed lazy parsing heuristics to respect outer scope.
        (Chromium issue 135008)

        Allow using test-wrapper-gypbuild.py on Windows when no python
        interpreter is registered.

        Performance and stability improvements on all platforms.


6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385
2012-06-27: Version 3.12.4

        Removed -fomit-frame-pointer flag from Release builds to make
        the stack walkable by TCMalloc (Chromium issue 133723).

        Ported r7868 (constant masking) to x64 (issue 1374).

        Expose more detailed memory statistics (issue 2201).

        Fixed Harmony Maps and WeakMaps for undefined values
        (Chromium issue 132744).

        Correctly throw reference error in strict mode with ICs disabled
        (issue 2119).

        Performance and stability improvements on all platforms.


6386 6387 6388 6389 6390 6391 6392 6393 6394 6395
2012-06-25: Version 3.12.3

        Reverted r11835 'Unify promotion and allocation limit computation' due
        to V8 Splay performance regression on Mac.  (Chromium issue 134183)

        Fixed sharing of literal boilerplates for optimized code.  (issue 2193)

        Performance and stability improvements on all platforms.


6396 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406
2012-06-22: Version 3.12.2

        Made near-jump check more strict in LoadNamedFieldPolymorphic on
        ia32/x64. (Chromium issue 134055)

        Fixed lazy sweeping heuristics to prevent old-space expansion.
        (issue 2194)

        Performance and stability improvements on all platforms.


6407 6408 6409 6410 6411
2012-06-21: Version 3.12.1

        Performance and stability improvements on all platforms.


6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427
2012-06-20: Version 3.12.0

        Fixed Chromium issues:
        115100, 129628, 131994, 132727, 132741, 132742, 133211

        Fixed V8 issues:
        915, 1914, 2034, 2087, 2094, 2134, 2156, 2166, 2172, 2177, 2179, 2185

        Added --extra-code flag to mksnapshot to load JS code into the VM
        before creating the snapshot.

        Support 'restart call frame' command in the debugger.

        Performance and stability improvements on all platforms.


6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443
2012-06-13: Version 3.11.10

        Implemented heap profiler memory usage reporting.

        Preserved error message during finally block in try..finally.
        (Chromium issue 129171)

        Fixed EnsureCanContainElements to properly handle double values.
        (issue 2170)

        Improved heuristics to keep objects in fast mode with inherited
        constructors.

        Performance and stability improvements on all platforms.


6444 6445 6446 6447 6448 6449 6450 6451 6452 6453 6454
2012-06-06: Version 3.11.9

        Implemented ES5-conformant semantics for inherited setters and read-only
        properties. Currently behind --es5_readonly flag, because it breaks
        WebKit bindings.

        Exposed last seen heap object id via v8 public api.

        Performance and stability improvements on all platforms.


6455 6456 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471
2012-05-31: Version 3.11.8

        Avoid overdeep recursion in regexp where a guarded expression with a
        minimum repetition count is inside another quantifier.
        (Chromium issue 129926)

        Fixed missing write barrier in store field stub.
        (issues 2143, 1465, Chromium issue 129355)

        Proxies: Fixed receiver for setters inherited from proxies.
        Proxies: Fixed ToStringArray function so that it does not reject some
        keys.
        (issue 1543)

        Performance and stability improvements on all platforms.


6472 6473 6474 6475 6476 6477 6478
2012-05-29: Version 3.11.7

        Get better function names in stack traces.

        Performance and stability improvements on all platforms.


6479 6480 6481 6482 6483 6484 6485 6486
2012-05-24: Version 3.11.6

        Fixed RegExp.prototype.toString for incompatible receivers
        (issue 1981).

        Performance and stability improvements on all platforms.


6487 6488 6489 6490 6491
2012-05-23: Version 3.11.5

        Performance and stability improvements on all platforms.


6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511
2012-05-22: Version 3.11.4

        Some cleanup to common.gypi. This fixes some host/target combinations
        that weren't working in the Make build on Mac.

        Handle EINTR in socket functions and continue incomplete sends.
        (issue 2098)

        Fixed python deprecations.  (issue 1391)

        Made socket send and receive more robust and return 0 on failure.
        (Chromium issue 15719)

        Fixed GCC 4.7 (C++11) compilation.  (issue 2136)

        Set '-m32' option for host and target platforms

        Performance and stability improvements on all platforms.


6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523
2012-05-18: Version 3.11.3

        Disable optimization for functions that have scopes that cannot be
        reconstructed from the context chain. (issue 2071)

        Define V8_EXPORT to nothing for clients of v8. (Chromium issue 90078)

        Correctly check for native error objects.  (Chromium issue 2138)

        Performance and stability improvements on all platforms.


6524 6525 6526 6527 6528 6529 6530 6531 6532 6533
2012-05-16: Version 3.11.2

        Revert r11496. (Chromium issue 128146)

        Implement map collection for incremental marking. (issue 1465)

        Add toString method to CallSite (which describes a frame of the
        stack trace).


6534 6535 6536 6537 6538 6539 6540 6541 6542
2012-05-15: Version 3.11.1

        Added a readbuffer function to d8 that reads a file into an ArrayBuffer.

        Fix freebsd build. (V8 issue 2126)

        Performance and stability improvements on all platforms.


6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578
2012-05-11: Version 3.11.0

        Fixed compose-discard crasher from r11524 (issue 2123).

        Activated new global semantics by default. Global variables can
        now shadow properties of the global object (ES5.1 erratum).

        Properly set ElementsKind of empty FAST_DOUBLE_ELEMENTS arrays when
        transitioning (Chromium issue 117409).

        Made Error.prototype.name writable again, as required by the spec and
        the web (Chromium issue 69187).

        Implemented map collection with incremental marking (issue 1465).

        Regexp: Fixed overflow in min-match-length calculation
        (Chromium issue 126412).

        MIPS: Fixed illegal instruction use on Loongson in code for
        Math.random() (issue 2115).

        Fixed crash bug in VisitChoice (Chromium issue 126272).

        Fixed unsigned-Smi check in MappedArgumentsLookup
        (Chromium issue 126414).

        Fixed LiveEdit for function with no locals (issue 825).

        Fixed register clobbering in LoadIC for interceptors
        (Chromium issue 125988).

        Implemented clearing of CompareICs (issue 2102).

        Performance and stability improvements on all platforms.


6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600
2012-05-03: Version 3.10.8

        Enabled MIPS cross-compilation.

        Ensured reload of elements pointer in StoreFastDoubleElement stub.
        (Chromium issue 125515)

        Fixed corner cases in truncation behavior when storing to
        TypedArrays. (issue 2110)

        Fixed failure to properly recognize and report out-of-memory
        conditions when allocating code space pages. (Chromium issue
        118625)

        Fixed idle notifications to perform a round of incremental GCs
        after context disposal. (issue 2107)

        Fixed preparser for try statement. (issue 2109)

        Performance and stability improvements on all platforms.


6601 6602 6603 6604 6605
2012-04-30: Version 3.10.7

        Performance and stability improvements on all platforms.


6606 6607 6608 6609 6610 6611 6612 6613 6614 6615 6616
2012-04-26: Version 3.10.6

        Fixed some bugs in accessing details of the last regexp match.

        Fixed source property of empty RegExp objects. (issue 1982)

        Enabled inlining some V8 API functions.

        Performance and stability improvements on all platforms.


6617 6618 6619 6620 6621 6622 6623 6624 6625 6626 6627
2012-04-23: Version 3.10.5

        Put new global var semantics behind a flag until WebKit tests are
        cleaned up.

        Enabled stepping into callback passed to builtins.
        (Chromium issue 109564)

        Performance and stability improvements on all platforms.


6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638 6639
2012-04-19: Version 3.10.4

        Fixed issues when stressing compaction with WeakMaps.

        Fixed missing GVN flag for new-space promotion. (Chromium issue 123919)

        Simplify invocation sequence at monomorphic function invocation sites.
        (issue 2079)

        Performance and stability improvements on all platforms.


6640 6641 6642 6643 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658
2012-04-17: Version 3.10.3

        Fixed several bugs in heap profiles (including issue 2078).

        Throw syntax errors on illegal escape sequences.

        Implemented rudimentary module linking (behind --harmony flag)

        Implemented ES5 erratum: Global declarations should shadow
        inherited properties.

        Made handling of const more consistent when combined with 'eval'
        and 'with'.

        Fixed V8 on MinGW-x64 (issue 2026).

        Performance and stability improvements on all platforms.


6659 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 6670 6671 6672 6673 6674 6675 6676 6677 6678 6679 6680 6681
2012-04-13: Version 3.10.2

        Fixed native ARM build (issues 1744, 539)

        Return LOOKUP variable instead of CONTEXT for non-context allocated
        outer scope parameters (Chromium issue 119609).

        Fixed regular and ElementsKind transitions interfering with each other
        (Chromium issue 122271).

        Improved performance of keyed loads/stores which have a HeapNumber
        index (issues 1388, 1295).

        Fixed WeakMap processing for evacuation candidates (issue 2060).

        Bailout on possible direct eval calls (Chromium issue 122681).

        Do not assume that names of function expressions are context-allocated
        (issue 2051).

        Performance and stability improvements on all platforms.


6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 6702 6703 6704 6705 6706 6707 6708 6709 6710 6711
2012-04-10: Version 3.10.1

        Fixed bug with arguments object in inlined functions (issue 2045).

        Fixed performance bug with lazy initialization (Chromium issue
        118686).

        Added suppport for Mac OS X 64bit builds with GYP.
        (Patch contributed by Filipe David Manana <fdmanana@gmail.com>)

        Fixed bug with hidden properties (issue 2034).

        Fixed a performance bug when reloading pages (Chromium issue 117767,
        V8 issue 1902).

        Fixed bug when optimizing throw in top-level code (issue 2054).

        Fixed two bugs with array literals (issue 2055, Chromium issue 121407).

        Fixed bug with Math.min/Math.max with NaN inputs (issue 2056).

        Fixed a bug with the new runtime profiler (Chromium issue 121147).

        Fixed compilation of V8 using uClibc.

        Optimized boot-up memory use.

        Optimized regular expressions.


6712 6713 6714 6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725 6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738
2012-03-30: Version 3.10.0

        Fixed store IC writability check in strict mode
        (Chromium issue 120099).

        Resynchronize timers if the Windows system time was changed.
        (Chromium issue 119815)

        Removed "-mfloat-abi=hard" from host compiler cflags when building for
        hardfp ARM
        (https://code.google.com/p/chrome-os-partner/issues/detail?id=8539)

        Fixed edge case for case independent regexp character classes
        (issue 2032).

        Reset function info counters after context disposal.
        (Chromium issue 117767, V8 issue 1902)

        Fixed missing write barrier in CopyObjectToObjectElements.
        (Chromium issue 119926)

        Fixed missing bounds check in HasElementImpl.
        (Chromium issue 119925)

        Performance and stability improvements on all platforms.


6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749
2012-03-23: Version 3.9.24

        Activated count-based profiler for ARM.

        Fixed use of proxies as f.prototype properties. (issue 2021)

        Enabled snapshots on MIPS.

        Performance and stability improvements on all platforms.


6750 6751 6752 6753 6754 6755 6756 6757
2012-03-21: Version 3.9.23

        Use correct arguments adaptation environment when inlining function
        containing arguments. (Issue 2014)

        Performance and stability improvements on all platforms.


6758 6759 6760 6761 6762 6763 6764 6765 6766 6767
2012-03-20: Version 3.9.22

        Enabled count-based profiler by default.

        Implemented a hash based look-up to speed up address checks
        in large object space (issue 853).

        Performance and stability improvements on all platforms.


6768 6769 6770 6771 6772 6773 6774 6775
2012-03-19: Version 3.9.21

        Fixed push-to-trunk script (and re-push).

        Added API call that identifies strings that are guaranteed only to
        contain ASCII characters.


6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794 6795 6796 6797 6798 6799 6800
2012-03-19: Version 3.9.20

        Fixed declarations escaping global strict eval. (Issue 1624)

        Fixed wrapping of receiver for non-strict callbacks. (Issue 1973)

        Fixed function declarations overwriting read-only global properties.
        (Chromium issue 115452)

        Fixed --use-strict flag in combination with --harmony[-scoping].

        Debugger: naive implementation of "step into Function.prototype.bind".

        Debugger: added ability to set script source from within OnBeforeCompile

        Added flag to always call DebugBreak on abort.

        Re-enabled constructor inlining and inline === comparison with boolean
        constants. (Issue 2009)

        Don't use an explicit s0 in ClampDoubleToUint8. (Issue 2004)

        Performance and stability improvements on all platforms.


6801 6802 6803 6804 6805 6806 6807 6808
2012-03-14: Version 3.9.19

        Ensure there is a smi check of the receiver for global load and call
        ICs (Chromium issue 117794).

        Performance and stability improvements on all platforms.


6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819
2012-03-13: Version 3.9.18

        Ensure consistency of Math.sqrt on Intel platforms.

        Remove static initializers in v8. (issue 1859)

        Add explicit dependency on v8_base in the GYP-based build.

        Performance and stability improvements on all platforms.


6820 6821 6822 6823 6824 6825 6826 6827 6828
2012-03-12: Version 3.9.17

        Fixed VFP detection through compiler defines. (issue 1996)

        Add Code-related fields to postmortem metadata.

        Performance and stability improvements on all platforms.


6829 6830 6831 6832 6833 6834 6835 6836 6837 6838 6839
2012-03-09: Version 3.9.16

        Added basic interface inference for modules (behind the --harmony flag).

        Added Object.is, Number.isFinite, Number.isNaN.

        Updated the Unicode tables to Unicode version 6.1.0.

        Performance and stability improvements on all platforms.


6840 6841 6842 6843 6844 6845 6846 6847 6848 6849 6850 6851 6852 6853
2012-03-06: Version 3.9.15

        Fix the heap profiler crash caused by memory layout changes between
        passes.

        Fix Error.prototype.toString to throw TypeError. (issue 1980)

        Fix double-rounding in strtod for MinGW. (issue 1062)

        Fix corrupted snapshot serializaton on ia32. (Chromium issue v8/1985)

        Performance and stability improvements on all platforms.


6854 6855 6856 6857 6858
2012-03-01: Version 3.9.14

        Performance and stability improvements on all platforms.


6859 6860
2012-02-29: Version 3.9.13

6861
        Added code kind check before preparing for OSR. (issue 1900, 115073)
6862

6863 6864
        Fixed issue 1802: Pass zone explicitly to zone-allocation on x64 and
        ARM.
6865

6866
        Ported string construct stub to x64. (issue 849)
6867 6868 6869 6870

        Performance and stability improvements on all platforms.


6871 6872
2012-02-28: Version 3.9.12

6873 6874
        Fixed the negative lookup stub to handle deleted entries in a
        dictionary. (issue 1964)
6875

6876
        Added a new API where the host can supply a callback function. The
6877 6878 6879 6880
        callback function can resolve the location of a return address on stack
        to the location where a return-address rewriting profiler stashed the
        original return address.

6881 6882
        Fixed Chromium issue http://crbug.com/115646: When compiling for-in
        pass correct context value to the increment instruction.
6883

6884 6885
        Fixed issue 1853: Update breakpoints set with partial file name after
        compile.
6886 6887


6888 6889
2012-02-27: Version 3.9.11

6890
        Made 'module' a context-sensitive keyword (V8 issue 1957).
6891 6892


6893 6894 6895 6896 6897 6898 6899 6900 6901
2012-02-24: Version 3.9.10

        Fixed V8 issues 1322, 1772 and 1969.

        Conformance improvements.

        Performance and stability improvements on all platforms.


6902 6903 6904 6905 6906 6907 6908 6909 6910 6911 6912 6913 6914 6915 6916 6917 6918
2012-02-23: Version 3.9.9

        Supported fast case for-in in Crankshaft.

        Sped up heap snapshot serialization and dominators construction.

        Randomized allocation addresses on windows. (Chromium issue 115151)

        Fixed compilation with MinGW-w64. (issue 1943)

        Fixed incorrect value of assignments to non-extensible properties.

        Fixed a crash bug in generated code on ia32.

        Performance and stability improvements on all platforms.


6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931
2012-02-21: Version 3.9.8

        Fixed memory leak and missing #include in StartupDataDecompressor
        (issue 1960).

        Renamed static methods to avoid shadowing virtual methods and fix Clang
        C++11 compile error.

        Fixed sequence of element access in array builtins (issue 1790).

        Performance and stability improvements on all platforms.


6932 6933 6934 6935 6936 6937 6938 6939 6940 6941 6942
2012-02-16: Version 3.9.7

        Fixed V8 issues 1322, 1878, 1942, 1945 and Chromium issue 113924.

        Fixed GCC-4.7 warnings.

        Added Navier-Stokes benchmark.

        Performance and stability improvements on all platforms.


6943 6944
2012-02-14: Version 3.9.6

6945
        Fixed template-related linker error. (issue 1936)
6946

6947
        Allowed inlining of functions containing object literals.  (issue 1322)
6948

6949
        Added --call-graph-size option to tickprocessor.  (issue 1937)
6950 6951 6952 6953 6954 6955 6956

        Heap Snapshot maximum size limit is too low for really big apps. At the
        moment the limit is 256MB.  (Chromium issue 113015)

        Performance and stability improvements on all platforms.


6957 6958 6959 6960 6961 6962 6963
2012-02-09: Version 3.9.5

        Removed unused command line flags.

        Performance and stability improvements on all platforms.


6964 6965 6966 6967 6968 6969 6970 6971
2012-02-08: Version 3.9.4

        Properly initialize element-transitioning array literals on ARM.
        (issue 1930)

        Bug fixes on all platforms.


6972 6973 6974 6975 6976 6977 6978 6979 6980
2012-02-07: Version 3.9.3

        When rethrowing an exception, print the stack trace of its original
        site instead of rethrow site (Chromium issue 60240).

        Increased size of small stacks from 32k to 64k to avoid hitting limits
        in Chromium (Chromium issue 112843).


6981 6982
2012-02-06: Version 3.9.2

6983
        Added timestamp to --trace-gc output. (issue 1932)
6984 6985 6986 6987 6988 6989 6990

        Heap profiler reports implicit references.

        Optionally export metadata with libv8 to enable debuggers to inspect V8
        state.


6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002
2012-02-02: Version 3.9.1

        Fixed memory leak in NativeObjectsExplorer::FindOrAddGroupInfo
        (Chromium issue 112315).

        Fixed a crash in dev tools (Chromium issue 107996).

        Added 'dependencies_traverse': 1 to v8 GYP target.

        Performance and stability improvements on all platforms.


7003 7004
2012-02-01: Version 3.9.0

7005
        Reduced memory use immediately after starting V8.
7006 7007 7008 7009

        Stability fixes and performance improvements on all platforms.


7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020 7021 7022 7023 7024 7025 7026 7027
2012-01-26: Version 3.8.9

        Flush number string cache on GC (issue 1605).

        Provide access to function inferred name with
	v8::Function::GetInferredName in V8 public API.

        Fix building with Clang (issue 1912).

        Reduce the space used by the stack for the profiling thread.

        Fix misleading documentation of v8::Locker (issue 542).

        Introduce readbinary function in d8 to read binary files.

        Performance and stability improvements on all platforms.


7028 7029 7030 7031 7032 7033 7034 7035 7036 7037 7038 7039 7040 7041 7042
2012-01-23: Version 3.8.8

        Limited number of loop iterations in Heap::ReserveSpace
        (Chromium issue 99027).

        Fixed solaris build (VirtualMemory) (issue 1761).

        Fixed strict vs. non-strict handling of function proxies in
        higher-order array and string methods.

        Enabled asynchronous remote debugging with d8 (issue 1691).

        Stability and performance improvements on all platforms.


7043 7044 7045 7046 7047 7048 7049 7050 7051 7052 7053 7054 7055 7056 7057 7058 7059 7060 7061 7062 7063 7064 7065
2012-01-19: Version 3.8.7

        Ensure that LRandom restores rsi after call to the C function on x64.
        (Chromium issue http://crbug.com/110509)

        Fixing include issues on *bsd when building with scons.
        (issue 1897)

        Provide a switch to specify -fno-strict-aliasing
        (issue 1887)

        Move WIN32 define from standalone.gypi to common.gypi
        (issue 1760)

        Fix corner-case in heap size estimation.
        (issue 1893)

        Fix and enable NEW_NON_STRICT_FAST ArgumentsAccess stub on x64.
        (issue 1903)

        Performance improvements and bug fixes.


7066 7067 7068 7069 7070 7071 7072 7073 7074 7075 7076 7077 7078 7079 7080 7081 7082 7083 7084
2012-01-16: Version 3.8.6

        Add primitive WebGL array support to d8.

        Improve heap size estimation (issue 1893).

        Hash collision DOS workaround extended from string keys
        to numeric keys.

        Provide an API for iterating through all external strings referenced
        from the JS heap.

        Adjust position recorded for call expressions. http://crbug.com/109195

        Fix GC crash related to instanceof. http://crbug.com/109448

        Performance improvements and bug fixes.


7085 7086 7087 7088 7089 7090 7091 7092 7093 7094 7095 7096 7097 7098 7099 7100 7101 7102 7103 7104 7105 7106 7107 7108 7109 7110
2012-01-05: Version 3.8.5

        Fix broken test that assumes that no GC can clear the regexp cache (GC
        can happen at any time due to Crankshaft).

        Fix handling of bogus receivers for Harmony collections. (issue 1884)

        Add netbsd support to gyp build.

        Determine page size at runtime on posix platforms.

        Ensure that store buffer filtering hash sets are cleared after
        StoreBuffer::Filter.

        Randomize the seed used for string hashing.  This helps guard against
        CPU-eating DOS attacks against node.js servers.  Based on code from
        Bert Belder.  This version only solves the issue for those that compile
        V8 themselves or those that do not use snapshots.  A snapshot-based
        precompiled V8 will still have predictable string hash codes.

        Implement callback when script finishes running in V8 API.

        Improve performance of Math.min and Math.max for the case of two
        arguments. (issue 1325)


7111 7112 7113 7114 7115 7116 7117
2012-01-02: Version 3.8.4

        Performance improvements for large Smi-only arrays.

        Fixed InternalArrays construction. (issue 1878)


7118 7119 7120 7121 7122 7123 7124 7125
2011-12-27: Version 3.8.3

        Avoid embedding new space objects into code objects in the lithium gap
        resolver. (chromium:108296)

        Bug fixes and performance optimizations on all platforms.


7126 7127 7128 7129 7130 7131 7132 7133 7134 7135
2011-12-21: Version 3.8.2

        Add max optimization flag to v8 gyp build to ensure V8 is always built 
        fully optimized in Chrome.

        MIPS: Bring MIPS to parity with other platforms.

        Optimizations and stability improvements on all platforms.


7136 7137 7138 7139 7140 7141 7142
2011-12-19: Version 3.8.1

        Fixed GCC 4.7 warnings. Patch from Tobias Burnus.

        Stability improvements on all platforms.


7143
2011-12-13: Version 3.8.0
7144 7145 7146 7147 7148 7149

        Fixed handling of arrays in DefineOwnProperty. (issue 1756)

        Sync parser and preparser on do-while and return statements. 
        (issue 1856)

7150 7151
        Fixed another corner case for DefineOwnProperty on arrays (issue 1756).

7152 7153 7154
        Stability and performance improvements on all platforms.


7155 7156 7157 7158 7159 7160 7161 7162 7163 7164 7165 7166 7167 7168 7169
2011-12-01: Version 3.7.12

        Increase tick interval for the android platform.

        Fix a bug in the register allocator. (chromium:105112)

        Fix handling of recompiling code. (chromium:105375, v8:1782)

        Start incremental marking on idle notification. (v8:1458)

        Build fixes for various platforms.

        Various performance improvements.


7170 7171 7172 7173 7174 7175 7176 7177 7178 7179 7180
2011-11-29: Version 3.7.11

        Fixed bug when generating padding to ensure space for lazy
        deoptimization.
        (issue 1846)

        Further reduced pause times due to GC.

        Stability and performance improvements on all platforms.


7181 7182 7183 7184 7185 7186 7187 7188 7189
2011-11-23: Version 3.7.10

        Set maximum length of FixedArray in terms of elements instead an
        absolute number of bytes.
        (Chromium issue 103103)

        Stability and performance improvements on all platforms.


7190 7191 7192 7193 7194 7195 7196
2011-11-21: Version 3.7.9

        Removed exit-time destructors.

        Stability and performance improvements on all platforms.


7197 7198
2011-11-17: Version 3.7.8

7199
        Removed hidden prototype from builtins, i.e., deleting an overridden
7200 7201 7202 7203 7204 7205 7206
        function on builtins will not make the original function reappear.

        Added NetBSD support for scons build.

        Performance improvements on all platforms.


7207 7208 7209 7210 7211 7212
2011-11-14: Version 3.7.7

        Fix missing fast property accessors in heap snapshots.
        (issue 1818)


7213 7214 7215 7216 7217 7218 7219 7220 7221 7222 7223 7224
2011-11-11: Version 3.7.6

        Fixed filtering of store buffer for large object pages.
        (issue 1817)

        Fixed generated hash function on all platforms.
        (issue 1808)

        Fixed Heap::Shrink to ensure that it does not free pages that are
        still in use.
        (Chromium issue 100414)

7225
        Stability and performance improvements on all platforms.
7226 7227


7228 7229 7230 7231
2011-11-10: Version 3.7.5

        Added initial gyp infrastructure for MIPS.

7232
        Implemented performance improvements to the incremental garbage
7233 7234
        collector.

7235
        Added optimizations and stability improvements on all platforms.
7236 7237


7238 7239 7240 7241 7242 7243 7244 7245 7246 7247 7248 7249 7250 7251 7252 7253 7254 7255
2011-11-07: Version 3.7.4

        Proper "libv8.so.3.7.4" SONAME for Linux shared library (issue 1786).

        Fix Harmony sets and maps to allow null and undefined as keys
        (still hidden behind --harmony flag) (issue 1622).

        Implement VirtualMemory on FreeBSD to fix build (issue 1807).

        Enable VFP instructions for Android.

        Fix error handling in Date.prototype.toISOString (issue 1792).

        Bug fixes and performance improvements for all platforms.

        Not officially supported but noteworthy: Crankshaft for MIPS :-)


7256 7257 7258 7259 7260 7261
2011-10-28: Version 3.7.3

        Slight deoptimization as a workaround for issue with jslint: Issue
        1789.


7262 7263 7264 7265 7266
2011-10-27: Version 3.7.2

        Fix bug in deoptimization.  Known issue with jslint: Issue 1789.


7267 7268 7269 7270 7271 7272 7273 7274 7275 7276 7277 7278 7279 7280 7281 7282 7283 7284 7285 7286 7287 7288 7289 7290 7291 7292 7293 7294 7295 7296 7297 7298 7299 7300 7301 7302 7303 7304 7305 7306 7307 7308 7309 7310 7311
2011-10-26: Version 3.7.1

        Achieved 33% speedup in debug-mode tests.

        Removed special casing of calls to RegExp test and exec methods with no
        argument.  Now matches new JSC behaviour.  crbug.com/75740.

        Return the empty string on cyclic references in toString (ES5
        conformance).

        Fixed bug triggered by JSBeautifier.  crbug.com/100409.

        Made Math.random state per-context instead of per-process (issue 864).

        Fixed stack traces to skip native functions.

        Make snapshots (new contexts) smaller and faster.

        Fixed handling of Function.apply for non-array arguments.

        Fixed evaluation order in defineProperties to match FireFox.

        Fixed handling of non-object receivers for array builtins,
        crbug.com/100702.

        Multiple fixes to improve compliance with test262.

        Fixed compatibility with older Android releases.

        Fixed compilation with gcc-4.5.3.

        Improved performance of WriteUtf8, issue 1665.

        Made native syntax an early error in the preparser.

        Fixed issues 793 and 893 relating to Function.prototype.bind.

        Improved let, const, Set and Map support and other Harmony features
        (behind the --harmony flag).

        Changed evaluation order for > and <= to match ES5 instead of ES3.

        Bug fixes and performance improvements on all platforms.


7312 7313 7314 7315 7316 7317 7318 7319 7320 7321 7322 7323 7324 7325 7326 7327
2011-10-13: Version 3.7.0

        Fixed array handling for Object.defineOwnProperty (ES5 conformance).

        Fixed issue 1757 (string slices of external strings).

        Fixed issue 1759 (ARM).

        Added flag --noclever-optimizations to disable some things that
        caused trouble in the past.

        Added flag --stress-compaction for testing.

        Added flag --harmony to activate all experimental Harmony features.


7328 7329 7330 7331 7332 7333 7334 7335
2011-10-10: Version 3.6.6

        Added a GC pause visualization tool.

        Added presubmit=no and werror=no flags to Makefile.

        ES5/Test262 conformance improvements.

7336
        Fixed compilation issues with GCC 4.5.x (issue 1743).
7337 7338 7339 7340

        Bug fixes and performance improvements on all platforms.


7341 7342 7343 7344 7345 7346 7347 7348 7349 7350 7351 7352 7353 7354 7355 7356 7357 7358 7359 7360 7361 7362 7363 7364 7365 7366 7367 7368 7369 7370 7371 7372 7373 7374 7375 7376 7377 7378 7379 7380 7381 7382
2011-10-05: Version 3.6.5

        New incremental garbage collector.

        Removed the hard heap size limit (soft heap size limit is still
        700/1400Mbytes by default).

        Implemented ES5 generic Array.prototype.toString (Issue 1361).

        V8 now allows surrogate pair codes in decodeURIComponent (Issue 1415).

        Fixed x64 RegExp start-of-string bug (Issues 1746, 1748).

        Fixed propertyIsEnumerable for numeric properties (Issue 1692).

        Fixed the MinGW and Windows 2000 builds.

        Fixed "Prototype chain is not searched if named property handler does
        not set a property" (Issue 1636).

        Made the RegExp.prototype object be a RegExp object (Issue 1217).

        Disallowed future reserved words as labels in strict mode.

        Fixed string split to correctly coerce the separator to a string
        (Issue 1711).

        API: Added an optional source length field to the Extension
        constructor.

        API: Added Debug::DisableAgent to match existing Debug::EnableAgent
        (Issue 1573).

        Added "native" target to Makefile for the benefit of Linux distros.

        Fixed: debugger stops stepping outside evaluate (Issue 1639).

        More work on ES-Harmony proxies.  Still hidden behind a flag.

        Bug fixes and performance improvements on all platforms.


7383 7384 7385 7386 7387 7388 7389 7390 7391 7392 7393 7394 7395 7396
2011-09-15: Version 3.6.4

        Fixed d8's broken readline history.

        Removed the need for code delete events in CPU profiler (Issue 1466).

        Fixed debugger stepping next with trycatch recursion (Issue 1639).

        Fixing parallel execution in d8 (with -p) and some memory leaks.

        Support for precise stepping in functions compiled before debugging was
        started (step 1).


7397 7398 7399 7400 7401 7402 7403
2011-09-13: Version 3.6.3

        Implemented better support of typed arrays in the d8 shell.

        Bug fixes and performance improvements on all platforms.


7404 7405 7406 7407 7408 7409 7410 7411 7412 7413 7414
2011-09-08: Version 3.6.2

        Added "dependencies" target to top-level Makefile.

        Added ability to turn profiler on/off in d8.

        Added "soname_version" parameter to common.gypi, v8.gyp, and Makefile.

        Fixed several crash bugs.


7415 7416 7417 7418 7419 7420 7421 7422 7423 7424 7425 7426 7427 7428
2011-09-07: Version 3.6.1

        Fixed a bug in abrupt exit from with or catch inside finally.

        Fixed possible crash in FixedDoubleArray::Initialize() (Chromium
        issue 95113).

        Fixed a bug in Page::GetRegionMaskForSpan (Chromium issue 94425).

        Fixed a few clang warnings (which -Werror treated as errors).

        Performance improvements on all platforms.


7429 7430
2011-09-05: Version 3.6.0

7431
        Fixed a bug when optimizing named function expression (issue 1647).
7432

7433
        Fixed a bug when optimizing f.call.apply (issue 1650).
7434

7435 7436
        Made arguments and caller always be null on native functions
        (issues 1548 and 1643).
7437

7438
        Fixed issue 1648 (cross-compiling x64 targeting ia32).
7439

7440
        Fixed issue 371 (d8 printing of strings containing \0).
7441

7442
        Fixed order of evaluation in arguments to parseInt (issue 1649).
7443

7444 7445
        Fixed a problem with large heap snapshots in Chrome DevTools
        (issue 1658, chromium issue 89268).
7446

7447
        Upped default maximum heap size from 512M to 700M.
7448 7449


7450 7451 7452 7453 7454 7455 7456 7457
2011-08-31: Version 3.5.10

        Added dependency of v8_base on WinSocket2 Windows library in
        the GYP-build.

        Various bugfixes.


7458 7459 7460 7461 7462 7463 7464 7465 7466
2011-08-29: Version 3.5.9

        Made FromPropertyDescriptor not trigger inherited setters.

        Fixed .gyp files to work on the ARM simulator.

        Fixed shared library build warnings for MSVS.


7467 7468 7469 7470 7471 7472 7473 7474 7475 7476 7477
2011-08-24: Version 3.5.8

        Added V8EXPORT attributes for v8::Array::CheckCast and
        v8::Number::CheckCast.

        Made a slight API change enabling opting out from null termination
        in String::Write*().

        Fixed arm build for gcc-4.6.


7478 7479 7480 7481 7482 7483 7484 7485 7486
2011-08-22: Version 3.5.7

        Make scanner handle invalid unicode escapes in identifiers correctly.

        Make regexp flag parsing stricter.

        Fix several memory leaks.


7487 7488 7489 7490 7491 7492 7493 7494 7495 7496 7497 7498 7499 7500 7501
2011-08-17: Version 3.5.6

        Fixed issue that could cause crashes when running with --heap-stats.

        Fixed compilation on Linux 2.6.9 and older.

        Fixed live-object-list to work with isolates.

        Fixed memory leaks in zones and isolates.

        Fixed a performance regression for TypedArrays on x64.

        Stability improvements on all platforms.


7502 7503 7504 7505 7506 7507 7508 7509 7510 7511 7512 7513 7514
2011-08-15: Version 3.5.5

        Fixed bugs involving negative zero and the optimizing compiler.

        Fixed optimized version of Function.apply(x, arguments). (issue 1592)

        Eliminated uses of deprecated ARM instructions.

        Sped up Math.floor by using SSE 4.1 roundsd instruction on ia32.

        Removed restriction on the size of disassembled code that is printed.


7515 7516 7517 7518 7519 7520 7521 7522 7523 7524 7525 7526 7527 7528 7529 7530 7531 7532
2011-08-10: Version 3.5.4

        Added a preliminary implementation of ES Harmony weak maps.  Weak
        maps can be enabled by the flag --harmony-weakmaps.

        Introduced a toplevel Makefile to support GYP-based building.  GYP
        can be obtained from http://gyp.googlecode.com.

        Fixed a bug in the length property of functions created by
        Function.prototype.bind.

        Reduced malloc heap allocation on process startup.

        Several important code generation bug fixes.

        Performance improvements on all platforms.


7533 7534 7535 7536 7537 7538 7539 7540 7541 7542 7543 7544
2011-08-03: Version 3.5.3

        MIPS: Port of fix to ClassOf check from ARM.
        Patch from Paul Lind <plind44@gmail.com>.

        Stopped using mprotect on Cygwin.
        Avoided uninitialized member warning on gcc 4.3.4
        Both patches by Bert Belder.

        Bug fixes and performance improvements on all platforms.


7545 7546 7547 7548 7549
2011-08-01: Version 3.5.2

        Performance improvements on all platforms.


7550 7551 7552 7553 7554 7555 7556 7557 7558 7559 7560 7561 7562 7563 7564
2011-07-28: Version 3.5.1

        Fixed setting the readonly flag on the prototype property using the
        API call FunctionTemplate::SetPrototypeAttributes (issue 1539).

        Changed the tools/test.py script to use d8 instead of shell for
        testing.

        Fixed crash in ToBooleanStub when GC happens during invocation.

        Enabled automatic unboxing of double arrays.

        Performance improvements on all platforms.


7565 7566 7567 7568 7569 7570 7571 7572 7573 7574
2011-07-25: Version 3.5.0

        Implemented Object.prototype.{hasOwnProperty, propertyIsEnumerable} for
        proxies.

        Removed logging to memory support.

        Bugfixes and performance work.


7575 7576 7577 7578
2011-07-20: Version 3.4.14

        Fix the debugger for strict-mode functions. (Chromium issue 89236)

7579
        Add GetPropertyAttribute method for Object in the API. (Patch by
7580
        Peter Varga)
7581 7582 7583 7584

        Fix -Wunused-but-set-variable for gcc-4.6 on x64. (Issue 1291)


7585 7586 7587 7588 7589 7590 7591 7592 7593 7594 7595 7596 7597 7598 7599 7600 7601 7602 7603 7604 7605 7606 7607 7608 7609 7610 7611 7612 7613 7614
2011-07-18: Version 3.4.13

        Improved debugger support to allow inspection of optimized frames (issue
        1140).

        Fixed a bug in prototype transitions cache clearing introduced by r8165.

        Fixed shortcutting bug in HInferRepresentation. Patch by Andy Wingo.

        Fixed a memory leak in sample/shell.cc (dispose semaphores).

        Simplified HClampToUint8. Patch by Andy Wingo.

        Exposed APIs for detecting boxed primitives, native errors. Patch by
        Luke Zarko.

        Added map check for COW elements to crankshaft array handling code
        (issue 1560).

        Sample shell and (a light version of) D8 links against a shared library
        now.

        Fixed bug in array filter and reduce functions (issue 1559).

        Avoid TLS load in AstNode constructor.

        Introduced a random entropy source which can optionally be provided at
        initialization. (Chromium issue 89462).


7615 7616 7617 7618 7619 7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630
2011-07-13: Version 3.4.12

        Added --prof profiling option to d8 shell.

        Fixed a bug where reading a directory in d8 shell hangs (issue 1533).

        Fixed a potential assertion failure in const declarations.

        Fixed an assertion failure in descriptor arrays (issue 1526).

        Enabled fast thread-local storage by default on supported platforms.

        Improved reporting of source position for global variable loads
        (issue 1527).


7631 7632 7633 7634 7635 7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647
2011-07-11: Version 3.4.11

        Fixed MinGW32 build.

        Fixed a GC bug with RegExp code flushing.

        Implemented Object.defineProperty for proxies.

        Fixed a bug in for/in iteration of arguments objects (issue 1531).

        Added debugger support for inspecting optimized frames (issue 1140).

        Allowed JSObject::PreventExtensions to work for arguments objects.

        Bugfixes and performance work.


7648 7649 7650 7651 7652 7653 7654 7655 7656 7657 7658 7659 7660 7661 7662 7663 7664 7665 7666
2011-07-06: Version 3.4.10

        Fixed debugger not breaking on certain "if" statements (issue 1523).

        Fixed assertion failure in runtime profiler when running on IA32
        without snapshot (issue 1522).

        Fixed ABI for API calls on IA32 (for clang compatibility).

        Introduced code flushing of RegExp code to free memory used by
        RegExps sooner.

        Fixed linux-tick-processor built wrong version of v8 (issue 1532).

        Fixed assertion failure in v8::TryCache::StackTrace (issue 1529).

        Performance improvements on all platforms.


7667 7668 7669 7670 7671 7672 7673 7674 7675 7676 7677 7678 7679 7680 7681
2011-07-04: Version 3.4.9

        Added support for debugger inspection of locals in optimized frames
        (issue 1140).

        Fixed SConstruct to pass correct defines to samples/preparser when
        building with library=shared.

        Made date parser handle ES5 Date Time Strings correctly (issue 1498).

        Fixed a bug in Object.defineProperty on the arguments object.

        Performance improvements on all platforms.


7682 7683 7684 7685
2011-06-29: Version 3.4.8

        Ensure 16-byte stack alignment on Solaris (issue 1505).

7686
        Fix "illegal access" when calling parseInt with a radix
7687 7688 7689
        that is not a smi. (issue 1246).


7690 7691 7692 7693 7694 7695 7696 7697 7698 7699
2011-06-27: Version 3.4.7

        Fixed 64-bit build on FreeBSD.

        Added API to set the property attributes for the prototype
        property on functions created from FunctionTemplates.

        Bugfixes and performance work.


7700 7701 7702 7703 7704
2011-06-22: Version 3.4.6

        Lowered limit on code space for systems with low memory supply.

        Allowed compiling v8_shell with the 'host' toolset (issue 82437).
7705

7706 7707
        Extended setBreakpoint API to accept partial script name (issue 1418).

7708
        Made multi-line comments not count when deciding whether the '-->'
7709 7710 7711 7712 7713 7714 7715 7716 7717
        comment starter is first on a line. This matches Safari.

        Made handling of non-array recievers in Array length setter correct
        (issue 1491).

        Added ability to heap profiler to iterate over snapshot's node
        (issue 1481).


7718 7719
2011-06-20: Version 3.4.5

7720 7721
        Fixed issues 794, 1097, 1215(partial), 1417, 1435, 1472, 1473,
        1476, and 1477.
7722 7723 7724 7725 7726 7727 7728 7729 7730 7731 7732

        Improved code generation for !0 and !1.

        Reduced memory usage for regular expressions with nested qualifiers.
        (issue 1472)

        Fixed V8 to count line terminators in multi-line comments.
        (Chromium issue 86431)

        Fixed disassembler=on option for release-mode builds. (issue 1473)

7733 7734
        Performance improvements on all platforms.

7735

7736 7737
2011-06-15: Version 3.4.4

7738
        Added snapshot compression support and --stress-opt flag to d8.
7739

7740
        Improved performance of try/catch.
7741

7742 7743 7744
        Several GYP-related changes: Added support for building Xcode project
        files. Make the ARM simulator build with GYP again. Generate Makefiles
        for all architectures on Linux.
7745

7746 7747
        Fixed Array.prototype.{reduce,reduceRight} to pass undefined as the
        receiver for strict mode callbacks. (issue 1436)
7748

7749
        Fixed a bug where an array load was incorrectly hoisted by GVN.
7750

7751 7752
        Handle 'undefined' correctly when === has been specialized for doubles.
        (issue 1434)
7753

7754 7755
        Corrected the limit of local variables in an optimized function from 64
        to 63.
7756

7757 7758
        Correctly set ReadOnly flag on indexed properties when using the API Set
        method. (issue 1470)
7759

7760 7761
        Give the correct error message when Object.isExtensible is called on a
        non-object. (issue 1452)
7762

7763 7764
        Added GetOwnPropertyNames method for Object in the API. Patch by Peter
        Varga.
7765

7766 7767
        Do not redefine properties unneccesarily in seal and freeze. (issue
        1447)
7768

7769
        IsExecutionTerminating has an Isolate parameter now.
7770

7771 7772
        Distinguish keyed loads with a symbol key from fast elements loads,
        avoiding some useless deoptimizations. (issue 1471)
7773 7774


7775 7776 7777 7778 7779 7780 7781 7782 7783 7784 7785 7786 7787 7788 7789 7790
2011-06-08: Version 3.4.3

        Clear the global thread table when an isolate is disposed
        (issue 1433).

        Converted time zone name to UTF8 on Windows (issue 1290).

        Limited the number of arguments in a function call to 32766
        (issue 1413).

        Compress sources of JS libraries in addition to the snapshot.

        Fixed a bug in Lithium environment iteration.

        Performance improvements on all platforms.

7791

7792 7793 7794 7795 7796 7797 7798 7799 7800 7801 7802 7803 7804 7805 7806 7807 7808 7809
2011-06-06: Version 3.4.2

        More work on ES-Harmony proxies.  Still hidden behind a flag.

        Fixed some crash bugs and improved performance.

        Fixed building with gdb debugging support.

        Do not install SIGPROF handler until it is needed.

        Added DateTimeFormat to i18n API.

        Fixed compilation on OpenBSD.

        Take the ulimit into account when sizing the heap.  OpenBSD users
        may still have to increase the default ulimit to run heavy pages in
        the browser.

7810

7811 7812 7813 7814 7815 7816 7817 7818 7819 7820 7821
2011-06-01: Version 3.4.1

        Fixed JSON stringify issue with arrays.

        Changed calls to JS builtins to be passed undefined when called with
        implicit receiver.

        Implemented the set trap for Harmony proxies. Proxies still need to
        be enabled with the --harmony-proxies flag.


7822 7823 7824 7825 7826 7827 7828 7829 7830 7831 7832 7833
2011-05-30: Version 3.4.0

        Changed calls to undefined property setters to not throw (issue 1355).

        Made RegExp objects not callable.

        Fixed issues on special case large JSON strings in new json parser
        (issues http://crbug.com/83877 and http://crbug.com/84186).

        Performance improvements on all platforms.


7834 7835 7836 7837 7838 7839 7840 7841 7842 7843 7844 7845 7846 7847 7848 7849 7850
2011-05-25: Version 3.3.10

        Fixed calls of strict mode function with an implicit receiver.

        Fixed fast handling of arrays to properly deal with changes to the
        Object prototype (issue 1403).

        Changed strict mode poison pill to be the same type error function
        (issue 1387).

        Fixed a debug crash in arguments object handling (issue 1227).

        Fixed a bug in deoptimization on x64 (issue 1404).

        Performance improvements and bug fixes on all platforms.


7851 7852 7853 7854 7855 7856 7857 7858 7859 7860 7861 7862 7863 7864 7865 7866 7867 7868 7869
2011-05-23: Version 3.3.9

        Added DateTimeFormat class to experimental i18n API.

        Extended preparser to give early errors for some strict mode
        restrictions.

        Removed legacy execScript function from V8.

        Extended isolate API with the ability to add embedder-specific
        data to an isolate.

        Added basic support for polymorphic loads from JS and external
        arrays.

        Fixed bug in handling of switch statements in the optimizing
        compiler.


7870 7871
2011-05-18: Version 3.3.8

7872
        Added MarkIndependent to the persistent handle API.  Independent
7873 7874 7875
        handles are independent of all other persistent handles and can be
        garbage collected more frequently.

7876
        Implemented the get trap for Harmony proxies.  Proxies are enabled
7877 7878 7879 7880 7881
        with the --harmony-proxies flag.

        Performance improvements and bug fixes on all platforms.


7882 7883 7884 7885 7886 7887 7888
2011-05-16: Version 3.3.7

        Updated MIPS infrastructure files.

        Performance improvements and bug fixes on all platforms.


7889 7890 7891 7892 7893 7894 7895 7896
2011-05-11: Version 3.3.6

        Updated MIPS infrastructure files.

        Added method IsCallable for Object to the API.
        Patch by Peter Varga.


7897 7898 7899 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913
2011-05-09: Version 3.3.5

        Fixed build on FreeBSD. Patch by Akinori MUSHA.

        Added check that receiver is JSObject on API calls.

        Implemented CallAsConstructor method for Object in the API (Issue 1348).
        Patch by Peter Varga.

        Added CallAsFunction method to the Object class in the API (Issue 1336).
        Patch by Peter Varga.

        Added per-isolate locking and unlocking.

        Fixed bug in x64 >>> operator (Issue 1359).


7914 7915 7916 7917 7918 7919 7920 7921 7922 7923 7924 7925 7926 7927
2011-05-04: Version 3.3.4

        Implemented API to disallow code generation from strings for a context
        (issue 1258).

        Fixed bug with whitespaces in parseInt (issue 955).

        Fixed bug with == comparison of Date objects (issue 1356).

        Added GYP variables for ARM code generation:
        v8_can_use_vfp_instructions, v8_can_use_unaligned_accesses
        and v8_use_arm_eabi_hardfloat.


7928 7929 7930 7931 7932 7933 7934 7935 7936 7937 7938 7939 7940 7941 7942 7943 7944 7945 7946 7947
2011-05-02: Version 3.3.3

        Added support for generating Visual Studio solution and project files
        using GYP.

        Implemented support for ARM EABI calling convention variation where
        floating-point arguments are passed in registers (hardfloat).

        Added Object::HasOwnProperty() to the API.

        Added support for compressing startup data to reduce binary size. This
        includes build time support and an API for the embedder to decompress
        the startup data before initializing V8.

        Reduced the profiling hooks overhead from >400% to 25% when using
        ll_prof.

        Performance improvements and bug fixes on all platforms.


7948 7949 7950 7951 7952 7953 7954 7955 7956 7957 7958 7959
2011-04-27: Version 3.3.2

        Fixed crash bug on ARM with no VFP3 hardware.

        Fixed compilation of V8 without debugger support.

        Improved performance on JSLint.

        Added support Float64 WebGL arrays.

        Fixed crash bug in regexp replace.

7960

7961 7962 7963 7964 7965 7966 7967 7968 7969
2011-04-20: Version 3.3.1

        Reduced V8 binary size by removing virtual functions from hydrogen.

        Fixed crash bug on x64.

        Performance improvements on ARM and IA32.


7970 7971 7972 7973 7974 7975 7976 7977 7978 7979 7980 7981 7982 7983
2011-04-18: Version 3.3.0

        Fixed bug in floating point rounding in Crankshaft on ARM
        (issue 958)

        Fixed a number of issues with running without VFPv3 support on ARM
        (issue 1315)

        Introduced v8Locale.Collator, a partial implementation of Collator
        per last ECMAScript meeting + mailing list.

        Minor performance improvements and bug fixes.


7984 7985 7986 7987 7988 7989 7990
2011-04-13: Version 3.2.10

        Fixed bug in external float arrays on ARM (issue 1323).

        Minor performance improvements and bug fixes.


7991 7992 7993 7994 7995 7996 7997 7998 7999 8000 8001 8002 8003 8004 8005 8006 8007 8008 8009
2011-04-11: Version 3.2.9

        Removed support for ABI prior to EABI on ARM.

        Fixed multiple crash bugs.

        Added GCMole to the repository, a simple static analysis tool that
        searches for GC-unsafe evaluation order dependent callsites.

        Made preparser API be exported in shared libraries.

        Fixed multiple issues in EcmaScript 5 strict mode implementation.

        Fixed mutable __proto__ property if object is not extensible
        (Issue 1309).

        Fixed auto suspension of the sampler thread.


8010 8011 8012 8013 8014 8015 8016
2011-04-06: Version 3.2.8

        Exposed WebGL typed array constructors in the shell sample.

        Performance improvements on all platforms.


8017 8018 8019 8020 8021 8022 8023 8024 8025 8026
2011-04-04: Version 3.2.7

        Disabled the original 'classic' V8 code generator.  Crankshaft is
        now the default on all platforms.

        Changed the heap profiler to use more descriptive names.

        Performance and stability improvements to isolates on all platforms.


8027 8028 8029 8030 8031 8032 8033 8034 8035 8036 8037 8038 8039 8040
2011-03-30: Version 3.2.6

        Fixed xcode build warning in shell.cc (out of order initialization).

        Fixed null-pointer dereference in the compiler when running without
        SSE3 support (Chromium issue 77654).

        Fixed x64 compilation error due to some dead code. (Issue 1286)

        Introduced scons target to build the preparser stand-alone example.

        Made FreeBSD build and pass all tests.


8041 8042
2011-03-28: Version 3.2.5

8043
        Fixed build with Irregexp interpreter (issue 1266).
8044 8045 8046 8047 8048 8049

        Added Crankshaft support for external arrays.

        Fixed two potential crash bugs.


8050 8051 8052 8053 8054 8055 8056 8057 8058 8059 8060 8061 8062
2011-03-23: Version 3.2.4

        Added isolates which allows several V8 instances in the same process.
        This is controlled through the new Isolate class in the API.

        Implemented more of EcmaScript 5 strict mode.

        Reduced the time it takes to make detailed heap snapshot.

        Added a number of commands to the ARM simulator and enhanced the ARM
        disassembler.


8063 8064 8065 8066 8067 8068 8069 8070 8071 8072 8073 8074 8075 8076 8077
2011-03-17: Version 3.2.3

        Fixed a number of crash bugs.

        Fixed Array::New(length) to return an array with a length (issue 1256).

        Fixed FreeBSD build.

        Changed __defineGetter__ to not throw (matching the behavior of Safari).

        Implemented more of EcmaScript 5 strict mode.

        Improved Crankshaft performance on all platforms.


8078 8079 8080 8081 8082 8083 8084 8085 8086
2011-03-14: Version 3.2.2

        Fixed a number of crash and correctness bugs.

        Improved Crankshaft performance on all platforms.

        Fixed Crankshaft on Solaris/Illumos.


8087 8088 8089 8090 8091 8092 8093 8094 8095
2011-03-10: Version 3.2.1

        Fixed a number of crash bugs.

        Improved Crankshaft for x64 and ARM.

        Implemented more of EcmaScript 5 strict mode.


8096 8097 8098 8099 8100 8101 8102 8103 8104 8105 8106
2011-03-07: Version 3.2.0

        Fixed a number of crash bugs.

        Turned on Crankshaft by default on x64 and ARM.

        Improved Crankshaft for x64 and ARM.

        Implemented more of EcmaScript 5 strict mode.


8107 8108 8109 8110 8111 8112 8113 8114 8115 8116 8117 8118 8119
2011-03-02: Version 3.1.8

        Fixed a number of crash bugs.

        Improved Crankshaft for x64 and ARM.

        Implemented more of EcmaScript 5 strict mode.

        Fixed issue with unaligned reads and writes on ARM.

        Improved heap profiler support.


8120 8121 8122 8123 8124 8125
2011-02-28: Version 3.1.7

        Fixed a number of crash bugs.

        Improved Crankshaft for x64 and ARM.

8126
        Fixed implementation of indexOf/lastIndexOf for sparse
8127 8128 8129 8130 8131 8132 8133
        arrays (http://crbug.com/73940).

        Fixed bug in map space compaction (http://crbug.com/59688).

        Added support for direct getter accessors calls on ARM.


8134 8135 8136 8137 8138 8139 8140 8141 8142 8143 8144 8145 8146
2011-02-24: Version 3.1.6

        Fixed a number of crash bugs.

        Added support for Cygwin (issue 64).

        Improved Crankshaft for x64 and ARM.

        Added Crankshaft support for stores to pixel arrays.

        Fixed issue in CPU profiler with Crankshaft.


8147 8148 8149 8150 8151 8152 8153 8154 8155 8156 8157
2011-02-16: Version 3.1.5

        Change RegExp parsing to disallow /(*)/.

        Added GDB JIT support for ARM.

        Fixed several crash bugs.

        Performance improvements on the IA32 platform.


8158 8159 8160 8161 8162 8163 8164 8165 8166 8167 8168 8169 8170 8171 8172 8173 8174 8175 8176 8177 8178 8179 8180 8181 8182 8183 8184 8185 8186 8187 8188 8189 8190 8191 8192 8193 8194
2011-02-14: Version 3.1.4

        Fixed incorrect compare of prototypes of the global object (issue
        1082).

        Fixed a bug in optimizing calls to global functions (issue 1106).

        Made optimized Function.prototype.apply safe for non-JSObject first
        arguments (issue 1128).

        Fixed an error related to element accessors on Object.prototype and
        parser errors (issue 1130).

        Fixed a bug in sorting an array with large array indices (issue 1131).

        Properly treat exceptions thrown while compiling (issue 1132).

        Fixed bug in register requirements for function.apply (issue 1133).

        Fixed a representation change bug in the Hydrogen graph construction
        (issue 1134).

        Fixed the semantics of delete on parameters (issue 1136).

        Fixed a optimizer bug related to moving instructions with side effects
        (issue 1138).

        Added support for the global object in Object.keys (issue 1150).

        Fixed incorrect value for Math.LOG10E
        (issue http://code.google.com/p/chromium/issues/detail?id=72555)

        Performance improvements on the IA32 platform.

        Implement assignment to undefined reference in ES5 Strict Mode.


8195 8196 8197 8198 8199
2011-02-09: Version 3.1.3

        Fixed a bug triggered by functions with huge numbers of declared
        arguments.

8200
        Fixed zap value aliasing a real object - debug mode only (issue 866).
8201

8202 8203
        Fixed issue where Array.prototype.__proto__ had been set to null
        (issue 1121).
8204 8205 8206 8207

        Fixed stability bugs in Crankshaft for x86.


8208 8209 8210 8211 8212 8213 8214 8215 8216 8217 8218 8219
2011-02-07: Version 3.1.2

        Added better security checks when accessing properties via
        Object.getOwnPropertyDescriptor.

        Fixed bug in Object.defineProperty and related access bugs (issues
        992, 1083 and 1092).

        Added LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to ease
        copyright notice generation for embedders.


8220 8221 8222 8223 8224 8225 8226 8227 8228 8229 8230 8231 8232 8233
2011-02-02: Version 3.1.1

        Perform security checks before fetching the value in
        Object.getOwnPropertyDescriptor.

        Fixed a bug in Array.prototype.splice triggered by passing no
        arguments.

        Fixed bugs in -0 in arithmetic and in Math.pow.

        Fixed bugs in the register allocator and in switching from optimized
        to unoptimized code.


8234 8235
2011-01-31: Version 3.1.0

8236 8237 8238
        Performance improvements on all platforms.


8239 8240 8241 8242 8243 8244 8245 8246
2011-01-28: Version 3.0.12

        Added support for strict mode parameter and object property
        validation.

        Fixed a couple of crash bugs.


8247 8248 8249 8250 8251 8252 8253 8254 8255 8256
2011-01-25: Version 3.0.11

        Fixed a bug in deletion of lookup slots that could cause global
        variables to be accidentally deleted (http://crbug.com/70066).

        Added support for strict mode octal literal verification.

        Fixed a couple of crash bugs (issues 1070 and 1071).


8257 8258 8259 8260
2011-01-24: Version 3.0.10

        Fixed External::Wrap for 64-bit addresses (issue 1037).

8261
        Fixed incorrect .arguments variable proxy handling in the full
8262 8263 8264 8265
        code generator (issue 1060).

        Introduced partial strict mode support.

8266 8267
        Changed formatting of recursive error messages to match Firefox and
        Safari (issue http://crbug.com/70334).
8268 8269

        Fixed incorrect rounding for float-to-integer conversions for external
8270
        array types, which implement the Typed Array spec
8271 8272 8273 8274 8275
        (issue http://crbug.com/50972).

        Performance improvements on the IA32 platform.


8276 8277 8278 8279 8280 8281 8282 8283
2011-01-19: Version 3.0.9

        Added basic GDB JIT Interface integration.

        Make invalid break/continue statements a syntax error instead of a
        runtime error.


8284 8285 8286
2011-01-17: Version 3.0.8

        Exposed heap size limit to the heap statistics gathered by
8287
        the GetHeapStatistics API.
8288 8289 8290 8291 8292 8293 8294 8295 8296 8297 8298 8299

        Wrapped external pointers more carefully (issue 1037).

        Hardened the implementation of error objects to avoid setters
        intercepting the properties set then throwing an error.

        Avoided trashing the FPSCR when calculating Math.floor on ARM.

        Performance improvements on the IA32 platform.


2011-01-10: Version 3.0.7
8300 8301 8302 8303 8304 8305 8306 8307 8308 8309 8310 8311 8312

        Stopped calling inherited setters when creating object literals
        (issue 1015).

        Changed interpretation of malformed \c? escapes in RegExp to match
        JSC.

        Enhanced the command-line debugger interface and fixed some minor
        bugs in the debugger.

        Performance improvements on the IA32 platform.


8313
2011-01-05: Version 3.0.6
8314

8315
        Allowed getters and setters on JSArray elements (issue 900).
8316

8317 8318
        Stopped JSON objects from hitting inherited setters (part of
        issue 1015).
8319 8320

        Allowed numbers and strings as names of getters/setters in object
8321
        initializer (issue 820).
8322 8323 8324 8325

        Added use_system_v8 option to gyp (off by default), to make it easier
        for Linux distributions to ship with system-provided V8 library.

8326
        Exported external array data accessors (issue 1016).
8327 8328 8329 8330

        Added labelled thread names to help with debugging (on Linux).


8331 8332 8333 8334 8335 8336 8337
2011-01-03: Version 3.0.5

        Fixed a couple of cast errors for gcc-3.4.3.

        Performance improvements in GC and IA32 code generator.


8338 8339 8340 8341 8342 8343 8344 8345 8346 8347 8348
2010-12-21: Version 3.0.4

        Added Date::ResetCache() to the API so that the cached values in the
        Date object can be reset to allow live DST / timezone changes.

        Extended existing support for printing (while debugging) the contents
        of objects.  Added support for printing objects from release builds.

        Fixed V8 issues 989, 1006, and 1007.


8349 8350 8351 8352 8353 8354 8355 8356 8357 8358 8359 8360 8361 8362 8363 8364 8365
2010-12-17: Version 3.0.3

        Reapplied all changes for version 3.0.1.

        Improved debugger protocol for remote debugging.

        Added experimental support for using gyp to generate build files
        for V8.

        Fixed implementation of String::Write in the API (issue 975).


2010-12-15: Version 3.0.2

        Revert version 3.0.1 and patch 3.0.1.1.


8366 8367 8368 8369 8370 8371 8372 8373 8374 8375 8376 8377 8378 8379 8380 8381 8382 8383 8384 8385 8386 8387 8388
2010-12-13: Version 3.0.1

        Added support for an experimental internationalization API as an
        extension.  This extension is disabled by default but can be enabled
        when building V8.  The ECMAScript internationalization strawman is
        at http://wiki.ecmascript.org/doku.php?id=strawman:i18n_api.

        Made RegExp character class parsing stricter.  This mirrors a change
        to RegExp parsing in WebKit.

        Fixed a bug in Object.defineProperty when used to change attributes
        of an existing property.  It incorrectly set the property value to
        undefined (issue 965).

        Fixed several different compilation failures on various platforms
        caused by the 3.0.0 release.

        Optimized Math.pow so it can work on unboxed doubles.

        Sped up quoting of JSON strings by removing one traversal of the
        string.


8389 8390 8391 8392 8393 8394
2010-12-07: Version 3.0.0

        Improved performance by (partially) addressing issue 957 on
        IA-32. Still needs more work for the other architectures.


8395 8396 8397 8398 8399 8400 8401 8402 8403 8404 8405 8406 8407 8408 8409 8410 8411 8412 8413 8414 8415 8416 8417 8418 8419
2010-11-29: Version 2.5.9

        Fixed crashes during GC caused by partially initialize heap
        objects.

        Fixed bug in process sample that caused memory leaks.

        Improved performance on ARM by implementing missing stubs and
        inlining.

        Improved heap profiler support.

        Added separate seeding on Windows of the random number generator
        used internally by the compiler (issue 936).

        Exposed API for getting the name of the function used to construct
        an object.

        Fixed date parser to handle one and two digit millisecond
        values (issue 944).

        Fixed number parsing to disallow space between sign and
        digits (issue 946).


8420 8421 8422 8423 8424 8425 8426 8427 8428 8429
2010-11-23: Version 2.5.8

        Removed dependency on Gay's dtoa.

        Improved heap profiler precision and speed.

        Reduced overhead of callback invocations on ARM.


2010-11-18: Version 2.5.7
8430 8431 8432 8433 8434 8435 8436 8437 8438 8439 8440 8441 8442 8443 8444 8445 8446 8447 8448 8449 8450 8451 8452

        Fixed obscure evaluation order bug (issue 931).

        Split the random number state between JavaScript and the private API.

        Fixed performance bug causing GCs when generating stack traces on
        code from very large scripts.

        Fixed bug in parser that allowed (foo):42 as a labelled statement
        (issue 918).

        Provide more accurate results about used heap size via
        GetHeapStatistics.

        Allow build-time customization of the max semispace size.

        Made String.prototype.split honor limit when separator is empty
        (issue 929).

        Added missing failure check after expecting an identifier in
        preparser (Chromium issue 62639).


8453 8454 8455 8456 8457 8458 8459 8460 8461
2010-11-10: Version 2.5.6

        Added support for VFP rounding modes to the ARM simulator.

        Fixed multiplication overflow bug (issue 927).

        Added a limit for the amount of executable memory (issue 925).


8462 8463 8464 8465 8466 8467 8468 8469 8470
2010-11-08: Version 2.5.5

        Added more aggressive GC of external objects in near out-of-memory
        situations.

        Fixed a bug that gave the incorrect result for String.split called
        on the empty string (issue 924).


8471 8472
2010-11-03: Version 2.5.4

8473
        Improved V8 VFPv3 runtime detection to address issue 914.
8474 8475


8476 8477 8478 8479 8480 8481 8482 8483 8484
2010-11-01: Version 2.5.3

        Fixed a bug that prevents constants from overwriting function values
        in object literals (issue 907).

        Fixed a bug with reporting of impossible nested calls of DOM functions
        (issue http://crbug.com/60753).


8485 8486 8487 8488 8489 8490 8491
2010-10-27: Version 2.5.2

        Improved sampler resolution on Linux.

        Allowed forcing the use of a simulator from the build script
        independently of the host architecture.

8492
        Fixed FreeBSD port (issue 912).
8493 8494 8495 8496 8497 8498

        Made windows-tick-processor respect D8_PATH.

        Implemented --noinline-new flag fully on IA32, X64 and ARM platforms.


8499 8500 8501 8502 8503
2010-10-20: Version 2.5.1

        Fixed bug causing spurious out of memory exceptions
        (issue http://crbug.com/54580).

8504
        Fixed compilation error on Solaris platform (issue 901).
8505

8506
        Fixed error in strtod (string to floating point number conversion)
8507 8508
        due to glibc's use of 80-bit floats in the FPU on 32-bit linux.

8509
        Adjusted randomized allocations of executable memory to have 64k
8510 8511
        granularity (issue http://crbug.com/56036).

8512
        Supported profiling using kernel perf_events on linux.  Added ll_prof
8513 8514 8515
        script to tools and --ll-prof flag to V8.


8516 8517 8518 8519 8520 8521 8522
2010-10-18: Version 2.5.0

        Fixed bug in cache handling of lastIndex on global regexps
        (issue http://crbug.com/58740).

        Added USE_SIMULATOR macro that explicitly indicates that we wish to use
        the simulator as the execution engine (by Mark Lam <mark.lam@palm.com>
8523
        from Hewlett-Packard Development Company, LP).
8524 8525 8526 8527

        Fixed compilation error on ARM with gcc 4.4 (issue 894).


8528
2010-10-13: Version 2.4.9
8529 8530 8531 8532 8533 8534 8535 8536 8537

        Fixed a bug in the handling of conditional expressions in test
        contexts in compiler for top-level code.

        Added "//@ sourceURL" information to the StackTrace API.

        Exposed RegExp construction through the API.


8538 8539 8540 8541 8542 8543 8544 8545
2010-10-04: Version 2.4.8

        Fixed a bug in ResumeProfilerEx causing it to not always write out the
        whole snapshot (issue 868).

        Performance improvements on all platforms.


8546 8547 8548 8549 8550 8551 8552 8553 8554 8555 8556 8557 8558
2010-09-30: Version 2.4.7

        Changed the command-line flag --max-new-space-size to be in kB and the
        flag --max-old-space-size to be in MB (previously they were in bytes).

        Added Debug::CancelDebugBreak to the debugger API.

        Fixed a bug in getters for negative numeric property names
        (https://bugs.webkit.org/show_bug.cgi?id=46689).

        Performance improvements on all platforms.


8559
2010-09-27: Version 2.4.6
8560

8561 8562 8563 8564 8565 8566 8567 8568 8569 8570 8571 8572
        Fixed assertion failure related to copy-on-write arrays (issue 876).

        Fixed build failure of 64-bit V8 on Windows.

        Fixed a bug in RegExp (issue http://crbug.com/52801).

        Improved the profiler's coverage to cover more functions (issue 858).

        Fixed error in shift operators on 64-bit V8
        (issue http://crbug.com/54521).


8573
2010-09-22: Version 2.4.5
8574

8575 8576 8577 8578 8579 8580 8581 8582 8583 8584 8585 8586
        Changed the RegExp benchmark to exercise the regexp engine on different
        inputs by scrambling the input strings.

        Fixed a bug in keyed loads on strings.

        Fixed a bug with loading global function prototypes.

        Fixed a bug with profiling RegExp calls (issue http://crbug.com/55999).

        Performance improvements on all platforms.


8587 8588
2010-09-15: Version 2.4.4

8589
        Fixed bug with hangs on very large sparse arrays.
8590

8591
        Now tries harder to free up memory when running out of space.
8592

8593
        Added heap snapshots to JSON format to API.
8594

8595
        Recalibrated benchmarks.
8596 8597


8598 8599 8600 8601 8602 8603 8604
2010-09-13: Version 2.4.3

        Made Date.parse properly handle TZ offsets (issue 857).

        Performance improvements on all platforms.


8605 8606 8607 8608 8609 8610 8611 8612 8613 8614
2010-09-08: Version 2.4.2

        Fixed GC crash bug.

        Fixed stack corruption bug.

        Fixed compilation for newer C++ compilers that found Operand(0)
        ambiguous.


8615 8616
2010-09-06: Version 2.4.1

8617 8618 8619
        Added the ability for an embedding application to receive a callback
        when V8 allocates (V8::AddMemoryAllocationCallback) or deallocates
        (V8::RemoveMemoryAllocationCallback) from the OS.
8620

8621
        Fixed several JSON bugs (including issue 855).
8622

8623 8624
        Fixed memory overrun crash bug triggered during V8's tick-based
        profiling.
8625

8626
        Performance improvements on all platforms.
8627 8628


8629 8630
2010-09-01: Version 2.4.0

8631 8632
        Fixed bug in Object.freeze and Object.seal when Array.prototype or
        Object.prototype are changed (issue 842).
8633

8634
        Updated Array.splice to follow Safari and Firefox when called
8635
        with zero arguments.
8636

8637
        Fixed a missing live register when breaking at keyed loads on ARM.
8638

8639
        Performance improvements on all platforms.
8640 8641


8642 8643
2010-08-25: Version 2.3.11

8644
        Fixed bug in RegExp related to copy-on-write arrays.
8645

8646
        Refactored tools/test.py script, including the introduction of
8647 8648
        VARIANT_FLAGS that allows specification of sets of flags with which
        all tests should be run.
8649

8650
        Fixed a bug in the handling of debug breaks in CallIC.
8651

8652
        Performance improvements on all platforms.
8653 8654 8655 8656


2010-08-23: Version 2.3.10

8657
        Fixed bug in bitops on ARM.
8658 8659 8660 8661 8662 8663 8664 8665

        Build fixes for unusual compilers.

        Track high water mark for RWX memory.

        Performance improvements on all platforms.


8666 8667
2010-08-18: Version 2.3.9

8668
        Fixed compilation for ARMv4 on OpenBSD/FreeBSD.
8669 8670 8671

        Removed specialized handling of GCC 4.4 (issue 830).

8672
        Fixed DST cache to take into account the suspension of DST in
8673 8674
        Egypt during the 2010 Ramadan (issue http://crbug.com/51855).

8675
        Performance improvements on all platforms.
8676 8677


8678 8679 8680 8681 8682 8683 8684 8685 8686 8687 8688 8689
2010-08-16: Version 2.3.8

        Fixed build with strict aliasing on GCC 4.4 (issue 463).

        Fixed issue with incorrect handling of custom valueOf methods on
        string wrappers (issue 760).

        Fixed compilation for ARMv4 (issue 590).

        Improved performance.


8690 8691 8692 8693 8694 8695 8696 8697 8698 8699 8700 8701 8702 8703 8704 8705 8706 8707 8708
2010-08-11: Version 2.3.7

        Reduced size of heap snapshots produced by heap profiler (issue 783).

        Introduced v8::Value::IsRegExp method.

        Fixed CPU profiler crash in start / stop sequence when non-existent
        name is passed (issue http://crbug.com/51594).

        Introduced new indexed property query callbacks API (issue 816). This
        API is guarded by USE_NEW_QUERY_CALLBACK define and is disabled
        by default.

        Removed support for object literal get/set with number/string
        property name.

        Fixed handling of JSObject::elements in CalculateNetworkSize
        (issue 822).

8709
        Allowed compiling with strict aliasing enabled on GCC 4.4 (issue 463).
8710 8711


8712 8713
2010-08-09: Version 2.3.6

8714 8715
        RegExp literals create a new object every time they are evaluated
        (issue 704).
8716

8717
        Object.seal and Object.freeze return the modified object (issue 809).
8718

8719
        Fixed building using GCC 4.4.4.
8720 8721


8722 8723 8724 8725 8726 8727
2010-08-04: Version 2.3.5

        Added support for ES5 property names. Object initialisers and
        dot-notation property access now allows keywords. Also allowed
        non-identifiers after "get" or "set" in an object initialiser.

8728
        Randomized the addresses of allocated executable memory on Windows.
8729 8730


8731 8732 8733 8734 8735 8736 8737 8738 8739 8740 8741 8742 8743 8744 8745 8746 8747 8748 8749 8750 8751 8752 8753 8754 8755
2010-08-02: Version 2.3.4

        Fixed problems in implementation of ES5 function.prototype.bind.

        Fixed error when using apply with arguments object on ARM (issue 784).

        Added setting of global flags to debugger protocol.

        Fixed an error affecting cached results of sin and cos (issue 792).

        Removed memory leak from a boundary case where V8 is not initialized.

        Fixed issue where debugger could set breakpoints outside the body
        of a function.

        Fixed issue in debugger when using both live edit and step in features.

        Added Number-letter (Nl) category to Unicode tables.  These characters
        can now be used in identifiers.

        Fixed an assert failure on X64 (issue 806).

        Performance improvements on all platforms.


8756 8757 8758 8759 8760 8761 8762 8763 8764 8765 8766 8767 8768 8769
2010-07-26: Version 2.3.3

        Fixed error when building the d8 shell in a fresh checkout.

        Implemented Function.prototype.bind (ES5 15.3.4.5).

        Fixed an error in inlined stores on ia32.

        Fixed an error when setting a breakpoint at the end of a function
        that does not end with a newline character.

        Performance improvements on all platforms.


8770 8771 8772 8773 8774 8775 8776 8777
2010-07-21: Version 2.3.2

        Fixed compiler warnings when building with LLVM.

        Fixed a bug with for-in applied to strings (issue 785).

        Performance improvements on all platforms.

8778

8779 8780 8781 8782 8783 8784 8785 8786 8787 8788
2010-07-19: Version 2.3.1

        Fixed compilation and linking with V8_INTERPRETED_REGEXP flag.

        Fixed bug related to code flushing while compiling a lazy
        compilable function (issue http://crbug.com/49099).

        Performance improvements on all platforms.


8789 8790 8791 8792 8793 8794 8795 8796
2010-07-15: Version 2.3.0

        Added ES5 Object.seal and Object.isSealed.

        Added debugger API for scheduling debugger commands from a
        separate thread.


8797 8798 8799 8800 8801 8802 8803 8804 8805 8806 8807 8808 8809 8810 8811
2010-07-14: Version 2.2.24

        Added API for capturing stack traces for uncaught exceptions.

        Fixed crash bug when preparsing from a non-external V8 string
        (issue 775).

        Fixed JSON.parse bug causing input not to be converted to string
        (issue 764).

        Added ES5 Object.freeze and Object.isFrozen.

        Performance improvements on all platforms.


8812 8813 8814 8815 8816 8817 8818 8819 8820 8821 8822 8823 8824
2010-07-07: Version 2.2.23

        API change: Convert Unicode code points outside the basic multilingual
        plane to the replacement character.  Previous behavior was to silently
        truncate the value to 16 bits.

        Fixed crash: handle all flat string types in regexp replace.

        Prevent invalid pre-parsing data passed in through the API from
        crashing V8.

        Performance improvements on all platforms.

8825

8826 8827 8828 8829 8830 8831 8832 8833 8834 8835 8836 8837
2010-07-05: Version 2.2.22

        Added ES5 Object.isExtensible and Object.preventExtensions.

        Enabled building V8 as a DLL.

        Fixed a bug in date code where -0 was not interpreted as 0
        (issue 736).

        Performance improvements on all platforms.


8838 8839
2010-06-30: Version 2.2.21

8840
        Fixed bug in externalizing some ASCII strings (Chromium issue 47824).
8841

8842
        Updated JSON.stringify to floor the space parameter (issue 753).
8843

8844
        Updated the Mozilla test expectations to the newest version.
8845

8846
        Updated the ES5 Conformance Test expectations to the latest version.
8847

8848
        Updated the V8 benchmark suite.
8849 8850 8851 8852

        Provide actual breakpoints locations in response to setBreakpoint
        and listBreakpoints requests.

8853

8854
2010-06-28: Version 2.2.20
8855

8856
        Fixed bug with for-in on x64 platform (issue 748).
8857

8858
        Fixed crash bug on x64 platform (issue 756).
8859

8860
        Fixed bug in Object.getOwnPropertyNames. (chromium issue 41243).
8861

8862
        Fixed a bug on ARM that caused the result of 1 << x to be
8863 8864 8865 8866
        miscalculated for some inputs.

        Performance improvements on all platforms.

8867

8868 8869
2010-06-23: Version 2.2.19

8870
        Fixed bug that causes the build to break when profillingsupport=off
8871 8872 8873 8874 8875 8876 8877
        (issue 738).

        Added expose-externalize-string flag for testing extensions.

        Resolve linker issues with using V8 as a DLL causing a number of
        problems with unresolved symbols.

8878
        Fixed build failure for cctests when ENABLE_DEBUGGER_SUPPORT is not
8879 8880 8881 8882 8883
        defined.

        Performance improvements on all platforms.


8884 8885 8886 8887 8888
2010-06-16: Version 2.2.18

        Added API functions to retrieve information on indexed properties
        managed by the embedding layer.  Fixes bug 737.

8889
        Made ES5 Object.defineProperty support array elements.  Fixes bug 619.
8890

8891
        Added heap profiling to the API.
8892

8893
        Removed old named property query from the API.
8894 8895 8896 8897

        Incremental performance improvements.


8898
2010-06-14: Version 2.2.17
8899

8900 8901 8902 8903 8904 8905 8906
        Improved debugger support for stepping out of functions.

        Incremental performance improvements.


2010-06-09: Version 2.2.16

8907
        Removed the SetExternalStringDiposeCallback API. Changed the
8908 8909 8910
        disposal of external string resources to call a virtual Dispose
        method on the resource.

8911
        Added support for more precise break points when debugging and
8912 8913 8914 8915 8916
        stepping.

        Memory usage improvements on all platforms.


8917 8918
2010-06-07: Version 2.2.15

8919
        Added an API to control the disposal of external string resources.
8920

8921
        Added missing initialization of a couple of variables which makes
8922 8923
        some compilers complaint when compiling with -Werror.

8924
        Improved performance on all platforms.
8925 8926


8927 8928 8929 8930 8931 8932 8933 8934 8935
2010-06-02: Version 2.2.14

        Fixed a crash in code generated for String.charCodeAt.

        Fixed a compilation issue with some GCC versions (issue 727).

        Performance optimizations on x64 and ARM platforms.


8936 8937
2010-05-31: Version 2.2.13

8938
        Implemented Object.getOwnPropertyDescriptor for element indices and
8939 8940
        strings (issue 599).

8941
        Fixed bug for windows 64 bit C calls from generated code.
8942

8943
        Added new scons flag unalignedaccesses for arm builds.
8944 8945 8946 8947

        Performance improvements on all platforms.


8948 8949
2010-05-26: Version 2.2.12

8950 8951
        Allowed accessors to be defined on objects rather than just object
        templates.
8952

8953
        Changed the ScriptData API.
8954 8955


8956 8957
2010-05-21: Version 2.2.11

8958
        Fixed crash bug in liveedit on 64 bit.
8959 8960 8961 8962 8963 8964 8965 8966 8967

        Use 'full compiler' when debugging is active.  This should increase
        the density of possible break points, making single step more fine
        grained.  This will only take effect for functions compiled after
        debugging has been started, so recompilation of all functions is
        required to get the full effect.  IA32 and x64 only for now.

        Misc. fixes to the Solaris build.

8968
        Added new flags --print-cumulative-gc-stat and --trace-gc-nvp.
8969

8970
        Added filtering of CPU profiles by security context.
8971

8972
        Fixed crash bug on ARM when running without VFP2 or VFP3.
8973 8974 8975 8976

        Incremental performance improvements in all backends.


8977 8978 8979 8980 8981
2010-05-17: Version 2.2.10

        Performance improvements in the x64 and ARM backends.


8982 8983
2010-05-10: Version 2.2.9

8984
        Allowed Object.create to be called with a function (issue 697).
8985 8986 8987 8988

        Fixed bug with Date.parse returning a non-NaN value when called on a
        non date string (issue 696).

8989
        Allowed unaligned memory accesses on ARM targets that support it (by
8990
        Subrato K De of CodeAurora <subratokde@codeaurora.org>).
8991 8992 8993 8994

        C++ API for retrieving JavaScript stack trace information.


8995 8996 8997 8998 8999
2010-05-05: Version 2.2.8

        Performance improvements in the x64 and ARM backends.


9000 9001 9002 9003 9004 9005 9006
2010-05-03: Version 2.2.7

        Added support for ES5 date time string format to Date.parse.

        Performance improvements in the x64 backend.


9007 9008
2010-04-28: Version 2.2.6

9009
        Added "amd64" as recognized architecture in scons build script
9010 9011
        (by Ryan Dahl <coldredlemur@gmail.com>).

9012
        Fixed bug in String search and replace with very simple RegExps.
9013

9014
        Fixed bug in RegExp containing "\b^".
9015 9016 9017

        Performance improvements on all platforms.

9018

9019 9020 9021 9022 9023 9024 9025
2010-04-26: Version 2.2.5

        Various performance improvements (especially for ARM and x64)

        Fixed bug in CPU profiling (http://crbug.com/42137)

        Fixed a bug with the natives cache.
9026 9027

        Fixed two bugs in the ARM code generator that can cause
9028 9029 9030 9031 9032 9033
        wrong calculations.

        Fixed a bug that may cause a wrong result for shift operations.


2010-04-21: Version 2.2.4
9034 9035 9036 9037 9038 9039 9040 9041

        Fixed warnings on arm on newer GCC versions.

        Fixed a number of minor bugs.

        Performance improvements on all platforms.


9042 9043 9044 9045 9046 9047 9048 9049 9050
2010-04-14: Version 2.2.3

        Added stack command and mem command to ARM simulator debugger.

        Fixed scons snapshot and ARM build, and Windows X64 build issues.

        Performance improvements on all platforms.


9051 9052 9053 9054 9055 9056 9057
2010-04-12: Version 2.2.2

        Introduced new profiler API.

        Fixed random number generator to produce full 32 random bits.


9058 9059 9060 9061 9062 9063 9064
2010-04-06: Version 2.2.1

        Debugger improvements.

        Fixed minor bugs.


9065 9066 9067 9068 9069 9070 9071
2010-03-29: Version 2.2.0

        Fixed a few minor bugs.

        Performance improvements for string operations.


9072 9073 9074 9075 9076 9077 9078
2010-03-26: Version 2.1.10

        Fixed scons build issues.

        Fixed a couple of minor bugs.


9079 9080 9081 9082 9083 9084 9085 9086 9087 9088
2010-03-25: Version 2.1.9

        Added API support for reattaching a global object to a context.

        Extended debugger API with access to the internal debugger context.

        Fixed Chromium crashes (issues http://crbug.com/39128 and
        http://crbug.com/39160)


9089 9090 9091 9092 9093 9094 9095
2010-03-24: Version 2.1.8

        Added fine-grained garbage collection callbacks to the API.

        Performance improvements on all platforms.


9096 9097 9098 9099 9100 9101 9102 9103 9104 9105 9106 9107 9108 9109
2010-03-22: Version 2.1.7

        Fixed issue 650.

        Fixed a bug where __proto__ was sometimes enumerated (issue 646).

        Performance improvements for arithmetic operations.

        Performance improvements for string operations.

        Print script name and line number information in stack trace.


2010-03-17: Version 2.1.6
9110 9111 9112 9113 9114

        Performance improvements for arithmetic operations.

        Performance improvements for string operations.

9115

9116 9117 9118 9119 9120 9121 9122
2010-03-10: Version 2.1.4

        Fixed code cache lookup for keyed IC's (issue http://crbug.com/37853).

        Performance improvements on all platforms.


9123 9124 9125 9126 9127 9128 9129 9130 9131 9132 9133 9134 9135 9136 9137 9138 9139 9140
2010-03-10: Version 2.1.3

        Added API method for context-disposal notifications.

        Added API method for accessing elements by integer index.

        Added missing implementation of Uint32::Value and Value::IsUint32
        API methods.

        Added IsExecutionTerminating API method.

        Disabled strict aliasing for GCC 4.4.

        Fixed string-concatenation bug (issue 636).

        Performance improvements on all platforms.


9141 9142
2010-02-23: Version 2.1.2

9143
        Fixed a crash bug caused by wrong assert.
9144

9145
        Fixed a bug with register names on 64-bit V8 (issue 615).
9146 9147 9148

        Performance improvements on all platforms.

9149

9150 9151 9152 9153 9154 9155 9156 9157 9158 9159 9160 9161 9162 9163
2010-02-19: Version 2.1.1

        [ES5] Implemented Object.defineProperty.

        Improved profiler support.

        Added SetPrototype method in the public V8 API.

        Added GetScriptOrigin and GetScriptLineNumber methods to Function
        objects in the API.

        Performance improvements on all platforms.


9164 9165 9166 9167 9168 9169 9170 9171 9172 9173 9174 9175 9176 9177 9178 9179 9180
2010-02-03: Version 2.1.0

        Values are now always wrapped in objects when used as a receiver.
        (issue 223).

        [ES5] Implemented Object.getOwnPropertyNames.

        [ES5] Restrict JSON.parse to only accept strings that conforms to the
        JSON grammar.

        Improvement of debugger agent (issue 549 and 554).

        Fixed problem with skipped stack frame in profiles (issue 553).

        Solaris support by Erich Ocean <erich.ocean@me.com> and Ryan Dahl
        <ry@tinyclouds.org>.

9181
        Fixed a bug that Math.round() returns incorrect results for huge
9182 9183
        integers.

9184
        Fixed enumeration order for objects created from some constructor
9185 9186
        functions (isue http://crbug.com/3867).

9187
        Fixed arithmetic on some integer constants (issue 580).
9188 9189 9190 9191 9192

        Numerous performance improvements including porting of previous IA-32
        optimizations to x64 and ARM architectures.


9193 9194 9195 9196 9197 9198 9199 9200 9201 9202 9203 9204 9205 9206 9207 9208
2010-01-14: Version 2.0.6

        Added ES5 Object.getPrototypeOf, GetOwnPropertyDescriptor,
        GetOwnProperty, FromPropertyDescriptor.

        Fixed Mac x64 build errors.

        Improved performance of some math and string operations.

        Improved performance of some regexp operations.

        Improved performance of context creation.

        Improved performance of hash tables.


9209 9210 9211 9212 9213 9214 9215 9216 9217 9218
2009-12-18: Version 2.0.5

        Extended to upper limit of map space to allow for 7 times as many map
        to be allocated (issue 524).

        Improved performance of code using closures.

        Improved performance of some binary operations involving doubles.


9219 9220
2009-12-16: Version 2.0.4

9221
        Added ECMAScript 5 Object.create.
9222

9223
        Improved performance of Math.max and Math.min.
9224

9225
        Optimized adding of strings on 64-bit platforms.
9226

9227 9228 9229
        Improved handling of external strings by using a separate table
        instead of weak handles.  This improves garbage collection
        performance and uses less memory.
9230

9231 9232
        Changed code generation for object and array literals in toplevel
        code to be more compact by doing more work in the runtime.
9233

9234 9235
        Fixed a crash bug triggered when garbage collection happened during
        generation of a callback load inline cache stub.
9236

9237 9238
        Fixed crash bug sometimes triggered when local variables shadowed
        parameters in functions that used the arguments object.
9239 9240


9241 9242 9243 9244 9245 9246 9247 9248 9249 9250 9251 9252 9253 9254 9255 9256 9257 9258 9259 9260 9261 9262 9263
2009-12-03: Version 2.0.3

        Optimized handling and adding of strings, for-in and Array.join.

        Heap serialization is now non-destructive.

        Improved profiler support with information on time spend in C++
        callbacks registered through the API.

        Added commands to the debugger protocol for starting/stopping
        profiling.

        Enabled the non-optimizing compiler for top-level code.

        Changed the API to only allow strings to be set as data objects on
        Contexts and scripts to avoid potentially keeping global objects
        around for too long (issue 528).

        OpenBSD support patch by Peter Valchev <pvalchev@gmail.com>.

        Fixed bugs.


9264 9265 9266 9267 9268 9269 9270
2009-11-24: Version 2.0.2

        Improved profiler support.

        Fixed bug that broke compilation of d8 with readline support.


9271 9272 9273 9274 9275 9276 9277
2009-11-20: Version 2.0.1

        Fixed crash bug in String.prototype.replace.

        Reverted a change which caused Chromium interactive ui test
        failures.

9278

9279 9280 9281 9282 9283 9284 9285 9286 9287 9288 9289 9290 9291 9292 9293 9294 9295
2009-11-18: Version 2.0.0

        Added support for VFP on ARM.

        Added TryCatch::ReThrow method to the API.

        Reduced the size of snapshots and improved the snapshot load time.

        Improved heap profiler support.

        64-bit version now supported on Windows.

        Fixed a number of debugger issues.

        Fixed bugs.


9296 9297 9298 9299
2009-10-29: Version 1.3.18

        Reverted a change which caused crashes in RegExp replace.

9300
        Reverted a change which caused Chromium ui_tests failure.
9301 9302


9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321
2009-10-28: Version 1.3.17

        Added API method to get simple heap statistics.

        Improved heap profiler support.

        Fixed the implementation of the resource constraint API so it
        works when using snapshots.

        Fixed a number of issues in the Windows 64-bit version.

        Optimized calls to API getters.

        Added valgrind notification on code modification to the 64-bit version.

        Fixed issue where we logged shared library addresses on Windows at
        startup and never used them.


9322
2009-10-16: Version 1.3.16
9323

9324 9325
        X64: Convert smis to holding 32 bits of payload.

9326
        Introduced v8::Integer::NewFromUnsigned method.
9327

9328
        Added missing null check in Context::GetCurrent.
9329

9330
        Added trim, trimLeft and trimRight methods to String
9331 9332 9333 9334 9335 9336 9337
        Patch by Jan de Mooij <jandemooij@gmail.com>

        Implement ES5 Array.isArray
        Patch by Jan de Mooij <jandemooij@gmail.com>

        Skip access checks for hidden properties.

9338 9339
        Added String::Concat(Handle<String> left, Handle<String> right) to the
        V8 API.
9340

9341
        Fixed GYP-based builds of V8.
9342 9343


9344 9345
2009-10-07: Version 1.3.15

9346
        Expanded the maximum size of the code space to 512MB for 64-bit mode.
9347 9348 9349 9350 9351

        Fixed a crash bug happening when starting profiling (issue
        http://crbug.com/23768).


9352 9353 9354 9355 9356 9357
2009-10-07: Version 1.3.14

        Added GetRealNamedProperty to the API to lookup real properties
        located on the object or in the prototype chain skipping any
        interceptors.

9358
        Fixed the stack limits setting API to work correctly with threads. The
9359 9360
        stack limit now needs to be set to each thread thich is used with V8.

9361
        Removed the high-priority flag from IdleNotification()
9362 9363 9364 9365

        Ensure V8 is initialized before locking and unlocking threads.

        Implemented a new JavaScript minifier for compressing the source of
9366
        the built-in JavaScript. This removes non-Open Source code from Douglas
9367 9368 9369 9370 9371 9372 9373 9374 9375 9376 9377 9378 9379 9380 9381 9382 9383 9384 9385 9386 9387 9388 9389 9390 9391 9392 9393
        Crockford from the project.

        Added a missing optimization in StringCharAt.

        Fixed some flaky socket tests.

        Change by Alexander Botero-Lowry to fix profiler sampling on FreeBSD
        in 64-bit mode.

        Fixed memory leaks in the thread management code.

        Fixed the result of assignment to a pixel array. The assigned value
        is now the result.

        Error reporting for invalid left-hand sides in for-in statements, pre-
        and postfix count expressions, and assignments now matches the JSC
        behavior in Safari 4.

        Follow the spec in disallowing function declarations without a name.

        Always allocate code objects within a 2 GB range. On x64 architecture
        this is used to use near calls (32-bit displacement) in Code objects.

        Optimized array construction ported to x64 and ARM architectures.

        [ES5] Changed Object.keys to return strings for element indices.

9394

9395 9396 9397 9398 9399 9400 9401
2009-09-23: Version 1.3.13

        Fixed uninitialized memory problem.

        Improved heap profiler support.


9402 9403 9404 9405 9406 9407 9408 9409 9410 9411 9412 9413 9414 9415
2009-09-22: Version 1.3.12

        Changed behavior of |function|.toString() on built-in functions to
        be compatible with other implementations.  Patch by Jan de Mooij.

        Added Object::IsDirty in the API.

        Optimized array construction; it is now handled purely in native
        code.

        [ES5] Made properties of the arguments array enumerable.

        [ES5] Added test suite adapter for the es5conform test suite.

9416
        [ES5] Added Object.keys function.
9417

9418

9419 9420 9421 9422 9423 9424 9425 9426 9427 9428
2009-09-15: Version 1.3.11

        Fixed crash in error reporting during bootstrapping.

        Optimized generated IA32 math code by using SSE2 instructions when
        available.

        Implemented missing pieces of debugger infrastructure on ARM.  The
        debugger is now fully functional on ARM.

9429
        Made 'hidden' the default visibility for gcc.
9430 9431


9432 9433 9434 9435 9436 9437 9438 9439 9440 9441 9442 9443
2009-09-09: Version 1.3.10

        Fixed profiler on Mac in 64-bit mode.

        Optimized creation of objects from simple constructor functions on
        ARM.

        Fixed a number of debugger issues.

        Reduced the amount of memory consumed by V8.


9444 9445 9446 9447 9448 9449 9450 9451 9452 9453 9454 9455 9456 9457 9458 9459 9460 9461 9462
2009-09-02: Version 1.3.9

        Optimized stack guard checks on ARM.

        Optimized API operations by inlining more in the API.

        Optimized creation of objects from simple constructor functions.

        Enabled a number of missing optimizations in the 64-bit port.

        Implemented native-code support for regular expressions on ARM.

        Stopped using the 'sahf' instruction on 64-bit machines that do
        not support it.

        Fixed a bug in the support for forceful termination of JavaScript
        execution.


9463 9464 9465 9466 9467 9468
2009-08-26: Version 1.3.8

        Changed the handling of idle notifications to allow idle
        notifications when V8 has not yet been initialized.

        Fixed ARM simulator compilation problem on Windows.
9469

9470

9471 9472 9473 9474 9475 9476 9477 9478 9479 9480 9481
2009-08-25: Version 1.3.7

        Reduced the size of generated code on ARM platforms by reducing
        the size of constant pools.

        Changed build files to not include the 'ENV' user environment
        variable in the build environment.

        Changed the handling of idle notifications.


9482 9483
2009-08-21: Version 1.3.6

9484
        Added support for forceful termination of JavaScript execution.
9485

9486
        Added low memory notification to the API. The embedding host can signal
9487 9488 9489 9490 9491 9492 9493 9494 9495 9496 9497
        a low memory situation to V8.

        Changed the handling of global handles (persistent handles in the API
        sense) to avoid issues regarding allocation of new global handles
        during weak handle callbacks.

        Changed the growth policy of the young space.

        Fixed a GC issue introduced in version 1.3.5.


9498 9499
2009-08-19: Version 1.3.5

9500
        Optimized initialization of some arrays in the builtins.
9501

9502
        Fixed mac-nm script to support filenames with spaces.
9503 9504 9505 9506 9507 9508 9509 9510 9511 9512 9513 9514

        Support for using the V8 profiler when V8 is embedded in a Windows DLL.

        Changed typeof RegExp from 'object' to 'function' for compatibility.
        Fixed bug where regexps were not callable across contexts.

        Added context independent script compilation to the API.

        Added API call to get the stack trace for an exception.

        Added API for getting object mirrors.

9515
        Made sure that SSE3 instructions are used whenever possible even when
9516 9517 9518 9519 9520 9521 9522 9523 9524
        running off a snapshot generated without using SSE3 instructions.

        Tweaked the handling of the initial size and growth policy of the heap.

        Added native code generation for RegExp to 64-bit version.

        Added JavaScript debugger support to 64-bit version.


9525 9526 9527 9528 9529 9530 9531 9532 9533 9534
2009-08-13: Version 1.3.4

        Added a readline() command to the d8 shell.

        Fixed bug in json parsing.

        Added idle notification to the API and reduced memory on idle
        notifications.


9535 9536
2009-08-12: Version 1.3.3

9537
        Fixed issue 417: incorrect %t placeholder expansion.
9538

9539
        Added .gitignore file similar to Chromium's one.
9540

9541
        Fixed SConstruct file to build with new logging code for Android.
9542 9543 9544 9545 9546 9547

        API: added function to find instance of template in prototype
        chain.  Inlined Object::IsInstanceOf.

        Land change to notify valgrind when we modify code on x86.

9548
        Added api call to determine whether a string can be externalized.
9549

9550
        Added a write() command to d8.
9551 9552


9553 9554 9555 9556 9557 9558 9559 9560 9561 9562 9563 9564 9565 9566 9567
2009-08-05: Version 1.3.2

        Started new compiler infrastructure for two-pass compilation using a
        control flow graph constructed from the AST.

        Profiler stack sampling for X64.

        Safe handling of NaN to Posix platform-dependent time functions.

        Added a new profiler control API to unify controlling various aspects
        of profiling.

        Fixed issue 392.


9568 9569 9570 9571 9572 9573 9574 9575 9576 9577 9578 9579 9580 9581 9582 9583
2009-07-30: Version 1.3.1

        Speed improvements to accessors and interceptors.

        Added support for capturing stack information on custom errors.

        Added support for morphing an object into a pixel array where its
        indexed properties are stored in an external byte array. Values written
        are always clamped to the 0..255 interval.

        Profiler on x64 now handles C/C++ functions from shared libraries.

        Changed the debugger to avoid stepping into function.call/apply if the
        function is a built-in.

        Initial implementation of constructor heap profile for JS objects.
9584

9585
        More fine grained control of profiling aspects through the API.
9586

9587 9588 9589
        Optimized the called as constructor check for API calls.


9590 9591 9592 9593 9594 9595 9596 9597 9598 9599 9600 9601 9602 9603 9604 9605 9606 9607 9608 9609 9610
2009-07-27: Version 1.3.0

        Allowed RegExp objects to be called as functions (issue 132).

        Fixed issue where global property cells would escape after
        detaching the global object; see http://crbug.com/16276.

        Added support for stepping into setters and getters in the
        debugger.

        Changed the debugger to avoid stopping in its own JavaScript code
        and in the code of built-in functions.

        Fixed issue 345 by avoiding duplicate escaping labels.

        Fixed ARM code generator crash in short-circuited boolean
        expressions and added regression tests.

        Added an external allocation limit to avoid issues where small V8
        objects would hold on to large amounts of external memory without
        causing garbage collections.
9611 9612

        Finished more of the inline caching stubs for x64 targets.
9613 9614


9615 9616 9617 9618 9619 9620 9621 9622 9623 9624 9625 9626 9627 9628 9629 9630
2009-07-13: Version 1.2.14

        Added separate paged heap space for global property cells and
        avoid updating the write barrier when storing into them.

        Improved peep-hole optimization on ARM platforms by not emitting
        unnecessary debug information.

        Re-enabled ICs for loads and calls that skip a global object
        during lookup through the prototype chain.

        Allowed access through global proxies to use ICs.

        Fixed issue 401.


9631 9632 9633 9634 9635 9636 9637 9638 9639 9640 9641
2009-07-09: Version 1.2.13

        Fixed issue 397, issue 398, and issue 399.

        Added support for breakpoint groups.

        Fixed bugs introduced with the new global object representation.

        Fixed a few bugs in the ARM code generator.


9642 9643 9644 9645 9646 9647 9648 9649 9650 9651 9652 9653 9654
2009-07-06: Version 1.2.12

        Added stack traces collection to Error objects accessible through
        the e.stack property.

        Changed RegExp parser to use a recursive data structure instead of
        stack-based recursion.

        Optimized Date object construction and string concatenation.

        Improved performance of div, mod, and mul on ARM platforms.


9655 9656 9657 9658 9659 9660 9661 9662 9663 9664
2009-07-02: Version 1.2.11

        Improved performance on IA-32 and ARM.

        Fixed profiler sampler implementation on Mac OS X.

        Changed the representation of global objects to improve
        performance of adding a lot of new properties.


9665 9666 9667 9668 9669 9670 9671 9672 9673
2009-06-29: Version 1.2.10

        Improved debugger support.

        Fixed bug in exception message reporting (issue 390).

        Improved overall performance.


9674 9675 9676 9677 9678 9679 9680 9681 9682 9683 9684 9685 9686 9687 9688 9689 9690 9691
2009-06-23: Version 1.2.9

        Improved math performance on ARM.

        Fixed profiler name-inference bug.

        Fixed handling of shared libraries in the profiler tick processor
        scripts.

        Fixed handling of tests that time out in the test scripts.

        Fixed compilation on MacOS X version 10.4.

        Fixed two bugs in the regular expression engine.

        Fixed a bug in the string type inference.

        Fixed a bug in the handling of 'constant function' properties.
9692

9693
        Improved overall performance.
9694

9695

9696 9697 9698 9699 9700 9701 9702 9703 9704 9705 9706 9707 9708 9709
2009-06-16: Version 1.2.8

        Optimized math on ARM platforms.

        Fixed two crash bugs in the handling of getters and setters.

        Improved the debugger support by adding scope chain information.

        Improved the profiler support by compressing log data transmitted
        to clients.

        Improved overall performance.


9710 9711 9712 9713 9714 9715 9716 9717 9718 9719 9720 9721 9722 9723 9724 9725 9726 9727 9728 9729 9730
2009-06-08: Version 1.2.7

        Improved debugger and profiler support.

        Reduced compilation time by improving the handling of deferred
        code.

        Optimized interceptor accesses where the property is on the object
        on which the interceptors is attached.

        Fixed compilation problem on GCC 4.4 by changing the stack
        alignment to 16 bytes.

        Fixed handle creation to follow stric aliasing rules.

        Fixed compilation on FreeBSD.

        Introduced API for forcing the deletion of a property ignoring
        interceptors and attributes.


9731 9732 9733 9734 9735 9736 9737 9738 9739 9740 9741 9742 9743 9744 9745 9746 9747 9748 9749 9750 9751 9752
2009-05-29: Version 1.2.6

        Added a histogram recording hit rates at different levels of the
        compilation cache.

        Added stack overflow check for the RegExp analysis phase. Previously a
        very long regexp graph could overflow the stack with recursive calls.

        Use a dynamic buffer when collecting log events in memory.

        Added start/stop events to the profiler log.

        Fixed infinite loop which could happen when setting a debug break while
        executing a RegExp compiled to native code.

        Fixed handling of lastIndexOf called with negative index (issue 351).

        Fixed irregular crash in profiler test (issue 358).

        Fixed compilation issues with some versions of gcc.


9753 9754 9755 9756 9757 9758 9759 9760 9761 9762 9763 9764 9765 9766 9767 9768 9769 9770 9771
2009-05-26: Version 1.2.5

        Fixed bug in initial boundary check for Boyer-Moore text
        search (issue 349).

        Fixed compilation issues with MinGW and gcc 4.3+ and added support
        for armv7 and cortex-a8 architectures.  Patches by Lei Zhang and
        Craig Schlenter.

        Added a script cache to the debugger.

        Optimized compilation performance by improving internal data
        structures and avoiding expensive property load optimizations for
        code that's infrequently executed.

        Exposed the calling JavaScript context through the static API
        function Context::GetCalling().


9772 9773 9774 9775 9776 9777 9778 9779 9780 9781 9782 9783 9784 9785 9786 9787 9788 9789 9790 9791 9792 9793 9794 9795 9796 9797 9798
2009-05-18: Version 1.2.4

        Improved performance of floating point number allocation for ARM
        platforms.

        Fixed crash when using the instanceof operator on functions with
        number values in their prototype chain (issue 341).

        Optimized virtual frame operations in the code generator to speed
        up compilation time and allocated the frames in the zone.

        Made the representation of virtual frames and jump targets in the
        code generator much more compact.

        Avoided linear search for non-locals in scope code when resolving
        variables inside with and eval scopes.

        Optimized lexical scanner by dealing with whitespace as part of
        the token scanning instead of as a separate step before it.

        Changed the scavenging collector so that promoted objects do not
        reside in the old generation while their remembered set is being
        swept for pointers into the young generation.

        Fixed numeric overflow handling when compiling count operations.


9799 9800 9801 9802 9803 9804 9805 9806 9807 9808 9809 9810
2009-05-11: Version 1.2.3

        Fixed bug in reporting of out-of-memory situations.

        Introduced hidden prototypes on certain builtin prototype objects
        such as String.prototype to emulate JSC's behavior of restoring
        the original function when deleting functions from those prototype
        objects.

        Fixed crash bug in the register allocator.


9811 9812 9813 9814 9815 9816 9817 9818 9819 9820 9821 9822 9823 9824 9825 9826 9827 9828
2009-05-04: Version 1.2.2

        Fixed bug in array sorting for sparse arrays (issue 326).

        Added support for adding a soname when building a shared library
        on Linux (issue 151).

        Fixed bug caused by morphing internal ASCII strings to external
        two-byte strings.  Slices over ASCII strings have to forward ASCII
        checks to the underlying buffer string.

        Allowed API call-as-function handlers to be called as
        constructors.

        Fixed a crash bug where an external string was disposed but a
        slice of the external string survived as a symbol.


9829 9830 9831 9832
2009-04-27: Version 1.2.1

        Added EcmaScript 5 JSON object.

9833
        Fixed bug in preemption support on ARM.
9834 9835


9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 9849 9850 9851 9852 9853 9854 9855 9856
2009-04-23: Version 1.2.0

        Optimized floating-point operations on ARM.

        Added a number of extensions to the debugger API.

        Changed the enumeration order for unsigned integer keys to always
        be numerical order.

        Added a "read" extension to the shell sample.

        Added support for Array.prototype.reduce and
        Array.prototype.reduceRight.

        Added an option to the SCons build to control Microsoft Visual C++
        link-time code generation.

        Fixed a number of bugs (in particular issue 315, issue 316,
        issue 317 and issue 318).


9857 9858 9859 9860 9861 9862 9863 9864 9865 9866 9867 9868
2009-04-15: Version 1.1.10

        Fixed crash bug that occurred when loading a const variable in the
        presence of eval.

        Allowed using with and eval in registered extensions in debug mode
        by fixing bogus assert.

        Fixed the source position for function returns to enable the
        debugger to break there.


9869 9870 9871 9872 9873 9874 9875 9876 9877 9878 9879 9880 9881
2009-04-14: Version 1.1.9

        Made the stack traversal code in the profiler robust by avoiding
        to look into the heap.

        Added name inferencing for anonymous functions to facilitate
        debugging and profiling.

        Re-enabled stats timers in the developer shell (d8).

        Fixed issue 303 by avoiding to shortcut cons-symbols.


9882 9883 9884 9885
2009-04-11: Version 1.1.8

        Changed test-debug/ThreadedDebugging to be non-flaky (issue 96).

9886
        Fixed step-in handling for Function.prototype.apply and call in
9887 9888 9889 9890 9891
        the debugger (issue 269).

        Fixed v8::Object::DeleteHiddenValue to not bail out when there
        are no hidden properties.

9892
        Added workaround for crash bug, where external symbol table
9893 9894 9895 9896
        entries with deleted resources would lead to NPEs when looking
        up in the symbol table.


9897 9898 9899 9900 9901 9902 9903 9904 9905 9906 9907 9908 9909
2009-04-07: Version 1.1.7

        Added support for easily importing additional environment
        variables into the SCons build.

        Optimized strict equality checks.

        Fixed crash in indexed setters on objects without a corresponding
        getter (issue 298).

        Re-enabled script compilation cache.


9910 9911 9912 9913 9914
2009-04-01: Version 1.1.6

        Reverted an unsafe code generator change.


9915 9916 9917 9918 9919 9920 9921 9922 9923 9924 9925 9926 9927 9928 9929 9930
2009-04-01: Version 1.1.5

        Fixed bug that caused function literals to not be optimized as
        much as other functions.

        Improved profiler support.

        Fixed a crash bug in connection with debugger unloading.

        Fixed a crash bug in the code generator caused by losing the
        information that a frame element was copied.

        Fixed an exception propagation bug that could cause non-null
        return values when exceptions were thrown.


9931 9932 9933 9934 9935 9936 9937 9938 9939 9940 9941 9942 9943 9944
2009-03-30: Version 1.1.4

        Optimized String.prototype.match.

        Improved the stack information in profiles.

        Fixed bug in ARM port making it possible to compile the runtime
        system for thumb mode again.

        Implemented a number of optimizations in the code generator.

        Fixed a number of memory leaks in tests.

        Fixed crash bug in connection with script source code and external
9945
        strings.
9946 9947


9948 9949 9950 9951 9952 9953 9954 9955 9956 9957
2009-03-24: Version 1.1.3

        Fixed assertion failures in compilation of loop conditions.

        Removed STL dependency from developer shell (d8).

        Added infrastructure for protecting the V8 heap from corruption
        caused by memory modifications from the outside.


9958 9959 9960 9961 9962 9963 9964 9965 9966 9967 9968 9969 9970 9971 9972 9973 9974 9975 9976 9977 9978 9979 9980 9981 9982 9983 9984
2009-03-24: Version 1.1.2

        Improved frame merge code generated by the code generator.

        Optimized String.prototype.replace.

        Implemented __defineGetter__ and __defineSetter__ for properties
        with integer keys on non-array objects.

        Improved debugger and profiler support.

        Fixed a number of portability issues to allow compilation for
        smaller ARM devices.

        Exposed object cloning through the API.

        Implemented hidden properties.  This is used to expose an identity
        hash for objects through the API.

        Implemented restarting of regular expressions if their input
        string changes representation during preemption.

        Fixed a code generator bug that could cause assignments in loops
        to be ignored if using continue to break out of the loop (issue
        284).


9985 9986 9987 9988 9989 9990 9991 9992 9993 9994 9995 9996 9997
2009-03-12: Version 1.1.1

        Fixed an assertion in the new compiler to take stack overflow
        exceptions into account.

        Removed exception propagation code that could cause crashes.

        Fixed minor bug in debugger line number computations.

        8-byte align the C stack on Linux and Windows to speed up floating
        point computations.


9998 9999 10000 10001 10002 10003 10004 10005 10006 10007 10008 10009 10010 10011 10012 10013 10014 10015 10016 10017 10018 10019 10020 10021
2009-03-12: Version 1.1.0

        Improved code generation infrastructure by doing simple register
        allocation and constant folding and propagation.

        Optimized regular expression matching by avoiding to create
        intermediate string arrays and by flattening nested array
        representations of RegExp data.

        Traverse a few stack frames when recording profiler samples to
        include partial call graphs in the profiling output.

        Added support for using OProfile to profile generated code.

        Added remote debugging support to the D8 developer shell.

        Optimized creation of nested literals like JSON objects.

        Fixed a bug in garbage collecting unused maps and turned it on by
        default (--collect-maps).

        Added support for running tests under Valgrind.


10022 10023 10024 10025 10026 10027 10028 10029 10030 10031 10032 10033 10034 10035 10036
2009-02-27: Version 1.0.3

        Optimized double-to-integer conversions in bit operations by using
        SSE3 instructions if available.

        Optimized initialization sequences that store to multiple
        properties of the same object.

        Changed the D8 debugger frontend to use JSON messages.

        Force garbage collections when disposing contexts.

        Align code objects at 32-byte boundaries.


10037 10038 10039 10040 10041 10042 10043 10044 10045 10046 10047 10048 10049 10050 10051 10052 10053 10054 10055 10056
2009-02-25: Version 1.0.2

        Improved profiling support by performing simple call stack
        sampling for ticks and by fixing a bug in the logging of code
        addresses.

        Fixed a number of debugger issues.

        Optimized code that uses eval.

        Fixed a couple of bugs in the regular expression engine.

        Reduced the size of generated code for certain regular expressions.

        Removed JSCRE completely.

        Fixed issue where test could not be run if there was a dot in the
        checkout path.


10057 10058 10059 10060 10061 10062 10063 10064 10065 10066 10067 10068
2009-02-13: Version 1.0.1

        Fixed two crash-bugs in irregexp (issue 231 and 233).

        Fixed a number of minor bugs (issue 87, 227 and 228).

        Added support for morphing strings to external strings on demand
        to avoid having to create copies in the embedding code.

        Removed experimental support for external symbol callbacks.


10069 10070 10071 10072
2009-02-09: Version 1.0.0

        Fixed crash-bug in the code generation for case independent 16 bit
        backreferences.
10073

10074 10075
        Made shells more robust in the presence of string conversion
        failures (issue 224).
10076

10077 10078
        Fixed a potential infinite loop when attempting to resolve
        eval (issue 221).
10079

10080
        Miscellaneous fixes to the new regular expression engine.
10081

10082 10083 10084 10085
        Reduced binary by stripping unneeded text from JavaScript library and
        minifying some JavaScript files.


10086 10087 10088 10089 10090 10091 10092 10093 10094 10095 10096 10097 10098 10099 10100 10101 10102 10103
2009-01-27: Version 0.4.9

        Enabled new regular expression engine.

        Made a number of changes to the debugger protocol.

        Fixed a number of bugs in the preemption support.

        Added -p option to the developer shell to run files in parallel
        using preemption.

        Fixed a number of minor bugs (including issues 176, 187, 189, 192,
        193, 198 and 201).

        Fixed a number of bugs in the serialization/deserialization
        support for the ARM platform.


10104 10105 10106 10107 10108
2009-01-19: Version 0.4.8.1

        Minor patch to debugger support.


10109 10110 10111 10112 10113 10114 10115 10116 10117
2009-01-16: Version 0.4.8

        Fixed string length bug on ARM (issue 171).

        Made most methods in the API const.

        Optimized object literals by improving data locality.

        Fixed bug that caused incomplete functions to be cached in case of
10118
        stack overflow exceptions.
10119 10120

        Fixed bugs that caused catch variables and variables introduced by
10121 10122
        eval to behave incorrectly when using accessors (issues 186, 190
        and 191).
10123 10124


10125 10126
2009-01-06: Version 0.4.7

10127
        Minor bugfixes and optimizations.
10128

10129
        Added command line debugger to D8 shell.
10130

10131 10132 10133 10134 10135
        Fixed subtle bug that caused the wrong 'this' to be used when
        calling a caught function in a catch clause.

        Inline array loads within loops directly in the code instead of
        always calling a stub.
10136 10137


10138 10139 10140 10141 10142 10143 10144 10145 10146 10147 10148 10149 10150 10151 10152 10153 10154 10155 10156 10157 10158
2008-12-11: Version 0.4.6

        Fixed exception reporting bug where certain exceptions were
        incorrectly reported as uncaught.

        Improved the memory allocation strategy used during compilation to
        make running out of memory when compiling huge scripts less
        likely.

        Optimized String.replace by avoiding the construction of certain
        sub strings.

        Fixed bug in code generation for large switch statements on ARM.

        Fixed bug that caused V8 to change the global object template
        passed in by the user.

        Changed the API for creating object groups used during garbage
        collection.  Entire object groups are now passed to V8 instead of
        individual members of the groups.

10159

10160
2008-12-03: Version 0.4.5
10161

10162 10163 10164 10165 10166 10167 10168 10169 10170 10171 10172 10173 10174 10175 10176 10177
        Added experimental API support for allocating V8 symbols as
        external strings.

        Fixed bugs in debugging support on ARM.

        Changed eval implementation to correctly detect whether or not a
        call to eval is aliased.

        Fixed bug caused by a combination of the compilation cache and
        dictionary probing in native code.  The bug caused us to sometimes
        call functions that had not yet been compiled.

        Added platform support for FreeBSD.

        Added support for building V8 on Windows with either the shared or
        static version of MSVCRT
10178

10179 10180 10181
        Added the v8::jscre namespace around the jscre functions to avoid
        link errors (duplicate symbols) when building Google Chrome.

10182 10183 10184 10185 10186 10187 10188 10189 10190 10191 10192 10193 10194 10195 10196
        Added support for calling a JavaScript function with the current
        debugger execution context as its argument to the debugger
        interface.

        Changed the type of names of counters from wchar_t to char.

        Changed the Windows system call used to compute daylight savings
        time.  The system call that we used to use became four times
        slower on WinXP SP3.

        Added support in the d8 developer shell for memory-mapped counters
        and added a stats-viewer tool.

        Fixed bug in upper/lower case mappings (issue 149).

10197

10198 10199 10200 10201 10202 10203 10204 10205 10206 10207 10208 10209 10210 10211 10212 10213 10214 10215 10216 10217 10218 10219 10220
2008-11-17: Version 0.4.4

        Reduced code size by using shorter instruction encoding when
        possible.

        Added a --help option to the shell sample and to the d8 shell.

        Added visual studio project files for building the ARM simulator.

        Fixed a number of ARM simulator issues.

        Fixed bug in out-of-memory handling on ARM.

        Implemented shell support for passing arguments to a script from
        the command line.

        Fixed bug in date code that made certain date functions return -0
        instead of 0 for dates before the epoch.

        Restricted applications of eval so it can only be used in the
        context of the associated global object.

        Treat byte-order marks as whitespace characters.
10221 10222


10223 10224 10225 10226 10227 10228 10229 10230 10231 10232 10233 10234 10235 10236 10237
2008-11-04: Version 0.4.3

        Added support for API accessors that prohibit overwriting by
        accessors defined in JavaScript code by using __defineGetter__ and
        __defineSetter__.

        Improved handling of conditionals in test status files.

        Introduced access control in propertyIsEnumerable.

        Improved performance of some string operations by caching
        information about the type of the string between operations.

        Fixed bug in fast-case code for switch statements that only have
        integer labels.
10238

10239

10240 10241 10242 10243 10244 10245 10246 10247 10248 10249 10250 10251 10252 10253 10254 10255 10256
2008-10-30: Version 0.4.2

        Improved performance of Array.prototype.concat by moving the
        implementation to C++ (issue 123).

        Fixed heap growth policy to avoid growing old space to its maximum
        capacity before doing a garbage collection and fixed issue that
        would lead to artificial out of memory situations (issue 129).

        Fixed Date.prototype.toLocaleDateString to return the date in the
        same format as WebKit.

        Added missing initialization checks to debugger API.

        Added removing of unused maps during GC.


10257 10258 10259 10260 10261 10262 10263 10264 10265 10266 10267 10268 10269
2008-10-28: Version 0.4.1

        Added caching of RegExp data in compilation cache.

        Added Visual Studio project file for d8 shell.

        Fixed function call performance regression introduced in version
        0.4.0 when splitting the global object in two parts (issue 120).

        Fixed issue 131 by checking for empty handles before throwing and
        reporting exceptions.


10270 10271 10272 10273 10274 10275 10276 10277 10278 10279 10280 10281 10282 10283 10284 10285 10286
2008-10-23: Version 0.4.0

        Split the global object into two parts: The state holding global
        object and the global object proxy.

        Fixed bug that affected the value of an assignment to an element
        in certain cases (issue 116).

        Added GetPropertyNames functionality (issue 33) and extra Date
        functions (issue 77) to the API.

        Changed WeakReferenceCallback to take a Persistent<Value> instead
        of a Persistent<Object> (issue 101).

        Fixed issues with message reporting for exceptions in try-finally
        blocks (issues 73 and 75).

10287
        Optimized flattening of strings and string equality checking.
10288 10289 10290 10291 10292 10293 10294 10295 10296 10297

        Improved Boyer-Moore implementation for faster indexOf operations.

        Added development shell (d8) which includes counters and
        completion support.

        Fixed problem with the receiver passed to functions called from
        eval (issue 124).


10298 10299 10300 10301 10302 10303 10304 10305 10306 10307 10308 10309 10310 10311 10312 10313 10314 10315 10316 10317 10318 10319 10320 10321 10322 10323 10324 10325 10326
2008-10-16: Version 0.3.5

        Improved string hash-code distribution by excluding bit-field bits
        from the hash-code.

        Changed string search algorithm used in indexOf from KMP to
        Boyer-Moore.

        Improved the generated code for the instanceof operator.

        Improved performance of slow-case string equality checks by
        specializing the code based on the string representation.

        Improve the handling of out-of-memory situations (issue 70).

        Improved performance of strict equality checks.

        Improved profiler output to make it easier to see anonymous
        functions.

        Improved performance of slow-case keyed loads.

        Improved property access performance by allocating a number of
        properties in the front object.

        Changed the toString behavior on the built-in object constructors
        to print [native code] instead of the actual source.  Some web
        applications do not like constructors with complex toString
        results.
10327

10328

10329 10330 10331 10332 10333 10334 10335 10336 10337 10338 10339 10340 10341 10342 10343 10344 10345 10346 10347 10348 10349 10350 10351 10352 10353
2008-10-06: Version 0.3.4

        Changed Array.prototype.sort to use quick sort.

        Fixed code generation issue where leaving a finally block with
        break or continue would accumulate elements on the expression
        stack (issue 86).

        Made sure that the name accessor on functions returns the expected
        names for builtin JavaScript functions and C++ callback functions.

        Added fast case code for extending the property storage array of
        JavaScript objects.

        Ported switch statement optimizations introduced in version 0.3.3
        to the ARM code generator.

        Allowed GCC to use strict-aliasing rules when compiling.

        Improved performance of arguments object allocation by taking care
        of arguments adaptor frames in the generated code.

        Updated the V8 benchmark suite to version 2.


10354 10355 10356 10357 10358 10359 10360 10361 10362 10363 10364 10365 10366 10367 10368 10369 10370 10371 10372 10373 10374 10375
2008-09-25: Version 0.3.3

        Improved handling of relocation information to enable more
        peep-hole optimizations.

        Optimized switch statements where all labels are constant small
        integers.

        Optimized String.prototype.indexOf for common cases.

        Fixed more build issues (issue 80).

        Fixed a couple of profiler issues.

        Fixed bug where the body of a function created using the Function
        constructor was not allowed to end with a single-line comment
        (issue 85).

        Improved handling of object literals by canonicalizing object
        literal maps.  This will allow JSON objects with the same set of
        properties to share the same map making inline caching work better
        for JSON objects.
10376

10377

10378 10379 10380 10381 10382 10383 10384 10385 10386 10387 10388 10389 10390 10391 10392 10393 10394 10395 10396 10397 10398 10399 10400 10401 10402 10403 10404 10405
2008-09-17: Version 0.3.2

        Generalized the EvalCache into a CompilationCache and enabled it
        for scripts too.  The current strategy is to retire all entries
        whenever a mark-sweep collection is started.

        Fixed bug where switch statements containing only a default case
        would lead to an unbalanced stack (issue 69).

        Fixed bug that made access to the function in a named function
        expression impossible in certain situations (issue 24).

        Fixed even more build issues.

        Optimized calling conventions on ARM.  The conventions on ARM and
        IA-32 now match.

        Removed static initializers for flags and counters.

        Improved inline caching behavior for uncommon cases where lazily
        loading Date and RegExp code could force certain code paths go
        megamorphic.

        Removed arguments adaption for builtins written in C++.  This
        makes Array.prototype.push and Array.prototype.pop slightly
        faster.


10406 10407 10408 10409 10410 10411 10412 10413 10414 10415 10416 10417 10418 10419 10420 10421 10422 10423 10424 10425 10426 10427 10428 10429 10430 10431 10432 10433 10434 10435 10436 10437 10438 10439 10440 10441 10442 10443 10444 10445 10446 10447 10448
2008-09-11: Version 0.3.1

        Fixed a number of build issues.

        Fixed problem with missing I-cache flusing on ARM.

        Changed space layout in memory management by splitting up
        code space into old data space and code space.

        Added utf-8 conversion support to the API (issue 57).

        Optimized repeated calls to eval with the same strings.  These
        repeated calls are common in web applications.

        Added Xcode project file.

        Optimized a couple of Array operation.

        Fixed parser bug by checking for end-of-string when parsing break
        and continue (issue 35).

        Fixed problem where asian characters were not categorized as
        letters.

        Fixed bug that disallowed calling functions fetched from an array
        using a string as an array index (issue 32).

        Fixed bug where the internal field count on object templates were
        sometimes ignored (issue 54).

        Added -f option to the shell sample for compatibility with other
        engines (issue 18).

        Added source info to TryCatches in the API.

        Fixed problem where the seed for the random number generator was
        clipped in a double to unsigned int conversion.

        Fixed bug where cons string symbols were sometimes converted to
        non-symbol flat strings during GC.

        Fixed bug in error reporting when attempting to convert null to an
        object.
10449 10450


10451 10452 10453 10454 10455 10456 10457 10458 10459 10460 10461 10462 10463 10464 10465 10466
2008-09-04: Version 0.3.0

        Added support for running tests on the ARM simulator.

        Fixed bug in the 'in' operator where negative indices were not
        treated correctly.

        Fixed build issues on gcc-4.3.1.

        Changed Date.prototype.toLocaleTimeString to not print the
        timezone part of the time.

        Renamed debug.h to v8-debug.h to reduce the risk of name conflicts
        with user code.


10467 10468 10469 10470 10471 10472 10473 10474 10475 10476 10477 10478 10479 10480 10481 10482
2008-09-02: Version 0.2.5

        Renamed the top level directory 'public' to 'include'.

        Added 'env' option to the SCons build scripts to support
        overriding the ENV part of the build environment.  This is mostly
        to support Windows builds in cases where SCons cannot find the
        correct paths to the Windows SDK, as these paths cannot be passed
        through shell environment variables.

        Enabled "Buffer Security Check" on for the Windows SCons build and
        added the linker option /OPT:ICF as an optimization.

        Added the V8 benchmark suite to the repository.


10483 10484 10485 10486 10487 10488 10489 10490 10491 10492 10493 10494 10495 10496 10497 10498 10499 10500 10501 10502 10503 10504 10505 10506 10507 10508 10509 10510 10511 10512 10513 10514 10515
2008-09-01: Version 0.2.4

        Included mjsunit JavaScript test suite and C++ unit tests.

        Changed the shell sample to not print the result of executing a
        script provided on the command line.

        Fixed issue when building samples on Windows using a shared V8
        library.  Added visibility option on Linux build which makes the
        generated library 18% smaller.

        Changed build system to accept multiple build modes in one build
        and generate separate objects, libraries and executables for each
        mode.

        Removed deferred negation optimization (a * -b => -(a * b)) since
        this visibly changes operand conversion order.

        Improved parsing performance by introducing stack guard in
        preparsing.  Without a stack guard preparsing always bails out
        with stack overflow.

        Changed shell sample to take flags directly from the command-line.
        Added API call that implements this.

        Added load, quit and version functions to the shell sample so it's
        easier to run benchmarks and tests.

        Fixed issue with building samples and cctests on 64-bit machines.

        Fixed bug in the runtime system where the prototype chain was not
        always searched for a setter when setting a property that does not
        exist locally.
10516

10517

10518 10519 10520 10521 10522 10523 10524 10525 10526 10527 10528 10529 10530 10531 10532
2008-08-14: Version 0.2.3

        Improved performance of garbage collection by moving the
        function that updates pointers during compacting collection
        into the updating visitor.  This gives the compiler a better
        chance to inline and avoid a function call per (potential)
        pointer.

        Extended the shell sample with a --runtime-flags option.

        Added Visual Studio project files for the shell.cc and
        process.cc samples.


2008-08-13: Version 0.2.2
10533 10534 10535 10536 10537 10538 10539 10540 10541 10542 10543 10544 10545 10546 10547 10548 10549

        Improved performance of garbage collection by changing the way
        we use the marking stack in the event of stack overflow during
        full garbage collection and by changing the way we mark roots.

        Cleaned up ARM version by removing top of stack caching and by
        introducing push/pop elimination.

        Cleaned up the way runtime functions are called to allow
        runtime calls with no arguments.

        Changed Windows build options to make sure that exceptions are
        disabled and that optimization flags are enabled.

        Added first version of Visual Studio project files.


10550
2008-08-06: Version 0.2.1
10551 10552 10553 10554 10555 10556 10557 10558 10559 10560 10561 10562 10563 10564 10565 10566 10567 10568 10569 10570

        Improved performance of unary addition by avoiding runtime calls.

        Fixed the handling of '>' and '<=' to use right-to-left conversion
        and left-to-right evaluation as specified by ECMA-262.

        Fixed a branch elimination bug on the ARM platform where incorrect
        code was generated because of overly aggressive branch
        elimination.

        Improved performance of code that repeatedly assigns the same
        function to the same property of different objects with the same
        map.

        Untangled DEBUG and ENABLE_DISASSEMBLER defines.  The disassembler
        no longer expects DEBUG to be defined.

        Added platform-nullos.cc to serve as the basis for new platform
        implementations.

10571

10572
2008-07-30: Version 0.2.0
10573 10574 10575 10576 10577 10578 10579 10580 10581 10582 10583 10584 10585 10586 10587 10588 10589 10590 10591 10592 10593 10594 10595 10596 10597 10598 10599 10600 10601 10602 10603 10604 10605 10606 10607 10608

        Changed all text files to have native svn:eol-style.

        Added a few samples and support for building them. The samples
        include a simple shell that can be used to benchmark and test V8.

        Changed V8::GetVersion to return the version as a string.

        Added source for lazily loaded scripts to snapshots and made
        serialization non-destructive.

        Improved ARM support by fixing the write barrier code to use
        aligned loads and stores and by removing premature locals
        optimization that relied on broken support for callee-saved
        registers (removed).

        Refactored the code for marking live objects during garbage
        collection and the code for allocating objects in paged
        spaces. Introduced an abstraction for the map word of a heap-
        allocated object and changed the memory allocator to allocate
        executable memory only for spaces that may contain code objects.

        Moved StringBuilder to utils.h and ScopedLock to platform.h, where
        they can be used by debugging and logging modules. Added
        thread-safe message queues for dealing with debugger events.

        Fixed the source code reported by toString for certain builtin
        empty functions and made sure that the prototype property of a
        function is enumerable.

        Improved performance of converting values to condition flags in
        generated code.

        Merged disassembler-{arch} files.


10609
2008-07-28: Version 0.1.4
10610 10611 10612 10613 10614 10615 10616

        Added support for storing JavaScript stack traces in a stack
        allocated buffer to make it visible in shallow core dumps.
        Controlled by the --preallocate-message-memory flag which is
        disabled by default.


10617
2008-07-25: Version 0.1.3
10618 10619 10620 10621 10622 10623 10624 10625 10626 10627 10628 10629 10630 10631 10632 10633 10634 10635 10636

        Fixed bug in JSObject::GetPropertyAttributePostInterceptor where
        map transitions would count as properties.

        Allowed aliased eval invocations by treating them as evals in the
        global context. This may change in the future.

        Added support for accessing the last entered context through the
        API and renamed Context::Current to Context::GetCurrent and
        Context::GetSecurityContext to Context::GetCurrentSecurityContext.

        Fixed bug in the debugger that would cause the debugger scripts to
        be recursively loaded and changed all disabling of interrupts to
        be block-structured.

        Made snapshot data read-only to allow it to be more easily shared
        across multiple users of V8 when linked as a shared library.


10637
2008-07-16: Version 0.1.2
10638 10639 10640 10641 10642 10643 10644 10645 10646 10647 10648 10649 10650 10651 10652

        Fixed building on Mac OS X by recognizing i386 and friends as
        IA-32 platforms.

        Added propagation of stack overflow exceptions that occur while
        compiling nested functions.

        Improved debugger with support for recursive break points and
        handling of exceptions that occur in the debugger JavaScript code.

        Renamed GetInternal to GetInternalField and SetInternal to
        SetInternalField in the API and moved InternalFieldCount and
        SetInternalFieldCount from FunctionTemplate to ObjectTemplate.


10653
2008-07-09: Version 0.1.1
10654 10655 10656 10657 10658 10659 10660 10661 10662 10663 10664 10665 10666 10667 10668

        Fixed bug in stack overflow check code for IA-32 targets where a
        non-tagged value in register eax was pushed to the stack.

        Fixed potential quadratic behavior when converting strings to
        numbers.

        Fixed bug where the return value from Object::SetProperty could
        end up being the property holder instead of the written value.

        Improved debugger support by allowing nested break points and by
        dealing with stack-overflows when compiling functions before
        setting break points in them.


10669
2008-07-03: Version 0.1.0
10670

10671
        Initial export.
10672

10673 10674 10675
# Local Variables:
# mode:text
# End: