iposva@chromium.org | 96f667e | 2008-11-26 23:48:02 +0000 | [diff] [blame^] | 1 | 2008-11-26: Version 0.4.4.1 |
| 2 | |
| 3 | Added the v8::jscre namespace around the jscre functions to avoid |
| 4 | link errors (duplicate symbols) when building Google Chrome. |
| 5 | |
| 6 | |
ager@chromium.org | 3bf7b91 | 2008-11-17 09:09:45 +0000 | [diff] [blame] | 7 | 2008-11-17: Version 0.4.4 |
| 8 | |
| 9 | Reduced code size by using shorter instruction encoding when |
| 10 | possible. |
| 11 | |
| 12 | Added a --help option to the shell sample and to the d8 shell. |
| 13 | |
| 14 | Added visual studio project files for building the ARM simulator. |
| 15 | |
| 16 | Fixed a number of ARM simulator issues. |
| 17 | |
| 18 | Fixed bug in out-of-memory handling on ARM. |
| 19 | |
| 20 | Implemented shell support for passing arguments to a script from |
| 21 | the command line. |
| 22 | |
| 23 | Fixed bug in date code that made certain date functions return -0 |
| 24 | instead of 0 for dates before the epoch. |
| 25 | |
| 26 | Restricted applications of eval so it can only be used in the |
| 27 | context of the associated global object. |
| 28 | |
| 29 | Treat byte-order marks as whitespace characters. |
| 30 | |
| 31 | |
ager@chromium.org | 870a0b6 | 2008-11-04 11:43:05 +0000 | [diff] [blame] | 32 | 2008-11-04: Version 0.4.3 |
| 33 | |
| 34 | Added support for API accessors that prohibit overwriting by |
| 35 | accessors defined in JavaScript code by using __defineGetter__ and |
| 36 | __defineSetter__. |
| 37 | |
| 38 | Improved handling of conditionals in test status files. |
| 39 | |
| 40 | Introduced access control in propertyIsEnumerable. |
| 41 | |
| 42 | Improved performance of some string operations by caching |
| 43 | information about the type of the string between operations. |
| 44 | |
| 45 | Fixed bug in fast-case code for switch statements that only have |
| 46 | integer labels. |
| 47 | |
| 48 | |
kasperl@chromium.org | 9bbf968 | 2008-10-30 11:53:07 +0000 | [diff] [blame] | 49 | 2008-10-30: Version 0.4.2 |
| 50 | |
| 51 | Improved performance of Array.prototype.concat by moving the |
| 52 | implementation to C++ (issue 123). |
| 53 | |
| 54 | Fixed heap growth policy to avoid growing old space to its maximum |
| 55 | capacity before doing a garbage collection and fixed issue that |
| 56 | would lead to artificial out of memory situations (issue 129). |
| 57 | |
| 58 | Fixed Date.prototype.toLocaleDateString to return the date in the |
| 59 | same format as WebKit. |
| 60 | |
| 61 | Added missing initialization checks to debugger API. |
| 62 | |
| 63 | Added removing of unused maps during GC. |
| 64 | |
| 65 | |
kasperl@chromium.org | 9fe21c6 | 2008-10-28 08:53:51 +0000 | [diff] [blame] | 66 | 2008-10-28: Version 0.4.1 |
| 67 | |
| 68 | Added caching of RegExp data in compilation cache. |
| 69 | |
| 70 | Added Visual Studio project file for d8 shell. |
| 71 | |
| 72 | Fixed function call performance regression introduced in version |
| 73 | 0.4.0 when splitting the global object in two parts (issue 120). |
| 74 | |
| 75 | Fixed issue 131 by checking for empty handles before throwing and |
| 76 | reporting exceptions. |
| 77 | |
| 78 | |
kasperl@chromium.org | 5a8ca6c | 2008-10-23 13:57:19 +0000 | [diff] [blame] | 79 | 2008-10-23: Version 0.4.0 |
| 80 | |
| 81 | Split the global object into two parts: The state holding global |
| 82 | object and the global object proxy. |
| 83 | |
| 84 | Fixed bug that affected the value of an assignment to an element |
| 85 | in certain cases (issue 116). |
| 86 | |
| 87 | Added GetPropertyNames functionality (issue 33) and extra Date |
| 88 | functions (issue 77) to the API. |
| 89 | |
| 90 | Changed WeakReferenceCallback to take a Persistent<Value> instead |
| 91 | of a Persistent<Object> (issue 101). |
| 92 | |
| 93 | Fixed issues with message reporting for exceptions in try-finally |
| 94 | blocks (issues 73 and 75). |
| 95 | |
| 96 | Optimized flattening of strings and string equality checking. |
| 97 | |
| 98 | Improved Boyer-Moore implementation for faster indexOf operations. |
| 99 | |
| 100 | Added development shell (d8) which includes counters and |
| 101 | completion support. |
| 102 | |
| 103 | Fixed problem with the receiver passed to functions called from |
| 104 | eval (issue 124). |
| 105 | |
| 106 | |
ager@chromium.org | 7c537e2 | 2008-10-16 08:43:32 +0000 | [diff] [blame] | 107 | 2008-10-16: Version 0.3.5 |
| 108 | |
| 109 | Improved string hash-code distribution by excluding bit-field bits |
| 110 | from the hash-code. |
| 111 | |
| 112 | Changed string search algorithm used in indexOf from KMP to |
| 113 | Boyer-Moore. |
| 114 | |
| 115 | Improved the generated code for the instanceof operator. |
| 116 | |
| 117 | Improved performance of slow-case string equality checks by |
| 118 | specializing the code based on the string representation. |
| 119 | |
| 120 | Improve the handling of out-of-memory situations (issue 70). |
| 121 | |
| 122 | Improved performance of strict equality checks. |
| 123 | |
| 124 | Improved profiler output to make it easier to see anonymous |
| 125 | functions. |
| 126 | |
| 127 | Improved performance of slow-case keyed loads. |
| 128 | |
| 129 | Improved property access performance by allocating a number of |
| 130 | properties in the front object. |
| 131 | |
| 132 | Changed the toString behavior on the built-in object constructors |
| 133 | to print [native code] instead of the actual source. Some web |
| 134 | applications do not like constructors with complex toString |
| 135 | results. |
| 136 | |
| 137 | |
kasperl@chromium.org | 41044eb | 2008-10-06 08:24:46 +0000 | [diff] [blame] | 138 | 2008-10-06: Version 0.3.4 |
| 139 | |
| 140 | Changed Array.prototype.sort to use quick sort. |
| 141 | |
| 142 | Fixed code generation issue where leaving a finally block with |
| 143 | break or continue would accumulate elements on the expression |
| 144 | stack (issue 86). |
| 145 | |
| 146 | Made sure that the name accessor on functions returns the expected |
| 147 | names for builtin JavaScript functions and C++ callback functions. |
| 148 | |
| 149 | Added fast case code for extending the property storage array of |
| 150 | JavaScript objects. |
| 151 | |
| 152 | Ported switch statement optimizations introduced in version 0.3.3 |
| 153 | to the ARM code generator. |
| 154 | |
| 155 | Allowed GCC to use strict-aliasing rules when compiling. |
| 156 | |
| 157 | Improved performance of arguments object allocation by taking care |
| 158 | of arguments adaptor frames in the generated code. |
| 159 | |
| 160 | Updated the V8 benchmark suite to version 2. |
| 161 | |
| 162 | |
ager@chromium.org | 236ad96 | 2008-09-25 09:45:57 +0000 | [diff] [blame] | 163 | 2008-09-25: Version 0.3.3 |
| 164 | |
| 165 | Improved handling of relocation information to enable more |
| 166 | peep-hole optimizations. |
| 167 | |
| 168 | Optimized switch statements where all labels are constant small |
| 169 | integers. |
| 170 | |
| 171 | Optimized String.prototype.indexOf for common cases. |
| 172 | |
| 173 | Fixed more build issues (issue 80). |
| 174 | |
| 175 | Fixed a couple of profiler issues. |
| 176 | |
| 177 | Fixed bug where the body of a function created using the Function |
| 178 | constructor was not allowed to end with a single-line comment |
| 179 | (issue 85). |
| 180 | |
| 181 | Improved handling of object literals by canonicalizing object |
| 182 | literal maps. This will allow JSON objects with the same set of |
| 183 | properties to share the same map making inline caching work better |
| 184 | for JSON objects. |
| 185 | |
| 186 | |
kasperl@chromium.org | b912362 | 2008-09-17 14:05:56 +0000 | [diff] [blame] | 187 | 2008-09-17: Version 0.3.2 |
| 188 | |
| 189 | Generalized the EvalCache into a CompilationCache and enabled it |
| 190 | for scripts too. The current strategy is to retire all entries |
| 191 | whenever a mark-sweep collection is started. |
| 192 | |
| 193 | Fixed bug where switch statements containing only a default case |
| 194 | would lead to an unbalanced stack (issue 69). |
| 195 | |
| 196 | Fixed bug that made access to the function in a named function |
| 197 | expression impossible in certain situations (issue 24). |
| 198 | |
| 199 | Fixed even more build issues. |
| 200 | |
| 201 | Optimized calling conventions on ARM. The conventions on ARM and |
| 202 | IA-32 now match. |
| 203 | |
| 204 | Removed static initializers for flags and counters. |
| 205 | |
| 206 | Improved inline caching behavior for uncommon cases where lazily |
| 207 | loading Date and RegExp code could force certain code paths go |
| 208 | megamorphic. |
| 209 | |
| 210 | Removed arguments adaption for builtins written in C++. This |
| 211 | makes Array.prototype.push and Array.prototype.pop slightly |
| 212 | faster. |
| 213 | |
| 214 | |
ager@chromium.org | 9258b6b | 2008-09-11 09:11:10 +0000 | [diff] [blame] | 215 | 2008-09-11: Version 0.3.1 |
| 216 | |
| 217 | Fixed a number of build issues. |
| 218 | |
| 219 | Fixed problem with missing I-cache flusing on ARM. |
| 220 | |
| 221 | Changed space layout in memory management by splitting up |
| 222 | code space into old data space and code space. |
| 223 | |
| 224 | Added utf-8 conversion support to the API (issue 57). |
| 225 | |
| 226 | Optimized repeated calls to eval with the same strings. These |
| 227 | repeated calls are common in web applications. |
| 228 | |
| 229 | Added Xcode project file. |
| 230 | |
| 231 | Optimized a couple of Array operation. |
| 232 | |
| 233 | Fixed parser bug by checking for end-of-string when parsing break |
| 234 | and continue (issue 35). |
| 235 | |
| 236 | Fixed problem where asian characters were not categorized as |
| 237 | letters. |
| 238 | |
| 239 | Fixed bug that disallowed calling functions fetched from an array |
| 240 | using a string as an array index (issue 32). |
| 241 | |
| 242 | Fixed bug where the internal field count on object templates were |
| 243 | sometimes ignored (issue 54). |
| 244 | |
| 245 | Added -f option to the shell sample for compatibility with other |
| 246 | engines (issue 18). |
| 247 | |
| 248 | Added source info to TryCatches in the API. |
| 249 | |
| 250 | Fixed problem where the seed for the random number generator was |
| 251 | clipped in a double to unsigned int conversion. |
| 252 | |
| 253 | Fixed bug where cons string symbols were sometimes converted to |
| 254 | non-symbol flat strings during GC. |
| 255 | |
| 256 | Fixed bug in error reporting when attempting to convert null to an |
| 257 | object. |
| 258 | |
| 259 | |
ager@chromium.org | c27e4e7 | 2008-09-04 13:52:27 +0000 | [diff] [blame] | 260 | 2008-09-04: Version 0.3.0 |
| 261 | |
| 262 | Added support for running tests on the ARM simulator. |
| 263 | |
| 264 | Fixed bug in the 'in' operator where negative indices were not |
| 265 | treated correctly. |
| 266 | |
| 267 | Fixed build issues on gcc-4.3.1. |
| 268 | |
| 269 | Changed Date.prototype.toLocaleTimeString to not print the |
| 270 | timezone part of the time. |
| 271 | |
| 272 | Renamed debug.h to v8-debug.h to reduce the risk of name conflicts |
| 273 | with user code. |
| 274 | |
| 275 | |
v8.team.kasperl | 727e995 | 2008-09-02 14:56:44 +0000 | [diff] [blame] | 276 | 2008-09-02: Version 0.2.5 |
| 277 | |
| 278 | Renamed the top level directory 'public' to 'include'. |
| 279 | |
| 280 | Added 'env' option to the SCons build scripts to support |
| 281 | overriding the ENV part of the build environment. This is mostly |
| 282 | to support Windows builds in cases where SCons cannot find the |
| 283 | correct paths to the Windows SDK, as these paths cannot be passed |
| 284 | through shell environment variables. |
| 285 | |
| 286 | Enabled "Buffer Security Check" on for the Windows SCons build and |
| 287 | added the linker option /OPT:ICF as an optimization. |
| 288 | |
| 289 | Added the V8 benchmark suite to the repository. |
| 290 | |
| 291 | |
mads.s.ager@gmail.com | 9a4089a | 2008-09-01 08:55:01 +0000 | [diff] [blame] | 292 | 2008-09-01: Version 0.2.4 |
| 293 | |
| 294 | Included mjsunit JavaScript test suite and C++ unit tests. |
| 295 | |
| 296 | Changed the shell sample to not print the result of executing a |
| 297 | script provided on the command line. |
| 298 | |
| 299 | Fixed issue when building samples on Windows using a shared V8 |
| 300 | library. Added visibility option on Linux build which makes the |
| 301 | generated library 18% smaller. |
| 302 | |
| 303 | Changed build system to accept multiple build modes in one build |
| 304 | and generate separate objects, libraries and executables for each |
| 305 | mode. |
| 306 | |
| 307 | Removed deferred negation optimization (a * -b => -(a * b)) since |
| 308 | this visibly changes operand conversion order. |
| 309 | |
| 310 | Improved parsing performance by introducing stack guard in |
| 311 | preparsing. Without a stack guard preparsing always bails out |
| 312 | with stack overflow. |
| 313 | |
| 314 | Changed shell sample to take flags directly from the command-line. |
| 315 | Added API call that implements this. |
| 316 | |
| 317 | Added load, quit and version functions to the shell sample so it's |
| 318 | easier to run benchmarks and tests. |
| 319 | |
| 320 | Fixed issue with building samples and cctests on 64-bit machines. |
| 321 | |
| 322 | Fixed bug in the runtime system where the prototype chain was not |
| 323 | always searched for a setter when setting a property that does not |
| 324 | exist locally. |
| 325 | |
| 326 | |
mads.s.ager | cbaa060 | 2008-08-14 13:41:48 +0000 | [diff] [blame] | 327 | 2008-08-14: Version 0.2.3 |
| 328 | |
| 329 | Improved performance of garbage collection by moving the |
| 330 | function that updates pointers during compacting collection |
| 331 | into the updating visitor. This gives the compiler a better |
| 332 | chance to inline and avoid a function call per (potential) |
| 333 | pointer. |
| 334 | |
| 335 | Extended the shell sample with a --runtime-flags option. |
| 336 | |
| 337 | Added Visual Studio project files for the shell.cc and |
| 338 | process.cc samples. |
| 339 | |
| 340 | |
| 341 | 2008-08-13: Version 0.2.2 |
mads.s.ager | 31e7138 | 2008-08-13 09:32:07 +0000 | [diff] [blame] | 342 | |
| 343 | Improved performance of garbage collection by changing the way |
| 344 | we use the marking stack in the event of stack overflow during |
| 345 | full garbage collection and by changing the way we mark roots. |
| 346 | |
| 347 | Cleaned up ARM version by removing top of stack caching and by |
| 348 | introducing push/pop elimination. |
| 349 | |
| 350 | Cleaned up the way runtime functions are called to allow |
| 351 | runtime calls with no arguments. |
| 352 | |
| 353 | Changed Windows build options to make sure that exceptions are |
| 354 | disabled and that optimization flags are enabled. |
| 355 | |
| 356 | Added first version of Visual Studio project files. |
| 357 | |
| 358 | |
mads.s.ager | cbaa060 | 2008-08-14 13:41:48 +0000 | [diff] [blame] | 359 | 2008-08-06: Version 0.2.1 |
mads.s.ager@gmail.com | 769cc96 | 2008-08-06 10:02:49 +0000 | [diff] [blame] | 360 | |
| 361 | Improved performance of unary addition by avoiding runtime calls. |
| 362 | |
| 363 | Fixed the handling of '>' and '<=' to use right-to-left conversion |
| 364 | and left-to-right evaluation as specified by ECMA-262. |
| 365 | |
| 366 | Fixed a branch elimination bug on the ARM platform where incorrect |
| 367 | code was generated because of overly aggressive branch |
| 368 | elimination. |
| 369 | |
| 370 | Improved performance of code that repeatedly assigns the same |
| 371 | function to the same property of different objects with the same |
| 372 | map. |
| 373 | |
| 374 | Untangled DEBUG and ENABLE_DISASSEMBLER defines. The disassembler |
| 375 | no longer expects DEBUG to be defined. |
| 376 | |
| 377 | Added platform-nullos.cc to serve as the basis for new platform |
| 378 | implementations. |
| 379 | |
mads.s.ager | 31e7138 | 2008-08-13 09:32:07 +0000 | [diff] [blame] | 380 | |
mads.s.ager | cbaa060 | 2008-08-14 13:41:48 +0000 | [diff] [blame] | 381 | 2008-07-30: Version 0.2.0 |
kasper.lund | 7276f14 | 2008-07-30 08:49:36 +0000 | [diff] [blame] | 382 | |
| 383 | Changed all text files to have native svn:eol-style. |
| 384 | |
| 385 | Added a few samples and support for building them. The samples |
| 386 | include a simple shell that can be used to benchmark and test V8. |
| 387 | |
| 388 | Changed V8::GetVersion to return the version as a string. |
| 389 | |
| 390 | Added source for lazily loaded scripts to snapshots and made |
| 391 | serialization non-destructive. |
| 392 | |
| 393 | Improved ARM support by fixing the write barrier code to use |
| 394 | aligned loads and stores and by removing premature locals |
| 395 | optimization that relied on broken support for callee-saved |
| 396 | registers (removed). |
| 397 | |
| 398 | Refactored the code for marking live objects during garbage |
| 399 | collection and the code for allocating objects in paged |
| 400 | spaces. Introduced an abstraction for the map word of a heap- |
| 401 | allocated object and changed the memory allocator to allocate |
| 402 | executable memory only for spaces that may contain code objects. |
| 403 | |
| 404 | Moved StringBuilder to utils.h and ScopedLock to platform.h, where |
| 405 | they can be used by debugging and logging modules. Added |
| 406 | thread-safe message queues for dealing with debugger events. |
| 407 | |
| 408 | Fixed the source code reported by toString for certain builtin |
| 409 | empty functions and made sure that the prototype property of a |
| 410 | function is enumerable. |
| 411 | |
| 412 | Improved performance of converting values to condition flags in |
| 413 | generated code. |
| 414 | |
| 415 | Merged disassembler-{arch} files. |
| 416 | |
| 417 | |
mads.s.ager | cbaa060 | 2008-08-14 13:41:48 +0000 | [diff] [blame] | 418 | 2008-07-28: Version 0.1.4 |
kasper.lund | af4734f | 2008-07-28 12:50:18 +0000 | [diff] [blame] | 419 | |
| 420 | Added support for storing JavaScript stack traces in a stack |
| 421 | allocated buffer to make it visible in shallow core dumps. |
| 422 | Controlled by the --preallocate-message-memory flag which is |
| 423 | disabled by default. |
| 424 | |
| 425 | |
mads.s.ager | cbaa060 | 2008-08-14 13:41:48 +0000 | [diff] [blame] | 426 | 2008-07-25: Version 0.1.3 |
kasper.lund | 4451067 | 2008-07-25 07:37:58 +0000 | [diff] [blame] | 427 | |
| 428 | Fixed bug in JSObject::GetPropertyAttributePostInterceptor where |
| 429 | map transitions would count as properties. |
| 430 | |
| 431 | Allowed aliased eval invocations by treating them as evals in the |
| 432 | global context. This may change in the future. |
| 433 | |
| 434 | Added support for accessing the last entered context through the |
| 435 | API and renamed Context::Current to Context::GetCurrent and |
| 436 | Context::GetSecurityContext to Context::GetCurrentSecurityContext. |
| 437 | |
| 438 | Fixed bug in the debugger that would cause the debugger scripts to |
| 439 | be recursively loaded and changed all disabling of interrupts to |
| 440 | be block-structured. |
| 441 | |
| 442 | Made snapshot data read-only to allow it to be more easily shared |
| 443 | across multiple users of V8 when linked as a shared library. |
| 444 | |
| 445 | |
mads.s.ager | cbaa060 | 2008-08-14 13:41:48 +0000 | [diff] [blame] | 446 | 2008-07-16: Version 0.1.2 |
kasper.lund | 212ac23 | 2008-07-16 07:07:30 +0000 | [diff] [blame] | 447 | |
| 448 | Fixed building on Mac OS X by recognizing i386 and friends as |
| 449 | IA-32 platforms. |
| 450 | |
| 451 | Added propagation of stack overflow exceptions that occur while |
| 452 | compiling nested functions. |
| 453 | |
| 454 | Improved debugger with support for recursive break points and |
| 455 | handling of exceptions that occur in the debugger JavaScript code. |
| 456 | |
| 457 | Renamed GetInternal to GetInternalField and SetInternal to |
| 458 | SetInternalField in the API and moved InternalFieldCount and |
| 459 | SetInternalFieldCount from FunctionTemplate to ObjectTemplate. |
| 460 | |
| 461 | |
mads.s.ager | cbaa060 | 2008-08-14 13:41:48 +0000 | [diff] [blame] | 462 | 2008-07-09: Version 0.1.1 |
kasper.lund | bd3ec4e | 2008-07-09 11:06:54 +0000 | [diff] [blame] | 463 | |
| 464 | Fixed bug in stack overflow check code for IA-32 targets where a |
| 465 | non-tagged value in register eax was pushed to the stack. |
| 466 | |
| 467 | Fixed potential quadratic behavior when converting strings to |
| 468 | numbers. |
| 469 | |
| 470 | Fixed bug where the return value from Object::SetProperty could |
| 471 | end up being the property holder instead of the written value. |
| 472 | |
| 473 | Improved debugger support by allowing nested break points and by |
| 474 | dealing with stack-overflows when compiling functions before |
| 475 | setting break points in them. |
| 476 | |
| 477 | |
mads.s.ager | cbaa060 | 2008-08-14 13:41:48 +0000 | [diff] [blame] | 478 | 2008-07-03: Version 0.1.0 |
christian.plesner.hansen | 43d26ec | 2008-07-03 15:10:15 +0000 | [diff] [blame] | 479 | |
kasper.lund | bd3ec4e | 2008-07-09 11:06:54 +0000 | [diff] [blame] | 480 | Initial export. |
christian.plesner.hansen | 43d26ec | 2008-07-03 15:10:15 +0000 | [diff] [blame] | 481 | |