Skip to content
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 true Calls & Call inlining #12

Closed
pjattke opened this issue Apr 28, 2020 · 1 comment
Closed

Add support for true Calls & Call inlining #12

pjattke opened this issue Apr 28, 2020 · 1 comment
Labels
enhancement New feature or request

Comments

@pjattke
Copy link
Contributor

pjattke commented Apr 28, 2020

Adding support for proper calls

Currently, the AST Call node is only used for "fake" calls like rotate. However, in general it would be nice to support real functions and calls.

Add inling

In v1.0, we supported function inlining, up to a certain threshold. This feature should be ported over.

Adding Tests:

In v1.0, Commit 97c1679 added a threshold to the inlining of Call nodes, i.e., functions are only inlined if their return statement has a depth smaller than N nodes.

  • There exist no tests yet that check if that threshold really works.

  • Also, there must be an additional check added that makes sure that the called function is fully inlined, that is, there are not other statements in the program except a Return statement. Because otherwise replacing only the function call by the return expression in the called function would lead to an invalid result.

@pjattke pjattke added enhancement New feature or request class CTES labels Apr 28, 2020
@AlexanderViand AlexanderViand changed the title Test for inlining of Call statements Add support for Call inlining Nov 10, 2020
@AlexanderViand AlexanderViand changed the title Add support for Call inlining Add support for true Calls & Call inlining Nov 10, 2020
@AlexanderViand-Intel
Copy link
Collaborator

Closing this issue as it concerns the legacy version of HECO (pre-MLIR)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants