Example #1
0
 public override Addressable AddressOf(InstanceFieldAccess instanceFieldAccess)
 {
     if (RequiresAllocation(instanceFieldAccess) || instanceFieldAccess.Type is IManagedPointerType)
     {
         return(memAddr.AddressOf(instanceFieldAccess));
     }
     else
     {
         return(memBCT.AddressOf(instanceFieldAccess));
     }
 }
Example #2
0
        //public abstract StatementList WriteInstanceField(InstanceFieldAccess instanceFieldAccess, IVariable value, InstructionTranslator instTranslator);
        //public abstract StatementList WriteStaticField(StaticFieldAccess staticFieldAccess, Expression expr);
        //public abstract StatementList WriteStaticField(StaticFieldAccess staticFieldAccess, IVariable value);

        public Expression ReadAddr(IVariable addr)
        {
            return(dispatcher.ReadAddr(dispatcher.AddressOf(addr)));
        }