[lldb-dev] Is bitcast breaking lldb a bug?
Levo DeLellis via lldb-dev
lldb-dev at lists.llvm.org
Wed Feb 26 03:31:04 PST 2020
This feels like a bug to me. Yesterday I was asking what the rules were
because it felt like things change and break randomly. Now I have a good
example. (link to my email yesterday
http://lists.llvm.org/pipermail/lldb-dev/2020-February/015989.html)
Take this example source file
int main() {
int dummy = 25;
short wtf[dummy];
memset(wtf, 0, dummy*sizeof(*wtf));
return 0;
}
Now emit the llvm-ir so we can edit it
clang -g test.c -S -emit-llvm
Before line 21 write this line
%z8 = bitcast i16* %8 to i16*
Change the `metadata i16* %8` to `metadata i16* %z8`. Compile it then debug
line 4 `clang -g wtf.ll` `lldb-9 ./a.out` `break set -f test.c -l 4` `r`
`frame variable`
You'll see the array doesn't show up. If you change %z8 back to %8 it will
reappear. Is this a bug or can I not use bitcast when I'm trying to do
things with llvm.dbg.declare/addr/value?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20200226/360b7b55/attachment.html>
More information about the lldb-dev
mailing list