зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1199719 part 5 - Move MacroAssembler::orPtr into the generic macro assembler. r=lth
This commit is contained in:
Родитель
ecf6576784
Коммит
2802723df0
|
@ -682,6 +682,9 @@ class MacroAssembler : public MacroAssemblerSpecific
|
|||
inline void or32(Imm32 imm, Register dest) PER_SHARED_ARCH;
|
||||
inline void or32(Imm32 imm, const Address& dest) PER_SHARED_ARCH;
|
||||
|
||||
inline void orPtr(Register src, Register dest) PER_ARCH;
|
||||
inline void orPtr(Imm32 imm, Register dest) PER_ARCH;
|
||||
|
||||
//}}} check_macroassembler_style
|
||||
public:
|
||||
|
||||
|
|
|
@ -78,6 +78,18 @@ MacroAssembler::or32(Imm32 imm, const Address& dest)
|
|||
store32(scratch, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Register src, Register dest)
|
||||
{
|
||||
ma_orr(src, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Imm32 imm, Register dest)
|
||||
{
|
||||
ma_orr(imm, dest);
|
||||
}
|
||||
|
||||
//}}} check_macroassembler_style
|
||||
// ===============================================================
|
||||
|
||||
|
|
|
@ -1971,18 +1971,6 @@ MacroAssemblerARMCompat::xorPtr(Register src, Register dest)
|
|||
ma_eor(src, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARMCompat::orPtr(Imm32 imm, Register dest)
|
||||
{
|
||||
ma_orr(imm, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARMCompat::orPtr(Register src, Register dest)
|
||||
{
|
||||
ma_orr(src, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARMCompat::move32(Imm32 imm, Register dest)
|
||||
{
|
||||
|
|
|
@ -1204,8 +1204,6 @@ class MacroAssemblerARMCompat : public MacroAssemblerARM
|
|||
|
||||
void xorPtr(Imm32 imm, Register dest);
|
||||
void xorPtr(Register src, Register dest);
|
||||
void orPtr(Imm32 imm, Register dest);
|
||||
void orPtr(Register src, Register dest);
|
||||
void addPtr(Register src, Register dest);
|
||||
void addPtr(const Address& src, Register dest);
|
||||
void not32(Register reg);
|
||||
|
|
|
@ -90,6 +90,18 @@ MacroAssembler::or32(Imm32 imm, const Address& dest)
|
|||
store32(scratch32.asUnsized(), dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Register src, Register dest)
|
||||
{
|
||||
Orr(ARMRegister(dest, 64), ARMRegister(dest, 64), Operand(ARMRegister(src, 64)));
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Imm32 imm, Register dest)
|
||||
{
|
||||
Orr(ARMRegister(dest, 64), ARMRegister(dest, 64), Operand(imm.value));
|
||||
}
|
||||
|
||||
//}}} check_macroassembler_style
|
||||
// ===============================================================
|
||||
|
||||
|
|
|
@ -1088,15 +1088,6 @@ class MacroAssemblerCompat : public vixl::MacroAssembler
|
|||
void xorPtr(Register src, Register dest) {
|
||||
Eor(ARMRegister(dest, 64), ARMRegister(dest, 64), Operand(ARMRegister(src, 64)));
|
||||
}
|
||||
void orPtr(ImmWord imm, Register dest) {
|
||||
Orr(ARMRegister(dest, 64), ARMRegister(dest, 64), Operand(imm.value));
|
||||
}
|
||||
void orPtr(Imm32 imm, Register dest) {
|
||||
Orr(ARMRegister(dest, 64), ARMRegister(dest, 64), Operand(imm.value));
|
||||
}
|
||||
void orPtr(Register src, Register dest) {
|
||||
Orr(ARMRegister(dest, 64), ARMRegister(dest, 64), Operand(ARMRegister(src, 64)));
|
||||
}
|
||||
|
||||
void testPtr(Register lhs, Register rhs) {
|
||||
Tst(ARMRegister(lhs, 64), Operand(ARMRegister(rhs, 64)));
|
||||
|
|
|
@ -75,6 +75,18 @@ MacroAssembler::or32(Imm32 imm, const Address& dest)
|
|||
store32(SecondScratchReg, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Register src, Register dest)
|
||||
{
|
||||
ma_or(dest, src);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Imm32 imm, Register dest)
|
||||
{
|
||||
ma_or(dest, imm);
|
||||
}
|
||||
|
||||
//}}} check_macroassembler_style
|
||||
// ===============================================================
|
||||
|
||||
|
|
|
@ -1591,18 +1591,6 @@ MacroAssemblerMIPSCompat::xorPtr(Register src, Register dest)
|
|||
ma_xor(dest, src);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerMIPSCompat::orPtr(Imm32 imm, Register dest)
|
||||
{
|
||||
ma_or(dest, imm);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerMIPSCompat::orPtr(Register src, Register dest)
|
||||
{
|
||||
ma_or(dest, src);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerMIPSCompat::move32(Imm32 imm, Register dest)
|
||||
{
|
||||
|
|
|
@ -1134,8 +1134,6 @@ class MacroAssemblerMIPSCompat : public MacroAssemblerMIPS
|
|||
void xor32(Imm32 imm, Register dest);
|
||||
void xorPtr(Imm32 imm, Register dest);
|
||||
void xorPtr(Register src, Register dest);
|
||||
void orPtr(Imm32 imm, Register dest);
|
||||
void orPtr(Register src, Register dest);
|
||||
void addPtr(Register src, Register dest);
|
||||
void subPtr(Register src, Register dest);
|
||||
void addPtr(const Address& src, Register dest);
|
||||
|
|
|
@ -427,7 +427,6 @@ class MacroAssemblerNone : public Assembler
|
|||
void lshiftPtr(Imm32, Register) { MOZ_CRASH(); }
|
||||
template <typename T, typename S> void xorPtr(T, S) { MOZ_CRASH(); }
|
||||
template <typename T, typename S> void xor32(T, S) { MOZ_CRASH(); }
|
||||
template <typename T, typename S> void orPtr(T, S) { MOZ_CRASH(); }
|
||||
template <typename T> void not32(T) { MOZ_CRASH(); }
|
||||
void convertUInt32ToDouble(Register, FloatRegister) { MOZ_CRASH(); }
|
||||
void convertUInt32ToFloat32(Register, FloatRegister) { MOZ_CRASH(); }
|
||||
|
|
|
@ -29,6 +29,18 @@ MacroAssembler::andPtr(Imm32 imm, Register dest)
|
|||
andq(imm, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Register src, Register dest)
|
||||
{
|
||||
orq(src, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Imm32 imm, Register dest)
|
||||
{
|
||||
orq(imm, dest);
|
||||
}
|
||||
|
||||
//}}} check_macroassembler_style
|
||||
// ===============================================================
|
||||
|
||||
|
|
|
@ -852,12 +852,6 @@ class MacroAssemblerX64 : public MacroAssemblerX86Shared
|
|||
void xorPtr(Register src, Register dest) {
|
||||
xorq(src, dest);
|
||||
}
|
||||
void orPtr(Imm32 imm, Register dest) {
|
||||
orq(imm, dest);
|
||||
}
|
||||
void orPtr(Register src, Register dest) {
|
||||
orq(src, dest);
|
||||
}
|
||||
|
||||
void splitTag(Register src, Register dest) {
|
||||
if (src != dest)
|
||||
|
|
|
@ -29,6 +29,18 @@ MacroAssembler::andPtr(Imm32 imm, Register dest)
|
|||
andl(imm, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Register src, Register dest)
|
||||
{
|
||||
orl(src, dest);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::orPtr(Imm32 imm, Register dest)
|
||||
{
|
||||
orl(imm, dest);
|
||||
}
|
||||
|
||||
//}}} check_macroassembler_style
|
||||
// ===============================================================
|
||||
|
||||
|
|
|
@ -1069,12 +1069,6 @@ class MacroAssemblerX86 : public MacroAssemblerX86Shared
|
|||
void xorPtr(Register src, Register dest) {
|
||||
xorl(src, dest);
|
||||
}
|
||||
void orPtr(Imm32 imm, Register dest) {
|
||||
orl(imm, dest);
|
||||
}
|
||||
void orPtr(Register src, Register dest) {
|
||||
orl(src, dest);
|
||||
}
|
||||
|
||||
void loadInstructionPointerAfterCall(Register dest) {
|
||||
movl(Operand(StackPointer, 0x0), dest);
|
||||
|
|
Загрузка…
Ссылка в новой задаче