https://llvm.org/bugs/show_bug.cgi?id=31401

            Bug ID: 31401
           Summary: LoopVectorizer: audit use of SetCurrentDebugLocation
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P
         Component: Loop Optimizer
          Assignee: unassignedb...@nondot.org
          Reporter: paul_robin...@playstation.sony.com
                CC: llvm-bugs@lists.llvm.org
    Classification: Unclassified

IRBuilder::SetInsertPoint calls IRBuilder::SetCurrentDebugLocation.
So, if you use both APIs, and call SetCurrentDebugLocation first, 
your attempt to set the debug location explicitly has just been 
overridden.

I was able to audit most of LLVM's use of SetCurrentDebugLocation,
except for LoopVectorizer.cpp.  This module is large and complicated
and uses both APIs, but generally not in places that are obviously
related.

There is one place in InnerLoopVectorizer::vectorizeLoop() that looks
very suspicious even to me, calling the helper setDebugLocFromInst
right before Builder.SetInsertPoint; but in most cases the calls are 
not near each other and I was not able to work out whether things are
really okay.

So, I would like somebody familiar with the module to take a look
and see whether anything looks suspicious.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to