> Ugh, no! Is there a case where the padding is a problem? Normally
> registers belonging to the same union are uniform in size. Those
> defines will expand anywhere and not behave as expected:
> 
> ulong sp = ureg->sp;
> 
> This could lead to all sorts of entertaining problems.

any union on a 64-bit machine will get padded out to 0%8 bytes.

also your example

        ulong sp = ureg->sp

will get expanded to

        ulong r13 = ureg->r13

and this is just fine!

- erik

Reply via email to