• sgjesse@chromium.org's avatar
    Optimize calls to GenericBinaryStub. · 8105ae31
    sgjesse@chromium.org authored
    The calls to GenericBinaryStub can now pass the arguments in registers instead of on the stack. It is supported for ADD, SUB, MUL and DIV. The convention in GenericBinaryStub is not changed so the left operand is passed in edx and the right one in eax. When the stub contains smi code arguments are always passed on the stack as the smi code has to have left and right operands on eax and ebx, so moving from edx,eax to eax,ebx is not worth it and the smi code also trashes the registers so if arguments where passed in registers they would have to be saved on the stack anyway.
    
    Added flags to disable the use of certain Intel CPU features to make it easier to test different code paths.
    Review URL: http://codereview.chromium.org/246075
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    8105ae31
codegen-ia32.cc 279 KB