mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1150384 - IonMonkey: MIPS: Fix build failure caused by Bug 1143011. r=rankov
This commit is contained in:
parent
48c5bf4f2c
commit
597e9e3d5a
@ -102,8 +102,8 @@ FloatRegister::singleOverlay(unsigned int which) const
|
||||
FloatRegisterSet
|
||||
FloatRegister::ReduceSetForPush(const FloatRegisterSet& s)
|
||||
{
|
||||
FloatRegisterSet mod;
|
||||
for (TypedRegisterIterator<FloatRegister> iter(s); iter.more(); iter++) {
|
||||
LiveFloatRegisterSet mod;
|
||||
for (FloatRegisterIterator iter(s); iter.more(); iter++) {
|
||||
if ((*iter).isSingle()) {
|
||||
// Even for single size registers save complete double register.
|
||||
mod.addUnchecked((*iter).doubleOverlay());
|
||||
@ -111,7 +111,7 @@ FloatRegister::ReduceSetForPush(const FloatRegisterSet& s)
|
||||
mod.addUnchecked(*iter);
|
||||
}
|
||||
}
|
||||
return mod;
|
||||
return mod.set();
|
||||
}
|
||||
|
||||
uint32_t
|
||||
|
@ -81,8 +81,8 @@ ICBinaryArith_Int32::Compiler::generateStubCode(MacroAssembler& masm)
|
||||
Register scratchReg = R2.payloadReg();
|
||||
|
||||
// DIV and MOD need an extra non-volatile ValueOperand to hold R0.
|
||||
GeneralRegisterSet savedRegs = availableGeneralRegs(2);
|
||||
savedRegs = GeneralRegisterSet::Intersect(GeneralRegisterSet::NonVolatile(), savedRegs);
|
||||
AllocatableGeneralRegisterSet savedRegs(availableGeneralRegs(2));
|
||||
savedRegs.set() = GeneralRegisterSet::Intersect(GeneralRegisterSet::NonVolatile(), savedRegs.set());
|
||||
|
||||
Label goodMul, divTest1, divTest2;
|
||||
switch(op_) {
|
||||
|
@ -193,7 +193,7 @@ JitRuntime::generateEnterJIT(JSContext* cx, EnterJitType type)
|
||||
CodeLabel returnLabel;
|
||||
if (type == EnterJitBaseline) {
|
||||
// Handle OSR.
|
||||
GeneralRegisterSet regs(GeneralRegisterSet::All());
|
||||
AllocatableGeneralRegisterSet regs(GeneralRegisterSet::All());
|
||||
regs.take(OsrFrameReg);
|
||||
regs.take(BaselineFrameReg);
|
||||
regs.take(reg_code);
|
||||
@ -694,7 +694,7 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f)
|
||||
|
||||
MacroAssembler masm(cx);
|
||||
|
||||
GeneralRegisterSet regs = GeneralRegisterSet(Register::Codes::WrapperMask);
|
||||
AllocatableGeneralRegisterSet regs(GeneralRegisterSet(Register::Codes::WrapperMask));
|
||||
|
||||
static_assert((Register::Codes::VolatileMask & ~Register::Codes::WrapperMask) == 0,
|
||||
"Wrapper register set should be a superset of Volatile register set.");
|
||||
@ -895,12 +895,12 @@ JitRuntime::generatePreBarrier(JSContext* cx, MIRType type)
|
||||
{
|
||||
MacroAssembler masm(cx);
|
||||
|
||||
RegisterSet save;
|
||||
LiveRegisterSet save;
|
||||
if (cx->runtime()->jitSupportsFloatingPoint) {
|
||||
save = RegisterSet(GeneralRegisterSet(Registers::VolatileMask),
|
||||
save.set() = RegisterSet(GeneralRegisterSet(Registers::VolatileMask),
|
||||
FloatRegisterSet(FloatRegisters::VolatileMask));
|
||||
} else {
|
||||
save = RegisterSet(GeneralRegisterSet(Registers::VolatileMask),
|
||||
save.set() = RegisterSet(GeneralRegisterSet(Registers::VolatileMask),
|
||||
FloatRegisterSet());
|
||||
}
|
||||
masm.PushRegsInMask(save);
|
||||
|
Loading…
Reference in New Issue
Block a user