CINN
CINN copied to clipboard
Organize op lower
This pr comb the code of op lowering. Organize the generalized Lower process into four stages: 1.Call Compute and perform narrow Lower (i.e. translate graph to CINN IR). 2. Do Op level schedule. 3.Do group level schedule. 4.Post process, including processing of LoweredFunc arguments and temporary variables, application of low level pass, etc
Then, all types of group lower processes call these processes, abstracting only a small amount of different logic and using different callback functions for processing, to achieve the maximum uniformity of the generalized Lower process. Specifically, due to significant differences in the Lower logic of CustomCall, it needs to be handled separately by LowerCustomCall().
Thanks for your contribution!