torch-mlir/include/npcomp/Dialect/Torch/IR
Sean Silva 158c5c484d Implement GlobalizeObjectGraph transformation.
This required restructuring of how we model TorchScript on import. The
main difference is that now we split out a `torch.class_type` that holds
methods and declarations of the types of each slot. This is more
consistent with TorchScript (our previous representation was
"denormalized").

Recommended reading order:
1. check out the description of `torch.class_type` in `TorchOps.td` and
   look at `test/Dialect/Torch/ops.mlir` and
   `frontends/pytorch/test/module_import/` to familiarize with the new
   representation.
   - Just look at the new IR. The diff between the old names and new
     names is confusing.
2. check out `test/Dialect/Torch/globalize-object-graph*.mlir`
   and read along with the pass description in
   `include/npcomp/Dialect/Torch/Transforms/Passes.td`
3. Read the code in `GlobalizeObjectGraph.cpp` and miscellaneous changes
   in `ivalue_importer.cpp`, `TorchOps.cpp`, etc.
2021-02-18 18:18:47 -08:00
..
CMakeLists.txt Add initial TorchScript module importer 2021-01-28 11:55:17 -08:00
OpInterfaces.h Add a number of kernels and new patterns. 2020-11-04 14:36:59 -08:00
OpInterfaces.td Expose signature metadata to ops and implement ATenRecognizeKernelsPass pass. 2020-10-26 20:31:45 -07:00
TorchBase.td Add initial TorchScript module importer 2021-01-28 11:55:17 -08:00
TorchDialect.h Expose signature metadata to ops and implement ATenRecognizeKernelsPass pass. 2020-10-26 20:31:45 -07:00
TorchOps.h Add initial TorchScript module importer 2021-01-28 11:55:17 -08:00
TorchOps.td Implement GlobalizeObjectGraph transformation. 2021-02-18 18:18:47 -08:00
TorchTypes.h Add initial TorchScript module importer 2021-01-28 11:55:17 -08:00
TorchTypes.td Implement GlobalizeObjectGraph transformation. 2021-02-18 18:18:47 -08:00