Commit Graph

5380 Commits

Author SHA1 Message Date
kasperl@chromium.org
b5a72a1645 Generalized the EvalCache into a CompilationCache and enabled
it for scripts too. In the context of Chromium, this should 
have a very positive impact on memory consumption for web apps
that run multiple tabs from the same domain with a lot of the
same JavaScript code.

For now, the cache retirement policy is really simple:
Whenever a mark-sweep collection is started we clear the
cache. This guarantees that this change will not have a
huge negative impact on memory consumption, but it may
not be ideal. We should consider a more sophisticated LRU
scheme.
Review URL: http://codereview.chromium.org/1933

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@270 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-11 10:51:52 +00:00
sgjesse@chromium.org
571bc3edb3 Changed the Visual Studio project files to work when V8 is checked out
to a path containing spaces.

BUG=55
Review URL: http://codereview.chromium.org/2416

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-11 08:05:45 +00:00
christian.plesner.hansen@gmail.com
9bed566bdb Changed copyright header from google inc. to v8 project authors.
Added presubmit step to check copyright.



git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-09 20:08:45 +00:00
iposva@chromium.org
30c8bc0ac3 Allow setting of a --simulator parameter when running tests.
Passing "--simulator=arm" has the same effect as setting
"-S simulator=arm --arch=arm" and closely mirrors the behavior
of the scons build causing less confusion when running tests.
Review URL: http://codereview.chromium.org/1654

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@221 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-09 05:37:00 +00:00
iposva@chromium.org
a5133da2cd Submitting a revised Xcode project for Mark Mentovai (mark@chromium.org).
Reviewed here: http://codereview.chromium.org/1833



git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@219 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-09 03:08:23 +00:00
christian.plesner.hansen@gmail.com
6d13d9864c - Marked flaky windows gc test as flaky.
- Added support for --cat in test runner.



git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@190 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-08 07:04:22 +00:00
erik.corry@gmail.com
9a216515ac When the Mozilla tests are checked out of cvs in the recommended place the
linter attempts to check them for style issues.  This is not helpful.  This
chance makes the presubmit linter skip the data directory where they are
located.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@182 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-06 06:22:59 +00:00
iposva@chromium.org
e31170a11d Add an Xcode project for V8.
This project exports two static library targets to be used by Chromium: jscre, v8

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@179 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-05 22:26:30 +00:00
ager@chromium.org
0b9c43b37b Add the profiler tick processors to the tools directory.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-03 19:15:48 +00:00
christian.plesner.hansen@gmail.com
472ae34f9d - Added some "special" tests that were left out before.
- Added option to test runner that allows us to run the tests under
  valgrind.
- Added test status for the failing arm simulator tests.



git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@116 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-03 07:31:19 +00:00
christian.plesner.hansen@gmail.com
786760039e - Added test status spec to cctests to make arm simulator tests run.
- Added test script option to override platform guess (again, to be
  able to run arm sim tests on intel).



git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@107 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-02 15:20:38 +00:00
sgjesse@gmail.com
6b569a5bb6 Handle spaces in the working directory when running tests on Windows.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@100 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-02 14:47:10 +00:00
mads.s.ager@gmail.com
30e44ee4fd Allow a test that relies on non-standard timer resolution on Windows
to fail on Windows.

Updated mozilla.status to use correct syntax for tests that are
allowed to fail in debug mode.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@97 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-02 12:42:10 +00:00
sgjesse@gmail.com
c2c5482c9b Add the SCons environment override to the building of the samples and
the tests.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@95 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-02 12:20:15 +00:00
v8.team.kasperl@gmail.com
ce7210ece0 Ignore missing copyright notices for EarleyBoyer and RayTrace
benchmarks.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@93 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-02 11:40:18 +00:00
mads.s.ager@gmail.com
74352a14b7 Fix typo in test.py.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@57 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-01 07:01:02 +00:00
christian.plesner.hansen@gmail.com
132a2cd1c3 Added presubmit step that runs cpplint and checks for missing
copyrights.  Fixed some lint issues in the samples.  Added better
error handling for crashing tests on windows.



git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@49 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-29 12:52:21 +00:00
mads.s.ager@gmail.com
480a093f54 Normalize the test suite path before passing it to basename. basename
returns '' if the path ends in a path separator.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@45 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-29 11:01:05 +00:00
sgjesse@gmail.com
fd5b0fc423 Add Visual Studio solution and Visual Studio project for building the
cctest.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@42 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-29 09:32:03 +00:00
erik.corry@gmail.com
b99f5bb743 Add executable bit.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@40 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-29 09:29:21 +00:00
v8.team.kasperl@gmail.com
00bbb8f7cc Deal with timeouts when running test cases.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@32 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-29 08:06:17 +00:00
mads.s.ager@gmail.com
c470d9f05b Changed status file support for the tests. The testcfg.py script is
now responsible for adding the status information for the tests in the
corresponding test suite.

Added status file from mjsunit tests.

Added tests for known bugs.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@29 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-28 13:17:47 +00:00
mads.s.ager@gmail.com
6bda17f12b Make test.py executable.
Changed eol-style on debug-sourceinfo.js since the test expects CRLF
endings.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@27 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-28 10:50:31 +00:00
christian.plesner.hansen
968facb9ff - Fixed issue when building samples and cctests on 64-bit machines.
- Fixed mozilla test breakage caused by python's obscure module
  loading rules.
- Made sure test.py propagates test failures out as the exit code of
  the script.
- Remove runtime calls to get number constants. Remove Heap roots for
  some special numbers.
- Fix typo in accessors.h.
- Changes CopyMap to not copy descriptors.  Adds
  CopyMapRemoveTransitions that copies non-transition descriptors.
  Changes interface of DescriptorArray::Copy operations to simplify
  them.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-27 13:47:52 +00:00
christian.plesner.hansen
05bbf90b3a Changed shell sample to take flags directly from the command-line. Added api call that implements this.
Added better test support.

Added load, quit and version functions to the shell sample so it's easier to run benchmarks and tests.



git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-27 10:11:39 +00:00
christian.plesner.hansen
c42f5829a1 Included mjsunit JavaScript test suite and C++ unit tests.
In the shell sample don't print the result of executing a script, only
evaluating expressions.

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 seperate 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.


git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-22 13:33:59 +00:00
mads.s.ager
cbaa060d28 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.



git-svn-id: http://v8.googlecode.com/svn/trunk@14 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-14 13:41:48 +00:00
mads.s.ager
31e7138e1a 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.



git-svn-id: http://v8.googlecode.com/svn/trunk@13 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-13 09:32:07 +00:00
kasper.lund
7276f14ca7 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.


git-svn-id: http://v8.googlecode.com/svn/trunk@8 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-07-30 08:49:36 +00:00
christian.plesner.hansen
43d26ecc35 Initial export.
git-svn-id: http://v8.googlecode.com/svn/trunk@2 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-07-03 15:10:15 +00:00