Commit 43c8538d authored by Dan Elphick's avatar Dan Elphick Committed by Commit Bot

[compiler] Always collect source positions for wrapped functions

Wrapped functions don't recompile properly with lazy source positions so
just force them to always collect the source positions.

Fixes cctest/test-compiler/CompileFunctionInContext in the presence of
--enable-lazy-source-positions and --stress-lazy-source-positions.

Bug: v8:8510
Change-Id: I2402a441d4930be11dc037c6041cb577a63a3529
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1709427
Commit-Queue: Dan Elphick <delphick@chromium.org>
Auto-Submit: Dan Elphick <delphick@chromium.org>
Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63013}
parent 289aa11b
...@@ -2111,6 +2111,10 @@ MaybeHandle<JSFunction> Compiler::GetWrappedFunction( ...@@ -2111,6 +2111,10 @@ MaybeHandle<JSFunction> Compiler::GetWrappedFunction(
parse_info.set_eval(); // Use an eval scope as declaration scope. parse_info.set_eval(); // Use an eval scope as declaration scope.
parse_info.set_wrapped_as_function(); parse_info.set_wrapped_as_function();
// TODO(delphick): Remove this and instead make the wrapped and wrapper
// functions fully non-lazy instead thus preventing source positions from
// being omitted.
parse_info.set_collect_source_positions(true);
// parse_info.set_eager(compile_options == ScriptCompiler::kEagerCompile); // parse_info.set_eager(compile_options == ScriptCompiler::kEagerCompile);
if (!context->IsNativeContext()) { if (!context->IsNativeContext()) {
parse_info.set_outer_scope_info(handle(context->scope_info(), isolate)); parse_info.set_outer_scope_info(handle(context->scope_info(), isolate));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment