Re: [lldb-dev] [Openmp-dev] LLVM 12.0.0-rc5 has been tagged

2021-04-09 Thread Hans Wennborg via lldb-dev
Windows is ready:

$ sha256sum LLVM-12.0.0-rc5*.exe
906c39e386375a88da597efc8bd6a35994b688ab466f587ad88cf02667af2bcb
LLVM-12.0.0-rc5-win32.exe
54a62e05a9b5a11e4d806864ee4c4fbc206557273429f250316dbe3e202d9f53
LLVM-12.0.0-rc5-win64.exe


On Thu, Apr 8, 2021 at 3:44 AM Tom Stellard via Openmp-dev
 wrote:
>
> Hi,
>
> I've tagged 12.0.0-rc5, testers can begin testing and upload binaries.
>
> -Tom
>
> ___
> Openmp-dev mailing list
> openmp-...@lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/openmp-dev


build_llvm_1200-rc5._bat_
Description: Binary data
___
lldb-dev mailing list
lldb-dev@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev


[lldb-dev] Hiding local variables not defined yet

2021-04-09 Thread Emre Kultursay via lldb-dev
When debugging C/C++ (statically scoped languages), does LLDB recognize (or
does it have a setting for it) that a local variable is not defined yet at
the current program address (i.e., DW_AT_decl_line is less than the source
line for the address), and thus, not include it in the list of locals
(i.e., frame variable)?

Does it make sense to have such a setting?  The goal is to reduce the
clutter in locals list.
___
lldb-dev mailing list
lldb-dev@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev


Re: [lldb-dev] Hiding local variables not defined yet

2021-04-09 Thread Greg Clayton via lldb-dev


> On Apr 9, 2021, at 11:39 AM, Emre Kultursay via lldb-dev 
>  wrote:
> 
> When debugging C/C++ (statically scoped languages), does LLDB recognize (or 
> does it have a setting for it) that a local variable is not defined yet at 
> the current program address (i.e., DW_AT_decl_line is less than the source 
> line for the address), and thus, not include it in the list of locals (i.e., 
> frame variable)? 
> 
> Does it make sense to have such a setting?  The goal is to reduce the clutter 
> in locals list.

LLDB does not. We show exactly what the compiler emits. DWARF, the debug 
information, is powerful enough to say from [0x1000-0x1010) the variable is 
here, and from [0x1020-0x1100) the variable is there, these are called location 
expressions. But the compiler, for non optimized code, always just emits the 
variable's location on the stack and doesn't correctly limit it to when the 
variable has been initialized.

So this could easily be fixed in the compiler. LLDB really needs to listen to 
what the compiler says because once you enable optimizations, the compiler can 
end up moving all sorts of code around and the variable _could_ become 
initialized before the DW_AT_decl_line. 

So we don't want to pretend we know better than the compiler when displaying 
debug information. But even if the compiler does emit better debug information 
that does give correct location expressions, we would still show the variable 
because it is in scope. LLDB does only show variables that are in lexical scope 
currently in Xcode, lldb-vscode, lldb, and Android Studio AFAIK. What debugger 
are you using?

Greg
> 
> ___
> lldb-dev mailing list
> lldb-dev@lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev

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