We'll never reach callOperation(*EJJJ*) on X86 because it requires 6 GPRs while currently DFG JIT on X86 only provides 5 GPRs. For those operations which require 3 or more JSValue arguments (like instanceof) we spill the registers and load the data into registers on demand, push the parameters and directly invoke appendCall. Removing the unused callOperation code avoids some confusions.
Created attachment 110299 [details] the patch
Comment on attachment 110299 [details] the patch Good, now I won't be confused anymore. :-)
Comment on attachment 110299 [details] the patch Rejecting attachment 110299 [details] from commit-queue. Failed to run "['/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch', '--status-host=queues.webkit.org', '-..." exit_code: 2 Last 500 characters of output: 8844d935327f1fc226a0fad08c6ed917a040bc6e r97030 = dc41f7fd22ff22f80625aa49e8a9585308c9b432 Done rebuilding .git/svn/refs/remotes/origin/master/.rev_map.268f45cc-cd09-0410-ab3c-d52691b4dbfc First, rewinding head to replay your work on top of it... Fast-forwarded master to refs/remotes/origin/master. Updating chromium port dependencies using gclient... ________ running '/usr/bin/python gyp_webkit' in '/mnt/git/webkit-commit-queue/Source/WebKit/chromium' Updating webkit projects from gyp files... Full output: http://queues.webkit.org/results/10009788
Going to land this manually.
Landed in r97033.