.section __TEXT,__text,regular,pure_instructions .build_version macos, 10, 14 sdk_version 10, 14 .globl _memcpy_clang ## -- Begin function memcpy_clang .p2align 4, 0x90 _memcpy_clang: ## @memcpy_clang .cfi_startproc ## %bb.0: pushq %rbp .cfi_def_cfa_offset 16 .cfi_offset %rbp, -16 movq %rsp, %rbp .cfi_def_cfa_register %rbp testq %rdx, %rdx je LBB0_11 ## %bb.1: cmpq $128, %rdx jae LBB0_3 ## %bb.2: xorl %eax, %eax jmp LBB0_10 LBB0_3: movq %rdx, %rax andq $-128, %rax leaq -128(%rax), %r9 movq %r9, %r10 shrq $7, %r10 incq %r10 movl %r10d, %r8d andl $1, %r8d testq %r9, %r9 je LBB0_4 ## %bb.5: movl $1, %ecx subq %r10, %rcx leaq -1(%r8,%rcx), %r9 xorl %ecx, %ecx .p2align 4, 0x90 LBB0_6: ## =>This Inner Loop Header: Depth=1 vmovups (%rsi,%rcx), %ymm0 vmovups 32(%rsi,%rcx), %ymm1 vmovups 64(%rsi,%rcx), %ymm2 vmovups 96(%rsi,%rcx), %ymm3 vmovups %ymm0, (%rdi,%rcx) vmovups %ymm1, 32(%rdi,%rcx) vmovups %ymm2, 64(%rdi,%rcx) vmovups %ymm3, 96(%rdi,%rcx) vmovups 128(%rsi,%rcx), %ymm0 vmovups 160(%rsi,%rcx), %ymm1 vmovups 192(%rsi,%rcx), %ymm2 vmovups 224(%rsi,%rcx), %ymm3 vmovups %ymm0, 128(%rdi,%rcx) vmovups %ymm1, 160(%rdi,%rcx) vmovups %ymm2, 192(%rdi,%rcx) vmovups %ymm3, 224(%rdi,%rcx) addq $256, %rcx ## imm = 0x100 addq $2, %r9 jne LBB0_6 ## %bb.7: testq %r8, %r8 je LBB0_9 LBB0_8: vmovups (%rsi,%rcx), %ymm0 vmovups 32(%rsi,%rcx), %ymm1 vmovups 64(%rsi,%rcx), %ymm2 vmovups 96(%rsi,%rcx), %ymm3 vmovups %ymm0, (%rdi,%rcx) vmovups %ymm1, 32(%rdi,%rcx) vmovups %ymm2, 64(%rdi,%rcx) vmovups %ymm3, 96(%rdi,%rcx) LBB0_9: cmpq %rdx, %rax je LBB0_11 .p2align 4, 0x90 LBB0_10: ## =>This Inner Loop Header: Depth=1 movzbl (%rsi,%rax), %ecx movb %cl, (%rdi,%rax) incq %rax cmpq %rax, %rdx jne LBB0_10 LBB0_11: popq %rbp vzeroupper retq LBB0_4: xorl %ecx, %ecx testq %r8, %r8 jne LBB0_8 jmp LBB0_9 .cfi_endproc ## -- End function .subsections_via_symbols