Tensor Comprehensions
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
builtins.h
Go to the documentation of this file.
1
16
#pragma once
17
18
#include <unordered_map>
19
20
namespace
lang {
21
namespace
{
22
23
std::unordered_map<std::string, int> builtin_functions({
24
// from CUDA float documentation
25
// WARNING: if you add a builtin function here that does not
26
// propagate the type of its inputs using match_types in Sema.h
27
// you need to modify Sema.h to be correct
28
// see [BUILTIN TYPE MATCHING]
29
30
// { "function_name", <num inputs> }
31
{
"acos"
, 1},
32
{
"acosh"
, 1},
33
{
"asin"
, 1},
34
{
"asinh"
, 1},
35
{
"atan2"
, 2},
36
{
"atan"
, 1},
37
{
"atanh"
, 1},
38
{
"cbrt"
, 1},
39
{
"ceil"
, 1},
40
{
"copysign"
, 2},
41
{
"cos"
, 1},
42
{
"cosh"
, 1},
43
{
"cospi"
, 1},
44
{
"cyl_bessel_i0"
, 1},
45
{
"cyl_bessel_i1"
, 1},
46
{
"erfc"
, 1},
47
{
"erfcinv"
, 1},
48
{
"erfcx"
, 1},
49
{
"erf"
, 1},
50
{
"erfinv"
, 1},
51
{
"exp10"
, 1},
52
{
"exp2"
, 1},
53
{
"exp"
, 1},
54
{
"expm1"
, 1},
55
{
"fabs"
, 1},
56
{
"fdim"
, 2},
57
{
"fdivide"
, 2},
58
{
"floor"
, 1},
59
{
"fma"
, 3},
60
{
"fmax"
, 2},
61
{
"fmin"
, 2},
62
{
"fmod"
, 2},
63
{
"hypot"
, 2},
64
{
"j0"
, 1},
65
{
"j1"
, 1},
66
{
"lgamma"
, 1},
67
{
"log10"
, 1},
68
{
"log1p"
, 1},
69
{
"log2"
, 1},
70
{
"logb"
, 1},
71
{
"log"
, 1},
72
{
"nextafter"
, 2},
73
{
"norm3d"
, 3},
74
{
"norm4d"
, 4},
75
{
"normcdf"
, 1},
76
{
"normcdfinv"
, 1},
77
{
"pow"
, 2},
78
{
"rcbrt"
, 1},
79
{
"remainder"
, 2},
80
{
"rhypot"
, 2},
81
{
"rnorm3d"
, 3},
82
{
"rnorm4d"
, 4},
83
{
"round"
, 1},
84
{
"rsqrt"
, 1},
85
{
"sin"
, 1},
86
{
"sinh"
, 1},
87
{
"sinpi"
, 1},
88
{
"sqrt"
, 1},
89
{
"tan"
, 1},
90
{
"tanh"
, 1},
91
{
"tgamma"
, 1},
92
{
"trunc"
, 1},
93
{
"y0"
, 1},
94
{
"y1"
, 1},
95
});
96
97
}
// namespace
98
}
// namespace lang
include
tc
lang
builtins.h
Generated by
1.8.5