- 15 Feb, 2017 1 commit
-
-
yangguo authored
Use d8 with --lcov=<file> to append coverage info to a file. The result can be fed into genhtml(1). R=jgruber@chromium.org BUG=v8:5808 Review-Url: https://codereview.chromium.org/2695823003 Cr-Commit-Position: refs/heads/master@{#43207}
-
- 04 Feb, 2017 1 commit
-
-
binji authored
BUG=686338 R=cbruni@chromium.org,jbroman@chromium.org Review-Url: https://codereview.chromium.org/2662193002 Cr-Commit-Position: refs/heads/master@{#42937}
-
- 27 Jan, 2017 1 commit
-
-
binji authored
Review-Url: https://codereview.chromium.org/2643723010 Cr-Commit-Position: refs/heads/master@{#42749}
-
- 11 Jan, 2017 1 commit
-
-
rmcilroy authored
This CL modifies the ast-numbering phase to collect function literals which should be compiled eagerly. This is then used to eagerly compile the inner functions before compiling the outer function. This will be used to queue compilation jobs on the CompilerDispatcher in a later CL. This CL moves the compilation of eager inner functions out of the GetSharedFunctionInfo function and instead compiles them explicitly. This simplifies GetSharedFunctionInfo and also means there is no need to pass a LazyCompilationMode to the function, so this concept has been removed. BUG=v8:5203,v8:5215 Review-Url: https://codereview.chromium.org/2618553004 Cr-Commit-Position: refs/heads/master@{#42221}
-
- 12 Dec, 2016 1 commit
-
-
clemensh authored
The current logic in Isolate::GetLocationFromStackTrace just ignores wasm frames, making the computed location point to the first javascript frame, like this: test.js:17: RuntimeError: divide by zero module.exports.main(); ^ RuntimeError: divide by zero at main (<WASM>[1]+5) at test.js:17:16 This CL not only fixes the location to point to the top-most wasm frame, but also exposes to the embedder that the script of that location is a wasm script, allowing for custom printing of wasm locations. The Shell::ReportException method now checks for this flag, and prints wasm locations like this: <WASM>[0]+5: RuntimeError: divide by zero RuntimeError: divide by zero at main (<WASM>[0]+5) at test/message/wasm-trap.js:15:16 R=titzer@chromium.org, yangguo@chromium.org BUG=chromium:613110 Review-Url: https://codereview.chromium.org/2563673002 Cr-Commit-Position: refs/heads/master@{#41640}
-
- 31 Oct, 2016 1 commit
-
-
jgravelle authored
This function is implemented in other JavaScript shells BUG=None R=titzer Review-Url: https://codereview.chromium.org/2458963003 Cr-Commit-Position: refs/heads/master@{#40677}
-
- 21 Oct, 2016 1 commit
-
-
yangguo authored
This introduces: - a way in d8 to send messages to the inspector and receive responses. - a new test suite where existing debugger tests should migrate to. R=jgruber@chromium.org, kozyatinskiy@chromium.org, machenbach@chromium.org BUG=v8:5530 Review-Url: https://chromiumcodereview.appspot.com/2425973002 Cr-Commit-Position: refs/heads/master@{#40487}
-
- 11 Oct, 2016 2 commits
-
-
adamk authored
This is a re-land of https://codereview.chromium.org/2393303002/ with an additional call to DisposeModuleEmbedderData() added to fix lsan failures. Unifies the approaches used for storing the specifier -> module mapping and the module -> directory mapping, using std::unordered_maps for both and storing them per-Context. This requires adding a method to the v8::Module API to get a hash code for a Module, but allows slimming down the API in return: gone are SetEmbedderData/GetEmbedderData, along with the fourth argument to ResolveModuleCallback. Besides a simpler API, this allows d8 to get closer to the HTML loader, which requires each Realm to have a persistent module map (though this capability is not yet exercised by any tests). BUG=v8:1569 TBR=neis@chromium.org,jochen@chromium.org Review-Url: https://codereview.chromium.org/2405313002 Cr-Commit-Position: refs/heads/master@{#40186}
-
adamk authored
Revert of [modules] Store Module metadata in per-Context EmbedderData (patchset #7 id:120001 of https://codereview.chromium.org/2393303002/ ) Reason for revert: Fails under LeakSanitizer on auto-roll fyi bot: https://build.chromium.org/p/client.v8.fyi/builders/Auto-roll%20-%20release%20process/builds/49447 Original issue's description: > [modules] Store Module metadata in per-Context EmbedderData > > Unifies the approaches used for storing the specifier -> module mapping > and the module -> directory mapping, using std::unordered_maps for both > and storing them per-Context. > > This requires adding a method to the v8::Module API to get a hash code > for a Module, but allows slimming down the API in return: gone are > SetEmbedderData/GetEmbedderData, along with the fourth argument > to ResolveModuleCallback. > > Besides a simpler API, this allows d8 to get closer to the HTML loader, > which requires each Realm to have a persistent module map (though this > capability is not yet exercised by any tests). > > BUG=v8:1569 > > Committed: https://crrev.com/9cf8fce74cf6e7afd6aea3f3545f6bb61572f277 > Cr-Commit-Position: refs/heads/master@{#40133} TBR=jochen@chromium.org,neis@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:1569 Review-Url: https://codereview.chromium.org/2406973003 Cr-Commit-Position: refs/heads/master@{#40145}
-
- 10 Oct, 2016 1 commit
-
-
adamk authored
Unifies the approaches used for storing the specifier -> module mapping and the module -> directory mapping, using std::unordered_maps for both and storing them per-Context. This requires adding a method to the v8::Module API to get a hash code for a Module, but allows slimming down the API in return: gone are SetEmbedderData/GetEmbedderData, along with the fourth argument to ResolveModuleCallback. Besides a simpler API, this allows d8 to get closer to the HTML loader, which requires each Realm to have a persistent module map (though this capability is not yet exercised by any tests). BUG=v8:1569 Review-Url: https://codereview.chromium.org/2393303002 Cr-Commit-Position: refs/heads/master@{#40133}
-
- 30 Sep, 2016 1 commit
-
-
leszeks authored
matching function, creates a hashmap the specialises the case of keys that simply check pointer equality. I measure an average ~1% improvement on Octane code-load. Review-Url: https://codereview.chromium.org/2369963002 Cr-Commit-Position: refs/heads/master@{#39920}
-
- 20 Sep, 2016 3 commits
-
-
adamk authored
This patch gives the ability for the embedder to ask for the module requests of a module, and to pass a ResolveCallback into Module::Instantiate(). In d8, I've implemented a simple module_map that's used along with this API to allow loading, compiling, instantiating, and evaluating a whole tree of modules. No path resolution is yet implemented, meaning that all import paths are relative to whatever directory d8 runs in. And no imports are linked to the exports of the requested module. BUG=v8:1569 Review-Url: https://codereview.chromium.org/2351113004 Cr-Commit-Position: refs/heads/master@{#39569}
-
jgruber authored
This commit ensures that the d8 shared library build uses the same logic as the standard static build by exporting relevant functions and classes. BUG=chromium:646337 Committed: https://crrev.com/2c10ca8086a4d595ecf9aa843d2031b068470d65 Review-Url: https://codereview.chromium.org/2342563002 Cr-Original-Commit-Position: refs/heads/master@{#39503} Cr-Commit-Position: refs/heads/master@{#39547}
-
machenbach authored
Revert of [d8] Fix the shared-library build (patchset #12 id:20002 of https://codereview.chromium.org/2342563002/ ) Reason for revert: Unblocking roll Original issue's description: > [d8] Fix the shared-library build > > This commit ensures that the d8 shared library build uses the same logic as > the standard static build by exporting relevant functions and classes. > > BUG=chromium:646337 > > Committed: https://crrev.com/2c10ca8086a4d595ecf9aa843d2031b068470d65 > Cr-Commit-Position: refs/heads/master@{#39503} TBR=jochen@chromium.org,vogelheim@chromium.org,bmeurer@chromium.org,titzer@chromium.org,jgruber@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:646337 Review-Url: https://codereview.chromium.org/2356703003 Cr-Commit-Position: refs/heads/master@{#39526}
-
- 19 Sep, 2016 1 commit
-
-
jgruber authored
This commit ensures that the d8 shared library build uses the same logic as the standard static build by exporting relevant functions and classes. BUG=chromium:646337 Review-Url: https://codereview.chromium.org/2342563002 Cr-Commit-Position: refs/heads/master@{#39503}
-
- 16 Sep, 2016 1 commit
-
-
adamk authored
R=neis@chromium.org BUG=v8:1569 Review-Url: https://codereview.chromium.org/2347933002 Cr-Commit-Position: refs/heads/master@{#39481}
-
- 10 Aug, 2016 1 commit
-
-
lpy authored
BUG=v8:4561 LOG=N Review-Url: https://codereview.chromium.org/2208873002 Cr-Commit-Position: refs/heads/master@{#38553}
-
- 27 Jul, 2016 1 commit
-
-
fmeawad authored
V8 has had a trace event macro interface for while, but without a tracing controller a standalone V8 would be unable to collect traces. This CL introduces a complete Tracing Controller system for V8. It is fully function except that it does not yet store trace event args. This CL has a few components, The tracing controller itself, contributed by the author of this CL The Trace config (including the parser), contributed by lpy@ The Trace Object, Trace Writer, and Trace Buffer are all contributed by rksang@ BUG=v8:4561 LOG=N The original CL was failing the V8 Arm Builder: https://build.chromium.org/p/client.v8.ports/builders/V8%20Arm%20-%20builder/builds/2456 and the V8 Mips Builder: https://build.chromium.org/p/client.v8.ports/builders/V8%20Mips%20-%20builder/builds/2506 The failure is due to undefined behavior of CHECK_EQ of 2 const char* Fix in patch #1 Committed: https://crrev.com/3d598452679ce208ad9b2f48e0fb3fae352ce375 Cr-Commit-Position: refs/heads/master@{#38073} patch from issue 2137013006 at patchset 200001 (http://crrev.com/2137013006#ps200001) Review-Url: https://codereview.chromium.org/2183923004 Cr-Commit-Position: refs/heads/master@{#38104}
-
- 26 Jul, 2016 2 commits
-
-
lpy authored
Revert of [Tracing] V8 Tracing Controller (patchset #11 id:200001 of https://codereview.chromium.org/2137013006/ ) Reason for revert: Revert this CL due to V8 Arm Builder failure and V8 Mips Builder failure. https://build.chromium.org/p/client.v8.ports/builders/V8%20Arm%20-%20builder/builds/2456 https://build.chromium.org/p/client.v8.ports/builders/V8%20Mips%20-%20builder/builds/2506 Original issue's description: > [Tracing] V8 Tracing Controller > > V8 has had a trace event macro interface for while, but without a tracing > controller a standalone V8 would be unable to collect traces. > > This CL introduces a complete Tracing Controller system for V8. > It is fully function except that it does not yet store trace event args. > > This CL has a few components, > The tracing controller itself, contributed by the author of this CL > The Trace config (including the parser), contributed by lpy@ > The Trace Object, Trace Writer, and Trace Buffer are all contributed by rksang@ > > BUG=v8:4561 > LOG=N > > Committed: https://crrev.com/3d598452679ce208ad9b2f48e0fb3fae352ce375 > Cr-Commit-Position: refs/heads/master@{#38073} TBR=jochen@chromium.org,mattloring@google.com,rskang@google.com,yangguo@chromium.org,fmeawad@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4561 Review-Url: https://codereview.chromium.org/2183943002 Cr-Commit-Position: refs/heads/master@{#38074}
-
fmeawad authored
V8 has had a trace event macro interface for while, but without a tracing controller a standalone V8 would be unable to collect traces. This CL introduces a complete Tracing Controller system for V8. It is fully function except that it does not yet store trace event args. This CL has a few components, The tracing controller itself, contributed by the author of this CL The Trace config (including the parser), contributed by lpy@ The Trace Object, Trace Writer, and Trace Buffer are all contributed by rksang@ BUG=v8:4561 LOG=N Review-Url: https://codereview.chromium.org/2137013006 Cr-Commit-Position: refs/heads/master@{#38073}
-
- 09 Jun, 2016 1 commit
-
-
lpy authored
We ported hashmap.h into libsampler as a workaround before, so the main focus of this patch is to reduce code duplication. This patch moves the hashmap into src/base as well as creates DefaultAllocationPolicy using malloc and free. BUG=v8:5050 LOG=n Review-Url: https://codereview.chromium.org/2010243003 Cr-Commit-Position: refs/heads/master@{#36873}
-
- 27 May, 2016 1 commit
-
-
littledan authored
Some tests, e.g. in test262, want to create a new same-origin realm. This patch exposes a new function, Realm.createAllowCrossRealmAccess(), which vends a new realm with the same security token as the currently executing one. Review-Url: https://codereview.chromium.org/1973363004 Cr-Commit-Position: refs/heads/master@{#36561}
-
- 27 Apr, 2016 1 commit
-
-
ssanfilippo authored
This commit introduces IgnitionStatisticsExtension, which provides methods for accessing Ignition statistics and counters from JavaScript. The extension is registered when FLAG_ignition and FLAG_trace_ignition_dispatches are both enabled. For the moment, the only exposed function is getIgnitionDispatchCounters(), which allows to retrieve Ignition dispatch counters as a JavaScript object. BUG=v8:4899 LOG=N Review URL: https://codereview.chromium.org/1899133004 Cr-Commit-Position: refs/heads/master@{#35816}
-
- 31 Mar, 2016 1 commit
-
-
yangguo authored
We only use it to store the Stringify function to format REPL output. This is overkill and introduces issues with security tokens. R=jochen@chromium.org BUG= Review URL: https://codereview.chromium.org/1845833002 Cr-Commit-Position: refs/heads/master@{#35158}
-
- 12 Aug, 2015 1 commit
-
-
mstarzinger authored
This tries to remove includes of "-inl.h" headers from normal ".h" headers, thereby reducing the chance of any cyclic dependencies and decreasing the average size of our compilation units. Note that this change still leaves 7 violations of that rule in the code. However there now is the "tools/check-inline-includes.sh" tool detecting such violations. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1283033003 Cr-Commit-Position: refs/heads/master@{#30125}
-
- 11 Aug, 2015 1 commit
-
-
mstarzinger authored
This is the first step of turning the v8.h file into a normal header instead of an include-the-world header. The new rule is that no other header files are allowed to include v8.h, which is enforced by DEPS. Also the number of includes inside the v8.h file has been drastically reduced. Basically the last missing piece is the inclusion of the big objects-inl.h file. This in turn makes many headers follow the IWYU principle. R=bmeurer@chromium.org,hpayer@chromium.org,titzer@chromium.org Review URL: https://codereview.chromium.org/1282503003 Cr-Commit-Position: refs/heads/master@{#30102}
-
- 30 Jul, 2015 2 commits
-
-
binji authored
script_executed and last_run are read/written by multiple threads. Also externalized_shared_contents_ is modified by multiple threads. BUG=4306 R=jarin@chromium.org LOG=n Review URL: https://codereview.chromium.org/1252623003 Cr-Commit-Position: refs/heads/master@{#29912}
-
binji authored
When the main thread terminates, it forcibly terminates all Worker threads. When this happens, the threads objects were only half-created; they had a JavaScript Worker object, but not a C++ worker object. This CL fixes that bug, as well as some other fixes: * Signatures on Worker methods * Use SetAlignedPointerFromInternalField instead of using an External. * Remove state_ from Worker. Simplify to atomic bool running_. BUG=chromium:511880 R=jarin@chromium.org LOG=n Review URL: https://codereview.chromium.org/1255563002 Cr-Commit-Position: refs/heads/master@{#29911}
-
- 23 Jul, 2015 2 commits
-
-
yangguo authored
Nobody seems to use it. A good alternative is rlwrap. R=jochen@chromium.org Review URL: https://codereview.chromium.org/1250223002 Cr-Commit-Position: refs/heads/master@{#29810}
-
yangguo authored
The code is unmaintained and full of errors... but this CL wipes them all away. Nobody seems to use it anyways. R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1243213004 Cr-Commit-Position: refs/heads/master@{#29801}
-
- 20 Jul, 2015 1 commit
-
-
jochen authored
Original issue's description: > BUG=v8:4134 > LOG=n > R=yangguo@chromium.org > > Review URL: https://codereview.chromium.org/1239053004 BUG=v8:4134 LOG=n R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1235603004 Cr-Commit-Position: refs/heads/master@{#29742}
-
- 17 Jul, 2015 2 commits
-
-
machenbach authored
Revert of Make d8 stop using to-be-deprecated APIs (patchset #3 id:40001 of https://codereview.chromium.org/1239053004/) Reason for revert: [Sheriff] Breaks: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20debug%20-%20code%20serializer/builds/3400 Original issue's description: > Make d8 stop using to-be-deprecated APIs > > BUG=v8:4134 > LOG=n > R=yangguo@chromium.org > > Committed: https://crrev.com/af82ef84b4f851411f00e69167ab29382c7499b8 > Cr-Commit-Position: refs/heads/master@{#29726} TBR=yangguo@chromium.org,jochen@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4134 Review URL: https://codereview.chromium.org/1240993003 Cr-Commit-Position: refs/heads/master@{#29730}
-
jochen authored
BUG=v8:4134 LOG=n R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1239053004 Cr-Commit-Position: refs/heads/master@{#29726}
-
- 16 Jul, 2015 1 commit
-
-
binji authored
Calling quit() from d8 will call exit(), which will run static destructors. If context_mutex_ is statically allocated, pthread_mutex_destroy will be called. When running d8 in "isolates" mode, another thread may be running. If it calls CreateEvaluationContext, it will lock the context_mutex_. If the mutex is destroyed while it is locked, it will return an error. This CL changes the Mutex to a LazyMutex, which will leak instead of being destroyed. BUG=v8:4279 R=jarin@chromium.org R=machenbach@chromium.org LOG=n Review URL: https://codereview.chromium.org/1240553003 Cr-Commit-Position: refs/heads/master@{#29709}
-
- 15 Jul, 2015 1 commit
-
-
epertoso authored
R=jochen@chromium.org LOG=y BUG= Review URL: https://codereview.chromium.org/1209403005 Cr-Commit-Position: refs/heads/master@{#29680}
-
- 14 Jul, 2015 4 commits
-
-
binji authored
Reland of d8 workers: make sure Shell::Quit is only called once (patchset #1 id:1 of https://codereview.chromium.org/1235083004/) Reason for revert: Looks like the failure is unrelated to my change (still fails after the revert). See http://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Win/builds/856/steps/webkit_unit_tests/logs/stdio Original issue's description: > Revert of d8 workers: make sure Shell::Quit is only called once (patchset #5 id:80001 of https://codereview.chromium.org/1230403003/) > > Reason for revert: > Breaks webkit_unit_tests. See http://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Win/builds/853/steps/webkit_unit_tests/logs/stdio > > Original issue's description: > > d8 workers: make sure Shell::Quit is only called once > > > > When running with isolates, Quit can be called simultaneously by two threads. > > If this happens, then both threads try to clean up the Workers, which could > > crash. > > > > BUG=v8:4279 > > R=jarin@chromium.org > > R=machenbach@chromium.org > > LOG=n > > > > Committed: https://crrev.com/76184292b392d107609f21662a949b58bb1e258c > > Cr-Commit-Position: refs/heads/master@{#29654} > > TBR=jarin@chromium.org,machenbach@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4279 > > Committed: https://crrev.com/6b2c6eb75678747afca59b4a78ace597e218145d > Cr-Commit-Position: refs/heads/master@{#29656} TBR=jarin@chromium.org,machenbach@chromium.org,adamk@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4279 Review URL: https://codereview.chromium.org/1224203004 Cr-Commit-Position: refs/heads/master@{#29663}
-
binji authored
Note: the previous try was reverted for occasional flaky tests. This continued after the revert, and should be fixed by https://codereview.chromium.org/1226143003. Previously, the serialization code would call Externalize for every transferred ArrayBuffer or SharedArrayBuffer, but that function can only be called once. If the buffer is already externalized, we should call GetContents instead. Also fix use-after-free bug when transferring ArrayBuffers. The transferred ArrayBuffer must be internalized in the new isolate, or be managed by the Shell. The current code gives it to the isolate externalized and frees it immediately afterward when the SerializationData object is destroyed. BUG=chromium:497295 R=jarin@chromium.org LOG=n Review URL: https://codereview.chromium.org/1223813008 Cr-Commit-Position: refs/heads/master@{#29658}
-
binji authored
Revert of d8 workers: make sure Shell::Quit is only called once (patchset #5 id:80001 of https://codereview.chromium.org/1230403003/) Reason for revert: Breaks webkit_unit_tests. See http://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Win/builds/853/steps/webkit_unit_tests/logs/stdio Original issue's description: > d8 workers: make sure Shell::Quit is only called once > > When running with isolates, Quit can be called simultaneously by two threads. > If this happens, then both threads try to clean up the Workers, which could > crash. > > BUG=v8:4279 > R=jarin@chromium.org > R=machenbach@chromium.org > LOG=n > > Committed: https://crrev.com/76184292b392d107609f21662a949b58bb1e258c > Cr-Commit-Position: refs/heads/master@{#29654} TBR=jarin@chromium.org,machenbach@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4279 Review URL: https://codereview.chromium.org/1235083004 Cr-Commit-Position: refs/heads/master@{#29656}
-
binji authored
When running with isolates, Quit can be called simultaneously by two threads. If this happens, then both threads try to clean up the Workers, which could crash. BUG=v8:4279 R=jarin@chromium.org R=machenbach@chromium.org LOG=n Review URL: https://codereview.chromium.org/1230403003 Cr-Commit-Position: refs/heads/master@{#29654}
-
- 13 Jul, 2015 1 commit
-
-
binji authored
* Fix embarrassing bug in DeserializeValue, using a static buffer in multithreaded code. * Fix thread leak when Worker.terminate() is not called. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1226143003 Cr-Commit-Position: refs/heads/master@{#29626}
-