Re: [PATCH 1/2] x86: optimize XCHG to MOV for same-register forms

Jan Beulich <[email protected]>
Newsgroups gmane.comp.gnu.binutils,gmane.comp.debugging.valgrind.devel
Message-ID <[email protected]>
On 02.07.2026 15:16, Michael Matz wrote:
> Hello,
> 
> On Thu, 2 Jul 2026, Mark Wielaard wrote:
> 
>>    This instruction decoder can decode three special instructions     
>>    which mean nothing natively (are no-ops as far as regs/mem are     
>>    concerned) but have meaning for supporting Valgrind.  A special    
>>    instruction is flagged by the 16-byte preamble 48C1C703 48C1C70D   
>>    48C1C73D 48C1C733 (in the standard interpretation, that means: rolq
>>    $3, %rdi; rolq $13, %rdi; rolq $61, %rdi; rolq $51, %rdi).         
>>    Following that, one of the following 3 are allowed (standard       
>>    interpretation in parentheses):                                    
>>                                                                                 
>>       4887DB (xchgq %rbx,%rbx)   %RDX = client_request ( %RAX )       
>>       4887C9 (xchgq %rcx,%rcx)   %RAX = guest_NRADDR                  
>>       4887D2 (xchgq %rdx,%rdx)   call-noredir *%RAX                   
>>       4887F6 (xchgq %rdi,%rdi)   IR injection                         
> 
> So, a future version of the header should use .byte instead of menmonics.  

Or .insn, when available.

Jan
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.