Complex operations exist for existing C functions, and are represented in HalideIR as a "Call."
For example, for Call* op, op->name is "sin_f32" when using sin(x).
Other complex ops available are (existing in IROperator.h):
sin, asin, sinh, asinh
cos, acos, cosh, acosh
tan, atan, atan2, tanh, atanh,
sqrt, hypot,
exp, pow, log, erf
fast_inverse, fast_inverse_sqrt
floor, ceil, round, trunc
lerp, popcount, count_leading_zeros, count_trailing_zeros
Complex operations exist for existing C functions, and are represented in HalideIR as a "Call." For example, for Call* op, op->name is "sin_f32" when using sin(x).
Other complex ops available are (existing in IROperator.h): sin, asin, sinh, asinh cos, acos, cosh, acosh tan, atan, atan2, tanh, atanh, sqrt, hypot, exp, pow, log, erf fast_inverse, fast_inverse_sqrt floor, ceil, round, trunc lerp, popcount, count_leading_zeros, count_trailing_zeros