Ejemplo n.º 1
0
        public int VisitPhi(PhiInstruction phi)
        {
            m.EnsureBlock(null);
            var dstType = builder.TranslateType(phi.Type);
            var dst     = m.CreateLocalId("loc", dstType);
            var stm     = m.Emit(new PhiAssignment(dst));

            unresolvedPhis.Add(stm, phi);
            return(0);
        }
Ejemplo n.º 2
0
        public int VisitStore(Store store)
        {
            var dstType = builder.TranslateType(store.DstType);
            var srcType = builder.TranslateType(store.SrcType);
            var src     = MakeValueExpression(store.Src, srcType);
            var ea      = MakeValueExpression(store.Dst, dstType);

            m.Emit(new Core.Code.Store(m.Deref(ea), src));
            return(0);
        }