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