// File: /workspace/github_cpp_makefile_star2_O2/zgimbutas[P]mwrap/src/mwrap-cgen.cc
// Function: mex_define_copiers(_IO_FILE*, char const*)
void mex_define_copiers(FILE* fp, const char* name)
{
  /* Skip C99 int32_t, int64_t, uint32_t, uint64_t, if not detected */
  if( (strcmp(name, "int32_t") == 0 ) && ( mw_use_int32_t == 0 ) ) return;
  if( (strcmp(name, "int64_t") == 0 ) && ( mw_use_int64_t == 0 ) ) return;
  if( (strcmp(name, "uint32_t") == 0 ) && ( mw_use_uint32_t == 0 ) ) return;
  if( (strcmp(name, "uint64_t") == 0 ) && ( mw_use_uint64_t == 0 ) ) return;

  if( (strcmp(name, "ulong") == 0 ) && ( mw_use_ulong == 0 ) ) return;
  if( (strcmp(name, "uint") == 0 ) && ( mw_use_uint == 0 ) ) return;
  if( (strcmp(name, "ushort") == 0 ) && ( mw_use_ushort == 0 ) ) return;
  if( (strcmp(name, "uchar") == 0 ) && ( mw_use_uchar == 0 ) ) return;

  /* Define copiers */
  fprintf(fp, "mxWrapGetArrayDef(mxWrapGetArray_%s, %s)\n", name, name);
  fprintf(fp, "mxWrapCopyDef    (mxWrapCopy_%s,     %s)\n", name, name);
  fprintf(fp, "mxWrapReturnDef  (mxWrapReturn_%s,   %s)\n", name, name);

  /* Single precision */
  fprintf(fp, "mxWrapGetArrayDef_single(mxWrapGetArray_single_%s, %s)\n", name, name);
  fprintf(fp, "mxWrapCopyDef_single    (mxWrapCopy_single_%s,     %s)\n", name, name);
  fprintf(fp, "mxWrapReturnDef_single  (mxWrapReturn_single_%s,   %s)\n", name, name);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x52d8(%rip), %rsi      # 0xcaa6
movq %rbx, %rdi
callq 0x32a0
leaq 0x13a7b(%rip), %rcx     # 0x1b258
orl (%rcx), %eax
je 0x78a3
leaq 0x52c3(%rip), %rsi      # 0xcaaf
movq %rbx, %rdi
callq 0x32a0
leaq 0x13a61(%rip), %rcx     # 0x1b25c
orl (%rcx), %eax
je 0x78a3
leaq 0x529b(%rip), %rsi      # 0xcaa5
movq %rbx, %rdi
callq 0x32a0
leaq 0x13a47(%rip), %rcx     # 0x1b260
orl (%rcx), %eax
je 0x78a3
leaq 0x5286(%rip), %rsi      # 0xcaae
movq %rbx, %rdi
callq 0x32a0
leaq 0x13a2d(%rip), %rcx     # 0x1b264
orl (%rcx), %eax
je 0x78a3
leaq 0x524b(%rip), %rsi      # 0xca8d
movq %rbx, %rdi
callq 0x32a0
leaq 0x13a17(%rip), %rcx     # 0x1b268
orl (%rcx), %eax
je 0x78a3
leaq 0x5237(%rip), %rsi      # 0xca93
movq %rbx, %rdi
callq 0x32a0
leaq 0x13a01(%rip), %rcx     # 0x1b26c
orl (%rcx), %eax
je 0x78a3
leaq 0x5222(%rip), %rsi      # 0xca98
movq %rbx, %rdi
callq 0x32a0
leaq 0x139eb(%rip), %rcx     # 0x1b270
orl (%rcx), %eax
je 0x78a3
leaq 0x520f(%rip), %rsi      # 0xca9f
movq %rbx, %rdi
callq 0x32a0
leaq 0x139d5(%rip), %rcx     # 0x1b274
orl (%rcx), %eax
jne 0x78a8
popq %rbx
popq %r14
popq %rbp
retq
leaq 0xb5d5(%rip), %rsi      # 0x12e84
movq %r14, %rdi
movq %rbx, %rdx
movq %rbx, %rcx
xorl %eax, %eax
callq 0x32b0
leaq 0xb5e8(%rip), %rsi      # 0x12eae
movq %r14, %rdi
movq %rbx, %rdx
movq %rbx, %rcx
xorl %eax, %eax
callq 0x32b0
leaq 0xb5fb(%rip), %rsi      # 0x12ed8
movq %r14, %rdi
movq %rbx, %rdx
movq %rbx, %rcx
xorl %eax, %eax
callq 0x32b0
leaq 0xb60e(%rip), %rsi      # 0x12f02
movq %r14, %rdi
movq %rbx, %rdx
movq %rbx, %rcx
xorl %eax, %eax
callq 0x32b0
leaq 0xb62f(%rip), %rsi      # 0x12f3a
movq %r14, %rdi
movq %rbx, %rdx
movq %rbx, %rcx
xorl %eax, %eax
callq 0x32b0
leaq 0xb650(%rip), %rsi      # 0x12f72
movq %r14, %rdi
movq %rbx, %rdx
movq %rbx, %rcx
xorl %eax, %eax
popq %rbx
popq %r14
popq %rbp
jmp 0x32b0