internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as DelInstruction;
     other.StructType = StructType;
 }
 internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as StoreretInstruction;
     other.CurrentFunction = CurrentFunction;
 }
 internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as CompInstruction;
     other.StructType1 = StructType1;
     other.StructType2 = StructType2;
 }
 internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as StoreglobalInstruction;
     other.IsNull = IsNull;
     other.Type = Type;
 }
 internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as StoreoutargumentInstruction;
     other.Type = Type;
 }
 internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as StoreaiFieldInstruction;
     other.FieldIndex = FieldIndex;
     other.FieldType = FieldType;
     other.ContainingType = ContainingType;
     other.IsNull = IsNull;
 }
 internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as StoreaiVarInstruction;
     other.ArgIndex = ArgIndex;
     other.IsNull = IsNull;
 }
 internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as MovInstruction;
     other.ArgIndex = ArgIndex;
     other.ArgReg = ArgReg;
 }
 internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as LoadglobalInstruction;
     other.Type = Type;
 }
Exemple #10
0
 internal override void CopyExtraData(MilocInstruction newInstr)
 {
     var other = newInstr as LoadaiVarInstruction;
     other.ArgIndex = ArgIndex;
 }
Exemple #11
0
 private int? constantValue(MilocInstruction s, Register r)
 {
     var d = defs.GetDef(s, r.IntVal);
     if (d.Count != 1)
         return null;
     var load = d[0] as LoadiInstruction;
     if (load == null)
         return null;
     if (!powersOfTwoToExponent.ContainsKey(load.Immed0))
         return null;
     return powersOfTwoToExponent[load.Immed0];
 }
Exemple #12
0
 internal virtual void CopyExtraData(MilocInstruction newInstr)
 {
 }