public void Add(InstructionInBlock ins, int registerIndex) { var isDest = ins.IsDestinationRegister(registerIndex); var isSource = ins.IsSourceRegister(registerIndex); if (isDest) { AddWrite(ins); } if (isSource) { Reads.Add(ins); } ; if (ins.Instruction.Code == RCode.Check_cast || ins.Instruction.Code == RCode.New_instance) { CheckCastsAndNewInstance.Add(ins); } if (!isDest && !isSource) { Debug.Assert(false); } }
public void Add(InstructionInBlock ins, int registerIndex) { var isDest = ins.IsDestinationRegister(registerIndex); var isSource = ins.IsSourceRegister(registerIndex); if (isDest) AddWrite(ins); if (isSource) Reads.Add(ins); ; if(ins.Instruction.Code == RCode.Check_cast || ins.Instruction.Code == RCode.New_instance) CheckCastsAndNewInstance.Add(ins); if(!isDest && !isSource) Debug.Assert(false); }