yangguo@chromium.org [Mon, 22 Aug 2011 13:55:25 +0000 (13:55 +0000)]
Inserted a missing string encoding check in lastIndexOf.
Review URL: http://codereview.chromium.org/
7685005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8992
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 22 Aug 2011 13:04:14 +0000 (13:04 +0000)]
Ensure that the current isolate is initialized in the API function Context::GetEntered.
r8833 introduced a regression in our API semantics, showing up in e.g.
Chrome 12, which is fixed by this patch.
Review URL: http://codereview.chromium.org/
7686005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8987
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 22 Aug 2011 13:01:25 +0000 (13:01 +0000)]
Added forgotten V8EXPORT attributes for v8::Array::CheckCast and v8::Number::CheckCast.
BUG=v8:1618
Review URL: http://codereview.chromium.org/
7692020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8986
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Mon, 22 Aug 2011 12:54:03 +0000 (12:54 +0000)]
Fix bug introduced by earlier "cleanup".
TEST=message/replacement-marker-as-argument
Review URL: http://codereview.chromium.org/
7696024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8985
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 22 Aug 2011 10:55:48 +0000 (10:55 +0000)]
Prepare push to trunk. Working version now 3.5.8.
Review URL: http://codereview.chromium.org/
7697017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8980
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Mon, 22 Aug 2011 09:51:56 +0000 (09:51 +0000)]
Prune some internal objects' prototypes.
Review URL: http://codereview.chromium.org/
7703005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8979
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 22 Aug 2011 09:10:47 +0000 (09:10 +0000)]
Make instruction for write barrier smaller.
R=yangguo@chromium.org
BUG=v8:1495
Review URL: http://codereview.chromium.org/
7703007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8978
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Mon, 22 Aug 2011 09:05:28 +0000 (09:05 +0000)]
MIPS: port Parse harmony let declarations.
Port r8944 (
a5a36f4)
Original commit message:
Implementation of the harmony block scoped let bindings as proposed here:
http://wiki.ecmascript.org/doku.php?id=harmony:block_scoped_bindings
Changes to the syntax are explained there. They are active under the
harmony_block_scoping_ flag in the parser.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7696020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8977
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whesse@chromium.org [Mon, 22 Aug 2011 09:00:27 +0000 (09:00 +0000)]
MIPS: port Clean up the nesting stack in the full code generator.
Port 8972 (
6a896b3)
Original commit message:
Remove unused methods, introduce named constants, and attempt to add some
sanity to naming.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7693021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8976
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 19 Aug 2011 11:13:26 +0000 (11:13 +0000)]
Simplified the sample shell. Resort to D8 shell for tests instead.
Review URL: http://codereview.chromium.org/
7354022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8974
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Fri, 19 Aug 2011 11:02:41 +0000 (11:02 +0000)]
Make regexp flag parsing stricter.
BUG=v8:1628
TEST=mjsunit/regress/regress-219
Review URL: http://codereview.chromium.org/
7624045
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8973
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Fri, 19 Aug 2011 09:54:08 +0000 (09:54 +0000)]
Clean up the nesting stack in the full code generator.
Remove unused methods, introduce named constants, and attempt to add some
sanity to naming.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7669018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8972
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ricow@chromium.org [Fri, 19 Aug 2011 05:24:39 +0000 (05:24 +0000)]
Remove trailing whitespaces from *.js files.
This is a whitespace removal only change
Review URL: http://codereview.chromium.org/
7687001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8971
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Thu, 18 Aug 2011 12:47:23 +0000 (12:47 +0000)]
Make scanner handle invalid unicode escapes in identifiers correctly.
I.e., don't just convert \u to u in identifiers (like in strings and regexps).
Also make the scanning of RegExp flags not interpret the escapes.
(Fix and reapply of r8942)
BUG=v8:1620
TEST=mjsunit/regress/regress-1620
Review URL: http://codereview.chromium.org/
7677012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8969
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 18 Aug 2011 12:33:40 +0000 (12:33 +0000)]
Fix another handful of memory leaks
TEST=valgrind reports 0 bytes definitely lost for cctest/test-api/RunTwoIsolatesOnSingleThread
Review URL: http://codereview.chromium.org/
7621064
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8968
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 18 Aug 2011 12:14:12 +0000 (12:14 +0000)]
Fix three ~Isolate() related memory leaks
BUG=93253
TEST=running valgrind on cctest/test-api/RunTwoIsolatesOnSingleThread reports fewer leaks than before
Review URL: http://codereview.chromium.org/
7624043
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8967
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 18 Aug 2011 09:51:08 +0000 (09:51 +0000)]
Unify GetElement handlers in ElementsAccessor
BUG=none
TEST=external-arrays.js
Review URL: http://codereview.chromium.org/
7655030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8966
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 18 Aug 2011 09:20:32 +0000 (09:20 +0000)]
Remove redundant implementation of UnionOfKeys
R=svenpanne@chromium.org
BUG=none
TEST=external-arrays.js
Review URL: http://codereview.chromium.org/
7670037
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8965
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ricow@chromium.org [Thu, 18 Aug 2011 08:39:06 +0000 (08:39 +0000)]
Use InternalArray in Object.defineProperties to avoid issues with overwriten properties on Array.prototype
TEST=mjsunit/regress/regress-1625
BUG=v8:1625
Review URL: http://codereview.chromium.org/
7631039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8964
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 17 Aug 2011 16:15:30 +0000 (16:15 +0000)]
Implement UnionOfKeys for NonStrictArguments
BUG=none
TEST=cctest/test-api/IndexedInterceptorNonStrictArgsWithIndexedAccessor
Review URL: http://codereview.chromium.org/
7657011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8963
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 17 Aug 2011 15:56:54 +0000 (15:56 +0000)]
GYP fixes: -Werror, snapshot.log, want_separate_host_toolset detection
Review URL: http://codereview.chromium.org/
7658011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8962
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 17 Aug 2011 13:55:05 +0000 (13:55 +0000)]
Prepare push to trunk. Now working on version 3.5.7.
R=ricow@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/
7671017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8957
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Wed, 17 Aug 2011 11:45:04 +0000 (11:45 +0000)]
Fixed scanner initialization in test-parsing.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7676003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8956
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Wed, 17 Aug 2011 11:17:59 +0000 (11:17 +0000)]
Initialize harmony block scoping field in scanner.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7671016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8955
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mikhail.naganov@gmail.com [Wed, 17 Aug 2011 10:29:05 +0000 (10:29 +0000)]
Remove some unnecessary namespace alias definitions.
We can pick the namespace alias 'i' from v8.h which is already included
in those files.
BUG=None
TEST=None
R=mnaganov@chromium.org
Signed-off-by: Thiago Farina <tfarina@chromium.org>
Review URL: http://codereview.chromium.org/
7621035
--------------
Inline the implementation of Handle default ctor.
BUG=None
TEST=None
R=mnaganov@chromium.org
Signed-off-by: Thiago Farina <tfarina@chromium.org>
Review URL: http://codereview.chromium.org/
7669013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8953
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Wed, 17 Aug 2011 09:51:20 +0000 (09:51 +0000)]
Fix GC unsafe place in JSProxy::DeletePropertyWithHandler.
Review URL: http://codereview.chromium.org/
7670023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8952
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 17 Aug 2011 09:39:03 +0000 (09:39 +0000)]
Bugs in x64 ICs introduced by array length refactor.
BUG=chromium:93044
TEST=external-array.js
Review URL: http://codereview.chromium.org/
7672014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8951
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 17 Aug 2011 09:22:58 +0000 (09:22 +0000)]
fix compilation with gcc 4.6
* src/bootstrapper.cc (Genesis::InitializeExperimentalGlobal): Remove
assigned-but-unused var.
BUG=
TEST=passes test suite, modulo http://code.google.com/p/v8/issues/detail?id=1621
Review URL: http://codereview.chromium.org/
7658014
Patch from Andy Wingo <wingo@igalia.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8950
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 17 Aug 2011 08:48:54 +0000 (08:48 +0000)]
Fix memory leaks in ~Zone and ~Isolate
TEST=chromium valgrind bots
Review URL: http://codereview.chromium.org/
7660016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8949
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Wed, 17 Aug 2011 08:24:36 +0000 (08:24 +0000)]
Fix compilation on Linux 2.6.9 and older.
Review URL: http://codereview.chromium.org/
7655016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8948
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ricow@chromium.org [Wed, 17 Aug 2011 08:22:41 +0000 (08:22 +0000)]
Revert 8942 "Make scanner not accept invalid unicode escapes in identifiers"
This is causing webkit failures, reverting until we figure out if this is a V8 regression or wrong test expectations.
Review URL: http://codereview.chromium.org/
7669017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8947
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Tue, 16 Aug 2011 15:51:49 +0000 (15:51 +0000)]
Fix potentially GC unsafe place in JSObject::DeleteElementWithInterceptor.
Review URL: http://codereview.chromium.org/
7660012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8946
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Tue, 16 Aug 2011 15:15:34 +0000 (15:15 +0000)]
Presubmit fix.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7661016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8945
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Tue, 16 Aug 2011 14:24:12 +0000 (14:24 +0000)]
Parse harmony let declarations.
Implementation of the harmony block scoped let bindings as proposed here:
http://wiki.ecmascript.org/doku.php?id=harmony:block_scoped_bindings
Changes to the syntax are explained there. They are active under the
harmony_block_scoping_ flag in the parser.
Review URL: http://codereview.chromium.org/
7616009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8944
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 16 Aug 2011 13:32:27 +0000 (13:32 +0000)]
Use immediates when possible for HBoundsCheck and HLoadKeyedFastElement
Review URL: http://codereview.chromium.org/
7608020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8943
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Tue, 16 Aug 2011 13:31:08 +0000 (13:31 +0000)]
Make scanner not accept invalid unicode escapes in identifiers.
BUG=v8:1620
TEST=mjsunit/regress/regress-1620
Review URL: http://codereview.chromium.org/
7663005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8942
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 16 Aug 2011 12:09:47 +0000 (12:09 +0000)]
Fix issue with prototype of WeakMap constructor.
The WeakMap constructor didn't have a unique prototype, so it shared one with
Object. All WeakMap functions (including "get" and "set") were installed on
that prototype.
R=rossberg@chromium.org
BUG=v8:1617
TEST=mjsunit/harmony/weakmaps
Review URL: http://codereview.chromium.org/
7658008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8941
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 16 Aug 2011 11:47:06 +0000 (11:47 +0000)]
Fix live-object-list to work with isolates.
TEST: Build v8 with live-object-list enabled.
Review URL: http://codereview.chromium.org/
7398025
Patch from Alexander Miller <Alexander.Miller@palm.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8940
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 16 Aug 2011 10:08:50 +0000 (10:08 +0000)]
MIPS: port Implement Harmony semantics for typeof null (behind a flag).
Port r8876 (
2aeeae7)
Original commit message:
Harmony is intended to make typeof null === "null". This may
break existing programs. Implementing it will allow us to run
some tests on the actual web.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7650009
Patch from Paul Lind <plind44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8939
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 16 Aug 2011 09:58:34 +0000 (09:58 +0000)]
Refactored DirectCEntryStub::GenerateCall a bit to make it clearer what's going on and added an ASSERT.
Review URL: http://codereview.chromium.org/
7640016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8938
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Tue, 16 Aug 2011 08:48:45 +0000 (08:48 +0000)]
MIPS: port Simplify handling of exits from with and catch.
Ported r8922 (
5ea2fb5)
Original commit message:
Remove the try/finally used for with and catch. Instead of using
try/finally to handle break and continue from with or catch,
statically track nesting dept and clean up when compiling break or
continue.
And instead of using try/finally to handle throw to handler in a frame
whose pc is inside a with or catch, store the context that the handler
should run in in the handler itself.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7648026
Patch from Paul Lind <plind44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8936
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
cira@chromium.org [Mon, 15 Aug 2011 22:29:03 +0000 (22:29 +0000)]
Return error not null for date time format.
BUG=v8:1602
TEST=new (new v8Locale().createDateTimeFormat()).getWeekdays should return Error not a Null.
Review URL: http://codereview.chromium.org/
7647027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8935
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ricow@chromium.org [Mon, 15 Aug 2011 12:55:18 +0000 (12:55 +0000)]
Add FIXED_DOUBLE_ARRAY_TYPE to INSTANCE_TYPE_LIST_ALL in objects.h
Leaving this out can cause crashes when running with --heap-stats (but this is only used when reporting heap statistics, so this is not a stability issue).
Review URL: http://codereview.chromium.org/
7647018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8932
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whesse@chromium.org [Mon, 15 Aug 2011 10:39:51 +0000 (10:39 +0000)]
Prepare push to trunk. Now working on version 3.5.6.
Review URL: http://codereview.chromium.org/
7645020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8931
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 12 Aug 2011 14:52:03 +0000 (14:52 +0000)]
Change AddElementsToFixedArray to work on FixedArrayBase rather than JSObject
In the process, make ElementsAccessors work internally more seamlessly with FixedArrayBase.
R=svenpanne@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/
7618012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8930
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 12 Aug 2011 13:54:27 +0000 (13:54 +0000)]
Change JSObject elements to be of type FixedArrayBase
R=kmillikin@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/
7617010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8927
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Fri, 12 Aug 2011 10:52:49 +0000 (10:52 +0000)]
Simplify handling of exits from with and catch.
Remove the try/finally used for with and catch. Instead of using
try/finally to handle break and continue from with or catch,
statically track nesting dept and clean up when compiling break or
continue.
And instead of using try/finally to handle throw to handler in a frame
whose pc is inside a with or catch, store the context that the handler
should run in in the handler itself.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7618007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8922
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Fri, 12 Aug 2011 10:13:40 +0000 (10:13 +0000)]
Add roundsd instruction to ia32 and use it in optimized Math.floor.
It is available platforms that have SSE 4.1 and allows us to handle
negative numbers without deoptimization. Before we would deoptimize
on negative inputs to Math.floor. x64 already uses this instruction.
* Change Math.floor unit test to make sure every test case gets
optimized by changing the source code for each test case.
* Fix HIR debug printing for some instructions.
Review URL: http://codereview.chromium.org/
7628017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8921
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mikhail.naganov@gmail.com [Fri, 12 Aug 2011 09:52:41 +0000 (09:52 +0000)]
Update .gitignore to include out/ directory created by Gyp/Make builds
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8920
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mikhail.naganov@gmail.com [Fri, 12 Aug 2011 09:49:55 +0000 (09:49 +0000)]
Pick the namespace alias 'i' from v8.h.
These files already include v8.h so they don't need to define the
namespace alias again.
Signed-off-by: Thiago Farina <tfarina@chromium.org>
Review URL: http://codereview.chromium.org/
7640012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8919
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 12 Aug 2011 08:45:17 +0000 (08:45 +0000)]
Do not use deprecated ARM instructions in DirectCEntryStub::GenerateCall.
Non-ancient versions of the ARM-ARM explicitly deprecate most uses of the PC
within instructions and older ARM implementations have a non-predictable offset
(8 or 12) for some of these deprecated uses. Avoiding the deprecated instruction
costs us one additional instruction in DirectCEntryStub::GenerateCall, but this
should not cause any significant performance degradation.
The deoptimizer still uses the PC in a stm instruction, but it is a bit unclear
what to do about that, so simply a comment has been added to reconsider this in
the future.
Review URL: http://codereview.chromium.org/
7633014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8916
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Thu, 11 Aug 2011 22:41:07 +0000 (22:41 +0000)]
Landing change for bradnelson@google.com from codereview.chromium.org/
7616013/ :
Dropping removed source file from the gyp build description.
BUG=None
TEST=None
R=iposva@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8912
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Thu, 11 Aug 2011 16:29:28 +0000 (16:29 +0000)]
Preliminary code for block scopes and block contexts.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7549008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8911
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 11 Aug 2011 16:11:07 +0000 (16:11 +0000)]
Rollback of r8903
Review URL: http://codereview.chromium.org/
7620012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8909
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 11 Aug 2011 15:18:55 +0000 (15:18 +0000)]
Quick fix to issue 1593
BUG=v8:1593
Review URL: http://codereview.chromium.org/
7622009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8903
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 11 Aug 2011 14:00:16 +0000 (14:00 +0000)]
Create a common base class for Fixed-, FixedDouble- and ExternalArrays.
Also unify Crankshaft code to load array length.
BUG=v8:1493
TEST=external-arrays.js
Review URL: http://codereview.chromium.org/
7600025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8901
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 11 Aug 2011 13:59:29 +0000 (13:59 +0000)]
Output missing comments after the last disassembled instruction.
Review URL: http://codereview.chromium.org/
7623014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8900
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 11 Aug 2011 13:58:28 +0000 (13:58 +0000)]
Third attempt to fix ARM cross-compile build
Review URL: http://codereview.chromium.org/
7620009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8899
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 11 Aug 2011 13:56:09 +0000 (13:56 +0000)]
Fixed printing of deoptimization input data without --print-code-verbose.
Review URL: http://codereview.chromium.org/
7617008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8898
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 11 Aug 2011 12:52:37 +0000 (12:52 +0000)]
Removed some arbitrary size restrictions when disassembling generated code.
We output line-by-line now, this avoids hitting StringBuffer ASSERTs when
disassembling huge code objects.
Review URL: http://codereview.chromium.org/
7622006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8897
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 11 Aug 2011 12:07:37 +0000 (12:07 +0000)]
Revert some .gyp refactoring to fix ARM cross-compilation
Review URL: http://codereview.chromium.org/
7623009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8894
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Thu, 11 Aug 2011 09:08:44 +0000 (09:08 +0000)]
Make threaded tests not use static fields for communication.
TEST=cctest/Threaded4
Review URL: http://codereview.chromium.org/
7620007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8892
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Thu, 11 Aug 2011 08:26:01 +0000 (08:26 +0000)]
Remove unused code from runtime profiler.
Review URL: http://codereview.chromium.org/
7617003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8887
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 11 Aug 2011 07:22:16 +0000 (07:22 +0000)]
Simplify and optimize ToBoolean handling.
Changing our builtin JavaScript code slightly, we can make sure that we never
see internal objects as arguments for ToBoolean at runtime. Removing that case
from the stub generator and crankshaft makes things a lot easier.
Heap numbers can never be undetectable (only strings and spec objects can), so
we can leave out a useless test.
Try to re-use a non-null register value when returning 'true' in some cases.
Removed special handling of the 'handle all' case, it will very probably never
happen in real code and only makes things more complicated.
Improved naming of the ToBoolean stubs a bit, reflecting the order in which
cases are handled in the code itself.
Review URL: http://codereview.chromium.org/
7497063
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8886
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
antonm@chromium.org [Thu, 11 Aug 2011 06:40:14 +0000 (06:40 +0000)]
Allows not API functions as inputs for CreationConext method.
Review URL: http://codereview.chromium.org/
7552034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8885
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vitalyr@chromium.org [Wed, 10 Aug 2011 16:05:17 +0000 (16:05 +0000)]
Fix fun.apply(receiver, arguments) optimization.
R=kmillikin@chromium.org
BUG=v8:1592
TEST=mjsunit/regress/regress-1592.js
Review URL: http://codereview.chromium.org/
7497067
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8884
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 10 Aug 2011 14:07:26 +0000 (14:07 +0000)]
Fix cross-compilation for ARM (hopefully)
TEST=Arm builder on Chromium waterfall successfully compiles
Review URL: http://codereview.chromium.org/
7607032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8880
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Wed, 10 Aug 2011 13:11:14 +0000 (13:11 +0000)]
Fix x64 build.
TBR=whesse@chromium.org
Review URL: http://codereview.chromium.org/
7604034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8879
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Wed, 10 Aug 2011 12:32:43 +0000 (12:32 +0000)]
Fix three bugs with handling negative zero in the optimizing compiler.
* Bug fix for range analysis (contributed by Andy Wingo). Ranges of
double values have to include negative zero. Original code review:
http://codereview.chromium.org/
7514040/
* Fix a bug in optimized Math.round on ARM. When emitting minus-zero checks
we previously return a wrong result because of incorrect register assignment.
* Fix performance problem in IA32 and x64. Refine the checks
for minus zero and avoid unnecessary deoptimizations on Math.floor.
* Improve mjsunit test for Math.round to make sure we also
get the optimized version of the code for each test case.
Review URL: http://codereview.chromium.org/
7604028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8877
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 10 Aug 2011 12:12:06 +0000 (12:12 +0000)]
Implement Harmony semantics for typeof null (behind a flag).
Harmony is intended to make typeof null === "null". This may
break existing programs. Implementing it will allow us to run
some tests on the actual web.
R=kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7598030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8876
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Wed, 10 Aug 2011 11:22:23 +0000 (11:22 +0000)]
Prepare push to trunk. Now working on version 3.5.5.
R=danno@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7606026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8873
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ricow@chromium.org [Wed, 10 Aug 2011 11:14:32 +0000 (11:14 +0000)]
Allow snapshots to be generated without using vfp3 code on arm.
There is currently no way of specifying that the snapshot build by scons should be created without using the vfp3 instructions.
Review URL: http://codereview.chromium.org/
7604031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8872
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 10 Aug 2011 11:07:31 +0000 (11:07 +0000)]
Support OUTDIR variable for tests triggered by Makefile
TEST="make -j16 check OUTDIR=whatever" works as expected
Review URL: http://codereview.chromium.org/
7606025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8871
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 10 Aug 2011 10:51:01 +0000 (10:51 +0000)]
Refactor UnionOfKeys into ElementsAccessor
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/
7529046
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8870
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 10 Aug 2011 08:03:22 +0000 (08:03 +0000)]
ARM: Fix deoptimizer for two-word call sites.
R=svenpanne@chromium.org,kmillikin@chromium.org
BUG=v8:1584
Review URL: http://codereview.chromium.org/
7585006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8868
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vitalyr@chromium.org [Tue, 9 Aug 2011 13:45:54 +0000 (13:45 +0000)]
Make presubmit check happier with GYP.
R=jkummerow@chromium.org
Review URL: http://codereview.chromium.org/
7598034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8867
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vitalyr@chromium.org [Tue, 9 Aug 2011 13:32:53 +0000 (13:32 +0000)]
Simpler (and a bit faster) keyword matcher.
Replaced the keyword matching state machine with a switch on the first char followed up by inlined char comparisons.
R=lrn@chromium.org
TEST=cctest/test-parsing/ScanKeywords
Review URL: http://codereview.chromium.org/
7558017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8866
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Tue, 9 Aug 2011 12:43:08 +0000 (12:43 +0000)]
Fix a bug in named getter/setter compilation.
Because these are function literals that have an associated name, we were
compiling them as if they were named function expressions. This is
incorrect, the property name should not be in scope.
R=vegorov@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7599024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8863
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Tue, 9 Aug 2011 11:28:09 +0000 (11:28 +0000)]
Added fast detection of one character tokens.
Reduced size of first-character table for keyword scanner.
Review URL: http://codereview.chromium.org/
7585030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8862
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 9 Aug 2011 08:16:32 +0000 (08:16 +0000)]
Fixed extremely important, mission-critical presubmit warnings...
Review URL: http://codereview.chromium.org/
7600019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8860
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 9 Aug 2011 07:59:00 +0000 (07:59 +0000)]
Implement type recording for ToBoolean on ARM.
Review URL: http://codereview.chromium.org/
7491054
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8859
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Mon, 8 Aug 2011 16:14:46 +0000 (16:14 +0000)]
Revert "Revert "Fix a bug in scope analysis.""
Reapply r8838 with a fix for the issue of function names.
Because function names can be added/changed/removed through the API,
remember whether the function is anonymous when initially parsed and use
that information when compiling.
R=vegorov@chromium.org
BUG=1583
TEST=regress-1583
Review URL: http://codereview.chromium.org/
7491097
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8858
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 8 Aug 2011 14:31:47 +0000 (14:31 +0000)]
Remove orphaned file src/shell.h
This has nothing to do with the sample shell.
Review URL: http://codereview.chromium.org/
7541078
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8857
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 8 Aug 2011 09:53:28 +0000 (09:53 +0000)]
Added two whitespaces to match correct indentation.
Review URL: http://codereview.chromium.org/
7585033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8855
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 8 Aug 2011 09:34:18 +0000 (09:34 +0000)]
Fixed a known issue in D8 (read file), enabled D8 shared library build on Windows.
Review URL: http://codereview.chromium.org/
7586001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8853
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whesse@chromium.org [Mon, 8 Aug 2011 07:34:54 +0000 (07:34 +0000)]
Fix compilation error on X64 and ARM. Error was introduced in r8851.
Clean up TranslationIterator and DeoptimizationInputDataPrint, so they will work with alignment padding in the Translation info.
BUG=
TEST=v8 compiles on X64 and ARM platforms.
Review URL: http://codereview.chromium.org/
7491087
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8852
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whesse@chromium.org [Mon, 8 Aug 2011 07:17:01 +0000 (07:17 +0000)]
Clean up TranslationIterator and DeoptimizationInputDataPrint.
Without this refactoring, they break when we add alignment padding in the Translation info.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7569009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8851
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vitalyr@chromium.org [Fri, 5 Aug 2011 13:34:46 +0000 (13:34 +0000)]
Make d8-os test less flaky.
Because of stress testing there may be parallel instances of the test
running, which makes it fail when using a hardcoded test dir
name. Adding a random suffix helps. It'd be nicer to add something
like pid, but there doesn't seem to be an easy way of getting it.
R=yangguo@chromium.org
Review URL: http://codereview.chromium.org/
7491057
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8848
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Fri, 5 Aug 2011 12:55:29 +0000 (12:55 +0000)]
Avoid infinite recursion for unterminated non-ASCII JSON string literals.
BUG=91787
TEST=mjsunit/regress/regress-91787
Review URL: http://codereview.chromium.org/
7569008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8847
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vitalyr@chromium.org [Fri, 5 Aug 2011 12:31:37 +0000 (12:31 +0000)]
Remove TLS load in regexp code.
Spotted while reviewing Yang's patch.
R=yangguo@chromium.org
Review URL: http://codereview.chromium.org/
7585005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8846
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 5 Aug 2011 12:05:23 +0000 (12:05 +0000)]
Add lost -O3 flag when building inside Chromium
TEST=WebKit layout tests no longer timeout
Review URL: http://codereview.chromium.org/
7582003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8845
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Fri, 5 Aug 2011 12:00:57 +0000 (12:00 +0000)]
Fix DebugEvaluate crash within a catch in a function without local context.
BUG=v8:1586
TEST=mjsunit/regress/regress-1586.js
Review URL: http://codereview.chromium.org/
7491053
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8844
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vitalyr@chromium.org [Fri, 5 Aug 2011 11:32:46 +0000 (11:32 +0000)]
Static state cleanup: add more consts.
R=vegorov@chromium.org
Review URL: http://codereview.chromium.org/
7491052
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8843
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Fri, 5 Aug 2011 11:21:04 +0000 (11:21 +0000)]
Fix bug in scanner.
Checking for end-of-comment truncated to byte before comparing to '*'.
BUG=v8:1546
TEST=mjsunit/regress/regress-1546
Review URL: http://codereview.chromium.org/
7585004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8842
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 5 Aug 2011 10:00:35 +0000 (10:00 +0000)]
Specify stack size for win64 when linking d8.
Review URL: http://codereview.chromium.org/
7574008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8841
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 5 Aug 2011 09:44:30 +0000 (09:44 +0000)]
Make GYP build usable for day-to-day work (second attempt)
- Introduce a global Makefile that triggers GYP-based building
- Some fixes to .gyp[i] files to make everything work
- tools/test-wrapper-gypbuild.py as a temporary solution for easy testing
Original review URL: http://codereview.chromium.org/
7383006/
Review URL: http://codereview.chromium.org/
7550030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8840
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Fri, 5 Aug 2011 09:20:08 +0000 (09:20 +0000)]
Revert "Fix a bug in scope analysis."
This reverts commit revision 8838.
TBR=ricow@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7584005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8839
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Fri, 5 Aug 2011 08:28:11 +0000 (08:28 +0000)]
Fix a bug in scope analysis.
When recompiling code (e.g., when optimizing) we could incorrectly hoist
some function expressions. This leads to incorrect results or a crash. The
root cause was that functions were not correctly categorized as expression
or declaration at parse time.
This requires some extra hoops to prevent the print name "anonymous" for
functions created by 'new Function' from establishing a binding.
R=vegorov@chromium.org,kasperl@chromium.org
BUG=1583
TEST=regress-1583
Review URL: http://codereview.chromium.org/
7572019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8838
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 5 Aug 2011 08:04:47 +0000 (08:04 +0000)]
Fix report printing in test.py script.
R=ricow@chromium.org
Review URL: http://codereview.chromium.org/
7491050
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8837
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Thu, 4 Aug 2011 16:43:20 +0000 (16:43 +0000)]
Revert "tighten invariants of HValue::InferRange"
This change reportedly causes a slowdown or inifinite loop on ARM. Revert
pending investigation.
R=vegorov@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/
7566040
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8834
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00