torch-mlir/include/npcomp
Sean Silva 30356c41c8 Add torch-adjust-calling-conventions pass.
This pass incorporates torch.type_bound info and also removes NoneType
returns (eventually it will rewrite tuple types too, but can't yet
because !basicpy.TupleType doesn't track element types).

Recommend looking at adjust-calling-conventions.mlir first to see what
it is doing, and holding your nose for the implementation of the pass.
I decided to implement this with the conversion framework, because it
gives us *some* goodies for type conversion -- mainly avoiding large
amounts of tricky RAUW dances. Unfortunately, the conversion framework
isn't a perfect fit for a couple reasons:
- the incorporation of torch.type_bound is a context-sensitive rewrite
  (requires looking at the arg attr, not just the type).
- NoneType conversion is 1->0, which requires some special handling
- (not implemented yet) 1->N tuple type conversions require special
  handling.
It's a little bit scary, but on balance doing it the other way would
have its own downsides.
2021-04-05 17:56:35 -07:00
..
Backend/RefJIT Sever C++ level depend on IREE and rebase on exe and python interface. 2020-11-16 21:32:56 -08:00
Conversion Bump llvm-project to 0524a09cc7e1a0797982feacf505825231efbee7 2021-03-23 14:29:05 -07:00
Dialect Add torch-adjust-calling-conventions pass. 2021-04-05 17:56:35 -07:00
Python NFC: Delete npcomp python API and switch to upstream. 2021-01-08 10:46:24 -08:00
RefBackend [refbackrt] Scalar arg support 2021-03-23 13:16:44 -07:00
Typing Bump llvm-project to 444822d77a7fea28aa49edf24533c987efa1b2ee 2020-12-11 14:43:38 -08:00
CMakeLists.txt [RefBackend] Rename "E2E" to RefBackend. 2020-10-07 10:29:48 -07:00
InitAll.h Bump submodule versions. 2020-09-08 13:26:42 -07:00