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

Report unfused functions #1

Open
harendra-kumar opened this issue Jan 11, 2020 · 3 comments
Open

Report unfused functions #1

harendra-kumar opened this issue Jan 11, 2020 · 3 comments
Assignees

Comments

@harendra-kumar
Copy link
Member

We should have an option to report the functions/constructors that did not get fused. This will be a big aid to programmers to know where the performance problems might be. Once we have this option, we can also replace the inspection testing in streamly with this plugin.

@harendra-kumar
Copy link
Member Author

We have already added verbose modes to report what did not fuse. We just need to control those from the plugin command line options.

@harendra-kumar
Copy link
Member Author

Other than command line options we also need a FUSED pragma to be used by programmers on top level functions that must not have any unfused constructors i.e. the the function has a closed loop which should be completely fused.

By looking at the FUSED pragma the plugin can tell if the function is supposed to be fused but has not fused.

@harendra-kumar
Copy link
Member Author

Instead of using FUSED pragma I think we should use an UNFUSED pragma. So that the default is FUSED, to suppress the unfused warnings the programmer has to put the UNFUSED pragma.

This should be simple to implement as we are already reporting warning for all unfused cases, we just need to suppress it for UNFUSED annotated functions.

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

No branches or pull requests

2 participants