vegorov@chromium.org
052f595184
Prepare push to trunk. Now working on version 2.5.9.
...
Review URL: http://codereview.chromium.org/5302002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-23 10:07:02 +00:00
mikhail.naganov@gmail.com
372087a5bc
Fix again HeapEntry size problem, now platform-independent way.
...
Rico noticed that V8 ARM builder also fails on HeapEntry size
assertion. As MSVC-specific way of fixing the problem causes
aliasing problems on G++, I re-implemented conversion using
unions. And #ifdefs are gone!
TBR=sgjesse@chromium.org
Review URL: http://codereview.chromium.org/5328001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5872 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-23 09:52:52 +00:00
mikhail.naganov@gmail.com
ec6b6c94f5
Fix windows compilation after r5867. Now linux-friendly.
...
TBR=sgjesse@chromium.org
Review URL: http://codereview.chromium.org/5216008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5871 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-22 16:09:14 +00:00
mikhail.naganov@gmail.com
9cf23fc145
Revert "Fix compilation on Win after r5867.". This breaks Linux.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5870 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-22 15:38:12 +00:00
mikhail.naganov@gmail.com
a5f7ae72af
Fix compilation on Win after r5867.
...
TBR=sgjesse@chromium.org
Review URL: http://codereview.chromium.org/5242003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5869 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-22 15:31:43 +00:00
floitschV8@gmail.com
1fafbe760d
Remove Gay's dtoa from sources.
...
Farewell.
Review URL: http://codereview.chromium.org/5195003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-22 14:42:07 +00:00
mikhail.naganov@gmail.com
1cfc63cf8a
New heap profiler: implement fast retaining sizes approximation.
...
Approximation is done by building a dominators tree for the heap graph.
Dominator nodes and retained sizes are serialized into JSON.
Removed:
- reachable size (it is useless, after all);
- HeapEntryCalculatedData (size is now stored in the node, retaining
paths in a hash map);
Review URL: http://codereview.chromium.org/5154007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5867 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-22 14:00:40 +00:00
ager@chromium.org
1e8413e188
Force pretenuring of closures that are immediately assigned to
...
properties. For these closures we would like to be able to use
constant functions and for that we need the closures allocated in old
space.
Review URL: http://codereview.chromium.org/5220007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5866 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-22 09:57:21 +00:00
lrn@chromium.org
75ae84f9ca
Made some functions virtual that were previously hit by templating.
...
Currently means that preparsing doesn't record/export symbol data.
Review URL: http://codereview.chromium.org/5122007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5865 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-19 12:36:39 +00:00
sgjesse@chromium.org
af466d80a6
Add more tests of breaks in infinite loops
...
Move stack check in do while loops to before the continue target to enable breaks even if continue was always used in the loop.
Review URL: http://codereview.chromium.org/5184007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5862 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-19 12:08:52 +00:00
ager@chromium.org
2c533c1af0
Remove unused variable to please Clang.
...
Review URL: http://codereview.chromium.org/5151010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5861 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-19 11:24:51 +00:00
whesse@chromium.org
1d11e32a01
Add a fast case to Array.join when all the elements and the separator are flat ascii strings.
...
Review URL: http://codereview.chromium.org/5122005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5860 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-19 09:25:46 +00:00
serya@chromium.org
bc42d95cc3
Avoiding repacking payload for v8::Arguments and v8::AccessorInfo (arm)
...
Review URL: http://codereview.chromium.org/5107002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5859 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-19 09:06:00 +00:00
lrn@chromium.org
afbbf485fb
Merge preparser Scanner with main JavaScript scanner.
...
Optimize scanning of keywords.
Review URL: http://codereview.chromium.org/5188009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5858 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-19 09:02:59 +00:00
ager@chromium.org
5205fd4417
Landing for Rodolph Perfetta.
...
Add missing Stub implementations on ARM.
BUG=none
TEST=none
Codereview URL: http://codereview.chromium.org/5128004/
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-19 08:41:24 +00:00
lrn@chromium.org
ed40f93696
Fix usage of NULL in integer contexts.
...
Review URL: http://codereview.chromium.org/5195002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 14:00:23 +00:00
lrn@chromium.org
ecf0d85a8e
Fix off-by-one in hex-parsing.
...
Review URL: http://codereview.chromium.org/5129002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5855 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 13:50:21 +00:00
lrn@chromium.org
2d4aa6295b
Extract scanner base/JS/JSON and move base and JS to scanner-base.
...
Remove templates from prescanner.
Review URL: http://codereview.chromium.org/5136002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5854 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 13:07:02 +00:00
ager@chromium.org
7c5cca2927
Don't return false from CompileCallInterceptor which returns a
...
MaybeObject*. Instead return the failure which will be handled
correctly by the caller. This code would lead to a crash if ever
executed.
Review URL: http://codereview.chromium.org/5182006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5852 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 11:21:20 +00:00
lrn@chromium.org
80ace73cb8
Make count-line-ends use StringSearch and only iterate over the source once.
...
Review URL: http://codereview.chromium.org/5121007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5850 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 10:42:22 +00:00
mikhail.naganov@gmail.com
051f314a99
New heap profiler: include all heap objects and refs into snapshot.
...
Otherwise, retaned memory sizes are not precise. This increases size
of heap snapshot, I will deal with this later. Heap objects and
references previously missing in snapshot are now marked as 'hidden'.
That means, they not shown to user, but participate in sizes
calculation.
Other small changes:
- added 'shortcut' graph edges: e.g. to pin global objects on top
level;
- meta-information in JSON snapshot is no more double encoded.
Review URL: http://codereview.chromium.org/5139002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 10:38:25 +00:00
erik.corry@gmail.com
7d72d30383
Prepare push to trunk. Now working on version 2.5.8.
...
Review URL: http://codereview.chromium.org/5203002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5848 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 10:28:47 +00:00
ager@chromium.org
79fd9c50f5
Revert r5846 because of debug mode test failures.
...
TBR=sandholm@chromium.org
Review URL: http://codereview.chromium.org/5167002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 09:40:00 +00:00
sandholm@chromium.org
63f333999c
Leverage Lasse's StringSearch object to speed up calculations of script
...
line ends.
Review URL: http://codereview.chromium.org/5100002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 08:45:17 +00:00
ager@chromium.org
48066af7e0
Landing for Justing Schuh.
...
Split out the random number state between JavaScript and private API
I've added v8::RandomPrivate() for internaly used random numbers, and pass the state in as a parameter to a random_base function.
I still need to implement strong seeding. I already know how and will be landing that in another patch.
BUG=http://code.google.com/p/v8/issues/detail?id=936
TEST=None.
Codereview URL: http://codereview.chromium.org/5143004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-18 08:23:49 +00:00
ager@chromium.org
60659dd1c6
Landing for Martyn Capewell.
...
Replace some hard-coded return address calculations with Call.
BUG=none
TEST=none
Codereview URL: http://codereview.chromium.org/5158002/
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 14:48:43 +00:00
sgjesse@chromium.org
010f35f478
Change the order of evaluation of sub-expressions for keyed call
...
The expression of the key is now evaluated before the arguments, so all expressions in a keyed call are evaluared from left to right.
BUG=http://code.google.com/p/v8/issues/detail?id=931
TEST=test/mjsunit/regress/regress-931.js
Review URL: http://codereview.chromium.org/5161002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5842 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 13:59:07 +00:00
floitschV8@gmail.com
cfddf4f54c
Name argument in forward declaration.
...
Unbreaks the build.
TBR: whesse@chromium.org
Review URL: http://codereview.chromium.org/5126002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5841 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 13:29:45 +00:00
floitschV8@gmail.com
7ac932c088
Add bignum fall-back when the fast dtoa doesn't succeed. This removes Gay's dtoa for the double->string direction. We still need it for the string->double direction.
...
Review URL: http://codereview.chromium.org/3468003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 13:20:44 +00:00
vegorov@chromium.org
a298666fae
Store script's line ends in copy-on-write fixed array.
...
This allows to remove explicit copy from line ends JS accessor which is used for formatting of stack traces.
Eager copying of line ends array might cause multiple full GC collections for huge scripts (e.g. scripts generated by GWT compiler with PRETY preset).
Review URL: http://codereview.chromium.org/5148002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 12:49:27 +00:00
ager@chromium.org
a24d627598
Extract extensions to a separate directory.
...
Remove extensions from the external reference table. They should never
be part of the serialized code.
Create extensions/experimental subdirectory for experimental
extensions not officially supported by V8.
Review URL: http://codereview.chromium.org/5094003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5838 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 12:28:30 +00:00
lrn@chromium.org
9902e43293
Add separate scanner only intended for preparsing.
...
Review URL: http://codereview.chromium.org/5063003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 12:00:22 +00:00
serya@chromium.org
af7825c05f
API call code refactoring (x64).
...
Review URL: http://codereview.chromium.org/5108003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5836 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 10:44:16 +00:00
erik.corry@gmail.com
f42de7dcae
Implement Math.floor stub on ARM. Uses VFP when available. This is a commit of http://codereview.chromium.org/5075002/ for Martyn Capewell
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5835 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-17 09:24:44 +00:00
serya@chromium.org
ee78d11818
Port direct API function call to x64 (ia32 CL is http://codereview.chromium.org/4456002/ ).
...
Review URL: http://codereview.chromium.org/5004004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5833 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-16 16:08:57 +00:00
serya@chromium.org
8454123682
Fixing lint errors.
...
Review URL: http://codereview.chromium.org/5065002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-16 15:23:47 +00:00
serya@chromium.org
16164471f3
API call code refactoring (ia32).
...
Review URL: http://codereview.chromium.org/5055004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5831 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-16 15:04:41 +00:00
lrn@chromium.org
0464b33625
Fix bug in parser that allows "(foo):42" as a labeled statement.
...
Fixes issue 918.
Review URL: http://codereview.chromium.org/5044003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5830 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-16 12:10:48 +00:00
lrn@chromium.org
1341dde85f
Revert premature addition to parser.
...
TBR:ricow
Review URL: http://codereview.chromium.org/5055003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5829 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-16 08:16:13 +00:00
lrn@chromium.org
47c1870996
Move static scanner fields to scanner-base.h
...
Review URL: http://codereview.chromium.org/5026005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5828 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-16 08:01:45 +00:00
serya@chromium.org
3b248841da
Removing redundant stubs for API functions.
...
Review URL: http://codereview.chromium.org/4695003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5827 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-15 17:12:34 +00:00
lrn@chromium.org
af7b6fecfe
Split globals.h into two parts, where only one depends on V8.
...
Made allocation.{h,cc} independent of V8, allowing utils.h to allocate
vectors and collectors.
Review URL: http://codereview.chromium.org/5005001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5826 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-15 13:23:30 +00:00
mikhail.naganov@gmail.com
2a8eb35548
Provide more accurate results about used heap size via GetHeapStatistics.
...
I observed that used heap size provided by Heap::SizeOfObjects() is
usually about ~10% bigger than the number calculated by summing up
heap objects sizes.
This aligns DevTools Timeline stats with Heap profiler stats.
Review URL: http://codereview.chromium.org/4888001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5825 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-15 10:38:24 +00:00
erik.corry@gmail.com
ca7a438713
Improve support for vmrs/vmsr in ARM disassembler. This is a commit of http://codereview.chromium.org/4904001 for Martyn Capewell.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-15 10:21:57 +00:00
ager@chromium.org
583198eb0f
Landing for dsule@codeaurora.org.
...
Allow build-time customization of the max semispace size. Building a
version of V8 with snapshots and with a non-default max semi-space
size is much easier when you can set the max semispace size in the
build environment.
Review URL: http://codereview.chromium.org/4937001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5823 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-15 10:12:01 +00:00
antonm@chromium.org
bfeca9e0e6
Fix Win64 build.
...
MemoryAllocator::AvailableExecutable should return intptr_t, the difference of intptr_t's.
TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/4972001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5818 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-13 15:00:24 +00:00
antonm@chromium.org
4a6f452ebc
Fix Win64: strlen returns size_t which gets converted to int.
...
TBR=lrn@chromium.org
Review URL: http://codereview.chromium.org/4971001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5817 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-13 14:37:28 +00:00
ager@chromium.org
2c4723639d
Use the real climit for testing the stack limit API. The currently
...
active climit can be changed by other events and should not be trusted
for these tests. The real climit stays the same once set.
Review URL: http://codereview.chromium.org/4881001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5816 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-12 08:40:21 +00:00
floitschV8@gmail.com
121adebfde
Fix strtod.
...
Strtod function used buffer that was allocated inside a nested scope.
Review URL: http://codereview.chromium.org/4639006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5815 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-11 16:32:32 +00:00
lrn@chromium.org
fc3bdf4d20
Preparsing now considers catch-blocks as inside a with.
...
Fix issue 928.
Review URL: http://codereview.chromium.org/4639005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5813 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-11 11:45:25 +00:00
fschneider@chromium.org
582a3bde4f
Move ComputeCallInitialize from the codegen.cc to stub-cache.cc.
...
Review URL: http://codereview.chromium.org/4760003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5812 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-11 10:33:51 +00:00
lrn@chromium.org
17f532acb9
Fix Chromium bug 62639.
...
Add missing failure check after expecting an identifier in preparser.
This allowed code to use the non-existing literal.
Review URL: http://codereview.chromium.org/4800001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5811 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-11 10:18:48 +00:00
sandholm@chromium.org
c8932d030b
Special case global and non-global code paths in regexp.test.
...
Review URL: http://codereview.chromium.org/4517003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5810 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-11 08:47:30 +00:00
fschneider@chromium.org
8673e6497c
Move common static helpers from codegen to the macro-assembler files.
...
Review URL: http://codereview.chromium.org/4654002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5807 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-10 17:00:20 +00:00
vitalyr@chromium.org
87834f8cf0
Make String.prototype.split honor limit when separator is empty.
...
BUG=929
Review URL: http://codereview.chromium.org/4750003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5806 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-10 12:34:28 +00:00
ager@chromium.org
869017bf6a
Prepare push to push version 2.5.6 to trunk.
...
Review URL: http://codereview.chromium.org/4709003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5803 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-10 11:38:22 +00:00
ager@chromium.org
fac33fb66b
Another fix after the executable memory limit introduction.
...
The max executable size must be less than or equal to the max old
space size. It is an extra limit in addition to the old space size.
Review URL: http://codereview.chromium.org/4730002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5802 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-10 10:14:13 +00:00
ager@chromium.org
c20cf6d393
Fix x64 build after executable memory limit change.
...
TBR=jschuh@chromium.org
Review URL: http://codereview.chromium.org/4656002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5801 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-10 09:25:46 +00:00
ager@chromium.org
f3f92b18d4
Fix executable memory setting and fix test.
...
Review URL: http://codereview.chromium.org/4764002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5800 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-10 09:20:08 +00:00
ager@chromium.org
17573d771a
Landing for Justin Schuh.
...
Add 128MB limit for executable pages.
BUG=http://code.google.com/p/v8/issues/detail?id=925
TEST=None.
TBR=jschuh@chromium.org
Review URL: http://codereview.chromium.org/4634003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-10 08:38:42 +00:00
vegorov@chromium.org
20d3aad5ae
Add check for overflow after MUL operations in side-effect free int32 expressions.
...
BUG=http://code.google.com/p/v8/issues/detail?id=927
TEST=test/mjsunit/regress/regress-927.js
Review URL: http://codereview.chromium.org/4746001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5793 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-09 19:32:49 +00:00
serya@chromium.org
82fc8fe39a
Direct call API functions (ia32 implementation).
...
Review URL: http://codereview.chromium.org/4456002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5791 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-09 14:01:23 +00:00
erik.corry@gmail.com
8ebe8e4756
ARM: The Simulator will now handle different VFP rounding modes. RZ and RM are implemented. This is a commit of
...
http://codereview.chromium.org/4295003/show for Alexander Rames of ARM.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5790 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-09 08:26:02 +00:00
floitschV8@gmail.com
c86e548e1d
Add comments to double.h.
...
Review URL: http://codereview.chromium.org/4687001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5789 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-08 15:40:28 +00:00
mikhail.naganov@gmail.com
0f66199b5e
Heap profiler: remove context checks for objects.
...
It seems that there will be no access to heap snapshots from
web pages' code, only from Developer Tools, thus it makes no
sense doing filtering of object by their security contexts.
Review URL: http://codereview.chromium.org/4681003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5787 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-08 15:18:12 +00:00
floitschV8@gmail.com
aab900fdb0
Fix Double.NextDouble function.
...
This unbreaks the build on windows.
TBR: whesse@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/4681001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5779 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-08 12:13:05 +00:00
floitschV8@gmail.com
808d00f8ef
Bignum implementation of Strtod.
...
This removes the dependency on Gay's strtod.
Review URL: http://codereview.chromium.org/4060001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5778 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-08 11:49:47 +00:00
whesse@chromium.org
17ac8903d1
Prepare push to trunk. Now working on version 2.5.6.
...
Review URL: http://codereview.chromium.org/4669002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5777 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-08 11:15:51 +00:00
vegorov@chromium.org
28bd8aa024
Fix pseudo-smi accessors lo/hi ordering for SharedFunctionInfo on x64.
...
Incorrect ordering lead to crashes during GC when end position was not even number.
Add static assert to catch this kind of typos.
Review URL: http://codereview.chromium.org/4640003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5776 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-08 10:30:57 +00:00
lrn@chromium.org
f386f97476
Move part of scanner.* into scanner-base.* for reuse in preparser scanner.
...
Make checks.h not depend on flags.h or global.h (or anything else except
include/v8stdint.h). Only checks.cc has the dependencies (so another
implementation of checks.cc can be provided by the preparser).
Now files depending on checks.h (using ASSERT macros) can include it
directly without depending on all of v8.
Review URL: http://codereview.chromium.org/4576001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5775 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-05 13:33:40 +00:00
sandholm@chromium.org
8838fdea66
Another minor regexp cleanup.
...
Review URL: http://codereview.chromium.org/4577001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5774 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-05 13:33:12 +00:00
lrn@chromium.org
5e9c1704d9
Fix bug introduced when extracting utils.
...
TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/4535004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5773 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-05 13:12:14 +00:00
lrn@chromium.org
8f8039574a
Split utils.h into utils.h and v8utils.h where the former is independent of V8.
...
The code in utils.h can be reused outside of v8 propert, as long as the
propert ASSERT macros are defined.
Review URL: http://codereview.chromium.org/4485001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5772 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-05 08:18:53 +00:00
sgjesse@chromium.org
d8c22d9dc1
Add a test for debug break while running in an infinite loop
...
Fixed a bug where execution termination could get lost while leaving the debugger.
Review URL: http://codereview.chromium.org/4405003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5771 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-04 15:43:12 +00:00
vegorov@chromium.org
9b96a9d592
Fix presubmit errors introduced by r5768.
...
Review URL: http://codereview.chromium.org/4409003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5770 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-04 15:39:06 +00:00
whesse@chromium.org
861a66fb67
Fix a potential error in Add() macro-instruction on ARM.
...
Review URL: http://codereview.chromium.org/4247004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5769 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-04 15:30:04 +00:00
vegorov@chromium.org
746d72420c
Improve positions recording for calls.
...
Review URL: http://codereview.chromium.org/4469002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5768 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-04 15:12:03 +00:00
lrn@chromium.org
455cfe5932
Make presubmit lint the "include" dir.
...
Make include dir content pass lint.
Review URL: http://codereview.chromium.org/4421002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5767 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-04 10:27:39 +00:00
lrn@chromium.org
62302a533d
Fix issue 924 - splitting the empty string.
...
Review URL: http://codereview.chromium.org/4483001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5766 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-04 10:24:17 +00:00
lrn@chromium.org
3c1c4ffb29
Simplify preparsing of "new"-expressions.
...
Review URL: http://codereview.chromium.org/4331003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5764 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-04 07:19:06 +00:00
mikhail.naganov@gmail.com
926bf7bc6b
Investigate usleep failure on Linux. Add more debug output.
...
BUG=crbug.com/54592
TEST=none
Review URL: http://codereview.chromium.org/4391001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5763 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-03 18:33:57 +00:00
antonm@chromium.org
ce9a7396dc
Fix some fotgotten variable names.
...
TBR=vegorov@chromium.org
Review URL: http://codereview.chromium.org/4378001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5762 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-03 13:29:01 +00:00
antonm@chromium.org
20938fc53c
Attempt to collect more garbage before panicking with out of memory.
...
Currently weak handles retain an object for another GC round (oftem times,
major GC round.) Instrumenting Chromium shows that navigation leaves
many global objects which are only collected in next go. Let's
attempt to collect more garbage when approacing OOM condition.
This is a better version of rolled out r5455: now it's correctly
rebuilds object groups between additional GCs.
Review URL: http://codereview.chromium.org/4295004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5761 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-03 13:00:28 +00:00
floitschV8@gmail.com
ad605a1bcc
Fix assumptions in DoubleToFixed.
...
By luck two errors cancelled each other out.
Review URL: http://codereview.chromium.org/4135014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5760 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-03 12:05:01 +00:00
sandholm@chromium.org
97cb006188
Minor regexp test cleanup.
...
Review URL: http://codereview.chromium.org/4371002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5759 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-03 10:30:15 +00:00
lrn@chromium.org
94d09633be
Prepare push to trunk. Now working on version 2.5.5.
...
Review URL: http://codereview.chromium.org/4298003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5756 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-03 08:11:13 +00:00
lrn@chromium.org
e1458503d1
Remove regexp caching.
...
Review URL: http://codereview.chromium.org/4308001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5755 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-02 13:37:59 +00:00
sgjesse@chromium.org
b9860d3af8
Remove all remaining code related to exposing C-frames to the JavaScript debugger
...
BUG=906
Review URL: http://codereview.chromium.org/4104009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5754 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-02 12:08:58 +00:00
vegorov@chromium.org
8a2f34662d
Fix converting NULL to Failure bugs introduced in r5698.
...
Review URL: http://codereview.chromium.org/4293002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5753 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-02 11:56:10 +00:00
lrn@chromium.org
7f764978ee
Remove old preparser option and behavior from the parser.
...
Review URL: http://codereview.chromium.org/4244003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5752 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-02 11:45:47 +00:00
ager@chromium.org
ef06d71229
Landing for Rodolph Perfetta.
...
Improve V8 VFPv3 runtime detection, to address issue 914.
This patch will check for the exact word vfpv3 as well as 0xc08 (CortexA8
part number) as some earlier kernel didn't report vfpv3 for A8.
Codereview URL: http://codereview.chromium.org/4103013/show
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5751 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-02 08:26:33 +00:00
lrn@chromium.org
42b6151247
Stand-alone parser template.
...
Uses existing Scanner and ParserLog.
Generates same preparse-data as existing preparser.
Review URL: http://codereview.chromium.org/4112012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5750 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-02 07:21:37 +00:00
fschneider@chromium.org
ebcd03b46a
Prepare push to trunk. Now working on version 2.5.4.
...
Review URL: http://codereview.chromium.org/4158015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5747 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-01 12:17:58 +00:00
serya@chromium.org
fbdcbdf748
Refactoring of v8:Arguments similary we did with v8::AccessorInfo ( http://codereview.chromium.org/242050 ). GC-controlled values moved to a separate array.
...
Review URL: http://codereview.chromium.org/4117010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5746 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-01 10:51:44 +00:00
ager@chromium.org
51bc9a1493
Remove invalid asserts from last commit.
...
TBR=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/4094010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5745 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-01 09:16:39 +00:00
ager@chromium.org
5f1f2adb3b
Landing for Rodolph Perfetta.
...
Reduces the number of movw/movt instructions generated in ProbeTable. It
improves code size for CompileCallMegamorphic by about 10%.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/4220004/show
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5744 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-01 08:55:40 +00:00
vegorov@chromium.org
1dc2c44e3c
Clear JS function result caches in all global contexts.
...
Original patch by Mark Lam <mark.lam@palm.com> from Hewlett-Packard Development Company, LP. (http://codereview.chromium.org/4187007 )
Fix memory corruption in JSFunctionResultCache::Clear caused by out of bounds writes which was revealed by the patch.
Review URL: http://codereview.chromium.org/4200009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5738 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-29 08:13:19 +00:00
ager@chromium.org
46951e659c
Landing for Justin Schuh.
...
This switches out the existing constant splitting with masking that works like this:
1. Generate a random 32-bit value at compilation time.
2. XOR the 32-bit constant with the random value.
3. Emit the resulting immediate value along with the XOR operation to generate the original value.
BUG=http://code.google.com/p/v8/issues/detail?id=908
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5734 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-29 06:15:34 +00:00
sgjesse@chromium.org
19b62bb1b5
Remove the patching of the debug break stub
...
This is no longer required to break at the function entry. Actually has not been required since the inlined stack check was introduced long time ago.
Review URL: http://codereview.chromium.org/4106005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5726 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-28 11:50:50 +00:00
erik.corry@gmail.com
a448c13cdb
Add gc() calls to some tests to please valgrind.
...
Review URL: http://codereview.chromium.org/4116005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5724 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-28 08:43:47 +00:00
ager@chromium.org
2122827893
Landing for Rodolph Perfetta.
...
Fix the ARM simulator, the ARM disassembler and extend the stop feature.
The stop feature in the simulator now support enabling, disabling and
counting.
BUG=None
TEST=None
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5723 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-28 07:35:07 +00:00
ager@chromium.org
c964e478bf
Fix the last USE_SIMULATOR mips issue introduced with my last arm
...
simulator change.
Review URL: http://codereview.chromium.org/4151005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5722 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-28 07:33:51 +00:00
mikhail.naganov@gmail.com
7a6c7033b2
Fix reporting of impossible nested calls of DOM functions.
...
It turns out that having PC pointing _exactly_ at callback entry
point is quite probable.
BUG=crbug/60753
Review URL: http://codereview.chromium.org/4169005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5721 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-27 17:03:01 +00:00
vitalyr@chromium.org
9a1c80e452
Profiler on linux: use SA_RESTART signal flag to have most of the syscalls restarted for us.
...
This change keeps the interactive shell alive.
Review URL: http://codereview.chromium.org/4197002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5720 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-27 12:45:46 +00:00
lrn@chromium.org
81a3f7bfb5
Make Parser class have no friends and fewer things to depend on it.
...
Review URL: http://codereview.chromium.org/4146006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5719 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-27 12:33:48 +00:00
karlklose@chromium.org
1b0e2597e8
Fix a bug that prevents constants from overwriting function values in object literals.
...
BUG=http://code.google.com/p/v8/issues/detail?id=907
Review URL: http://codereview.chromium.org/4004006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5718 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-27 11:37:59 +00:00
lrn@chromium.org
938d88e193
Separate JSON parsing from the JavaScript parser.
...
Switch JSON parsing to creating the value directly instead of createing
code to create the value.
Review URL: http://codereview.chromium.org/4135004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5715 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-27 09:19:43 +00:00
lrn@chromium.org
a8f2714425
Prepare push to trunk. Now working on version 2.5.3.
...
Review URL: http://codereview.chromium.org/4128008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5714 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-27 08:09:34 +00:00
vitalyr@chromium.org
e197c930e1
Faster ascii string case conversion.
...
Review URL: http://codereview.chromium.org/4189001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5713 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-26 18:14:45 +00:00
mikhail.naganov@gmail.com
3d8e94863d
Improve sampler resolution on Linux.
...
Instead of relying on itimer signals from kernel, send them
ourselves from a separate thread. This disables an ability
to profile multiple VM threads on Linux, but it anyway doesn't
work on other platforms, so we need a common solution for
it (issue 913 created to track this).
Review URL: http://codereview.chromium.org/4000007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5711 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-26 14:51:31 +00:00
floitschV8@gmail.com
1766d4b5e4
Don't create empty vectors using SubVector.
...
Fixes build-breakage.
TBR: whesse@chromium.org
Review URL: http://codereview.chromium.org/4168002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5710 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-26 14:13:21 +00:00
floitschV8@gmail.com
83f0be364e
Use Vector::SubVector instead of using the constructor.
...
Review URL: http://codereview.chromium.org/4148003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5708 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-26 13:30:31 +00:00
ager@chromium.org
9640b6d9ab
Allow forcing the use of a simulator from the build script
...
independently of the host architecture.
Fix build issue for the mips simulator. The mips simulator does not
currently work, but at least this change does not make it worse.
Review URL: http://codereview.chromium.org/4090003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5701 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-26 08:12:17 +00:00
ager@chromium.org
a894e78654
Clean up definitions in simulator.
...
Clean up the definition of USE_SIMULATOR and its uses.
Review URL: http://codereview.chromium.org/4044003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5700 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-25 16:40:41 +00:00
erik.corry@gmail.com
ea7639a813
Last minute typos from the last change.
...
TBR=vegorov
Review URL: http://codereview.chromium.org/4037006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5699 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-25 15:29:06 +00:00
erik.corry@gmail.com
0dcaac1939
Make Failure inherit from MaybeObject instead of Object.
...
Review URL: http://codereview.chromium.org/3970005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5698 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-25 15:22:03 +00:00
mikhail.naganov@gmail.com
170baa8947
A little piece of code for aligning heap snapshots vs. object inspection.
...
Use original names for function infos.
Review URL: http://codereview.chromium.org/4040008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5696 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-25 09:53:39 +00:00
ager@chromium.org
1b410339be
Use size_t for return value from fwrite.
...
TBR=sgjesse@chromium.org
Review URL: http://codereview.chromium.org/4033005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5695 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-25 08:26:12 +00:00
ager@chromium.org
36ed1f611b
Use return value from fwrite in log.cc to please compilers.
...
BUG=453
Review URL: http://codereview.chromium.org/4002005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5694 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-25 08:22:23 +00:00
mikhail.naganov@gmail.com
12a2311082
Fix FreeBSD port.
...
TBR=kasperl@chromium.org
BUG=912
Review URL: http://codereview.chromium.org/4084001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5693 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-24 16:09:44 +00:00
serya@chromium.org
fed1246d45
Fixing build failure - added a missed file.
...
Review URL: http://codereview.chromium.org/3965004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5690 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-21 14:53:19 +00:00
serya@chromium.org
0ea6c1e09f
Optimizing HandleScope. Also fixed HandleScope destruction when API getter throws an exception.
...
Review URL: http://codereview.chromium.org/3792003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-21 14:21:00 +00:00
whesse@chromium.org
7fd5d4540c
Implement --noinline-new flag fully on x64 and ia32 platforms.
...
Review URL: http://codereview.chromium.org/3961005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5687 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-21 13:15:12 +00:00
floitschV8@gmail.com
29ae2f08cb
Strtod fast-case that uses DiyFps and cached powers of ten.
...
This is a fixed version of r5677.
Review URL: http://codereview.chromium.org/3898007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5686 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-21 11:54:32 +00:00
ager@chromium.org
598de609a2
Revert r5455 from bleeding_edge: attempt to collect more garbage
...
before panicking with out of memory.
TBR=antonm@chromium.org
Review URL: http://codereview.chromium.org/4034002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5681 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-21 06:16:52 +00:00
floitschV8@gmail.com
9bcdac5fef
Fix build-breakage.
...
Revert "Strtod fast-case that uses DiyFps and cached powers of ten."
This reverts commit 493da023514021a63e1d3ba3f70348a275ac4042.
TBR: whesse@chromium.org
Review URL: http://codereview.chromium.org/3870003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5678 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-20 15:30:59 +00:00
floitschV8@gmail.com
6232cd8000
Strtod fast-case that uses DiyFps and cached powers of ten.
...
Review URL: http://codereview.chromium.org/3760013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5677 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-20 15:13:34 +00:00
erik.corry@gmail.com
963cc2e49c
Fix GC error in ES5 read-only properties implementation.
...
Review URL: http://codereview.chromium.org/3920005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5676 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-20 13:19:03 +00:00
erik.corry@gmail.com
852016c118
Fix the --noinline-new flag on ARM so that it forces us into C++ code
...
on every allocation. Fix three places where the generated code couldn't
cope with an unlucky GC.
Review URL: http://codereview.chromium.org/3872003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5674 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-20 12:01:17 +00:00
whesse@chromium.org
9d10509662
Prepare push to trunk. Now working on version 2.5.2.
...
Review URL: http://codereview.chromium.org/3898006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5672 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-20 11:36:42 +00:00
ager@chromium.org
30959b20b9
Update x64 RecordWrite comment. When the offset is zero the index
...
should be an untagged 32-bit integer on x64. There are debug mode
asserts in the code that catch tagged integers so we get test
failures if we get it wrong.
Review URL: http://codereview.chromium.org/3928002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5668 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-20 08:52:46 +00:00
mikhail.naganov@gmail.com
5feede6667
CPU Profiler: postpone moved functions registration until GC completes.
...
An attempt to retrieve security context for a function may fail if the
destination heap space is in an incomplete state. To fix this, we only
record unknown functions discovered at GC object moves, and then
register them after GC completes.
BUG=crbug/59627
Review URL: http://codereview.chromium.org/3763012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5667 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-20 08:32:24 +00:00
ager@chromium.org
08da2bd6fb
Remove vm-state.cc from build files. Forgot to do that when
...
removing the file from the repository.
Review URL: http://codereview.chromium.org/3950001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5666 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-20 06:47:49 +00:00
ager@chromium.org
5616c8bf21
Make state stack thread local. When using Lockers the state stacks of
...
multiple threads got mixed up so that the current state could be an
already deallocated state from another thread.
Review URL: http://codereview.chromium.org/3828016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5665 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-20 05:54:23 +00:00
vitalyr@chromium.org
051f156bdd
Try to fix win64 build.
...
TBR=mikhail.naganov@gmail.com
Review URL: http://codereview.chromium.org/3797016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5664 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-19 16:56:44 +00:00
vitalyr@chromium.org
e6b33bd20b
Support profiling based on linux kernel performance events.
...
Since 2.6.31 perf_events interface has been available in the
kernel. There's a nice tool called "perf" (linux-2.6/tools/perf) that
uses this interface and provides capabilities similar to oprofile. The
simplest form of its usage is just dumping the raw log (trace) of
events generated by the kernel. In this patch I'm adding a script
(tools/ll_prof.py) to build profiles based on perf trace and our code
log. All the heavy-lifting is done by perf. Compared to oprofile agent
this approach does not require recompilation and supports code moving
garbage collections.
Expected usage is documented in the ll_prof's help. Basically one
should run V8 under perf passing --ll-prof flag and then the produced
logs can be analyzed by tools/ll_prof.py.
The new --ll-prof flag enables logging of generated code object
locations and names (like --log-code), and also of their bodies, which
can be later disassembled and annotated by the script.
Review URL: http://codereview.chromium.org/3831002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-19 16:45:11 +00:00
lrn@chromium.org
484b9df414
Limit end-anchored regexps to testing end of string where possible.
...
Review URL: http://codereview.chromium.org/3844006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5661 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-19 14:00:01 +00:00
kmillikin@chromium.org
f2789a903b
Change the StackGuard runtime function to take no arguments.
...
For some reason the StackGuard runtime function took a dummy argument
that it always ignored. Change it to take no arguments.
Review URL: http://codereview.chromium.org/3838003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5660 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-19 11:14:03 +00:00
lrn@chromium.org
00e23b719d
Revert revision 5657.
...
TBR: erik.corry
Review URL: http://codereview.chromium.org/3812012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5658 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-19 10:37:54 +00:00
lrn@chromium.org
f80da64d36
Use finite-length end-anchored regexps to reduce part of regexp that is searched.
...
Review URL: http://codereview.chromium.org/3850005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5657 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-19 09:42:40 +00:00
ager@chromium.org
d4ae526526
Return false from PagedSpace::Contains if the page from an address is not valid.
...
This can happen on Mac where C++ code can be in the 4-8K range.
Review URL: http://codereview.chromium.org/3781020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5656 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-19 09:16:57 +00:00
sgjesse@chromium.org
02615e8b75
Make randomized allocations along 64k granularity boundaries to avoid comitting unused memory.
...
BUG=56036
TEST=None.
Patch by Justin Schuh <jschuh@chromium.org>
Review URL: http://codereview.chromium.org/3849004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5655 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-19 08:23:47 +00:00
vegorov@chromium.org
82b380d3b8
Clear normalized map caches in all global contexts not just in those reachable from ThreadLocalTops.
...
Issue reported by Mark Lam <mark.lam@palm.com> from Hewlett-Packard Development Company, LP.
Review URL: http://codereview.chromium.org/3828011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5654 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-19 08:14:41 +00:00
mikhail.naganov@gmail.com
e0ff35ddb6
Update sync profiling changes for Solaris platform.
...
Patch by Maciej Blizinski <blizinski@google.com>
TBR=kasperl@chromium.org
BUG=901
Review URL: http://codereview.chromium.org/3794008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5653 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-18 17:34:27 +00:00
floitschV8@gmail.com
705a57266a
Disable double strtod in ARM-simulator.
...
The ARM simulator is compiled for 32bits. On Linux the floating-point
operations are hence invalid for the simulator too.
Fixes build-breakage.
Review URL: http://codereview.chromium.org/3813009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5651 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-18 16:37:19 +00:00
floitschV8@gmail.com
1193987313
Fix double-rounding in strtod.
...
Don't use floating-point operations on Linux,x86 to compute strtod. Since the
floating-point stack on Linux is set to 80bit double rounding may occure.
When falling back to gay_strtod append several '0's so that Gay doesn't take
the same shortcut either.
BUG=
TEST=
Review URL: http://codereview.chromium.org/3851003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5650 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-18 15:19:39 +00:00
vegorov@chromium.org
b2b7aa6f3b
Link all global contexts into a weak list.
...
Review URL: http://codereview.chromium.org/3764011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5649 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-18 14:59:03 +00:00
whesse@chromium.org
e08e43691a
Fix bug in comparison of two smis that differ by MIN_SMI on full compiler on all platforms.
...
Review URL: http://codereview.chromium.org/3767016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5643 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-18 14:04:28 +00:00
antonm@chromium.org
9673ee5d59
Get rid of requested size in RetryAfterGC.
...
This was only used by Heap::CollectGarbage to check if after GC
available space is bigger than was requested, but nobody checked
the value returned by Heap::CollectGarbage, so requested size
was efficiently unused.
However, it may trigger spurious out of memory exceptions if requested
size is big enough.
BUG=http://code.google.com/p/chromium/issues/detail?id=54580
Review URL: http://codereview.chromium.org/3836001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5642 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-18 12:58:56 +00:00
kasperl@chromium.org
cabe82959f
Try to simplify the semantics of the profiling code by making
...
sure to suspend the thread (if necessary) on mac/win32 before
reading the VM state.
Avoid dealing with signals delivered to non-VM threads on
linux no matter if we're profiling or not.
Review URL: http://codereview.chromium.org/3845006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5641 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-18 12:37:07 +00:00