Commit b78f01a9 by Tianqi Chen Committed by GitHub

More on source reference (#466)

parent 396c161f
Subproject commit f3eb854595ff99f4b05a5d8034bcacea30ef045b
Subproject commit cb3c025d5b91ab994b063a85bc935fc364d8f491
......@@ -33,7 +33,6 @@ Acknowledgement
---------------
We learnt a lot from the following projects when building TVM.
- [Halide](https://github.com/halide/Halide): TVM uses [HalideIR](https://github.com/dmlc/HalideIR) as data structure for
arithematic simplification and low level lowering. HalideIR is derived from Halide.
We also learns from Halide when implementing the lowering pipeline in TVM.
arithematic simplification and low level lowering. We also learnt and adapted some part of lowering pipeline from Halide.
- [Loopy](https://github.com/inducer/loopy): use of integer set analysis and its loop transformation primitives.
- [Theano](https://github.com/Theano/Theano): the design inspiration of symbolic scan operator for recurrence.
......@@ -3,6 +3,7 @@
* \file codegen_llvm.cc
*/
#ifdef TVM_LLVM_VERSION
// Part of the code are adapted from Halide's CodeGen_LLVM
#include <tvm/runtime/device_api.h>
#include <tvm/runtime/c_runtime_api.h>
......@@ -492,6 +493,7 @@ llvm::Value* CodeGenLLVM::CreateBufferPtr(
if (btype != ptype) {
buffer = builder_->CreatePointerCast(buffer, ptype);
}
return builder_->CreateInBoundsGEP(buffer, index);
}
......
......@@ -2,6 +2,7 @@
* Copyright (c) 2017 by Contributors
* \file inject_prefetch.cc
*/
// Inject prefetch op in HalideIR
#include <tvm/ir.h>
#include <tvm/ir_mutator.h>
#include <tvm/ir_visitor.h>
......
......@@ -2,6 +2,8 @@
* Copyright (c) 2016 by Contributors
* \file storage_flatten.cc
*/
// Flattens storage from multi-dimensional array to 1D
// buffer access as in Halide pipeline.
#include <tvm/ir.h>
#include <tvm/expr.h>
#include <tvm/operation.h>
......
/*!
* Copyright (c) 2017 by Contributors
* Loop unrolling.
* Loop unrolling as in Halide pipeline.
* \file unroll_loop.cc
*/
// Unrolls the loop as in Halide pipeline.
#include <tvm/ir.h>
#include <tvm/ir_pass.h>
#include <tvm/ir_mutator.h>
......
/*!
* Copyright (c) 2017 by Contributors
* Vectorize the loop
* \file vectorize_loop.cc
*/
// Loop vectorizer as in Halide pipeline.
#include <tvm/ir.h>
#include <tvm/ir_pass.h>
#include <tvm/ir_mutator.h>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment