gef extension to print register "prettier", including SIMD registers pretty-print and casting to primitive data types.
NOTE:
Make sure append
set print repeats 64to your.gdbinitfile, to fetch (up to zmm) registers.Repeat count must be 128 or more, if you use 1024-bit or more registers XD
Viewing specific register's bytes into format.
Format example:
rez $ymm0[23:16]:u8
Both slicing and indexing are available with the index of byte.
Default endianess and slicing is Little endian, whole size of register.
Index are ordered with Little Endian. For example, rez $ymm0[31] will return the most significant byte of 256-bit (32-byte) ymm register.
You can explicitly give the endianess by 'start' and 'stop' of slice.
start < stopwill format by Big Endian.start > stopwill format by Little Endian.
Using larger bit type on smaller bit array might result in
u8,u16,u32...u512: format to unsigned decimal integer format.d8,d16,d32...d512: format to signed decimal integer format.b/o/x8,b/o/x16...b/o/x512: format to binary / octal / hexadecimal format.
f32,f64are available, asfloatanddouble
c: ASCII / ISO 8859-1 (Latin-1) size, by byte.