| 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. |
| |
| |
| 2011-01-17: Version 3.0.8 |
| |
| Exposed heap size limit to the heap statistics gathered by |
| the GetHeapStatistics API. |
| |
| 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 |
| |
| 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. |
| |
| |
| 2011-01-05: Version 3.0.6 |
| |
| Allowed getters and setters on JSArray elements (issue 900). |
| |
| Stopped JSON objects from hitting inherited setters (part of |
| issue 1015). |
| |
| Allowed numbers and strings as names of getters/setters in object |
| initializer (issue 820). |
| |
| Added use_system_v8 option to gyp (off by default), to make it easier |
| for Linux distributions to ship with system-provided V8 library. |
| |
| Exported external array data accessors (issue 1016). |
| |
| Added labelled thread names to help with debugging (on Linux). |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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). |
| |
| |
| 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 |
| |
| 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). |
| |
| |
| 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). |
| |
| |
| 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). |
| |
| |
| 2010-11-03: Version 2.5.4 |
| |
| Improved V8 VFPv3 runtime detection to address issue 914. |
| |
| |
| 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). |
| |
| |
| 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. |
| |
| Fixed FreeBSD port (issue 912). |
| |
| Made windows-tick-processor respect D8_PATH. |
| |
| Implemented --noinline-new flag fully on IA32, X64 and ARM platforms. |
| |
| |
| 2010-10-20: Version 2.5.1 |
| |
| Fixed bug causing spurious out of memory exceptions |
| (issue http://crbug.com/54580). |
| |
| Fixed compilation error on Solaris platform (issue 901). |
| |
| Fixed error in strtod (string to floating point number conversion) |
| due to glibc's use of 80-bit floats in the FPU on 32-bit linux. |
| |
| Adjusted randomized allocations of executable memory to have 64k |
| granularity (issue http://crbug.com/56036). |
| |
| Supported profiling using kernel perf_events on linux. Added ll_prof |
| script to tools and --ll-prof flag to V8. |
| |
| |
| 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> |
| from Hewlett-Packard Development Company, LP). |
| |
| Fixed compilation error on ARM with gcc 4.4 (issue 894). |
| |
| |
| 2010-10-13: Version 2.4.9 |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2010-09-27: Version 2.4.6 |
| |
| 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). |
| |
| |
| 2010-09-22: Version 2.4.5 |
| |
| 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. |
| |
| |
| 2010-09-15: Version 2.4.4 |
| |
| Fixed bug with hangs on very large sparse arrays. |
| |
| Now tries harder to free up memory when running out of space. |
| |
| Added heap snapshots to JSON format to API. |
| |
| Recalibrated benchmarks. |
| |
| |
| 2010-09-13: Version 2.4.3 |
| |
| Made Date.parse properly handle TZ offsets (issue 857). |
| |
| Performance improvements on all platforms. |
| |
| |
| 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. |
| |
| |
| 2010-09-06: Version 2.4.1 |
| |
| Added the ability for an embedding application to receive a callback |
| when V8 allocates (V8::AddMemoryAllocationCallback) or deallocates |
| (V8::RemoveMemoryAllocationCallback) from the OS. |
| |
| Fixed several JSON bugs (including issue 855). |
| |
| Fixed memory overrun crash bug triggered during V8's tick-based |
| profiling. |
| |
| Performance improvements on all platforms. |
| |
| |
| 2010-09-01: Version 2.4.0 |
| |
| Fixed bug in Object.freeze and Object.seal when Array.prototype or |
| Object.prototype are changed (issue 842). |
| |
| Updated Array.splice to follow Safari and Firefox when called |
| with zero arguments. |
| |
| Fixed a missing live register when breaking at keyed loads on ARM. |
| |
| Performance improvements on all platforms. |
| |
| |
| 2010-08-25: Version 2.3.11 |
| |
| Fixed bug in RegExp related to copy-on-write arrays. |
| |
| Refactored tools/test.py script, including the introduction of |
| VARIANT_FLAGS that allows specification of sets of flags with which |
| all tests should be run. |
| |
| Fixed a bug in the handling of debug breaks in CallIC. |
| |
| Performance improvements on all platforms. |
| |
| |
| 2010-08-23: Version 2.3.10 |
| |
| Fixed bug in bitops on ARM. |
| |
| Build fixes for unusual compilers. |
| |
| Track high water mark for RWX memory. |
| |
| Performance improvements on all platforms. |
| |
| |
| 2010-08-18: Version 2.3.9 |
| |
| Fixed compilation for ARMv4 on OpenBSD/FreeBSD. |
| |
| Removed specialized handling of GCC 4.4 (issue 830). |
| |
| Fixed DST cache to take into account the suspension of DST in |
| Egypt during the 2010 Ramadan (issue http://crbug.com/51855). |
| |
| Performance improvements on all platforms. |
| |
| |
| 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. |
| |
| |
| 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). |
| |
| Allowed compiling with strict aliasing enabled on GCC 4.4 (issue 463). |
| |
| |
| 2010-08-09: Version 2.3.6 |
| |
| RegExp literals create a new object every time they are evaluated |
| (issue 704). |
| |
| Object.seal and Object.freeze return the modified object (issue 809). |
| |
| Fixed building using GCC 4.4.4. |
| |
| |
| 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. |
| |
| Randomized the addresses of allocated executable memory on Windows. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2010-06-30: Version 2.2.21 |
| |
| Fixed bug in externalizing some ASCII strings (Chromium issue 47824). |
| |
| Updated JSON.stringify to floor the space parameter (issue 753). |
| |
| Updated the Mozilla test expectations to the newest version. |
| |
| Updated the ES5 Conformance Test expectations to the latest version. |
| |
| Updated the V8 benchmark suite. |
| |
| Provide actual breakpoints locations in response to setBreakpoint |
| and listBreakpoints requests. |
| |
| |
| 2010-06-28: Version 2.2.20 |
| |
| Fixed bug with for-in on x64 platform (issue 748). |
| |
| Fixed crash bug on x64 platform (issue 756). |
| |
| Fixed bug in Object.getOwnPropertyNames. (chromium issue 41243). |
| |
| Fixed a bug on ARM that caused the result of 1 << x to be |
| miscalculated for some inputs. |
| |
| Performance improvements on all platforms. |
| |
| |
| 2010-06-23: Version 2.2.19 |
| |
| Fixed bug that causes the build to break when profillingsupport=off |
| (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. |
| |
| Fixed build failure for cctests when ENABLE_DEBUGGER_SUPPORT is not |
| defined. |
| |
| Performance improvements on all platforms. |
| |
| |
| 2010-06-16: Version 2.2.18 |
| |
| Added API functions to retrieve information on indexed properties |
| managed by the embedding layer. Fixes bug 737. |
| |
| Made ES5 Object.defineProperty support array elements. Fixes bug 619. |
| |
| Added heap profiling to the API. |
| |
| Removed old named property query from the API. |
| |
| Incremental performance improvements. |
| |
| |
| 2010-06-14: Version 2.2.17 |
| |
| Improved debugger support for stepping out of functions. |
| |
| Incremental performance improvements. |
| |
| |
| 2010-06-09: Version 2.2.16 |
| |
| Removed the SetExternalStringDiposeCallback API. Changed the |
| disposal of external string resources to call a virtual Dispose |
| method on the resource. |
| |
| Added support for more precise break points when debugging and |
| stepping. |
| |
| Memory usage improvements on all platforms. |
| |
| |
| 2010-06-07: Version 2.2.15 |
| |
| Added an API to control the disposal of external string resources. |
| |
| Added missing initialization of a couple of variables which makes |
| some compilers complaint when compiling with -Werror. |
| |
| Improved performance on all platforms. |
| |
| |
| 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. |
| |
| |
| 2010-05-31: Version 2.2.13 |
| |
| Implemented Object.getOwnPropertyDescriptor for element indices and |
| strings (issue 599). |
| |
| Fixed bug for windows 64 bit C calls from generated code. |
| |
| Added new scons flag unalignedaccesses for arm builds. |
| |
| Performance improvements on all platforms. |
| |
| |
| 2010-05-26: Version 2.2.12 |
| |
| Allowed accessors to be defined on objects rather than just object |
| templates. |
| |
| Changed the ScriptData API. |
| |
| |
| 2010-05-21: Version 2.2.11 |
| |
| Fixed crash bug in liveedit on 64 bit. |
| |
| 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. |
| |
| Added new flags --print-cumulative-gc-stat and --trace-gc-nvp. |
| |
| Added filtering of CPU profiles by security context. |
| |
| Fixed crash bug on ARM when running without VFP2 or VFP3. |
| |
| Incremental performance improvements in all backends. |
| |
| |
| 2010-05-17: Version 2.2.10 |
| |
| Performance improvements in the x64 and ARM backends. |
| |
| |
| 2010-05-10: Version 2.2.9 |
| |
| Allowed Object.create to be called with a function (issue 697). |
| |
| Fixed bug with Date.parse returning a non-NaN value when called on a |
| non date string (issue 696). |
| |
| Allowed unaligned memory accesses on ARM targets that support it (by |
| Subrato K De of CodeAurora <subratokde@codeaurora.org>). |
| |
| C++ API for retrieving JavaScript stack trace information. |
| |
| |
| 2010-05-05: Version 2.2.8 |
| |
| Performance improvements in the x64 and ARM backends. |
| |
| |
| 2010-05-03: Version 2.2.7 |
| |
| Added support for ES5 date time string format to Date.parse. |
| |
| Performance improvements in the x64 backend. |
| |
| |
| 2010-04-28: Version 2.2.6 |
| |
| Added "amd64" as recognized architecture in scons build script |
| (by Ryan Dahl <coldredlemur@gmail.com>). |
| |
| Fixed bug in String search and replace with very simple RegExps. |
| |
| Fixed bug in RegExp containing "\b^". |
| |
| Performance improvements on all platforms. |
| |
| |
| 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. |
| |
| Fixed two bugs in the ARM code generator that can cause |
| wrong calculations. |
| |
| Fixed a bug that may cause a wrong result for shift operations. |
| |
| |
| 2010-04-21: Version 2.2.4 |
| |
| Fixed warnings on arm on newer GCC versions. |
| |
| Fixed a number of minor bugs. |
| |
| Performance improvements on all platforms. |
| |
| |
| 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. |
| |
| |
| 2010-04-12: Version 2.2.2 |
| |
| Introduced new profiler API. |
| |
| Fixed random number generator to produce full 32 random bits. |
| |
| |
| 2010-04-06: Version 2.2.1 |
| |
| Debugger improvements. |
| |
| Fixed minor bugs. |
| |
| |
| 2010-03-29: Version 2.2.0 |
| |
| Fixed a few minor bugs. |
| |
| Performance improvements for string operations. |
| |
| |
| 2010-03-26: Version 2.1.10 |
| |
| Fixed scons build issues. |
| |
| Fixed a couple of minor bugs. |
| |
| |
| 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) |
| |
| |
| 2010-03-24: Version 2.1.8 |
| |
| Added fine-grained garbage collection callbacks to the API. |
| |
| Performance improvements on all platforms. |
| |
| |
| 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 |
| |
| Performance improvements for arithmetic operations. |
| |
| Performance improvements for string operations. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2010-02-23: Version 2.1.2 |
| |
| Fixed a crash bug caused by wrong assert. |
| |
| Fixed a bug with register names on 64-bit V8 (issue 615). |
| |
| Performance improvements on all platforms. |
| |
| |
| 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. |
| |
| |
| 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>. |
| |
| Fixed a bug that Math.round() returns incorrect results for huge |
| integers. |
| |
| Fixed enumeration order for objects created from some constructor |
| functions (isue http://crbug.com/3867). |
| |
| Fixed arithmetic on some integer constants (issue 580). |
| |
| Numerous performance improvements including porting of previous IA-32 |
| optimizations to x64 and ARM architectures. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2009-12-16: Version 2.0.4 |
| |
| Added ECMAScript 5 Object.create. |
| |
| Improved performance of Math.max and Math.min. |
| |
| Optimized adding of strings on 64-bit platforms. |
| |
| Improved handling of external strings by using a separate table |
| instead of weak handles. This improves garbage collection |
| performance and uses less memory. |
| |
| Changed code generation for object and array literals in toplevel |
| code to be more compact by doing more work in the runtime. |
| |
| Fixed a crash bug triggered when garbage collection happened during |
| generation of a callback load inline cache stub. |
| |
| Fixed crash bug sometimes triggered when local variables shadowed |
| parameters in functions that used the arguments object. |
| |
| |
| 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. |
| |
| |
| 2009-11-24: Version 2.0.2 |
| |
| Improved profiler support. |
| |
| Fixed bug that broke compilation of d8 with readline support. |
| |
| |
| 2009-11-20: Version 2.0.1 |
| |
| Fixed crash bug in String.prototype.replace. |
| |
| Reverted a change which caused Chromium interactive ui test |
| failures. |
| |
| |
| 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. |
| |
| |
| 2009-10-29: Version 1.3.18 |
| |
| Reverted a change which caused crashes in RegExp replace. |
| |
| Reverted a change which caused Chromium ui_tests failure. |
| |
| |
| 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. |
| |
| |
| 2009-10-16: Version 1.3.16 |
| |
| X64: Convert smis to holding 32 bits of payload. |
| |
| Introduced v8::Integer::NewFromUnsigned method. |
| |
| Added missing null check in Context::GetCurrent. |
| |
| Added trim, trimLeft and trimRight methods to String |
| 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. |
| |
| Added String::Concat(Handle<String> left, Handle<String> right) to the |
| V8 API. |
| |
| Fixed GYP-based builds of V8. |
| |
| |
| 2009-10-07: Version 1.3.15 |
| |
| Expanded the maximum size of the code space to 512MB for 64-bit mode. |
| |
| Fixed a crash bug happening when starting profiling (issue |
| http://crbug.com/23768). |
| |
| |
| 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. |
| |
| Fixed the stack limits setting API to work correctly with threads. The |
| stack limit now needs to be set to each thread thich is used with V8. |
| |
| Removed the high-priority flag from IdleNotification() |
| |
| Ensure V8 is initialized before locking and unlocking threads. |
| |
| Implemented a new JavaScript minifier for compressing the source of |
| the built-in JavaScript. This removes non-Open Source code from Douglas |
| 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. |
| |
| |
| 2009-09-23: Version 1.3.13 |
| |
| Fixed uninitialized memory problem. |
| |
| Improved heap profiler support. |
| |
| |
| 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. |
| |
| [ES5] Added Object.keys function. |
| |
| |
| 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. |
| |
| Made 'hidden' the default visibility for gcc. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2009-08-21: Version 1.3.6 |
| |
| Added support for forceful termination of JavaScript execution. |
| |
| Added low memory notification to the API. The embedding host can signal |
| 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. |
| |
| |
| 2009-08-19: Version 1.3.5 |
| |
| Optimized initialization of some arrays in the builtins. |
| |
| Fixed mac-nm script to support filenames with spaces. |
| |
| 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. |
| |
| Made sure that SSE3 instructions are used whenever possible even when |
| 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. |
| |
| |
| 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. |
| |
| |
| 2009-08-12: Version 1.3.3 |
| |
| Fixed issue 417: incorrect %t placeholder expansion. |
| |
| Added .gitignore file similar to Chromium's one. |
| |
| Fixed SConstruct file to build with new logging code for Android. |
| |
| 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. |
| |
| Added api call to determine whether a string can be externalized. |
| |
| Added a write() command to d8. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| More fine grained control of profiling aspects through the API. |
| |
| Optimized the called as constructor check for API calls. |
| |
| |
| 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. |
| |
| Finished more of the inline caching stubs for x64 targets. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2009-06-29: Version 1.2.10 |
| |
| Improved debugger support. |
| |
| Fixed bug in exception message reporting (issue 390). |
| |
| Improved overall performance. |
| |
| |
| 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. |
| |
| Improved overall performance. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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(). |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2009-04-27: Version 1.2.1 |
| |
| Added EcmaScript 5 JSON object. |
| |
| Fixed bug in preemption support on ARM. |
| |
| |
| 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). |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2009-04-11: Version 1.1.8 |
| |
| Changed test-debug/ThreadedDebugging to be non-flaky (issue 96). |
| |
| Fixed step-in handling for Function.prototype.apply and call in |
| the debugger (issue 269). |
| |
| Fixed v8::Object::DeleteHiddenValue to not bail out when there |
| are no hidden properties. |
| |
| Added workaround for crash bug, where external symbol table |
| entries with deleted resources would lead to NPEs when looking |
| up in the symbol table. |
| |
| |
| 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. |
| |
| |
| 2009-04-01: Version 1.1.6 |
| |
| Reverted an unsafe code generator change. |
| |
| |
| 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. |
| |
| |
| 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 |
| strings. |
| |
| |
| 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. |
| |
| |
| 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). |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2009-02-09: Version 1.0.0 |
| |
| Fixed crash-bug in the code generation for case independent 16 bit |
| backreferences. |
| |
| Made shells more robust in the presence of string conversion |
| failures (issue 224). |
| |
| Fixed a potential infinite loop when attempting to resolve |
| eval (issue 221). |
| |
| Miscellaneous fixes to the new regular expression engine. |
| |
| Reduced binary by stripping unneeded text from JavaScript library and |
| minifying some JavaScript files. |
| |
| |
| 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. |
| |
| |
| 2009-01-19: Version 0.4.8.1 |
| |
| Minor patch to debugger support. |
| |
| |
| 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 |
| stack overflow exceptions. |
| |
| Fixed bugs that caused catch variables and variables introduced by |
| eval to behave incorrectly when using accessors (issues 186, 190 |
| and 191). |
| |
| |
| 2009-01-06: Version 0.4.7 |
| |
| Minor bugfixes and optimizations. |
| |
| Added command line debugger to D8 shell. |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 2008-12-03: Version 0.4.5 |
| |
| 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 |
| |
| Added the v8::jscre namespace around the jscre functions to avoid |
| link errors (duplicate symbols) when building Google Chrome. |
| |
| 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). |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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). |
| |
| Optimized flattening of strings and string equality checking. |
| |
| 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). |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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. |
| |
| |
| 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 |
| |
| 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. |
| |
| |
| 2008-08-06: Version 0.2.1 |
| |
| 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. |
| |
| |
| 2008-07-30: Version 0.2.0 |
| |
| 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. |
| |
| |
| 2008-07-28: Version 0.1.4 |
| |
| 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. |
| |
| |
| 2008-07-25: Version 0.1.3 |
| |
| 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. |
| |
| |
| 2008-07-16: Version 0.1.2 |
| |
| 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. |
| |
| |
| 2008-07-09: Version 0.1.1 |
| |
| 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. |
| |
| |
| 2008-07-03: Version 0.1.0 |
| |
| Initial export. |
| |