[caffe2] Fix inplace ops in onnx::SsaRewrite (#46134)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/46134
Make sure in-place ops stay in-place after SsaRewrite. This seems to break the premise of SSA, but it's necessary to ensure correctness. Note here we only preserve the inplace ops that enforce inplace. Ops like `Relu` don't enforce inplace, they allow inplace.
(Note: this ignores all push blocking failures!)
Reviewed By: yinghai
Differential Revision: D24234957
fbshipit-source-id: 274bd3ad6227fce6a98e615aad7e57cd2696aec3