Skip to content

Commit

Permalink
[Unity][Transform] Handle symbolic variables in LambdaLift
Browse files Browse the repository at this point in the history
Prior to this commit, symbolic variables used by a lambda function
would be duplicated between the caller and the lifted-out function.
In addition, shape inference within the lifted-out function was
performed without access to the symbolic variables, resulting in
unnecessary fallback from `R.Tensor([m, n])` to `R.Tensor(ndim=2)`.

This commit updates the `LambdaLift` transform to handle symbolic
variables.  All symbolic variables have unique definitions across the
resulting `IRModule`, and shape inference in the lifted-out function
is aware of symbolic variables that have been exposed to it.
  • Loading branch information
Lunderberg committed Jan 16, 2024
1 parent a2a1b53 commit b9209cb
Show file tree
Hide file tree
Showing 2 changed files with 362 additions and 225 deletions.
Loading

0 comments on commit b9209cb

Please sign in to comment.