// File: /workspace/github_c_makefile_star2_O0/mohuangrui[P]ArtraCFD/case_loader.c
// Function: WriteBoundaryData
static void WriteBoundaryData(FILE *fp, const Space *space, const int n)
{
    const Partition *const part = &(space->part);
    switch (part->typeBC[n]) {
        case INFLOW:
            fprintf(fp, "boundary type: inflow\n");
            fprintf(fp, "density: %.6g\n", part->varBC[n][0]);
            fprintf(fp, "x velocity: %.6g\n", part->varBC[n][1]);
            fprintf(fp, "y velocity: %.6g\n", part->varBC[n][2]);
            fprintf(fp, "z velocity: %.6g\n", part->varBC[n][3]);
            fprintf(fp, "pressure: %.6g\n", part->varBC[n][4]);
            break;
        case OUTFLOW:
            fprintf(fp, "boundary type: outflow\n");
            break;
        case SLIPWALL:
            fprintf(fp, "boundary type: slip wall\n");
            fprintf(fp, "temperature: %.6g\n", part->varBC[n][VARBC-1]);
            break;
        case NOSLIPWALL:
            fprintf(fp, "boundary type: noslip wall\n");
            fprintf(fp, "temperature: %.6g\n", part->varBC[n][VARBC-1]);
            break;
        case PERIODIC:
            fprintf(fp, "boundary type: periodic\n");
            break;
        default:
            ShowError("unidentified boundary type: n: %d, type: %d", n, part->typeBC[n]);
            break;
    }
    return;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movq -0x10(%rbp), %rax
addq $0x28, %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq 0x390(%rax), %rax
movslq -0x14(%rbp), %rcx
movl (%rax,%rcx,4), %eax
movq %rax, -0x28(%rbp)
subq $0x4, %rax
ja 0x89e7
movq -0x28(%rbp), %rax
leaq 0x1e47a(%rip), %rcx     # 0x26cb4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x8(%rbp), %rdi
leaq 0x1ecb9(%rip), %rsi     # 0x27507
movb $0x0, %al
callq 0x2140
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rax
movslq -0x14(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movsd (%rax), %xmm0
leaq 0x1e8ed(%rip), %rsi     # 0x27167
movb $0x1, %al
callq 0x2140
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rax
movslq -0x14(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movsd 0x8(%rax), %xmm0
leaq 0x1ec77(%rip), %rsi     # 0x2751e
movb $0x1, %al
callq 0x2140
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rax
movslq -0x14(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movsd 0x10(%rax), %xmm0
leaq 0x1ec5c(%rip), %rsi     # 0x27530
movb $0x1, %al
callq 0x2140
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rax
movslq -0x14(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movsd 0x18(%rax), %xmm0
leaq 0x1ec41(%rip), %rsi     # 0x27542
movb $0x1, %al
callq 0x2140
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rax
movslq -0x14(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movsd 0x20(%rax), %xmm0
leaq 0x1ec26(%rip), %rsi     # 0x27554
movb $0x1, %al
callq 0x2140
jmp 0x8a0a
movq -0x8(%rbp), %rdi
leaq 0x1ec1f(%rip), %rsi     # 0x27564
movb $0x0, %al
callq 0x2140
jmp 0x8a0a
movq -0x8(%rbp), %rdi
leaq 0x1ec20(%rip), %rsi     # 0x2757c
movb $0x0, %al
callq 0x2140
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rax
movslq -0x14(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movsd 0x28(%rax), %xmm0
leaq 0x1e7ed(%rip), %rsi     # 0x27176
movb $0x1, %al
callq 0x2140
jmp 0x8a0a
movq -0x8(%rbp), %rdi
leaq 0x1ebf9(%rip), %rsi     # 0x27596
movb $0x0, %al
callq 0x2140
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rax
movslq -0x14(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movsd 0x28(%rax), %xmm0
leaq 0x1e7ac(%rip), %rsi     # 0x27176
movb $0x1, %al
callq 0x2140
jmp 0x8a0a
movq -0x8(%rbp), %rdi
leaq 0x1ebd4(%rip), %rsi     # 0x275b2
movb $0x0, %al
callq 0x2140
jmp 0x8a0a
movl -0x14(%rbp), %esi
movq -0x20(%rbp), %rax
movq 0x390(%rax), %rax
movslq -0x14(%rbp), %rcx
movl (%rax,%rcx,4), %edx
leaq 0x1ebc8(%rip), %rdi     # 0x275cb
movb $0x0, %al
callq 0xbbd0
addq $0x30, %rsp
popq %rbp
retq