platform/upstream/v8.git
15 years agoFix issue 345 by avoiding duplicates in the list of escaping labels
kmillikin@chromium.org [Wed, 15 Jul 2009 08:57:25 +0000 (08:57 +0000)]
Fix issue 345 by avoiding duplicates in the list of escaping labels
from a try...catch...finally statement.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2466 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoThird and hopefully last of thrre CLs to issue a warning when an older
sandholm@chromium.org [Wed, 15 Jul 2009 08:47:51 +0000 (08:47 +0000)]
Third and hopefully last of thrre CLs to issue a warning when an older
version of the benchmark suite is run. This last change updates
bleeding_edge.
Review URL: http://codereview.chromium.org/155496

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2465 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoImproved version of LookupForRead (tnx to Kasper) + some faster paths.
antonm@chromium.org [Wed, 15 Jul 2009 08:07:31 +0000 (08:07 +0000)]
Improved version of LookupForRead (tnx to Kasper) + some faster paths.

1) add no GC check;
2) do not use recursion;

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2462 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAdd heap log processing script originally written by Kevin.
mikhail.naganov@gmail.com [Wed, 15 Jul 2009 07:09:48 +0000 (07:09 +0000)]
Add heap log processing script originally written by Kevin.

Also, add user time into heap sample begin events to make '--log-gc' flag alone sufficient for producing heap logs (previously, samples times were extracted from scavenge events which are only logged with '--log' flag).

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2461 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAdjust kPagesPerChunk to 16 instead of 64 on Android.
feng@chromium.org [Tue, 14 Jul 2009 22:38:06 +0000 (22:38 +0000)]
Adjust kPagesPerChunk to 16 instead of 64 on Android.

Renamed some macros to ANDROID.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2460 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoSupport stepping into getters and setters.
yurys@chromium.org [Tue, 14 Jul 2009 16:55:32 +0000 (16:55 +0000)]
Support stepping into getters and setters.

Related Chromium bug:
http://code.google.com/p/chromium/issues/detail?id=16427

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2458 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoChange tests status for x64, make test runner pass --arch flag to Scons, add to x64...
whesse@chromium.org [Tue, 14 Jul 2009 11:39:45 +0000 (11:39 +0000)]
Change tests status for x64, make test runner pass --arch flag to Scons, add to x64 disassembler.  Copied from codereview.chromium.org/155346 so it can be committed.
Review URL: http://codereview.chromium.org/149608

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2456 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoTickProcessor: more accurate mapping of statically compiled code on Linux.
mikhail.naganov@gmail.com [Tue, 14 Jul 2009 09:47:44 +0000 (09:47 +0000)]
TickProcessor: more accurate mapping of statically compiled code on Linux.

'nm' is now called with an option to report function code sizes. Static code entries are restricted to the sizes reported, and the remaining unnamed code is attributed to a library as a whole. This makes reports more accurate, as some functions are tiny, but has chunks of unnamed code behind them.

This change doesn't affect reporting on Windows, as in .map files function code sizes aren't specified.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAdd regression test case for http://crbug.com/16276. Crashes
kasperl@chromium.org [Tue, 14 Jul 2009 09:31:48 +0000 (09:31 +0000)]
Add regression test case for crbug.com/16276. Crashes
in both debug and release mode before r2435, but not after.
Review URL: http://codereview.chromium.org/155491

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2454 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoUpdate test expectations because we've decided to allow RegExps
kasperl@chromium.org [Tue, 14 Jul 2009 06:40:40 +0000 (06:40 +0000)]
Update test expectations because we've decided to allow RegExps
to be called as functions. See http://codereview.chromium.org/155453.

TBR=kmillikin@chromium.org
Review URL: http://codereview.chromium.org/155488

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2453 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoImplement shared libraries logging on Mac OS X, added required support in Tick Processor.
mikhail.naganov@gmail.com [Tue, 14 Jul 2009 05:01:06 +0000 (05:01 +0000)]
Implement shared libraries logging on Mac OS X, added required support in Tick Processor.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2452 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFirefox and Safari both allow calling regular expression objects as
ager@chromium.org [Mon, 13 Jul 2009 23:41:17 +0000 (23:41 +0000)]
Firefox and Safari both allow calling regular expression objects as
functions (as an alias for calling the exec method).  For
compatibility make call_regexp the default and remove the flag.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2451 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoPut the work-around for http://crbug.com/16276 into the ARM port as
ager@chromium.org [Mon, 13 Jul 2009 23:15:04 +0000 (23:15 +0000)]
Put the work-around for crbug.com/16276 into the ARM port as
well.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2450 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAdd a trace_gc_verbose flag.
feng@chromium.org [Mon, 13 Jul 2009 21:24:54 +0000 (21:24 +0000)]
Add a trace_gc_verbose flag.

The flag is only turned on when --trace_gc is one. It prints out used and available bytes in each space. To enable it, ENABLE_LOGGING_AND_PROFILING must be defined.

This is a mini version of --heap_stats, but don't need DEBUG macro to be turned on.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2449 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAdd ENABLE_DEBUGGER_SUPPPORT around 4 functions, set complation cache generation
feng@chromium.org [Mon, 13 Jul 2009 21:23:21 +0000 (21:23 +0000)]
Add ENABLE_DEBUGGER_SUPPPORT around 4 functions, set complation cache generation
to 1 for ARM.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2448 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoHook up the log facility of Android platform.
feng@chromium.org [Mon, 13 Jul 2009 21:22:50 +0000 (21:22 +0000)]
Hook up the log facility of Android platform.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2447 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoYet another svn:ignore update.
kasperl@chromium.org [Mon, 13 Jul 2009 15:34:04 +0000 (15:34 +0000)]
Yet another svn:ignore update.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years ago- Added missing braces in an if statement as a drive-by-edit.
iposva@chromium.org [Mon, 13 Jul 2009 15:00:35 +0000 (15:00 +0000)]
- Added missing braces in an if statement as a drive-by-edit.
- Removed executable bits from Xcode project file.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2443 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoUpdate svn:ignore for tools/ and tools/gyp/ directories.
kasperl@chromium.org [Mon, 13 Jul 2009 14:37:21 +0000 (14:37 +0000)]
Update svn:ignore for tools/ and tools/gyp/ directories.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2440 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoPrepare to push version 1.2.14 to trunk.
kasperl@chromium.org [Mon, 13 Jul 2009 13:49:57 +0000 (13:49 +0000)]
Prepare to push version 1.2.14 to trunk.
Review URL: http://codereview.chromium.org/149533

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2437 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoRevert r2431. I don't think this is it.
kasperl@chromium.org [Mon, 13 Jul 2009 13:36:38 +0000 (13:36 +0000)]
Revert r2431. I don't think this is it.
Review URL: http://codereview.chromium.org/155419

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2436 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAttempt at work-around for http://crbug.com/16276 by explicitly checking
kasperl@chromium.org [Mon, 13 Jul 2009 13:24:32 +0000 (13:24 +0000)]
Attempt at work-around for crbug.com/16276 by explicitly checking
for global objects in the assembly code for dictionary loads.
Review URL: http://codereview.chromium.org/155418

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2435 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoSmall cleanup to Utf8::CalculateValue:
deanm@chromium.org [Mon, 13 Jul 2009 11:17:51 +0000 (11:17 +0000)]
Small cleanup to Utf8::CalculateValue:
  - Don't duplicate kMaxXByteChar constants.
  - Don't compare signed and unsigned integers.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoConvert object to fast mode after creation. That enables more optimizations.
antonm@chromium.org [Mon, 13 Jul 2009 10:10:28 +0000 (10:10 +0000)]
Convert object to fast mode after creation.  That enables more optimizations.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAdd support for tracking down leak of the hole value.
kasperl@chromium.org [Mon, 13 Jul 2009 09:17:04 +0000 (09:17 +0000)]
Add support for tracking down leak of the hole value.
Review URL: http://codereview.chromium.org/149522

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoTry to work around http://crbug.com/16276 until we can
kasperl@chromium.org [Mon, 13 Jul 2009 08:31:30 +0000 (08:31 +0000)]
Try to work around crbug.com/16276 until we can
find the cause of the problem.
Review URL: http://codereview.chromium.org/149521

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2431 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoPort the function prototype load stub to ARM.
ager@chromium.org [Fri, 10 Jul 2009 23:26:33 +0000 (23:26 +0000)]
Port the function prototype load stub to ARM.
Review URL: http://codereview.chromium.org/155373

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2430 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoRemove the descriptor stream abstractions.
ager@chromium.org [Fri, 10 Jul 2009 19:25:18 +0000 (19:25 +0000)]
Remove the descriptor stream abstractions.

The abstractions have led to bugs because it looks like descriptor
streams are GC safe but they are not.

I have moved the descriptor stream helper functions to descriptor
arrays and I find most of the code just as readable now as it was
before.
Review URL: http://codereview.chromium.org/149458

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoDisable debug-stepin-function-call.js test on ARM.
yurys@chromium.org [Fri, 10 Jul 2009 12:12:23 +0000 (12:12 +0000)]
Disable debug-stepin-function-call.js test on ARM.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/155348

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2427 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix an issue with debugger 'step in' when calling function has local variables.Corres...
yurys@chromium.org [Fri, 10 Jul 2009 09:57:53 +0000 (09:57 +0000)]
Fix an issue with debugger 'step in' when calling function has local variables.Corresponding Chromium bug:code.google.com/p/chromium/issues/detail?id=15824
Review URL: http://codereview.chromium.org/149326

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2426 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoRe-enable ICs for loads and calls that skips a global object during
kasperl@chromium.org [Fri, 10 Jul 2009 09:40:47 +0000 (09:40 +0000)]
Re-enable ICs for loads and calls that skips a global object during
lookup through the prototype chain.
Review URL: http://codereview.chromium.org/155344

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFixed issue 401: os.system() hangs on Mac OS X.
mikhail.naganov@gmail.com [Fri, 10 Jul 2009 08:36:37 +0000 (08:36 +0000)]
Fixed issue 401: os.system() hangs on Mac OS X.

Fixed by falling back to using 'waitpid' instead of 'waitid'.

BUG=http://code.google.com/p/v8/issues/detail?id=401

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2424 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoSkip the write barrier for global property cell writes. The heap
kmillikin@chromium.org [Thu, 9 Jul 2009 14:34:08 +0000 (14:34 +0000)]
Skip the write barrier for global property cell writes.  The heap
verification code was refactored to avoid verifying that property
cells have correct remembered sets.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2423 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Added failure entries in test expectations.
lrn@chromium.org [Thu, 9 Jul 2009 14:04:37 +0000 (14:04 +0000)]
X64: Added failure entries in test expectations.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Let debugger patch JSReturn with a debug break.
whesse@chromium.org [Thu, 9 Jul 2009 13:30:27 +0000 (13:30 +0000)]
X64: Let debugger patch JSReturn with a debug break.
Review URL: http://codereview.chromium.org/155286

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2421 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoDuring a scavenge, instead of sweeping remembered-set bits for global
kmillikin@chromium.org [Thu, 9 Jul 2009 13:28:22 +0000 (13:28 +0000)]
During a scavenge, instead of sweeping remembered-set bits for global
property cells, sweep the cell values themselves.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoDon't have too many holders. Reviewed offline by Kevin Millikin.
kasperl@chromium.org [Thu, 9 Jul 2009 12:23:08 +0000 (12:23 +0000)]
Don't have too many holders. Reviewed offline by Kevin Millikin.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix free list construction for global property cells on x64.
kmillikin@chromium.org [Thu, 9 Jul 2009 12:20:04 +0000 (12:20 +0000)]
Fix free list construction for global property cells on x64.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2418 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix too-long line.
kmillikin@chromium.org [Thu, 9 Jul 2009 12:13:51 +0000 (12:13 +0000)]
Fix too-long line.

TBR=kasperl@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2417 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoGet peep-hole optimizer working on ARM by not emitting
erik.corry@gmail.com [Thu, 9 Jul 2009 11:59:58 +0000 (11:59 +0000)]
Get peep-hole optimizer working on ARM by not emitting
debug info at places where the debugger can't stop.
This fixes the ARM version after
http://codereview.chromium.org/14170
Reformat debug-backtrace.js test.
Review URL: http://codereview.chromium.org/155285

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Fixed more bad smi operations.
lrn@chromium.org [Thu, 9 Jul 2009 11:46:30 +0000 (11:46 +0000)]
X64: Fixed more bad smi operations.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2415 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix x64 build.
kmillikin@chromium.org [Thu, 9 Jul 2009 11:46:12 +0000 (11:46 +0000)]
Fix x64 build.
Review URL: http://codereview.chromium.org/149385

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2414 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAllow access through the global proxy to use ICs.
kasperl@chromium.org [Thu, 9 Jul 2009 11:17:57 +0000 (11:17 +0000)]
Allow access through the global proxy to use ICs.
Review URL: http://codereview.chromium.org/155283

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2413 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoCreate a new paged heap space for global property cells. The new
kmillikin@chromium.org [Thu, 9 Jul 2009 11:13:08 +0000 (11:13 +0000)]
Create a new paged heap space for global property cells.  The new
space is similar to map space in that it has fixed-size objects.  A
common superclass for a space with fixed size objects is used for the
map space and cell space.

Allocate all cells in cell space.  Handle it during all GCs.  Modify
the free-list node representation (so that the size is not at a fixed
offset in all cells) to allow two-pointer free-list nodes.  Clean up
some stuff in the MC collector.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2411 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix problems with including parser.h from the Windows platform SDK instead of v8...
deanm@chromium.org [Thu, 9 Jul 2009 10:52:54 +0000 (10:52 +0000)]
Fix problems with including parser.h from the Windows platform SDK instead of v8 by making sure that the v8 include path comes first.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2410 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Fix bug in left-shift.
lrn@chromium.org [Thu, 9 Jul 2009 08:00:12 +0000 (08:00 +0000)]
X64: Fix bug in left-shift.
Also changed a few other places that looked suspicious in the same way.
Added more info to failing test case and rewrote incorrect uses of mjsunit "fail" function.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2409 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAdd automatic tests for Tick Processor, take two.
mikhail.naganov@gmail.com [Thu, 9 Jul 2009 06:39:38 +0000 (06:39 +0000)]
Add automatic tests for Tick Processor, take two.

Now tests can be run from any directory. Location of test data is now determined using test file location provided by 'testcfg.py' script.

Tested under Linux, Mac, and Windows.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2407 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoPrepare to push version 1.2.13 to trunk.
kasperl@chromium.org [Thu, 9 Jul 2009 05:44:19 +0000 (05:44 +0000)]
Prepare to push version 1.2.13 to trunk.

TBR=kmillikin@chromium.org
Review URL: http://codereview.chromium.org/149381

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2405 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Fix recently introduced bug in movq with 64-bit literal.
lrn@chromium.org [Thu, 9 Jul 2009 05:43:34 +0000 (05:43 +0000)]
X64: Fix recently introduced bug in movq with 64-bit literal.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2404 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoRe-add v8_shell target to v8.gyp. Patch by Joel Stanley.
kasperl@chromium.org [Thu, 9 Jul 2009 05:25:08 +0000 (05:25 +0000)]
Re-add v8_shell target to v8.gyp. Patch by Joel Stanley.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2403 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAddress review comments.
ager@chromium.org [Thu, 9 Jul 2009 04:22:05 +0000 (04:22 +0000)]
Address review comments.

Only jump over 'else' part of a conditional if it is actually
generated.  Update a comment to more correctly reflect what is going
on.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years ago- Update comments and fix a small glitch in the ARM disassembler.
iposva@chromium.org [Wed, 8 Jul 2009 22:13:42 +0000 (22:13 +0000)]
- Update comments and fix a small glitch in the ARM disassembler.
- Fix the use of OS::ActivationFrameAlignment() when running with
  the simulator.
Review URL: http://codereview.chromium.org/155109

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2401 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix crash bug in ARM codegenerator by adding another special case for
ager@chromium.org [Wed, 8 Jul 2009 22:05:06 +0000 (22:05 +0000)]
Fix crash bug in ARM codegenerator by adding another special case for
generating code after a call to LoadConditionAndSpill.

This crash is hit on www.rightmove.co.uk when using the ARM
codegenerator.
Review URL: http://codereview.chromium.org/149351

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix crash in arm conditional expression code generation.
ager@chromium.org [Wed, 8 Jul 2009 19:43:22 +0000 (19:43 +0000)]
Fix crash in arm conditional expression code generation.
Review URL: http://codereview.chromium.org/155234

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2399 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years ago* Move almost all roots into an array ready for use by a constant-pool
erik.corry@gmail.com [Wed, 8 Jul 2009 19:12:58 +0000 (19:12 +0000)]
* Move almost all roots into an array ready for use by a constant-pool
register on ARM.
* Make some compile-time loops into run-time loops for compactness.
Review URL: http://codereview.chromium.org/149324

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2398 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix an X64 problem with builtin fixups. Remove an assert from fixups that is no...
whesse@chromium.org [Wed, 8 Jul 2009 16:19:13 +0000 (16:19 +0000)]
Fix an X64 problem with builtin fixups.  Remove an assert from fixups that is no longer true on all platforms.
Review URL: http://codereview.chromium.org/149332

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2397 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Fix bug in for-in iteration.
lrn@chromium.org [Wed, 8 Jul 2009 15:43:31 +0000 (15:43 +0000)]
X64: Fix bug in for-in iteration.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2396 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix missing include directories in v8.gyp.
deanm@chromium.org [Wed, 8 Jul 2009 15:36:12 +0000 (15:36 +0000)]
Fix missing include directories in v8.gyp.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2395 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoCorrect the location of libraries-empty.cc in v8.gyp.
deanm@chromium.org [Wed, 8 Jul 2009 15:29:16 +0000 (15:29 +0000)]
Correct the location of libraries-empty.cc in v8.gyp.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2394 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoCorrect the location of snapshot.cc in v8.gyp.
deanm@chromium.org [Wed, 8 Jul 2009 15:22:44 +0000 (15:22 +0000)]
Correct the location of snapshot.cc in v8.gyp.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2393 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoCleanup v8.gyp. This also drops a bunch of unused targets (the shell, d8,
deanm@chromium.org [Wed, 8 Jul 2009 14:56:56 +0000 (14:56 +0000)]
Cleanup v8.gyp.  This also drops a bunch of unused targets (the shell, d8,
etc).

There are now two gyp variables to control whether we build snapshots and which
target we are building for.  This allows you to easily cross-compile for arm and
disable snapshots.

Patch by Joel Stanley.

Original review: http://codereview.chromium.org/149243

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2392 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFixed and exposure to the_hole from Runtime_KeyedGetProperty.
bak@chromium.org [Wed, 8 Jul 2009 11:51:43 +0000 (11:51 +0000)]
Fixed and exposure to the_hole from Runtime_KeyedGetProperty.
Added regression test that fails with previous revisions.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2391 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix crash that occurs when we're forced to delete a global
kasperl@chromium.org [Wed, 8 Jul 2009 11:32:03 +0000 (11:32 +0000)]
Fix crash that occurs when we're forced to delete a global
property that used to be DontDelete and we still have an IC
that reads from the cell.
Review URL: http://codereview.chromium.org/149322

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2390 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Decrease limit in big-object-literal test. Hits max call stack.
lrn@chromium.org [Wed, 8 Jul 2009 10:46:13 +0000 (10:46 +0000)]
X64: Decrease limit in big-object-literal test. Hits max call stack.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2389 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Turn of gcc strict-aliasing optimization for X64 release.
whesse@chromium.org [Wed, 8 Jul 2009 09:46:26 +0000 (09:46 +0000)]
X64: Turn of gcc strict-aliasing optimization for X64 release.
Review URL: http://codereview.chromium.org/155208

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2388 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Added unimplemented method in codegen-x64.cc.
lrn@chromium.org [Wed, 8 Jul 2009 09:26:51 +0000 (09:26 +0000)]
X64: Added unimplemented method in codegen-x64.cc.
Six more tests run.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2387 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoChange the name of the Object.prototype.inherits function in
kasperl@chromium.org [Wed, 8 Jul 2009 07:35:14 +0000 (07:35 +0000)]
Change the name of the Object.prototype.inherits function in
the DeltaBlue benchmark to inheritsFrom to avoid name clashes
when running in Chromium with extensions enabled.

See http://crbug.com/11797.
Review URL: http://codereview.chromium.org/155205

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2386 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix issue with skipping global object during lookup through
kasperl@chromium.org [Wed, 8 Jul 2009 07:13:44 +0000 (07:13 +0000)]
Fix issue with skipping global object during lookup through
the prototype chain. In case we're skipping a global object,
we have to be careful not to use ICs for the load, because
it's possible to introduce variables on the global object
without a map change.
Review URL: http://codereview.chromium.org/149316

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2385 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix unsafe use of DescriptorWriter across allocation.
ager@chromium.org [Wed, 8 Jul 2009 03:21:27 +0000 (03:21 +0000)]
Fix unsafe use of DescriptorWriter across allocation.

DescriptorWriters hold a raw pointer to the descriptor array and they
are therefore not GC safe.
Review URL: http://codereview.chromium.org/149304

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2384 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAnother attempt at correctly marking a debug test that fails in debug
ager@chromium.org [Tue, 7 Jul 2009 21:08:29 +0000 (21:08 +0000)]
Another attempt at correctly marking a debug test that fails in debug
mode on arm.

Let's see if we can make the builder green.

TBR=yurys@chromium.org
Review URL: http://codereview.chromium.org/149282

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2383 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoRemove passing test from expected failures.
ager@chromium.org [Tue, 7 Jul 2009 20:13:52 +0000 (20:13 +0000)]
Remove passing test from expected failures.

TBR=yurys@chromium.org
Review URL: http://codereview.chromium.org/149274

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2382 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoPort IsConstructCall optimization to x64 and ARM.
ager@chromium.org [Tue, 7 Jul 2009 19:00:24 +0000 (19:00 +0000)]
Port IsConstructCall optimization to x64 and ARM.
Review URL: http://codereview.chromium.org/149266

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2381 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoDisable test-clearbreakpointgroup on ARM
yurys@chromium.org [Tue, 7 Jul 2009 18:17:20 +0000 (18:17 +0000)]
Disable test-clearbreakpointgroup on ARM
Review URL: http://codereview.chromium.org/149262

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2380 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix issue number 398: replacing a constant function on a clone.
whesse@chromium.org [Tue, 7 Jul 2009 14:06:08 +0000 (14:06 +0000)]
Fix issue number 398: replacing a constant function on a clone.
Review URL: http://codereview.chromium.org/149249

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2379 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoRemove the support for jump-table switches from the x64 port as well.
kmillikin@chromium.org [Tue, 7 Jul 2009 13:17:22 +0000 (13:17 +0000)]
Remove the support for jump-table switches from the x64 port as well.
Review URL: http://codereview.chromium.org/126197

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2378 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoRevert r2372 to get the tree green again.
kasperl@chromium.org [Tue, 7 Jul 2009 13:06:40 +0000 (13:06 +0000)]
Revert r2372 to get the tree green again.

TBR=mikhail.naganov@gmail.com
Review URL: http://codereview.chromium.org/155137

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2377 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoIn Chrome several tabs may share the same v8 instance. Each of those tabs can be...
yurys@chromium.org [Tue, 7 Jul 2009 12:48:57 +0000 (12:48 +0000)]
In Chrome several tabs may share the same v8 instance. Each of those tabs can be inspected with its own devtools window. When such devtools window closes we need to clear all breakpoints that belong to it. Notion of breakpoint group enables us to do that.

Storing the breakpoints on the client(in a different process) would be inreliable since 1) it may crash and 2) some 'setbreakpoint' requests may be not processed yet by the time devtools window closes.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2376 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Disassembler updated to using REX, extended registers and some X64 opcodes.
lrn@chromium.org [Tue, 7 Jul 2009 12:40:15 +0000 (12:40 +0000)]
X64: Disassembler updated to using REX, extended registers and some X64 opcodes.
Not all opcodes fixed yet (some should be invalid in 64-bit mode, others should be added).

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2375 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Use CmpObjectType macro everywhere, fix problem with sign of instance types.
whesse@chromium.org [Tue, 7 Jul 2009 12:17:31 +0000 (12:17 +0000)]
X64: Use CmpObjectType macro everywhere, fix problem with sign of instance types.
Review URL: http://codereview.chromium.org/155132

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2374 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAdd automatic tests for Tick Processor.
mikhail.naganov@gmail.com [Tue, 7 Jul 2009 12:11:12 +0000 (12:11 +0000)]
Add automatic tests for Tick Processor.

Added tests for cmdline args parsing, symbols processing, and the whole process.

Tick Processor code was refactored to make it testable.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2373 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix issue 397 and issue 399.
kasperl@chromium.org [Tue, 7 Jul 2009 11:57:09 +0000 (11:57 +0000)]
Fix issue 397 and issue 399.
Review URL: http://codereview.chromium.org/149247

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2372 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoChange a few sites where the Handle<T>(NULL) constructor is used so
kmillikin@chromium.org [Tue, 7 Jul 2009 11:41:21 +0000 (11:41 +0000)]
Change a few sites where the Handle<T>(NULL) constructor is used so
that they use the static Handle<T>::null() member function instead.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2371 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix lint issue.
kasperl@chromium.org [Tue, 7 Jul 2009 09:50:12 +0000 (09:50 +0000)]
Fix lint issue.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2370 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoAllow variable proxies for the same global variable to share the same
kmillikin@chromium.org [Tue, 7 Jul 2009 09:48:54 +0000 (09:48 +0000)]
Allow variable proxies for the same global variable to share the same
variable object.

Add a map from names to variables for global scopes just like
non-global scopes.  Variables are added to the map by the parser when
it encounters a declaration in a global scope or else at scope
resolution time by a failed variable lookup from the global scope or
an inner one and with no intervening with statements or possible calls
to eval.
Review URL: http://codereview.chromium.org/149245

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2369 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoChanged ?: into if/else to placate compiler.
lrn@chromium.org [Tue, 7 Jul 2009 09:29:41 +0000 (09:29 +0000)]
Changed ?: into if/else to placate compiler.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2368 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix the order in which ToNumber is called for some Math functions.
erik.corry@gmail.com [Tue, 7 Jul 2009 08:55:55 +0000 (08:55 +0000)]
Fix the order in which ToNumber is called for some Math functions.
Avoid divisions when doing Math.min(0, 0).
https://bugs.webkit.org/show_bug.cgi?id=26978 has been
filed to fix inconsistencies between JSC and V8.
Review URL: http://codereview.chromium.org/149188

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2367 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoSeparate native and interpreted regexp by compile time flag, not runtime.
lrn@chromium.org [Tue, 7 Jul 2009 08:11:19 +0000 (08:11 +0000)]
Separate native and interpreted regexp by compile time flag, not runtime.
Clean-up of RegExp code.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Implement sin and cos.
whesse@chromium.org [Tue, 7 Jul 2009 07:53:15 +0000 (07:53 +0000)]
X64: Implement sin and cos.
Review URL: http://codereview.chromium.org/149200

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2365 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Make comparisons work on zero-extended smis.
whesse@chromium.org [Mon, 6 Jul 2009 13:21:39 +0000 (13:21 +0000)]
X64: Make comparisons work on zero-extended smis.
Review URL: http://codereview.chromium.org/155083

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2364 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoUse attributes to communicate failed lookup instead of retval.
antonm@chromium.org [Mon, 6 Jul 2009 11:00:53 +0000 (11:00 +0000)]
Use attributes to communicate failed lookup instead of retval.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2363 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoRemove some unused messages.
deanm@chromium.org [Mon, 6 Jul 2009 10:56:52 +0000 (10:56 +0000)]
Remove some unused messages.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2362 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoPrepare to push version 1.2.12 to trunk.
kasperl@chromium.org [Mon, 6 Jul 2009 07:45:39 +0000 (07:45 +0000)]
Prepare to push version 1.2.12 to trunk.
Review URL: http://codereview.chromium.org/149192

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2360 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix win32 build by moving template function definition.
kasperl@chromium.org [Mon, 6 Jul 2009 06:57:32 +0000 (06:57 +0000)]
Fix win32 build by moving template function definition.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2359 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoLint error fix
whesse@chromium.org [Sun, 5 Jul 2009 15:38:06 +0000 (15:38 +0000)]
Lint error fix
Review URL: http://codereview.chromium.org/149189

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2358 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Fix LoadFloatOperands.
whesse@chromium.org [Sun, 5 Jul 2009 15:22:59 +0000 (15:22 +0000)]
X64: Fix LoadFloatOperands.
Review URL: http://codereview.chromium.org/155073

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2357 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoX64: Use low bits of registers in emit_sse_operand. Enable --stop-at flag.
whesse@chromium.org [Fri, 3 Jul 2009 13:30:15 +0000 (13:30 +0000)]
X64: Use low bits of registers in emit_sse_operand.  Enable --stop-at flag.
Review URL: http://codereview.chromium.org/155052

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2356 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoARM improvements to constant div, mod and mul.
erik.corry@gmail.com [Fri, 3 Jul 2009 12:44:31 +0000 (12:44 +0000)]
ARM improvements to constant div, mod and mul.
* Fast runtime calls for div and mod.
* Fix assembly and disassembly of multiply instructions.
* Strength reduce and inline multiplications to shift-add.
* Strength reduce and inline mod by power of 2.
* Strength reduce mod by other small integers to mul.
* Strength reduce div by 2 and 3.
Review URL: http://codereview.chromium.org/155047

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2355 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoFix thinko in IC code.
erik.corry@gmail.com [Fri, 3 Jul 2009 12:43:59 +0000 (12:43 +0000)]
Fix thinko in IC code.
Review URL: http://codereview.chromium.org/149175

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2354 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoRemove unneeded ToString calls. We call ToString if necessary
kasperl@chromium.org [Fri, 3 Jul 2009 12:08:00 +0000 (12:08 +0000)]
Remove unneeded ToString calls. We call ToString if necessary
when the result of calling the replace function is added to the
ReplaceResultBuilder.
Review URL: http://codereview.chromium.org/149179

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 years agoReverted RegExp parser error message change that broke layout test.
lrn@chromium.org [Fri, 3 Jul 2009 11:09:34 +0000 (11:09 +0000)]
Reverted RegExp parser error message change that broke layout test.
Also cleaned up some leftover crud.

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2352 ce2b1a6d-e550-0410-aec6-3dcde31c8c00