diff --git a/lib/codegen/analysis/layout.cc b/lib/codegen/analysis/layout.cc index 314b6d590..634b857a6 100644 --- a/lib/codegen/analysis/layout.cc +++ b/lib/codegen/analysis/layout.cc @@ -222,6 +222,7 @@ layout_shared_t::layout_shared_t(const layout_t *arg, size_t _id, analysis::align* align): layout_t(SHARED, _axes, _shapes, values, _id, align) { + size = 0; if(arg->type == SCANLINE) order = arg->order; diff --git a/lib/codegen/analysis/liveness.cc b/lib/codegen/analysis/liveness.cc index 2953bcc8e..98af7e039 100644 --- a/lib/codegen/analysis/liveness.cc +++ b/lib/codegen/analysis/liveness.cc @@ -154,7 +154,7 @@ void liveness::run(ir::module &mod) { // connected components for(auto &x: layouts_->get_all()) { - layout_t* layout = x.second; + layout_t*& layout = x.second; if(layout->type != SHARED) continue; for(ir::value *v: layout->values) diff --git a/lib/driver/module.cc b/lib/driver/module.cc index 30881d087..e300a75f2 100755 --- a/lib/driver/module.cc +++ b/lib/driver/module.cc @@ -241,7 +241,6 @@ std::string cu_module::compile_llvm_module(std::unique_ptr module, cu_module::cu_module(driver::context * context, std::unique_ptr ll_module): cu_module(context, compile_llvm_module(std::move(ll_module), context->device())) { } cu_module::cu_module(driver::context * context, std::string const & source) : module(context, CUmodule(), true), source_(source){ - std::cout << source << std::endl; cu_context::context_switcher ctx(*context); // JIT compile source-code CUjit_option opt[] = {CU_JIT_ERROR_LOG_BUFFER_SIZE_BYTES, CU_JIT_ERROR_LOG_BUFFER}; diff --git a/lib/runtime/function.cc b/lib/runtime/function.cc index f8ca7fff6..dba693475 100644 --- a/lib/runtime/function.cc +++ b/lib/runtime/function.cc @@ -245,6 +245,7 @@ std::unique_ptr function::make_bin(ir::module &module, driver::c align.run(module); axes.run(module); layouts.run(module); + liveness.run(module); // ir::print(module, std::cout); selection.run(module, *llvm); // return binary