marja@chromium.org [Tue, 15 Apr 2014 14:48:21 +0000 (14:48 +0000)]
Refactoring: HashMap: provide a pointer match function, so users don't need to.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
239133002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20773
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 15 Apr 2014 14:20:59 +0000 (14:20 +0000)]
Handlifying clients of StringTable, step 1.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
239113002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20772
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Tue, 15 Apr 2014 14:03:25 +0000 (14:03 +0000)]
ARM64: Access has_pending_message_ correctly.
This fixes accesses in ARM and ARM64; the field is a bool, with size 1,
but we were accessing it with pointer-sized loads and stores.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
230553004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20771
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 13:56:51 +0000 (13:56 +0000)]
Fix MUST_USE_RESULT warning.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
239173002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20770
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 13:42:41 +0000 (13:42 +0000)]
Use a wrapper for copying object.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
238113003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20769
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 13:37:15 +0000 (13:37 +0000)]
Handlify BasicJsonStringifier.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
238273005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20768
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 15 Apr 2014 13:25:17 +0000 (13:25 +0000)]
Reland r20652 "Handlify and convert string.length to new API-style accessor."
BUG=
R=dcarney@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
231973004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20767
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 15 Apr 2014 12:52:41 +0000 (12:52 +0000)]
Fix bogus call to Object.hasOwnProperty in Array builtin.
R=mvstanton@chromium.org
TEST=mjsunit/regress/regress-builtinbust-5
Review URL: https://codereview.chromium.org/
239033002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20766
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 12:11:39 +0000 (12:11 +0000)]
Handlify JSObject::FastPropertyAt.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
238583004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20765
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 15 Apr 2014 12:05:45 +0000 (12:05 +0000)]
Reset change log and version to current trunk.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
238993002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20764
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 15 Apr 2014 12:00:53 +0000 (12:00 +0000)]
Let revision script add commit dates.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
238983002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20763
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 15 Apr 2014 11:51:34 +0000 (11:51 +0000)]
Function allocators, Heap::ReinitializeJSGlobalProxy() and Heap::ReinitializeJSReceiver() handlified. Factory::New<>() added.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
237093006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20762
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 11:16:02 +0000 (11:16 +0000)]
Remove direct calls to number-related allocators from runtime.cc.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
238543004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20761
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 10:59:38 +0000 (10:59 +0000)]
Remove some direct uses of heap allocators from runtime.cc
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
238273006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20760
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 15 Apr 2014 10:45:34 +0000 (10:45 +0000)]
Removed EnterIsolateIfNeeded and a soon-to-be-useless assertion.
BUG=359977
LOG=y
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
238773003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20759
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 15 Apr 2014 10:37:12 +0000 (10:37 +0000)]
First round of runtime.cc handlification.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
238933002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20758
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 10:29:56 +0000 (10:29 +0000)]
Handlify PrepareSlowElementsForSort and JSArrayUpdateLengthFromIndex.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
238713003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20757
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 15 Apr 2014 10:14:50 +0000 (10:14 +0000)]
Handlify AddDependentCode(), AddDependentCompilationInfo() and AddDependentIC().
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
236193014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20756
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Tue, 15 Apr 2014 09:58:09 +0000 (09:58 +0000)]
ARM: Do not set FPSCR when converting to clamped uint8
Setting the FPSCR flags is expensive on some CPUs. Get rid of repeated
setting of the FPSCR by relying on the correct default flags being set
when doing uint8 clamping. Also use vcvt_u32_f64 instead of vcvt_s32_f64,
which enables removing the check against zero (vcvt_u32_f64 will clamp to
zero).
To be on the safe side, add asserts to check that the VFP rounding mode
flags are set to default as expected.
This increases performance of a hot loop repeatedly setting
Uint8ClampedArray values on some CPUs by as much as a factor of 12.
BUG=v8:3253
LOG=N
R=jacob.bramley@arm.com, rmcilroy@chromium.org, ulan@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=20676
Review URL: https://codereview.chromium.org/
230473005
Patch from Olli Etuaho <oetuaho@nvidia.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20755
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 15 Apr 2014 08:59:51 +0000 (08:59 +0000)]
Bump kMaxFastProperties (non-keyed assignments) to 128.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
238683004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20754
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 15 Apr 2014 08:30:42 +0000 (08:30 +0000)]
remove some isolate::current uses from api.cc
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
238843002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20753
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Tue, 15 Apr 2014 08:29:24 +0000 (08:29 +0000)]
Refactor ParseFunctionLiteral.
It was a pretty monstrous 500 line function.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
237243003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20752
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 15 Apr 2014 08:26:26 +0000 (08:26 +0000)]
Reland r20692 "Check stack limit in ArgumentAdaptorTrampoline."
BUG=353058
LOG=N
TEST=mjsunit/regress/regress-353058
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
236633006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20751
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 15 Apr 2014 08:25:42 +0000 (08:25 +0000)]
Fix bogus Object.isSealed check in some Array builtins.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
237253002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20750
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 08:15:33 +0000 (08:15 +0000)]
Handlify TypedArray setters.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
235923013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20749
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 07:56:00 +0000 (07:56 +0000)]
Remove assertion from callers of TryCall.
R=ishell@chromium.org
BUG=363280
LOG=N
Review URL: https://codereview.chromium.org/
238753003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20748
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 15 Apr 2014 07:47:33 +0000 (07:47 +0000)]
Removed GetDefaultIsolate{Debugger,ForLocking,StackGuard}.
Some first steps towards removing the default Isolate. Fixed argument
order on the way, incl. temporary helpers.
BUG=359977
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
238803002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20747
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 15 Apr 2014 07:36:47 +0000 (07:36 +0000)]
Reland "Track field types.".
This is an initial step towards tracking the exact types instead of just
the representations of fields. It adds support to track up to one map of
heap object field values, eliminating various map checks on values
loaded from such fields, at the cost of making stores to such fields
slightly more expensive.
Issues with transitioning stores and fast object literals in Crankshaft
fixed.
TEST=mjsunit/field-type-tracking
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
238773002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20746
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 15 Apr 2014 06:54:56 +0000 (06:54 +0000)]
Reland "Handlify GetDeclaredAccessorProperty."
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
236613006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20745
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Mon, 14 Apr 2014 20:52:20 +0000 (20:52 +0000)]
Remove unnecessary %UnwrapGlobalProxy calls from object-observe.js
The intent of these calls was to properly key the WeakMap get/set calls
on the underlying global object, not the proxy, since that is the object
actually being observed. But unwrapping at this layer is unnecessary
since GetIdentityHash will already do the unwrapping (via its call to
GetHiddenProperty).
Also remove the runtime function itself, as these were the only callers,
and remove the now-redundant IS_SPEC_OBJECT() checks from object-observe.js's
MapWrapper type.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
234143002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20740
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 19:38:29 +0000 (19:38 +0000)]
Reland "Handlify DebugLookupResultValue."
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
237013003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20739
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 19:37:51 +0000 (19:37 +0000)]
Reland "Handlify Runtime::InitializeIntrinsicFunctionNames."
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
236823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20738
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 19:34:32 +0000 (19:34 +0000)]
Export [Dis]allowJavascriptExecutionScope
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
236833009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20737
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 14 Apr 2014 16:21:38 +0000 (16:21 +0000)]
Initial steps for moving code onto Map
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
237143004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20736
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 14 Apr 2014 16:05:19 +0000 (16:05 +0000)]
Handlify Heap::AllocateJSArrayStorage and friends.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
236983002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20735
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 14 Apr 2014 15:56:57 +0000 (15:56 +0000)]
Reland "HashTable::Shrink() handlified and derived template parameter added to HashTable hierarchy."
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
227423004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20734
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 14 Apr 2014 15:35:36 +0000 (15:35 +0000)]
Re-reland "More tests for Union & Intersect"
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
237143002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20733
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 14:34:37 +0000 (14:34 +0000)]
Revert "Handlify DebugLookupResultValue."
This reverts r20729.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
237093003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20732
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 14:31:38 +0000 (14:31 +0000)]
Revert "Handlify GetDeclaredAccessorProperty."
This reverts r20721.
TBR=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
234623004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20731
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 14:03:20 +0000 (14:03 +0000)]
Allow allocation and GC in access check callbacks.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
234913003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20730
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 14:00:35 +0000 (14:00 +0000)]
Handlify DebugLookupResultValue.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
236683003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20729
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 14 Apr 2014 13:52:41 +0000 (13:52 +0000)]
Don't run tests that rely on compaction when compaction is turned off.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
236203010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20728
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 14 Apr 2014 13:38:16 +0000 (13:38 +0000)]
Clean up default-platform gyp defines
The files that are excluded do not exist at that location, so the rule
is not effective.
We'll first want to move the platform stuff into a separate library, so
I'm just removing those lines for now
BUG=v8:3015
R=dcarney@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
237053002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20727
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 14 Apr 2014 13:25:16 +0000 (13:25 +0000)]
Revert "Reland "HashTable::Shrink() handlified and derived template parameter added to HashTable hierarchy.""
This reverts r20724.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
237043002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20726
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Mon, 14 Apr 2014 12:50:24 +0000 (12:50 +0000)]
Fix initial FPSCR state in ARM simulator
Rounding mode should be round-to-nearest by default, and NaN mode bit
should be 0, like in a real ARM system.
BUG=3253
LOG=N
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/
235893005
Patch from Olli Etuaho <oetuaho@nvidia.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20725
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 14 Apr 2014 12:50:04 +0000 (12:50 +0000)]
Reland "HashTable::Shrink() handlified and derived template parameter added to HashTable hierarchy."
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
235643002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20724
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 14 Apr 2014 11:58:18 +0000 (11:58 +0000)]
Fix result of LCodeGen::DoWrapReceiver for strict functions and builtins.
BUG=362128
LOG=Y
TEST=mjsunit/regress/regress-362128
R=jacob.bramley@arm.com
Review URL: https://codereview.chromium.org/
226363007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20723
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 11:46:35 +0000 (11:46 +0000)]
Handlify AddToOptimizedCodeMap.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
236963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20722
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 11:46:02 +0000 (11:46 +0000)]
Handlify GetDeclaredAccessorProperty.
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
236943002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20721
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 14 Apr 2014 11:44:13 +0000 (11:44 +0000)]
Handlification in ic.cc
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
235453010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20720
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 11:43:40 +0000 (11:43 +0000)]
Revert "Handlify Runtime::InitializeIntrinsicFunctionNames."
This reverts r20718.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
236343005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20719
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 11:32:12 +0000 (11:32 +0000)]
Handlify Runtime::InitializeIntrinsicFunctionNames.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
236133005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20718
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 14 Apr 2014 11:24:40 +0000 (11:24 +0000)]
Try to switch Array builtins into strict mode.
R=rossberg@chromium.org
TEST=mjsunit,test262,webkit
Review URL: https://codereview.chromium.org/
233083003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20717
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 14 Apr 2014 11:19:37 +0000 (11:19 +0000)]
Clean up the public interface of Map.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
234573005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20716
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Mon, 14 Apr 2014 11:08:14 +0000 (11:08 +0000)]
ARM64: Avoid iterating through all unresolved branch infos when many are pending.
Instead, inspect the label chain and delete pending information for every branch
in the chain.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
227043010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20715
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Mon, 14 Apr 2014 11:04:46 +0000 (11:04 +0000)]
ARM64: Fix EnsureSpace to not emit pools.
The EnsureSpace scope must not trigger any code emission, so it should only grow
the buffer, and not check for pools.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
230223005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20714
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 14 Apr 2014 10:32:00 +0000 (10:32 +0000)]
Make V8 releases script add useful links.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
227303005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20713
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 14 Apr 2014 09:46:56 +0000 (09:46 +0000)]
Revert "Reland "More tests for Union & Intersect""
Need to reproduce wrong result only occurring with ASAN.
TBR=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
236873002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20712
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 09:19:09 +0000 (09:19 +0000)]
Handlify Object::ToObject.
R=bmeurer@chromium.org, mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
235943007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20711
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 14 Apr 2014 08:58:00 +0000 (08:58 +0000)]
Some tests and simplified TransitionArray copying
Tests for verifying that we deal correctly with shrinking transition
arrays while allocating a copy of one.
Also, we can rely on a transition array only shrinking and not
disappearing during gc while copying one.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
232883003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20710
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 14 Apr 2014 08:49:23 +0000 (08:49 +0000)]
Parser cleanup: PreParser doesn't need to produce symbol data any more.
State of the art:
- Chromium doesn't do a separate preparsing phase any more.
- We start parsing with Parser, and when it sees a lazy function, it falls back
to PreParser for that function.
- The symbol data should contain symbols which are *outside* lazy functions.
- So Parser should always produce symbol data, and PreParser should never.
- Because it's this simple now, we don't need to keep track of "should
produce symbol data" (i.e., whether we're inside a lazy func or not).
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
222123003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20707
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 14 Apr 2014 08:46:39 +0000 (08:46 +0000)]
Reland "More tests for Union & Intersect"
Fixes size approximation in Intersect. Also lowers the number of fuzzed types in test, to address time-outs.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
226523004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20706
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 14 Apr 2014 08:27:00 +0000 (08:27 +0000)]
Allow GetScriptNameOrSourceURL to be called with exception pending.
R=jarin@chromium.org, ishell@chromium.org
Review URL: https://codereview.chromium.org/
235943006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20705
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 14 Apr 2014 08:24:15 +0000 (08:24 +0000)]
Revert "Track field types."
Revert r20701.
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
236843002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20704
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 14 Apr 2014 07:35:46 +0000 (07:35 +0000)]
Fail the compilation if the cached data is invalid.
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
234953002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20703
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 14 Apr 2014 06:55:42 +0000 (06:55 +0000)]
Remove ConfigureDefaults version that does not take the amount of virtual mem
R=dcarney@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
230553003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20702
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 14 Apr 2014 06:29:15 +0000 (06:29 +0000)]
Track field types.
This is an initial step towards tracking the exact types instead of just the representations of fields. It adds support to track up to one map of heap object field values, eliminating various map checks on values loaded from such fields, at the cost of making stores to such fields slightly more expensive.
TEST=mjsunit/field-type-tracking
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
167303005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20701
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Fri, 11 Apr 2014 17:55:52 +0000 (17:55 +0000)]
Revert "HashTable::Shrink() handlified and derived template parameter added to HashTable hierarchy."
This reverts commit r20697 for breaking ASAN build.
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
235353003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20698
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Fri, 11 Apr 2014 17:44:58 +0000 (17:44 +0000)]
HashTable::Shrink() handlified and derived template parameter added to HashTable hierarchy.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
234663004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20697
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 11 Apr 2014 17:03:35 +0000 (17:03 +0000)]
Skip mjsunit/regress/regress-353058 for ASAN and ARM until r20692 is relanded.
TBR=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
232463005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20696
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 11 Apr 2014 15:59:12 +0000 (15:59 +0000)]
Revert r20692 "Check stack limit in ArgumentAdaptorTrampoline."
Reason: mjsunit/regress/regress-353058 failure on GC-stress.
TBR=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
234813004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20695
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 11 Apr 2014 14:25:00 +0000 (14:25 +0000)]
Gcstress bug fix: Transition arrays may get smaller during gc.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
234873004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20694
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 11 Apr 2014 13:48:52 +0000 (13:48 +0000)]
Handlify Map::RawCopy
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
235183002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20693
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 11 Apr 2014 13:39:19 +0000 (13:39 +0000)]
Check stack limit in ArgumentAdaptorTrampoline.
BUG=353058
LOG=N
TEST=mjsunit/regress/regress-353058
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
215853005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20692
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 11 Apr 2014 13:16:36 +0000 (13:16 +0000)]
Do not call user defined getter of Error.stackTraceLimit.
Handlify GetNormalizedProperty.
BUG=360733
LOG=N
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
233243005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20691
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 11 Apr 2014 13:07:10 +0000 (13:07 +0000)]
Inline immutable property loads
When a non-configurable, non-writable field is
read from a constant holder, the load is
eliminated and replaced with the direct value
of the field
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
232853002
Patch from Petka Antonov <p.antonov@partner.samsung.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20690
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 11 Apr 2014 12:47:34 +0000 (12:47 +0000)]
Reland "Handlify GetProperty."
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
235083002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20689
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 11 Apr 2014 12:40:26 +0000 (12:40 +0000)]
MIPS: Implement handlified String::Equals and Name::Equals.
Port r20669 (
29a6ec29)
Note:
This commit fixes a typo.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
234993003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20688
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Fri, 11 Apr 2014 12:33:20 +0000 (12:33 +0000)]
Revert "More tests for Union & Intersect"
This reverts r20684.
TBR=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
235133002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20687
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 11 Apr 2014 12:13:53 +0000 (12:13 +0000)]
Handlify Map::CopyDropDescriptors().
* And contain knowledge better in TransitionArray and DescriptorArray (for example WhitenessWitness is now private to DescriptorArray).
* And remove some factory methods
* And handlify some other things.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
234783002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20686
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 11 Apr 2014 11:56:54 +0000 (11:56 +0000)]
Revert "Handlify GetProperty."
This reverts r20682.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
234893003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20685
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 11 Apr 2014 11:53:35 +0000 (11:53 +0000)]
More tests for Union & Intersect
Some fixes of corner cases on the way
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
230923005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20684
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 11 Apr 2014 11:44:49 +0000 (11:44 +0000)]
Remove the PreCompile API and ScriptData.
The new compilation API (ScriptCompiler::Compile) can produce the same data, so
the separate precompilation phase is not needed. ScriptData is replaced by
ScriptCompiler::CachedData.
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
225753004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20683
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 11 Apr 2014 11:26:22 +0000 (11:26 +0000)]
Handlify GetProperty.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
233233004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20682
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 11 Apr 2014 11:09:49 +0000 (11:09 +0000)]
Remove MUST_USE_RESULT for Execution::TryCall.
TBR=ishell@chromium.org
Review URL: https://codereview.chromium.org/
235003002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20681
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 11 Apr 2014 10:41:09 +0000 (10:41 +0000)]
Return MaybeHandle from Invoke.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
231883007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20680
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 11 Apr 2014 10:36:09 +0000 (10:36 +0000)]
Make maps in monomorphic IC stubs weak.
Maps in monomorphic Load, KeyedLoad, Store, KeyedStore, and CompareNil IC
stubs are treated as weak references by the marking visitor.
During generation of an IC stub with a weak map, the stub is appended to the
dependent code array of the map. When the map dies, all stubs in its dependent
code array are invalidated by setting embedded maps to undefined.
BUG=v8:2073
LOG=Y
TEST=cctest/test-heap/WeakMapInMonomorphic*IC
R=mstarzinger@chromium.org, verwaest@chromium.org
Review URL: https://codereview.chromium.org/
188783003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20679
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Fri, 11 Apr 2014 10:04:25 +0000 (10:04 +0000)]
Revert "ARM: Do not set FPSCR when converting to clamped uint8"
This reverts commit r20676.
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/
233013005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20678
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 11 Apr 2014 09:24:35 +0000 (09:24 +0000)]
Inline TypeImpl::NowContains().
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
234743003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20677
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Fri, 11 Apr 2014 09:22:14 +0000 (09:22 +0000)]
ARM: Do not set FPSCR when converting to clamped uint8
Setting the FPSCR flags is expensive on some CPUs. Get rid of repeated
setting of the FPSCR by relying on the correct default flags being set
when doing uint8 clamping. Also use vcvt_u32_f64 instead of vcvt_s32_f64,
which enables removing the check against zero (vcvt_u32_f64 will clamp to
zero).
To be on the safe side, add asserts to check that the VFP rounding mode
flags are set to default as expected.
This increases performance of a hot loop repeatedly setting
Uint8ClampedArray values on some CPUs by as much as a factor of 12.
BUG=v8:3253
LOG=N
R=jacob.bramley@arm.com, rmcilroy@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
230473005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20676
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 11 Apr 2014 09:20:56 +0000 (09:20 +0000)]
Unify mechanism to find trailing AllocationMementos
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
234703003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20675
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 11 Apr 2014 09:17:18 +0000 (09:17 +0000)]
Make sure that ranges are not accessed after range analysis. Remove HValue::PrintRangeTo.
The ranges are simply wrong after range analysis, and we should only rely on computed flags.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
234583005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20674
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 11 Apr 2014 08:55:18 +0000 (08:55 +0000)]
Add rmcilroy@chromium.org to src/OWNERS.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
234793002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20673
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 11 Apr 2014 08:31:10 +0000 (08:31 +0000)]
Remove remnant from deferred error formatting on GC.
Deferred error formatting on GC was a failed experiment. It has been
removed, except for this part. See r13371.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
233163004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20672
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 11 Apr 2014 07:40:48 +0000 (07:40 +0000)]
Fix chromium ranges output in v8 releases script.
Add space after commas for auto line break in spreadsheets.
Add default empty strings to avoid undefined values in spreadsheets.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
233343002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20671
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 11 Apr 2014 07:27:25 +0000 (07:27 +0000)]
Implement handlified String::Equals and Name::Equals.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
225823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20669
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 11 Apr 2014 07:15:17 +0000 (07:15 +0000)]
Drop unused name parameter of SetPropertyToField().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
233673007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20667
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Fri, 11 Apr 2014 06:45:24 +0000 (06:45 +0000)]
Avoid type assertion on object comparison in Hydrogen - the comparison is unreachable because of previous checks.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
232053004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20666
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 11 Apr 2014 06:40:36 +0000 (06:40 +0000)]
Use the right kind of guard for debug code.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
232883002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20665
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 11 Apr 2014 06:32:06 +0000 (06:32 +0000)]
x64: Make sure that the upper half of a 64bit register contains 0 for int32 values.
BUG=360611
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
225393005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20664
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00