- 23 Aug, 2016 6 commits
-
-
verwaest authored
This avoids needing to allocate a zonelist on the fly later, sorting variables_, for which we also need to keep track of order in the hashmap. In a later phase we can make sure that Variable is always uniquely in either of params_, temps_ and ordered_variables_. In that case we can use a linked list through Variable. BUG=v8:5209 Review-Url: https://codereview.chromium.org/2264053003 Cr-Commit-Position: refs/heads/master@{#38810}
-
mstarzinger authored
This changes the compilation pipeline so that mixed stacks are allowed when bytecode is preserved. This means there can be activations of both, "baseline" as well as "unoptimized" code active on the stack at the same time for any single given function. R=rmcilroy@chromium.org BUG=v8:4280 Review-Url: https://codereview.chromium.org/2267693002 Cr-Commit-Position: refs/heads/master@{#38809}
-
keishi authored
BUG=chromium:570268,chromium:621829 Review-Url: https://codereview.chromium.org/2233683002 Cr-Commit-Position: refs/heads/master@{#38808}
-
mtrofin authored
Clone the indirect function table(s) when instantiating. This is in preparation to avoiding having a compiled code template. BUG= Review-Url: https://codereview.chromium.org/2273483002 Cr-Commit-Position: refs/heads/master@{#38807}
-
bradnelson authored
Make use of %IsAsmWasmCode in place of Wasm.instantiateModuleFromAsm, in order to reduce the surface area of the Wasm object, and to focus on testing asm.js coming in via the parser. Ignore extra CONST_LEGACY assignment introduced by the parser when modules have the form: (function Foo(a, b, c) {..}); This requires both a validator and AsmWasmBuilder change. Move stdlib use collection to import time, to reject modules that import a function, even if not used. BUG= https://bugs.chromium.org/p/v8/issues/detail?id=4203 LOG=N R=jpp@chromium.org,titzer@chromium.org Review-Url: https://codereview.chromium.org/2264913002 Cr-Commit-Position: refs/heads/master@{#38806}
-
v8-autoroll authored
Rolling v8/build to 59daf502c36f20b5c9292f4bd9af85791f8a5884 Rolling v8/third_party/WebKit/Source/platform/inspector_protocol to 547960151fb364dd9a382fa79ffc9abfb184e3d1 Rolling v8/tools/clang to 3afb04a8153e40ff00f9eaa14337851c3ab4a368 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2264413002 Cr-Commit-Position: refs/heads/master@{#38805}
-
- 22 Aug, 2016 34 commits
-
-
littledan authored
This flag was shipped on in 52, so it's due for removal. The patch includes removing the deprecated and unused-in-Blink API Promise::Chain, and many test updates. R=adamk@chromium.org BUG=v8:4633 Review-Url: https://codereview.chromium.org/2267033002 Cr-Commit-Position: refs/heads/master@{#38804}
-
bjaideep authored
Port 2027b0be Original commit message: The new operators are implemented similar to the Float64(Max|Min) which already exist. The purpose of the new operators is the implementation of the F32Max and F32Min instructions in WebAssembly. R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= LOG=N Review-Url: https://codereview.chromium.org/2263383002 Cr-Commit-Position: refs/heads/master@{#38803}
-
adamk authored
The following code was previously accepted: async function f() { let g = (await) => {}; } But per the spec, using 'await' is disallowed in arrow parameters by an early error rule (just as 'yield' is disallowed in arrow params inside generators). There was special logic in ParseUnaryExpression which seems to have been there only to allow that case. Having removed it, we get a SyntaxError in the right cases anyway when ParseUnaryExpression chokes on whatever illegal token follows 'await' in the cases this code previously handled. Also removes the unnecessary AsyncBindingPatternProduction enum value. R=caitp@igalia.com, littledan@chromium.org BUG=v8:4483 Review-Url: https://codereview.chromium.org/2258313002 Cr-Commit-Position: refs/heads/master@{#38802}
-
jyan authored
R=joransiu@ca.ibm.com, bjaideep@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= Review-Url: https://codereview.chromium.org/2265073003 Cr-Commit-Position: refs/heads/master@{#38801}
-
mattloring authored
Includes fast paths in the runtime for DictionaryElementsAccessor, FastSmiOrObjectElementsAccessor, FastDoubleElementsAccessor, TypedElementsAccessor, and SloppyArgumentsElementsAccessor. BUG= Review-Url: https://codereview.chromium.org/2232063002 Cr-Commit-Position: refs/heads/master@{#38800}
-
bjaideep authored
Port 4598d913 Original commit message: This fixes the self-healing mechanism for closures in the interpreter entry trampoline not that bytecode can be preserved even when baseline code is already available. R=mstarzinger@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG=chromium:638225 LOG=N Review-Url: https://codereview.chromium.org/2265193002 Cr-Commit-Position: refs/heads/master@{#38799}
-
adamk authored
Also lots of cleanup around the checking for 'await' as an identifier throughout the parser and preparser. R=caitp@igalia.com, littledan@chromium.org BUG=v8:4483,v8:5298 Review-Url: https://codereview.chromium.org/2267493002 Cr-Commit-Position: refs/heads/master@{#38798}
-
verwaest authored
- Now "inner_scope_uses_eval_" is also set of scopes that call eval themselves. - AllowLazyParsing doesn't check force_eager_compilation_ anymore. - Both inner_scope_uses_eval_ and force_eager_compilation_ are propagated outwards immediately when set. BUG=v8:5209 Review-Url: https://codereview.chromium.org/2269603002 Cr-Commit-Position: refs/heads/master@{#38797}
-
bradnelson authored
Check remaining asm.js stdlib functions for validitity at instatiation. Fail when a member is referenced, even if not used. BUG= https://bugs.chromium.org/p/v8/issues/detail?id=4203 LOG=N R=jpp@chromium.org,titzer@chromium.org Review-Url: https://codereview.chromium.org/2267633002 Cr-Commit-Position: refs/heads/master@{#38796}
-
jbroman authored
BUG=chromium:148757 Review-Url: https://codereview.chromium.org/2255973005 Cr-Commit-Position: refs/heads/master@{#38795}
-
vogelheim authored
(40B -> 32B, due to alignment rules. Should be neutral on 32b platforms.) BUG=v8:4947 Review-Url: https://codereview.chromium.org/2256183005 Cr-Commit-Position: refs/heads/master@{#38794}
-
jochen authored
When doing a component build, some test binaries link against the object files directly, bypassing the components. This results, however, and rightly so, in linker warnings. In gyp, we just suppressed them. During the transition to gn, this was dropped for two binaries. Here I add the suppressions back in. Long term, we should either change the tests to go through the public API, or export the required symbols. BUG=chromium:633688 R=jkummerow@chromium.org Review-Url: https://codereview.chromium.org/2261123003 Cr-Commit-Position: refs/heads/master@{#38793}
-
caitp authored
BUG=v8:5264, v8:5268 R=mstarzinger@chromium.org, bmeurer@chromium.org, epertoso@chromium.org Review-Url: https://codereview.chromium.org/2247353005 Cr-Commit-Position: refs/heads/master@{#38792}
-
ahaas authored
Now that -0.0 and 0.0 are ordered by Float64Max and Float64Min, these two operator are both associative and commutative for all numbers. The operators would not be associative and commutative for NaNs, but neither JavaScript nor WebAssembly distinguish between NaNs nowadays. R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2263163002 Cr-Commit-Position: refs/heads/master@{#38791}
-
jgruber authored
CallPrinter currently has only a single use, namely to print the call site when throwing CalledNonCallable (ConstructedNonConstructable) errors. This ensures that unicode call sites such as "あいう"() are printed correctly by using an IncrementalStringBuilder internally. BUG=637167 Review-Url: https://codereview.chromium.org/2265073002 Cr-Commit-Position: refs/heads/master@{#38790}
-
bjaideep authored
For PPC/s390 the case is missing where reference=attachedreference how_to_code=kFromCode and where_to_point=kStartOfObject. On PPC/s390 IsCodedSpecially always return true, hence how_to_code will not be a straight pointer. This should also fix the similar issue on mipsel. The testcase was added as part of https://codereview.chromium.org/2205973003/ R=mtrofin@chromium.org, yangguo@chromium.org, titzer@chromium.org BUG= LOG=N Review-Url: https://codereview.chromium.org/2247093002 Cr-Commit-Position: refs/heads/master@{#38789}
-
jgruber authored
Disable inlining of Cpp to a direct CEntryStub call when a call would require argument adaption, i.e. when argument adaption is enabled for the given function and the actual argument count differs from the formal parameter count. This is intended to be a temporary fix until we either disable argument adaption for all Cpp builtins or add adaption logic to inlined Cpp builtins. BUG=chromium:639752 Review-Url: https://codereview.chromium.org/2266893002 Cr-Commit-Position: refs/heads/master@{#38788}
-
franzih authored
Fix getter/setter typo so we use the correct object in DCHECK. BUG= Review-Url: https://codereview.chromium.org/2255713002 Cr-Commit-Position: refs/heads/master@{#38787}
-
verwaest authored
BUG=v8:5209 Review-Url: https://codereview.chromium.org/2265903003 Cr-Commit-Position: refs/heads/master@{#38786}
-
rmcilroy authored
NOTRY=true Review-Url: https://codereview.chromium.org/2265053002 Cr-Commit-Position: refs/heads/master@{#38785}
-
ahaas authored
The new operators are implemented similar to the Float64(Max|Min) which already exist. The purpose of the new operators is the implementation of the F32Max and F32Min instructions in WebAssembly. R=titzer@chromium.org, v8-arm-ports@googlegroups.com, v8-mips-ports@googlegroups.com Review-Url: https://codereview.chromium.org/2252863003 Cr-Commit-Position: refs/heads/master@{#38784}
-
jgruber authored
BUG= Review-Url: https://codereview.chromium.org/2255313006 Cr-Commit-Position: refs/heads/master@{#38783}
-
franzih authored
BUG= Review-Url: https://codereview.chromium.org/2262153002 Cr-Commit-Position: refs/heads/master@{#38782}
-
verwaest authored
In theory the flag could otherwise be set on a blockscope that might be finalized (removed) before PropagateScopeInfo can propagate the flag around. In that case we'd lose the flag. BUG=v8:5209 Review-Url: https://codereview.chromium.org/2267683002 Cr-Commit-Position: refs/heads/master@{#38781}
-
rmcilroy authored
Review-Url: https://codereview.chromium.org/2266813003 Cr-Commit-Position: refs/heads/master@{#38780}
-
verwaest authored
This is the only user of outer_scope_calls_sloppy_eval. Inlining it simplifies scope analysis. BUG=v8:5209 Review-Url: https://codereview.chromium.org/2263123002 Cr-Commit-Position: refs/heads/master@{#38779}
-
rmcilroy authored
Adds InterpreterCompilationJob as a sub-class of CompilationJob, to enable off-thread bytecode generation. Currently only used in Interpreter::MakeBytecode. As part of this change, CompilationJob is modified to make it less specific to optimized compilation, renaming the phases as follows: - CreateGraph -> PrepareJob - OptimizeGraph -> ExecuteJob - GenerateCode -> FinalizeJob RegisterWeakObjectsInOptimizedCode is also moved out of CompilationJob and instead becomes a static function on Compiler. BUG=v8:5203 Committed: https://crrev.com/1fb6a7e697e8bc5b4af51647553741f966e00cdc Committed: https://crrev.com/785990e9fc0dd9a9d963d25d0bed2909165e4ca9 Committed: https://crrev.com/d7c6195c4c5cdc080caa74dfe2ae9ecab69bea73 Review-Url: https://codereview.chromium.org/2240463002 Cr-Original-Original-Original-Commit-Position: refs/heads/master@{#38662} Cr-Original-Original-Commit-Position: refs/heads/master@{#38668} Cr-Original-Commit-Position: refs/heads/master@{#38725} Cr-Commit-Position: refs/heads/master@{#38778}
-
marja authored
This makes us able to get rid of dependencies to parser.h from places which only need the ParseInfo, and also gets rid of the curious Parser <-> Compiler circular dependency. Also IWYUd where necessary. BUG= Review-Url: https://codereview.chromium.org/2268513002 Cr-Commit-Position: refs/heads/master@{#38777}
-
mstarzinger authored
This fixes the uncommon fallback when Compiler::CompileOptimized fails creating optimized code and also the underlying SharedFunctionInfo is not compiled. We make sure not to uselessly regenerate the bytecode. R=rmcilroy@chromium.org BUG=chromium:639753 Review-Url: https://codereview.chromium.org/2261123002 Cr-Commit-Position: refs/heads/master@{#38776}
-
jochen authored
BUG=chromium:625155 R=jkummerow@chromium.org Review-Url: https://codereview.chromium.org/2265903002 Cr-Commit-Position: refs/heads/master@{#38775}
-
rmcilroy authored
AstGraphBuilder overrides Visit(Expression*) to ensure that even if there is a stack overflow, a value still gets produced. However, if there was no stack overflow in the overriden function, but calling AstVisitor<AstGraphBuilder>::Visit(expr) pushes us over the stack limit, then the stack overflow check in that function will return without visiting the expression, and the result will never get pushed. To fix this, we add a new VisitNoStackOverflowCheck function which avoids the inner stack check, and call that instead. Since this depends on the size of C++ stack frames, there is no reliable test I can add, however regress-635429.js exibits this behavior after https://codereview.chromium.org/2240463002/ lands. Review-Url: https://codereview.chromium.org/2262703002 Cr-Commit-Position: refs/heads/master@{#38774}
-
verwaest authored
BUG= Review-Url: https://codereview.chromium.org/2266843002 Cr-Commit-Position: refs/heads/master@{#38773}
-
franzih authored
This detects loops with integer decrements. Drive-by fix: Add lower bounds to lower_bounds zone vector instead of upper_bounds. BUG= Review-Url: https://codereview.chromium.org/2260153002 Cr-Commit-Position: refs/heads/master@{#38772}
-
verwaest authored
Now it just relies on NeedsContext and hence is guaranteed to be in sync. BUG=v8:5209 Review-Url: https://codereview.chromium.org/2262133002 Cr-Commit-Position: refs/heads/master@{#38771}
-