jkummerow@chromium.org [Thu, 26 Jul 2012 12:49:08 +0000 (12:49 +0000)]
Always set the callee's context when calling a function from optimized code.
This is necessary even for recursive calls because we're sharing optimized code among closures, which could call each other and have distinct contexts.
BUG=138887
TEST=mjsunit/regress/regress-crbug-138887
Review URL: https://chromiumcodereview.appspot.com/
10834031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12201
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mikhail.naganov@gmail.com [Thu, 26 Jul 2012 10:03:30 +0000 (10:03 +0000)]
Fix path to d8 and properly quote strings so it works with dash(1)
Patch by Sandro Santilli <strk@keybit.net>
Review URL: https://chromiumcodereview.appspot.com/
10825032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12200
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 26 Jul 2012 09:18:09 +0000 (09:18 +0000)]
Fix building with GCC 3.x
R=yangguo@chromium.org
BUG=v8:2016, v8:2017
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10823034
Patch from James Pike <g00gle@chilon.net>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12199
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 26 Jul 2012 08:55:22 +0000 (08:55 +0000)]
Cleaned up Hydrogen function signatures related to property access.
This is a refactoring-only CL and the first one in a series for enabling
inlining of accessors. The naming and argument order has been unified a bit, and
some tests have been pushed to the caller in order to get a simpler
signature. Note that the latter temporarily introduces some code redundancy, but
this will be cleaned up in one of the next CLs.
Review URL: https://chromiumcodereview.appspot.com/
10826028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12198
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 26 Jul 2012 08:42:42 +0000 (08:42 +0000)]
Fix cctests when VFP is disabled.
R=svenpanne@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10820027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12197
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 26 Jul 2012 08:27:20 +0000 (08:27 +0000)]
Limited the size of transition arrays so they never end up in the large object space.
Also renamed SizeOf on DescriptorArray to LengthOf for consistency.
Review URL: https://chromiumcodereview.appspot.com/
10822011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12196
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 25 Jul 2012 16:33:32 +0000 (16:33 +0000)]
Improve API calls that return empty handles.
R=jkummerow@chromium.org
BUG=v8:2245
Review URL: https://chromiumcodereview.appspot.com/
10820014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12195
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 25 Jul 2012 15:26:16 +0000 (15:26 +0000)]
Relax requirement from VFP3 to VFP2 where possible.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10818026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12194
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 25 Jul 2012 15:23:07 +0000 (15:23 +0000)]
Refactor incremental marking to use static visitor.
This is a refactoring only change that switches incremental marking to
use a static object visitor. It also shares the common code between the
non-incremental and the incremental marker. Sharing that would require
semantical changes will be done later.
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10816007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12193
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 25 Jul 2012 14:58:20 +0000 (14:58 +0000)]
Prepare push to trunk. Now working on version 3.12.17.
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10824015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12190
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 25 Jul 2012 14:38:32 +0000 (14:38 +0000)]
MIPS: Optimize Smi keys for KeyedLoads
Port r12156 (
e2874cdf)
Original commit message:
Allows KeyeLoad/KeyedStore operations where the key is a Smi to fold the untagging of the key into the element offset calculation.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10790143
Patch from Akos Palfi <palfia@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12189
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 25 Jul 2012 14:36:38 +0000 (14:36 +0000)]
MIPS: Implements a new API to set a function entry hook for profiling.
Port r12107 (
59ee5c88)
Original commit message:
Exposes a new API; V8::SetFunctionEntryHook.
If a non-NULL function entry hook is set, the code generator(s) will invoke on the entry hook at the very start of each generated function.
Committed: https://code.google.com/p/v8/source/detail?r=12069
Committed: https://code.google.com/p/v8/source/detail?r=12083
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10795021
Patch from Akos Palfi <palfia@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12188
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 25 Jul 2012 14:27:14 +0000 (14:27 +0000)]
Fix static initializer check.
R=jkummerow@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10824013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12187
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 25 Jul 2012 13:51:29 +0000 (13:51 +0000)]
Classify small functions platform-dependently.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10829009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12186
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 25 Jul 2012 11:12:29 +0000 (11:12 +0000)]
In-place trimming of descriptor array when appending callbacks.
Review URL: https://chromiumcodereview.appspot.com/
10830005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12184
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 24 Jul 2012 14:13:02 +0000 (14:13 +0000)]
MIPS: Optimize functions on a second thread.
Port r12148 (
a553c67d)
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10802079
Patch from Akos Palfi <palfia@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12182
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 24 Jul 2012 07:55:08 +0000 (07:55 +0000)]
Prepare push to trunk. Now working on version 3.12.16.
R=jkummerow@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10790138
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12179
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 23 Jul 2012 16:57:22 +0000 (16:57 +0000)]
Android test runner: Make android-sync.sh work on Mac
Review URL: https://chromiumcodereview.appspot.com/
10806063
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12178
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 23 Jul 2012 16:18:25 +0000 (16:18 +0000)]
Fix bootstrapping without snapshot and low GC interval.
R=yangguo@chromium.org
BUG=v8:2249
TEST=mjsunit/regress/regress-2249 (snapshot=off)
Review URL: https://chromiumcodereview.appspot.com/
10818005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12177
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 23 Jul 2012 15:01:25 +0000 (15:01 +0000)]
Reactivate packed array optimizations by default
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10796088
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12176
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 23 Jul 2012 14:55:12 +0000 (14:55 +0000)]
Replace symbol containing "prototype" with heap->prototype_symbol.
Review URL: https://chromiumcodereview.appspot.com/
10817008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12175
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 23 Jul 2012 14:22:46 +0000 (14:22 +0000)]
Improve String::WriteAscii and add PRESERVE_ASCII_NULL option.
The PRESERVE_ASCII_NULL option prevents WriteAscii from converting
\0 to white space.
R=verwaest@chromium.org
BUG=v8:2252
TEST=test-api/StringWrite
Review URL: https://chromiumcodereview.appspot.com/
10810056
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12174
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 23 Jul 2012 13:59:24 +0000 (13:59 +0000)]
Add dependency to HLoadKeyed* instructions to prevent invalid hoisting
BUG=chromium:137768
TEST=test/mjsunit/regress/regress-137768.js
Review URL: https://chromiumcodereview.appspot.com/
10802038
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12173
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 23 Jul 2012 12:02:46 +0000 (12:02 +0000)]
Enable building V8 for Android on Mac
Review URL: https://chromiumcodereview.appspot.com/
10795045
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12172
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 23 Jul 2012 11:34:03 +0000 (11:34 +0000)]
Android test runner: Do not copy files in *.svn folder
Review URL: https://chromiumcodereview.appspot.com/
10815050
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12171
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 23 Jul 2012 11:24:48 +0000 (11:24 +0000)]
Update mozilla test expectations for outdated test.
R=jkummerow@chromium.org
BUG=v8:2240
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10816018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12170
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 23 Jul 2012 10:33:41 +0000 (10:33 +0000)]
Interpret negative hexadecimal literals as NaN.
R=rossberg@chromium.org
BUG=v8:2240
TEST=str-to-num.js
Review URL: https://chromiumcodereview.appspot.com/
10818003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12169
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 23 Jul 2012 09:59:17 +0000 (09:59 +0000)]
Set 'executable' bit on tools/android-build.sh
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12168
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 23 Jul 2012 08:41:53 +0000 (08:41 +0000)]
Fix corner case when transforming dictionary to fast elements.
R=verwaest@chromium.org
BUG=v8:2249
TEST=regress-2249.js
Review URL: https://chromiumcodereview.appspot.com/
10802051
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12167
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 23 Jul 2012 08:38:53 +0000 (08:38 +0000)]
Add assertions to limit register count for VSTM and VLDM.
R=svenpanne@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10807066
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12166
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 20 Jul 2012 14:06:24 +0000 (14:06 +0000)]
Refine object stats for FixedArrays.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10797008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12165
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 20 Jul 2012 11:00:33 +0000 (11:00 +0000)]
Optimize Smi keys for KeyedLoads
Allows KeyeLoad/KeyedStore operations where the key is a Smi to fold the untagging of the key into the element offset calculation.
Review URL: https://chromiumcodereview.appspot.com/
10735020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12156
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 20 Jul 2012 10:03:39 +0000 (10:03 +0000)]
Android test runner: Update mjsunit status
Review URL: https://chromiumcodereview.appspot.com/
10810012
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12155
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 20 Jul 2012 10:00:31 +0000 (10:00 +0000)]
Android test runner: Update cctest status
Review URL: https://chromiumcodereview.appspot.com/
10802030
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12154
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 20 Jul 2012 09:39:27 +0000 (09:39 +0000)]
Cleaned up AST nodes a bit.
* Made AST IDs constant. Making this explicit helps understanding the code.
* Removed a few dead functions.
* Be honest by making node_type() pure virtual.
All these changes have been checked to be performance-neutral.
Review URL: https://chromiumcodereview.appspot.com/
10796058
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12153
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Fri, 20 Jul 2012 08:56:20 +0000 (08:56 +0000)]
Track how much time the compiler thread spends doing useful work.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10804027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12152
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 20 Jul 2012 08:03:46 +0000 (08:03 +0000)]
Add test case for custom error's toString.
R=arv@chromium.org
BUG=
TEST=error-tostring.js
Review URL: https://chromiumcodereview.appspot.com/
10388208
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12151
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 20 Jul 2012 07:24:50 +0000 (07:24 +0000)]
Don't record elements transition slots since it will contain a map.
Additionally removed unused code.
Review URL: https://chromiumcodereview.appspot.com/
10802039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12150
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 20 Jul 2012 07:12:06 +0000 (07:12 +0000)]
Removed dead variable to make GCC 4.6 happy again.
TBR=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10802047
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12149
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Thu, 19 Jul 2012 18:58:23 +0000 (18:58 +0000)]
Optimize functions on a second thread.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10807024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12148
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 19 Jul 2012 14:59:30 +0000 (14:59 +0000)]
Remove LastAdded from the EnumCacheBridge.
Review URL: https://chromiumcodereview.appspot.com/
10806030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12147
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 19 Jul 2012 14:45:19 +0000 (14:45 +0000)]
Moved lastadded from DescriptorArray to Map. Renamed kLastAdded to kEnumCache.
Review URL: https://chromiumcodereview.appspot.com/
10802034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12146
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 19 Jul 2012 14:05:27 +0000 (14:05 +0000)]
Move all Copy* methods from descriptor array into the Copy* versions on the map.
Another step towards moving LastAdded from the DescriptorArray to the Map.
Review URL: https://chromiumcodereview.appspot.com/
10803032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12145
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 19 Jul 2012 10:46:03 +0000 (10:46 +0000)]
Simplify TryInline's signature.
We don't actually need the arguments of the call, just their count. This change
is needed because in an accessor call there is no explicit argument list.
Review URL: https://chromiumcodereview.appspot.com/
10795029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12144
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 19 Jul 2012 10:44:15 +0000 (10:44 +0000)]
Android test runner: Rename "Error" to "ANDROID"
Review URL: https://chromiumcodereview.appspot.com/
10809010
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12143
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 19 Jul 2012 10:36:19 +0000 (10:36 +0000)]
MIPS: Fix mipsel GYP build on Emdebian.
Emdebian's cross compiler identifies itself as
"Target: mipsel-linux-gnu"; modified pattern to
match this compiler too.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10810006
Patch from Akos Palfi <palfia@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12142
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 19 Jul 2012 10:01:52 +0000 (10:01 +0000)]
Append to descriptors over map.
Review URL: https://chromiumcodereview.appspot.com/
10800033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12141
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 19 Jul 2012 09:49:12 +0000 (09:49 +0000)]
Fix compilation for ARMv5TEJ
BUG=
TEST=Compiling for ARMv5TEJ
Review URL: https://chromiumcodereview.appspot.com/
10784013
Patch from Remi Duraffort <remi.duraffort@st.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12140
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Thu, 19 Jul 2012 08:43:00 +0000 (08:43 +0000)]
Add missing operator delete.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10803031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12139
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Thu, 19 Jul 2012 08:32:30 +0000 (08:32 +0000)]
Fix Windows build spam.
BUG=v8:2242
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10797026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12138
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 19 Jul 2012 07:32:58 +0000 (07:32 +0000)]
Don't use alloca.
It leads to compability hell, and the amount of memory we need is bounded,
anyway. Added a few more assertions on the way.
Review URL: https://chromiumcodereview.appspot.com/
10808029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12137
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 18 Jul 2012 15:38:58 +0000 (15:38 +0000)]
Let DescriptorArray::Append insert at proper position, avoiding need for resorting.
Using insertion-sort won't have too much of an overhead for the short arrays for bootstrapping (which are probably snapshot anyway).
CopyAppendCallbackDescriptors was extending and sorting the array in a loop. By using an append that inserts at the right position we do not need to resort in each iteration.
Additionally remove Sort and rename SortUnchecked to Sort. The IsSortedNoDuplicates check is moved into InitializeDescriptor.
Review URL: https://chromiumcodereview.appspot.com/
10808011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12136
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 18 Jul 2012 15:05:04 +0000 (15:05 +0000)]
Push rdi instead of rsi when probing for CPU features.
TBR=svenpanne@chromium.org
BUG=v8:2238
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10806013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12135
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Wed, 18 Jul 2012 14:15:02 +0000 (14:15 +0000)]
The deferred handes list belongs to the Isolate and not to the
HandleScopeImplementer (since it isn't something specific to a
particular thread executing on an Isolate). This patch ensures correct
traversal of the handles when when multiple compilations are queued
up.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10778036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12134
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 18 Jul 2012 14:00:58 +0000 (14:00 +0000)]
Removed CopyAppendForeignDescriptor.
Use descriptor array preallocation + appending instead.
Review URL: https://chromiumcodereview.appspot.com/
10782033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12133
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 18 Jul 2012 13:50:19 +0000 (13:50 +0000)]
MIPS: Fix transcendental cache on ARM in optimized code.
Port r12086 (
84066033)
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10782023
Patch from Akos Palfi <palfia@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12132
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 18 Jul 2012 13:39:53 +0000 (13:39 +0000)]
Insert missing write barrier in sliced string allocation.
BUG=v8:2237
TEST=test-heap/Regress2237
Review URL: https://chromiumcodereview.appspot.com/
10781033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12127
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 18 Jul 2012 13:02:27 +0000 (13:02 +0000)]
Restore rsi on x64 when probing for CPU features.
BUG=v8:2238
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10801012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12126
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 18 Jul 2012 12:40:13 +0000 (12:40 +0000)]
Android test runner: Sync missing JS files
Review URL: https://chromiumcodereview.appspot.com/
10801009
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12125
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 18 Jul 2012 12:27:29 +0000 (12:27 +0000)]
Expose counters in javascript.
R=rossberg
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10803008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12124
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 18 Jul 2012 11:55:39 +0000 (11:55 +0000)]
Make message pass in Android testing
Review URL: https://chromiumcodereview.appspot.com/
10805006
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12123
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 18 Jul 2012 11:43:44 +0000 (11:43 +0000)]
Build V8 for Android IA
Review URL: https://chromiumcodereview.appspot.com/
10778033
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12122
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Wed, 18 Jul 2012 11:40:39 +0000 (11:40 +0000)]
HConstant::PrintDataTo() uses wrong format string
Review URL: https://chromiumcodereview.appspot.com/
10783031
Patch from Zheng Liu <zheng.z.liu@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12121
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 18 Jul 2012 11:22:46 +0000 (11:22 +0000)]
Add --trace-parse flag to parser.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10802012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12120
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 18 Jul 2012 11:21:12 +0000 (11:21 +0000)]
Prepare push to trunk. Now working on version 3.12.15.
R=danno@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10802013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12117
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 18 Jul 2012 10:41:03 +0000 (10:41 +0000)]
Deactivate optimization of packed arrays.
It breaks the San Angeles WebGL demo.
BUG=http://code.google.com/p/chromium/issues/detail?id=137768
TEST=https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/demos/google/san-angeles/index.html
Review URL: https://chromiumcodereview.appspot.com/
10806008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12116
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 18 Jul 2012 09:20:57 +0000 (09:20 +0000)]
When following an accessor transition for an already existing accessor, don't load the last added descriptor but the same descriptor as we already found previously.
BUG=137689
TEST=test/mjsunit/regress/regress-crbug-137689.js
Review URL: https://chromiumcodereview.appspot.com/
10808005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12115
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Tue, 17 Jul 2012 16:53:34 +0000 (16:53 +0000)]
Make CompilationInfo::~CompilationInfo() virtual so that CompilationInfoWithZone destructs correctly.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10789039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12114
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Tue, 17 Jul 2012 16:51:19 +0000 (16:51 +0000)]
Fix Win64 build by adding a static_cast.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10784040
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12113
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Tue, 17 Jul 2012 16:24:40 +0000 (16:24 +0000)]
Introduce an OptimizingCompiler class, responsible for maintaining the state needed to run Crankshaft.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10700188
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12112
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 17 Jul 2012 16:13:24 +0000 (16:13 +0000)]
Prepare push to trunk. Now working on version 3.12.14.
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10792035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12109
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 17 Jul 2012 16:00:00 +0000 (16:00 +0000)]
Fix presubmit failure in r12107.
Review URL: https://chromiumcodereview.appspot.com/
10780035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12108
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 17 Jul 2012 15:18:15 +0000 (15:18 +0000)]
Implements a new API to set a function entry hook for profiling.
Exposes a new API; V8::SetFunctionEntryHook.
If a non-NULL function entry hook is set, the code generator(s) will invoke on the entry hook at the very start of each generated function.
Committed: https://code.google.com/p/v8/source/detail?r=12069
Committed: https://code.google.com/p/v8/source/detail?r=12083
Review URL: https://chromiumcodereview.appspot.com/
10706002
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12107
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 17 Jul 2012 14:04:41 +0000 (14:04 +0000)]
Fix Win64 build
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10790030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12106
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 17 Jul 2012 13:50:19 +0000 (13:50 +0000)]
Grouping all map creation code.
- Now tunnel all descriptor changes through methods on the map
- Renamed CopyDropTransitions to regular Copy since we always "drop transitions" on copy anyway.
- Merged and moved elements transition map creation.
Review URL: https://chromiumcodereview.appspot.com/
10780031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12105
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 17 Jul 2012 11:58:49 +0000 (11:58 +0000)]
Track counts/sizes of CODE sub types with --track-gc-object-stats
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10792014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12104
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 17 Jul 2012 11:31:05 +0000 (11:31 +0000)]
Remove obsolete ParserApi::PartialPreParse method.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10787036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12103
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 17 Jul 2012 10:27:18 +0000 (10:27 +0000)]
Always fix up the enumeration indices when turning to fast mode.
Review URL: https://chromiumcodereview.appspot.com/
10782026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12102
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 16 Jul 2012 16:22:28 +0000 (16:22 +0000)]
Make android.check work
Review URL: https://chromiumcodereview.appspot.com/
10779011
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12101
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 16 Jul 2012 15:26:10 +0000 (15:26 +0000)]
Remove LookupTransitionOrDescriptor altogether.
Review URL: https://chromiumcodereview.appspot.com/
10778011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12100
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 16 Jul 2012 15:17:00 +0000 (15:17 +0000)]
Add histogram for total heap fragmentation, don't report fragmentation for new space, and report fragmentation, not usage
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/
10778009
Patch from Jochen Eisinger <jochen@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12099
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 16 Jul 2012 14:47:28 +0000 (14:47 +0000)]
Removing LookupTransition from LookupRealNamedProperty and related utility functions.
Callsites now have to manually lookup transitions if required. This
avoids unnecessary overhead of looking up transitions when we don't need
them. This also allows us to use IsFound() in many places where
IsProperty() was required previously.
Review URL: https://chromiumcodereview.appspot.com/
10779012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12098
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 16 Jul 2012 14:02:50 +0000 (14:02 +0000)]
Removed transitions from the accessor pair descriptors.
AccessorPair related transitions are now also stored as single map links, simplifying the code that handles transitions. AccessorPairs can now be shared between descriptor arrays, since they can only be mutated after another transition anyway; during which the pair is copied before writing.
Review URL: https://chromiumcodereview.appspot.com/
10784014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12097
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 16 Jul 2012 13:38:17 +0000 (13:38 +0000)]
Fix missing tagging of stack value in finally block.
R=yangguo@chromium.org
BUG=chromium:137496
TEST=cctest/test-api/Regress137496
Review URL: https://chromiumcodereview.appspot.com/
10787017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12096
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Mon, 16 Jul 2012 13:00:57 +0000 (13:00 +0000)]
Fix off-by-one-pointer error in an ASSERT inside DeferredHandles::Iterate.
This will crash v8 in debug mode if the compilation prologue allocates
an exact multiple of kHandleBlockSize handles.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10689191
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12095
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 16 Jul 2012 12:34:34 +0000 (12:34 +0000)]
Fix compilation for ARM/uClibc
BUG=
TEST=Compile for ARM using uClibc
Review URL: https://chromiumcodereview.appspot.com/
10784012
Patch from Remi Duraffort <remi.duraffort@st.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12094
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 16 Jul 2012 12:22:46 +0000 (12:22 +0000)]
Maintain the invariant that all HGraphBuilder::VisitFoo methods return void.
Additionally, this enables the use of a CHECK_ALIVE macro instead of
copy-n-paste code at one place.
This CL is part of a series of several yak-shaving CLs to prepare the inlining
of JavaScript accessors.
Review URL: https://chromiumcodereview.appspot.com/
10783017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12093
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 16 Jul 2012 11:24:55 +0000 (11:24 +0000)]
Prepare push to trunk. Now working on version 3.12.13.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10779009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12090
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 16 Jul 2012 11:00:44 +0000 (11:00 +0000)]
Add an option to the tickprocessor to specify the directory for lib lookup
This is usefull when generating a profile on one architecture and analyzing it
on another architecture or system version.
Review URL: https://chromiumcodereview.appspot.com/
10704128
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12089
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 16 Jul 2012 09:53:32 +0000 (09:53 +0000)]
Fix ICs for slow objects with native accessor.
This prevents creation of LoadICs or StoreICs for native callbacks on
objects in dictionary mode. Those ICs fail if the accessor is installed
on the receiver itself and also lead to bogus type feedback.
R=danno@chromium.org
BUG=chromium:137002
TEST=test/test-api/Regress137002[a,b]
Review URL: https://chromiumcodereview.appspot.com/
10781011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12088
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 16 Jul 2012 09:49:00 +0000 (09:49 +0000)]
Make it clear that HInstruction's position is a write-once variable.
Review URL: https://chromiumcodereview.appspot.com/
10782010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12087
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 16 Jul 2012 09:44:59 +0000 (09:44 +0000)]
Fix transcendental cache on ARM in optimized code.
R=jkummerow@chromium.org
BUG=v8:2234
TEST=regress-2234.js
Review URL: https://chromiumcodereview.appspot.com/
10695205
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12086
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 16 Jul 2012 09:39:52 +0000 (09:39 +0000)]
Fix Win64 build breakage in r12082.
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10704224
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12085
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 13 Jul 2012 16:33:27 +0000 (16:33 +0000)]
Revert 12083: Implements a new API to set a function entry hook for profiling.
TBR=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
10695206
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12084
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 13 Jul 2012 16:18:37 +0000 (16:18 +0000)]
Implements a new API to set a function entry hook for profiling.
Exposes a new API; V8::SetFunctionEntryHook.
If a non-NULL function entry hook is set, the code generator(s) will invoke on the entry hook at the very start of each generated function.
Committed: https://code.google.com/p/v8/source/detail?r=12069
Review URL: https://chromiumcodereview.appspot.com/
10706002
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12083
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 13 Jul 2012 12:22:09 +0000 (12:22 +0000)]
Add counters that automatically track object sizes and counts.
Review URL: https://chromiumcodereview.appspot.com/
10702168
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12082
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 13 Jul 2012 12:12:09 +0000 (12:12 +0000)]
Factor out a Histogram class from HistogramTimer, and use it to measure external fragmentation
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/
10695056
Patch from Jochen Eisinger <jochen@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12081
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sanjoy@chromium.org [Fri, 13 Jul 2012 12:05:29 +0000 (12:05 +0000)]
MIPS: Defer creating Handles for HConstants to the code generation phase.
Port r12048 (
b4b20305)
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10692193
Patch from Akos Palfi <palfia@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12080
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 13 Jul 2012 09:37:03 +0000 (09:37 +0000)]
Handle setters on the prototype chain efficiently by default.
Note that changes on the prototype chain should already be handled by
StubCompiler::CheckPrototypes, if not, it is a bug there and not in
LookupForWrite. Furthermore, neither test262 nor WebKit layout tests hint at a
compability issue, so it should be safe to remove a redundant check.
The good point about this CL: It improves Box2D's performance by 22%.
Review URL: https://chromiumcodereview.appspot.com/
10695197
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12079
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 13 Jul 2012 09:29:43 +0000 (09:29 +0000)]
Incorporate constness into inferred interfaces
(in preparation for handling imports).
R=svenpanne@chromium.org
BUG=v8:1569
TEST=
Review URL: https://chromiumcodereview.appspot.com/
10698167
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12078
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00