Bug 228057

Summary: Add ARM64 EON opcode and select it in AIR
Product: WebKit Reporter: Yijia Huang <yijia_huang>
Component: JavaScriptCoreAssignee: Yijia Huang <yijia_huang>
Status: RESOLVED FIXED    
Severity: Normal CC: ews-watchlist, keith_miller, mark.lam, msaboff, saam, tzagallo, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 228776    
Attachments:
Description Flags
Patch
none
Patch
none
Patch none

Yijia Huang
Reported 2021-07-18 06:18:48 PDT
...
Attachments
Patch (34.36 KB, patch)
2021-07-18 06:23 PDT, Yijia Huang
no flags
Patch (35.92 KB, patch)
2021-07-18 15:47 PDT, Yijia Huang
no flags
Patch (35.94 KB, patch)
2021-07-20 15:24 PDT, Yijia Huang
no flags
Yijia Huang
Comment 1 2021-07-18 06:23:10 PDT
Yijia Huang
Comment 2 2021-07-18 15:47:34 PDT
Saam Barati
Comment 3 2021-07-20 15:11:36 PDT
Comment on attachment 433762 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=433762&action=review > Source/JavaScriptCore/ChangeLog:53 > + // Old optimized AIR > + Lshift64 %x1, amount, %x1, @4 > + Not %x1, %x1, @5 > + Xor %x0, %x1, %x0, @6 > + Ret %x0, @7 > + > + // New optimized AIR > + XorNotLeftShift %x0, %x1, $63, %x0, @6 Nice > Source/JavaScriptCore/b3/B3LowerToAir.cpp:829 > + Air::Opcode lowerB3toAirInOpcode(B3::Opcode b3Opcode, I feel like we need a much more specific name here. The current one makes is not suggestive of what it's doing. maybe "opcodeBasedOnShiftKind"? or something similar > Source/JavaScriptCore/b3/B3LowerToAir.cpp:3144 > + auto tryAppendEON = [&] (Value* left, Value* right) -> bool { this looks good 👍 > Source/JavaScriptCore/b3/air/AirOpcode.opcodes:884 > +arm64: XorNotLeftShift64 U:G:64, U:G:64, U:G:64, D:G:64 > + Tmp, Tmp, Imm, Tmp > + > +arm64: XorNotRightShift64 U:G:64, U:G:64, U:G:64, D:G:64 > + Tmp, Tmp, Imm, Tmp > + > +arm64: XorNotUnsignedRightShift64 U:G:64, U:G:64, U:G:64, D:G:64 > + Tmp, Tmp, Imm, Tmp Why is the use of the Imm 64 bit instead of 32? I think 32 is more correct and consistent w/ how we do it elsewhere
Yijia Huang
Comment 4 2021-07-20 15:24:25 PDT
Saam Barati
Comment 5 2021-07-20 16:05:15 PDT
Comment on attachment 433904 [details] Patch Nice. r=me
EWS
Comment 6 2021-07-20 16:20:40 PDT
Committed r280111 (239828@main): <https://commits.webkit.org/239828@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 433904 [details].
Radar WebKit Bug Importer
Comment 7 2021-07-20 16:21:17 PDT
Note You need to log in before you can comment on or make changes to this bug.