• Benedikt Meurer's avatar
    [inspector][stack-traces] Remove support for "displayName". · a9b6f3f7
    Benedikt Meurer authored
    As outlined in the design document linked below, we're removing the
    support for the non-standard Function.displayName property for the
    purpose of Error.stack and DevTools Inspector stack traces. The
    motivation here is that the negative lookup is costly, and we have
    Function.name as a standard alternative (configurable since ES6 for
    exactly this reason).
    
    I dediced to go with JSFunction::GetDebugName(), since
    JSFunction::GetName() was confusing in that it'd only get the "name"
    property's value if it's a data property, but not with accessors.
    JSFunction::GetDebugName() makes it clear that this is really a debug
    helper function and might not give you the "name" property value.
    
    Doc: https://bit.ly/devtools-function-displayName-removal
    Bug: v8:8742, chromium:1177685, chromium:1077657, chromium:17356
    Change-Id: I7717585cbace626174b2f2ed2a4f68f75429eca1
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2692189
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#72715}
    a9b6f3f7
js-function.cc 39.3 KB