[all-commits] [llvm/llvm-project] e3e1da: Follow up to a3936a6c19c, correctly select LiveDeb...

Jeremy Morse via All-commits all-commits at lists.llvm.org
Thu Oct 14 03:35:46 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e3e1da20d4a97085c805f7d115bd8168f49b1348
      https://github.com/llvm/llvm-project/commit/e3e1da20d4a97085c805f7d115bd8168f49b1348
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2021-10-14 (Thu, 14 Oct 2021)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp

  Log Message:
  -----------
  Follow up to a3936a6c19c, correctly select LiveDebugValues implementation

Some functions get opted out of instruction referencing if they're being
compiled with no optimisations, however the LiveDebugValues pass picks one
implementation and then sticks with it through the rest of compilation.
This leads to a segfault if we encounter a function that doesn't use
instr-ref (because it's optnone, for example), but we've already decided
to use InstrRefBasedLDV which expects to be passed a DomTree.

Solution: keep both implementations around in the pass, and pick whichever
one is appropriate to the current function.




More information about the All-commits mailing list