Issue |
159285
|
Summary |
clang DWARF SVE predicate type does not have DW_AT_bit_stride
|
Labels |
clang
|
Assignees |
|
Reporter |
yury-khrustalev
|
Clang does not generate `DW_AT_bit_stride` attribute for array type entry for `svbool_t`. As a result, debuggers (e.g. GDB or LLDB) would try to read 1 byte for each element of the SVE predicate vector instead of reading 1 bit.
Reproducer:
```C++
#include <arm_sve.h>
// ...
[[gnu::target ("arch=armv9-a+sve")]]
void fun()
{
volatile svbool_t pred16 = svwhilelt_b16_u32(0u, 5u);
}
```
Compile with `-g` then check DWARF data, e.g. using `readelf --debug-dump`: DIE for the `svbool_t` type won't have `DW_AT_bit_stride: 1 bit` attribute.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs