void LIRGenerator::visitReturn(MReturn* ret) { MDefinition* opd = ret->getOperand(0); MOZ_ASSERT(opd->type() == MIRType::Value); LReturn* ins = new (alloc()) LReturn; ins->setOperand(0, useFixed(opd, JSReturnReg)); add(ins); }
bool LIRGeneratorX64::visitReturn(MReturn *ret) { MDefinition *opd = ret->getOperand(0); JS_ASSERT(opd->type() == MIRType_Value); LReturn *ins = new LReturn; ins->setOperand(0, useFixed(opd, JSReturnReg)); return add(ins); }
bool LIRGeneratorARM::visitReturn(MReturn *ret) { MDefinition *opd = ret->getOperand(0); JS_ASSERT(opd->type() == MIRType_Value); LReturn *ins = new LReturn; ins->setOperand(0, LUse(JSReturnReg_Type)); ins->setOperand(1, LUse(JSReturnReg_Data)); return fillBoxUses(ins, 0, opd) && add(ins); }
void LIRGeneratorX86::visitReturn(MReturn* ret) { MDefinition* opd = ret->getOperand(0); MOZ_ASSERT(opd->type() == MIRType_Value); LReturn* ins = new(alloc()) LReturn; ins->setOperand(0, LUse(JSReturnReg_Type)); ins->setOperand(1, LUse(JSReturnReg_Data)); fillBoxUses(ins, 0, opd); add(ins); }