Commit Graph

18014 Commits

Author SHA1 Message Date
yangguo@chromium.org
930e5ccc3e Implement Math.expm1 using port from fdlibm.
R=rtoy@chromium.org
BUG=v8:3479
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23238 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 14:24:07 +00:00
ulan@chromium.org
63134745b4 Fix EstimateMarkingStepSizeTest.
R=wingo@igalia.com
TBR=hpayer@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23237 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 14:20:59 +00:00
verwaest@chromium.org
10d53f121e Restore CHECK_DERIVED_PROPERTY
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23236 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 14:16:28 +00:00
verwaest@chromium.org
4acf44d759 Return empty handle if GetPropertyByLookup has no result.
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23235 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 13:52:49 +00:00
bmeurer@chromium.org
f498fa5859 Fix BUILD.gn.
TBR=yanggou@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23232 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-20 13:17:59 +00:00
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