[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-13 Thread Shafik Yaghmour via Phabricator via lldb-commits
This revision was not accepted when it landed; it landed in state "Needs Review". This revision was automatically updated to reflect the committed changes. Closed by commit rG25bbceb047a3: [LLDB] Fix how ValueObjectChild handles bit-fields stored in a Scalar in… (authored by shafik). Herald added

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-13 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik updated this revision to Diff 285423. shafik marked an inline comment as done. shafik added a comment. Update test name CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews.llvm.org/D85376 Files: lldb/source/Core/ValueObjectChild.cpp lldb/test/Shell/Symbo

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-13 Thread Pavel Labath via Phabricator via lldb-commits
labath accepted this revision. labath added a comment. This looks good to me. I appreciate the efforts taken to reduce the test size. The trick for controlling the debug info order is neat, and I may end up using it some time. FWIW, the way I usually handle these things is by first replacing al

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-12 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik updated this revision to Diff 285233. shafik marked 4 inline comments as done. shafik added a comment. Updated test using more compact code from Fred. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews.llvm.org/D85376 Files: lldb/source/Core/ValueObjectCh

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-12 Thread Frederic Riss via Phabricator via lldb-commits
friss added inline comments. Comment at: lldb/test/Shell/SymbolFile/DWARF/valueobject-pass-by-reg.s:14-40 +# typedef union +# { +# unsigned raw; +# struct +# { +# unsigned a : 8; +# unsigned b : 8; This gives a much more compact debug info section:

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-12 Thread Raphael Isemann via Phabricator via lldb-commits
teemperor added a comment. I'll leave the test review to Pavel who knows that much better, but I have two last nits about the test. Comment at: lldb/test/Shell/SymbolFile/DWARF/valueobject-pass-by-reg.s:59 +# +# 86dea1f39bd127776b999e10dff212003068d30a +# I t

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-12 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik updated this revision to Diff 285176. shafik added a comment. Replacing python test with Shell test CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews.llvm.org/D85376 Files: lldb/source/Core/ValueObjectChild.cpp lldb/test/Shell/SymbolFile/DWARF/valueobj

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-11 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik added a comment. We found a way to hand modify the assembly and it looks good, I just need to convert it to a test. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews.llvm.org/D85376 ___ lldb-commits mailing list

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-11 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik added a comment. In D85376#2209638 , @labath wrote: > This manifested itself for variables in registers because those end up being > described as `eValueTypeScalar`, is that so? > > If that's the case, then I think this would also manifest for vari

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-11 Thread Pavel Labath via Phabricator via lldb-commits
labath added a comment. This manifested itself for variables in registers because those end up being described as `eValueTypeScalar`, is that so? If that's the case, then I think this would also manifest for variables described via `DW_OP_constu 0xdead, DW_OP_stack_value`. And if *that* is true

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-10 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik updated this revision to Diff 284507. shafik added a comment. Updated to use llvm.org clang, remove header files from the main.c and add the commit hash for the clang so that it is easier to replicate the main.s in the future. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-10 Thread Raphael Isemann via Phabricator via lldb-commits
teemperor added a comment. I just have a small comment about the test. If you build the test with an llvm.org version of clang (best if it contains the git hash it was build from) and you don't include headers (they don't seem to be required for the test), then the file would be much easier to

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-06 Thread Adrian Prantl via Phabricator via lldb-commits
aprantl added a comment. Do we have an end-to-end (with source code instead of assembler) test for ObjC bitfields, too? If not, it might still be a good a idea to add one even if it doesn't add coverage for this particular change. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-06 Thread Adrian Prantl via Phabricator via lldb-commits
aprantl accepted this revision. aprantl added a comment. The test LGTM now! Please be sure to address Fred's comment before committing. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews.llvm.org/D85376 ___ lldb-commits

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-06 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik updated this revision to Diff 283703. shafik added a comment. - Add more tests CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews.llvm.org/D85376 Files: lldb/source/Core/ValueObjectChild.cpp lldb/test/API/functionalities/data-formatter/valueobj-pass-by-

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-06 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik added inline comments. Comment at: lldb/source/Core/ValueObjectChild.cpp:202-205 -if (m_bitfield_bit_size) - scalar.ExtractBitfield(m_bitfield_bit_size, - m_bitfield_bit_offset); -else ---

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-06 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik added inline comments. Comment at: lldb/source/Core/ValueObjectChild.cpp:202-205 -if (m_bitfield_bit_size) - scalar.ExtractBitfield(m_bitfield_bit_size, - m_bitfield_bit_offset); -else ---

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-06 Thread Frederic Riss via Phabricator via lldb-commits
friss added inline comments. Comment at: lldb/source/Core/ValueObjectChild.cpp:202-205 -if (m_bitfield_bit_size) - scalar.ExtractBitfield(m_bitfield_bit_size, - m_bitfield_bit_offset); -else

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-06 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik updated this revision to Diff 283658. shafik added a comment. - Refactored the Makefile and test based on offline comments from Adrian. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews.llvm.org/D85376 Files: lldb/source/Core/ValueObjectChild.cpp lldb/

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-06 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik updated this revision to Diff 283647. shafik added a comment. Removing use of `-O1` from Makefile. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews.llvm.org/D85376 Files: lldb/source/Core/ValueObjectChild.cpp lldb/test/API/functionalities/data-formatt

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-06 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik added a subscriber: JDevlieghere. shafik added inline comments. Comment at: lldb/source/Core/ValueObjectChild.cpp:202-205 -if (m_bitfield_bit_size) - scalar.ExtractBitfield(m_bitfield_bit_size, - m_bitfield_bit_o

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-05 Thread Adrian Prantl via Phabricator via lldb-commits
aprantl added inline comments. Comment at: lldb/test/API/functionalities/data-formatter/valueobj-pass-by-reg/Makefile:1 +EXE := a.out +CFLAGS := -O1 I think this is redundant. The default is a.out Comment at: lldb/test/API/functionalities/dat

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-05 Thread Davide Italiano via Phabricator via lldb-commits
davide added inline comments. Comment at: lldb/test/API/functionalities/data-formatter/valueobj-pass-by-reg/Makefile:2 +EXE := a.out +CFLAGS := -O1 + davide wrote: > This is fundamentally a no-go. Depending on the optimization pipeline passes > this in a regist

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-05 Thread Davide Italiano via Phabricator via lldb-commits
davide requested changes to this revision. davide added inline comments. This revision now requires changes to proceed. Comment at: lldb/test/API/functionalities/data-formatter/valueobj-pass-by-reg/Makefile:2 +EXE := a.out +CFLAGS := -O1 + This is fundamentally

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-05 Thread Frederic Riss via Phabricator via lldb-commits
friss added inline comments. Comment at: lldb/source/Core/ValueObjectChild.cpp:202-205 -if (m_bitfield_bit_size) - scalar.ExtractBitfield(m_bitfield_bit_size, - m_bitfield_bit_offset); -else

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-05 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik added a comment. Note: for the test I did not want to rely on clang choosing to pass the union by register, so I used assembly which ensures I will obtain the behavior I am looking to capture for the test. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews

[Lldb-commits] [PATCH] D85376: Fix how ValueObjectChild handles bit-fields stored in a Scalar in UpdateValue()

2020-08-05 Thread Shafik Yaghmour via Phabricator via lldb-commits
shafik created this revision. shafik added reviewers: aprantl, jingham, vsk. shafik requested review of this revision. Herald added a reviewer: jdoerfert. Herald added a subscriber: sstefan1. When bit-field data was stored in a `Scalar` in `ValueObjectChild` during `UpdateValue()` it was extracti