Han-Chung Wang
Han-Chung Wang
> @hanhanW I've written the DecomposeAggregatedOps pass and will write tests in a moment but perhaps it should be in another PR? The pass belongs to a separate PR, because...
> > Why do we care DiscardableAttrs after decomposition? It seems like you are relying on this to do further transformation, which seems bad? What information do you need to...
I found few issues when I added few more tests. I'll open it after I fix it.
I'm brainstorming with claude and then I realized that DFX is not needed in this case. We only need simple traversal. **Collapsed into issue description above**
Many thanks to @benvanik 's [Rewriting CombineInitializersPass work](https://github.com/iree-org/iree/commit/16e6a39809f162538003513a6628cfe66ac7fd10). It makes many things clearer to me.
> What does Mutable global in path mean here? It refers to the source global. IMO, we should mark functions as immutable or mutable in the analysis. We bail out...
I spot an issue in your dump. The issue that I spot in the dump is that the output binding is ReadOnly. This is because your input program write the...
If the issue comes from `tests/e2e/matmul/`, we should probably just fix the generated input programs to the tensor.empty form.
The other solution might be running something like RemoveArgOutsDependency pattern at global level, which is similar to RemoveCstOutsDependency pattern in the ConvertToDestinationPassingStylePass. https://github.com/iree-org/iree/blob/c7086cf78ce0a719ac1f5a70b9ee837e7706594f/compiler/src/iree/compiler/Codegen/Common/ConvertToDestinationPassingStylePass.cpp#L492-L527
ah, I see. I did not notice that it lists all the layouts..