Exemple #1
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.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)
Exemple #2
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)
Exemple #3
0
 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_preamble(self.trace, self.runtime_boxes,
                                  self.call_pure_results,
                                  self.box_names_memo)