llvm-project
deb54ba0 - [lldb][TypeSystem] Better support for _BitInt types (#165689)

Commit
47 days ago
[lldb][TypeSystem] Better support for _BitInt types (#165689) Depends on: * https://github.com/llvm/llvm-project/pull/165686 This patch ensures we make use of the `DW_AT_bit_size` on `DW_TAG_base_type`s (which since https://github.com/llvm/llvm-project/pull/164372 can exist on `_BitInt`s) and adjusts `TypeSystemClang` to recognize `_BitInt`. For DWARF from older versions of Clang that didn't emit a `DW_AT_bit_size`, we would create `_BitInt`s using the byte-size. Not sure we can do much better than that. But the situation beforehand wasn't much better. Before: ``` (lldb) v (char) a = '\x01' (unsigned char) b = '\x01' (long) c = 2 (unsigned long) d = 2 ``` After: ``` (lldb) v (_BitInt(2)) a = 1 (unsigned _BitInt(2)) b = 1 (_BitInt(52)) c = 2 (unsigned _BitInt(52)) d = 2 ``` Fixes https://github.com/llvm/llvm-project/issues/110273
Author
Parents
Loading