sigurds@chromium.org
566cdc3bcd
Reland "Add initial support for inlining."
...
Reland Fixes:
* Remove usage of C++11 vector members.
* Guard tests by V8_TURBO_TARGET.
Changes:
* Make context specialization clean up after itself.
* Add UpdateToAndIncrement to Inputs::iterator.
Uses:iterator already provides this member function.
* Allow next node id in graph to be set.
R=titzer@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/484083003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23231 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 13:05:03 +00:00
yangguo@chromium.org
8cb41618ce
Blacklist %InternalSetProperty from runtime test fuzzing.
...
R=verwaest@chromium.org
BUG=405499
LOG=N
Review URL: https://codereview.chromium.org/491843002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23230 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 12:51:48 +00:00
bmeurer@chromium.org
b15a082d56
Fix implementation of bit count functions.
...
The bit counting functions provided by CompilerIntrinsics were undefined
for zero, which was easily overlooked and unsafe in general. Also their
implementation was kinda hacky and mostly untested. Fixed the
implementation and moved the functions to base/bits.h.
TEST=base-unittests,cctest,compiler-unittests,mjsunit
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/494633002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 12:10:41 +00:00
yangguo@chromium.org
f7947b8ec4
Fix --expose-debug-as with number as argument.
...
R=jkummerow@chromium.org
BUG=405491
LOG=N
Review URL: https://codereview.chromium.org/468803004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23228 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 11:52:22 +00:00
yangguo@chromium.org
5832ab8501
Expose function CheckDebugBreak in the debugger api
...
API=v8::Debug::CheckDebugBreak
LOG=Y
R=aandrey@chromium.org , vsevik@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/473913002
Patch from Sergei Vasilinetc <sergeyv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23227 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 11:04:05 +00:00
verwaest@chromium.org
26d72d5024
Get rid of GetLazyValue and clients.
...
This breaks fetching name of the constructor property of "Object"-labeled values in the heap-snapshot-generator until that's handlified and can be moved over to the LookupIterator.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/480823004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23226 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 10:37:23 +00:00
bmeurer@chromium.org
66dcb63276
Fix arm64 build.
...
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/490643006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23225 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 10:33:47 +00:00
hpayer@chromium.org
1605474d70
Use actual incremental marking throughput in IdleNotification to estimate marking step size.
...
BUG=
R=jochen@chromium.org , ulan@chromium.org
Review URL: https://codereview.chromium.org/465473002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23224 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 10:33:03 +00:00
yangguo@chromium.org
b4a35fe7e5
Remove RegExp.$input.
...
R=arv@chromium.org , mathiasb@opera.com
BUG=v8:3486
LOG=Y
Review URL: https://codereview.chromium.org/465273002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23223 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 09:43:00 +00:00
jkummerow@chromium.org
45219bd84f
Check in "cpu.sh" script to control CPU governor/cores on Linux
...
This can help with reproducing stability bugs or performance issues.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/485763003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23222 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 09:39:37 +00:00
bmeurer@chromium.org
9a5e8d4e01
Fix windows test runner.
...
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/494603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23221 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 09:38:53 +00:00
m.m.capewell@googlemail.com
a8b09acd7b
[turbofan] Add ARM64 tests and fix shift bug
...
Add more tests for logical immediate and shift instruction selection, and fix bug in range for supported shifts.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/487163004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23220 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 09:25:30 +00:00
bmeurer@chromium.org
98293ab8d2
[turbofan] Add support for Finish to the InstructionSelector.
...
Also fix an off-by-one bug in the handling of Parameter nodes, and
improve test coverage for pointer map computation.
TEST=compiler-unittest
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/490673006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23219 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 09:16:30 +00:00
titzer@chromium.org
5187e0fbca
Refactor Scheduler to simplify construction of CFG from sea of nodes. Use PreEdge/Post as part of the graph tarversal, and make finding of successor projections more robust.
...
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/490483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23217 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 08:56:57 +00:00
bmeurer@chromium.org
fa3dc0a534
[turbofan] Add support for ChangeTaggedToUint32 in ChangeLowering.
...
Also refactor some common code in ChangeLowering.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/488043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23216 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 08:13:00 +00:00
bmeurer@chromium.org
7c36df7b03
[turbofan] Add support for ChangeUint32ToTagged in ChangeLowering.
...
TEST=compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/491433002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23215 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 04:01:36 +00:00
bmeurer@chromium.org
37058c1413
[turbofan] Add TruncateFloat64ToInt32 machine operator.
...
Fix ChangeLowering to use TruncateFloat64ToInt32.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/484103002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23214 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 04:01:00 +00:00
verwaest@chromium.org
597123b8cd
Get rid of last non-storeic use of JSReceiver::Lookup
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/487333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 17:04:23 +00:00
verwaest@chromium.org
1a8bed477e
Use LookupIterator to transition to accessors
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/490533002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23210 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 17:02:04 +00:00
sigurds@chromium.org
ae41c7e4a5
Revert "Load global object and builtins from activation."
...
This reverts commit r23205.
Setting string-type flags in unit tests is not a good idea.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/489543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23208 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 16:07:15 +00:00
verwaest@chromium.org
f47ff8f1da
Remove unnecessary LookupIterator instantiation
...
BUG=
R=aandrey@chromium.org
Review URL: https://codereview.chromium.org/485113003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23207 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 16:07:05 +00:00
dslomov@chromium.org
21b95cc356
Pass allow_classes to reusable_preparser
...
R=arv@chromium.org , marja@chromium.org
Review URL: https://codereview.chromium.org/471603004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23206 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 15:42:47 +00:00
sigurds@chromium.org
e07c82baf2
Load global object and builtins from activation.
...
BUG=
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/474633003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23205 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 15:16:23 +00:00
arv@chromium.org
8d189e84b4
ES6: Make sure we do not store -0 as the key in Map/Set
...
BUG=v8:3515
LOG=Y
R=adamk@chromium.org , dslomov@chromium.org
Review URL: https://codereview.chromium.org/478683002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23204 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 15:15:41 +00:00
arv@chromium.org
eb7fcad7c5
Remove removed flags from tests
...
BUG=None
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/454003002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23203 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 15:09:38 +00:00
verwaest@chromium.org
f268f02092
Get rid of LookupRealNamedProperty and LookupRealNamedPropertyInPrototypes and update clients
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/481043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23202 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 14:58:41 +00:00
verwaest@chromium.org
6b4f2a130f
Use LookupIterator (and rewrite) DebugLookupResultValue and clients
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/468943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23201 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 14:55:47 +00:00
machenbach@chromium.org
b4cfc96ab9
[Auto-roll] Bump up version to 3.29.8.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/488543004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23200 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 14:34:12 +00:00
Jacob.Bramley@arm.com
dabb34b28b
ARM64: Remove ToOperand32I and ToOperand32U.
...
These were front-ends to ToOperand32, to specify sign-extension.
However, since r22148, bits 63-32 are ignored for 32-bit operations
anyway, so there's no need for the caller to be explicit.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/483263003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 13:32:24 +00:00
sigurds@chromium.org
b488b2ed29
Revert "Add initial support for inlining."
...
This reverts commit r23197.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/481413002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23198 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 12:48:44 +00:00
sigurds@chromium.org
4b943f35cf
Add initial support for inlining.
...
* Add stack depth checking to function tester.
* Make context specialization clean up after itself.
* Add UpdateToAndIncrement to Inputs::iterator.
Uses:iterator already provides this member function.
* Allow next node id in graph to be set.
R=mstarzinger@chromium.org , titzer@chromium.org
Review URL: https://codereview.chromium.org/453833003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23197 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 12:23:19 +00:00
rossberg@chromium.org
8394975ec7
Expose well-known Symbols to C++ API.
...
BUG=341423
LOG=Y
R=arv@chromium.org , dcarney@chromium.org , rossberg@chromium.org
Review URL: https://codereview.chromium.org/483173002
Patch from Yutaka Hirano <yhirano@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23196 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 12:08:46 +00:00
ulan@chromium.org
ed668b8f2c
Trace scavenger throughput.
...
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/487753003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23195 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 12:07:59 +00:00
rossberg@chromium.org
30af557955
Implement ES6 Array.of()
...
BUG=v8:3427
LOG=N
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/364853009
Patch from Diego Pino <dpino@igalia.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23194 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 11:38:38 +00:00
sigurds@chromium.org
85058ce97d
Set ScopeInfo when compiling for unit tests.
...
This is required to correctly treat eval in unit tests.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/453953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23193 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 11:24:24 +00:00
ulan@chromium.org
1def756751
Update toolchain for Android mipsel, ia32, x87.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/486173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23192 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 11:20:42 +00:00
vegorov@chromium.org
948a0dea44
When marking dependent code for deoptimization print the group that is being deoptimized.
...
Otherwise it is impossible to figure out from the --trace-deoptimization output what is going on.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/467183002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23191 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 10:56:49 +00:00
bmeurer@chromium.org
10678fb22f
Setup heap-unittests and runtime-unittests.
...
Initial import of empty unit test suites for Toon and Hannes.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/475233005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23190 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 10:54:54 +00:00
rodolph.perfetta@arm.com
4d895bd217
ARM64: Refactor instruction selection unit tests.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/475823002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23188 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 10:14:29 +00:00
bmeurer@chromium.org
c26d0b5f20
Fix NaCl build.
...
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/472823003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23187 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 09:20:51 +00:00
bmeurer@chromium.org
7068a4ea6b
Fix types for SimplifiedLowering.
...
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/484603003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23186 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 09:17:00 +00:00
yangguo@chromium.org
5f5f8e6724
Make internalized string parser in JSON.parse GC-safe
...
SubStringKey::AsHandle is not GC-safe because the string backing store
may move.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/484703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23185 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 08:53:38 +00:00
bmeurer@chromium.org
cf51230881
[turbofan] Add proper conversion operators for int32<->int64.
...
This affects arm64 and x64. Note that we do not yet optimize
these conversions. Later we will add support for merging these
conversion operators into other operations during instruction
selection.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/487723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23184 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 08:48:41 +00:00
hpayer@chromium.org
91599ffc6c
Do not install fillers when right trimming large objects.
...
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/487703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23183 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 08:35:39 +00:00
yangguo@chromium.org
3527f40b7e
Reorder native javascript files.
...
R=verwaest@chromium.org
BUG=403717
LOG=N
Review URL: https://codereview.chromium.org/470083003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23182 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 08:29:48 +00:00
ulan@chromium.org
96038b7183
Fix Android build.
...
BUG=v8:3506
LOG=N
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/486123002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23181 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 08:27:33 +00:00
verwaest@chromium.org
5598348272
Revert "Get rid of dead version of GetNormalizedProperty"
...
(Doh, landed too early)
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/487163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23180 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 08:14:01 +00:00
machenbach@chromium.org
328cdd1106
[Auto-roll] Bump up version to 3.29.7.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/483223003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23179 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 07:34:18 +00:00
verwaest@chromium.org
c70ca1344a
Get rid of dead version of GetNormalizedProperty
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/481073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23178 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 07:09:41 +00:00
bmeurer@chromium.org
e0e17b905d
Revert "[arm] Shorter test names for parameterized tests."
...
This reverts commit r23142 because GoogleTest is very picky about the
parameterized test case names, so not even using an anonymous namespace
can please GTest. Also reverts the renaming applied to in the
ChangeLowering unit test.
TBR=jarin@chromium.org
BUG=v8:3489
LOG=n
Review URL: https://codereview.chromium.org/484953003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23177 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-19 05:24:32 +00:00