[PATCH] D84113: [Debuginfo] (1/8) [DW_OP_implicit_pointer/second strategy] Support for DW_OP_LLVM_implicit_pointer

David Blaikie via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 23 19:39:44 PDT 2020


dblaikie added inline comments.


================
Comment at: llvm/lib/IR/DebugInfoMetadata.cpp:1025
+      // and it has one argument.
+      return (I == expr_op_begin()) && (getNumElements() == 2);
+    }
----------------
Probably need to have test coverage for these invalid cases

(& I'm not quite clear on the reasoning for where this can appear (why only at the beginning? I would've naively guessed maybe only at the end? (top of the stack) but haven't thought it through in any great detail, for sure - making sure it generalizes over multiple lost indirection would be great (I guess given the DWARF format, it can't generalize over parts of an object lacking indirection, but maybe it'd be nice if the IR format supported it (eg: "struct x { int y; int *z; }" if 'z' no longer has pointable storage - can we still describe what it points to, while also describing the value of 'y'?))


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D84113



More information about the llvm-commits mailing list