// File: /workspace/github_cpp_makefile_star2_O3/aalto-speech[P]ftk/util/conf.cc
// Function: conf::Config::help_string[abi:cxx11]() const
std::string
Config::help_string() const
{
    std::string help;
    help.reserve(1024);
    help.append(usage_line);

    // Iterate options
    for (int i = 0; i < (int)options.size(); i++) {
        const Option& option = options[i];

        help.append("  ");

        // Append short name
        if (option.short_name != 0) {
            help.append("-");
            help.append(1, option.short_name);
        }
        else
            help.append("  ");

        // Append long name
        if (option.long_name != "") {
            if (option.short_name != 0)
                help.append(", ");
            else
                help.append("  ");

            help.append("--");
            help.append(option.long_name);
            help.append(longest_name_length - option.long_name.length(), ' ');
        }
        else if (longest_name_length > 0)
            help.append(longest_name_length + 4, ' ');

        // Append the help text
        help.append("  ");
        help.append(option.help);
        help.append("\n");
    }

    return help;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x10(%rdi), %rax
movq %rax, -0x30(%rbp)
movq %rax, (%rdi)
movq $0x0, 0x8(%rdi)
movb $0x0, 0x10(%rdi)
movl $0x400, %esi            # imm = 0x400
callq 0x4570
movq (%r14), %rsi
movq 0x8(%r14), %rdx
movq %rbx, %rdi
callq 0x4100
movq 0x20(%r14), %r13
movq 0x28(%r14), %rax
subq %r13, %rax
shrq $0x4, %rax
imull $0x38e38e39, %eax, %eax # imm = 0x38E38E39
testl %eax, %eax
jle 0x77b1
xorl %r12d, %r12d
xorl %r15d, %r15d
movq %rbx, %rdi
leaq 0x1ed08(%rip), %rsi     # 0x2638f
callq 0x46b0
cmpb $0x0, (%r13,%r12)
je 0x76be
movq %rbx, %rdi
leaq 0x1eca1(%rip), %rsi     # 0x2633f
callq 0x46b0
movsbl (%r13,%r12), %r8d
movq 0x8(%rbx), %rsi
movl $0x1, %ecx
movq %rbx, %rdi
xorl %edx, %edx
callq 0x4690
jmp 0x76cd
movq %rbx, %rdi
leaq 0x1ecc7(%rip), %rsi     # 0x2638f
callq 0x46b0
leaq (%r12,%r13), %rdi
addq $0x8, %rdi
leaq 0x1eebb(%rip), %rsi     # 0x26597
callq 0x40f0
testl %eax, %eax
je 0x7734
cmpb $0x0, (%r13,%r12)
leaq 0x1eca0(%rip), %rsi     # 0x26392
leaq 0x1ec96(%rip), %rax     # 0x2638f
cmoveq %rax, %rsi
movq %rbx, %rdi
callq 0x46b0
movq %rbx, %rdi
leaq 0x1ec03(%rip), %rsi     # 0x26312
callq 0x46b0
movq 0x8(%r13,%r12), %rsi
movq 0x10(%r13,%r12), %rdx
movq %rbx, %rdi
callq 0x4100
movslq 0xb0(%r14), %rcx
subq 0x10(%r13,%r12), %rcx
jmp 0x7743
movl 0xb0(%r14), %ecx
testl %ecx, %ecx
jle 0x7757
addq $0x4, %rcx
movq 0x8(%rbx), %rsi
movq %rbx, %rdi
xorl %edx, %edx
movl $0x20, %r8d
callq 0x4690
movq %rbx, %rdi
leaq 0x1ec2e(%rip), %rsi     # 0x2638f
callq 0x46b0
movq 0x50(%r13,%r12), %rsi
movq 0x58(%r13,%r12), %rdx
movq %rbx, %rdi
callq 0x4100
movq %rbx, %rdi
leaq 0x1ebf8(%rip), %rsi     # 0x2637a
callq 0x46b0
incq %r15
movq 0x20(%r14), %r13
movq 0x28(%r14), %rax
subq %r13, %rax
shrq $0x4, %rax
imull $0x38e38e39, %eax, %eax # imm = 0x38E38E39
cltq
addq $0x90, %r12
cmpq %rax, %r15
jl 0x767d
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x77c5
movq %rax, %r14
movq (%rbx), %rdi
cmpq -0x30(%rbp), %rdi
je 0x77d6
callq 0x4350
movq %r14, %rdi
callq 0x4650