summaryrefslogtreecommitdiffstats
path: root/JavaScriptCore/assembler/MacroAssemblerX86_64.h
diff options
context:
space:
mode:
Diffstat (limited to 'JavaScriptCore/assembler/MacroAssemblerX86_64.h')
-rw-r--r--JavaScriptCore/assembler/MacroAssemblerX86_64.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/JavaScriptCore/assembler/MacroAssemblerX86_64.h b/JavaScriptCore/assembler/MacroAssemblerX86_64.h
index ec93f8c..168c93f 100644
--- a/JavaScriptCore/assembler/MacroAssemblerX86_64.h
+++ b/JavaScriptCore/assembler/MacroAssemblerX86_64.h
@@ -26,8 +26,6 @@
#ifndef MacroAssemblerX86_64_h
#define MacroAssemblerX86_64_h
-#include <wtf/Platform.h>
-
#if ENABLE(ASSEMBLER) && CPU(X86_64)
#include "MacroAssemblerX86Common.h"
@@ -88,7 +86,7 @@ public:
}
}
- void loadDouble(void* address, FPRegisterID dest)
+ void loadDouble(const void* address, FPRegisterID dest)
{
move(ImmPtr(address), scratchRegister);
loadDouble(scratchRegister, dest);
@@ -411,6 +409,14 @@ public:
return label;
}
+ using MacroAssemblerX86Common::branchTest8;
+ Jump branchTest8(Condition cond, ExtendedAddress address, Imm32 mask = Imm32(-1))
+ {
+ ImmPtr addr(reinterpret_cast<void*>(address.offset));
+ MacroAssemblerX86Common::move(addr, scratchRegister);
+ return MacroAssemblerX86Common::branchTest8(cond, BaseIndex(scratchRegister, address.base, TimesOne), mask);
+ }
+
Label loadPtrWithPatchToLEA(Address address, RegisterID dest)
{
Label label(this);
@@ -421,6 +427,7 @@ public:
bool supportsFloatingPoint() const { return true; }
// See comment on MacroAssemblerARMv7::supportsFloatingPointTruncate()
bool supportsFloatingPointTruncate() const { return true; }
+ bool supportsFloatingPointSqrt() const { return true; }
private:
friend class LinkBuffer;