rafaelw@chromium.org
e78081ca1c
Make Object.freeze/seal/preventExtensions observable
...
Note: spec has been updated here: http://wiki.ecmascript.org/doku.php?id=harmony:observe_spec_changes .
R=rossberg@chromium.org , rossberg
BUG=v8:2975,v8:2941
Review URL: https://codereview.chromium.org/47703003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 12:25:32 +00:00
mstarzinger@chromium.org
5267d7b884
Introduce JSFunction::EnsureHasInitialMap method.
...
This change enforces explicit allocation of the initial map for each
JSFunction to introduce a proper layering between the JSFunction class
and the Heap class. A follow-up change will then handlify the two
functions AllocateInitialMap and AllocateFunctionPrototype.
R=rossberg@chromium.org
BUG=v8:2877
Review URL: https://codereview.chromium.org/32323013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17480 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 12:11:27 +00:00
svenpanne@chromium.org
74ad230a8e
Introduce orps for IA32/X64
...
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/53573004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17479 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 12:04:46 +00:00
ulan@chromium.org
0fd7c2a78a
Add counters to track the maximum amount of memory committed by the heap.
...
BUG=None
R=bmeurer@chromium.org , ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/29203003
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17478 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 11:59:42 +00:00
rafaelw@chromium.org
ada13dfc3f
Remove calls to JSObject::SetLocalPropertyIgnoreAttributesTrampoline within objects.cc
...
This includes handlifing:
-SetHiddenPropertiesHashTable
-ObjectHashSet::Add/Remove
-ObjectHashTable::Put
And splitting the following methods which previously took "allow creation" enum arguments to into side-effect-free getters and GetOrCreate*-handlfied getters.
-GetHash (now GetHash & handlified GetOrCreateHash)
-GetIdentityHash (now GetIdentityHash & handlified GetOrCreateIdentityHash)
-GetHiddenPropertiesHashTable (now GetHiddenPropertiesHashTable & handlified GetOrCreateaHiddenPropertiesHashTable)
BUG=v8:2877
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/48913008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17477 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 11:47:11 +00:00
rafaelw@chromium.org
4a8319c7c6
[Object.observe] Implement implicit notification from performChange
...
R=arv@chromium.org , rossberg@chromium.org , rossberg
BUG=v8:2942
Review URL: https://codereview.chromium.org/36313002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17476 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 11:23:08 +00:00
jkummerow@chromium.org
d0c5614f9d
Proper fix for the issue exposed by r17459
...
This reverts r17462 and instead fixes StubCache::ComputeLoadNonexistent by replacing s/IsGlobalObject/IsJSGlobalObject/ there.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/59103005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17474 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 11:01:31 +00:00
svenpanne@chromium.org
dc8c314084
Make snapshots reproducible.
...
To keep the structure of the serializer more or less untouched, we use
some ingenious Corry-approved(TM) 3-step technology (a.k.a. "hack"):
* Create copies of code objects.
* Wipe out all absolute addresses in these copies.
* Write out the cleaned copies instead of the originals.
In conjunction with --random-seed, our snapshots are reproducible now.
BUG=v8:2885
R=bmeurer@chromium.org , erik.corry@gmail.com
Review URL: https://codereview.chromium.org/54823002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17473 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 10:14:48 +00:00
svenpanne@chromium.org
82b8e23bc1
Introduce raw accessors for type_feedback_info.
...
This pure refactoring is needed for another upcoming CL.
Note that the actual names are still a bit confusing, because this is
still a kind of swiss-army-knife-field. :-/
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/52633003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17472 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 10:05:03 +00:00
mstarzinger@chromium.org
5fce5dc124
Bump iteration count for escape analysis.
...
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/43653005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17471 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 09:58:49 +00:00
mvstanton@chromium.org
ee6e52f292
Remove CreateArrayLiteralShallow, as it's fundamentally the same now as
...
CreateArrayLiteral.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/54333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17470 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 09:54:59 +00:00
svenpanne@chromium.org
bb010f8ad0
Removed RelocInfo::target_object_address() and reconstructed_obj_ptr_.
...
Depends on https://codereview.chromium.org/46583006/ and has similar reasoning behind it.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/50413004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17469 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 09:40:36 +00:00
mstarzinger@chromium.org
8a1d92f5c2
Fix double-boxing issue when materializing captured objects.
...
R=verwaest@chromium.org
TEST=mjsunit/compiler/escape-analysis-representation
Review URL: https://codereview.chromium.org/57783003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17468 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 09:32:39 +00:00
svenpanne@chromium.org
d1de1f9808
Refactored EXTERNAL_REFERENCE handling.
...
Previously, the result of target_reference_address() could only be
read, writing to it would have had an architecture-dependent effect,
e.g. writing into the code on ia32, a no-op on arm, etc.
This refactoring-only CL turns this into a simple getter, making it
impossible to use incorrectly.
More to come...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/46583006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17467 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 09:22:35 +00:00
bmeurer@chromium.org
d3ad5be781
Try to use STMDB/LDMIA instead of LDR/STR sequences whenever possible.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/44313002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17466 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 09:00:00 +00:00
bmeurer@chromium.org
011ca83783
ARM: Use loop to initialize locals when optimizing for size.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/52163002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17465 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 08:58:34 +00:00
bmeurer@chromium.org
537100336c
Do Else() first for JoinContinuation() in IfBuilder.
...
This is required to make sure that environments are correct
for joined continuations.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/52593008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17464 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 08:56:48 +00:00
plind44@gmail.com
b9b2c456b7
MIPS: Handle constants in new space by making macro-assembler smarter.
...
Port r17376 (9af4f51)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/57873004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17463 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 01:31:22 +00:00
jkummerow@chromium.org
0400bc45d9
Restore intended LoadIC behavior for JSBuiltinsObject
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/48343004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17462 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-04 16:39:58 +00:00
jkummerow@chromium.org
2ebfd6e90e
Add missing negative dictionary lookup to NonexistentHandlerFrontend
...
BUG=v8:2980
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/57433003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17459 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-04 14:14:09 +00:00
mstarzinger@chromium.org
4fbc96ff78
Remove dead return path from JSObject::GetHiddenPropertiesHashTable.
...
R=verwaest@chromium.org , rafaelw@chromium.org
TEST=cctest/test-api
Review URL: https://codereview.chromium.org/57783002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17456 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-04 12:00:39 +00:00
plind44@gmail.com
010d68cfd3
MIPS: Fix uint32-to-smi conversion in Lithium.
...
Port r17441 (f1968f4)
BUG=chromium:309623
TEST=mjsunit/regress/regress-crbug-309623
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/49783010
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17451 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 14:32:08 +00:00
machenbach@chromium.org
342305d1da
Prepare push to trunk. Now working on version 3.23.0.
...
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/50943003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17448 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 13:29:35 +00:00
machenbach@chromium.org
3e6044d3f3
[Sheriff] Mark failing test for nacl port.
...
BUG=v8:2978
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/50333005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17445 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 11:51:59 +00:00
machenbach@chromium.org
230b47a63b
[Sheriff] Mark flaky test.
...
BUG=v8:2921
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/54423002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 11:48:31 +00:00
jkummerow@chromium.org
6f27e4b377
Avoid pre-aging when debugger is active
...
BUG=None
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/47023003
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17443 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 11:43:23 +00:00
jkummerow@chromium.org
316271fc35
Fix uint32-to-smi conversion in Lithium
...
BUG=chromium:309623
R=vegorov@google.com , yangguo@chromium.org
Review URL: https://codereview.chromium.org/54393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17441 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 10:18:51 +00:00
machenbach@chromium.org
3cb584c2b4
Add no-variants option to test runner.
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/48883003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17440 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 10:14:02 +00:00
yangguo@chromium.org
3f1a833524
Do not remove HAdd with zero if the other operand is a double.
...
The other operand might be minus zero, and -0 + 0 = +0
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/52173003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-30 10:22:52 +00:00
jkummerow@chromium.org
9e88c23cbf
ia32: Fix comparisons of two constant double operands when exactly one of them is in new space.
...
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/46883008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-29 14:34:07 +00:00
jkummerow@chromium.org
e8a3044f2d
Temporarily allow HistogramTimerScopes to be nested
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/47513015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-29 11:44:04 +00:00
mvstanton@chromium.org
31865699ac
Function ElementsAreSafeToExamine was undefined in release heap verify.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/48963006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-29 07:56:47 +00:00
jkummerow@chromium.org
c377cfaa8e
Prepare push to trunk. Now working on version 3.22.24.
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/49263003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 17:59:13 +00:00
jkummerow@chromium.org
ec50a6f33c
Work around two ASSERTs that we're hitting now that DEBUG is #defined again
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/49433002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17418 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 17:54:43 +00:00
jkummerow@chromium.org
5b5f2e59dc
Return early from BinaryOpIC::Transition when the JS call failed
...
This avoids an ASSERT failure in Chromium net_unittests.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/49103002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17417 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 16:32:56 +00:00
titzer@chromium.org
eb34e1397a
Remove assertion in SetResourceConstraints.
...
BUG=312233
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/48303004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 16:17:43 +00:00
titzer@chromium.org
3399bdd289
Temporarily disable calls to OS::TotalPhysicalMemory to avoid ASSERT when running under the Chrome Sandbox.
...
This CL reverts the behaviour added in r16983 to avoid calling OS::TotalPhysicalMemory
which fails an assert in the Chrome Sandbox. It reverts the default
ResourceConstraints behaviour to that of V8 before r16983 (i.e., baseing these
values purely on hard-coded checks against 64bit/32bit and Android/non-Android.
This will be reverted once http://crbug.com/312241 has been resolved.
BUG=312241
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/48463002
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17415 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 14:54:26 +00:00
svenpanne@chromium.org
19a2e803bb
Introduce andps for IA32/X64
...
replace andpd and pand in Math.abs
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/44153002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17413 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 10:38:40 +00:00
bmeurer@chromium.org
3e7a1c0455
ARM: Replace branch with conditional store in function prologue.
...
Use conditional store to replace the receiver with undefined for
strict mode functions and builtins instead of branching code. This
has similar performance characteristics but saves one branch
instruction per strict mode function.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/48473002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17412 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 10:29:57 +00:00
bmeurer@chromium.org
38e198109f
Remove unused function MoveBytes().
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/24584004
Patch from Bangfu Tao <bangfu.tao@samsung.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17411 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 09:59:15 +00:00
jkummerow@chromium.org
7856f37259
Rename deprecated __attribute__((no_address_safety_analysis)) to __attribute__((no_sanitize_address))
...
BUG=chromium:311283
R=glider@chromium.org
Review URL: https://codereview.chromium.org/48413002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17410 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 09:57:15 +00:00
bmeurer@chromium.org
4c49e4e2b5
Cast const char * to const uint8_t *, which removed a unnecessary version of InternalStringToDouble template.
...
Code size (android arm build for d8):
old d8: 17,479,047 bytes
new d8: 17,445,492 bytes
Total code size saved: 33,555 bytes
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/36903002
Patch from Bangfu Tao <bangfu.tao@samsung.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17409 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 09:39:00 +00:00
mvstanton@chromium.org
93fa1939ce
Generalize AllocationSite field access in HObjectAccess.
...
There are simply becoming too many individual field accessors, and
more are coming.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/43563002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17408 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 09:36:49 +00:00
yangguo@chromium.org
6c2233fbaa
Fix --hydrogen-filter="-".
...
SubVector asserts that the vector length is not 0 and fails.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/43873002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17405 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 09:01:33 +00:00
svenpanne@chromium.org
acb06df0e9
Tune mjsunit/compiler/expression-trees.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/43703002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17404 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 07:24:19 +00:00
svenpanne@chromium.org
ee87c867e9
Tune mjsunit/array-functions-prototype-misc
...
Again, this brings testing times down quite a bit without losing test
coverage.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/44143003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17403 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 07:23:27 +00:00
rafaelw@chromium.org
523851b337
Handlify JSObject::PrepareElementsForSort
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/32523008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 20:42:51 +00:00
fschneider@chromium.org
77b3da380d
Fix bug in nextWeaker function of deltablue benchmark.
...
It does not seem to affect the correctness of the particular
workload it is currently running.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/13994003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17399 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 13:21:46 +00:00
mstarzinger@chromium.org
e7226e3f8a
Simplify test-mark-compact/NoPromotion test.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/42543008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17398 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 13:10:25 +00:00
mvstanton@chromium.org
a85c825bb9
The Elements pointer in a JSObject can have a filler map instead of a
...
valid fixed array, iff a gc occurred while allocating a fixed array as
part of array construction. Heap verification needs protection against
examining the elements object in this case.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/43383004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17397 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 12:26:47 +00:00