Bug 125067 - mips path could be merged with arm/sh4 path in nativeForGenerator and privateCompileCTINativeCall
Summary: mips path could be merged with arm/sh4 path in nativeForGenerator and private...
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-12-02 01:30 PST by Julien Brianceau
Modified: 2013-12-03 02:25 PST (History)
6 users (show)

See Also:


Attachments
Merge mips and arm/sh4 paths in nativeForGenerator and privateCompileCTINativeCall functions. (6.51 KB, patch)
2013-12-02 01:32 PST, 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-12-02 01:30:10 PST
In nativeForGenerator and privateCompileCTINativeCall functions, CPU(MIPS) path could be merged with CPU(ARM) || CPU(SH4) path to reduce architecture specific code.

Moreover, this is likely to fix a potential issue in mips port: with current implementation Callee is put in MIPSRegisters::a2 instead of MIPSRegisters::a1 (argumentGPR1).
Comment 1 Julien Brianceau 2013-12-02 01:32:25 PST
Created attachment 218152 [details]
Merge mips and arm/sh4 paths in nativeForGenerator and privateCompileCTINativeCall functions.

I don't see regressions on my mips board with this patch, but I'd like to have a feedback from homejinni or mips guys before putting it into the commit queue.
Comment 2 Balazs Kilvady 2013-12-02 04:45:26 PST
(In reply to comment #1)
> Created an attachment (id=218152) [details]
> Merge mips and arm/sh4 paths in nativeForGenerator and privateCompileCTINativeCall functions.
> 
> I don't see regressions on my mips board with this patch, but I'd like to have a feedback from homejinni or mips guys before putting it into the commit queue.

I am on holiday so I can check/test it tomorrow. And I will definitely :)
Comment 3 Julien Brianceau 2013-12-02 04:51:34 PST
(In reply to comment #2)
> I am on holiday so I can check/test it tomorrow. And I will definitely :)

Thanks! I won't request commit queue before your feedback then.. and enjoy your day off :)

About the MIPSRegisters::a2 thing, perhaps it's just used as a temp register so I'm not sure it could fix something.
Comment 4 Michael Saboff 2013-12-02 08:43:57 PST
Comment on attachment 218152 [details]
Merge mips and arm/sh4 paths in nativeForGenerator and privateCompileCTINativeCall functions.

Looks fine.  Will cq+ after kilvadyb@homejinni.com provides results from testing.
Comment 5 Balazs Kilvady 2013-12-03 01:47:03 PST
(In reply to comment #4)
> (From update of attachment 218152 [details])
> Looks fine.  Will cq+ after kilvadyb@homejinni.com provides results from testing.

Looks good to me also, no more regressions with this patch.(In reply to comment #4)
> (From update of attachment 218152 [details])
> Looks fine.  Will cq+ after kilvadyb@homejinni.com provides results from testing.

Looks good to me also, no more regressions with this patch. a2 was used as a temporary scratch register in the previous code and now argumentGPR1 == a1 is the scratch reg on MIPS which is also fine.
Comment 6 Julien Brianceau 2013-12-03 01:50:14 PST
(In reply to comment #5)
> Looks good to me also, no more regressions with this patch. a2 was used as a temporary scratch register in the previous code and now argumentGPR1 == a1 is the scratch reg on MIPS which is also fine.

Great, I'm requesting commit queue then. Thanks!
Comment 7 WebKit Commit Bot 2013-12-03 02:25:32 PST
Comment on attachment 218152 [details]
Merge mips and arm/sh4 paths in nativeForGenerator and privateCompileCTINativeCall functions.

Clearing flags on attachment: 218152

Committed r159995: <http://trac.webkit.org/changeset/159995>
Comment 8 WebKit Commit Bot 2013-12-03 02:25:34 PST
All reviewed patches have been landed.  Closing bug.