-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for nested Computations (function calls) with appendComputation #27
Comments
Working on branch append-computation |
- No testing yet - Does nothing with return values - Only detects function calls in statements that are just a function call.
- Due to the nature of appendComputation, this required changing to build up the Computation as it is processed, with Stmts added one at a time instead of all at the end. - No testing yet - Does nothing with return values - Only detects function calls in statements that are just a function call
- Due to the nature of appendComputation, this required changing to build up the Computation as it is processed, with Stmts added one at a time instead of all at the end. - No testing yet - Does nothing with return values - Only detects function calls in statements that are just a function call
Includes removing expecting zero-padded execution schedules. Code that zero-padded executions schedules has already been removed, because with appendComputation calls it is now difficult to enforce. Additionally, IEGenLib does this for us now.
Merged first iteration of work. I've gotten to the point where effectively finishing this is blocked by better support for data spaces and return values, so I'm going to stop now and come back to it when those are done. |
Next step is to process function calls in a statement like x = (foo() + 3) * bar(4). Perhaps this can be done by modifying the method that finds accesses in a compound expression. |
- Returned functionality for extracting data accesses to processSingleStmt - Adds ComputationBuilder::processComplexExpr function, which locates both potential data accesses and function calls (which in turn can return accessed spaces) - This function relies on the new Utils::collectComponentsFromCompoundExpr function, which collects both potential data accesses and function calls from potentially complex expressions. It is used in various ways, with the values filtered down by the caller to what they're interested in.
- Returned functionality for extracting data accesses to processSingleStmt - Adds ComputationBuilder::processComplexExpr function, which locates both potential data accesses and function calls (which in turn can return accessed spaces) - This function relies on the new Utils::collectComponentsFromCompoundExpr function, which collects both potential data accesses and function calls from potentially complex expressions. It is used in various ways, with the values filtered down by the caller to what they're interested in.
- Returned functionality for extracting data accesses to processSingleStmt - Adds ComputationBuilder::processComplexExpr function, which locates both potential data accesses and function calls (which in turn can return accessed spaces) - This function relies on the new Utils::collectComponentsFromCompoundExpr function, which collects both potential data accesses and function calls from potentially complex expressions. It is used in various ways, with the values filtered down by the caller to what they're interested in.
No description provided.
The text was updated successfully, but these errors were encountered: