- 12 Jan, 2017 33 commits
-
-
bjaideep authored
Port b8294aaa Original Commit Message: Literal arrays and feedback vectors for a function can be garbage collected if we don't have a rooted closure for the function, which happens often. It's expensive to come back from this (recreating boilerplates and gathering feedback again), and the cost is disproportionate if the function was inlined into optimized code. To guard against losing these arrays when we need them, we'll now create literal arrays when creating the feedback vector for the outer closure, and root them strongly in that vector. R=mvstanton@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG=v8:5456 LOG=N Review-Url: https://codereview.chromium.org/2626263002 Cr-Commit-Position: refs/heads/master@{#42280}
-
clemensh authored
Wasm frames can be either compiled or interpreted. For interpreted wasm frames, there is only one physical stack frame representing an arbitrary stack of interpreted functions. Hence the physical stack frame needs to provide a summary of the underlying functions. Summaries were tailored for JavaScript frames before. Now they are universal. The refactored FrameSummaries are now also used in the FrameInspector, and from the StackFrame objects themselves, to avoid code duplication. All dispatch is implemented "manually", making the FrameSummary still stack-allocatable. BUG=v8:5822 R=yangguo@chromium.org, titzer@chromium.org Review-Url: https://codereview.chromium.org/2619353006 Cr-Commit-Position: refs/heads/master@{#42279}
-
mtrofin authored
- updated WebAssembly.Instance ctor uses in our tests to match spec - disallowing mem section *and* mem import, as per spec BUG=v8:5824 Review-Url: https://codereview.chromium.org/2627763002 Cr-Commit-Position: refs/heads/master@{#42278}
-
ishell authored
This is a necessary cleanup before introducing PropertyConstness bit. BUG=v8:5495 Review-Url: https://codereview.chromium.org/2624903003 Cr-Commit-Position: refs/heads/master@{#42277}
-
vogelheim authored
The inlining does not seem to actually improve performance, and hence outlining makes the code a bit more readable. Performance + binary size appear to be at least as good as with inlining. On gcc I get several 10kBs savings in binary size, but only ~100B on clang. In no case have I observed a performance regression. R=marja@chromium.org BUG=v8:3437 Review-Url: https://codereview.chromium.org/2611993002 Cr-Commit-Position: refs/heads/master@{#42276}
-
verwaest authored
BUG= Review-Url: https://codereview.chromium.org/2629143002 Cr-Commit-Position: refs/heads/master@{#42275}
-
marja authored
The bug was caused by AstTraversalVisitor refactoring: https://codereview.chromium.org/2169833002/ InitializerRewriter::VisitRewritableExpression in parser.cc didn't recurse; so it fails when a rewritable expression contains another rewritable expression. See the bug for more details. BUG=chromium:679727 Review-Url: https://codereview.chromium.org/2629623002 Cr-Commit-Position: refs/heads/master@{#42274}
-
bbudge authored
LOG=N BUG=v8:4124 Review-Url: https://codereview.chromium.org/2620343002 Cr-Commit-Position: refs/heads/master@{#42273}
-
bjaideep authored
Add VSX instructions to perform add/sub/mul/div R=jyan@ca.ibm.com, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com, danno@chromium.org, jkummerow@chromium.org, jochen@chromium.org BUG= LOG=N Review-Url: https://codereview.chromium.org/2619763003 Cr-Commit-Position: refs/heads/master@{#42272}
-
jkummerow authored
Revert of Internalize strings in-place (patchset #20 id:380001 of https://codereview.chromium.org/2549773002/ ) Reason for revert: Blocks roll, ASan detects leaking ExternalStrings. Original issue's description: > Internalize strings in-place (reland^2) > > using newly introduced ThinStrings, which store a pointer to the actual, > internalized string they represent. > > BUG=v8:4520 > > (Previously landed as #42168 / af51befe) > (Previously landed as #42193 / 4c699e34) > > Review-Url: https://codereview.chromium.org/2549773002 > Cr-Commit-Position: refs/heads/master@{#42235} > Committed: https://chromium.googlesource.com/v8/v8/+/ec45e6ed2e11698c713e664b1510bc31bcdbbdba TBR=ishell@chromium.org,hpayer@chromium.org,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4520 Review-Url: https://codereview.chromium.org/2626893005 Cr-Commit-Position: refs/heads/master@{#42271}
-
yangguo authored
R=jgruber@chromium.org, mstarzinger@chromium.org BUG=v8:5821 Review-Url: https://codereview.chromium.org/2622863003 Cr-Commit-Position: refs/heads/master@{#42270}
-
mlippautz authored
Embedders should use the EmbedderHeapTracer API. BUG=v8:5828 Review-Url: https://codereview.chromium.org/2628893003 Cr-Commit-Position: refs/heads/master@{#42269}
-
yangguo authored
R=jochen@chromium.org, peria@chromium.org BUG=chromium:617892 Review-Url: https://codereview.chromium.org/2628093003 Cr-Commit-Position: refs/heads/master@{#42268}
-
titzer authored
BUG=chromium:575167 R=rossberg@chromium.org,ahaas@chromium.org,clemensh@chromium.org,bradnelson@chromium.org Review-Url: https://codereview.chromium.org/2623743003 Cr-Original-Original-Commit-Position: refs/heads/master@{#42197} Committed: https://chromium.googlesource.com/v8/v8/+/34b63f050b1a247bb64ddc91c967501ce04e011f Review-Url: https://codereview.chromium.org/2623743003 Cr-Original-Commit-Position: refs/heads/master@{#42214} Committed: https://chromium.googlesource.com/v8/v8/+/71f5650828ffd0162fcd67d9c6ef570a346a8a84 Review-Url: https://codereview.chromium.org/2623743003 Cr-Commit-Position: refs/heads/master@{#42267}
-
machenbach authored
BUG=chromium:680110 TBR=clemensh@chromium.org, titzer@chromium.org, ahaas@chromium.org NOTRY=true Review-Url: https://codereview.chromium.org/2625333002 Cr-Commit-Position: refs/heads/master@{#42266}
-
jochen authored
Since we only can do limited checks during microtask execution, do the checks before actually creating a promise BUG=chromium:658194 R=bmeurer@chromium.org,gsathya@chromium.org Review-Url: https://codereview.chromium.org/2628863002 Cr-Commit-Position: refs/heads/master@{#42265}
-
mvstanton authored
Literal arrays and feedback vectors for a function can be garbage collected if we don't have a rooted closure for the function, which happens often. It's expensive to come back from this (recreating boilerplates and gathering feedback again), and the cost is disproportionate if the function was inlined into optimized code. To guard against losing these arrays when we need them, we'll now create literal arrays when creating the feedback vector for the outer closure, and root them strongly in that vector. BUG=v8:5456 Review-Url: https://codereview.chromium.org/2620753003 Cr-Original-Commit-Position: refs/heads/master@{#42258} Committed: https://chromium.googlesource.com/v8/v8/+/31887804107bf5c103d915f5c601cfaaf1cd7cb6 Review-Url: https://codereview.chromium.org/2620753003 Cr-Commit-Position: refs/heads/master@{#42264}
-
verwaest authored
Before the fix it checked whether the initial map of the base constructor pointed back to the new target. That's only true if initial_map->new_target_is_base() (new.target == target). Now it properly checks that the initial map of the original constructor (new.target) was created in combination with target by checking back that new.target->initial_map()->constructor() == target. BUG= Review-Url: https://codereview.chromium.org/2621303003 Cr-Commit-Position: refs/heads/master@{#42263}
-
bbudge authored
- Floating point, signed, and unsigned. - Disassembler, simulator support too. LOG=N BUG=v8:4124 Review-Url: https://codereview.chromium.org/2602293002 Cr-Commit-Position: refs/heads/master@{#42262}
-
jkummerow authored
BUG=v8:5269 Review-Url: https://codereview.chromium.org/2622003004 Cr-Commit-Position: refs/heads/master@{#42261}
-
machenbach authored
Revert of [TypeFeedbackVector] Root literal arrays in function literals slots (patchset #7 id:120001 of https://codereview.chromium.org/2620753003/ ) Reason for revert: gc stress: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gc%20stress/builds/8105 also on mac Original issue's description: > [TypeFeedbackVector] Root literal arrays in function literals slots > > Literal arrays and feedback vectors for a function can be garbage > collected if we don't have a rooted closure for the function, which > happens often. It's expensive to come back from this (recreating > boilerplates and gathering feedback again), and the cost is > disproportionate if the function was inlined into optimized code. > > To guard against losing these arrays when we need them, we'll now > create literal arrays when creating the feedback vector for the outer > closure, and root them strongly in that vector. > > BUG=v8:5456 > > Review-Url: https://codereview.chromium.org/2620753003 > Cr-Commit-Position: refs/heads/master@{#42258} > Committed: https://chromium.googlesource.com/v8/v8/+/31887804107bf5c103d915f5c601cfaaf1cd7cb6 TBR=bmeurer@chromium.org,mstarzinger@chromium.org,yangguo@chromium.org,mvstanton@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5456 Review-Url: https://codereview.chromium.org/2626863004 Cr-Commit-Position: refs/heads/master@{#42260}
-
clemensh authored
For debugging, we are patching call sites to not call other WASM_FUNCTIONs, but call WASM_TO_INTERPRETER stubs instead. When later re-instantiating / cloning this code, the old logic for patching call sites would miss those calls. This CL changes the way we patch callsites by getting the called function index per callsite from the bytecode. This requires iterating both the source position table and the relocation table at the same time to determine the byte position for each call. Instead of looking up the functions to be replaced in a std::map, we now get the function directly from a FixedArray. This reduces the complexity from O(n*n*log(n)) to O(m), where n is the total number of functions and m is the total byte code length (note that each function is patched individually, so we set up the map n times before). Constant factor are unclear though. BUG=v8:5822 R=titzer@chromium.org Review-Url: https://codereview.chromium.org/2627613002 Cr-Commit-Position: refs/heads/master@{#42259}
-
mvstanton authored
Literal arrays and feedback vectors for a function can be garbage collected if we don't have a rooted closure for the function, which happens often. It's expensive to come back from this (recreating boilerplates and gathering feedback again), and the cost is disproportionate if the function was inlined into optimized code. To guard against losing these arrays when we need them, we'll now create literal arrays when creating the feedback vector for the outer closure, and root them strongly in that vector. BUG=v8:5456 Review-Url: https://codereview.chromium.org/2620753003 Cr-Commit-Position: refs/heads/master@{#42258}
-
hablich authored
Revert of Pull define for version out into v8-version.h and separate build target (patchset #1 id:1 of https://codereview.chromium.org/2621983002/ ) Reason for revert: Blocks roll: https://codereview.chromium.org/2633463002/ Original issue's description: > Pull define for version out into v8-version.h and separate build target > > This is part of removing the dependency of the Chromium browser DLL on > Windows on V8. > > R=jochen@chromium.org > BUG=chromium:581766 > > Review-Url: https://codereview.chromium.org/2621983002 > Cr-Commit-Position: refs/heads/master@{#42243} > Committed: https://chromium.googlesource.com/v8/v8/+/45938454177f53fa24cfc08ad97ccbc162c3ba6d TBR=jochen@chromium.org,machenbach@chromium.org,scottmg@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:581766 Review-Url: https://codereview.chromium.org/2627713008 Cr-Commit-Position: refs/heads/master@{#42257}
-
alph authored
BUG=5820 LOG=N Review-Url: https://codereview.chromium.org/2628463002 Cr-Commit-Position: refs/heads/master@{#42256}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/91344e6..497761f Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/0ef8010..7e08d33 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/8b10e78..d71b471 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/b644731..c30c6ff TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2627933004 Cr-Commit-Position: refs/heads/master@{#42255}
-
bradnelson authored
Revert of [wasm][asm.js] Disable success messages for asm.js (patchset #2 id:20001 of https://codereview.chromium.org/2628703003/ ) Reason for revert: Trigger flaky test. Original issue's description: > [wasm][asm.js] Disable success messages for asm.js > > These interfere with layout tests. > > BUG=v8:4203 > R=titzer@chromium.org,jochen@chromium.org > > Review-Url: https://codereview.chromium.org/2628703003 > Cr-Commit-Position: refs/heads/master@{#42241} > Committed: https://chromium.googlesource.com/v8/v8/+/9e60e7ac365d45f3211314f1ecff395f418de770 TBR=jochen@chromium.org,titzer@chromium.org,bradnelson@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2629033003 Cr-Commit-Position: refs/heads/master@{#42254}
-
bradnelson authored
Revert of [wasm][asm.js] Enable --validate-asm by default. (patchset #2 id:20001 of https://codereview.chromium.org/2624813002/ ) Reason for revert: Triggers flaky tests. Original issue's description: > [wasm][asm.js] Enable --validate-asm by default. > > This directs all asm.js traffic via the Wasm backend. > > R=titzer@chromium.org,aseemgarg@chromium.org > BUG=v8:4203 > > Review-Url: https://codereview.chromium.org/2624813002 > Cr-Original-Commit-Position: refs/heads/master@{#42194} > Committed: https://chromium.googlesource.com/v8/v8/+/946cc371ed4b34d1a9f5cc615b14c41b652562ad > Review-Url: https://codereview.chromium.org/2624813002 > Cr-Commit-Position: refs/heads/master@{#42244} > Committed: https://chromium.googlesource.com/v8/v8/+/3169fb94c98953f002908974a606b51a35178046 TBR=aseemgarg@chromium.org,titzer@chromium.org,bradnelson@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2627893003 Cr-Commit-Position: refs/heads/master@{#42253}
-
bradnelson authored
Revert of [wasm][asm.js] Do same work even when not printing asm info. (patchset #1 id:1 of https://codereview.chromium.org/2629043002/ ) Reason for revert: Triggers flaky tests. Original issue's description: > [wasm][asm.js] Do same work even when not printing asm info. > > Skipping this work seems to perturb a gc-stress issue. > More investigation is likely needed. > > BUG=v8:4203 > R=danno@chromium.org > > Review-Url: https://codereview.chromium.org/2629043002 > Cr-Commit-Position: refs/heads/master@{#42248} > Committed: https://chromium.googlesource.com/v8/v8/+/785cedf1ee6671399c2b2b7f6c6a8119f55195b4 TBR=danno@chromium.org,bradnelson@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2623383002 Cr-Commit-Position: refs/heads/master@{#42252}
-
bradnelson authored
Reland of [wasm][asm.js] Do same work even when not printing asm info. (patchset #1 id:1 of https://codereview.chromium.org/2627223002/ ) Reason for revert: Triggers flaky tests. Original issue's description: > Revert of [wasm][asm.js] Do same work even when not printing asm info. (patchset #1 id:1 of https://codereview.chromium.org/2629043002/ ) > > Reason for revert: > Triggers flaky tests. > > Original issue's description: > > [wasm][asm.js] Do same work even when not printing asm info. > > > > Skipping this work seems to perturb a gc-stress issue. > > More investigation is likely needed. > > > > BUG=v8:4203 > > R=danno@chromium.org > > > > Review-Url: https://codereview.chromium.org/2629043002 > > Cr-Commit-Position: refs/heads/master@{#42248} > > Committed: https://chromium.googlesource.com/v8/v8/+/785cedf1ee6671399c2b2b7f6c6a8119f55195b4 > > TBR=danno@chromium.org,bradnelson@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4203 > > Review-Url: https://codereview.chromium.org/2627223002 > Cr-Commit-Position: refs/heads/master@{#42250} > Committed: https://chromium.googlesource.com/v8/v8/+/636df54873c966eceed4264cabc2360b76221e26 TBR=danno@chromium.org,bradnelson@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2626953003 Cr-Commit-Position: refs/heads/master@{#42251}
-
bradnelson authored
Revert of [wasm][asm.js] Do same work even when not printing asm info. (patchset #1 id:1 of https://codereview.chromium.org/2629043002/ ) Reason for revert: Triggers flaky tests. Original issue's description: > [wasm][asm.js] Do same work even when not printing asm info. > > Skipping this work seems to perturb a gc-stress issue. > More investigation is likely needed. > > BUG=v8:4203 > R=danno@chromium.org > > Review-Url: https://codereview.chromium.org/2629043002 > Cr-Commit-Position: refs/heads/master@{#42248} > Committed: https://chromium.googlesource.com/v8/v8/+/785cedf1ee6671399c2b2b7f6c6a8119f55195b4 TBR=danno@chromium.org,bradnelson@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2627223002 Cr-Commit-Position: refs/heads/master@{#42250}
-
littledan authored
This patch changes the test262 infrastructure to pass individual flags, specified in the status file, for tests for experimental features, rather than passing --harmony for all runs. With this change, it should be easier to run test262 tests in automation when developing new features. The new workflow would be, when adding a flag, include the flag in the test expectations file, and when removing the flag, remove the lines from the test expectations file. This way, the status file does not have to change when staging or unstaging, and you get the benefit of the automated tests before staging starts. R=adamk CQ_INCLUDE_TRYBOTS=master.tryserver.v8:v8_linux_noi18n_rel_ng Review-Url: https://codereview.chromium.org/2601393002 Cr-Commit-Position: refs/heads/master@{#42249}
-
bradnelson authored
Skipping this work seems to perturb a gc-stress issue. More investigation is likely needed. BUG=v8:4203 R=danno@chromium.org Review-Url: https://codereview.chromium.org/2629043002 Cr-Commit-Position: refs/heads/master@{#42248}
-
- 11 Jan, 2017 7 commits
-
-
adamk authored
Revert of [crankshaft] Also inline Math.ceil. (patchset #1 id:1 of https://codereview.chromium.org/2621903002/ ) Reason for revert: Suspected of causing crashes on Canary: https://crbug.com/680108 Original issue's description: > [crankshaft] Also inline Math.ceil. > > Inline calls to Math.ceil(x) as -Math.floor(-x) via the existing fast > path in Crankshaft. > > R=ishell@chromium.org > BUG=v8:5782 > > Review-Url: https://codereview.chromium.org/2621903002 > Cr-Commit-Position: refs/heads/master@{#42161} > Committed: https://chromium.googlesource.com/v8/v8/+/a3859e48c3c5c1c4f8a0c76b65a389b6063eba89 TBR=ishell@chromium.org,bmeurer@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=v8:5782, chromium:680108 Review-Url: https://codereview.chromium.org/2629493002 Cr-Commit-Position: refs/heads/master@{#42247}
-
jshin authored
Move the language code checking for 4 languages requiring special case mapping to C++ from JavaScript. This is a speculative fix for crashes reported from Windows and Mac Chrome canary builds when icu-case-mapping is enabled by default. (see crbug.com/676643) In addition, tighten up comparision operators in a couple of places in i18n.js (=== and !== instead of == and !=). BUG=v8:4477, v8:4476, chromium:676643 TEST=test262/{built-ins,intl402}/Strings/*, webkit/fast/js/*, mjsunit/string-case, intl/general/case* Review-Url: https://codereview.chromium.org/2621393002 Cr-Commit-Position: refs/heads/master@{#42246}
-
petermarshall authored
Review-Url: https://codereview.chromium.org/2623023003 Cr-Commit-Position: refs/heads/master@{#42245}
-
bradnelson authored
This directs all asm.js traffic via the Wasm backend. R=titzer@chromium.org,aseemgarg@chromium.org BUG=v8:4203 Review-Url: https://codereview.chromium.org/2624813002 Cr-Original-Commit-Position: refs/heads/master@{#42194} Committed: https://chromium.googlesource.com/v8/v8/+/946cc371ed4b34d1a9f5cc615b14c41b652562ad Review-Url: https://codereview.chromium.org/2624813002 Cr-Commit-Position: refs/heads/master@{#42244}
-
scottmg authored
This is part of removing the dependency of the Chromium browser DLL on Windows on V8. R=jochen@chromium.org BUG=chromium:581766 Review-Url: https://codereview.chromium.org/2621983002 Cr-Commit-Position: refs/heads/master@{#42243}
-
clemensh authored
Also, add a runtime function to call the interpreter, passing a stack-allocated buffer holding the arguments. The WASM_INTERPRETER_ENTRY stub allocates the stack slot for the arguments, fills it, and calls to the wasm interpreter. It's abi is compatible with WASM functions, such that we can just replace a call to a WASM_FUNCTION with a call to WASM_INTERPRETER_ENTRY. See tracking bug to get the overall picture. BUG=v8:5822 R=titzer@chromium.org Review-Url: https://codereview.chromium.org/2619803004 Cr-Commit-Position: refs/heads/master@{#42242}
-
bradnelson authored
These interfere with layout tests. BUG=v8:4203 R=titzer@chromium.org,jochen@chromium.org Review-Url: https://codereview.chromium.org/2628703003 Cr-Commit-Position: refs/heads/master@{#42241}
-