(node)
| 7388 | guard.dispose(); |
| 7389 | } |
| 7390 | removeExtraLoopOutputs(node) { |
| 7391 | const initial_outputs = node.outputs().length; |
| 7392 | const [loop_body] = node.blocks(); |
| 7393 | const loop_input_offset = 2; |
| 7394 | const loop_body_offset = 1; |
| 7395 | for (let i_1 = node.outputs().length; i_1 > 0; i_1--) { |
| 7396 | const i = i_1 - 1; |
| 7397 | if (loop_body.inputs()[loop_body_offset + i] === loop_body.outputs()[loop_body_offset + i]) { |
| 7398 | const node_input = node.inputs()[loop_input_offset + i]; |
| 7399 | node.outputs().at(i).replaceAllUsesWith(node_input); |
| 7400 | loop_body.inputs()[loop_body_offset + i].replaceAllUsesWith(node_input); |
| 7401 | node.eraseOutput(i); |
| 7402 | node.removeInput(loop_input_offset + i); |
| 7403 | loop_body.eraseInput(loop_body_offset + i); |
| 7404 | loop_body.eraseOutput(loop_body_offset + i); |
| 7405 | } |
| 7406 | } |
| 7407 | this._made_change = this._made_change || (initial_outputs !== node.outputs().length); |
| 7408 | } |
| 7409 | noMutableValues(values) { |
| 7410 | return values.every((v) => !torch._C.AliasDb.isMutableType(v)); |
| 7411 | } |
no test coverage detected