LLVM Bugzilla is read-only and represents the historical archive of all LLVM issues filled before November 26, 2021. Use github to submit LLVM bugs

Bug 26805 - Register coalescer introduces verifier error
Summary: Register coalescer introduces verifier error
Status: RESOLVED FIXED
Alias: None
Product: libraries
Classification: Unclassified
Component: Register Allocator (show other bugs)
Version: trunk
Hardware: PC All
: P normal
Assignee: Matthias Braun
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-03-01 18:57 PST by Matt Arsenault
Modified: 2016-03-04 22:36 PST (History)
2 users (show)

See Also:
Fixed By Commit(s):


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matt Arsenault 2016-03-01 18:57:15 PST
The XFAILed test in test/CodeGen/AMDGPU/reg-coalescer-sched-crash.ll is a
verifier error introduced by the register coalescer. I think it has something to do with rematerializing an instruction into a sub register when the super register isn't fully defined.
Comment 1 Matt Arsenault 2016-03-01 18:57:53 PST
This is a reduced testcase from an OpenCV regression
Comment 2 Quentin Colombet 2016-03-01 19:01:47 PST
Is this new?
I.e., is this a regression and if yes, what introduced it?
Comment 3 Matt Arsenault 2016-03-01 19:08:17 PST
(In reply to comment #2)
> Is this new?
> I.e., is this a regression and if yes, what introduced it?

The regression showed up in r251860, so I think this was uncovering a existing problem.
Comment 4 Matthias Braun 2016-03-01 19:12:29 PST
I think this bug always existed, it only affects targets with acticated subregister liveness. We already had a longer IRC session analyzing it (just have to grep my logs when I start working on it), so I'll look into it.
Comment 5 Quentin Colombet 2016-03-01 19:17:33 PST
(In reply to comment #4)
> I think this bug always existed, it only affects targets with acticated
> subregister liveness. We already had a longer IRC session analyzing it (just
> have to grep my logs when I start working on it), so I'll look into it.

Sounds good.
Thanks both.

For the sake of future archeology ;), would you mind summarizing the content of the IRC discussion?
Comment 6 Matthias Braun 2016-03-01 19:22:30 PST
> For the sake of future archeology ;), would you mind summarizing the content of the IRC discussion?

Sorry I can't remember the details (intricate stuff in the rematerialization logic of the register coalescer). Once there is a fix it is hopefully clear that the problem was :)
Comment 7 Quentin Colombet 2016-03-01 19:25:42 PST
(In reply to comment #6)
> > For the sake of future archeology ;), would you mind summarizing the content of the IRC discussion?
> 
> Sorry I can't remember the details (intricate stuff in the rematerialization
> logic of the register coalescer). Once there is a fix it is hopefully clear
> that the problem was :)

Fair enough :).
Comment 8 Matthias Braun 2016-03-04 22:36:37 PST
Fixed in r262768