ager@chromium.org
2183309385
Introduce a external allocation limit.
...
If V8 is holding on to a lot of external memory, we attempt to clean
it up even if we do not get an allocation failure. Since tiny V8
objects can hold on to a lot of external memory, we might run out of
external memory while waiting for a normal allocation failure.
Review URL: http://codereview.chromium.org/155916
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2519 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-22 10:01:25 +00:00
whesse@chromium.org
be562ee794
X64: Add StoreField inline cache stub.
...
Review URL: http://codereview.chromium.org/155915
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2518 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-22 09:11:33 +00:00
iposva@chromium.org
a109c08c78
- Remove unneeded include of ucontext.h as it is deprecated on Snow Leopard.
...
- Avoid calculating shared library addresses if profiling is not enabled.
Review URL: http://codereview.chromium.org/155814
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2517 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-21 17:25:07 +00:00
whesse@chromium.org
ff242173c3
Make stub cache hash work on X64 platform. Stub cache now works.
...
Switch arguments of 32-bit arithmetic instructions so they are consistent
with 64-bit arithmetic instructions (all on X64 platforms).
Review URL: http://codereview.chromium.org/155849
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2516 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-21 13:30:46 +00:00
whesse@chromium.org
8ff3dc5280
X64: Implement inline caches for loads
...
Review URL: http://codereview.chromium.org/159131
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2515 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-21 11:06:24 +00:00
whesse@chromium.org
46b8d84659
X64: Fix compiler complaint
...
Review URL: http://codereview.chromium.org/159079
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2514 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-20 20:17:27 +00:00
whesse@chromium.org
ca6cd9b4b2
X64: Add instructions to disassembler. Skip hanging test-api test.
...
Review URL: http://codereview.chromium.org/155771
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2513 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-20 14:57:09 +00:00
whesse@chromium.org
7f886c8582
X64: Enable more of LoadIC, disable individual stub types.
...
Review URL: http://codereview.chromium.org/155763
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2512 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-20 14:33:59 +00:00
kmillikin@chromium.org
7c8a166b91
Fix another site where a stack-allocated character was treated as a
...
one-element character array. This was safe at this site but
potentially confusing.
BUG=17103
Review URL: http://codereview.chromium.org/159072
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2511 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-20 12:28:02 +00:00
kmillikin@chromium.org
2126c36279
Change RegExpMacroAssemblerIA32::CaseInsensitiveCompareUC16 so that it
...
does not use stack-allocated character as a one-element character
array.
The use at this site was actually safe (Ecma262Canonicalize will only
write to the first character of the array), but not obviously so.
BUG=17103
Review URL: http://codereview.chromium.org/159071
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-20 10:54:00 +00:00
mikhail.naganov@gmail.com
ec526df16f
Heap profiling: add logging of heap memory stats (capacity, used) under 'log-gc' flag.
...
Also changed time reporting to system time to be able to get synchronized with other memory (e.g. DOM) size status.
Review URL: http://codereview.chromium.org/155764
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2509 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-20 09:38:44 +00:00
ager@chromium.org
ab59ea5a16
I will lint my code before submitting...
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2508 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 16:34:58 +00:00
ager@chromium.org
6d641a8131
Add missing handle scope in internal field code.
...
TBR=kasperl@chromium.org
Review URL: http://codereview.chromium.org/155691
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2504 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 16:00:42 +00:00
whesse@chromium.org
39c9dd5ab1
X64: Add inline caching to calls of global functions
...
Review URL: http://codereview.chromium.org/155688
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2503 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 12:58:12 +00:00
whesse@chromium.org
76833936b7
Make Array::kHeaderSize protected, and only use kHeaderSize of its subclasses.
...
Many X64 bugs have been due to the difference between (unaligned) Array::kHeaderSize and (aligned) FixedArray::kHeaderSize.
Review URL: http://codereview.chromium.org/155687
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2502 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 12:12:24 +00:00
kasperl@chromium.org
21f44e8fd2
Make sure we don't crash if NewProxy returns an empty handle (only
...
happens when out of memory).
Review URL: http://codereview.chromium.org/155685
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2499 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 11:16:10 +00:00
antonm@chromium.org
3c6c399381
Introduce faster utilty methods for storing and retrieving native pointers
...
in internal fields.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2498 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 10:35:15 +00:00
kasperl@chromium.org
4f2cc4104e
Patch by Vitaly Repeshko. Improve performance of internal fields
...
operations by adding a fast-case check for JS_OBJECT_TYPE in
JSObject::GetHeaderSize().
Review URL: http://codereview.chromium.org/155684
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2497 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 09:16:23 +00:00
whesse@chromium.org
f8e622a620
Added inline caching for calls to a field to X64. Changed a use of Array::kHeaderSize to FixedArray::kHeaderSize on all platforms.
...
Review URL: http://codereview.chromium.org/149798
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2496 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 08:55:01 +00:00
kasperl@chromium.org
38f5a84701
Avoid more static variables in inline functions.
...
Review URL: http://codereview.chromium.org/149799
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2494 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 08:22:07 +00:00
kasperl@chromium.org
124ef540c0
Patch by Mark Mentovai. Don't put static variables inline.
...
Original review: http://codereview.chromium.org/149768
TBR=kmillikin@chromium.org
Review URL: http://codereview.chromium.org/155679
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2492 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 05:37:09 +00:00
kasperl@chromium.org
94c4760225
Revert r2486, r2487, and r2488 until I get the chance to fix
...
the performance issue with number dictionaries.
TBR=kmillikin@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2490 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 04:57:17 +00:00
bak@chromium.org
752a8fbaba
Changed the dictionary code to use original hash value when starting linear scan.
...
This is necessary for hash codes for string where the array index is encoded.
Review URL: http://codereview.chromium.org/149753
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2488 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 14:59:28 +00:00
bak@chromium.org
78ffa1df4d
Added two spaces to make presubmit.py happy.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 13:25:45 +00:00
bak@chromium.org
e0047e4331
Changed hash table to use more of the hash value when probing.
...
Review URL: http://codereview.chromium.org/155350
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2486 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 12:56:50 +00:00
whesse@chromium.org
263acb4d02
X64: Implement inline cache of monomorphic constant function call. Mark a debugger test on X64 as failing.
...
Review URL: http://codereview.chromium.org/155631
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2485 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 12:49:14 +00:00
whesse@chromium.org
a1cf7d6e3d
X64: Enable inline caching for calls, with some stubs stubbed out.
...
Review URL: http://codereview.chromium.org/149674
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 08:38:52 +00:00
yurys@chromium.org
20e4b1dbc5
Reapply http://codereview.chromium.org/149542 now that issue with Mac builder is fixed( http://codereview.chromium.org/155591 )
...
Review URL: http://codereview.chromium.org/149746
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2479 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 07:07:51 +00:00
whesse@chromium.org
10605879f6
Disable inline caching on X64 separately for loads, stores, and calls, while they are being implemented and tested one-by-one.
...
Review URL: http://codereview.chromium.org/149673
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2477 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-15 12:30:28 +00:00
yurys@chromium.org
12d5143551
Reverting 2458 to see if it makes Builder Webkit Mac (V8-Latest) happy.
...
Review URL: http://codereview.chromium.org/149672
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2469 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-15 09:45:06 +00:00
kmillikin@chromium.org
6443cb99f7
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
2009-07-15 08:57:25 +00:00
antonm@chromium.org
f12bdb27aa
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
2009-07-15 08:07:31 +00:00
mikhail.naganov@gmail.com
36b69749a5
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
2009-07-15 07:09:48 +00:00
feng@chromium.org
9b58a0c856
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
2009-07-14 22:38:06 +00:00
yurys@chromium.org
cc6be014dc
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
2009-07-14 16:55:32 +00:00
whesse@chromium.org
894af58c82
Change tests status for x64, make test runner pass --arch flag to Scons, add to x64 disassembler. Copied from http://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
2009-07-14 11:39:45 +00:00
mikhail.naganov@gmail.com
73710e057a
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
2009-07-14 05:01:06 +00:00
ager@chromium.org
7a80be473d
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
2009-07-13 23:41:17 +00:00
ager@chromium.org
44be312091
Put the work-around for http://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
2009-07-13 23:15:04 +00:00
feng@chromium.org
d52990b2e2
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
2009-07-13 21:24:54 +00:00
feng@chromium.org
3e4c457d1c
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
2009-07-13 21:23:21 +00:00
feng@chromium.org
0b70c7e16e
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
2009-07-13 21:22:50 +00:00
iposva@chromium.org
1ea35a858f
- 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
2009-07-13 15:00:35 +00:00
kasperl@chromium.org
f188ed8183
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
2009-07-13 13:49:57 +00:00
kasperl@chromium.org
df43ae3993
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
2009-07-13 13:36:38 +00:00
kasperl@chromium.org
067b3af8b7
Attempt at work-around for http://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
2009-07-13 13:24:32 +00:00
deanm@chromium.org
e9f42cde46
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
2009-07-13 11:17:51 +00:00
antonm@chromium.org
d067f8903a
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
2009-07-13 10:10:28 +00:00
kasperl@chromium.org
55a8088bd8
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
2009-07-13 09:17:04 +00:00
kasperl@chromium.org
e0c01db960
Try to work around http://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
2009-07-13 08:31:30 +00:00