• mbrandy's avatar
    PPC: [builtins] Pass correct number of arguments after adapting arguments. · 8b781ecc
    mbrandy authored
    Port fbad6366
    
    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.
    
    R=bmeurer@chromium.org, jyan@ca.ibm.com, dstence@us.ibm.com, joransiu@ca.ibm.com
    BUG=
    
    Review URL: https://codereview.chromium.org/1306953005
    
    Cr-Commit-Position: refs/heads/master@{#30480}
    8b781ecc
Name
Last commit
Last update
benchmarks Loading commit data...
build Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party/binutils Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.gitignore Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
Makefile Loading commit data...
Makefile.android Loading commit data...
Makefile.nacl Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...