- 07 Sep, 2016 2 commits
-
-
shiyu.zhang authored
This is a complement to https://codereview.chromium.org/2281523002. The patch above reversed the order of nodes with same latency, which caused bench_copy.js 4% regression and bench_skinning.js 5% regression on Atom when enabling '--turbo-instruction-scheduling' flag according to our observation. We submit this patch to sort the nodes with same latency in original order. It aligns with instruction scheduling logic before the patch above and fixes these regression. BUG= Review-Url: https://codereview.chromium.org/2284373002 Cr-Commit-Position: refs/heads/master@{#39228}
-
adamk authored
R=littledan@chromium.org Review-Url: https://codereview.chromium.org/2302183002 Cr-Commit-Position: refs/heads/master@{#39227}
-
- 06 Sep, 2016 38 commits
-
-
dgozman authored
- inspector becomes a dependency of v8_base; - generated public protocol files are placed to gen/v8/include/inspector/<Domain.h>; - added v8_enable_inspector_override to be used in embedders (gn only); - combined public headers into v8-inspector.h and v8-inspector-protocol.h. BUG=chromium:635948 Review-Url: https://codereview.chromium.org/2292053003 Cr-Commit-Position: refs/heads/master@{#39226}
-
jshin authored
Spec discussion: https://github.com/tc39/ecma402/issues/30 It's in stage 4 and Firefox has already implemented it. For now, it's added to HARMONY_IN_PROGRESS bucket behind '--datetime-format-to-parts' flag. BUG=v8:5244 TEST=intl/date-format/date-format-to-parts.js TEST=test262/intl402/DateTimeFormat/prototype/formatToParts/* Review-Url: https://codereview.chromium.org/2273953003 Cr-Commit-Position: refs/heads/master@{#39225}
-
jarin authored
Similarly to the word32->float64 case, we interpret word32 as uint32 if the value is word32 truncated. This is fine because the users declared they only care about mod 2^32 of the value (that's what word32 truncation means). This CL also removes the ad-hoc handling of this situation (https://codereview.chromium.org/2311903002). BUG=chromium:644048 Review-Url: https://codereview.chromium.org/2312003005 Cr-Commit-Position: refs/heads/master@{#39224}
-
jarin authored
Review-Url: https://codereview.chromium.org/2305523004 Cr-Commit-Position: refs/heads/master@{#39223}
-
bakkot authored
Move the code to perform function name inference for properties into parsing the properties themselves, instead of the containing object. This allows us to avoid unnecessary calls when parsing shorthand properties and methods and simplifies the logic in the remaining cases. Also fixes an edge case bug: inferring the name of the getter in `class { static get constructor(){} }`. Review-Url: https://codereview.chromium.org/2313723005 Cr-Commit-Position: refs/heads/master@{#39222}
-
jbroman authored
This yields a ~20% serialization time improvement on typical JSON-esque data. BUG=chromium:148757 Review-Url: https://codereview.chromium.org/2304563004 Cr-Commit-Position: refs/heads/master@{#39221}
-
mlippautz authored
BUG=chromium:636331 R=ulan@chromium.org Review-Url: https://codereview.chromium.org/2314803002 Cr-Commit-Position: refs/heads/master@{#39220}
-
bakkot authored
This introduces ClassLiteralProperty and a supertype LiteralProperty of it and ObjectLiteralProperty. It also splits the parsing of the two. This substiantially clarifies some logic, especially as classes continue to evolve, and is also about a 2% performance improvement to parsing either kind of property (since no work is wasted on logic only necessary for the other kind). Also, it saves a word on ObjectLiteralProperties. Review-Url: https://codereview.chromium.org/2302643002 Cr-Commit-Position: refs/heads/master@{#39219}
-
franzih authored
BUG= Review-Url: https://codereview.chromium.org/2311913002 Cr-Commit-Position: refs/heads/master@{#39218}
-
jkummerow authored
This extends TryToName by HeapNumber-to-intptr support and cached array index retrieval from non-internalized strings, and uses it in the KeyedLoadIC_Generic stub. Bonus: avoid needless movsxlq on x64 in LoadFixed{,Double}ArrayElement helpers by introducing INTPTR_PARAMETER mode. Review-Url: https://codereview.chromium.org/2277363002 Cr-Commit-Position: refs/heads/master@{#39217}
-
leszeks authored
For historical reasons, the interpreter's bytecode expectations tests required a type for the constant pool. This had two disadvantages: 1. Strings and numbers were not visible in mixed pools, and 2. Mismatches of pool types (e.g. when rebaselining) would cause parser errors This removes the pool types, making everything 'mixed', but appending the values to string and number valued constants. Specifying a pool type in the *.golden header now prints a warning (for backwards compatibility). BUG=v8:5350 Review-Url: https://codereview.chromium.org/2310103002 Cr-Commit-Position: refs/heads/master@{#39216}
-
franzih authored
BUG=v8:5260 Review-Url: https://codereview.chromium.org/2312863003 Cr-Commit-Position: refs/heads/master@{#39215}
-
fmeawad authored
https://codereview.chromium.org/2296243002/ introduced 2 minor bugs related to the Reset scope. The tracing version requires that we reset the counters everytime we start a new top level trace event, unless the top level one is not really a top level (i.e. has the right type but called in a nested way) Bugs are: 1- Reseting was guarded behind a check for the runtime call stats version only. 2- We never set that we are already inside a scope, so the nested case would fail as well. R=lpy@chromium.org, cbruni@chromium.org BUG=642373 Review-Url: https://codereview.chromium.org/2311033002 Cr-Commit-Position: refs/heads/master@{#39214}
-
ulan authored
This patch - extracts the logic of keeping track of allocated bytes from the actual incremental marking step. - replaces OldSpaceStep with a check for incremental marking start. - removes the force_marking parameter of AdvanceIncrementalMarking. BUG=chromium:616434 LOG=NO Review-Url: https://codereview.chromium.org/2304123003 Cr-Commit-Position: refs/heads/master@{#39213}
-
mlippautz authored
R=verwaest@chromium.org BUG= Review-Url: https://codereview.chromium.org/2316503004 Cr-Commit-Position: refs/heads/master@{#39212}
-
mlippautz authored
Together with the presubmit rule of prohibiting src/heap/* includes except for heap.h this now properly hides all heap internals. R=ulan@chromium.org BUG= Review-Url: https://codereview.chromium.org/2314783002 Cr-Commit-Position: refs/heads/master@{#39211}
-
machenbach authored
Revert of [turbofan] ARM: Implement vswp and use in gap resolver (patchset #2 id:20001 of https://codereview.chromium.org/2313803003/ ) Reason for revert: Breaks arm compilation: https://build.chromium.org/p/client.v8.ports/builders/V8%20Arm%20-%20builder/builds/3549 Original issue's description: > [turbofan] ARM: Implement vswp and use in gap resolver > > Use vswp to switch double-precision registers in the gap resolver, with fall > back temp register-based code if NEON is not available. > > BUG= > > Committed: https://crrev.com/2837c2e65a2ee5b9fc610f30ce1215f52323ecbd > Cr-Commit-Position: refs/heads/master@{#39209} TBR=bmeurer@chromium.org,epertoso@chromium.org,martyn.capewell@arm.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review-Url: https://codereview.chromium.org/2314003003 Cr-Commit-Position: refs/heads/master@{#39210}
-
martyn.capewell authored
Use vswp to switch double-precision registers in the gap resolver, with fall back temp register-based code if NEON is not available. BUG= Review-Url: https://codereview.chromium.org/2313803003 Cr-Commit-Position: refs/heads/master@{#39209}
-
franzih authored
BUG= Review-Url: https://codereview.chromium.org/2301393002 Cr-Commit-Position: refs/heads/master@{#39208}
-
rmcilroy authored
BUG=v8:5203 Review-Url: https://codereview.chromium.org/2278153003 Cr-Commit-Position: refs/heads/master@{#39207}
-
mlippautz authored
This way we avoid the cyclic dependency between objects.h and heap.h and still have one definition. Add a static assert that this size is indeed smaller than the payload of a page. Follow ups can finally remove the dependency on spaces.h for all heap.h users. R=ulan@chromium.org,bmeurer@chromium.org,vogelheim@chromium.og Review-Url: https://codereview.chromium.org/2311203002 Cr-Commit-Position: refs/heads/master@{#39206}
-
mstarzinger authored
This adds handling of {IrOpcode::kObjectIsReceiver} nodes to the escape status analysis. Such uses are treated as escaping for now until we add dedicated handling to the escape analysis reducer. R=bmeurer@chromium.org TEST=mjsunit/regress/regress-crbug-631027 BUG=chromium:631027 Review-Url: https://codereview.chromium.org/2317623003 Cr-Commit-Position: refs/heads/master@{#39205}
-
rmcilroy authored
The constructor and new.target arguments were passed to CallConstruct in the wrong order by BytecodeGraphBuilder, which caused subclassing to be incorrect when optimizing from bytecode. Also clean up some unecessary functions in interpreter.cc found while figuring this out. BUG=chromium:642409 Review-Url: https://codereview.chromium.org/2312103002 Cr-Commit-Position: refs/heads/master@{#39204}
-
jacob.bramley authored
ARMv6 has the same basic barriers as ARMv7+, but they are accessed using the CP15 coprocessor. This patch allows the assembler to select the appropriate instruction. This also fixes TurboFan's atomic loads and stores for ARMv6 platforms. BUG= Review-Url: https://codereview.chromium.org/2318553002 Cr-Commit-Position: refs/heads/master@{#39203}
-
jacob.bramley authored
ARMv8 can use vminnm and vmaxnm to handle most inputs. Other platforms use an implementation similar to what was there before, except that out-of-line code is used for the uncommon cases. BUG= Review-Url: https://codereview.chromium.org/2313863003 Cr-Commit-Position: refs/heads/master@{#39202}
-
machenbach authored
Reland of [gn] Switch win clang bot to gn (patchset #1 id:1 of https://codereview.chromium.org/2311853002/ ) Reason for revert: Trying reland with plugin switched off. Original issue's description: > Revert of [gn] Switch win clang bot to gn (patchset #1 id:1 of https://codereview.chromium.org/2310863002/ ) > > Reason for revert: > Fails compilation: > https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20clang > > Original issue's description: > > [gn] Switch win clang bot to gn > > > > BUG=chromium:474921 > > NOTRY=true > > > > Committed: https://crrev.com/1740587772bbd1ffb7b79a90deb16519e8d47588 > > Cr-Commit-Position: refs/heads/master@{#39156} > > TBR=jochen@chromium.org,vogelheim@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=chromium:474921 > > Committed: https://crrev.com/49e13ea6eab4158915a75b95ccc9f01892924d9e > Cr-Commit-Position: refs/heads/master@{#39158} TBR=jochen@chromium.org,vogelheim@chromium.org NOTRY=true BUG=chromium:474921,chromium:644096 Review-Url: https://codereview.chromium.org/2312093002 Cr-Commit-Position: refs/heads/master@{#39201}
-
mlippautz authored
Replace first page size in the snapshots with a heap logic that trims pages after deserialization. The snapshot provided page sizes was just an approximation, while the heap knows exactly where to trim. Furthermore, trim the pages directly after deserialization, leaving no wiggle room for further objects. This avoids pollution of the immortal immovable pages with regular objects, e.g. Contexts. The downside is that we potentially require expanding the space with a new page. BUG=chromium:636331 Review-Url: https://codereview.chromium.org/2311963002 Cr-Commit-Position: refs/heads/master@{#39200}
-
ahaas authored
BUG=chromium:644182 R=titzer@chromium.org TEST=module-decoder-unittest.cc:ExportNameWithInvalidStringLength Review-Url: https://codereview.chromium.org/2310023002 Cr-Commit-Position: refs/heads/master@{#39199}
-
bmeurer authored
Keep the unrestricted feedback type around during retyping and use that to check whether an overflow check is actually necessary when doing the lowering of SpeculativeNumberAdd/Subtract/Multiply. If based on feedback that is taken for the inputs we already know that the result of the operation fits into Signed32 or Unsigned32 range, then we don't need to perform any overflow checks. R=mvstanton@chromium.org BUG=v8:5267,v8:5270 Review-Url: https://codereview.chromium.org/2309193003 Cr-Commit-Position: refs/heads/master@{#39198}
-
rmcilroy authored
BUG=chromium:642111 Review-Url: https://codereview.chromium.org/2313763002 Cr-Commit-Position: refs/heads/master@{#39197}
-
mlippautz authored
- Move implemnetation details into -inl.h or .cc file - Inline NewSpace::Contains manually R=ulan@chromium.org Review-Url: https://codereview.chromium.org/2316513002 Cr-Commit-Position: refs/heads/master@{#39196}
-
marja authored
Rebuilding (after touching certain files) is crazy slow because includes are out of control. The (last remaining) offending include path is: ast.h <- liveedit.h <- debug.h <- src/x64/assembler-whatever-port-inl.h <- src/macro-assembler.h <- everything possible With this CL, the rebuild steps needed when touching ast-value-factory.h drops from 365 to 181. BUG=v8:5294 TBR=bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2316443002 Cr-Commit-Position: refs/heads/master@{#39195}
-
bmeurer authored
Previously we always lowered JSToBoolean(x:Number) to the subgraph NumberLessThan(0.0, NumberAbs(x)), which deals with both 0, -0 and NaNs appropriately. However this doesn't always generate the best, especially when we can later derive from feedback that x is always an Integral32 value, where the ideal code would be just a single comparison to 0 w/o the absolute value computation. R=mvstanton@chromium.org BUG=v8:5267,v8:5270 Review-Url: https://codereview.chromium.org/2309953002 Cr-Commit-Position: refs/heads/master@{#39194}
-
jacob.bramley authored
These are ARMv8 instructions that will be used in a follow-up patch. BUG= Review-Url: https://codereview.chromium.org/2273003002 Cr-Commit-Position: refs/heads/master@{#39193}
-
jochen authored
This will allow for chaining ScopeInfos together to form the same chains as contexts chains currently do. BUG=v8:5215 R=mstarzinger@chromium.org,marja@chromium.org,bmeurer@chromium.org,rmcilroy@chromium.org Review-Url: https://codereview.chromium.org/2314483002 Cr-Commit-Position: refs/heads/master@{#39192}
-
jgruber authored
Prior to 69debbb5, InstallGetterSetter was bugged and ignored all passed attributes, installing as DONT_ENUM instead. This commit makes sure we match old behavior now that that bug is fixed. BUG=v8:5339 Review-Url: https://codereview.chromium.org/2316513003 Cr-Commit-Position: refs/heads/master@{#39191}
-
mtrofin authored
The Print APIs on the instruction model are for debugging. At debug time, we cannot (easily) synthesize an output stream, hence the choice of directing to stdout in those APIs. The concern in https://codereview.chromium.org/2293413004/ is addressed by the changes in pipeline.cc, using the various operator<<, and does not require the changes in instruction.{h|cc}, and the generalization of the Print APIs. BUG= Review-Url: https://codereview.chromium.org/2304423002 Cr-Commit-Position: refs/heads/master@{#39190}
-
v8-autoroll authored
Rolling v8/build to 464a8fa0e414f18a55f20f2a6981778f105060da TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2313833002 Cr-Commit-Position: refs/heads/master@{#39189}
-