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

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 21 22 23
TVM_REGISTER_GLOBAL("tvm.intrin.rule.metal.trunc")
.set_body(DispatchExtern<Direct>);

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

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

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

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

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

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

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

}  // namespace intrin
}  // namespace codegen
}  // namespace tvm