[PATCH] D73526: [SafeStack][DebugInfo] Insert DW_OP_deref in correct location

Jeremy Morse via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 5 10:24:43 PST 2020


jmorse added a comment.

Hmn -- it looks like a / the root cause of this is that the O0 pipeline has a different mechanism for handling DBG_VALUEs of spills [0], hence changing isIndirect for both compilation modes is causing trouble. The code path in [0] probably should have been updated in D68945 <https://reviews.llvm.org/D68945>, unfortunately I'm not familiar with O0, at all, and wasn't really aware of it. Fascinatingly it runs LiveDebugValues but not LiveDebugVariables...

Given the risk of something being broken in O0, I really want to get D68945 <https://reviews.llvm.org/D68945> reverted in llvm-10; without objection I'll do that on master tomorrow then backport to -10. This will make safestack work again; and the regression test will keep it working in the future, once this is all ironed out.

(Apologies for the additional downstream merge pain, this should just be reverting to prior behaviour though).

[0] https://github.com/llvm/llvm-project/blob/9986b88e64f30f5d958eef113bae4c8a098eea93/llvm/lib/CodeGen/MachineInstr.cpp#L2073


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D73526





More information about the llvm-commits mailing list