aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Basic/SourceManager.cpp
diff options
context:
space:
mode:
authorPavel Labath <pavel@labath.sk>2020-10-12 15:22:48 +0200
committerPavel Labath <pavel@labath.sk>2020-10-26 12:01:20 +0100
commit97ca9ca180f0810adcc1637d1a6dd32a04f63cfe (patch)
tree08faffe12ad86061cb168bb388ceb2e713521fb3 /clang/lib/Basic/SourceManager.cpp
parentf5ca27569eacc398f0e4fc63a9b55cafac398c04 (diff)
downloadllvm-97ca9ca180f0810adcc1637d1a6dd32a04f63cfe.zip
llvm-97ca9ca180f0810adcc1637d1a6dd32a04f63cfe.tar.gz
llvm-97ca9ca180f0810adcc1637d1a6dd32a04f63cfe.tar.bz2
[lldb] Fix bitfield "frame var" for pointers (pr47743)
Displaying large packed bitfields did not work if one was accessing them through a pointer, and he used the "->" notation ("[0]." notation is fine). The reason for that is that implicit dereference in -> is plumbed all the way down to ValueObjectChild::UpdateValue, where the process of fetching the child value was forked for this flag. The bitfield "sliding" code was implemented only for the branch which did not require dereferencing. This patch restructures the function to avoid this mistake. Processing now happens in two stages. - first the parent is dereferenced (if needed) - then the child value is computed (this step includes sliding and is common for both branches) Differential Revision: https://reviews.llvm.org/D89236
Diffstat (limited to 'clang/lib/Basic/SourceManager.cpp')
0 files changed, 0 insertions, 0 deletions