[PATCH] D67723: [CodeView] Add option to disable inline line tables.

Reid Kleckner via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Sep 18 11:19:59 PDT 2019


rnk added a comment.

+ other debug info people



================
Comment at: llvm/docs/LangRef.rst:1436
     function. This can have very system-specific consequences.
+``no-inline-line-tables``
+    When this attribute is set to true, inline line tables are not generated
----------------
This is a string attribute, so it should have quotes around it.


================
Comment at: llvm/lib/Transforms/Utils/InlineFunction.cpp:1422
+        // of the inlined code to be the call site.
+        if (Fn->hasFnAttribute("no-inline-line-tables")) {
+          BI->setDebugLoc(InlinedAtNode);
----------------
Let's check `hasFnAttribute` out of the loop so we aren't doing string hash lookups in a loop.


================
Comment at: llvm/lib/Transforms/Utils/InlineFunction.cpp:1433-1446
       if (CalleeHasDebugInfo)
         continue;
 
       // If the inlined instruction has no line number, make it look as if it
       // originates from the call location. This is important for
       // ((__always_inline__, __nodebug__)) functions which must use caller
       // location for all instructions in their function body.
----------------
Let's actually try to reuse this `!CalleeHasDebugInfo` code path when this function attribute is present. They should do the same thing.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D67723





More information about the cfe-commits mailing list