commit 0fbec504335c89af2b478620c6dee04b935faf4c
parent dce8338b0f3c7ef9989ccd86e516c871a0d96cd0
Author: André Bargull <andre.bargull@gmail.com>
Date: Fri, 24 Oct 2025 14:58:53 +0000
Bug 1996082 - Part 2: Remove no longer used Int64 MacroAssembler methods with Operands for {mips,loong,riscv}64. r=spidermonkey-reviewers,jandem
Differential Revision: https://phabricator.services.mozilla.com/D269832
Diffstat:
4 files changed, 6 insertions(+), 240 deletions(-)
diff --git a/js/src/jit/MacroAssembler.h b/js/src/jit/MacroAssembler.h
@@ -1088,12 +1088,9 @@ class MacroAssembler : public MacroAssemblerSpecific {
inline void xorPtr(Imm32 imm, Register dest) PER_ARCH;
inline void xorPtr(Imm32 imm, Register src, Register dest) PER_ARCH;
- inline void and64(const Operand& src, Register64 dest)
- DEFINED_ON(x64, mips64, loong64, riscv64);
- inline void or64(const Operand& src, Register64 dest)
- DEFINED_ON(x64, mips64, loong64, riscv64);
- inline void xor64(const Operand& src, Register64 dest)
- DEFINED_ON(x64, mips64, loong64, riscv64);
+ inline void and64(const Operand& src, Register64 dest) DEFINED_ON(x64);
+ inline void or64(const Operand& src, Register64 dest) DEFINED_ON(x64);
+ inline void xor64(const Operand& src, Register64 dest) DEFINED_ON(x64);
// ===============================================================
// Swap instructions
@@ -1140,8 +1137,7 @@ class MacroAssembler : public MacroAssemblerSpecific {
inline void add64(Register64 src, Register64 dest) PER_ARCH;
inline void add64(Imm32 imm, Register64 dest) PER_ARCH;
inline void add64(Imm64 imm, Register64 dest) PER_ARCH;
- inline void add64(const Operand& src, Register64 dest)
- DEFINED_ON(x64, mips64, loong64, riscv64);
+ inline void add64(const Operand& src, Register64 dest) DEFINED_ON(x64);
inline void addFloat32(FloatRegister src, FloatRegister dest) PER_SHARED_ARCH;
@@ -1166,8 +1162,7 @@ class MacroAssembler : public MacroAssemblerSpecific {
inline void sub64(Register64 src, Register64 dest) PER_ARCH;
inline void sub64(Imm64 imm, Register64 dest) PER_ARCH;
- inline void sub64(const Operand& src, Register64 dest)
- DEFINED_ON(x64, mips64, loong64, riscv64);
+ inline void sub64(const Operand& src, Register64 dest) DEFINED_ON(x64);
inline void subFloat32(FloatRegister src, FloatRegister dest) PER_SHARED_ARCH;
@@ -1188,8 +1183,7 @@ class MacroAssembler : public MacroAssemblerSpecific {
inline void mul64(const Operand& src, const Register64& dest) DEFINED_ON(x64);
inline void mul64(const Operand& src, const Register64& dest,
- const Register temp)
- DEFINED_ON(x64, mips64, loong64, riscv64);
+ const Register temp) DEFINED_ON(x64);
inline void mul64(Imm64 imm, const Register64& dest) PER_ARCH;
inline void mul64(Imm64 imm, const Register64& dest, const Register temp)
DEFINED_ON(x86, x64, arm, mips64, loong64, riscv64);
diff --git a/js/src/jit/loong64/MacroAssembler-loong64-inl.h b/js/src/jit/loong64/MacroAssembler-loong64-inl.h
@@ -139,19 +139,6 @@ void MacroAssembler::and64(Register64 src, Register64 dest) {
as_and(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::and64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(*this);
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- and64(scratch64, dest);
- } else {
- and64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::and32(Register src, Register dest) {
as_and(dest, dest, src);
}
@@ -225,36 +212,10 @@ void MacroAssembler::or64(Register64 src, Register64 dest) {
as_or(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::or64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(asMasm());
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- or64(scratch64, dest);
- } else {
- or64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::xor64(Register64 src, Register64 dest) {
as_xor(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::xor64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(asMasm());
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- xor64(scratch64, dest);
- } else {
- xor64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::xorPtr(Register src, Register dest) {
as_xor(dest, dest, src);
}
@@ -338,19 +299,6 @@ void MacroAssembler::add64(Register64 src, Register64 dest) {
addPtr(src.reg, dest.reg);
}
-void MacroAssembler::add64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(asMasm());
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- add64(scratch64, dest);
- } else {
- add64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::add64(Imm32 imm, Register64 dest) {
ma_add_d(dest.reg, dest.reg, imm);
}
@@ -441,19 +389,6 @@ void MacroAssembler::sub64(Register64 src, Register64 dest) {
as_sub_d(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::sub64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(asMasm());
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- sub64(scratch64, dest);
- } else {
- sub64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::sub64(Imm64 imm, Register64 dest) {
UseScratchRegisterScope temps(asMasm());
Register scratch = temps.Acquire();
@@ -520,20 +455,6 @@ void MacroAssembler::mul64(const Register64& src, const Register64& dest,
as_mul_d(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::mul64(const Operand& src, const Register64& dest,
- const Register temp) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(asMasm());
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- mul64(scratch64, dest, temp);
- } else {
- mul64(Register64(src.toReg()), dest, temp);
- }
-}
-
void MacroAssembler::mulPtr(Register rhs, Register srcDest) {
as_mul_d(srcDest, srcDest, rhs);
}
diff --git a/js/src/jit/mips64/MacroAssembler-mips64-inl.h b/js/src/jit/mips64/MacroAssembler-mips64-inl.h
@@ -103,18 +103,6 @@ void MacroAssembler::and64(Register64 src, Register64 dest) {
ma_and(dest.reg, src.reg);
}
-void MacroAssembler::and64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(*this);
- Register64 scratch(temps.Acquire());
-
- load64(src.toAddress(), scratch);
- and64(scratch, dest);
- } else {
- and64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::or64(Imm64 imm, Register64 dest) {
UseScratchRegisterScope temps(*this);
Register scratch = temps.Acquire();
@@ -141,34 +129,10 @@ void MacroAssembler::or64(Register64 src, Register64 dest) {
ma_or(dest.reg, src.reg);
}
-void MacroAssembler::or64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(*this);
- Register64 scratch(temps.Acquire());
-
- load64(src.toAddress(), scratch);
- or64(scratch, dest);
- } else {
- or64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::xor64(Register64 src, Register64 dest) {
ma_xor(dest.reg, src.reg);
}
-void MacroAssembler::xor64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(*this);
- Register64 scratch(temps.Acquire());
-
- load64(src.toAddress(), scratch);
- xor64(scratch, dest);
- } else {
- xor64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::xorPtr(Register src, Register dest) { ma_xor(dest, src); }
void MacroAssembler::xorPtr(Imm32 imm, Register dest) { ma_xor(dest, imm); }
@@ -206,18 +170,6 @@ void MacroAssembler::add64(Register64 src, Register64 dest) {
addPtr(src.reg, dest.reg);
}
-void MacroAssembler::add64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(*this);
- Register64 scratch(temps.Acquire());
-
- load64(src.toAddress(), scratch);
- add64(scratch, dest);
- } else {
- add64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::add64(Imm32 imm, Register64 dest) {
ma_daddu(dest.reg, imm);
}
@@ -260,18 +212,6 @@ void MacroAssembler::sub64(Register64 src, Register64 dest) {
as_dsubu(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::sub64(const Operand& src, Register64 dest) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(*this);
- Register64 scratch(temps.Acquire());
-
- load64(src.toAddress(), scratch);
- sub64(scratch, dest);
- } else {
- sub64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::sub64(Imm64 imm, Register64 dest) {
UseScratchRegisterScope temps(*this);
Register scratch = temps.Acquire();
@@ -330,19 +270,6 @@ void MacroAssembler::mul64(const Register64& src, const Register64& dest,
#endif
}
-void MacroAssembler::mul64(const Operand& src, const Register64& dest,
- const Register temp) {
- if (src.getTag() == Operand::MEM) {
- UseScratchRegisterScope temps(*this);
- Register64 scratch(temps.Acquire());
-
- load64(src.toAddress(), scratch);
- mul64(scratch, dest, temp);
- } else {
- mul64(Register64(src.toReg()), dest, temp);
- }
-}
-
void MacroAssembler::mulBy3(Register src, Register dest) {
UseScratchRegisterScope temps(*this);
Register scratch = temps.Acquire();
diff --git a/js/src/jit/riscv64/MacroAssembler-riscv64-inl.h b/js/src/jit/riscv64/MacroAssembler-riscv64-inl.h
@@ -298,19 +298,6 @@ void MacroAssembler::add64(Register64 src, Register64 dest) {
addPtr(src.reg, dest.reg);
}
-void MacroAssembler::add64(const Operand& src, Register64 dest) {
- if (src.is_mem()) {
- UseScratchRegisterScope temps(this);
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- add64(scratch64, dest);
- } else {
- add64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::add64(Imm32 imm, Register64 dest) {
ma_add64(dest.reg, dest.reg, imm);
}
@@ -394,19 +381,6 @@ void MacroAssembler::and64(Register64 src, Register64 dest) {
ma_and(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::and64(const Operand& src, Register64 dest) {
- if (src.is_mem()) {
- UseScratchRegisterScope temps(this);
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- ma_and(dest.scratchReg(), scratch64.scratchReg());
- } else {
- ma_and(dest.scratchReg(), src.toReg());
- }
-}
-
void MacroAssembler::andPtr(Register src, Register dest) {
ma_and(dest, dest, src);
}
@@ -1826,19 +1800,6 @@ void MacroAssembler::mul64(const Register64& src, const Register64& dest,
mul(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::mul64(const Operand& src, const Register64& dest,
- const Register temp) {
- if (src.is_mem()) {
- UseScratchRegisterScope temps(this);
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- mul64(scratch64, dest, temp);
- } else {
- mul64(Register64(src.toReg()), dest, temp);
- }
-}
void MacroAssembler::mulBy3(Register src, Register dest) {
UseScratchRegisterScope temps(this);
Register scratch = temps.Acquire();
@@ -1900,18 +1861,6 @@ void MacroAssembler::or64(Register64 src, Register64 dest) {
ma_or(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::or64(const Operand& src, Register64 dest) {
- if (src.is_mem()) {
- UseScratchRegisterScope temps(this);
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- or64(scratch64, dest);
- } else {
- or64(Register64(src.toReg()), dest);
- }
-}
void MacroAssembler::or64(Imm64 imm, Register64 dest) {
UseScratchRegisterScope temps(this);
Register scratch = temps.Acquire();
@@ -2200,19 +2149,6 @@ void MacroAssembler::sub64(Register64 src, Register64 dest) {
sub(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::sub64(const Operand& src, Register64 dest) {
- if (src.is_mem()) {
- UseScratchRegisterScope temps(this);
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- sub64(scratch64, dest);
- } else {
- sub64(Register64(src.toReg()), dest);
- }
-}
-
void MacroAssembler::sub64(Imm64 imm, Register64 dest) {
UseScratchRegisterScope temps(this);
Register scratch = temps.Acquire();
@@ -2304,18 +2240,6 @@ void MacroAssembler::xor64(Register64 src, Register64 dest) {
ma_xor(dest.reg, dest.reg, src.reg);
}
-void MacroAssembler::xor64(const Operand& src, Register64 dest) {
- if (src.is_mem()) {
- UseScratchRegisterScope temps(this);
- Register scratch = temps.Acquire();
- Register64 scratch64(scratch);
-
- load64(src.toAddress(), scratch64);
- xor64(scratch64, dest);
- } else {
- xor64(Register64(src.toReg()), dest);
- }
-}
void MacroAssembler::xor64(Imm64 imm, Register64 dest) {
UseScratchRegisterScope temps(this);
Register scratch = temps.Acquire();