• yangguo's avatar
    Debugger: prepare code for debugging on a per-function basis. · 35c28ce0
    yangguo authored
    Prior to this patch, we enter a global debug mode whenever a break point
    is set. By entering this mode, all code is deoptimized and activated
    frames are recompiled and redirected to newly compiled debug code.
    
    After this patch, we only deoptimize/redirect for functions we want to
    debug. Trigger for this is Debug::EnsureDebugInfo, and having DebugInfo
    object attached to the SFI prevents optimization/inlining.
    
    The result is that we can have optimized code for functions without break
    points alongside functions that do have break points, which are not
    optimized.
    
    R=mstarzinger@chromium.org, ulan@chromium.org
    BUG=v8:4132
    LOG=Y
    
    Review URL: https://codereview.chromium.org/1233073005
    
    Cr-Commit-Position: refs/heads/master@{#29758}
    35c28ce0
debug.cc 94.7 KB