Bug 122863 - [sh4] Some calls don't match sh4 ABI
Summary: [sh4] Some calls don't match sh4 ABI
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-10-15 14:33 PDT by Julien Brianceau
Modified: 2013-10-15 15:22 PDT (History)
2 users (show)

See Also:


Attachments
Fix invalid calling convention for sh4 architecture + build fixes (7.98 KB, patch)
2013-10-15 14:39 PDT, Julien Brianceau
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Julien Brianceau 2013-10-15 14:33:07 PDT
Yannick rightly pointed out to me that the SH4_32BIT_DUMMY_ARG padding value should not be used if a 32-bit value parameter comes after a 64-bit JSValue that couldn't be put half in r7 and half on stack.

To sum up the ABI, with a function like this:

    void func(int p1, long long p2, long long p3, int p4)

    p1 32-bit value will use 1st argument register r4
    p2 64-bit value will use 2nd and 3rd argument registers r5 and r6
    p3 64-bit value will be put on stack
    p4 32-bit value will use the remaining 4th argument register r7 (and not be put on stack after p3)
Comment 1 Julien Brianceau 2013-10-15 14:39:48 PDT
Created attachment 214300 [details]
Fix invalid calling convention for sh4 architecture + build fixes
Comment 2 WebKit Commit Bot 2013-10-15 15:22:14 PDT
Comment on attachment 214300 [details]
Fix invalid calling convention for sh4 architecture + build fixes

Clearing flags on attachment: 214300

Committed r157475: <http://trac.webkit.org/changeset/157475>
Comment 3 WebKit Commit Bot 2013-10-15 15:22:16 PDT
All reviewed patches have been landed.  Closing bug.