gitee.com/quant1x/num@v0.3.2/asm/c2goasm/test/MaddMemcpy_amd64.s (about)

     1  //+build !noasm !appengine
     2  // AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
     3  
     4  TEXT ·_MaddMemcpy(SB), $72-48
     5  
     6  	MOVQ vec1+0(FP), DI
     7  	MOVQ vec2+8(FP), SI
     8  	MOVQ vec3+16(FP), DX
     9  	MOVQ size1+24(FP), CX
    10  	MOVQ size2+32(FP), R8
    11  	MOVQ result+40(FP), R9
    12  	ADDQ $72, SP
    13  
    14  	WORD $0x894d; BYTE $0xce       // mov    r14, r9
    15  	WORD $0x8945; BYTE $0xc7       // mov    r15d, r8d
    16  	WORD $0x8949; BYTE $0xd4       // mov    r12, rdx
    17  	WORD $0x8949; BYTE $0xf5       // mov    r13, rsi
    18  	WORD $0x8948; BYTE $0xfb       // mov    rbx, rdi
    19  	WORD $0x6348; BYTE $0xd1       // movsxd    rdx, ecx
    20  	WORD $0x894c; BYTE $0xef       // mov    rdi, r13
    21  	WORD $0x8948; BYTE $0xde       // mov    rsi, rbx
    22  	CALL clib·_memcpy(SB)
    23  	WORD $0x6349; BYTE $0xd7       // movsxd    rdx, r15d
    24  	WORD $0x894c; BYTE $0xe7       // mov    rdi, r12
    25  	WORD $0x8948; BYTE $0xde       // mov    rsi, rbx
    26  	CALL clib·_memcpy(SB)
    27  	LONG $0x0310fcc5               // vmovups    ymm0, yword [rbx]
    28  	LONG $0x107cc1c4; WORD $0x004d // vmovups    ymm1, yword [r13]
    29  	LONG $0xa87dc2c4; WORD $0x240c // vfmadd213ps    ymm1, ymm0, yword [r12]
    30  	LONG $0x117cc1c4; BYTE $0x0e   // vmovups    yword [r14], ymm1
    31  	SUBQ $72, SP
    32  	VZEROUPPER
    33  	RET