Title: [101658] trunk/Source/_javascript_Core
- Revision
- 101658
- Author
- [email protected]
- Date
- 2011-12-01 04:42:08 -0800 (Thu, 01 Dec 2011)
Log Message
MacroAssemblerMIPS does not implement readCallTarget
https://bugs.webkit.org/show_bug.cgi?id=73432
Patch by Chao-ying Fu <[email protected]> on 2011-12-01
Reviewed by Zoltan Herczeg.
* assembler/MIPSAssembler.h:
(JSC::MIPSAssembler::readCallTarget):
* assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::readCallTarget):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (101657 => 101658)
--- trunk/Source/_javascript_Core/ChangeLog 2011-12-01 12:17:20 UTC (rev 101657)
+++ trunk/Source/_javascript_Core/ChangeLog 2011-12-01 12:42:08 UTC (rev 101658)
@@ -1,3 +1,15 @@
+2011-12-01 Chao-ying Fu <[email protected]>
+
+ MacroAssemblerMIPS does not implement readCallTarget
+ https://bugs.webkit.org/show_bug.cgi?id=73432
+
+ Reviewed by Zoltan Herczeg.
+
+ * assembler/MIPSAssembler.h:
+ (JSC::MIPSAssembler::readCallTarget):
+ * assembler/MacroAssemblerMIPS.h:
+ (JSC::MacroAssemblerMIPS::readCallTarget):
+
2011-12-01 Noel Gordon <[email protected]>
[chromium] Remove wtf/qt/ThreadingQt.cpp from the gyp projects
Modified: trunk/Source/_javascript_Core/assembler/MIPSAssembler.h (101657 => 101658)
--- trunk/Source/_javascript_Core/assembler/MIPSAssembler.h 2011-12-01 12:17:20 UTC (rev 101657)
+++ trunk/Source/_javascript_Core/assembler/MIPSAssembler.h 2011-12-01 12:42:08 UTC (rev 101658)
@@ -772,6 +772,18 @@
return reinterpret_cast<void*>(readInt32(from));
}
+ static void* readCallTarget(void* from)
+ {
+ MIPSWord* insn = reinterpret_cast<MIPSWord*>(from);
+ insn -= 4;
+ ASSERT((*insn & 0xffe00000) == 0x3c000000); // lui
+ int32_t result = (*insn & 0x0000ffff) << 16;
+ insn++;
+ ASSERT((*insn & 0xfc000000) == 0x34000000); // ori
+ result |= *insn & 0x0000ffff;
+ return reinterpret_cast<void*>(result);
+ }
+
private:
/* Update each jump in the buffer of newBase. */
void relocateJumps(void* oldBase, void* newBase)
Modified: trunk/Source/_javascript_Core/assembler/MacroAssemblerMIPS.h (101657 => 101658)
--- trunk/Source/_javascript_Core/assembler/MacroAssemblerMIPS.h 2011-12-01 12:17:20 UTC (rev 101657)
+++ trunk/Source/_javascript_Core/assembler/MacroAssemblerMIPS.h 2011-12-01 12:42:08 UTC (rev 101658)
@@ -1815,6 +1815,11 @@
m_assembler.nop();
}
+ static FunctionPtr readCallTarget(CodeLocationCall call)
+ {
+ return FunctionPtr(reinterpret_cast<void(*)()>(MIPSAssembler::readCallTarget(call.dataLocation())));
+ }
+
private:
// If m_fixedWidth is true, we will generate a fixed number of instructions.
// Otherwise, we can emit any number of instructions.
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes