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.


git-svn-id: http://v8.googlecode.com/svn/trunk@1495 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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.


git-svn-id: http://v8.googlecode.com/svn/trunk@1501 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Push the change to not leak reaching frames in case of stack overflows
to trunk.
Review URL: http://codereview.chromium.org/42172

git-svn-id: http://v8.googlecode.com/svn/trunk@1505 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert 1432, 1433, 1469 and 1472 on trunk.
Review URL: http://codereview.chromium.org/46089

git-svn-id: http://v8.googlecode.com/svn/trunk@1512 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Push revisions 1527, 1539, 1540, 1541, 1550, 1551 from bleeding_edge to trunk.

git-svn-id: http://v8.googlecode.com/svn/trunk@1555 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Push bleeding_edge revision 1556 to trunk.  Contains a minor API change.

git-svn-id: http://v8.googlecode.com/svn/trunk@1564 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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).


git-svn-id: http://v8.googlecode.com/svn/trunk@1598 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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.


git-svn-id: http://v8.googlecode.com/svn/trunk@1603 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Added library references to linking of the shared V8 library.

On Linux the shared V8 library is now linked with libraries pthread and rt which means that applications using the shared V8 library will not need to link with libraries required by V8 but not by the application using V8.

BUG=290
Review URL: http://codereview.chromium.org/56056

git-svn-id: http://v8.googlecode.com/svn/trunk@1636 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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.



git-svn-id: http://v8.googlecode.com/svn/trunk@1642 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Merge bugfix for issue 294 from bleeding_edge to trunk.
Review URL: http://codereview.chromium.org/57057

git-svn-id: http://v8.googlecode.com/svn/trunk@1658 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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.



git-svn-id: http://v8.googlecode.com/svn/trunk@1664 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Reverted an unsafe code generator change.


git-svn-id: http://v8.googlecode.com/svn/trunk@1668 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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.


git-svn-id: http://v8.googlecode.com/svn/trunk@1682 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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.



git-svn-id: http://v8.googlecode.com/svn/trunk@1692 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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.


git-svn-id: http://v8.googlecode.com/svn/trunk@1702 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix broken build on Mac.

git-svn-id: http://v8.googlecode.com/svn/trunk@1704 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
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.


git-svn-id: http://v8.googlecode.com/svn/trunk@1717 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Merge r1718 to trunk.



Review URL: http://codereview.chromium.org/79019

git-svn-id: http://v8.googlecode.com/svn/trunk@1730 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Push bleeding_edge revision 1734 to trunk.

git-svn-id: http://v8.googlecode.com/svn/trunk@1735 ce2b1a6d-e550-0410-aec6-3dcde31c8c00