| 202 | REGISTER_GRADIENT_OP("GatherNd", GatherNdGrad); |
| 203 | |
| 204 | Status CheckNumericsGrad(const Scope& scope, const Operation& op, |
| 205 | const std::vector<Output>& grad_inputs, |
| 206 | std::vector<Output>* grad_outputs) { |
| 207 | string message; |
| 208 | TF_RETURN_IF_ERROR(GetNodeAttr(op.node()->attrs(), "message", &message)); |
| 209 | string err_msg = strings::StrCat( |
| 210 | "Not a number (NaN) or infinity (Inf) values detected in gradient. ", |
| 211 | message); |
| 212 | grad_outputs->push_back(CheckNumerics(scope, grad_inputs[0], err_msg)); |
| 213 | return scope.status(); |
| 214 | } |
| 215 | REGISTER_GRADIENT_OP("CheckNumerics", CheckNumericsGrad); |
| 216 | |
| 217 | Status ReshapeGrad(const Scope& scope, const Operation& op, |
nothing calls this directly
no test coverage detected