Commit Graph

15186 Commits

Author SHA1 Message Date
verwaest@chromium.org
abace56b29 Use MigrateToMap instead of set_map to update the map of a JSObject.
This is necessary to guarantee correct representation usage.
Some unhandlified code still needs to be handlified before we can push this
through fully.

BUG=
R=ishell@chromium.org

Review URL: https://codereview.chromium.org/194783002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19844 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 13:18:27 +00:00
jkummerow@chromium.org
62c3c556cb Fix nosnap serialization tests
R=dslomov@google.com

Review URL: https://codereview.chromium.org/196953003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 13:13:13 +00:00
dslomov@chromium.org
3687c05cd2 Prepare push to trunk. Now working on version 3.25.9.
R=machenbach@chromium.org
TBR=machenbach@chromium.org

Review URL: https://codereview.chromium.org/197293002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 13:09:00 +00:00
dslomov@chromium.org
79e817aac4 Revert "Implement PersistentValueMap, a map that stores UniquePersistent values."
and "Win64 fix for r19833."

This reverts commits r19833 and r19837 for breaking Windows tests
(test-api/PersistentValueMap).

TBR=vogelheim@chromium.org,dcarney@chromium.org

Review URL: https://codereview.chromium.org/197173002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 11:40:40 +00:00
machenbach@chromium.org
7c778096b1 Suppress error handling for test coverage in push and merge scripts.
- This adds a suppression of lines concerning error handling for the test coverage analysis
- Fixes also calling push-to-trunk from auto-roll

TEST=tools/push-to-trunk/script_test.py
TBR=ulan@chromium.org

Review URL: https://codereview.chromium.org/196883003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19838 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 10:45:23 +00:00
dcarney@chromium.org
3aac1d3c07 Win64 fix for r19833.
R=dcarney@chromium.org
BUG=

Review URL: https://codereview.chromium.org/197083002

Patch from Daniel Vogelheim <vogelheim@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 10:33:40 +00:00
jkummerow@chromium.org
105c1e08b7 Fix HIsSmiAndBranch::KnownSuccessorBlock() by deleting it
Constants can still change their representation, so we cannot determine reachability of blocks based on their Smi-ness

BUG=chromium:351320
LOG=y
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/196943002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19836 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 10:14:29 +00:00
danno@chromium.org
ae1669b501 Fix handling of polymorphic array accesses with constant index
R=jkummerow@chromium.org
BUG=chromium:351319
LOG=Y

Review URL: https://codereview.chromium.org/196353004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19835 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 10:11:38 +00:00
jkummerow@chromium.org
8a1812f252 Fix lazy deopt after tagged binary ops
Also add policing code to ensure that optimized frames can in fact lazily deopt
at their respective current PC when we patch them for lazy bailout.

BUG=chromium:350434
LOG=y
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/194703008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19834 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 09:59:36 +00:00
dcarney@chromium.org
25468478e3 Implement PersistentValueMap, a map that stores UniquePersistent values.
This is preparatory work to get rid of UnsafePersistent in blink.

Related blink changes are here: https://codereview.chromium.org/180363004/

This patch is largely based on https://codereview.chromium.org/175503003/, with some methods added to support the blink change mentioned above.

BUG=
R=dcarney@chromium.org, svenpanne@chromium.org

Review URL: https://codereview.chromium.org/189463019

Patch from Daniel Vogelheim <vogelheim@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19833 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 09:11:25 +00:00
machenbach@chromium.org
11b6daec84 Don't use a temp file for changelog in push-to-trunk.
This is part of getting rid of the ChangeLog on bleeding_edge and directly modifying it on trunk.

BUG=
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/195183003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 07:39:56 +00:00
svenpanne@chromium.org
d6f673eba8 Fixed range analysis for HMathFloorOfDiv.
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/195133002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19831 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 06:49:28 +00:00
svenpanne@chromium.org
55c232aa10 Revert "Don't need a temp register for StoreKeyed double"
This reverts commit r19829 for breaking the mozilla tests.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/196343003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19830 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 06:46:55 +00:00
haitao.feng@intel.com
23af599c18 Don't need a temp register for StoreKeyed double
save a gap move

BUG=
R=danno@chromium.org

Review URL: https://codereview.chromium.org/174693002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19829 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-12 02:21:03 +00:00
plind44@gmail.com
6cf22a6041 MIPS: Eliminate extended mode, and other modes clean-up
Port r19800 (4402a23)

Original commit message:
- Merge LanguageMode and StrictModeFlag enums
- Make harmony-scoping depend only on strict mode
- Free some bits on the way
- Plus additional clean-up and renaming

BUG=

Review URL: https://codereview.chromium.org/195693002

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19828 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 22:16:56 +00:00
rmcilroy@chromium.org
0896bd70a2 Revert "Pass a Code object to Assembler::(set_)target_address_at for use by ool constant pool."
This reverts r19825 for breaking ia32.debug checks.

Original Review URL: https://codereview.chromium.org/183803022

Update serializer to be able to deal with ool constant pool.

TBR=ulan@chromium.org

Review URL: https://codereview.chromium.org/195373004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19827 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 21:46:26 +00:00
rmcilroy@chromium.org
f9288fca53 Update serializer to be able to deal with ool constant pool.
This CL depends on CL https://codereview.chromium.org/179813005/ landing first.

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/190883002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19826 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 20:52:00 +00:00
rmcilroy@chromium.org
38732785dd Pass a Code object to Assembler::(set_)target_address_at for use by ool constant pool.
The ool constant pool will require a pointer to the code's constant pool when
updating or reading target addresses using set_target_address_at()
and target_address_at().

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/183803022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19825 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 20:31:23 +00:00
plind44@gmail.com
ab2493e428 MIPS: Mode clean-up pt 1: rename classic/non-strict mode to sloppy mode.
Port r19799 (8fb4c93)

BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/194613005

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 20:28:28 +00:00
rmcilroy@chromium.org
fadc74ec04 Clean up ARM mov 32bit immediate code in preparation for out of line constant pool.
R=rodolph.perfetta@arm.com, ulan@chromium.org

Review URL: https://codereview.chromium.org/138503002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19823 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 20:17:02 +00:00
plind44@gmail.com
5d473db176 MIPS: Cleanup some of the range uses in ModI/DivI.
Port r19796 (2b8ff32)

BUG=v8:3204
LOG=y
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/194863004

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19822 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 19:04:14 +00:00
dslomov@chromium.org
8af219477a Revert "Reland "Enable Object.observe by default""
This reverts commit r19736 for breaking browser_tests on ChromiumOS.

TBR=rossberg@chromium.org,rafaelw@chromium.org

Review URL: https://codereview.chromium.org/195603002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19819 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 18:36:15 +00:00
dslomov@chromium.org
f6dac13dcb Revert "Enable Object.observe by default"
This reverts commit r19734 for breeaking ChromiumOS browser tests.
'OpenSpecialTypes/FileManagerBrowserTest.Test/3' started to time out,
bisecting the roll led to this change.
http://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Tests%20%282%29/builds/22224

TBR=rafaelw@chromium.org,rossberg@chromium.org
BUG=v8:2409
LOG=Y

Review URL: https://codereview.chromium.org/195123005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19816 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 18:15:44 +00:00
baptiste.afsa@arm.com
59914900f3 A64: Tidy up a few TODOs.
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/195363003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19815 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 17:31:40 +00:00
m.m.capewell@googlemail.com
6f1adba226 A64: UseRegisterAtStart for rhs of LMulS
BUG=
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/191283002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19814 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 17:12:34 +00:00
rossberg@chromium.org
85800eff3f Fix issue with getOwnPropertySymbols and hidden properties
When getting the symbols of an object we need to ignore the hidden
properties of the prototype object since the hidden properties are
represented by a single string key and we will not include that hidden
string in the found names.

BUG=350864
LOG=Y
R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/192883005

Patch from Erik Arvidsson <arv@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19813 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 16:46:35 +00:00
marja@chromium.org
534245c9a5 Move ParseArguments to ParserBase and add tests.
Notes:
- PreParser didn't produce "too_many_arguments"; now it does.
- The argument count in the error message was wrong; fixed it.

BUG=v8:3126
LOG=N
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/194503004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19812 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 16:30:47 +00:00
rossberg@chromium.org
94b5180db0 API support for promises
R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/194663003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19811 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 16:17:20 +00:00
ulan@chromium.org
5b5cd79a79 Fix kraken/oscillator performance regression after r19635.
Evict previously optimized code after new optimization.

BUG=v8:3202
LOG=N
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/189263009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19810 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 15:50:41 +00:00
baptiste.afsa@arm.com
b27e6d02be A64: Tidy up a couple of TODOs.
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/189883006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19809 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 15:50:01 +00:00
ulan@chromium.org
0b7d4778b8 Invalidate OS-specific datetime cache on configuration change notification
When V8 is informed that the system's date time configuration has changed,
it should also drop its OS-specific caches of time zone information

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/193933002

Patch from James Robinson <jamesr@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19808 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 15:46:56 +00:00
m.m.capewell@googlemail.com
7a8ccc0bdf A64: Improve constraints for StoreNamedField
Improve register constraints for cases that don't need write barriers, and
remove TODOs.

BUG=
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/189373006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19807 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 15:46:31 +00:00
baptiste.afsa@arm.com
797c75e7b1 A64: Debug code should assert on unexpected situation.
R=jochen@chromium.org
BUG=

Review URL: https://codereview.chromium.org/184533002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19806 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 15:41:27 +00:00
marja@chromium.org
cf820126b9 Move ParseObjectLiteral to ParserBase.
BUG=v8:3126
LOG=N
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/192993002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19805 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 15:40:41 +00:00
dcarney@chromium.org
62fc099334 fix bad access check check
R=verwaest@chromium.org

BUG=

Review URL: https://codereview.chromium.org/195163002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19804 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 15:12:47 +00:00
baptiste.afsa@arm.com
5b662703ab A64: Add and use a double register which holds the 0.0 value.
This patch also modify the crankshaft allocatable double registers because
we need this register to be callee saved to be efficient.

R=jochen@chromium.org

Review URL: https://codereview.chromium.org/190663009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19803 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 15:03:36 +00:00
dslomov@chromium.org
5961614702 Revert "Enable concurrent sweeping."
This reverts commit r19792 for breaking ARM tests.

TBR=hpayer@chromium.org

Review URL: https://codereview.chromium.org/194553003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19802 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 14:59:19 +00:00
rossberg@chromium.org
34ac7d13ed Work around Windows name clobbering
TBR=dslomov@chromium.org
BUG=

Review URL: https://codereview.chromium.org/194753006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19801 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 14:56:42 +00:00
rossberg@chromium.org
8e3f3cee9e Eliminate extended mode, and other modes clean-up
- Merge LanguageMode and StrictModeFlag enums
- Make harmony-scoping depend only on strict mode
- Free some bits on the way
- Plus additional clean-up and renaming

R=ulan@chromium.org
BUG=

Review URL: https://codereview.chromium.org/181543002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19800 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 14:41:22 +00:00
rossberg@chromium.org
3f702d4bf9 Mode clean-up pt 1: rename classic/non-strict mode to sloppy mode
R=mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/177683002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 14:39:08 +00:00
yangguo@chromium.org
6e1507331e Fix bug in constant folding object comparisons.
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/195063002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19798 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 13:34:01 +00:00
bmeurer@chromium.org
4ac0876a8c Cleanup some of the range uses in ModI/DivI.
BUG=v8:3204
LOG=y
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/191293013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19796 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 11:57:27 +00:00
svenpanne@chromium.org
bd96b9ffce Updated constants.
No idea when they got out-of-sync...

TBR=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/194953002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19795 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 11:56:04 +00:00
hpayer@chromium.org
d9090c0284 Do not run AddInstructionChangesNewSpacePromotion test in release mode.
BUG=
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/194663004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19794 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 11:53:40 +00:00
yangguo@chromium.org
dda0aa88b0 Revert "Mark mjsunit/string-case as flaky."
This reverts r19760 since the issue has been fixed in r19755.

R=dslomov@google.com, dslomov@chromium.org
BUG=v8:3208
LOG=N

Review URL: https://codereview.chromium.org/194823002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19793 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 11:38:53 +00:00
hpayer@chromium.org
fd2f351237 Enable concurrent sweeping.
BUG=
R=jochen@chromium.org

Review URL: https://codereview.chromium.org/166683002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19792 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 11:37:53 +00:00
yangguo@chromium.org
c865b1351a Do not overwrite already optimized code.
BUG=
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/189603006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19791 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 11:37:02 +00:00
hpayer@chromium.org
9819cfd29c Make sure tagged binary op instructions change new space promotion.
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/194883003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19790 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 11:36:55 +00:00
rossberg@chromium.org
dc14b1648c Silence Win warnings
TBR=bmeurer@chromium.org
BUG=

Review URL: https://codereview.chromium.org/194893002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19789 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 10:53:13 +00:00
rossberg@chromium.org
8b0e0442bb PromiseCoerce should ignore primitive values.
PromiseCource(x) should return "not a thenable" if Type(x) is not Object
even if x.then exists.

BUG=347095
LOG=Y
R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/194403002

Patch from Yutaka Hirano <yhirano@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19788 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-11 10:41:18 +00:00