// File: /workspace/github_c_makefile_star2_O0/OstCollector[P]config2c/config2c.c
// Function: helper_dump_array
static void helper_dump_array(const struct node_vec_def *vec,
		const struct type_decl *decl,
		string name, const struct string_list *vars, int l)
{
	string dump_func;
	osi(l, "indent(func, ctx, l + 1);\n");
	osi(l, "func(ctx, \".%s = [\\n\");\n", name);
	if (vec->type == NODE_TYPE_FIX_INT) {
		osi(l, "for (i = 0; i < %ld; ++i) {\n", vec->len_int);
	} else if (vec->type == NODE_TYPE_FIX_STR) {
		osi(l, "for (i = 0; i < %s; ++i) {\n", vec->len_str);
	} else {
		osi(l, "for (i = 0; i < value->%s; ++i) {\n", vec->len_str);
	}
	osi(l + 1, "indent(func, ctx, l + 2);\n");
	switch (decl->type) {
	case TYPE_DECL_PRIM:
		dump_func = lookup_map(decl->type_name)->dump_func;
		osi(l + 1, "%s(func, ctx", dump_func);
		break;
	case TYPE_DECL_ENUM:
		osi(l + 1, "dump__enum_%s(func, ctx", decl->type_name);
		break;
	case TYPE_DECL_STRUCT:
		osi(l + 1, "dump__struct_%s(func, ctx, l + 2", decl->type_name);
		break;
	case TYPE_DECL_UNION:
		osi(l + 1, "dump__union_%s(func, ctx, l + 2", decl->type_name);
		break;
	}
	if (vars) {
		out_src(", ");
		out_str_list(0, "&value->", "[i]", vars);
	}
	out_src(");\n");
	osi(l + 1, "func(ctx, \",\\n\");\n");
	osi(l, "}\n"); /* for */
	osi(l, "indent(func, ctx, l + 1);\n");
	osi(l, "func(ctx, \"]\");\n");
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movl %r8d, -0x24(%rbp)
movl -0x24(%rbp), %edi
callq 0x6fd0
movq 0xec45(%rip), %rdi      # 0x1b2a0
leaq 0xac49(%rip), %rsi      # 0x172ab
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xc69a
movq 0xe978(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x92d2(%rip), %rsi      # 0x15954
leaq 0x92e3(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xc69c
jmp 0xc69e
jmp 0xc6a0
movl -0x24(%rbp), %edi
callq 0x6fd0
movq 0xebf1(%rip), %rdi      # 0x1b2a0
movq -0x18(%rbp), %rdx
leaq 0xac7b(%rip), %rsi      # 0x17335
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xc6f2
movq 0xe920(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x927a(%rip), %rsi      # 0x15954
leaq 0x928b(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xc6f4
jmp 0xc6f6
movq -0x8(%rbp), %rax
cmpl $0x1, (%rax)
jne 0xc760
jmp 0xc701
movl -0x24(%rbp), %edi
callq 0x6fd0
movq 0xeb90(%rip), %rdi      # 0x1b2a0
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdx
leaq 0xaa45(%rip), %rsi      # 0x17164
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xc757
movq 0xe8bb(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x9215(%rip), %rsi      # 0x15954
leaq 0x9226(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xc759
jmp 0xc75b
jmp 0xc827
movq -0x8(%rbp), %rax
cmpl $0x2, (%rax)
jne 0xc7c7
jmp 0xc76b
movl -0x24(%rbp), %edi
callq 0x6fd0
movq 0xeb26(%rip), %rdi      # 0x1b2a0
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdx
leaq 0xa9f8(%rip), %rsi      # 0x17181
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xc7c1
movq 0xe851(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x91ab(%rip), %rsi      # 0x15954
leaq 0x91bc(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xc7c3
jmp 0xc7c5
jmp 0xc825
jmp 0xc7c9
movl -0x24(%rbp), %edi
callq 0x6fd0
movq 0xeac8(%rip), %rdi      # 0x1b2a0
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdx
leaq 0xa9b6(%rip), %rsi      # 0x1719d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xc81f
movq 0xe7f3(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x914d(%rip), %rsi      # 0x15954
leaq 0x915e(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xc821
jmp 0xc823
jmp 0xc825
jmp 0xc827
jmp 0xc829
movl -0x24(%rbp), %edi
addl $0x1, %edi
callq 0x6fd0
movq 0xea65(%rip), %rdi      # 0x1b2a0
leaq 0xab0c(%rip), %rsi      # 0x1734e
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xc87a
movq 0xe798(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x90f2(%rip), %rsi      # 0x15954
leaq 0x9103(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xc87c
jmp 0xc87e
movq -0x10(%rbp), %rax
movl (%rax), %eax
movq %rax, -0x38(%rbp)
subq $0x3, %rax
ja 0xca3f
movq -0x38(%rbp), %rax
leaq 0x888f(%rip), %rcx      # 0x1512c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdi
callq 0x8960
movq 0x18(%rax), %rax
movq %rax, -0x30(%rbp)
movl -0x24(%rbp), %edi
addl $0x1, %edi
callq 0x6fd0
movq 0xe9d3(%rip), %rdi      # 0x1b2a0
movq -0x30(%rbp), %rdx
leaq 0xaa0f(%rip), %rsi      # 0x172e7
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xc910
movq 0xe702(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x905c(%rip), %rsi      # 0x15954
leaq 0x906d(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xc912
jmp 0xc914
jmp 0xca3f
jmp 0xc91b
movl -0x24(%rbp), %edi
addl $0x1, %edi
callq 0x6fd0
movq 0xe973(%rip), %rdi      # 0x1b2a0
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdx
leaq 0xa9a0(%rip), %rsi      # 0x172dc
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xc974
movq 0xe69e(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x8ff8(%rip), %rsi      # 0x15954
leaq 0x9009(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xc976
jmp 0xc978
jmp 0xca3f
jmp 0xc97f
movl -0x24(%rbp), %edi
addl $0x1, %edi
callq 0x6fd0
movq 0xe90f(%rip), %rdi      # 0x1b2a0
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdx
leaq 0xa9c9(%rip), %rsi      # 0x17369
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xc9d8
movq 0xe63a(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x8f94(%rip), %rsi      # 0x15954
leaq 0x8fa5(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xc9da
jmp 0xc9dc
jmp 0xca3f
jmp 0xc9e0
movl -0x24(%rbp), %edi
addl $0x1, %edi
callq 0x6fd0
movq 0xe8ae(%rip), %rdi      # 0x1b2a0
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdx
leaq 0xa989(%rip), %rsi      # 0x1738a
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xca39
movq 0xe5d9(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x8f33(%rip), %rsi      # 0x15954
leaq 0x8f44(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xca3b
jmp 0xca3d
jmp 0xca3f
cmpq $0x0, -0x20(%rbp)
je 0xcaa9
jmp 0xca48
movq 0xe851(%rip), %rdi      # 0x1b2a0
leaq 0xa343(%rip), %rsi      # 0x16d99
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xca8e
movq 0xe584(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x8ede(%rip), %rsi      # 0x15954
leaq 0x8eef(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xca90
movq -0x20(%rbp), %rcx
xorl %edi, %edi
leaq 0xa202(%rip), %rsi      # 0x16c9f
leaq 0xa5a3(%rip), %rdx      # 0x17047
callq 0xba30
jmp 0xcaab
movq 0xe7ee(%rip), %rdi      # 0x1b2a0
leaq 0xa81f(%rip), %rsi      # 0x172d8
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xcaf1
movq 0xe521(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x8e7b(%rip), %rsi      # 0x15954
leaq 0x8e8c(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xcaf3
jmp 0xcaf5
movl -0x24(%rbp), %edi
addl $0x1, %edi
callq 0x6fd0
movq 0xe799(%rip), %rdi      # 0x1b2a0
leaq 0xa762(%rip), %rsi      # 0x17270
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xcb46
movq 0xe4cc(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x8e26(%rip), %rsi      # 0x15954
leaq 0x8e37(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xcb48
jmp 0xcb4a
jmp 0xcb4c
movl -0x24(%rbp), %edi
callq 0x6fd0
movq 0xe745(%rip), %rdi      # 0x1b2a0
leaq 0x92fb(%rip), %rsi      # 0x15e5d
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xcb9a
movq 0xe478(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x8dd2(%rip), %rsi      # 0x15954
leaq 0x8de3(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xcb9c
jmp 0xcb9e
jmp 0xcba0
movl -0x24(%rbp), %edi
callq 0x6fd0
movq 0xe6f1(%rip), %rdi      # 0x1b2a0
leaq 0xa6f5(%rip), %rsi      # 0x172ab
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xcbee
movq 0xe424(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x8d7e(%rip), %rsi      # 0x15954
leaq 0x8d8f(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xcbf0
jmp 0xcbf2
jmp 0xcbf4
movl -0x24(%rbp), %edi
callq 0x6fd0
movq 0xe69d(%rip), %rdi      # 0x1b2a0
leaq 0xa7a0(%rip), %rsi      # 0x173aa
movb $0x0, %al
callq 0x2100
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jle 0xcc42
movq 0xe3d0(%rip), %rax      # 0x1aff0
movq (%rax), %rdi
leaq 0x8d2a(%rip), %rsi      # 0x15954
leaq 0x8d3b(%rip), %rdx      # 0x1596c
movb $0x0, %al
callq 0x2100
movl $0x1, %edi
callq 0x2180
jmp 0xcc44
jmp 0xcc46
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax)