Oh, messed up the registers in the example. Should be like this:
If some original function of the driver contained, say,
mov 0xabcd (%rax), %rsi
mov %rdx, 0xbeeffeed (%rsi)
that will be transformed to something like
lea 0xabcd (%rax), %rbx
mov %rbx, <local_storage1>
mov 0xabcd (%rax), %rsi
lea 0xbeeffeed (%rsi), %rbx
mov %rbx, <local_storage2>
mov %rdx, 0xbeeffeed (%rsi)
...
<send the local_storage to the output system>
mov 0xabcd (%rax), %rsi
mov %rdx, 0xbeeffeed (%rsi)
that will be transformed to something like
lea 0xabcd (%rax), %rbx
mov %rbx, <local_storage1>
mov 0xabcd (%rax), %rsi
lea 0xbeeffeed (%rsi), %rbx
mov %rbx, <local_storage2>
mov %rdx, 0xbeeffeed (%rsi)
...
<send the local_storage to the output system>
Regards,
Eugene
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel