Bug 70870

Summary: Split DFGJITCodeGenerator::callOperation methods.
Product: WebKit Reporter: Gavin Barraclough <barraclough>
Component: JavaScriptCoreAssignee: Gavin Barraclough <barraclough>
Severity: Normal CC: eric, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Description Flags
The fix
fix (make the style bot happy) fpizlo: review+

Description Gavin Barraclough 2011-10-25 22:34:08 PDT
The DFGJITCodeGenerator currently contains two sets of callOperation methods.  One set works with the JSVALUE64 value representation and passes arguments in registers (suitable for use on x86-64), and one set works with the JSVALUE32_64 value representation and passes arguments in memory  (suitable for use on x86).  By refactoring out the representation and calling convention specific aspects of the code we can also configure the DFG JIT to operator on platforms that use the JSVALUE32_64 value representation but pass arguments in registers.

On platforms supported by the JIT, the payload precedes the tag of a value in argument/result ordering, as such, in order to make the setupResults method generally applicable to return the results of a function that are returned in two registers, the ordering of arguments to this function has been reversed - as is the ordering of augments passed to setupArguments methods, with respect to the ordering with which they are passed in to callOperation.  This inconsistency will be resolved in a later change when we combine the pairs of arguments passed into callOperation, such that the function signatures can be made consistent across the two value representations (the callOperation methods will be passed a reference to a struct representing the JSValue temporary, this will consist of two gprs on 32_64 and one on 64).
Comment 1 Gavin Barraclough 2011-10-25 22:45:48 PDT
Created attachment 112451 [details]
The fix
Comment 2 WebKit Review Bot 2011-10-25 22:47:21 PDT
Attachment 112451 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/ChangeLog', u'Source..." exit_code: 1

Source/JavaScriptCore/dfg/DFGJITCodeGenerator.h:958:  Should have only a single space after a punctuation in a comment.  [whitespace/comments] [5]
Total errors found: 1 in 3 files

If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Gavin Barraclough 2011-10-25 22:49:39 PDT
Created attachment 112452 [details]
fix (make the style bot happy)
Comment 4 Eric Seidel (no email) 2011-12-21 14:30:31 PST
Attachment 112452 [details] was posted by a committer and has review+, assigning to Gavin Barraclough for commit.
Comment 5 Gavin Barraclough 2011-12-21 17:48:10 PST
Oooops, sorry - was fixed in r98431!