[llvm-dev] Jump Threading duplicates dbg.declare intrinsics for fragments, bug?

Adrian Prantl via llvm-dev llvm-dev at lists.llvm.org
Tue Sep 19 08:46:00 PDT 2017


> On Sep 19, 2017, at 8:44 AM, Reid Kleckner <rnk at google.com> wrote:
> 
> On Tue, Sep 19, 2017 at 8:40 AM, Adrian Prantl via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
> > Later loop unroll comes and unrolls the loop and then suddenly we have two absolutely identical dbg.declares and the assert in addFragmentOffset() blows. Who's at fault?
> 
> Without having read the code yet, my intuition says that the unroller should not be duplicating dbg.declares, only dbg.values.
> 
> I think it's a bug in both places: the backend should tolerate identical, duplicate dbg.declares,

I guess that's fair, yes.

-- adrian

> and the loop unroller probably shouldn't duplicate dbg.declare, since there is no point.
> 
> IR is supposed to be duplicatable unless it is marked noduplicate. That was ultimately the fix we applied for PR33157, right?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170919/30276e95/attachment.html>


More information about the llvm-dev mailing list