blob: 5433a704083eeff23ed4591e29fa47c9fa70a839 [file] [log] [blame]
kasperl@chromium.org8ccb0be2009-04-07 07:21:39 +000012009-04-07: Version 1.1.7
2
3 Added support for easily importing additional environment
4 variables into the SCons build.
5
6 Optimized strict equality checks.
7
8 Fixed crash in indexed setters on objects without a corresponding
9 getter (issue 298).
10
11 Re-enabled script compilation cache.
12
13
ager@chromium.org8682a592009-04-01 10:47:14 +0000142009-04-01: Version 1.1.6
15
16 Reverted an unsafe code generator change.
17
18
ager@chromium.org71daaf62009-04-01 07:22:49 +0000192009-04-01: Version 1.1.5
20
21 Fixed bug that caused function literals to not be optimized as
22 much as other functions.
23
24 Improved profiler support.
25
26 Fixed a crash bug in connection with debugger unloading.
27
28 Fixed a crash bug in the code generator caused by losing the
29 information that a frame element was copied.
30
31 Fixed an exception propagation bug that could cause non-null
32 return values when exceptions were thrown.
33
34
ager@chromium.org41826e72009-03-30 13:30:57 +0000352009-03-30: Version 1.1.4
36
37 Optimized String.prototype.match.
38
39 Improved the stack information in profiles.
40
41 Fixed bug in ARM port making it possible to compile the runtime
42 system for thumb mode again.
43
44 Implemented a number of optimizations in the code generator.
45
46 Fixed a number of memory leaks in tests.
47
48 Fixed crash bug in connection with script source code and external
kasperl@chromium.org8ccb0be2009-04-07 07:21:39 +000049 strings.
ager@chromium.org41826e72009-03-30 13:30:57 +000050
51
kasperl@chromium.orgf5aa8372009-03-24 14:47:14 +0000522009-03-24: Version 1.1.3
53
54 Fixed assertion failures in compilation of loop conditions.
55
56 Removed STL dependency from developer shell (d8).
57
58 Added infrastructure for protecting the V8 heap from corruption
59 caused by memory modifications from the outside.
60
61
ager@chromium.orgbb29dc92009-03-24 13:25:23 +0000622009-03-24: Version 1.1.2
63
64 Improved frame merge code generated by the code generator.
65
66 Optimized String.prototype.replace.
67
68 Implemented __defineGetter__ and __defineSetter__ for properties
69 with integer keys on non-array objects.
70
71 Improved debugger and profiler support.
72
73 Fixed a number of portability issues to allow compilation for
74 smaller ARM devices.
75
76 Exposed object cloning through the API.
77
78 Implemented hidden properties. This is used to expose an identity
79 hash for objects through the API.
80
81 Implemented restarting of regular expressions if their input
82 string changes representation during preemption.
83
84 Fixed a code generator bug that could cause assignments in loops
85 to be ignored if using continue to break out of the loop (issue
86 284).
87
88
ager@chromium.org3a6061e2009-03-12 14:24:36 +0000892009-03-12: Version 1.1.1
90
91 Fixed an assertion in the new compiler to take stack overflow
92 exceptions into account.
93
94 Removed exception propagation code that could cause crashes.
95
96 Fixed minor bug in debugger line number computations.
97
98 8-byte align the C stack on Linux and Windows to speed up floating
99 point computations.
100
101
kasperl@chromium.org7be3c992009-03-12 07:19:55 +00001022009-03-12: Version 1.1.0
103
104 Improved code generation infrastructure by doing simple register
105 allocation and constant folding and propagation.
106
107 Optimized regular expression matching by avoiding to create
108 intermediate string arrays and by flattening nested array
109 representations of RegExp data.
110
111 Traverse a few stack frames when recording profiler samples to
112 include partial call graphs in the profiling output.
113
114 Added support for using OProfile to profile generated code.
115
116 Added remote debugging support to the D8 developer shell.
117
118 Optimized creation of nested literals like JSON objects.
119
120 Fixed a bug in garbage collecting unused maps and turned it on by
121 default (--collect-maps).
122
123 Added support for running tests under Valgrind.
124
125
kasperl@chromium.org061ef742009-02-27 12:16:20 +00001262009-02-27: Version 1.0.3
127
128 Optimized double-to-integer conversions in bit operations by using
129 SSE3 instructions if available.
130
131 Optimized initialization sequences that store to multiple
132 properties of the same object.
133
134 Changed the D8 debugger frontend to use JSON messages.
135
136 Force garbage collections when disposing contexts.
137
138 Align code objects at 32-byte boundaries.
139
140
ager@chromium.org381abbb2009-02-25 13:23:22 +00001412009-02-25: Version 1.0.2
142
143 Improved profiling support by performing simple call stack
144 sampling for ticks and by fixing a bug in the logging of code
145 addresses.
146
147 Fixed a number of debugger issues.
148
149 Optimized code that uses eval.
150
151 Fixed a couple of bugs in the regular expression engine.
152
153 Reduced the size of generated code for certain regular expressions.
154
155 Removed JSCRE completely.
156
157 Fixed issue where test could not be run if there was a dot in the
158 checkout path.
159
160
ager@chromium.org6f10e412009-02-13 10:11:16 +00001612009-02-13: Version 1.0.1
162
163 Fixed two crash-bugs in irregexp (issue 231 and 233).
164
165 Fixed a number of minor bugs (issue 87, 227 and 228).
166
167 Added support for morphing strings to external strings on demand
168 to avoid having to create copies in the embedding code.
169
170 Removed experimental support for external symbol callbacks.
171
172
iposva@chromium.org245aa852009-02-10 00:49:54 +00001732009-02-09: Version 1.0.0
174
175 Fixed crash-bug in the code generation for case independent 16 bit
176 backreferences.
ager@chromium.org6f10e412009-02-13 10:11:16 +0000177
iposva@chromium.org245aa852009-02-10 00:49:54 +0000178 Made shells more robust in the presence of string conversion
179 failures (issue 224).
ager@chromium.org6f10e412009-02-13 10:11:16 +0000180
iposva@chromium.org245aa852009-02-10 00:49:54 +0000181 Fixed a potential infinite loop when attempting to resolve
182 eval (issue 221).
ager@chromium.org6f10e412009-02-13 10:11:16 +0000183
iposva@chromium.org245aa852009-02-10 00:49:54 +0000184 Miscellaneous fixes to the new regular expression engine.
ager@chromium.org6f10e412009-02-13 10:11:16 +0000185
iposva@chromium.org245aa852009-02-10 00:49:54 +0000186 Reduced binary by stripping unneeded text from JavaScript library and
187 minifying some JavaScript files.
188
189
ager@chromium.orgddb913d2009-01-27 10:01:48 +00001902009-01-27: Version 0.4.9
191
192 Enabled new regular expression engine.
193
194 Made a number of changes to the debugger protocol.
195
196 Fixed a number of bugs in the preemption support.
197
198 Added -p option to the developer shell to run files in parallel
199 using preemption.
200
201 Fixed a number of minor bugs (including issues 176, 187, 189, 192,
202 193, 198 and 201).
203
204 Fixed a number of bugs in the serialization/deserialization
205 support for the ARM platform.
206
207
sgjesse@chromium.org715915b2009-01-19 16:08:47 +00002082009-01-19: Version 0.4.8.1
209
210 Minor patch to debugger support.
211
212
ager@chromium.org32912102009-01-16 10:38:43 +00002132009-01-16: Version 0.4.8
214
215 Fixed string length bug on ARM (issue 171).
216
217 Made most methods in the API const.
218
219 Optimized object literals by improving data locality.
220
221 Fixed bug that caused incomplete functions to be cached in case of
sgjesse@chromium.org715915b2009-01-19 16:08:47 +0000222 stack overflow exceptions.
ager@chromium.org32912102009-01-16 10:38:43 +0000223
224 Fixed bugs that caused catch variables and variables introduced by
sgjesse@chromium.org715915b2009-01-19 16:08:47 +0000225 eval to behave incorrectly when using accessors (issues 186, 190
226 and 191).
ager@chromium.org32912102009-01-16 10:38:43 +0000227
228
christian.plesner.hansen@gmail.com37abdec2009-01-06 14:43:28 +00002292009-01-06: Version 0.4.7
230
ager@chromium.org32912102009-01-16 10:38:43 +0000231 Minor bugfixes and optimizations.
christian.plesner.hansen@gmail.com37abdec2009-01-06 14:43:28 +0000232
ager@chromium.org32912102009-01-16 10:38:43 +0000233 Added command line debugger to D8 shell.
christian.plesner.hansen@gmail.com37abdec2009-01-06 14:43:28 +0000234
ager@chromium.org32912102009-01-16 10:38:43 +0000235 Fixed subtle bug that caused the wrong 'this' to be used when
236 calling a caught function in a catch clause.
christian.plesner.hansen@gmail.com37abdec2009-01-06 14:43:28 +0000237
ager@chromium.org32912102009-01-16 10:38:43 +0000238 Inline array loads within loops directly in the code instead of
239 always calling a stub.
christian.plesner.hansen@gmail.com37abdec2009-01-06 14:43:28 +0000240
ager@chromium.org32912102009-01-16 10:38:43 +0000241
ager@chromium.org8bb60582008-12-11 12:02:20 +00002422008-12-11: Version 0.4.6
243
244 Fixed exception reporting bug where certain exceptions were
245 incorrectly reported as uncaught.
246
247 Improved the memory allocation strategy used during compilation to
248 make running out of memory when compiling huge scripts less
249 likely.
250
251 Optimized String.replace by avoiding the construction of certain
252 sub strings.
253
254 Fixed bug in code generation for large switch statements on ARM.
255
256 Fixed bug that caused V8 to change the global object template
257 passed in by the user.
258
259 Changed the API for creating object groups used during garbage
260 collection. Entire object groups are now passed to V8 instead of
261 individual members of the groups.
262
ager@chromium.org32912102009-01-16 10:38:43 +0000263
ager@chromium.orga74f0da2008-12-03 16:05:52 +00002642008-12-03: Version 0.4.5
iposva@chromium.org96f667e2008-11-26 23:48:02 +0000265
ager@chromium.orga74f0da2008-12-03 16:05:52 +0000266 Added experimental API support for allocating V8 symbols as
267 external strings.
268
269 Fixed bugs in debugging support on ARM.
270
271 Changed eval implementation to correctly detect whether or not a
272 call to eval is aliased.
273
274 Fixed bug caused by a combination of the compilation cache and
275 dictionary probing in native code. The bug caused us to sometimes
276 call functions that had not yet been compiled.
277
278 Added platform support for FreeBSD.
279
280 Added support for building V8 on Windows with either the shared or
281 static version of MSVCRT
ager@chromium.org32912102009-01-16 10:38:43 +0000282
iposva@chromium.org96f667e2008-11-26 23:48:02 +0000283 Added the v8::jscre namespace around the jscre functions to avoid
284 link errors (duplicate symbols) when building Google Chrome.
285
ager@chromium.orga74f0da2008-12-03 16:05:52 +0000286 Added support for calling a JavaScript function with the current
287 debugger execution context as its argument to the debugger
288 interface.
289
290 Changed the type of names of counters from wchar_t to char.
291
292 Changed the Windows system call used to compute daylight savings
293 time. The system call that we used to use became four times
294 slower on WinXP SP3.
295
296 Added support in the d8 developer shell for memory-mapped counters
297 and added a stats-viewer tool.
298
299 Fixed bug in upper/lower case mappings (issue 149).
300
iposva@chromium.org96f667e2008-11-26 23:48:02 +0000301
ager@chromium.org3bf7b912008-11-17 09:09:45 +00003022008-11-17: Version 0.4.4
303
304 Reduced code size by using shorter instruction encoding when
305 possible.
306
307 Added a --help option to the shell sample and to the d8 shell.
308
309 Added visual studio project files for building the ARM simulator.
310
311 Fixed a number of ARM simulator issues.
312
313 Fixed bug in out-of-memory handling on ARM.
314
315 Implemented shell support for passing arguments to a script from
316 the command line.
317
318 Fixed bug in date code that made certain date functions return -0
319 instead of 0 for dates before the epoch.
320
321 Restricted applications of eval so it can only be used in the
322 context of the associated global object.
323
324 Treat byte-order marks as whitespace characters.
ager@chromium.org32912102009-01-16 10:38:43 +0000325
326
ager@chromium.org870a0b62008-11-04 11:43:05 +00003272008-11-04: Version 0.4.3
328
329 Added support for API accessors that prohibit overwriting by
330 accessors defined in JavaScript code by using __defineGetter__ and
331 __defineSetter__.
332
333 Improved handling of conditionals in test status files.
334
335 Introduced access control in propertyIsEnumerable.
336
337 Improved performance of some string operations by caching
338 information about the type of the string between operations.
339
340 Fixed bug in fast-case code for switch statements that only have
341 integer labels.
ager@chromium.org32912102009-01-16 10:38:43 +0000342
ager@chromium.org870a0b62008-11-04 11:43:05 +0000343
kasperl@chromium.org9bbf9682008-10-30 11:53:07 +00003442008-10-30: Version 0.4.2
345
346 Improved performance of Array.prototype.concat by moving the
347 implementation to C++ (issue 123).
348
349 Fixed heap growth policy to avoid growing old space to its maximum
350 capacity before doing a garbage collection and fixed issue that
351 would lead to artificial out of memory situations (issue 129).
352
353 Fixed Date.prototype.toLocaleDateString to return the date in the
354 same format as WebKit.
355
356 Added missing initialization checks to debugger API.
357
358 Added removing of unused maps during GC.
359
360
kasperl@chromium.org9fe21c62008-10-28 08:53:51 +00003612008-10-28: Version 0.4.1
362
363 Added caching of RegExp data in compilation cache.
364
365 Added Visual Studio project file for d8 shell.
366
367 Fixed function call performance regression introduced in version
368 0.4.0 when splitting the global object in two parts (issue 120).
369
370 Fixed issue 131 by checking for empty handles before throwing and
371 reporting exceptions.
372
373
kasperl@chromium.org5a8ca6c2008-10-23 13:57:19 +00003742008-10-23: Version 0.4.0
375
376 Split the global object into two parts: The state holding global
377 object and the global object proxy.
378
379 Fixed bug that affected the value of an assignment to an element
380 in certain cases (issue 116).
381
382 Added GetPropertyNames functionality (issue 33) and extra Date
383 functions (issue 77) to the API.
384
385 Changed WeakReferenceCallback to take a Persistent<Value> instead
386 of a Persistent<Object> (issue 101).
387
388 Fixed issues with message reporting for exceptions in try-finally
389 blocks (issues 73 and 75).
390
ager@chromium.org32912102009-01-16 10:38:43 +0000391 Optimized flattening of strings and string equality checking.
kasperl@chromium.org5a8ca6c2008-10-23 13:57:19 +0000392
393 Improved Boyer-Moore implementation for faster indexOf operations.
394
395 Added development shell (d8) which includes counters and
396 completion support.
397
398 Fixed problem with the receiver passed to functions called from
399 eval (issue 124).
400
401
ager@chromium.org7c537e22008-10-16 08:43:32 +00004022008-10-16: Version 0.3.5
403
404 Improved string hash-code distribution by excluding bit-field bits
405 from the hash-code.
406
407 Changed string search algorithm used in indexOf from KMP to
408 Boyer-Moore.
409
410 Improved the generated code for the instanceof operator.
411
412 Improved performance of slow-case string equality checks by
413 specializing the code based on the string representation.
414
415 Improve the handling of out-of-memory situations (issue 70).
416
417 Improved performance of strict equality checks.
418
419 Improved profiler output to make it easier to see anonymous
420 functions.
421
422 Improved performance of slow-case keyed loads.
423
424 Improved property access performance by allocating a number of
425 properties in the front object.
426
427 Changed the toString behavior on the built-in object constructors
428 to print [native code] instead of the actual source. Some web
429 applications do not like constructors with complex toString
430 results.
ager@chromium.org32912102009-01-16 10:38:43 +0000431
ager@chromium.org7c537e22008-10-16 08:43:32 +0000432
kasperl@chromium.org41044eb2008-10-06 08:24:46 +00004332008-10-06: Version 0.3.4
434
435 Changed Array.prototype.sort to use quick sort.
436
437 Fixed code generation issue where leaving a finally block with
438 break or continue would accumulate elements on the expression
439 stack (issue 86).
440
441 Made sure that the name accessor on functions returns the expected
442 names for builtin JavaScript functions and C++ callback functions.
443
444 Added fast case code for extending the property storage array of
445 JavaScript objects.
446
447 Ported switch statement optimizations introduced in version 0.3.3
448 to the ARM code generator.
449
450 Allowed GCC to use strict-aliasing rules when compiling.
451
452 Improved performance of arguments object allocation by taking care
453 of arguments adaptor frames in the generated code.
454
455 Updated the V8 benchmark suite to version 2.
456
457
ager@chromium.org236ad962008-09-25 09:45:57 +00004582008-09-25: Version 0.3.3
459
460 Improved handling of relocation information to enable more
461 peep-hole optimizations.
462
463 Optimized switch statements where all labels are constant small
464 integers.
465
466 Optimized String.prototype.indexOf for common cases.
467
468 Fixed more build issues (issue 80).
469
470 Fixed a couple of profiler issues.
471
472 Fixed bug where the body of a function created using the Function
473 constructor was not allowed to end with a single-line comment
474 (issue 85).
475
476 Improved handling of object literals by canonicalizing object
477 literal maps. This will allow JSON objects with the same set of
478 properties to share the same map making inline caching work better
479 for JSON objects.
ager@chromium.org32912102009-01-16 10:38:43 +0000480
ager@chromium.org236ad962008-09-25 09:45:57 +0000481
kasperl@chromium.orgb9123622008-09-17 14:05:56 +00004822008-09-17: Version 0.3.2
483
484 Generalized the EvalCache into a CompilationCache and enabled it
485 for scripts too. The current strategy is to retire all entries
486 whenever a mark-sweep collection is started.
487
488 Fixed bug where switch statements containing only a default case
489 would lead to an unbalanced stack (issue 69).
490
491 Fixed bug that made access to the function in a named function
492 expression impossible in certain situations (issue 24).
493
494 Fixed even more build issues.
495
496 Optimized calling conventions on ARM. The conventions on ARM and
497 IA-32 now match.
498
499 Removed static initializers for flags and counters.
500
501 Improved inline caching behavior for uncommon cases where lazily
502 loading Date and RegExp code could force certain code paths go
503 megamorphic.
504
505 Removed arguments adaption for builtins written in C++. This
506 makes Array.prototype.push and Array.prototype.pop slightly
507 faster.
508
509
ager@chromium.org9258b6b2008-09-11 09:11:10 +00005102008-09-11: Version 0.3.1
511
512 Fixed a number of build issues.
513
514 Fixed problem with missing I-cache flusing on ARM.
515
516 Changed space layout in memory management by splitting up
517 code space into old data space and code space.
518
519 Added utf-8 conversion support to the API (issue 57).
520
521 Optimized repeated calls to eval with the same strings. These
522 repeated calls are common in web applications.
523
524 Added Xcode project file.
525
526 Optimized a couple of Array operation.
527
528 Fixed parser bug by checking for end-of-string when parsing break
529 and continue (issue 35).
530
531 Fixed problem where asian characters were not categorized as
532 letters.
533
534 Fixed bug that disallowed calling functions fetched from an array
535 using a string as an array index (issue 32).
536
537 Fixed bug where the internal field count on object templates were
538 sometimes ignored (issue 54).
539
540 Added -f option to the shell sample for compatibility with other
541 engines (issue 18).
542
543 Added source info to TryCatches in the API.
544
545 Fixed problem where the seed for the random number generator was
546 clipped in a double to unsigned int conversion.
547
548 Fixed bug where cons string symbols were sometimes converted to
549 non-symbol flat strings during GC.
550
551 Fixed bug in error reporting when attempting to convert null to an
552 object.
ager@chromium.org32912102009-01-16 10:38:43 +0000553
554
ager@chromium.orgc27e4e72008-09-04 13:52:27 +00005552008-09-04: Version 0.3.0
556
557 Added support for running tests on the ARM simulator.
558
559 Fixed bug in the 'in' operator where negative indices were not
560 treated correctly.
561
562 Fixed build issues on gcc-4.3.1.
563
564 Changed Date.prototype.toLocaleTimeString to not print the
565 timezone part of the time.
566
567 Renamed debug.h to v8-debug.h to reduce the risk of name conflicts
568 with user code.
569
570
v8.team.kasperl727e9952008-09-02 14:56:44 +00005712008-09-02: Version 0.2.5
572
573 Renamed the top level directory 'public' to 'include'.
574
575 Added 'env' option to the SCons build scripts to support
576 overriding the ENV part of the build environment. This is mostly
577 to support Windows builds in cases where SCons cannot find the
578 correct paths to the Windows SDK, as these paths cannot be passed
579 through shell environment variables.
580
581 Enabled "Buffer Security Check" on for the Windows SCons build and
582 added the linker option /OPT:ICF as an optimization.
583
584 Added the V8 benchmark suite to the repository.
585
586
mads.s.ager@gmail.com9a4089a2008-09-01 08:55:01 +00005872008-09-01: Version 0.2.4
588
589 Included mjsunit JavaScript test suite and C++ unit tests.
590
591 Changed the shell sample to not print the result of executing a
592 script provided on the command line.
593
594 Fixed issue when building samples on Windows using a shared V8
595 library. Added visibility option on Linux build which makes the
596 generated library 18% smaller.
597
598 Changed build system to accept multiple build modes in one build
599 and generate separate objects, libraries and executables for each
600 mode.
601
602 Removed deferred negation optimization (a * -b => -(a * b)) since
603 this visibly changes operand conversion order.
604
605 Improved parsing performance by introducing stack guard in
606 preparsing. Without a stack guard preparsing always bails out
607 with stack overflow.
608
609 Changed shell sample to take flags directly from the command-line.
610 Added API call that implements this.
611
612 Added load, quit and version functions to the shell sample so it's
613 easier to run benchmarks and tests.
614
615 Fixed issue with building samples and cctests on 64-bit machines.
616
617 Fixed bug in the runtime system where the prototype chain was not
618 always searched for a setter when setting a property that does not
619 exist locally.
ager@chromium.org32912102009-01-16 10:38:43 +0000620
mads.s.ager@gmail.com9a4089a2008-09-01 08:55:01 +0000621
mads.s.agercbaa0602008-08-14 13:41:48 +00006222008-08-14: Version 0.2.3
623
624 Improved performance of garbage collection by moving the
625 function that updates pointers during compacting collection
626 into the updating visitor. This gives the compiler a better
627 chance to inline and avoid a function call per (potential)
628 pointer.
629
630 Extended the shell sample with a --runtime-flags option.
631
632 Added Visual Studio project files for the shell.cc and
633 process.cc samples.
634
635
6362008-08-13: Version 0.2.2
mads.s.ager31e71382008-08-13 09:32:07 +0000637
638 Improved performance of garbage collection by changing the way
639 we use the marking stack in the event of stack overflow during
640 full garbage collection and by changing the way we mark roots.
641
642 Cleaned up ARM version by removing top of stack caching and by
643 introducing push/pop elimination.
644
645 Cleaned up the way runtime functions are called to allow
646 runtime calls with no arguments.
647
648 Changed Windows build options to make sure that exceptions are
649 disabled and that optimization flags are enabled.
650
651 Added first version of Visual Studio project files.
652
653
mads.s.agercbaa0602008-08-14 13:41:48 +00006542008-08-06: Version 0.2.1
mads.s.ager@gmail.com769cc962008-08-06 10:02:49 +0000655
656 Improved performance of unary addition by avoiding runtime calls.
657
658 Fixed the handling of '>' and '<=' to use right-to-left conversion
659 and left-to-right evaluation as specified by ECMA-262.
660
661 Fixed a branch elimination bug on the ARM platform where incorrect
662 code was generated because of overly aggressive branch
663 elimination.
664
665 Improved performance of code that repeatedly assigns the same
666 function to the same property of different objects with the same
667 map.
668
669 Untangled DEBUG and ENABLE_DISASSEMBLER defines. The disassembler
670 no longer expects DEBUG to be defined.
671
672 Added platform-nullos.cc to serve as the basis for new platform
673 implementations.
674
mads.s.ager31e71382008-08-13 09:32:07 +0000675
mads.s.agercbaa0602008-08-14 13:41:48 +00006762008-07-30: Version 0.2.0
kasper.lund7276f142008-07-30 08:49:36 +0000677
678 Changed all text files to have native svn:eol-style.
679
680 Added a few samples and support for building them. The samples
681 include a simple shell that can be used to benchmark and test V8.
682
683 Changed V8::GetVersion to return the version as a string.
684
685 Added source for lazily loaded scripts to snapshots and made
686 serialization non-destructive.
687
688 Improved ARM support by fixing the write barrier code to use
689 aligned loads and stores and by removing premature locals
690 optimization that relied on broken support for callee-saved
691 registers (removed).
692
693 Refactored the code for marking live objects during garbage
694 collection and the code for allocating objects in paged
695 spaces. Introduced an abstraction for the map word of a heap-
696 allocated object and changed the memory allocator to allocate
697 executable memory only for spaces that may contain code objects.
698
699 Moved StringBuilder to utils.h and ScopedLock to platform.h, where
700 they can be used by debugging and logging modules. Added
701 thread-safe message queues for dealing with debugger events.
702
703 Fixed the source code reported by toString for certain builtin
704 empty functions and made sure that the prototype property of a
705 function is enumerable.
706
707 Improved performance of converting values to condition flags in
708 generated code.
709
710 Merged disassembler-{arch} files.
711
712
mads.s.agercbaa0602008-08-14 13:41:48 +00007132008-07-28: Version 0.1.4
kasper.lundaf4734f2008-07-28 12:50:18 +0000714
715 Added support for storing JavaScript stack traces in a stack
716 allocated buffer to make it visible in shallow core dumps.
717 Controlled by the --preallocate-message-memory flag which is
718 disabled by default.
719
720
mads.s.agercbaa0602008-08-14 13:41:48 +00007212008-07-25: Version 0.1.3
kasper.lund44510672008-07-25 07:37:58 +0000722
723 Fixed bug in JSObject::GetPropertyAttributePostInterceptor where
724 map transitions would count as properties.
725
726 Allowed aliased eval invocations by treating them as evals in the
727 global context. This may change in the future.
728
729 Added support for accessing the last entered context through the
730 API and renamed Context::Current to Context::GetCurrent and
731 Context::GetSecurityContext to Context::GetCurrentSecurityContext.
732
733 Fixed bug in the debugger that would cause the debugger scripts to
734 be recursively loaded and changed all disabling of interrupts to
735 be block-structured.
736
737 Made snapshot data read-only to allow it to be more easily shared
738 across multiple users of V8 when linked as a shared library.
739
740
mads.s.agercbaa0602008-08-14 13:41:48 +00007412008-07-16: Version 0.1.2
kasper.lund212ac232008-07-16 07:07:30 +0000742
743 Fixed building on Mac OS X by recognizing i386 and friends as
744 IA-32 platforms.
745
746 Added propagation of stack overflow exceptions that occur while
747 compiling nested functions.
748
749 Improved debugger with support for recursive break points and
750 handling of exceptions that occur in the debugger JavaScript code.
751
752 Renamed GetInternal to GetInternalField and SetInternal to
753 SetInternalField in the API and moved InternalFieldCount and
754 SetInternalFieldCount from FunctionTemplate to ObjectTemplate.
755
756
mads.s.agercbaa0602008-08-14 13:41:48 +00007572008-07-09: Version 0.1.1
kasper.lundbd3ec4e2008-07-09 11:06:54 +0000758
759 Fixed bug in stack overflow check code for IA-32 targets where a
760 non-tagged value in register eax was pushed to the stack.
761
762 Fixed potential quadratic behavior when converting strings to
763 numbers.
764
765 Fixed bug where the return value from Object::SetProperty could
766 end up being the property holder instead of the written value.
767
768 Improved debugger support by allowing nested break points and by
769 dealing with stack-overflows when compiling functions before
770 setting break points in them.
771
772
mads.s.agercbaa0602008-08-14 13:41:48 +00007732008-07-03: Version 0.1.0
christian.plesner.hansen43d26ec2008-07-03 15:10:15 +0000774
kasper.lundbd3ec4e2008-07-09 11:06:54 +0000775 Initial export.
christian.plesner.hansen43d26ec2008-07-03 15:10:15 +0000776