ishell@chromium.org
309bf937a0
Revert "JSObject::NormalizeElements() handlified."
...
This reverts commit r20146 which broke V8 GC Stress, Mjsunit tests.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/207963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20154 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 10:42:19 +00:00
marja@chromium.org
e79ff8275c
Move new expression parsing funcs to ParserBase.
...
Functions moved: ParseMemberWithNewPrefixesExpression, ParseMemberExpression,
ParseMemberExpressionContinuation.
Now all Parse*Expression functions are in ParserBase.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/207633003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20153 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 10:34:51 +00:00
marja@chromium.org
7708d4a22d
Move ParseLeftHandSideExpression to ParserBase.
...
Includes cleanups:
- Reorganized functions in PreParserFactory to be in the logical order.
- De-hackified things PreParser doesn't need to track, such as IsCall & IsCallNew.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/206433003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20150 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 09:51:33 +00:00
marja@chromium.org
8452030817
Move ParsePostfixExpression into ParserBase.
...
+ enable a test which checks that Parser and PreParser produce the "invalid left
hand side" errors consistently.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/202333004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20149 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 09:46:18 +00:00
jochen@chromium.org
2ce0bebba1
Rename A64 port to ARM64 port
...
BUG=354405
R=ulan@chromium.org , rodolph.perfetta@arm.com
LOG=y
Review URL: https://codereview.chromium.org/207823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 09:28:26 +00:00
ishell@chromium.org
bd2f81397c
JSObject::NormalizeElements() handlified.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/206343002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20146 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 08:44:40 +00:00
ishell@chromium.org
e9a315c978
JSArray::SetContent() handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/206223003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20145 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 08:30:42 +00:00
jochen@chromium.org
ca871bf098
Remove unused color declarations in the a64 simulator
...
They're now all defined globally
BUG=none
R=svenpanne@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/207723003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20144 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 08:23:16 +00:00
ishell@chromium.org
863b5d30cd
ArrayUnshift builtin handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/206463002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20143 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 08:12:16 +00:00
svenpanne@chromium.org
586f64e1f3
Revert "Use constant length for memcpy on A64 simulator."
...
This reverts commit r20141 which broke the build with some GCC versions. The
reason behind that is GCC emits a warning about code which can never be reached,
but GCC can't figure that out.
The right approach would be using template specialization instead of these
runtime if/then/else cascades, which would be nicer from a SW engineering
perspective, too.
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/207703003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20142 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 08:03:26 +00:00
svenpanne@chromium.org
bfb3532249
Use constant length for memcpy on A64 simulator.
...
Compiler can't optimize away variable length memcpy.
About a 18% boost.
Before - 5:40
Richards: 75.2
DeltaBlue: 105
Crypto: 64.0
RayTrace: 188
EarleyBoyer: 146
RegExp: 23.8
Splay: 96.2
NavierStokes: 91.9
----
Score (version 7): 85.7
After - 4:39
Richards: 90.8
DeltaBlue: 134
Crypto: 81.7
RayTrace: 227
EarleyBoyer: 177
RegExp: 29.7
Splay: 126
NavierStokes: 108
----
Score (version 7): 106
R=rodolph.perfetta@gmail.com , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/203263017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20141 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 07:08:08 +00:00
haitao.feng@intel.com
c867df5181
Introduce addp, idivp, imulp and subp for x64 port
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/196893003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20140 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 02:42:10 +00:00
plind44@gmail.com
03b435ee92
MIPS: Fix register usage of r20076.
...
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/206763002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20139 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 19:12:08 +00:00
mstarzinger@chromium.org
c27758bcc7
Fix missing access check in Runtime_SetPrototype.
...
R=rossberg@chromium.org
BUG=chromium:354123
TEST=cctest/test-api/Regress354123
LOG=y
Review URL: https://codereview.chromium.org/205033011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20138 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 18:14:33 +00:00
jkummerow@chromium.org
2b722b663e
Fix polymorphic hydrogen handling of SLOPPY_ARGUMENTS_ELEMENTS
...
BUG=chromium:354391
LOG=y
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/206073008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20137 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 16:25:24 +00:00
rossberg@chromium.org
b3b6987b27
Reland "Implement ES6 symbol registry and predefined symbols"
...
Only change relative to original CL is the updated assertion condition at objects-inl.h:2119
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/204913006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20136 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 16:13:09 +00:00
plind44@gmail.com
2aadbc8f2c
MIPS: Implement flooring division by a constant via truncating division by a constant.
...
Port r20123 (31ab416)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/206373004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20135 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 16:04:51 +00:00
alexandre.rames@arm.com
bd69f65394
A64: Restore the stack limit protection to 1KB.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/206393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20131 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 15:25:27 +00:00
yangguo@chromium.org
c9d391d87f
Fix assertions wrt concurrent OSR.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/206473002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20130 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 15:23:31 +00:00
ishell@chromium.org
9f6be9c514
Callers of JSArray::SetContent() handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/206383003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20128 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 13:40:08 +00:00
mvstanton@chromium.org
c92de5d189
Fix for performance issue 353661 - 23% regression in dromaeo.
...
The issue was that a previous fix to avoid a logic error was not
targeted enough: it allowed non-transitioning stores to fall
into a code path meant to preserve monomorphic state in the
case of a transitioning store.
BUG=353661
LOG=N
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/206353002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20127 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 13:38:08 +00:00
marja@chromium.org
e9358fa9ce
Increase the "local variables in a function" limit.
...
The limit was originally added to avoid having large user-controlled constants
(variable indexes) in the code generated by full-codegen.
History behind this change:
The original CL for adding the limit was https://codereview.chromium.org/7003030
and at that time, the limit was 32767.
Reason for adding the limit (in CL comments): "The motivation behind this change
is to avoid large user controlled constants in the code. The slot_operand used
in the IA32 full code generator uses a relative load where the local index is an
(negative) immediate."
The limit was then bumped to 65535 by https://codereview.chromium.org/10965063
and to 131071 by https://codereview.chromium.org/11099063 .
R=dcarney@chromium.org , svenpanne@chromium.org , jkummerow@chromium.org , rossberg@chromium.org
BUG=v8:3205
LOG=Y
Review URL: https://codereview.chromium.org/206143004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20126 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 13:37:26 +00:00
marja@chromium.org
d017e6ce54
Make PreParser track valid left hand sides.
...
Notes:
- This makes PreParser produce invalid_lhs_in_assignment and
invalid_lhs_in_prefix_op. Other errors will follow as the corresponding funcs
move to ParserBase.
- PreParserExpression::IsStrictFunction and StrictFunction() are not needed any
more -> removed them.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/196343033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20125 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 13:18:15 +00:00
ishell@chromium.org
68c91ea301
ArrayShift builtin handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/206423002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20124 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 13:16:19 +00:00
svenpanne@chromium.org
68237f6590
Implement flooring division by a constant via truncating division by a constant.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/204583002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 13:10:23 +00:00
ishell@chromium.org
8e10eea993
ArrayPush builtin handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/206183006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 13:01:08 +00:00
rossberg@chromium.org
1088fbd1e7
Revert "Implement ES6 symbol registry and predefined symbols"
...
TBR=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/204353004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20121 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 12:56:41 +00:00
yangguo@chromium.org
00170e434b
Use HBoundsCheck to check string length.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/206183003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20120 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 12:34:44 +00:00
yangguo@chromium.org
000be4d033
Reland "Throw exception on invalid string length instead of OOM."
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/199583007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20119 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 12:27:36 +00:00
rossberg@chromium.org
0f71f61799
Implement ES6 symbol registry and predefined symbols
...
R=mstarzinger@chromium.org , arv@chromium.org
BUG=
LOG=Y
Review URL: https://codereview.chromium.org/203243004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20118 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 12:26:27 +00:00
yangguo@chromium.org
77a28b731d
Handlify callers to GetElementNoException.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/204693002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20117 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 12:22:13 +00:00
alexandre.rames@arm.com
5036031520
A64: Minor cleaning in StoreStubCompiler::GenerateStoreField.
...
Abstract a register to simplify code generation.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/206183005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20116 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 11:35:05 +00:00
yangguo@chromium.org
a5a82ef123
Revert "Throw exception on invalid string length instead of OOM."
...
This reverts r20112.
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/206383002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20114 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 11:11:28 +00:00
ishell@chromium.org
107ea152a4
ElementsAccessor::Delete() handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/200923006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20113 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 10:52:22 +00:00
yangguo@chromium.org
9ba80269ee
Throw exception on invalid string length instead of OOM.
...
R=bmeurer@chromium.org
BUG=349329
LOG=Y
Review URL: https://codereview.chromium.org/199853004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 10:49:33 +00:00
alexandre.rames@arm.com
bfcc117f4c
A64: Remove Operand constructors where an implicit constructor can be used.
...
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/204293004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20111 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 10:37:19 +00:00
alexandre.rames@arm.com
0768479e74
A64: Improve the deoptimization exit code for LMathRound.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/203253004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20109 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 10:12:49 +00:00
alexandre.rames@arm.com
c8a6fd017d
A64: In the Simulator, corrupt caller-saved registers after runtime printf call.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/203603002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20108 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 10:03:17 +00:00
alexandre.rames@arm.com
948d8621bc
A64: Abstract simulation of runtime calls in a separate function.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/203703002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20107 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 09:51:19 +00:00
alexandre.rames@arm.com
9755b90778
A64: Abstract colour definitions for the Simulator tracing.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/203563002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20106 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 09:45:17 +00:00
machenbach@chromium.org
d7d4452e1c
Deprecate prepare push commit when pushing to trunk.
...
- This also deprecates using version.cc on bleeding edge.
- The deprecated push-to-trunk.sh is deleted.
- The script now commits bleeding edge HEAD by default. Committing different revisions will be added in a follow up CL.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/203753010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20101 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 09:23:44 +00:00
ulan@chromium.org
f7dc76af6d
A64: clean up pending reloc info if code generation was aborted.
...
This fixes assertion failure in destructor of Assembler.
BUG=352659
LOG=N
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/206213002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20100 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 09:10:15 +00:00
yangguo@chromium.org
238f12e618
Make max size and max length of strings consistent.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/196133030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20099 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 08:33:06 +00:00
ulan@chromium.org
41eab25615
A64: Fix write barrier input in KeyedStoreIC::GenerateSloppyArguments.
...
This fixes flaky crashes in gc-stress bot:
> Fatal error in ../src/incremental-marking.cc, line 84
> CHECK(obj->IsHeapObject()) failed
BUG=353551
LOG=N
TEST=test/mjsunit/regress/regress-353551.js
R=m.m.capewell@googlemail.com
Review URL: https://codereview.chromium.org/204453002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20098 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 08:32:58 +00:00
yangguo@chromium.org
eb34943cfb
Revert "Enable Concurrent OSR" due to A64 failures.
...
This reverts r20096.
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/206173002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20097 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 08:19:25 +00:00
yangguo@chromium.org
65d0d384c7
Enable concurrent OSR.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/139983008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 08:04:28 +00:00
machenbach@chromium.org
62e7063706
Prepare push to trunk. Now working on version 3.25.21.
...
R=jkummerow@chromium.org
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/196243006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 01:04:38 +00:00
rafaelw@chromium.org
c84ac51922
Cleanup following MicrotaskQueue abstraction
...
https://code.google.com/p/v8/source/detail?r=19344 failed to remove the promiseEvents InternalArray.
R=rossberg@chromium.org , rossberg
LOG=N
Review URL: https://codereview.chromium.org/203773006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 21:48:30 +00:00
plind44@gmail.com
a03e80c3a5
MIPS: Pretenure call new support.
...
Port r20076 (b7b1372)
Original commit message:
When FLAG_pretenure_call_new is on, we emit mementos on new object creation
in full code, and consume the feedback in crankshaft. A key difference in the
generated code for stubs is the allocation of an additional type vector slot for the
CallNew AST node, which simplifies the CallConstructStub and CallFunctionStub
considerably.
Some performance tuning still needs to be addressed, therefore the flag is off at
this moment, though fully functional. The goal is to remove the flag as soon as
possible, which allows much code deletion (yay).
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/203463013
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20091 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 20:00:29 +00:00
ishell@chromium.org
158269c132
ElementsAccessor::SetLength() handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/204603003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20090 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 16:29:19 +00:00
rodolph.perfetta@arm.com
bdea3e9a8f
ARM: clean-up some stub call sequences.
...
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/203263016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20089 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 16:27:09 +00:00
jkummerow@chromium.org
da6e5ebcdf
Add FLAG_trace_bce
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/203193006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20088 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 16:03:56 +00:00
jkummerow@chromium.org
d9b6b6439d
Fix polymorphic keyed loads for SLOPPY_ARGUMENTS_ELEMENTS
...
BUG=chromium:350867
LOG=y
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/203303010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20087 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 15:49:29 +00:00
plind44@gmail.com
21e09fa8dd
MIPS: Array constructor expects AllocationSite or undefined as feedback.
...
Port r20064 (d2ccdc6)
Original commit message:
Redefine Array constructor to expect an AllocationSite in the feedback
register or undefined. This will make code simpler as we support
pretenuring feedback for all constructed objects.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/204613002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 15:46:24 +00:00
ulan@chromium.org
79ab5448ab
Removed obsolete and dead includes.
...
BUG=353954
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/203593014
Patch from Dmitry Zvorygin <zvorygin@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20085 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 15:40:38 +00:00
plind44@gmail.com
3d77e7eb07
MIPS: Reland "Add out-of-line constant pool support to Arm."
...
Port r20053 (df27abf)
Original commit message:
This CL adds out-of-line constant pool support to Arm. A ConstantPoolBuilder
object is introduced to manage building of the ConstantPoolArray for a given
code object.
This CL depends on the following CLs landing first:
https://codereview.chromium.org/138503002/
https://codereview.chromium.org/179813005/
https://codereview.chromium.org/183553003/
https://codereview.chromium.org/183803022/
https://codereview.chromium.org/183883011/
https://codereview.chromium.org/186733006/
https://codereview.chromium.org/188063002/
https://codereview.chromium.org/190793002/
https://codereview.chromium.org/190823002/
https://codereview.chromium.org/190833002/
https://codereview.chromium.org/190883002/
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/204343005
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 15:34:17 +00:00
plind44@gmail.com
b2b2799d5c
MIPS: Tweaked FlooringDiv back to TruncatingDiv again.
...
Port r20048 (8953785)
Original commit message:
This is a first step towards getting the flooring division by a
constant working again (which will be a separate CL).
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/203443009
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 15:27:38 +00:00
ishell@chromium.org
f09f99fd09
ArrayPop builtin handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/204103008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20081 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 15:25:04 +00:00
ishell@chromium.org
368a2e78c0
Handlification of JSArray::SetElementsLength().
...
R=verwaest@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/203333004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20080 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 14:09:50 +00:00
marja@chromium.org
e9717833f9
Move ParseUnaryExpression into ParserBase and add tests.
...
This also makes PreParser produce the strict_delete error the same way as
Parser (see test).
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/203193004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20079 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 14:08:47 +00:00
marja@chromium.org
c04dd3fb7f
Revert "Move ParseUnaryExpression into ParserBase and add tests."
...
This reverts revision 20077.
Reason: build fail on some compilers.
BUG=
TBR=marja@chromium.org ,rossberg@chromium.org
Review URL: https://codereview.chromium.org/203413009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20078 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 13:58:15 +00:00
marja@chromium.org
f4ef82309a
Move ParseUnaryExpression into ParserBase and add tests.
...
This also makes PreParser produce the strict_delete error the same way as
Parser (see test).
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/203193004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20077 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 13:42:41 +00:00
mvstanton@chromium.org
535f3427ca
Pretenure call new support.
...
When FLAG_pretenure_call_new is on, we emit mementos on new object creation
in full code, and consume the feedback in crankshaft. A key difference in the
generated code for stubs is the allocation of an additional type vector slot for the
CallNew AST node, which simplifies the CallConstructStub and CallFunctionStub
considerably.
Some performance tuning still needs to be addressed, therefore the flag is off at
this moment, though fully functional. The goal is to remove the flag as soon as
possible, which allows much code deletion (yay).
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/132963012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20076 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 13:39:09 +00:00
marja@chromium.org
932a29a66a
New compilation API, part 2.
...
This CL makes the Parser produce the data PreParser used to produce. This
enables us to get rid of the unnecessary preparsing phase.
The first part is here: https://codereview.chromium.org/199063003/
BUG=
R=dcarney@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/203353002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20075 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 13:24:13 +00:00
machenbach@chromium.org
a6f9993569
Prepare push to trunk. Now working on version 3.25.20.
...
R=yangguo@chromium.org
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/203193014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 13:13:23 +00:00
yangguo@chromium.org
d8c3c5ef0a
Introduce API to trigger exception on JS execution.
...
R=jochen@chromium.org , pmarch@chromium.org
Review URL: https://codereview.chromium.org/203223013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20070 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 13:06:53 +00:00
hpayer@chromium.org
9be17fb30e
Temporarily disable evacuation verification for parallel-concurrently swept pages.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/204443002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20065 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 11:56:11 +00:00
mvstanton@chromium.org
5e4febb06e
Array constructor expects AllocationSite or undefined as feedback.
...
Redefine Array constructor to expect an AllocationSite in the feedback
register or undefined. This will make code simpler as we support
pretenuring feedback for all constructed objects.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/203173003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20064 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 11:51:30 +00:00
hpayer@chromium.org
42de2044a9
Account for right object size when left trimming arrays.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/203833005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20063 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 11:37:56 +00:00
yangguo@chromium.org
0bc684a794
Introduce per-isolate assert scopes and API to guard JS execution.
...
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/198253004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20062 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 11:31:43 +00:00
hpayer@chromium.org
0f1f071751
Access old space marking bits from runtime only when incremental marking is in MARKING state.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/203523009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20057 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 10:48:54 +00:00
machenbach@chromium.org
a20d5731e8
Prepare push to trunk. Now working on version 3.25.19.
...
R=yangguo@chromium.org
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/199273004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 10:48:20 +00:00
rmcilroy@chromium.org
0acbcf9876
Reland "Add out-of-line constant pool support to Arm."
...
This CL adds out-of-line constant pool support to Arm. A ConstantPoolBuilder
object is introduced to manage building of the ConstantPoolArray for a given
code object.
This CL depends on the following CLs landing first:
https://codereview.chromium.org/138503002/
https://codereview.chromium.org/179813005/
https://codereview.chromium.org/183553003/
https://codereview.chromium.org/183803022/
https://codereview.chromium.org/183883011/
https://codereview.chromium.org/186733006/
https://codereview.chromium.org/188063002/
https://codereview.chromium.org/190793002/
https://codereview.chromium.org/190823002/
https://codereview.chromium.org/190833002/
https://codereview.chromium.org/190883002/
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/204323004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 10:32:12 +00:00
yangguo@chromium.org
bd2397c90c
Revert "Add out-of-line constant pool support to Arm."
...
This reverts commit r20051.
TBR=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/204403002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20052 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 09:53:58 +00:00
rmcilroy@chromium.org
9415863c97
Add out-of-line constant pool support to Arm.
...
This CL adds out-of-line constant pool support to Arm. A ConstantPoolBuilder
object is introduced to manage building of the ConstantPoolArray for a given
code object.
This CL depends on the following CLs landing first:
https://codereview.chromium.org/138503002/
https://codereview.chromium.org/179813005/
https://codereview.chromium.org/183553003/
https://codereview.chromium.org/183803022/
https://codereview.chromium.org/183883011/
https://codereview.chromium.org/186733006/
https://codereview.chromium.org/188063002/
https://codereview.chromium.org/190793002/
https://codereview.chromium.org/190823002/
https://codereview.chromium.org/190833002/
https://codereview.chromium.org/190883002/
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/191233003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 09:38:20 +00:00
hpayer@chromium.org
8e749aaafd
Added sweeping time measurement for old space sweeping.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/203263014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 09:27:42 +00:00
haitao.feng@intel.com
e812aca6b3
Introduce Push and Pop macro instructions for x64
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/199903002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 08:59:04 +00:00
svenpanne@chromium.org
1a6f977d6a
Tweaked FlooringDiv back to TruncatingDiv again.
...
This is a first step towards getting the flooring division by a
constant working again (which will be a separate CL).
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/197873029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 07:01:08 +00:00
machenbach@chromium.org
34f70c7dea
Prepare push to trunk. Now working on version 3.25.18.
...
R=jkummerow@chromium.org
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/201153018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20045 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 01:04:33 +00:00
marja@chromium.org
934e58d3a3
(Pre)Parser unification: use shorter type names.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/203493002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 17:05:38 +00:00
alexandre.rames@arm.com
1330326830
A64: Use appropriate return types for the simulator fpcr and nzcv members.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/203343003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 16:44:07 +00:00
mvstanton@chromium.org
d30490008a
Increase pretenure ratio from 60% to 85%
...
As pretenure-call-new comes online, this is a better performing ratio
overall.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/196383032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 15:19:35 +00:00
rossberg@chromium.org
b7b40e2b84
Remove Promise.cast
...
...as per January meeting. Renames 'cast' to 'resolve'. We rename the prior 'resolve' to 'accept', to keep the chain API usable.
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/200763012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 15:03:35 +00:00
m.m.capewell@googlemail.com
2e555d2887
A64: ElementsKind TODOs
...
Replace LoadElementsKind with LoadElementsKindFromMap, remove unneeded TODO in
DoStringCharFromCode, improve constraints for DoCheckValue and improve code for
ElementsKind checking in StoreArrayLiteralElementStub.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/202853005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 15:01:55 +00:00
rossberg@chromium.org
aa250ea41a
Promises: make null a legal argument for .then
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/203453002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20037 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 14:55:43 +00:00
alexandre.rames@arm.com
88eba5e388
A64: Force emission of the veneer pool emission when required.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/203443003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 14:26:26 +00:00
ulan@chromium.org
18104111f4
Refactor GetCodeCopyFromTemplate to get a single point where objects are replaced in code.
...
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/197283017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 14:15:09 +00:00
alexandre.rames@arm.com
611ea747ef
A64: Handle a few TODOs.
...
Below are notes about some of the TODOs handled.
* In Simulator::Debug:
We haven't had issues with printing in the debugger for a while. If the
feature turns out to be still lacking an issue can be raised.
* In SubStringStub::Generate:
There is no need to jump there. The StringCharAtGenerator is asked to set
the result in x0, and the return sequence following only uses two instructions.
Also, we would need to jump after the native counter increment instead of the
return_x0 label.
* In ArrayPushStub::Generate:
Raised an internal issue to check and update the ARM code.
* In MacroAssembler::CopyBytes:
The new code should be faster for bulk copies. Raised an internal issue to
investigate and improve this function.
* In MacroAssembler::EnterExitFrame:
Unless we actually find something is wrong, this is working and looks ok.
Also fixed the comments about the FP registers.
* Comment for BumpSystemStackPointer:
Removed the comment at the declaration site and updated the TODO in the
implementation.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/196473021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 14:00:21 +00:00
ulan@chromium.org
487ca9e384
Fix TransitionElementsKindStub to handle non-JSArray objects correctly.
...
BUG=352982
LOG=N
TEST=mjsunit/regress/regress-352982.js
R=danno@chromium.org
Review URL: https://codereview.chromium.org/196343023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 13:29:29 +00:00
machenbach@chromium.org
bd48e40ad1
Prepare push to trunk. Now working on version 3.25.17.
...
R=yangguo@chromium.org
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/203223004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 13:02:41 +00:00
yangguo@chromium.org
c76a97159f
Handlify callers of Object::GetElement.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/200363002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 12:34:02 +00:00
yangguo@chromium.org
5bca14a33e
Fix race between VisitSmiRoots and SetStackLimit.
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/198833006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 12:21:07 +00:00
rossberg@chromium.org
9b28aed3f6
Introduce representation types
...
Also:
- improve type pretty-printing,
- update doc comments,
- some renamings for consistency.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/176843006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 11:50:18 +00:00
ishell@chromium.org
acf695e37a
Handlification of ArrayConstructorCommon().
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/201303009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 11:38:27 +00:00
rmcilroy@chromium.org
be0bc25bbb
Add support for movw/movt immediate loads to BackEdgeTable on ARM to enable ool constant pool.
...
R=rodolph.perfetta@arm.com , ulan@chromium.org
Review URL: https://codereview.chromium.org/190833002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 11:36:19 +00:00
dslomov@chromium.org
6c01c3fd56
Apply numeric casts correctly in typed arrays and related code.
...
R=jkummerow@chromium.org
BUG=353004
LOG=Y
Committed: https://code.google.com/p/v8/source/detail?r=20020
Review URL: https://codereview.chromium.org/201873005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 10:55:29 +00:00
dslomov@chromium.org
a6224272fd
Revert "Apply numeric casts correctly in typed arrays and related code."
...
This reverts commit r20020 for breaking Win64 build.
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/199523006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 10:50:00 +00:00
dslomov@chromium.org
849187eab0
Apply numeric casts correctly in typed arrays and related code.
...
R=jkummerow@chromium.org
BUG=353004
LOG=Y
Review URL: https://codereview.chromium.org/201873005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 10:23:50 +00:00
rossberg@chromium.org
58d623f228
Stage ES6 promises and weak collections
...
Split collections flag into weak and non-weak.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/201593004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 09:57:14 +00:00
svenpanne@chromium.org
d7844ec8cc
Robustified address calculations on A64.
...
We no longer rely on the (adventurous) assumption that the class
Instruction is empty, implying sizeof(Instruction) == 1. This will
greatly simplify upcoming refactorings.
R=rodolph.perfetta@gmail.com
Review URL: https://codereview.chromium.org/201843003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-18 07:13:55 +00:00