mirror of
https://github.com/nodejs/node.git
synced 2024-11-30 15:30:56 +01:00
3029 lines
87 KiB
Plaintext
3029 lines
87 KiB
Plaintext
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
2011-06-29: Version 3.4.8
|
|
|
|
Ensure 16-byte stack alignment on Solaris (issue 1505).
|
|
|
|
Fix "illegal access" when calling parseInt with a radix
|
|
that is not a smi. (issue 1246).
|
|
|
|
|
|
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.
|
|
|
|
|
|
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).
|
|
|
|
Extended setBreakpoint API to accept partial script name (issue 1418).
|
|
|
|
Made multi-line comments not count when deciding whether the '-->'
|
|
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).
|
|
|
|
|
|
2011-06-20: Version 3.4.5
|
|
|
|
Fixed issues 794, 1097, 1215(partial), 1417, 1435, 1472, 1473,
|
|
1476, and 1477.
|
|
|
|
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)
|
|
|
|
Performance improvements on all platforms.
|
|
|
|
|
|
2011-06-15: Version 3.4.4
|
|
|
|
Added snapshot compression support and --stress-opt flag to d8.
|
|
|
|
Improved performance of try/catch.
|
|
|
|
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.
|
|
|
|
Fixed Array.prototype.{reduce,reduceRight} to pass undefined as the
|
|
receiver for strict mode callbacks. (issue 1436)
|
|
|
|
Fixed a bug where an array load was incorrectly hoisted by GVN.
|
|
|
|
Handle 'undefined' correctly when === has been specialized for doubles.
|
|
(issue 1434)
|
|
|
|
Corrected the limit of local variables in an optimized function from 64
|
|
to 63.
|
|
|
|
Correctly set ReadOnly flag on indexed properties when using the API Set
|
|
method. (issue 1470)
|
|
|
|
Give the correct error message when Object.isExtensible is called on a
|
|
non-object. (issue 1452)
|
|
|
|
Added GetOwnPropertyNames method for Object in the API. Patch by Peter
|
|
Varga.
|
|
|
|
Do not redefine properties unneccesarily in seal and freeze. (issue
|
|
1447)
|
|
|
|
IsExecutionTerminating has an Isolate parameter now.
|
|
|
|
Distinguish keyed loads with a symbol key from fast elements loads,
|
|
avoiding some useless deoptimizations. (issue 1471)
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
2011-05-18: Version 3.3.8
|
|
|
|
Added MarkIndependent to the persistent handle API. Independent
|
|
handles are independent of all other persistent handles and can be
|
|
garbage collected more frequently.
|
|
|
|
Implemented the get trap for Harmony proxies. Proxies are enabled
|
|
with the --harmony-proxies flag.
|
|
|
|
Performance improvements and bug fixes on all platforms.
|
|
|
|
|
|
2011-05-16: Version 3.3.7
|
|
|
|
Updated MIPS infrastructure files.
|
|
|
|
Performance improvements and bug fixes on all platforms.
|
|
|
|
|
|
2011-05-11: Version 3.3.6
|
|
|
|
Updated MIPS infrastructure files.
|
|
|
|
Added method IsCallable for Object to the API.
|
|
Patch by Peter Varga.
|
|
|
|
|
|
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).
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
2011-04-13: Version 3.2.10
|
|
|
|
Fixed bug in external float arrays on ARM (issue 1323).
|
|
|
|
Minor performance improvements and bug fixes.
|
|
|
|
|
|
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.
|
|
|
|
|
|
2011-04-06: Version 3.2.8
|
|
|
|
Exposed WebGL typed array constructors in the shell sample.
|
|
|
|
Performance improvements on all platforms.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
2011-03-28: Version 3.2.5
|
|
|
|
Fixed build with Irregexp interpreter (issue 1266).
|
|
|
|
Added Crankshaft support for external arrays.
|
|
|
|
Fixed two potential crash bugs.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
2011-02-28: Version 3.1.7
|
|
|
|
Fixed a number of crash bugs.
|
|
|
|
Improved Crankshaft for x64 and ARM.
|
|
|
|
Fixed implementation of indexOf/lastIndexOf for sparse
|
|
arrays (http://crbug.com/73940).
|
|
|
|
Fixed bug in map space compaction (http://crbug.com/59688).
|
|
|
|
Added support for direct getter accessors calls on ARM.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
2011-02-09: Version 3.1.3
|
|
|
|
Fixed a bug triggered by functions with huge numbers of declared
|
|
arguments.
|
|
|
|
Fixed zap value aliasing a real object - debug mode only (issue 866).
|
|
|
|
Fixed issue where Array.prototype.__proto__ had been set to null
|
|
(issue 1121).
|
|
|
|
Fixed stability bugs in Crankshaft for x86.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
2011-01-31: Version 3.1.0
|
|
|
|
Performance improvements on all platforms.
|
|
|
|
|
|
2011-01-28: Version 3.0.12
|
|
|
|
Added support for strict mode parameter and object property
|
|
validation.
|
|
|
|
Fixed a couple of crash bugs.
|
|
|
|
|
|
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).
|
|
|
|
|
|
2011-01-24: Version 3.0.10
|
|
|
|
Fixed External::Wrap for 64-bit addresses (issue 1037).
|
|
|
|
Fixed incorrect .arguments variable proxy handling in the full
|
|
code generator (issue 1060).
|
|
|
|
Introduced partial strict mode support.
|
|
|
|
Changed formatting of recursive error messages to match Firefox and
|
|
Safari (issue http://crbug.com/70334).
|
|
|
|
Fixed incorrect rounding for float-to-integer conversions for external
|
|
array types, which implement the Typed Array spec
|
|
(issue http://crbug.com/50972).
|
|
|
|
Performance improvements on the IA32 platform.
|
|
|
|
|
|
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.
|
|
|
|
# Local Variables:
|
|
# mode:text
|
|
# End:
|