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
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
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
erik.corry@gmail.com
7fc68c0399
Stop running some liveedit tests (see issue 915).
...
Plug tiny memory leaks in test-lock.cc.
Review URL: http://codereview.chromium.org/4161005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5735 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-29 07:10:14 +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
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
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
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
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
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
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
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
whesse@chromium.org
a8455f0424
Do not return the constant singleton float -0.0 from UnaryOpStub, because it may be overwritten, on X64 platform.
...
Review URL: http://codereview.chromium.org/3748007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-15 14:50:49 +00:00
erik.corry@gmail.com
759a87b520
Fix new-space-too-small test crash on 64 bit VM.
...
Review URL: http://codereview.chromium.org/3778009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5628 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-15 10:45:18 +00:00
erik.corry@gmail.com
d22965c49d
Fix creation of an exception to avoid rare GC corner case.
...
Review URL: http://codereview.chromium.org/3782009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5627 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-15 07:54:20 +00:00
lrn@chromium.org
d5ac565882
Restructure RegExp exec cache code.
...
Review URL: http://codereview.chromium.org/3778004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5622 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-14 12:54:00 +00:00
lrn@chromium.org
6c0cde67bc
Fix bug in cache handling of lastIndex on global regexps.
...
Review URL: http://codereview.chromium.org/3745005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5615 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-14 08:51:20 +00:00
lrn@chromium.org
a556a16f0f
Fix bad cast in string-search.h.
...
Review URL: http://codereview.chromium.org/3530004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-01 09:08:52 +00:00
erik.corry@gmail.com
d46fb9d454
New attempt to make the allocation routines 64 bit clean.
...
This one has been approved by the 64 bit compiler in MSVC
2005 so I hope it also passes the 2008 version.
The --max-new-space-size option is now in kBytes.
The --max-old-space-size option is now in MBytes.
Some issues remain with 64 bit heaps and the counters. See
http://code.google.com/p/v8/issues/detail?id=887
Review URL: http://codereview.chromium.org/3573005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-30 07:22:53 +00:00
erik.corry@gmail.com
2d0c23bc82
Revert attempt to make heap size 32/64 clean. This change needs to
...
be done from Windows where the compiler is stricter about truncating
changes.
Review URL: http://codereview.chromium.org/3454035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-28 12:49:25 +00:00
erik.corry@gmail.com
28d7064856
More correctness around PrintF and 32/64 bit values.
...
Fix test after 64 bit heap size change.
Review URL: http://codereview.chromium.org/3432032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5543 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-28 11:44:30 +00:00
erik.corry@gmail.com
f1635606df
Use intptr_t instead of int for heap sizes. This is a step towards
...
removing the 1Gbyte limit.
Review URL: http://codereview.chromium.org/3418035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5542 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-28 10:35:47 +00:00
vitalyr@chromium.org
1982f9d257
Custom call IC for Math.abs.
...
Review URL: http://codereview.chromium.org/3446024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5538 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-27 23:41:41 +00:00
vitalyr@chromium.org
48fd3dcaf9
Fix copy-on-write assert by setting the new array map early.
...
BUG=876
Review URL: http://codereview.chromium.org/3466013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5513 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-23 12:23:35 +00:00
vegorov@chromium.org
622351fedd
Fix getOwnPropertyDescriptor() support for index properties.
...
Add support for index properties with getters, setters or indexed interceptors.
For indexed interceptor case only fix crashes, do not guarantee any semantic soundness. Separate issue opened for this http://code.google.com/p/v8/issues/detail?id=877
BUG=http://code.google.com/p/v8/issues/detail?id=874
Review URL: http://codereview.chromium.org/3462005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5512 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-23 11:25:01 +00:00
lrn@chromium.org
0dece535d9
RegExp: Fix caching to correctly set lastIndex.
...
BUG: 52801
Review URL: http://codereview.chromium.org/3389022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5504 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-22 11:22:57 +00:00
vitalyr@chromium.org
a6bbe9820e
Custom call IC for Math.floor.
...
Review URL: http://codereview.chromium.org/3327022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5499 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-21 12:54:12 +00:00
yurys@chromium.org
b2f444f6e6
Use //@ sourceURL when formatting stack trace
...
BUG=672
Review URL: http://codereview.chromium.org/3444011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5498 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-20 15:55:28 +00:00
lrn@chromium.org
3b8235b306
Make some runtime arguments checks be RUNTIME_ASSERT, not ASSERT.
...
Review URL: http://codereview.chromium.org/3411013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5482 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-17 08:34:53 +00:00
kaznacheev@chromium.org
eef3bd7c04
Prevent inline constructor generation when duplicate properties are present in the constructor.
...
Currenly the constructor like this:
function f() {
this.a = 0;
this.a = 1;
this.a = 2;
}
creates a map with duplicate desciptors which is bad in many ways.
Review URL: http://codereview.chromium.org/3434004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5476 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-16 10:55:37 +00:00
fschneider@chromium.org
e91a352d02
Fix a regression in character-at stub when doing a keyed load on a string.
...
Loading from out-of-range has to go to the runtime system to check if there
exists a property with that index in the prototype.
Review URL: http://codereview.chromium.org/3410011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5471 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-16 09:18:08 +00:00
lrn@chromium.org
84d8115ecf
Fix bug in Array.prototype.indexOf/lastIndexOf when called on non-sparse non-arrays.
...
Review URL: http://codereview.chromium.org/3358025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5439 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-10 08:21:01 +00:00
lrn@chromium.org
ac2ae05f85
make Date.parse properly handle TZ offsets
...
This makes, e.g., Date.parse("2010-08-31T22:35:36-09:00") work as
expected. Without this change, the "-9:00" timezone-offset portion
causes V8 to fail to properly parse that string into a date.
BUG=http://code.google.com/p/v8/issues/detail?id=857
TEST=Try Date.parse("2010-08-31T22:35:36-09:00") and make sure
that it gets parsed without errors and does not return NaN.
Review URL: http://codereview.chromium.org/3318017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5436 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-10 07:00:28 +00:00
vitalyr@chromium.org
624b13a804
Custom call IC for String.fromCharCode.
...
Review URL: http://codereview.chromium.org/3291015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-09 13:38:01 +00:00
lrn@chromium.org
d1a674f7c1
Add sparse array handling to Array.protoype.indexOf/lastIndexOf.
...
Review URL: http://codereview.chromium.org/3132046
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-09 12:57:32 +00:00
kaznacheev@chromium.org
73c02394bf
Avoid pushing arguments twice in GenericBinaryOpStub.
...
Under some conditions (ADD, non-number arguments passed in registers)
GenerateRegisterArgumentsPush was called twice and the stack broke.
Review URL: http://codereview.chromium.org/3290012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-07 13:33:40 +00:00
serya@chromium.org
e54ad9ee86
Removing a wrong check.
...
A strings which represents an array index with length 8 and 9 digits do not pass this check. However generated hash is valid.
Review URL: http://codereview.chromium.org/3295017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-07 11:32:20 +00:00
vitalyr@chromium.org
62f7cd8500
Handle argument conversion in StringAddStub.
...
In case one of the arguments is known to be a string we emit a few
fast conversion attempts for the other. This allows using the
StringAddStub instead of STRING_ADD_{LEFT,RIGHT} builtins.
Review URL: http://codereview.chromium.org/3338007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5405 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-03 12:10:44 +00:00
lrn@chromium.org
6670c0ad38
Make JSON.stringify not quote non-ASCII characters. Fix bug 855.
...
Review URL: http://codereview.chromium.org/3336001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5398 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-09-02 07:09:28 +00:00
erik.corry@gmail.com
663f378da5
Get gcc to check that we don't ignore return values of functions that can
...
fail to allocate because we need a GC.
Review URL: http://codereview.chromium.org/3274008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5379 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-08-31 08:05:42 +00:00
ager@chromium.org
d955b212b5
Follow Safari and Firefox in returning empty array from array splice
...
with no arguments.
Review URL: http://codereview.chromium.org/3277005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5375 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-08-30 18:08:50 +00:00
vegorov@chromium.org
3d60cc34af
Fix regress-851.js to use assertNull instead of assertFalse.
...
Review URL: http://codereview.chromium.org/3232002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5365 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-08-27 13:23:14 +00:00
vegorov@chromium.org
f059093562
Check result of JSObject::NormalizeElements() in JSObject::PreventExtensions().
...
Normalization requires allocation so Failure object can be returned.
BUG=http://code.google.com/p/v8/issues/detail?id=851
TEST=test/mjsunit/regress/regress-851.js
Review URL: http://codereview.chromium.org/3262001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5364 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-08-27 13:06:50 +00:00
serya@chromium.org
71548e969b
Using array index hash code for string-to-number conversion.
...
Review URL: http://codereview.chromium.org/3141022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5362 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-08-27 11:47:12 +00:00
ricow@chromium.org
7672338bc9
Fixes bug in Object.freeze and Object.seal causing them to misbehave when Array.prototype has changed.
...
Object.freeze and Object.seal uses GetOwnPropertyNames which
returns an array with local property names. This array will also have
the additional properties defined on Array.prototype or
Object.prototype.
Note that, the implementation of GetOwnPropertyNames (when used as
Object.getOwnPropertyNames) is correct, since the spec says to create
a new Array (which would also have these properties).
Review URL: http://codereview.chromium.org/3137041
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5350 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-08-26 08:35:49 +00:00
ricow@chromium.org
3543dd53a4
Refactor the tools/test.py script and related testcfg.py files.
...
This makes it possible to run several variants of the tests (with different flags that is) by adding extra lists to the VARIANT_FLAGS list. In addition, there is a number of smaller refactorings.
Review URL: http://codereview.chromium.org/3164023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5329 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-08-24 13:34:59 +00:00
erik.corry@gmail.com
8682804746
Fix an issue in the ARM port where a left shift was predicted to have a Smi result when it had an int32 result. This is a commit of http://codereview.chromium.org/3195004 for Rodolph Perfetta. Part 2
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-08-23 09:04:31 +00:00