Bug 1341292 - MIPS: Remove redundant asserts. r=lth

Asserts in MoveEmitterMIPS[32|64]::emitDoubleMove cause failures in some
tests, but they are redundant. The asserts check if the source or
destination register is scratch register, however scratch register is
actually used only for memory to memory move.
This commit is contained in:
Miran.Karic 2017-09-05 05:42:00 -04:00
Родитель e7ef363bf0
Коммит 11d2b6b69e
2 изменённых файлов: 2 добавлений и 10 удалений

Просмотреть файл

@ -118,10 +118,6 @@ MoveEmitterMIPS::completeCycle(const MoveOperand& from, const MoveOperand& to,
void
MoveEmitterMIPS::emitDoubleMove(const MoveOperand& from, const MoveOperand& to)
{
// Ensure that we can use ScratchDoubleReg in memory move.
MOZ_ASSERT_IF(from.isFloatReg(), from.floatReg() != ScratchDoubleReg);
MOZ_ASSERT_IF(to.isFloatReg(), to.floatReg() != ScratchDoubleReg);
if (from.isFloatReg()) {
if (to.isFloatReg()) {
masm.moveDouble(from.floatReg(), to.floatReg());

Просмотреть файл

@ -128,10 +128,6 @@ MoveEmitterMIPS64::completeCycle(const MoveOperand& from, const MoveOperand& to,
void
MoveEmitterMIPS64::emitDoubleMove(const MoveOperand& from, const MoveOperand& to)
{
// Ensure that we can use SecondScratchDoubleReg in memory move.
MOZ_ASSERT_IF(from.isFloatReg(), from.floatReg() != SecondScratchDoubleReg);
MOZ_ASSERT_IF(to.isFloatReg(), to.floatReg() != SecondScratchDoubleReg);
if (from.isFloatReg()) {
if (to.isFloatReg()) {
masm.moveDouble(from.floatReg(), to.floatReg());
@ -149,7 +145,7 @@ MoveEmitterMIPS64::emitDoubleMove(const MoveOperand& from, const MoveOperand& to
} else {
MOZ_ASSERT(from.isMemory());
MOZ_ASSERT(to.isMemory());
masm.loadDouble(getAdjustedAddress(from), SecondScratchDoubleReg);
masm.storeDouble(SecondScratchDoubleReg, getAdjustedAddress(to));
masm.loadDouble(getAdjustedAddress(from), ScratchDoubleReg);
masm.storeDouble(ScratchDoubleReg, getAdjustedAddress(to));
}
}