https://github.com/halide/Halide
Raw File
Tip revision: ddb393fec3a8716aef88635b6ae2fcdb3a1775ea authored by Andrew Adams on 12 January 2019, 06:30:34 UTC
Merge branch 'standalone_autoscheduler_arm_worker' of https://github.com/halide/halide into standalone_autoscheduler_arm_worker
Tip revision: ddb393f
BoundsInference.h
#ifndef HALIDE_BOUNDS_INFERENCE_H
#define HALIDE_BOUNDS_INFERENCE_H

/** \file
 * Defines the bounds_inference lowering pass.
 */

#include <map>

#include "Bounds.h"
#include "IR.h"
#include "Target.h"

namespace Halide {
namespace Internal {

/** Take a partially lowered statement that includes symbolic
 * representations of the bounds over which things should be realized,
 * and inject expressions defining those bounds.
 */
Stmt bounds_inference(Stmt,
                      const std::vector<Function> &outputs,
                      const std::vector<std::string> &realization_order,
                      const std::vector<std::vector<std::string>> &fused_groups,
                      const std::map<std::string, Function> &environment,
                      const std::map<std::pair<std::string, int>, Interval> &func_bounds,
                      const Target &target);

}  // namespace Internal
}  // namespace Halide

#endif
back to top