WebKit Bugzilla
Attachment 339299 Details for
Bug 185195
: [MIPS] Implement and16 and store16 for MacroAssemblerMIPS
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-185195-20180502152335.patch (text/plain), 2.35 KB, created by
Dominik Inführ
on 2018-05-02 06:23:36 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Dominik Inführ
Created:
2018-05-02 06:23:36 PDT
Size:
2.35 KB
patch
obsolete
>Subversion Revision: 231230 >diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog >index 1d180d561e85019c0caa3b5b346c49a2be5f71fb..3001e7d625247a444a168bfd006ad9f808ff2c43 100644 >--- a/Source/JavaScriptCore/ChangeLog >+++ b/Source/JavaScriptCore/ChangeLog >@@ -1,3 +1,16 @@ >+2018-05-02 Dominik Infuehr <dinfuehr@igalia.com> >+ >+ [MIPS] Implement and16 and store16 for MacroAssemblerMIPS >+ https://bugs.webkit.org/show_bug.cgi?id=185195 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ This implements the given function for MIPS, such that it builds again. >+ >+ * assembler/MacroAssemblerMIPS.h: >+ (JSC::MacroAssemblerMIPS::and16): >+ (JSC::MacroAssemblerMIPS::store16): >+ > 2018-05-02 Robin Morisset <rmorisset@apple.com> > > emitCodeToGetArgumentsArrayLength should not crash on PhantomNewArrayWithSpread >diff --git a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h >index 524e550c289c831011fc207d754309c420b0b7bb..7b19838726e57b54cd6bea8009f999f6729856bf 100644 >--- a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h >+++ b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h >@@ -318,6 +318,12 @@ public: > add32(TrustedImm32(address.offset), dest); > } > >+ void and16(Address src, RegisterID dest) >+ { >+ load16(src, dataTempRegister); >+ and32(dataTempRegister, dest); >+ } >+ > void and32(Address src, RegisterID dest) > { > load32(src, dataTempRegister); >@@ -1359,6 +1365,23 @@ public: > } > } > >+ void store16(RegisterID src, ImplicitAddress address) >+ { >+ if (address.offset >= -32768 && address.offset <= 32767 >+ && !m_fixedWidth) { >+ m_assembler.sh(src, address.base, address.offset); >+ } else { >+ /* >+ lui addrTemp, (offset + 0x8000) >> 16 >+ addu addrTemp, addrTemp, base >+ sh src, (offset & 0xffff)(addrTemp) >+ */ >+ m_assembler.lui(addrTempRegister, (address.offset + 0x8000) >> 16); >+ m_assembler.addu(addrTempRegister, addrTempRegister, address.base); >+ m_assembler.sh(src, addrTempRegister, address.offset); >+ } >+ } >+ > void store16(RegisterID src, BaseIndex address) > { > if (address.offset >= -32768 && address.offset <= 32767
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 185195
: 339299