[Redo][ATen] Remove AT_ASSERTM from Blob::free_() (#34168)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/34168
Redo D19153199. It was reverted because it broke CI, due to the change of `AT_ASSERTM` to `TORCH_INTERNAL_ASSERT_DEBUG_ONLY`. Two problems:
1) bug in `TORCH_INTERNAL_ASSERT_DEBUG_ONLY` about MSVC. I'm sending another diff to fix this bug.
2) BlobTest was expecting `Blob::template Get<T>()` to throw when there is a type mismatch.
For now I'll leave `AT_ASSERTM` as it is.
Test Plan:
```
buck test mode/dev //caffe2/caffe2:caffe2_test_cpu -- 'BlobTest' --run-disabled
buck test mode/opt //caffe2/caffe2:caffe2_test_cpu -- 'BlobTest' --run-disabled
```
Reviewed By: yinghai
Differential Revision: D20235225
fbshipit-source-id: 594dad97c03c419afaa8f9023408bc5a119b3cfa