target.cpp 810 Bytes
Newer Older
Shucai Xiao's avatar
Shucai Xiao committed
1

Paul's avatar
Paul committed
2
3
#include <migraphx/cpu/target.hpp>
#include <migraphx/cpu/lowering.hpp>
Paul's avatar
Paul committed
4
#include <migraphx/pass.hpp>
Paul's avatar
Paul committed
5
#include <migraphx/auto_contiguous.hpp>
Shucai Xiao's avatar
Shucai Xiao committed
6
#include <migraphx/rewrite_rnn.hpp>
7
#include <migraphx/dead_code_elimination.hpp>
8
#include <migraphx/generate.hpp>
Shucai Xiao's avatar
Shucai Xiao committed
9

Paul's avatar
Paul committed
10
namespace migraphx {
Paul's avatar
Paul committed
11
inline namespace MIGRAPHX_INLINE_NS {
Shucai Xiao's avatar
Shucai Xiao committed
12
13
14
15
namespace cpu {

std::string target::name() const { return "cpu"; }

Paul's avatar
Paul committed
16
std::vector<pass> target::get_passes(migraphx::context&) const
Shucai Xiao's avatar
Shucai Xiao committed
17
{
Shucai Xiao's avatar
Shucai Xiao committed
18
    return {rewrite_rnn{},
Shucai Xiao's avatar
Shucai Xiao committed
19
20
            dead_code_elimination{},
            auto_contiguous{},
Shucai Xiao's avatar
Shucai Xiao committed
21
22
23
            dead_code_elimination{},
            lowering{},
            dead_code_elimination{}};
Shucai Xiao's avatar
Shucai Xiao committed
24
25
}

26
27
28
29
30
argument target::allocate(const shape& s) const
{
    return fill_argument(s, 0);
}

Shucai Xiao's avatar
Shucai Xiao committed
31
} // namespace cpu
Paul's avatar
Paul committed
32
} // namespace MIGRAPHX_INLINE_NS
Paul's avatar
Paul committed
33
} // namespace migraphx