[all-commits] [llvm/llvm-project] f5ed22: [DebugInfo] Limit the size of DIExpressions that w...

Stephen Tozer via All-commits all-commits at lists.llvm.org
Fri Oct 15 09:36:01 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f5ed223b0fd0d45ff18013e38756546210e03a34
      https://github.com/llvm/llvm-project/commit/f5ed223b0fd0d45ff18013e38756546210e03a34
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2021-10-15 (Fri, 15 Oct 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/Local.cpp
    A llvm/test/DebugInfo/salvage-limit-expr-size.ll

  Log Message:
  -----------
  [DebugInfo] Limit the size of DIExpressions that we will salvage up to

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

This patch places an arbitrary limit on the size of DIExpressions that
we will produce via salvaging, for performance reasons. This helps to
fix a performance issue observed in the bug above, in which debug values
would be salvaged hundreds of times, producing expressions with over
1000 elements and causing the compiler to hang. Limiting the size of
debug values that we will produce to 128 largely fixes this issue.

Reviewed By: dblaikie, jmorse

Differential Revision: https://reviews.llvm.org/D110332




More information about the All-commits mailing list