Bug 186013 - [Baseline] Merge JITPropertyAccess, JITArithmetic, JITOpcodes, and JITCall to JIT
Summary: [Baseline] Merge JITPropertyAccess, JITArithmetic, JITOpcodes, and JITCall to...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Yusuke Suzuki
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-05-26 08:37 PDT by Yusuke Suzuki
Modified: 2021-11-01 12:16 PDT (History)
6 users (show)

See Also:


Attachments
Patch (621.01 KB, patch)
2018-05-26 08:40 PDT, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (616.69 KB, patch)
2018-05-29 13:18 PDT, Yusuke Suzuki
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Yusuke Suzuki 2018-05-26 08:37:53 PDT
[Baseline] Merge JITPropertyAccess, JITArithmetic, JITOpcodes, and JITCall to JIT
Comment 1 Yusuke Suzuki 2018-05-26 08:40:59 PDT
Created attachment 341398 [details]
Patch
Comment 2 Yusuke Suzuki 2018-05-29 13:18:47 PDT
Created attachment 341507 [details]
Patch
Comment 3 Yusuke Suzuki 2018-05-29 13:19:16 PDT
Rebaselined. Ready for review.
Comment 4 Saam Barati 2018-05-29 14:17:37 PDT
Comment on attachment 341507 [details]
Patch

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

> Source/JavaScriptCore/ChangeLog:8
> +        It is hard to check whether the given functionality is implemented in 32bit / 64bit,

Do you really believe that this is hard to do?

Does this patch do anything besides copy old implementation into this new file?
Comment 5 Yusuke Suzuki 2018-05-30 08:08:26 PDT
(In reply to Saam Barati from comment #4)
> Comment on attachment 341507 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=341507&action=review
> 
> > Source/JavaScriptCore/ChangeLog:8
> > +        It is hard to check whether the given functionality is implemented in 32bit / 64bit,
> 
> Do you really believe that this is hard to do?
> 

Yes, for example, we have bunch of #if USE(JSVALUE64) / USE(JSVALUE32_64) in each file. Small ifdefs are consolidated into JIT.cpp. And large ifdef gaurds are removed and code is moved into JIT32_64.cpp / JIT64.cpp. Small ifdefs in functions are typically doing the same things (like, defining registers), they can be later removed easily in a batch styled manner.
And this code structure is completely the same to DFG, it is easy to find code.

> Does this patch do anything besides copy old implementation into this new
> file?

Yes, this patch just copies the implementations into these files.
Comment 6 Alex Christensen 2021-11-01 12:16:36 PDT
Comment on attachment 341507 [details]
Patch

This has been requesting review for more than one year.  If this is still needed, please rebase and re-request review.