2010-11-24 Gabor Loki <loki@webkit.org>
Reviewed by Csaba Osztrogonác.
Merge the usage of jumps and calls at ARM-JIT
https://bugs.webkit.org/show_bug.cgi?id=50008
Those JmpSrc objects which represent jumps (not calls) should point to
after the jump instruction.
* assembler/ARMAssembler.h:
(JSC::ARMAssembler::blx):
(JSC::ARMAssembler::loadBranchTarget):
(JSC::ARMAssembler::getAbsoluteJumpAddress):
(JSC::ARMAssembler::linkJump):
(JSC::ARMAssembler::relinkJump):
(JSC::ARMAssembler::linkCall):
(JSC::ARMAssembler::relinkCall):
(JSC::ARMAssembler::getRelocatedAddress):
(JSC::ARMAssembler::getDifferenceBetweenLabels):
(JSC::ARMAssembler::getCallReturnOffset):
* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::call):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@72663 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/JavaScriptCore/assembler/MacroAssemblerARM.h b/JavaScriptCore/assembler/MacroAssemblerARM.h
index ab6104d..c51686a 100644
--- a/JavaScriptCore/assembler/MacroAssemblerARM.h
+++ b/JavaScriptCore/assembler/MacroAssemblerARM.h
@@ -615,9 +615,7 @@
Call call(RegisterID target)
{
- m_assembler.blx(target);
- JmpSrc jmpSrc;
- return Call(jmpSrc, Call::None);
+ return Call(m_assembler.blx(target), Call::None);
}
void call(Address address)