GDB | DWARF expression | Extracting a range of bits from an 'xmm' register
vaibhav kurhe
vaibhav.kurhe@gmail.com
Fri May 21 08:57:15 GMT 2021
Hello all,
For a use case, I am trying to build a DWARF expression which represents
the value of an arbitrary range of bits (e.g. 96-127 bits) in an *128-bit
xmm register* to be used as a *location attribute value* for a variable DIE.
I am using GDB to consume the debug info and test it.
Following is the expression I started with to test out a shift operation on
an 128-bit xmm0 register using Typed DWARF stack :-
*"DW_OP_GNU_regval_type: 21 (xmm0) <0x30>; DW_OP_GNU_const_type: <0x30> 16
byte block: 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ; DW_OP_shl;
DW_OP_stack_value"*
But, while testing it in GDB, I got an error :-
*"That operation is not available on integers of more than 8 bytes."*
Could you please provide any suggestions/pointers on this? Am I missing
something?
Please let me know, if you need any additional info.
Thanks & Regards,
Vaibhav
More information about the Gdb
mailing list