- 06 Sep, 2016 29 commits
-
-
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}
-
jbroman authored
This restores the contract that all API methods that return Maybe<T> or MaybeLocal<T> always throw an exception when they return nothing. Since v8::ValueDeserializer::ReadHeader can now throw exceptions, it needs a Local<Context> parameter so that it can set up execution state (entering the context, etc.). The old method has been marked for deprecation, but since this API is experimental I intend to remove it as soon as I've removed the use from Blink. value-serializer-unittest has been updated to expect an exception in all decode failure cases. BUG=chromium:148757,chromium:641964 Review-Url: https://codereview.chromium.org/2308053002 Cr-Commit-Position: refs/heads/master@{#39188}
-
- 05 Sep, 2016 11 commits
-
-
mstarzinger authored
This handles the case where preparation of bytecode might fail inside Compiler::EnsureBytecode due to the underlying function being a fully validated asm.js module. We simply bailout of bytecode preparation. R=bradnelson@chromium.org TEST=mjsunit/regress/regress-crbug-644111 BUG=chromium:644111 Review-Url: https://codereview.chromium.org/2309853002 Cr-Commit-Position: refs/heads/master@{#39187}
-
mvstanton authored
Disable the propagation of truncations through Phi, Select or TypeGuard if the output representation is tagged, because when the truncations are taken we don't necessarily reflect this in the types and therefore we might end up in a situation where we produce a word32 value, the type says Number, and now we need to change that to tagged, which is not possible since we don't know how to interpret the bits, i.e. whether the value is Signed32 or Unsigned32. BUG=chromium:644048 Review-Url: https://codereview.chromium.org/2311903002 Cr-Commit-Position: refs/heads/master@{#39186}
-
mlippautz authored
R=ulan@chromium.org Review-Url: https://codereview.chromium.org/2311003002 Cr-Commit-Position: refs/heads/master@{#39185}
-
mlippautz authored
Move either in heap-inl.h or heap.cc, depending on the performance requirements. R=ulan@chromium.org Review-Url: https://codereview.chromium.org/2312643003 Cr-Commit-Position: refs/heads/master@{#39184}
-
georgia.kouveli authored
Generate a flag-setting instruction for a binary operation when the result is tested for equality/inequality to zero. BUG= Review-Url: https://codereview.chromium.org/2315453002 Cr-Commit-Position: refs/heads/master@{#39183}
-
neis authored
There are no CONST function declarations. Also make check independent of variable location. R=adamk@chromium.org, rmcilroy@chromium.org BUG= Review-Url: https://codereview.chromium.org/2301863002 Cr-Commit-Position: refs/heads/master@{#39182}
-
mvstanton authored
BUG= Review-Url: https://codereview.chromium.org/2309823002 Cr-Commit-Position: refs/heads/master@{#39181}
-
fmeawad authored
After we landed the tracing runtime call stats, which gave us a lot of V8 insight in tracing, we noticed that there is some arising issues and discrepancies. Issues include: Missing trace events, that happened due to transforming those trace events into runtime calls Discrepancies include: Missing categories in Runtime call stats like GC, because we are not handling the Scoped runtime calls properly in the tracing version. To reduce/eliminate those issue, we are taking a small step back. We are unifying the RuntimeStats code and using the original one. That would allow us to use all the original probes but emit trace events from them. We are also putting back the trace-events in their place. The output from both system should be intact (Except of the addition of the missing trace-events). Also as a byproduct, we are reducing the number of context scopes by half since we are using the same scope as runtime call stats. As a follow up to this CL, we will address the non-scoped Runtime Call Stats (mainly in GC). BUG=642373 Review-Url: https://codereview.chromium.org/2296243002 Cr-Commit-Position: refs/heads/master@{#39180}
-
mvstanton authored
And not the Representation dimension of Type*. BUG= Review-Url: https://codereview.chromium.org/2312703002 Cr-Commit-Position: refs/heads/master@{#39179}
-
ishell authored
Review-Url: https://codereview.chromium.org/2316453002 Cr-Commit-Position: refs/heads/master@{#39178}
-
jgruber authored
Revert of [regexp] Port RegExpConstructor (patchset #2 id:20001 of https://codereview.chromium.org/2302773002/ ) Reason for revert: Performance regressions: crbug.com/644087 Clusterfuzz: crbug.com/644074 We'll reland all regexp changes at once when the port is complete and at least performance-neutral, since the partial port requires slow workarounds. Original issue's description: > [regexp] Port RegExpConstructor > > BUG=v8:5339 > > Committed: https://crrev.com/0aa80be16b8d876999066545c2922e1291e09610 > Cr-Commit-Position: refs/heads/master@{#39074} TBR=bmeurer@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=v8:5339 Review-Url: https://codereview.chromium.org/2312743002 Cr-Commit-Position: refs/heads/master@{#39177}
-