whesse@chromium.org
5423649f0a
Fix compilation on ARM when adding Math.pow optimization in 5949.
...
Review URL: http://codereview.chromium.org/5546006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5950 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-08 15:03:08 +00:00
whesse@chromium.org
3ef0c5dd21
Allow the optimizing code generator to call Math.pow with untagged doubles.
...
Review URL: http://codereview.chromium.org/5640004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5949 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-08 14:32:40 +00:00
lrn@chromium.org
095a71e99d
Changed interface to preparser to not require pushback support.
...
Changed implementation of pushback in preparer character stream.
Removed assert that isn't satisfied by in test-cases, but only by the real code.
Make preparser compile again.
Review URL: http://codereview.chromium.org/5593004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5946 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-08 10:06:40 +00:00
sandholm@chromium.org
23c07cd413
Fix sputnik regression introduced in r5943.
...
Review URL: http://codereview.chromium.org/5516013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5944 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-08 09:52:48 +00:00
sandholm@chromium.org
b36e346a08
Use the PushIfAbsent function for the JSON stringify stack.
...
Optimize ConvertToString.
Review URL: http://codereview.chromium.org/5614004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5943 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-08 09:10:36 +00:00
erik.corry@gmail.com
059eece44c
Fix compile error on gcc-4.5 bug 963
...
Review URL: http://codereview.chromium.org/5642004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5942 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-08 08:31:10 +00:00
vegorov@chromium.org
7c87f90c62
Remove NearestNextGapPos. It is not used anymore.
...
Remove uses of NearestGapPos in splitting helpers. We can split at any position.
Review URL: http://codereview.chromium.org/5605004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 14:51:49 +00:00
lrn@chromium.org
b55add7e20
Optimized scanner to avoid virtual calls for every character read.
...
Review URL: http://codereview.chromium.org/5545006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 14:03:59 +00:00
mikhail.naganov@gmail.com
670aea0218
Remove log compression support.
...
This is no longer used in Chromium, and only pollutes code.
BUG=859
Review URL: http://codereview.chromium.org/5575006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5934 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 13:24:22 +00:00
vegorov@chromium.org
d693ff9918
Fix ARM sim build.
...
Review URL: http://codereview.chromium.org/5618005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5931 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 12:43:23 +00:00
kasperl@chromium.org
0acc3f9117
Prepare push to trunk. Now working on version 3.0.1.
...
Review URL: http://codereview.chromium.org/5586007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 12:26:36 +00:00
vegorov@chromium.org
ff0365c2fa
Fix ARM build.
...
Review URL: http://codereview.chromium.org/5638003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5928 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 12:21:26 +00:00
kmillikin@chromium.org
e0d3f6afdf
Be more careful about exiting inlined functions in a test context.
...
When falling off the end of a function inlined in a test context, we cannot
constant fold the test of undefined away. The graph builder assumes that
control flow always reaches both branches of a test.
Instead, explicitly test and branch on "undefined". Introduce a pair of
empty blocks to hold the necessary LeaveInlined instructions.
Review URL: http://codereview.chromium.org/5566005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5927 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 12:07:40 +00:00
vegorov@chromium.org
199f1e7977
Fix Win64 compilation.
...
Review URL: http://codereview.chromium.org/5597007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 11:53:19 +00:00
ricow@chromium.org
3b5abbbdef
Fix no sse3 support by correctly allocating temp register
...
Review URL: http://codereview.chromium.org/5534004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5924 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 11:53:11 +00:00
vegorov@chromium.org
9ff019b49a
Fix strict aliasing rule violation in runtime-profiler.cc
...
Review URL: http://codereview.chromium.org/5621005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5923 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 11:40:36 +00:00
kasperl@chromium.org
90b3370374
Update V8 to version 3.0 (re-land r5920).
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 11:31:57 +00:00
kasperl@chromium.org
51b494d096
Revert r5920. Will re-land shortly.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 11:01:02 +00:00
kasperl@chromium.org
e5860bd6a8
Update V8 to version 3.0.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-07 09:11:56 +00:00
sandholm@chromium.org
209eb1c219
Improved JSON stringify.
...
Review URL: http://codereview.chromium.org/5578004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-06 15:41:07 +00:00
sandholm@chromium.org
26c05120b6
JSON stringify collects substrings in one builder array rather than using regular
...
string cons.
Review URL: http://codereview.chromium.org/5567005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5918 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-06 11:44:16 +00:00
erik.corry@gmail.com
bca83462d8
Improve code generated for AllocInNewSpace. This is a commit of http://codereview.chromium.org/5512004 for Rodolph Perfetta.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5917 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-06 09:59:08 +00:00
sandholm@chromium.org
fb93e5bc36
Simplify JSON stringify and add special case for default replacer and space.
...
Review URL: http://codereview.chromium.org/5551002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5916 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-03 11:12:02 +00:00
erik.corry@gmail.com
c5c852f64a
Irregexp: Preload more characters when we are not at the
...
start of the input and some alternations in the disjunction
are anchored.
Review URL: http://codereview.chromium.org/5524006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-03 09:54:06 +00:00
mikhail.naganov@gmail.com
dd1a7fa2b3
New Heap Profiler: add API method for finding a graph node by id.
...
TEST=cctest/test-heap-profiler/HeapSnapshotGetNodeById
Review URL: http://codereview.chromium.org/5537001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5914 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-02 15:38:51 +00:00
sgjesse@chromium.org
fdca2c3183
nGW build
...
- add missing functions SignalCodeMovingGC() and MemoryBarrier()
- avoid pointer conversion/comparison warnings
- don't attempt to hide symbols with -fvisibility, MinGW doesn't support it
BUG=http://code.google.com/p/v8/issues/detail?id=949
Patch by Bert Belder <bertbelder@gmail.com>
Review URL: http://codereview.chromium.org/5471001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5913 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-02 15:37:45 +00:00
whesse@chromium.org
66836efbba
Add generated code to calculate Math.log and to search Transcendental cache for logs. Implemented on all platforms.
...
Review URL: http://codereview.chromium.org/5437002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5912 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-02 11:20:44 +00:00
lrn@chromium.org
be20c55b3e
Change RegExp syntax to fail on invalid ranges like [\d-x], [x-\d] and [\d-\d].
...
The previous behavior was to treat the "-" as verbatim if the range was invalid.
This change matches the JSC changeset http://trac.webkit.org/changeset/72813/
Review URL: http://codereview.chromium.org/5464001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5911 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-02 08:02:37 +00:00
lrn@chromium.org
5036a1c727
Fix compile problem on ARM. Remove unused argument.
...
Review URL: http://codereview.chromium.org/5455001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-01 13:11:28 +00:00
lrn@chromium.org
c2febfbfaf
Move quoting of a JSON string to a specialized runtime function.
...
Previously used string replace regexp with function replacement.
Review URL: http://codereview.chromium.org/5443001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5909 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-12-01 10:04:34 +00:00
vitalyr@chromium.org
b0e4479e70
Save full source position state to avoid forced positions.
...
Review URL: http://codereview.chromium.org/5277008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5908 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-30 13:17:36 +00:00
sandholm@chromium.org
2f74ca3b6d
Maintain the invariant that the pattern string in an atom regexp is always
...
a flat non-cons string.
Review URL: http://codereview.chromium.org/5270006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5907 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-30 13:16:36 +00:00
vitalyr@chromium.org
4bbf601214
RelocInfo: fix source position decoding.
...
We used to rely on reading both POSITION and STATEMENT_POSITION to get
correct decoding of positions. This was error prone and made liveedit
unhappy.
Review URL: http://codereview.chromium.org/5277007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5905 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-30 10:55:24 +00:00
ager@chromium.org
d175df0ad4
Fix windows build.
...
TBR=lrn
Review URL: http://codereview.chromium.org/5367007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-29 16:38:05 +00:00
ager@chromium.org
64c682b14e
Revert seeding the random number generator with rand_s on Windows. It
...
makes browser_tests fail.
TBR=jschuh@chromium.org
Review URL: http://codereview.chromium.org/5284006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-29 14:28:06 +00:00
lrn@chromium.org
84f2f5ee90
Preparser extracted into separate files that can be compiled to a library.
...
No scons target yet.
Review URL: http://codereview.chromium.org/5295004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5899 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-29 13:24:37 +00:00
ager@chromium.org
d96f46c855
Prepare push to trunk. Now working on version 2.6.0.
...
Review URL: http://codereview.chromium.org/5381004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5895 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-29 07:47:34 +00:00
lrn@chromium.org
84bf943626
Fix number parsing to not allow space between sign and digits.
...
Affects both parseFloat and ToNumber conversion.
Fix issue 946.
Review URL: http://codereview.chromium.org/5338005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-26 12:45:41 +00:00
lrn@chromium.org
7be18f702b
make DateParser::TimeComposer handle 1-2 digits millisecond values
...
see http://code.google.com/p/v8/issues/detail?id=944
This patch makes DateParser::TimeComposer process times that have
millisecond values with only 1 or 2 digits.
Without this patch, Date.parse("2010-11-25T22:02:30.5") returns
1290690150005 and
Date.parse("2010-11-25T22:02:30.5") == Date.parse("2010-11-25T22:02:30.005")
evaluates to true.
With this patch, Date.parse("2010-11-25T22:02:30.5") returns
1290690150500 instead, and
Date.parse("2010-11-25T22:02:30.5") == Date.parse("2010-11-25T22:02:30.005")
evaluates to false.
Review URL: http://codereview.chromium.org/5336005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-26 11:48:35 +00:00
ager@chromium.org
57b045a921
Landing for Martyn Capewell.
...
Implement string constructor stub on ARM.
BUG=none
TEST=none
Codereview URL: http://codereview.chromium.org/5322009/
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5892 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-26 08:43:34 +00:00
mikhail.naganov@gmail.com
646a578b3f
Simplify ProfLazyMode test on Linux.
...
Instead of installing signal handler, count samples taken.
Review URL: http://codereview.chromium.org/5325003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5891 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-25 15:54:52 +00:00
yurys@chromium.org
9137e4a8c9
Expose a method for getting JSObject constructor name
...
Review URL: http://codereview.chromium.org/5256004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5890 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-25 08:04:12 +00:00
ager@chromium.org
be0f740d99
Landing for Justin Schuh.
...
Seed the random number generator in Windows with rand_s
This is a quick fix for m9. It works on Windows Chrome because the random device is already initialized before permissions are dropped for the Chrome sandbox. The same trick isn't possible on Linux or Mac.
I think the long-term solution is to provide an interface for supplying v8 with a true random number generator. Then Chrome can just hook up the generator from base/rand_util.h
BUG=http://code.google.com/p/v8/issues/detail?id=936
TEST=None.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5889 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-25 07:39:17 +00:00
mikhail.naganov@gmail.com
0634c50950
New Heap profiler: fix JSON serialization of aggregated profiles.
...
Serialization was failing due to unset dominator pointers.
TEST=test-heap-snapshot/AggregatedHeapSnapshotJSONSerialization
Review URL: http://codereview.chromium.org/5314003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5888 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-24 10:47:18 +00:00
lrn@chromium.org
5bfbeddf63
Fix break of build.
...
Mental note: When you make a fix, remember to save it before committing.
Review URL: http://codereview.chromium.org/5330005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-24 10:28:22 +00:00
lrn@chromium.org
0c60c88c2c
Working stand-alone preparser.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/5302003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5885 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-24 09:57:06 +00:00
erik.corry@gmail.com
72de9278d5
ARM: Defer the prefix/postfix code generation. This is a fixed
...
version of http://codereview.chromium.org/3666001/ by ZhangK with
an added call to ForgetTypeInfo to fix a debug mode assert.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5884 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-24 09:55:58 +00:00
sgjesse@chromium.org
0c064efdb0
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@5883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-24 09:40:58 +00:00
ager@chromium.org
4c6f79ecec
Fix crashes during GC caused by partially initialized objects. The
...
inline allocation code used the expected number of properties to
calculate the number of inobject properties for an object instead of
getting the actual number from the initial map.
It is safer to use the inobject property count from the initial map in
any case because that is the amount the instances will get. I think
this disconnect got introduced when adding shrinking of objects.
Unfortuntely I haven't been able to create a simple reproduction for a
test case but this fixes the webpage that exhibits the crash. I'll see
if I can create a reproduction tomorrow.
Review URL: http://codereview.chromium.org/5278003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-24 06:26:36 +00:00
lrn@chromium.org
dc390d0e1f
Untemplated preparser.h and made it depend on virtual types.
...
Extracted preparse-data specification and logging classes.
Review URL: http://codereview.chromium.org/5166006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-11-23 11:46:36 +00:00
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