Title: [231289] trunk/Source/_javascript_Core
- Revision
- 231289
- Author
- utatane....@gmail.com
- Date
- 2018-05-02 17:53:41 -0700 (Wed, 02 May 2018)
Log Message
[JSC] Add MacroAssembler::and16 and store16
https://bugs.webkit.org/show_bug.cgi?id=185188
Reviewed by Mark Lam.
r231129 requires and16(ImplicitAddress, RegisterID) and store16(RegisterID, ImplicitAddress) implementations.
This patch adds these methods for ARM.
* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::and16):
(JSC::MacroAssemblerARM::store16):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (231288 => 231289)
--- trunk/Source/_javascript_Core/ChangeLog 2018-05-03 00:50:19 UTC (rev 231288)
+++ trunk/Source/_javascript_Core/ChangeLog 2018-05-03 00:53:41 UTC (rev 231289)
@@ -1,5 +1,19 @@
2018-05-02 Yusuke Suzuki <utatane....@gmail.com>
+ [JSC] Add MacroAssembler::and16 and store16
+ https://bugs.webkit.org/show_bug.cgi?id=185188
+
+ Reviewed by Mark Lam.
+
+ r231129 requires and16(ImplicitAddress, RegisterID) and store16(RegisterID, ImplicitAddress) implementations.
+ This patch adds these methods for ARM.
+
+ * assembler/MacroAssemblerARM.h:
+ (JSC::MacroAssemblerARM::and16):
+ (JSC::MacroAssemblerARM::store16):
+
+2018-05-02 Yusuke Suzuki <utatane....@gmail.com>
+
[DFG] Unify compare related code in 32bit and 64bit
https://bugs.webkit.org/show_bug.cgi?id=185189
Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerARM.h (231288 => 231289)
--- trunk/Source/_javascript_Core/assembler/MacroAssemblerARM.h 2018-05-03 00:50:19 UTC (rev 231288)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerARM.h 2018-05-03 00:53:41 UTC (rev 231289)
@@ -176,6 +176,12 @@
and32(dataTempRegister, dest);
}
+ void and16(Address src, RegisterID dest)
+ {
+ load16(src, dataTempRegister);
+ and32(dataTempRegister, dest);
+ }
+
void lshift32(RegisterID shiftAmount, RegisterID dest)
{
lshift32(dest, shiftAmount, dest);
@@ -563,6 +569,11 @@
m_assembler.baseIndexTransfer16(ARMAssembler::StoreUint16, src, address.base, address.index, static_cast<int>(address.scale), address.offset);
}
+ void store16(RegisterID src, ImplicitAddress address)
+ {
+ m_assembler.dataTransfer16(ARMAssembler::StoreUint16, src, address.base, address.offset);
+ }
+
void store32(RegisterID src, ImplicitAddress address)
{
m_assembler.dataTransfer32(ARMAssembler::StoreUint32, src, address.base, address.offset);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes