[PATCH] D39310: [CGBlocks] Improve line info in backtraces containing *_helper_block

Adrian Prantl via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 26 11:15:09 PDT 2017

aprantl added inline comments.

Comment at: test/CodeGenObjC/debug-info-blocks.m:20
 // CHECK: call {{.*}}, !dbg ![[DBG_LINE:[0-9]+]]
 // CHECK-NOT: ret
 // CHECK: load {{.*}}, !dbg ![[COPY_LINE:[0-9]+]]
aprantl wrote:
> vsk wrote:
> > aprantl wrote:
> > > What's the location used for the ret? I think it should also be` ![[DBG_LINE]]` since we are not actually executing the block.
> > We're using COPY_LINE, which is the same location used for the load instruction below.
> > 
> > What's the semantic difference between DBG_LINE (line 0) and COPY_LINE (line 68) anyway? Why do we have two different locations for the arguments to this function?
> The debugger will skip over line 0 locations when single-stepping or when setting breakpoints. I can't tell without reading the code why we decide to put a line 0 on the call.
The important thing is that the testcase should check that the ret has either COPY_LINE or line 0 on it and not line 71.


More information about the cfe-commits mailing list