Bug 131608 - [sh4] SubImmediates can be used in sh4 LLINT
Summary: [sh4] SubImmediates can be used in sh4 LLINT
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: 2014-04-14 01:02 PDT by Julien Brianceau
Modified: 2014-04-14 14:48 PDT (History)
4 users (show)

See Also:


Attachments
Allow use of SubImmediates in sh4 const pool in LLINT. (3.39 KB, patch)
2014-04-14 01:19 PDT, Julien Brianceau
mark.lam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Julien Brianceau 2014-04-14 01:02:47 PDT
SubImmediates can be used with sh4 const pool, so the sh4 arch can share the arm path for setEntryAddress.

This will reduce architecture specific code and lead to a more optimal implementation for sh4.
Comment 1 Julien Brianceau 2014-04-14 01:19:02 PDT
Created attachment 229272 [details]
Allow use of SubImmediates in sh4 const pool in LLINT.
Comment 2 Mark Lam 2014-04-14 13:54:16 PDT
Comment on attachment 229272 [details]
Allow use of SubImmediates in sh4 const pool in LLINT.

View in context: https://bugs.webkit.org/attachment.cgi?id=229272&action=review

r=me

> Source/JavaScriptCore/llint/LowLevelInterpreter.asm:747
> +        if SH4
> +            flushcp # Force constant pool flush to avoid "pcrel too far" link error.
> +        end

I'd be concerned if this proliferates.  Ideally, it's be great if the offline backend knows to call flushcp automatically when needed without the LLINT assembly having to explicitly call it like this.  For now, since there's is only this one use of flushcp (i.e. here), I'll let it go.
Comment 3 Julien Brianceau 2014-04-14 14:48:31 PDT
Committed r167269: <http://trac.webkit.org/changeset/167269>