| 71 | //! ASIN: arctan2(x, sqrt(1 - x * x)) |
| 72 | template <> |
| 73 | mlir::Value lower_mode<Mode::ASIN>( |
| 74 | mlir::OpBuilder& builder, mlir::Location loc, ValueRange operands) { |
| 75 | ValueBuilderHelper helper(builder, loc); |
| 76 | auto x = operands[0]; |
| 77 | auto one_minus_x_2 = helper.sub(helper.const_f32(1.f), helper.mul(x, x)); |
| 78 | return atan2_approx(helper, x, helper.sqrt(one_minus_x_2)); |
| 79 | } |
| 80 | |
| 81 | //! ERFCINV: inverse of complementary gauss error function |
| 82 | //! https://github.com/scipy/scipy/blob/master/scipy/special/cephes/erfinv.c |
nothing calls this directly
no test coverage detected