intrin_rule_metal.cc 1.26 KB
Newer Older
1 2 3 4 5
/*!
 *  Copyright (c) 2017 by Contributors
 * \file intrin_rule_metal.cc
 * \brief Metal intrinsic rules.
 */
6
#include "intrin_rule.h"
7 8 9 10 11

namespace tvm {
namespace codegen {
namespace intrin {

12 13 14 15 16 17
TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.floor")
.set_body(DispatchExtern<Direct>);

TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.ceil")
.set_body(DispatchExtern<Direct>);

18 19 20
TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.trunc")
.set_body(DispatchExtern<Direct>);

21 22 23
TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.fabs")
.set_body(DispatchExtern<Direct>);

24 25 26
TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.round")
.set_body(DispatchExtern<Direct>);

27
TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.exp")
28
.set_body(DispatchExtern<Direct>);
29 30

TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.log")
31
.set_body(DispatchExtern<Direct>);
32 33

TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.tanh")
34
.set_body(DispatchExtern<Direct>);
35 36

TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.sqrt")
37
.set_body(DispatchExtern<Direct>);
38 39

TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.pow")
40 41 42 43
.set_body(DispatchExtern<Direct>);

TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.popcount")
.set_body(DispatchExtern<Direct>);
44

45 46 47
TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.fmod")
.set_body(DispatchExtern<Direct>);

48 49 50
}  // namespace intrin
}  // namespace codegen
}  // namespace tvm