diff --git a/loopy/preprocess.py b/loopy/preprocess.py index fd851d3a6b12e287d85d1718c9504fdd93eb7cda..3c84d835c832b3ce67fdcec01bd1d068429ada64 100644 --- a/loopy/preprocess.py +++ b/loopy/preprocess.py @@ -645,19 +645,6 @@ def preprocess_kernel(kernel): kernel = mark_local_temporaries(kernel) kernel = duplicate_reduction_inames(kernel) kernel = realize_reduction(kernel) - - # {{{ check that all CSEs have been realized - - from loopy.symbolic import CSECallbackMapper - - def map_cse(expr, rec): - raise RuntimeError("all CSEs must be realized before scheduling") - - for insn in kernel.instructions: - CSECallbackMapper(map_cse)(insn.expression) - - # }}} - kernel = assign_automatic_axes(kernel) kernel = add_boostability_and_automatic_dependencies(kernel) kernel = limit_boostability(kernel) diff --git a/loopy/schedule.py b/loopy/schedule.py index 61d9678cc39d476c40b6fcc3f92e23ad22e21cc0..67ffbb645c257f4f0ec28aea4e3c7a80dfb1ab9b 100644 --- a/loopy/schedule.py +++ b/loopy/schedule.py @@ -597,6 +597,18 @@ def insert_barriers(kernel, schedule, level=0): # {{{ main scheduling entrypoint def generate_loop_schedules(kernel, loop_priority=[], debug=None): + # {{{ check that all CSEs have been realized + + from loopy.symbolic import CSECallbackMapper + + def map_cse(expr, rec): + raise RuntimeError("all CSEs must be realized before scheduling") + + for insn in kernel.instructions: + CSECallbackMapper(map_cse)(insn.expression) + + # }}} + from loopy.preprocess import preprocess_kernel kernel = preprocess_kernel(kernel)