• mstarzinger's avatar
    [compiler] Improve contract for Compiler::CompileDebugCode. · 80b98da2
    mstarzinger authored
    This changes the contract for the aforementioned API function to be more
    permissive and allow callers to call it with less restrictions. The new
    contract is:
    
    a) For so far un-compiled functions, the compiler is free to choose the
       backend according to other decision criteria. Debug code can hence be
       provided by either Ignition or FullCodegen.
    b) For compiled functions, the compiler will provide debug code within
       the same tier as existing code. For Ignition the generated code will
       be equivalent to the old one. For FullCodegen the code will contain
       debug information and debug break slots.
    
    Concretely this fixes an issue where generator or async functions might
    have been compiled with an unexpected backend, due to the fact that the
    API method in question was always providing FullCodegen code.
    
    R=yangguo@chromium.org
    
    Review-Url: https://codereview.chromium.org/2044063002
    Cr-Commit-Position: refs/heads/master@{#36808}
    80b98da2
compiler.cc 67.2 KB