[PATCH] D136208: [llvm-reduce] Attempt to strip debug info

Arthur Eubanks via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 18 16:06:53 PDT 2022


aeubanks added a comment.

In D136208#3866741 <https://reviews.llvm.org/D136208#3866741>, @arsenm wrote:

> In D136208#3866733 <https://reviews.llvm.org/D136208#3866733>, @aeubanks wrote:
>
>> In D136208#3866723 <https://reviews.llvm.org/D136208#3866723>, @arsenm wrote:
>>
>>> Isn't the first step in the existing debug info reducer to try deleting all of it?
>>
>> the existing di-metadata pass is very specific, it only tries to remove array entries debug info metadata arrays. it doesn't do anything with `!dbg` attached to instructions, the corresponding DI metadata nodes, the global named `!llvm.dbg.*` named metadata, and dbg intrinsics
>
> But the metadata reduction looks at individual instructions. Doesn't di-metadata + metadata cover this?

I'm not sure that di-metadata can handle all types of debug info structures (I think I've seen cases where not all debug info is removed even though the `strip`ed IR still is interesting, although I'm having a hard time remembering a specific example). But even if it did, we get lots of invalid reductions (due to various verifier constraints) that would be avoided if we just stripped everything to begin with, speeding things up a lot.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136208/new/

https://reviews.llvm.org/D136208



More information about the llvm-commits mailing list