// File: /workspace/github_c_makefile_star2_O3/ZmengXu[P]boxMesh/boxMesh.C
// Function: writeBoundary(int, int)
void writeBoundary(int nFaces, int nExternalFaces)
{
    ofstream currentFile("constant/polyMesh/boundary");

    currentFile << "/*--------------------------------*- C++ -*----------------------------------*\\\n";
    currentFile << "| =========                 |                                                 |\n";
    currentFile << "| \\\\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |\n";
    currentFile << "|  \\\\    /   O peration     | Version:  2.3.0                                 |\n";
    currentFile << "|   \\\\  /    A nd           | Web:      www.OpenFOAM.org                      |\n";
    currentFile << "|    \\\\/     M anipulation  |                                                 |\n";
    currentFile << "\\*---------------------------------------------------------------------------*/\n";
    currentFile << "FoamFile\n";
    currentFile << "{\n";
    currentFile << "    version     2.0;\n";
    currentFile << "    format      ascii;\n";
    currentFile << "    class       polyBoundaryMesh;\n";
    currentFile << "    location    \"constant/polyMesh\";\n";
    currentFile << "    object      boundary;\n";
    currentFile << "}\n";
    currentFile << "// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //\n";
    currentFile << "\n";
    currentFile << "1\n";
    currentFile << "(\n";
    currentFile << "    defaultFaces\n";
    currentFile << "    {\n";
    currentFile << "        type            empty;\n";
    currentFile << "        inGroups        1(empty);\n";

    ostringstream convert;
    convert << "        nFaces          " << nExternalFaces        << ";\n";
    convert << "        startFace       " << nFaces-nExternalFaces << ";\n";
    currentFile << convert.str();

    currentFile << "    }\n";
    currentFile << ")\n";
    currentFile << "\n";
    currentFile << "// ************************************************************************* //\n";
    currentFile.close();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x398, %rsp            # imm = 0x398
movl %esi, %r14d
movl %edi, %ebx
leaq 0x3ba8(%rip), %rsi      # 0x6020
leaq -0x238(%rbp), %r15
movq %r15, %rdi
movl $0x10, %edx
callq 0x2170
leaq 0x3ba8(%rip), %rsi      # 0x603b
movl $0x50, %edx
movq %r15, %rdi
callq 0x2180
leaq 0x3be5(%rip), %rsi      # 0x608c
leaq -0x238(%rbp), %rdi
movl $0x50, %edx
callq 0x2180
leaq 0x3c1e(%rip), %rsi      # 0x60dd
leaq -0x238(%rbp), %rdi
movl $0x50, %edx
callq 0x2180
leaq 0x3c57(%rip), %rsi      # 0x612e
leaq -0x238(%rbp), %rdi
movl $0x50, %edx
callq 0x2180
leaq 0x3c90(%rip), %rsi      # 0x617f
leaq -0x238(%rbp), %rdi
movl $0x50, %edx
callq 0x2180
leaq 0x3cc9(%rip), %rsi      # 0x61d0
leaq -0x238(%rbp), %rdi
movl $0x50, %edx
callq 0x2180
leaq 0x3d02(%rip), %rsi      # 0x6221
leaq -0x238(%rbp), %rdi
movl $0x50, %edx
callq 0x2180
leaq 0x3d3b(%rip), %rsi      # 0x6272
leaq -0x238(%rbp), %rdi
movl $0x9, %edx
callq 0x2180
leaq 0x3e29(%rip), %rsi      # 0x6378
leaq -0x238(%rbp), %rdi
movl $0x2, %edx
callq 0x2180
leaq 0x3d15(%rip), %rsi      # 0x627c
leaq -0x238(%rbp), %rdi
movl $0x15, %edx
callq 0x2180
leaq 0x3d13(%rip), %rsi      # 0x6292
leaq -0x238(%rbp), %rdi
movl $0x17, %edx
callq 0x2180
leaq 0x3d13(%rip), %rsi      # 0x62aa
leaq -0x238(%rbp), %rdi
movl $0x22, %edx
callq 0x2180
leaq 0x3d1e(%rip), %rsi      # 0x62cd
leaq -0x238(%rbp), %rdi
movl $0x25, %edx
callq 0x2180
leaq 0x3d2c(%rip), %rsi      # 0x62f3
leaq -0x238(%rbp), %rdi
movl $0x1a, %edx
callq 0x2180
leaq 0x3e15(%rip), %rsi      # 0x63f4
leaq -0x238(%rbp), %rdi
movl $0x2, %edx
callq 0x2180
leaq 0x3d17(%rip), %rsi      # 0x630e
leaq -0x238(%rbp), %rdi
movl $0x50, %edx
callq 0x2180
leaq 0x3e89(%rip), %rsi      # 0x6498
leaq -0x238(%rbp), %rdi
movl $0x1, %edx
callq 0x2180
leaq 0x3d38(%rip), %rsi      # 0x635f
leaq -0x238(%rbp), %rdi
movl $0x2, %edx
callq 0x2180
leaq 0x3e58(%rip), %rsi      # 0x6497
leaq -0x238(%rbp), %rdi
movl $0x2, %edx
callq 0x2180
leaq 0x3d0b(%rip), %rsi      # 0x6362
leaq -0x238(%rbp), %rdi
movl $0x11, %edx
callq 0x2180
leaq 0x3d05(%rip), %rsi      # 0x6374
leaq -0x238(%rbp), %rdi
movl $0x6, %edx
callq 0x2180
leaq 0x3cf4(%rip), %rsi      # 0x637b
leaq -0x238(%rbp), %rdi
movl $0x1f, %edx
callq 0x2180
leaq 0x3cfc(%rip), %rsi      # 0x639b
leaq -0x238(%rbp), %rdi
movl $0x22, %edx
callq 0x2180
leaq -0x3b0(%rbp), %rdi
callq 0x21a0
leaq 0x3cfb(%rip), %rsi      # 0x63be
leaq -0x3b0(%rbp), %rdi
movl $0x18, %edx
callq 0x2180
leaq -0x3b0(%rbp), %rdi
movl %r14d, %esi
callq 0x22a0
leaq 0x3c06(%rip), %rsi      # 0x62f0
movl $0x2, %edx
movq %rax, %rdi
callq 0x2180
leaq 0x3cd9(%rip), %rsi      # 0x63d7
leaq -0x3b0(%rbp), %rdi
movl $0x18, %edx
callq 0x2180
subl %r14d, %ebx
leaq -0x3b0(%rbp), %rdi
movl %ebx, %esi
callq 0x22a0
leaq 0x3bc9(%rip), %rsi      # 0x62f0
movl $0x2, %edx
movq %rax, %rdi
callq 0x2180
leaq -0x3a8(%rbp), %rsi
leaq -0x38(%rbp), %rdi
callq 0x2240
movq -0x38(%rbp), %rsi
movq -0x30(%rbp), %rdx
leaq -0x238(%rbp), %rdi
callq 0x2180
leaq -0x28(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2771
movq -0x28(%rbp), %rsi
incq %rsi
callq 0x2160
leaq 0x3c78(%rip), %rsi      # 0x63f0
leaq -0x238(%rbp), %rdi
movl $0x6, %edx
callq 0x2180
leaq 0x3c67(%rip), %rsi      # 0x63f7
leaq -0x238(%rbp), %rdi
movl $0x2, %edx
callq 0x2180
leaq 0x3cf0(%rip), %rsi      # 0x6498
leaq -0x238(%rbp), %rdi
movl $0x1, %edx
callq 0x2180
leaq 0x3c3a(%rip), %rsi      # 0x63fa
leaq -0x238(%rbp), %rdi
movl $0x50, %edx
callq 0x2180
leaq -0x238(%rbp), %rdi
callq 0x21b0
movq 0x67cc(%rip), %rsi      # 0x8fb0
leaq -0x3b0(%rbp), %rdi
callq 0x20d0
leaq -0x340(%rbp), %rdi
callq 0x2070
movq 0x67a5(%rip), %rax      # 0x8fa8
movq (%rax), %rcx
movq 0x18(%rax), %rax
leaq -0x230(%rbp), %rdi
movq %rcx, -0x8(%rdi)
movq -0x18(%rcx), %rcx
movq %rax, -0x238(%rbp,%rcx)
callq 0x2120
leaq -0x140(%rbp), %rdi
callq 0x2070
addq $0x398, %rsp            # imm = 0x398
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq -0x28(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2865
movq -0x28(%rbp), %rsi
incq %rsi
callq 0x2160
jmp 0x2865
jmp 0x2862
jmp 0x2886
movq %rax, %rbx
movq 0x6744(%rip), %rsi      # 0x8fb0
leaq -0x3b0(%rbp), %rdi
callq 0x20d0
leaq -0x340(%rbp), %rdi
callq 0x2070
jmp 0x2889
movq %rax, %rbx
leaq -0x238(%rbp), %rdi
callq 0x21e0
movq %rbx, %rdi
callq 0x22b0