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

-pliveness can be too late #845

Open
eponier opened this issue Jun 21, 2024 · 4 comments
Open

-pliveness can be too late #845

eponier opened this issue Jun 21, 2024 · 4 comments

Comments

@eponier
Copy link
Contributor

eponier commented Jun 21, 2024

It can happen that reg alloc fails before the printing of liveness, making it hard to debug. For instance, it happens for the code here.

EDIT: I changed "crashes" with "fails", it corresponds more to what happens

@vbgl
Copy link
Member

vbgl commented Jun 21, 2024

Can you please elaborate? What is the error in that case?

@eponier
Copy link
Contributor Author

eponier commented Jun 21, 2024

compilation error:
register allocation: conflicting variables “pstate.12972” and “a.9970” must be merged due to:
...

@eponier
Copy link
Contributor Author

eponier commented Jun 21, 2024

Before the call to greedy_allocation, there are multiple collect_conflict functions (opn, intra-procedural, return address, inter-procedural, syscalls). If it fails in one of these functions, the liveness info is not printed.

@vbgl
Copy link
Member

vbgl commented Jun 24, 2024

In the particular example, do you really think that liveness information can help fixing the issue?

However, I do agree that it would be nice to be able to access the liveness information even if there are other issues.

It might be worth collecting all errors that might be trigger by those “collect conflict” functions and print them all together after the printing of the liveness information.

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