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

Couldn't join subrange unreachable hit #32499

Closed
arsenm opened this issue May 24, 2017 · 8 comments
Closed

Couldn't join subrange unreachable hit #32499

arsenm opened this issue May 24, 2017 · 8 comments
Labels
bugzilla Issues migrated from bugzilla llvm:regalloc worksforme Resolved as "works for me"

Comments

@arsenm
Copy link
Contributor

arsenm commented May 24, 2017

Bugzilla Link 33152
Resolution WORKSFORME
Resolved on Nov 06, 2018 08:46
Version trunk
OS All
Attachments Testcase, Another example
CC @dstutt,@MatzeB

Extended Description

@dstutt
Copy link
Collaborator

dstutt commented Jun 20, 2017

I've encountered this too for AMDGPU. See bug 33524

I've got a potential fix for this (although I'm not sure the approach I've taken is necessarily the right one) which I've uploaded for review (see bug 33524 for details).
I tried the fix on the issues attached to this bug report but it didn't fix them - hence the reason for creating a new PR.

@dstutt
Copy link
Collaborator

dstutt commented Jun 22, 2017

The latest patch for the fix for 33524 (https://reviews.llvm.org/D34391) also appears to fix the second example here (Another example). Attachment 18663

@dstutt
Copy link
Collaborator

dstutt commented Jul 6, 2017

Another example of this type of bug
Found another example. I've got a potential fix for this one.

@dstutt
Copy link
Collaborator

dstutt commented Jul 6, 2017

My fix for the attachment I've just uploaded appears to also fix the first example uploaded to this bug.

@dstutt
Copy link
Collaborator

dstutt commented Jul 6, 2017

Issue appears to be during the subrange join phase.
It comes across this type of situation:

%other = COPY %ext
%this = COPY %ext

A check already exists in JoinVals::analyzeValue but didn't work when in
SubRangeJoin mode causing an unreachable to be triggered due to it not
expecting to see a FullCopy with these characteristics (I suspect some cases will
probably work).

@dstutt
Copy link
Collaborator

dstutt commented Jul 6, 2017

@arsenm
Copy link
Contributor Author

arsenm commented Nov 2, 2018

The test cases here don’t seem useful anymore. They compile for me once manually upgraded to trunk compatible IR, although it’s likely the original MIR might still fail

@dstutt
Copy link
Collaborator

dstutt commented Nov 6, 2018

Matt - do you want to close this one then?

I'd expect the examples to pass given that there have been several fixes submitted around this area. I think the comments indicate that the examples here are expected to pass with latest trunk - given that the examples represented here were replicated in tests used to debug and implement fixes.

It might be worth either closing this bug and starting a new one for new cases of subrange failures or updating this one with a fresh example if you've discovered a different case. Either way, I think the examples here might be a little bit stale.

@llvmbot llvmbot transferred this issue from llvm/llvm-bugzilla-archive Dec 10, 2021
@Quuxplusone Quuxplusone added the worksforme Resolved as "works for me" label Jan 20, 2022
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugzilla Issues migrated from bugzilla llvm:regalloc worksforme Resolved as "works for me"
Projects
None yet
Development

No branches or pull requests

3 participants