예제 #1
0
파일: compile.py 프로젝트: sota/pypy-old
    def optimize(self, metainterp_sd, jitdriver_sd, optimizations, unroll):
        from rpython.jit.metainterp.optimizeopt.unroll import UnrollOptimizer

        assert unroll # we should not be here if it's disabled
        opt = UnrollOptimizer(metainterp_sd, jitdriver_sd, optimizations)
        return opt.optimize_peeled_loop(self.trace, self.celltoken, self.state,
            self.call_pure_results, self.inline_short_preamble)
예제 #2
0
    def optimize(self, metainterp_sd, jitdriver_sd, optimizations, unroll):
        from rpython.jit.metainterp.optimizeopt.unroll import UnrollOptimizer

        opt = UnrollOptimizer(metainterp_sd, jitdriver_sd, optimizations)
        return opt.optimize_bridge(self.start_label, self.operations,
                                   self.call_pure_results,
                                   self.inline_short_preamble,
                                   self.box_names_memo)
예제 #3
0
파일: compile.py 프로젝트: sota/pypy-old
    def optimize(self, metainterp_sd, jitdriver_sd, optimizations, unroll):
        from rpython.jit.metainterp.optimizeopt.unroll import UnrollOptimizer

        opt = UnrollOptimizer(metainterp_sd, jitdriver_sd, optimizations)
        return opt.optimize_bridge(self.trace, self.runtime_boxes,
                                   self.call_pure_results,
                                   self.inline_short_preamble,
                                   self.box_names_memo)
예제 #4
0
파일: compile.py 프로젝트: sota/pypy-old
    def optimize(self, metainterp_sd, jitdriver_sd, optimizations, unroll):
        from rpython.jit.metainterp.optimizeopt.unroll import (UnrollOptimizer,
                                                               Optimizer)

        if unroll:
            opt = UnrollOptimizer(metainterp_sd, jitdriver_sd, optimizations)
            return opt.optimize_preamble(self.trace,
                                         self.runtime_boxes,
                                         self.call_pure_results,
                                         self.box_names_memo)
        else:
            opt = Optimizer(metainterp_sd, jitdriver_sd, optimizations)
            return opt.propagate_all_forward(self.trace, self.call_pure_results)
예제 #5
0
    def optimize(self, metainterp_sd, jitdriver_sd, optimizations, unroll):
        from rpython.jit.metainterp.optimizeopt.unroll import (UnrollOptimizer,
                                                               Optimizer)

        if unroll:
            opt = UnrollOptimizer(metainterp_sd, jitdriver_sd, optimizations)
            return opt.optimize_preamble(self.start_label, self.end_label,
                                         self.operations,
                                         self.call_pure_results,
                                         self.box_names_memo)
        else:
            opt = Optimizer(metainterp_sd, jitdriver_sd, optimizations)
            return opt.propagate_all_forward(self.start_label.getarglist(),
               self.operations, self.call_pure_results)
예제 #6
0
파일: compile.py 프로젝트: Mu-L/pypy
 def optimize(self, metainterp_sd, jitdriver_sd, optimizations):
     from rpython.jit.metainterp.optimizeopt.unroll import UnrollOptimizer
     opt = UnrollOptimizer(metainterp_sd, jitdriver_sd, optimizations)
     return opt.optimize_peeled_loop(self.trace, self.celltoken, self.state,
                                     self.call_pure_results)