#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */
typedef int /*<<< orphan*/ FILE;

/* Variables and functions */
int /*<<< orphan*/ fprintf(int /*<<< orphan*/ *, char *, ...);
void dsaupd_info(FILE *out, int info) {
  if (info == 0) {
    fprintf(out, "[dsaupd]: Normal exit.\n");
  } else if (info == 1) {
    fprintf(out, "[dsaupd]: Maximum number of iterations taken. "
                 "All possible eigenvalues of OP has been found. IPARAM(5) "
                 "returns the number of wanted converged Ritz values.\n");
  } else if (info == 3) {
    fprintf(out, "[dsaupd]: "
                 "No shifts could be applied during a cycle of the "
                 "Implicitly restarted Arnoldi iteration. One possibility "
                 "is to increase the size of NCV relative to NEV. \n");
  } else if (info == -1) {
    fprintf(out, "[dsaupd]: N must be positive.\n");
  } else if (info == -2) {
    fprintf(out, "[dsaupd]: NEV must be positive.\n");
  } else if (info == -3) {
    fprintf(out, "[dsaupd]: NCV must be greater than NEV and less than or "
                 "equal to N.\n");
  } else if (info == -4) {
    fprintf(out, "[dsaupd]: "
                 "The maximum number of Arnoldi update iterations allowed "
                 "must be greater than zero.\n");
  } else if (info == -5) {
    fprintf(out, "[dsaupd]: WHICH must be one of LM, SM, LA, SA or BE.\n");
  } else if (info == -6) {
    fprintf(out, "[dsaupd]: BMAT must be one of I or G.\n");
  } else if (info == -7) {
    fprintf(
        out,
        "[dsaupd]: Length of private work array WORKL is not sufficient.\n");
  } else if (info == -8) {
    fprintf(out, "[dsaupd]: Error return from trid. eigenvalue calculation; "
                 "Informatinal error from LAPACK routine dsteqr.\n");
  } else if (info == -9) {
    fprintf(out, "[dsaupd]: Starting vector is zero.\n");
  } else if (info == -10) {
    fprintf(out, "[dsaupd]: IPARAM(7) must be 1,2,3,4,5.\n");
  } else if (info == -11) {
    fprintf(out, "[dsaupd]: IPARAM(7) = 1 and BMAT = G are incompatable.\n");
  } else if (info == -12) {
    fprintf(out, "[dsaupd]: IPARAM(1) must be equal to 0 or 1.\n");
  } else if (info == -13) {
    fprintf(out, "[dsaupd]: NEV and WHICH = BE are incompatable.\n");
  } else if (info == -9999) {
    fprintf(out, "[dsaupd]: Could not build an Arnoldi factorization. "
                 "IPARAM(5) returns the size of the current Arnoldi "
                 "factorization. The user is advised to check that "
                 "enough workspace and array storage has been allocated.\n");
  } else {
    fprintf(out, "[dsaupd]: unknown error: info = %d\n", info);
  }
}


x86 assembly (clang, -O0):
<dsaupd_info>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
mov    %rdi,-0x8(%rbp)
mov    %esi,-0xc(%rbp)
cmpl   $0x0,-0xc(%rbp)
jne    1140 <dsaupd_info+0x30>
mov    -0x8(%rbp),%rdi
lea    0xecc(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    13b8 <dsaupd_info+0x2a8>
cmpl   $0x1,-0xc(%rbp)
jne    1161 <dsaupd_info+0x51>
mov    -0x8(%rbp),%rdi
lea    0xec3(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    13b3 <dsaupd_info+0x2a3>
cmpl   $0x3,-0xc(%rbp)
jne    1182 <dsaupd_info+0x72>
mov    -0x8(%rbp),%rdi
lea    0xf3e(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    13ae <dsaupd_info+0x29e>
cmpl   $0xffffffff,-0xc(%rbp)
jne    11a3 <dsaupd_info+0x93>
mov    -0x8(%rbp),%rdi
lea    0xfc2(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    13a9 <dsaupd_info+0x299>
cmpl   $0xfffffffe,-0xc(%rbp)
jne    11c4 <dsaupd_info+0xb4>
mov    -0x8(%rbp),%rdi
lea    0xfc0(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    13a4 <dsaupd_info+0x294>
cmpl   $0xfffffffd,-0xc(%rbp)
jne    11e5 <dsaupd_info+0xd5>
mov    -0x8(%rbp),%rdi
lea    0xfc0(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    139f <dsaupd_info+0x28f>
cmpl   $0xfffffffc,-0xc(%rbp)
jne    1206 <dsaupd_info+0xf6>
mov    -0x8(%rbp),%rdi
lea    0xfe4(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    139a <dsaupd_info+0x28a>
cmpl   $0xfffffffb,-0xc(%rbp)
jne    1227 <dsaupd_info+0x117>
mov    -0x8(%rbp),%rdi
lea    0x1021(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    1395 <dsaupd_info+0x285>
cmpl   $0xfffffffa,-0xc(%rbp)
jne    1248 <dsaupd_info+0x138>
mov    -0x8(%rbp),%rdi
lea    0x1036(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    1390 <dsaupd_info+0x280>
cmpl   $0xfffffff9,-0xc(%rbp)
jne    1269 <dsaupd_info+0x159>
mov    -0x8(%rbp),%rdi
lea    0x103c(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    138b <dsaupd_info+0x27b>
cmpl   $0xfffffff8,-0xc(%rbp)
jne    128a <dsaupd_info+0x17a>
mov    -0x8(%rbp),%rdi
lea    0x105c(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    1386 <dsaupd_info+0x276>
cmpl   $0xfffffff7,-0xc(%rbp)
jne    12ab <dsaupd_info+0x19b>
mov    -0x8(%rbp),%rdi
lea    0x10a5(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    1381 <dsaupd_info+0x271>
cmpl   $0xfffffff6,-0xc(%rbp)
jne    12cc <dsaupd_info+0x1bc>
mov    -0x8(%rbp),%rdi
lea    0x10a8(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    137c <dsaupd_info+0x26c>
cmpl   $0xfffffff5,-0xc(%rbp)
jne    12ed <dsaupd_info+0x1dd>
mov    -0x8(%rbp),%rdi
lea    0x10af(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    1377 <dsaupd_info+0x267>
cmpl   $0xfffffff4,-0xc(%rbp)
jne    130e <dsaupd_info+0x1fe>
mov    -0x8(%rbp),%rdi
lea    0x10c6(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    1372 <dsaupd_info+0x262>
cmpl   $0xfffffff3,-0xc(%rbp)
jne    132f <dsaupd_info+0x21f>
mov    -0x8(%rbp),%rdi
lea    0x10d3(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    136d <dsaupd_info+0x25d>
cmpl   $0xffffd8f1,-0xc(%rbp)
jne    1353 <dsaupd_info+0x243>
mov    -0x8(%rbp),%rdi
lea    0x10df(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    1368 <dsaupd_info+0x258>
mov    -0x8(%rbp),%rdi
mov    -0xc(%rbp),%edx
lea    0x1194(%rip),%rsi
mov    $0x0,%al
call   1030 <fprintf@plt>
jmp    136d <dsaupd_info+0x25d>
jmp    1372 <dsaupd_info+0x262>
jmp    1377 <dsaupd_info+0x267>
jmp    137c <dsaupd_info+0x26c>
jmp    1381 <dsaupd_info+0x271>
jmp    1386 <dsaupd_info+0x276>
jmp    138b <dsaupd_info+0x27b>
jmp    1390 <dsaupd_info+0x280>
jmp    1395 <dsaupd_info+0x285>
jmp    139a <dsaupd_info+0x28a>
jmp    139f <dsaupd_info+0x28f>
jmp    13a4 <dsaupd_info+0x294>
jmp    13a9 <dsaupd_info+0x299>
jmp    13ae <dsaupd_info+0x29e>
jmp    13b3 <dsaupd_info+0x2a3>
jmp    13b8 <dsaupd_info+0x2a8>
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<dsaupd_info>:
mov    %esi,%edx
mov    %rdi,%rcx
lea    0xd(%rdx),%eax
cmp    $0x10,%eax
ja     1153 <dsaupd_info+0x33>
lea    0xecc(%rip),%rsi
movslq (%rsi,%rax,4),%rax
add    %rsi,%rax
jmp    *%rax
lea    0x12f6(%rip),%rdi
mov    $0x2f,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
cmp    $0xffffd8f1,%edx
jne    1171 <dsaupd_info+0x51>
lea    0x1308(%rip),%rdi
mov    $0xce,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0x13c1(%rip),%rsi
mov    %rcx,%rdi
xor    %eax,%eax
jmp    1030 <fprintf@plt>
lea    0x1283(%rip),%rdi
mov    $0x2d,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0x1235(%rip),%rdi
mov    $0x37,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0x11f7(%rip),%rdi
mov    $0x27,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0x11bd(%rip),%rdi
mov    $0x23,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0x113d(%rip),%rdi
mov    $0x69,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0x10e6(%rip),%rdi
mov    $0x40,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0x10a9(%rip),%rdi
mov    $0x26,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0x105d(%rip),%rdi
mov    $0x35,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0xfe9(%rip),%rdi
mov    $0x5d,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0xf8e(%rip),%rdi
mov    $0x44,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0xf57(%rip),%rdi
mov    $0x20,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0xf22(%rip),%rdi
mov    $0x1e,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0xdb3(%rip),%rdi
mov    $0x17,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0xdb5(%rip),%rdi
mov    $0x9b,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>
lea    0xe3b(%rip),%rdi
mov    $0xa4,%esi
mov    $0x1,%edx
jmp    1040 <fwrite@plt>

LLVM IR (-O0):
@.str = [24 x i8] c"[dsaupd]: Normal exit.\0A\00"
@.str.1 = [156 x i8] c"[dsaupd]: Maximum number of iterations taken. All possible eigenvalues of OP has been found. IPARAM(5) returns the number of wanted converged Ritz values.\0A\00"
@.str.2 = [165 x i8] c"[dsaupd]: No shifts could be applied during a cycle of the Implicitly restarted Arnoldi iteration. One possibility is to increase the size of NCV relative to NEV. \0A\00"
@.str.3 = [31 x i8] c"[dsaupd]: N must be positive.\0A\00"
@.str.4 = [33 x i8] c"[dsaupd]: NEV must be positive.\0A\00"
@.str.5 = [69 x i8] c"[dsaupd]: NCV must be greater than NEV and less than or equal to N.\0A\00"
@.str.6 = [94 x i8] c"[dsaupd]: The maximum number of Arnoldi update iterations allowed must be greater than zero.\0A\00"
@.str.7 = [54 x i8] c"[dsaupd]: WHICH must be one of LM, SM, LA, SA or BE.\0A\00"
@.str.8 = [39 x i8] c"[dsaupd]: BMAT must be one of I or G.\0A\00"
@.str.9 = [65 x i8] c"[dsaupd]: Length of private work array WORKL is not sufficient.\0A\00"
@.str.10 = [106 x i8] c"[dsaupd]: Error return from trid. eigenvalue calculation; Informatinal error from LAPACK routine dsteqr.\0A\00"
@.str.11 = [36 x i8] c"[dsaupd]: Starting vector is zero.\0A\00"
@.str.12 = [40 x i8] c"[dsaupd]: IPARAM(7) must be 1,2,3,4,5.\0A\00"
@.str.13 = [56 x i8] c"[dsaupd]: IPARAM(7) = 1 and BMAT = G are incompatable.\0A\00"
@.str.14 = [46 x i8] c"[dsaupd]: IPARAM(1) must be equal to 0 or 1.\0A\00"
@.str.15 = [48 x i8] c"[dsaupd]: NEV and WHICH = BE are incompatable.\0A\00"
@.str.16 = [207 x i8] c"[dsaupd]: Could not build an Arnoldi factorization. IPARAM(5) returns the size of the current Arnoldi factorization. The user is advised to check that enough workspace and array storage has been allocated.\0A\00"
@.str.17 = [36 x i8] c"[dsaupd]: unknown error: info = %d\0A\00"
define void @dsaupd_info(i32* %0, i32 %1) {
%3 = alloca i32*
%4 = alloca i32
store i32* %0, i32** %3
store i32 %1, i32* %4
%5 = load i32, i32* %4
%6 = icmp eq i32 %5, 0
br i1 %6, label %7, label %10
7: ; preds = %2
%8 = load i32*, i32** %3
%9 = call i32 (i32*, i8*, ...) @fprintf(i32* %8, i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str, i64 0, i64 0))
br label %126
10: ; preds = %2
%11 = load i32, i32* %4
%12 = icmp eq i32 %11, 1
br i1 %12, label %13, label %16
13: ; preds = %10
%14 = load i32*, i32** %3
%15 = call i32 (i32*, i8*, ...) @fprintf(i32* %14, i8* getelementptr inbounds ([156 x i8], [156 x i8]* @.str.1, i64 0, i64 0))
br label %125
16: ; preds = %10
%17 = load i32, i32* %4
%18 = icmp eq i32 %17, 3
br i1 %18, label %19, label %22
19: ; preds = %16
%20 = load i32*, i32** %3
%21 = call i32 (i32*, i8*, ...) @fprintf(i32* %20, i8* getelementptr inbounds ([165 x i8], [165 x i8]* @.str.2, i64 0, i64 0))
br label %124
22: ; preds = %16
%23 = load i32, i32* %4
%24 = icmp eq i32 %23, -1
br i1 %24, label %25, label %28
25: ; preds = %22
%26 = load i32*, i32** %3
%27 = call i32 (i32*, i8*, ...) @fprintf(i32* %26, i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.3, i64 0, i64 0))
br label %123
28: ; preds = %22
%29 = load i32, i32* %4
%30 = icmp eq i32 %29, -2
br i1 %30, label %31, label %34
31: ; preds = %28
%32 = load i32*, i32** %3
%33 = call i32 (i32*, i8*, ...) @fprintf(i32* %32, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.4, i64 0, i64 0))
br label %122
34: ; preds = %28
%35 = load i32, i32* %4
%36 = icmp eq i32 %35, -3
br i1 %36, label %37, label %40
37: ; preds = %34
%38 = load i32*, i32** %3
%39 = call i32 (i32*, i8*, ...) @fprintf(i32* %38, i8* getelementptr inbounds ([69 x i8], [69 x i8]* @.str.5, i64 0, i64 0))
br label %121
40: ; preds = %34
%41 = load i32, i32* %4
%42 = icmp eq i32 %41, -4
br i1 %42, label %43, label %46
43: ; preds = %40
%44 = load i32*, i32** %3
%45 = call i32 (i32*, i8*, ...) @fprintf(i32* %44, i8* getelementptr inbounds ([94 x i8], [94 x i8]* @.str.6, i64 0, i64 0))
br label %120
46: ; preds = %40
%47 = load i32, i32* %4
%48 = icmp eq i32 %47, -5
br i1 %48, label %49, label %52
49: ; preds = %46
%50 = load i32*, i32** %3
%51 = call i32 (i32*, i8*, ...) @fprintf(i32* %50, i8* getelementptr inbounds ([54 x i8], [54 x i8]* @.str.7, i64 0, i64 0))
br label %119
52: ; preds = %46
%53 = load i32, i32* %4
%54 = icmp eq i32 %53, -6
br i1 %54, label %55, label %58
55: ; preds = %52
%56 = load i32*, i32** %3
%57 = call i32 (i32*, i8*, ...) @fprintf(i32* %56, i8* getelementptr inbounds ([39 x i8], [39 x i8]* @.str.8, i64 0, i64 0))
br label %118
58: ; preds = %52
%59 = load i32, i32* %4
%60 = icmp eq i32 %59, -7
br i1 %60, label %61, label %64
61: ; preds = %58
%62 = load i32*, i32** %3
%63 = call i32 (i32*, i8*, ...) @fprintf(i32* %62, i8* getelementptr inbounds ([65 x i8], [65 x i8]* @.str.9, i64 0, i64 0))
br label %117
64: ; preds = %58
%65 = load i32, i32* %4
%66 = icmp eq i32 %65, -8
br i1 %66, label %67, label %70
67: ; preds = %64
%68 = load i32*, i32** %3
%69 = call i32 (i32*, i8*, ...) @fprintf(i32* %68, i8* getelementptr inbounds ([106 x i8], [106 x i8]* @.str.10, i64 0, i64 0))
br label %116
70: ; preds = %64
%71 = load i32, i32* %4
%72 = icmp eq i32 %71, -9
br i1 %72, label %73, label %76
73: ; preds = %70
%74 = load i32*, i32** %3
%75 = call i32 (i32*, i8*, ...) @fprintf(i32* %74, i8* getelementptr inbounds ([36 x i8], [36 x i8]* @.str.11, i64 0, i64 0))
br label %115
76: ; preds = %70
%77 = load i32, i32* %4
%78 = icmp eq i32 %77, -10
br i1 %78, label %79, label %82
79: ; preds = %76
%80 = load i32*, i32** %3
%81 = call i32 (i32*, i8*, ...) @fprintf(i32* %80, i8* getelementptr inbounds ([40 x i8], [40 x i8]* @.str.12, i64 0, i64 0))
br label %114
82: ; preds = %76
%83 = load i32, i32* %4
%84 = icmp eq i32 %83, -11
br i1 %84, label %85, label %88
85: ; preds = %82
%86 = load i32*, i32** %3
%87 = call i32 (i32*, i8*, ...) @fprintf(i32* %86, i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.13, i64 0, i64 0))
br label %113
88: ; preds = %82
%89 = load i32, i32* %4
%90 = icmp eq i32 %89, -12
br i1 %90, label %91, label %94
91: ; preds = %88
%92 = load i32*, i32** %3
%93 = call i32 (i32*, i8*, ...) @fprintf(i32* %92, i8* getelementptr inbounds ([46 x i8], [46 x i8]* @.str.14, i64 0, i64 0))
br label %112
94: ; preds = %88
%95 = load i32, i32* %4
%96 = icmp eq i32 %95, -13
br i1 %96, label %97, label %100
97: ; preds = %94
%98 = load i32*, i32** %3
%99 = call i32 (i32*, i8*, ...) @fprintf(i32* %98, i8* getelementptr inbounds ([48 x i8], [48 x i8]* @.str.15, i64 0, i64 0))
br label %111
100: ; preds = %94
%101 = load i32, i32* %4
%102 = icmp eq i32 %101, -9999
br i1 %102, label %103, label %106
103: ; preds = %100
%104 = load i32*, i32** %3
%105 = call i32 (i32*, i8*, ...) @fprintf(i32* %104, i8* getelementptr inbounds ([207 x i8], [207 x i8]* @.str.16, i64 0, i64 0))
br label %110
106: ; preds = %100
%107 = load i32*, i32** %3
%108 = load i32, i32* %4
%109 = call i32 (i32*, i8*, ...) @fprintf(i32* %107, i8* getelementptr inbounds ([36 x i8], [36 x i8]* @.str.17, i64 0, i64 0), i32 %108)
br label %110
110: ; preds = %106, %103
br label %111
111: ; preds = %110, %97
br label %112
112: ; preds = %111, %91
br label %113
113: ; preds = %112, %85
br label %114
114: ; preds = %113, %79
br label %115
115: ; preds = %114, %73
br label %116
116: ; preds = %115, %67
br label %117
117: ; preds = %116, %61
br label %118
118: ; preds = %117, %55
br label %119
119: ; preds = %118, %49
br label %120
120: ; preds = %119, %43
br label %121
121: ; preds = %120, %37
br label %122
122: ; preds = %121, %31
br label %123
123: ; preds = %122, %25
br label %124
124: ; preds = %123, %19
br label %125
125: ; preds = %124, %13
br label %126
126: ; preds = %125, %7
ret void
}

LLVM IR (-O2):
@.str = [24 x i8] c"[dsaupd]: Normal exit.\0A\00"
@.str.1 = [156 x i8] c"[dsaupd]: Maximum number of iterations taken. All possible eigenvalues of OP has been found. IPARAM(5) returns the number of wanted converged Ritz values.\0A\00"
@.str.2 = [165 x i8] c"[dsaupd]: No shifts could be applied during a cycle of the Implicitly restarted Arnoldi iteration. One possibility is to increase the size of NCV relative to NEV. \0A\00"
@.str.3 = [31 x i8] c"[dsaupd]: N must be positive.\0A\00"
@.str.4 = [33 x i8] c"[dsaupd]: NEV must be positive.\0A\00"
@.str.5 = [69 x i8] c"[dsaupd]: NCV must be greater than NEV and less than or equal to N.\0A\00"
@.str.6 = [94 x i8] c"[dsaupd]: The maximum number of Arnoldi update iterations allowed must be greater than zero.\0A\00"
@.str.7 = [54 x i8] c"[dsaupd]: WHICH must be one of LM, SM, LA, SA or BE.\0A\00"
@.str.8 = [39 x i8] c"[dsaupd]: BMAT must be one of I or G.\0A\00"
@.str.9 = [65 x i8] c"[dsaupd]: Length of private work array WORKL is not sufficient.\0A\00"
@.str.10 = [106 x i8] c"[dsaupd]: Error return from trid. eigenvalue calculation; Informatinal error from LAPACK routine dsteqr.\0A\00"
@.str.11 = [36 x i8] c"[dsaupd]: Starting vector is zero.\0A\00"
@.str.12 = [40 x i8] c"[dsaupd]: IPARAM(7) must be 1,2,3,4,5.\0A\00"
@.str.13 = [56 x i8] c"[dsaupd]: IPARAM(7) = 1 and BMAT = G are incompatable.\0A\00"
@.str.14 = [46 x i8] c"[dsaupd]: IPARAM(1) must be equal to 0 or 1.\0A\00"
@.str.15 = [48 x i8] c"[dsaupd]: NEV and WHICH = BE are incompatable.\0A\00"
@.str.16 = [207 x i8] c"[dsaupd]: Could not build an Arnoldi factorization. IPARAM(5) returns the size of the current Arnoldi factorization. The user is advised to check that enough workspace and array storage has been allocated.\0A\00"
@.str.17 = [36 x i8] c"[dsaupd]: unknown error: info = %d\0A\00"
define void @dsaupd_info(i32* nocapture %0, i32 %1) {
switch i32 %1, label %37 [
i32 0, label %3
i32 1, label %5
i32 3, label %7
i32 -1, label %9
i32 -2, label %11
i32 -3, label %13
i32 -4, label %15
i32 -5, label %17
i32 -6, label %19
i32 -7, label %21
i32 -8, label %23
i32 -9, label %25
i32 -10, label %27
i32 -11, label %29
i32 -12, label %31
i32 -13, label %33
i32 -9999, label %35
]
3: ; preds = %2
%4 = tail call i64 @fwrite(i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str, i64 0, i64 0), i64 23, i64 1, i32* %0)
br label %39
5: ; preds = %2
%6 = tail call i64 @fwrite(i8* getelementptr inbounds ([156 x i8], [156 x i8]* @.str.1, i64 0, i64 0), i64 155, i64 1, i32* %0)
br label %39
7: ; preds = %2
%8 = tail call i64 @fwrite(i8* getelementptr inbounds ([165 x i8], [165 x i8]* @.str.2, i64 0, i64 0), i64 164, i64 1, i32* %0)
br label %39
9: ; preds = %2
%10 = tail call i64 @fwrite(i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.3, i64 0, i64 0), i64 30, i64 1, i32* %0)
br label %39
11: ; preds = %2
%12 = tail call i64 @fwrite(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.4, i64 0, i64 0), i64 32, i64 1, i32* %0)
br label %39
13: ; preds = %2
%14 = tail call i64 @fwrite(i8* getelementptr inbounds ([69 x i8], [69 x i8]* @.str.5, i64 0, i64 0), i64 68, i64 1, i32* %0)
br label %39
15: ; preds = %2
%16 = tail call i64 @fwrite(i8* getelementptr inbounds ([94 x i8], [94 x i8]* @.str.6, i64 0, i64 0), i64 93, i64 1, i32* %0)
br label %39
17: ; preds = %2
%18 = tail call i64 @fwrite(i8* getelementptr inbounds ([54 x i8], [54 x i8]* @.str.7, i64 0, i64 0), i64 53, i64 1, i32* %0)
br label %39
19: ; preds = %2
%20 = tail call i64 @fwrite(i8* getelementptr inbounds ([39 x i8], [39 x i8]* @.str.8, i64 0, i64 0), i64 38, i64 1, i32* %0)
br label %39
21: ; preds = %2
%22 = tail call i64 @fwrite(i8* getelementptr inbounds ([65 x i8], [65 x i8]* @.str.9, i64 0, i64 0), i64 64, i64 1, i32* %0)
br label %39
23: ; preds = %2
%24 = tail call i64 @fwrite(i8* getelementptr inbounds ([106 x i8], [106 x i8]* @.str.10, i64 0, i64 0), i64 105, i64 1, i32* %0)
br label %39
25: ; preds = %2
%26 = tail call i64 @fwrite(i8* getelementptr inbounds ([36 x i8], [36 x i8]* @.str.11, i64 0, i64 0), i64 35, i64 1, i32* %0)
br label %39
27: ; preds = %2
%28 = tail call i64 @fwrite(i8* getelementptr inbounds ([40 x i8], [40 x i8]* @.str.12, i64 0, i64 0), i64 39, i64 1, i32* %0)
br label %39
29: ; preds = %2
%30 = tail call i64 @fwrite(i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.13, i64 0, i64 0), i64 55, i64 1, i32* %0)
br label %39
31: ; preds = %2
%32 = tail call i64 @fwrite(i8* getelementptr inbounds ([46 x i8], [46 x i8]* @.str.14, i64 0, i64 0), i64 45, i64 1, i32* %0)
br label %39
33: ; preds = %2
%34 = tail call i64 @fwrite(i8* getelementptr inbounds ([48 x i8], [48 x i8]* @.str.15, i64 0, i64 0), i64 47, i64 1, i32* %0)
br label %39
35: ; preds = %2
%36 = tail call i64 @fwrite(i8* getelementptr inbounds ([207 x i8], [207 x i8]* @.str.16, i64 0, i64 0), i64 206, i64 1, i32* %0)
br label %39
37: ; preds = %2
%38 = tail call i32 (i32*, i8*, ...) @fprintf(i32* %0, i8* getelementptr inbounds ([36 x i8], [36 x i8]* @.str.17, i64 0, i64 0), i32 %1)
br label %39
39: ; preds = %5, %9, %13, %17, %21, %25, %29, %33, %37, %35, %31, %27, %23, %19, %15, %11, %7, %3
ret void
}