dwblaikie wrote:

> G'day -- we've got some tests for -O0 that, with this patch applied, generate 
> different code with-and-without the `-g` flag, if 
> `-fdebug-info-for-profiling` is enabled. Example godbolt: 
> https://godbolt.org/z/qooo5Eah1 .
> 
> It seems the intention of this patch is generating additional loads and 
> stores with debug-info enabled, which is usually highly undesirable. 

I hope that isn't the intent, I thought the intent was just to add more debug 
info for loads and stores to carry more intermediate type information.

Sorry I missed that this patch does change clangs generated ir. Seriously 
overlooked on my part.

>  * Instead of creating an alloca,  store+load, and dbg.declare, connect a 
> dbg.value to the relevant pointer Value. 
> 
> The 2nd point is more work, but it means you're only adding more debug-info, 
> and nothing else. A dbg.value connected to the pointer Value is the 
> inevitable consequence of the alloca+store+load idiom after mem2reg/SROA 
> anyway.

Yeah, pretty sure (2) would be the preferred direction.


https://github.com/llvm/llvm-project/pull/94100
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to