marja@chromium.org
0f8251e1b8
test-parsing: Add functionality to specify "always true flags".
...
Many parsing tests need to pin a certain flag, and apart from the pinned flag,
we want to keep the "test with all combinations" behavior for the non-pinned
flags.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/349603004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 12:28:13 +00:00
rodolph.perfetta@arm.com
736a17f8f4
ARM: Avoid duplicate vmla when merging vmul and vadd
...
Avoid generating duplicate vmla instructions for vmul/vadd sequences where the
vmul has more than one use.
For example: function f(a, b, c) { return (a * b) + c + (a * b); }
Previously, this would produce a vmul for the subexpression (a * b), then vmla
for (a * b) + c, then vmla for (a * b) + [(a * b) + c].
Now it produces vmul, vadd, vadd, as expected.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/323423003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21899 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 11:26:17 +00:00
mstarzinger@chromium.org
5eb7ce9040
Remove obsolete --harmony-promises flag from tests.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/345053002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21898 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 10:47:50 +00:00
svenpanne@chromium.org
dda110fd77
Make object accessors more const-correct.
...
Getting closer to making our IsFOO and FOO::cast methods const-correct...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/349623002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21897 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 10:31:17 +00:00
marja@chromium.org
1fd638e284
Parser: Refactor strict mode checks for functions
...
Moves the strict mode checks and error reporting for the function and
parameter names into a separate CheckStrictFunctionNameAndParameters()
function in ParserBase. Parsing of arrow functions will then use this
new function instead of duplicating the error code.
BUG=
R=marja@chromium.org
Review URL: https://codereview.chromium.org/332053004
Patch from Adrián Pérez de Castro <aperez@igalia.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21896 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 09:45:05 +00:00
alph@chromium.org
969759fd3f
Support LiveEdit on ARM
...
BUG=368580
LOG=Y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/344573004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21895 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 09:41:14 +00:00
mstarzinger@chromium.org
fec6e62dfb
Check alpha-sorting of includes during presubmit.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/333013002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 08:40:11 +00:00
yurys@chromium.org
a862f7819b
Added Message::GetScripOrigin.
...
Replaced Message::GetResourceName with GetScriptOrigin().ResourceName().
Now, GetScriptOrigin().ResourceName() function returns the resource name or sourceURL (from //# sourceURL=) for the script from where the function causing the error originates.
Method GetScriptResourceName() deprecated. Use GetScriptOrigin()->ResourceName() instead.
Function used in Blink: https://codereview.chromium.org/260513004/
R=yangguo@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/265593002
Patch from Alexey Kozyatinskiy <kozyatinskiy@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 07:44:05 +00:00
ishell@chromium.org
a685c2e005
--verify-predictable mode added for ensuring that GC behaves deterministically.
...
In order to be able to use it one should pass verifypredictable=on to the make tool or specify v8_enable_verify_predictable=1 in GYP_DEFINES.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/325553002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21892 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 07:35:48 +00:00
svenpanne@chromium.org
48e1ae334f
Make the internal parts of our external API a bit more const-correct.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/343583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21891 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-20 07:20:44 +00:00
dcarney@chromium.org
bd3f8a524e
Revert "Optimize Function.prototype.call"
...
This reverts commit r21840.
R=danno@chromium.org
LOG=y
BUG=chromium:385565
Review URL: https://codereview.chromium.org/347573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-18 14:04:41 +00:00
yangguo@chromium.org
0be13a7719
Move invalid string length check to the factory.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/347503003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21886 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-18 13:26:02 +00:00
jarin@chromium.org
1a138034bd
Fix LStoreCodeEntry to treat the code_object parameter as input.
...
The bug seems to trigger only with array_index_dehoisting off in
the snapshot, so it is hard to test for (ideas?).
R=mvstanton@chromium.org
BUG=
Review URL: https://codereview.chromium.org/347523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21885 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-18 11:17:52 +00:00
yangguo@chromium.org
b5c716bba2
IC misses should not count towards execution pauses in plots.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/345543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21884 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-18 11:05:31 +00:00
jkummerow@chromium.org
01dde7513c
Add safe numerics classes, imported from Chromium.
...
Not used for anything yet.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/336183003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-18 11:01:54 +00:00
marja@chromium.org
9ad39a8043
Revert "Parser: Delay internalizing strings and values." (r21841)
...
Plus the fixes on top.
Reason: regresses benchmarks (JSBench) and perf (morejs).
TBR=rossberg@chromium.org
BUG=385404
LOG=N
Review URL: https://codereview.chromium.org/345513003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21882 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-18 07:30:56 +00:00
weiliang.lin@intel.com
aebf66371e
X87: Interrupts must not mask stack overflow.
...
port r21874
original commit message:
Interrupts must not mask stack overflow.
BUG=385002
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/336413009
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21881 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-18 03:31:30 +00:00
kilvadyb@homejinni.com
464143ad0a
MIPS: Interrupts must not mask stack overflow.
...
Port r21874 (bfea2c0)
BUG=385002
LOG=N
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21880 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 17:06:08 +00:00
jochen@chromium.org
005410e8ea
Untangle RNG from v8 core
...
This will allow for using the RNG from platform files without depending on
isolates.
BUG=none
R=bmeurer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/333053002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 16:27:19 +00:00
plind44@gmail.com
8e9bb93986
MIPS: update owners.
...
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/334153002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21878 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 15:34:03 +00:00
mstarzinger@chromium.org
d5cb9ee440
Drop obsolete ES6 TODOs about activating extended mode.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/338363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 15:22:38 +00:00
yangguo@chromium.org
c41c43585c
Remove unnecessary virtual methods in the serializer.
...
R=marja@chromium.org
Review URL: https://codereview.chromium.org/339103005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21876 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 14:24:19 +00:00
mstarzinger@chromium.org
46d36e81b4
Rename arguments object support functions to new scheme.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/338883003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21875 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 14:10:16 +00:00
yangguo@chromium.org
11368af66d
Interrupts must not mask stack overflow.
...
R=jarin@chromium.org
BUG=385002
LOG=N
Review URL: https://codereview.chromium.org/339883002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21874 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 13:54:49 +00:00
ulan@chromium.org
b624783b1b
Reduce number of writes to DependentCode array when inserting dependent IC.
...
BUG=305878
LOG=Y
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/339843004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 13:22:34 +00:00
marja@chromium.org
3b53ba87c8
Fix: AstValueFactory must be internalized before ThrowPendingError.
...
R=rossberg@chromium.org
BUG=385193
LOG=N
Review URL: https://codereview.chromium.org/335373002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21872 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 11:48:37 +00:00
ulan@chromium.org
944e7f09d2
Do GC if CodeRange fails to allocate a block.
...
BUG=305878
LOG=Y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/332373002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21869 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 08:20:12 +00:00
marja@chromium.org
5bbc92dee0
Throw syntax error when a getter/setter has the wrong number of params
...
We used to allow any number of parameters in getters and setters to
match JSC. This is a violation of ES5.1 and both SpiderMonkey and
Chakra throw on these syntax errors.
BUG=v8:3371
LOG=Y
R=marja@chromium.org
Review URL: https://codereview.chromium.org/329413002
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 07:23:26 +00:00
hpayer@chromium.org
e056708583
Revert "Grow big old generation slower.", tanks SplayHarder.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/331393002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21865 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-17 06:10:43 +00:00
jarin@chromium.org
f69bb7fcc3
Do not eliminate bounds checks for "<const> - x".
...
Before this change, bounds check elimination treated "<const> - x" as
"x - <const>".
R=yangguo@chromium.org
BUG=385054
TEST=test/mjsunit/regress/regress-385054.js
LOG=N
Review URL: https://codereview.chromium.org/339583003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21859 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-16 13:43:50 +00:00
bmeurer@chromium.org
2591003da5
Add unit test for regression in GVN caused by field type tracking.
...
BUG=v8:3347
LOG=n
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/333273004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21858 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-16 13:21:42 +00:00
bmeurer@chromium.org
4642c2e18c
Revert "GVN fix, preventing loads hoisting above stores to the same field when HObjectAccess's representation is not the same."
...
This reverts commit r21830 for tanking performance on Deltablue.
TBR=ishell@chromium.org
Review URL: https://codereview.chromium.org/336223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-16 13:03:59 +00:00
marja@chromium.org
71d07279b8
Reuse AstValueFactory when optimizing.
...
HOptimizedGraphBuilder::TryInline creates a temporary CompilationInfo and
destroys it, but we don't want the AstValueFactory to be destroyed at the same
time. Reuse the upper CompilationInfo's AstValueFactory.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/334173003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21851 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-16 10:42:39 +00:00
jkummerow@chromium.org
aae24ae40b
Fix representation of Phis for mutable-heapnumber-in-object-literal properties
...
BUG=v8:3392
LOG=y
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/328343004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21850 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-16 08:41:29 +00:00
jochen@chromium.org
712b0a2066
Fix x87 compile
...
TBR=marja@chormium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/337713003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 16:56:50 +00:00
jochen@chromium.org
9c2019b25c
Remove dependency on Vector from platform files
...
Add wrappers to utils.h instead.
BUG=none
R=jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/328343003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 16:43:27 +00:00
marja@chromium.org
27d7656b39
Fix windows build (size_t vs. int) some more.
...
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/336803002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 15:08:57 +00:00
marja@chromium.org
1def5993cb
Fix windows build (size_t vs. int).
...
Sadly, Vector ctor takes an argument "int length".
TBR=dcarney@chromium.org , mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/334903002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21844 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 14:24:56 +00:00
marja@chromium.org
2b52295935
Fix gn build.
...
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/338553002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 13:45:49 +00:00
jkummerow@chromium.org
e53511355f
Fix clang build after r21839
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/330793003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21842 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 13:39:01 +00:00
marja@chromium.org
a290cf8cda
Parser: Delay internalizing strings and values.
...
This is needed so that we can run Parser on a non-main thread (independent
of the Isolate and the V8 heap).
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/314603004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21841 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 13:31:56 +00:00
verwaest@chromium.org
7005abf03b
Optimize Function.prototype.call
...
- May inline the function, or call it directly, instead of going through call
- Supports arguments object escaping when it escapes to builtins (preparation for slice.call(arguments, ...) optimization)
- Both .call and .apply now support inlining when calling builtins indirectly
BUG=
R=verwaest@chromium.org , rossberg@chromium.org
Review URL: https://codereview.chromium.org/335683002
Patch from Petka Antonov <p.antonov@partner.samsung.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 12:52:23 +00:00
jkummerow@chromium.org
6e29768eb6
Have one, long-lived map for bound functions.
...
This avoids creating a new map for every bound function. Bonus: some cleanup in Runtime_FunctionBindArguments.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/335653002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 12:19:04 +00:00
jkummerow@chromium.org
9dd1f03cb7
Keep maps when resetting elements.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/335553004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21838 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 12:12:42 +00:00
svenpanne@chromium.org
510ea9e529
Reland "Rename kIs64BitArch with kRequiresCodeRange."
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/331823002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 11:06:42 +00:00
jkummerow@chromium.org
3b545740b4
Remove one more arch-specific target name.
...
One more target had the architecture added to its name since r14209
originally landed and was missed when that change was reverted. Remove
the architecture from v8_libbase as well.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/334793004
Patch from Richard Coles <torne@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21836 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 11:02:34 +00:00
svenpanne@chromium.org
d82a6adac5
Emulate MLS on pre-ARMv6T2. Cleaned up thumbee vs. thumb2 confusion.
...
This should unbreak things on the Raspberry Pi.
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/331803003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21835 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 10:50:11 +00:00
jkummerow@chromium.org
8334faa0e0
Allow all Names to be fast property names
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/329393005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21834 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 09:59:39 +00:00
jkummerow@chromium.org
a4d1e01b79
Use generic representation when normalizing boilerplate properties
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/323403008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21833 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 09:46:29 +00:00
yangguo@chromium.org
2e8a6f5e99
Mark timed range in the profile plot.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/333643006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-13 09:07:56 +00:00