• chunyang.dai's avatar
    X87: [builtins] Pass correct number of arguments after adapting arguments. · 4d6eef61
    chunyang.dai authored
    port fbad6366 (r30467)
    
    original commit message:
    
        The call protocol requires that the register dedicated to the number of
        actual arguments (i.e. rax on x64) always contains the actual arguments.
        That means after adapting arguments it should match the number of
        expected arguments.  But currently we pass some semi-random value
        (usually some stack address) after adapting arguments.
    
        It looks like this is currently not observable anywhere, because our
        builtins and functions either don't look at the number of arguments and
        just make hard coded (unchecked) assumptions, or are marked as "don't
        adapt arguments", which bypasses the broken code in the trampoline for
        arguments adaption.  Nevertheless this should be fixed.
    
    BUG=
    
    Review URL: https://codereview.chromium.org/1304893010
    
    Cr-Commit-Position: refs/heads/master@{#30605}
    4d6eef61
builtins-x87.cc 61.6 KB