| 142 | FloorDivImpl(b, input_type(0), lhs, rhs, broadcast_helper)); |
| 143 | |
| 144 | xla::XlaOp XlogyImpl(xla::XlaOp x, xla::XlaOp y, |
| 145 | const BCast& broadcast_helper) { |
| 146 | std::tie(x, y) = XlaBinaryOp::Broadcast(x, y, broadcast_helper); |
| 147 | auto zero = xla::ZerosLike(x); |
| 148 | auto is_zero = xla::Eq(x, zero); |
| 149 | return xla::Select(is_zero, zero, xla::Mul(x, xla::Log(y))); |
| 150 | } |
| 151 | XLA_MAKE_BINARY(Xlogy, XlogyImpl(lhs, rhs, broadcast_helper)); |
| 152 | |
| 153 | xla::XlaOp XdivyImpl(xla::XlaOp x, xla::XlaOp y, |