Reland of [interpreter] Make d8's TryCatch block be verbose. (patchset #1 id:1 of https://codereview.chromium.org/1694523003/ )
Reason for revert: No fix needed, original CL was perfectly fine! Original issue's description: > Revert of [interpreter] Make d8's TryCatch block be verbose. (patchset #3 id:40001 of https://codereview.chromium.org/1691723002/ ) > > Reason for revert: > [Sheriff] Speculative revert. Breaks > https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/3944 > > Somehow3a2fbc3a4e
seems to hide it again and then699e1081a6
lets it show up again. > > Reproduced locally. > > Original issue's description: > > [interpreter] Make d8's TryCatch block be verbose. > > > > This changes "d8" to no longer report exceptions as being "caught" when > > it comes to the catch prediction mechanism in our debugger. This treats > > scripts as being truly top-level when it comes to exception handling and > > will allow us to properly test the catch prediction mechanism using just > > mjsunit tests alone. > > > > R=yangguo@chromium.org > > BUG=v8:4674 > > LOG=n > > > > Committed: https://crrev.com/fb1de271a6bc2c89a1682db8c151cf5fcda86c45 > > Cr-Commit-Position: refs/heads/master@{#33898} > > TBR=yangguo@chromium.org,mstarzinger@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4674 > > Committed: https://crrev.com/f9eef1f33d2e5cde8cb948424e7ebf509090aa59 > Cr-Commit-Position: refs/heads/master@{#33921} TBR=yangguo@chromium.org,machenbach@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4674 Review URL: https://codereview.chromium.org/1692133002 Cr-Commit-Position: refs/heads/master@{#33931}
This commit is contained in:
parent
7a5b2339e7
commit
a5941ae424
@ -375,6 +375,7 @@ bool Shell::ExecuteString(Isolate* isolate, Local<String> source,
|
||||
bool report_exceptions, SourceType source_type) {
|
||||
HandleScope handle_scope(isolate);
|
||||
TryCatch try_catch(isolate);
|
||||
try_catch.SetVerbose(true);
|
||||
|
||||
MaybeLocal<Value> maybe_result;
|
||||
{
|
||||
@ -1247,6 +1248,10 @@ Local<ObjectTemplate> Shell::CreateGlobalTemplate(Isolate* isolate) {
|
||||
return global_template;
|
||||
}
|
||||
|
||||
static void EmptyMessageCallback(Local<Message> message, Local<Value> error) {
|
||||
// Nothing to be done here, exceptions thrown up to the shell will be reported
|
||||
// separately by {Shell::ReportException} after they are caught.
|
||||
}
|
||||
|
||||
void Shell::Initialize(Isolate* isolate) {
|
||||
#ifndef V8_SHARED
|
||||
@ -1254,6 +1259,8 @@ void Shell::Initialize(Isolate* isolate) {
|
||||
if (i::StrLength(i::FLAG_map_counters) != 0)
|
||||
MapCounters(isolate, i::FLAG_map_counters);
|
||||
#endif // !V8_SHARED
|
||||
// Disable default message reporting.
|
||||
isolate->AddMessageListener(EmptyMessageCallback);
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user