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

Do not inline let-bound recursive calls #2844

Merged
merged 1 commit into from
Nov 26, 2024
Merged

Do not inline let-bound recursive calls #2844

merged 1 commit into from
Nov 26, 2024

Conversation

christiaanb
Copy link
Member

@christiaanb christiaanb commented Nov 18, 2024

This prevents recToLetRec from turning a globally recursive function into a local let-bound recursive function where the latter can be synthesized to hardware while the former cannot.

Fixes #2839

Still TODO:

  • Write a changelog entry (see changelog/README.md)
  • Check copyright notices are up to date in edited files

Copy link
Member

@DigitalBrains1 DigitalBrains1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In so far as I can tell, LGTM. But for consistency, I think the Changelog entry should be in past tense (we did decide to keep doing that, right? Or am I misremembering :-).

changelog/2024-11-18T13_43_58+01_00_fix2839 Outdated Show resolved Hide resolved
@DigitalBrains1
Copy link
Member

Should this also be backported?

This prevents `recToLetRec` from turning a globally recursive
function into a local let-bound recursive function which can
be synthesized to hardware.

Fixes #2839
@christiaanb christiaanb merged commit 25a7bc1 into master Nov 26, 2024
13 checks passed
@christiaanb christiaanb deleted the fix_2839 branch November 26, 2024 12:13
christiaanb added a commit that referenced this pull request Nov 27, 2024
Do not inline let-bound recursive calls (copy #2844)
christiaanb added a commit that referenced this pull request Nov 27, 2024
Do not inline let-bound recursive calls
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Callgraph after normalization contains recursive components
2 participants