예제 #1
0
        public BasicBlockList(BasicBlockScanner scanner, MethodBody body)
        {
            Scanner = scanner;
            Body    = body;

            _bb_by_instruction = new Dictionary <Instruction, BasicBlock> ();
            _block_list        = new List <BasicBlock> ();
        }
예제 #2
0
        public static BasicBlockScanner Scan(OptimizerContext context, MethodDefinition method, int?debug = null)
        {
            var scanner = new BasicBlockScanner(context, method, debug);

            if (!scanner.Scan())
            {
                return(null);
            }
            return(scanner);
        }
 public DeadCodeEliminator(BasicBlockScanner scanner)
 {
     Scanner = scanner;
 }
예제 #4
0
 public CodeRewriter(BasicBlockScanner scanner)
 {
     Scanner = scanner;
 }
예제 #5
0
 public FlowAnalysis(BasicBlockScanner scanner)
 {
     Scanner = scanner;
 }