kmillikin@chromium.org
1cbe7a240a
Fix two deallocation bugs identified by Coverity Prevent.
...
1. The tables array allocated in the CompilationSubCache constructor
was never deallocated. Fixed by adding destructor.
2. The buffer allocated in one of the constructors of the
NoAllocationStringAllocator was never deallocated. It seems that
this class sometimes owns the buffer (if it allocated one itself)
and sometimes doesn't (if it was passed one). Simple fix is to
remove the offending constructor which was never used anyway.
Review URL: http://codereview.chromium.org/155917
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2520 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-22 10:23:19 +00:00
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
iposva@chromium.org
260cacfde7
- Add frame-element.cc to the Xcode project.
...
Review URL: http://codereview.chromium.org/155680
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2493 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 06:32:29 +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
a6e5a0268b
Revert r2478. Avoiding dead code stripping for mksnapshot
...
wasn't enough.
TBR=iposva@chromium.org
Review URL: http://codereview.chromium.org/155678
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2491 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-17 05:00:38 +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
iposva@chromium.org
5ec5dcbd82
- Simplify the architecture setup. In particular the 'wordsize' parameter
...
cannot be trusted. The reported host architecture has no relation to the
default architecture being used for gcc.
Review URL: http://codereview.chromium.org/149774
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2489 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 22:41:28 +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
e21d0b510c
Allow a slow test, array-splice, to timeout on ARM.
...
Review URL: http://codereview.chromium.org/155500
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2484 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 12:09:05 +00:00
antonm@chromium.org
6f30c0e7ec
Some more test for load and call stubs.
...
Review URL: http://codereview.chromium.org/149749
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2482 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 10:57:17 +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
kasperl@chromium.org
ca340d1e1b
Patch by Mark Mentovai: Disable dead code stripping for mksnapshot on
...
Mac OS to work around code generation issue; see the issue details on
http://code.google.com/p/v8/issues/detail?id=404 .
Original review: http://codereview.chromium.org/155591
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2478 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-16 06:55:39 +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
kasperl@chromium.org
ce37937df1
Remove svn:executable flag from run.html and style.css and change the mime-type of style.css to text/css.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2474 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-15 10:37:10 +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
sandholm@chromium.org
92acc9f82e
Adding a missing 'the' in the warning message on bleeding edge.
...
Review URL: http://codereview.chromium.org/155561
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2467 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-07-15 09:35:04 +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
sandholm@chromium.org
5143ce8ff3
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
2009-07-15 08:47:51 +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
e0b829b1a5
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
2009-07-14 09:47:44 +00:00
kasperl@chromium.org
0eb595eb51
Add regression test case for http://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
2009-07-14 09:31:48 +00:00
kasperl@chromium.org
19f31a77e7
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
2009-07-14 06:40:40 +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