Hi Davide,

I reread the review, and I see I was confused by two things:
(1) the name of the test is static_scope.s even though what it's testing is the 
scope of a var with a const_value, nothing to do with `static`;
(2) there's this comment in the review: https://reviews.llvm.org/D77698#1973122 
"what's the DWARF'y way to find out whether a variable is static?" suggesting 
you did care about static-scope variables.

I suggest renaming the test to better reflect what it's testing (which has 
nothing to do with the scope of static vars).

Re your question, DWARF doesn't explicitly identify variables as static.  
Variables have scopes, which might be local or might be file-level or might be 
global.  Globals are distinguished from file-level locals with the external 
flag.  Locals and file-level vars simply are in the appropriate scope.  A 
static local should look exactly like a non-static local, except that its 
location expression(s) would not be frame-based.  Static locals are not 
exciting, from a DWARF viewpoint.  (LLVM historically has had trouble putting 
them in the correct scope, but that is a compiler problem not a DWARF problem.)

I hope this resolves the questions/confusion.
Thanks,
--paulr

From: Davidino Italiano <ditali...@apple.com>
Sent: Thursday, April 16, 2020 5:26 PM
To: Robinson, Paul <paul.robin...@sony.com>
Cc: lldb-commits@lists.llvm.org
Subject: Re: [Lldb-commits] [lldb] 1fae85a - [DWARF] Add instructions to 
regenerate this test, if needed.




On Apr 16, 2020, at 2:01 PM, Robinson, Paul 
<paul.robin...@sony.com<mailto:paul.robin...@sony.com>> wrote:




-----Original Message-----
From: lldb-commits 
<lldb-commits-boun...@lists.llvm.org<mailto:lldb-commits-boun...@lists.llvm.org>>
 On Behalf Of
Davide Italiano via lldb-commits
Sent: Thursday, April 16, 2020 4:32 PM
To: lldb-commits@lists.llvm.org<mailto:lldb-commits@lists.llvm.org>
Subject: [Lldb-commits] [lldb] 1fae85a - [DWARF] Add instructions to
regenerate this test, if needed.


Author: Davide Italiano
Date: 2020-04-16T13:31:32-07:00
New Revision: 1fae85a8534ec51ca893899314bd244b3e9684c7

URL: 
https://github.com/llvm/llvm-<https://urldefense.com/v3/__https:/github.com/llvm/llvm-__;!!JmoZiZGBv3RvKRSx!s_ymEsqOzBkqe8_cPIENEmr3UPzx_qHu9F8NJIhfR752jwNWkGMqXTUjqmmT3K6i_A$>
project/commit/1fae85a8534ec51ca893899314bd244b3e9684c7
DIFF: 
https://github.com/llvm/llvm-<https://urldefense.com/v3/__https:/github.com/llvm/llvm-__;!!JmoZiZGBv3RvKRSx!s_ymEsqOzBkqe8_cPIENEmr3UPzx_qHu9F8NJIhfR752jwNWkGMqXTUjqmmT3K6i_A$>
project/commit/1fae85a8534ec51ca893899314bd244b3e9684c7.diff

LOG: [DWARF] Add instructions to regenerate this test, if needed.

Added:


Modified:
   lldb/test/Shell/SymbolFile/DWARF/static_scope.s

Removed:



##########################################################################
######
diff  --git a/lldb/test/Shell/SymbolFile/DWARF/static_scope.s
b/lldb/test/Shell/SymbolFile/DWARF/static_scope.s
index 84a69e08ecfc..02d497ac9ccb 100644
--- a/lldb/test/Shell/SymbolFile/DWARF/static_scope.s
+++ b/lldb/test/Shell/SymbolFile/DWARF/static_scope.s
@@ -3,6 +3,15 @@

# REQUIRES: x86

+# Original test case (for future reference), compiled with:
+# $ clang-10 -g -Og test.c -o test
+# $ cat test.c
+# volatile int a;
+# main() {
+#   int b = 3;

Did you mean this to be `static`?
--paulr


No. Read the the review that introduced this test.


+#   a;
+# }
+
# RUN: llvm-mc -triple=x86_64-apple-macosx10.15.0 -filetype=obj %s > %t.o
# RUN: lldb-test symbols %t.o | FileCheck %s




_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org<mailto:lldb-commits@lists.llvm.org>
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits<https://urldefense.com/v3/__https:/lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits__;!!JmoZiZGBv3RvKRSx!s_ymEsqOzBkqe8_cPIENEmr3UPzx_qHu9F8NJIhfR752jwNWkGMqXTUjqmldpXSchg$>

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to