[PATCH] D33705: [CGVTables] Finalize SP before attempting to clone it

Keno Fischer via cfe-commits cfe-commits at lists.llvm.org
Tue May 30 18:01:44 PDT 2017


For some reason your comments aren't showing up on Phabricator, so replying
via email - hope everybody sees it.

If SPs are now all finalized early - I'm assuming there's some other code
> that finalizes SPs that's no longer needed?
>

Not all of them, just the one before cloning. I wanted to make the minimal
change possible here, since this already seems like a bit of a hack to work
around the fact that we can't properly forward variadic function calls at
the IR level.


> Also - this seems like a layering/separation issue - does other code call
> into the DI as casually/explicitly as this code being added to CGVTables?
> (Or should the callback go through some more generic entry point in
> CGDebugInfo to delegate/handle that?) & is there nothing in CGDebugInfo
> that is already called back in a timely fashion to handle this? I'm
> guessing what's needed is a "IR has finished being generated for this
> function, opt/codegen is about to start"? That seems like a good generic
> callback & probably shouldn't be coming from something called CGVTables?
> (presuming there's a more general place to put that)
>

I suppose there's CGDebugInfo::EmitFunctionEnd, so if we did want to
finalize every SP as soon as we're done with it, we could put an explicit
call to that extent there. Frankly though I don't really know the clang
code too well, I just want to unbreak LLVM ;).
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20170530/14f3ee91/attachment.html>


More information about the cfe-commits mailing list