// File: /workspace/github_c_makefile_star2_O0/PoulinV[P]AxiCLASS/build/../tools/sparse.c
// Function: sp_mat_alloc
int sp_mat_alloc(sp_mat** A, int ncols, int nrows, int maxnz, ErrorMsg error_message){
	int ncp =  ncols+1;
	class_alloc((*A),sizeof(sp_mat),error_message);
	class_alloc((*A)->Ax,maxnz*sizeof(double),error_message);
	class_alloc((*A)->Ai,maxnz*sizeof(int),error_message);
	class_alloc((*A)->Ap,(ncp*sizeof(int)),error_message);
	(*A)->ncols = ncols;
	(*A)->nrows = nrows;
	(*A)->maxnz = maxnz;
	return _SUCCESS_;
}

// Assembly:
subq $0x2068, %rsp           # imm = 0x2068
movq %rdi, 0x2058(%rsp)
movl %esi, 0x2054(%rsp)
movl %edx, 0x2050(%rsp)
movl %ecx, 0x204c(%rsp)
movq %r8, 0x2040(%rsp)
movl 0x2054(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x203c(%rsp)
movl $0x28, %edi
callq 0x8460
movq %rax, %rcx
movq 0x2058(%rsp), %rax
movq %rcx, (%rax)
movq 0x2058(%rsp), %rax
cmpq $0x0, (%rax)
jne 0xae9c
movl $0x28, 0x2038(%rsp)
leaq 0x1830(%rsp), %rdi
movl 0x2038(%rsp), %ecx
leaq 0x1c71b0(%rip), %rsi    # 0x1d2004
leaq 0x1c798d(%rip), %rdx    # 0x1d27e8
movb $0x0, %al
callq 0x5b9c0
movq 0x2040(%rsp), %rdi
leaq 0x1830(%rsp), %r8
leaq 0x1c71bb(%rip), %rsi    # 0x1d2034
leaq 0x1c796d(%rip), %rdx    # 0x1d27ed
movl $0x13, %ecx
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x2064(%rsp)
jmp 0xb0ca
movslq 0x204c(%rsp), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x2058(%rsp), %rax
movq (%rax), %rax
movq %rcx, 0x20(%rax)
movq 0x2058(%rsp), %rax
movq (%rax), %rax
cmpq $0x0, 0x20(%rax)
jne 0xaf42
movslq 0x204c(%rsp), %rax
shlq $0x3, %rax
movl %eax, 0x182c(%rsp)
leaq 0x1020(%rsp), %rdi
movl 0x182c(%rsp), %ecx
leaq 0x1c710a(%rip), %rsi    # 0x1d2004
leaq 0x1c78f9(%rip), %rdx    # 0x1d27fa
movb $0x0, %al
callq 0x5b9c0
movq 0x2040(%rsp), %rdi
leaq 0x1020(%rsp), %r8
leaq 0x1c7115(%rip), %rsi    # 0x1d2034
leaq 0x1c78c7(%rip), %rdx    # 0x1d27ed
movl $0x14, %ecx
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x2064(%rsp)
jmp 0xb0ca
movslq 0x204c(%rsp), %rdi
shlq $0x2, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x2058(%rsp), %rax
movq (%rax), %rax
movq %rcx, 0x18(%rax)
movq 0x2058(%rsp), %rax
movq (%rax), %rax
cmpq $0x0, 0x18(%rax)
jne 0xafe8
movslq 0x204c(%rsp), %rax
shlq $0x2, %rax
movl %eax, 0x101c(%rsp)
leaq 0x810(%rsp), %rdi
movl 0x101c(%rsp), %ecx
leaq 0x1c7064(%rip), %rsi    # 0x1d2004
leaq 0x1c785c(%rip), %rdx    # 0x1d2803
movb $0x0, %al
callq 0x5b9c0
movq 0x2040(%rsp), %rdi
leaq 0x810(%rsp), %r8
leaq 0x1c706f(%rip), %rsi    # 0x1d2034
leaq 0x1c7821(%rip), %rdx    # 0x1d27ed
movl $0x15, %ecx
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x2064(%rsp)
jmp 0xb0ca
movslq 0x203c(%rsp), %rdi
shlq $0x2, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x2058(%rsp), %rax
movq (%rax), %rax
movq %rcx, 0x10(%rax)
movq 0x2058(%rsp), %rax
movq (%rax), %rax
cmpq $0x0, 0x10(%rax)
jne 0xb081
movslq 0x203c(%rsp), %rax
shlq $0x2, %rax
movl %eax, 0x80c(%rsp)
movq %rsp, %rdi
movl 0x80c(%rsp), %ecx
leaq 0x1c6fc3(%rip), %rsi    # 0x1d2004
leaq 0x1c77c4(%rip), %rdx    # 0x1d280c
movb $0x0, %al
callq 0x5b9c0
movq 0x2040(%rsp), %rdi
movq %rsp, %r8
leaq 0x1c6fd3(%rip), %rsi    # 0x1d2034
leaq 0x1c7785(%rip), %rdx    # 0x1d27ed
movl $0x16, %ecx
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x2064(%rsp)
jmp 0xb0ca
movl 0x2054(%rsp), %ecx
movq 0x2058(%rsp), %rax
movq (%rax), %rax
movl %ecx, (%rax)
movl 0x2050(%rsp), %ecx
movq 0x2058(%rsp), %rax
movq (%rax), %rax
movl %ecx, 0x4(%rax)
movl 0x204c(%rsp), %ecx
movq 0x2058(%rsp), %rax
movq (%rax), %rax
movl %ecx, 0x8(%rax)
movl $0x0, 0x2064(%rsp)
movl 0x2064(%rsp), %eax
addq $0x2068, %rsp           # imm = 0x2068
retq
nopl (%rax)