// File: /workspace/github_c_makefile_star2_O2/nimble-code[P]Uno/Src/uno.c
// Function: main
int
main(int argc, char *argv[])
{
	strcpy(loc_args, lx);
	strcat(loc_args, " ");

	strcpy(glob_cmd, gx);
	strcat(glob_cmd, " ");

	argc--;
	while (argc-- > 0)	/* @uno_suppress side-effect */
	{	argv++;
		if (0) { printf("%3d: '%s'\n", argc, *argv); }
		if ((*argv)[0] == '-')
		{	if (0) { printf("option '%c' -- '%s'\n", (*argv)[1], *argv); }
			switch((*argv)[1]) {
			case 'C':	/* -CPP=... */
			case 'D':
			case 'U':
			case 'I':
				pass_loc(*argv, "");
				break;

			case 'L':
				strcpy(lx, &(*argv)[2]);
				if (verbose) { printf("uno: using %s for uno_local\n", lx); }
				strcpy(loc_args, lx);
				strcat(loc_args, " ");
				break;

			case 'G':
				strcpy(gx, &(*argv)[2]);
				if (verbose) { printf("uno: using %s for uno_global\n", gx); }
				strcpy(glob_cmd, gx);
				strcat(glob_cmd, " ");
				break;

			case 'W':
				w_dir = malloc(strlen(*argv)+1-2);
				strcpy(w_dir, &(*argv)[2]);
				pass_loc(*argv, "");
				break;
			case 'a':	/* l */
				pass_loc("-allerr ", NULL);
				break;
			case 'e':	/* add the else-chain and compound checkers */
				pass_loc("-else ", NULL);
		/*		pass_loc("-compound ", NULL);	* not working */
				break;
			case 'g':	/* g */
				argv++; argc--;
				set_glb(*argv);
				break;
			case 'c':	/* absorb cc args */
			case 'l':	/* l */
				localonly = 1;
				pass_loc("-localonly ", NULL);
				break;
			case 'm':	/* l */
				argv++; argc--;
				pass_loc("-master ", *argv);
				break;
			case 'n':	/* l */
				pass_loc("-nopre ", NULL);
				break;
			case 'o':	/* absorb cc args */
				argv++; argc--;
				break;
			case 'p':	/* l */
				argv++; argc--;
				pass_loc("-prop ", *argv);
				break;
			case 'q':
				quiet = 1;
				break;

			case 'r':	/* experimental XXX */
				pass_loc("-rules ", NULL);
				localonly = 1;
				break;

			case 's':	/* l */
				pass_loc("-s ", NULL);
				localonly = 1;
				break;
			case 't':	/* g */
				strcat(glob_cmd, "-l ");
				break;	/* g */
			case 'V':	/* l */
				version_info();
				break;
			case 'v':	/* g,l */
				pass_loc("-v ", NULL);
				strcat(glob_cmd, "-v ");
				verbose = 1;
				break;
			case 'w':	/* g,l */
				pass_loc("-picky ", NULL);
				strcat(glob_cmd, "-l ");
			case 'u':	/* g,l  @uno_suppress: fall through on switch */
				usecheck = 1;
				pass_loc("-use ", NULL);
				strcat(glob_cmd, "-u ");
				break;
			case 'x':	/* l */
				argv++; argc--;
				pass_loc("-exit ", *argv);
				break;
			default :
				fprintf(stderr, "uno: saw -%c\n", (*argv)[1]);
				uno_usage();
				break;
			}
		} else if (strstr(*argv, ".c") != NULL)
		{	add_target(*argv);
		} else
		{	uno_usage();
	}	}

	if (!fnames)
	{	uno_usage();
	}

	signal(SIGINT, cleanup);

	glob_base = (int) strlen(glob_cmd);

	run_uno();

	if (!usecheck && !quiet)
	{	printf("uno:\tcheck completed, try 'uno -h' for different checks\n");
	}

	return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %r15
movl %edi, %r12d
movups 0xf03(%rip), %xmm0      # 0x2167
movups %xmm0, 0x2e6e(%rip)     # 0x40d9
movups 0xeec(%rip), %xmm0      # 0x215e
movaps %xmm0, 0x2e57(%rip)     # 0x40d0
leaq 0x2e50(%rip), %r14      # 0x40d0
movq %r14, %rdi
callq 0x1060
movw $0x20, %bx
movw %bx, (%rax,%r14)
movups 0xedf(%rip), %xmm0      # 0x2177
movaps %xmm0, 0x3e31(%rip)     # 0x50d0
movups 0xedb(%rip), %xmm0      # 0x2181
movups %xmm0, 0x3e2d(%rip)     # 0x50da
leaq 0x3e1c(%rip), %r14      # 0x50d0
movq %r14, %rdi
callq 0x1060
movw %bx, (%rax,%r14)
movq %r14, %rbx
decl %r12d
testl %r12d, %r12d
jle 0x175e
movq %rbx, %r14
leal -0x1(%r12), %r13d
leaq 0x8(%r15), %rsi
movq 0x8(%r15), %rbp
movb (%rbp), %bl
cmpb $0x2d, %bl
jne 0x1322
movzbl 0x1(%rbp), %eax
leal -0x43(%rax), %ecx
cmpl $0x35, %ecx
ja 0x198b
movq %r14, %rbx
leaq 0xd02(%rip), %rdx       # 0x2004
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
movq %rbp, %rdi
movq %rsi, %r15
leaq 0x112b(%rip), %rsi      # 0x2443
callq 0x19f6
movl %r13d, %r12d
jmp 0x12c7
movq %rsi, %r15
movq %rbp, %rdi
leaq 0xe92(%rip), %rsi       # 0x21c1
callq 0x1140
testq %rax, %rax
je 0x1971
movl %r13d, %r12d
cmpb $0x5f, %bl
movq %r14, %rbx
je 0x12c7
pushq $0x10
popq %rdi
movq %r15, %r14
callq 0x10e0
movq %rax, %r15
movq %rbp, %rdi
callq 0x1060
leaq 0x1(%rax), %rdi
callq 0x10e0
movq %rax, (%r15)
movq %rax, %rdi
movq %rbp, %rsi
callq 0x1040
movq 0x4d70(%rip), %rax      # 0x60f0
movq %rax, 0x8(%r15)
movq %r15, 0x4d65(%rip)      # 0x60f0
movl %r13d, %r12d
movq %r14, %r15
jmp 0x12c7
movb $0x1, 0x4d43(%rip)      # 0x60e0
leaq 0x2d2c(%rip), %r14      # 0x40d0
movq %r14, %rdi
movq %rsi, %r15
callq 0x1060
movabsq $0x6e6f6c61636f6c2d, %rcx # imm = 0x6E6F6C61636F6C2D
movq %rcx, (%rax,%r14)
movl $0x20796c, 0x8(%rax,%r14) # imm = 0x20796C
movl %r13d, %r12d
jmp 0x12c7
leaq 0x2cfb(%rip), %r14      # 0x40d0
movq %r14, %rdi
movq %rsi, %r15
callq 0x1060
movl $0x20732d, (%rax,%r14)  # imm = 0x20732D
jmp 0x140a
leaq 0x2cdf(%rip), %r14      # 0x40d0
movq %r14, %rdi
movq %rsi, %r15
callq 0x1060
movabsq $0x2073656c75722d, %rcx # imm = 0x2073656C75722D
movq %rcx, (%rax,%r14)
movb $0x1, 0x4ccf(%rip)      # 0x60e0
movl %r13d, %r12d
jmp 0x12c7
leaq 0x2cb0(%rip), %r14      # 0x40d0
movq %r14, %rdi
movq %rsi, %r15
callq 0x1060
movl $0x20762d, %ebp         # imm = 0x20762D
movl %ebp, (%rax,%r14)
movq %rbx, %rdi
callq 0x1060
movl %ebp, (%rax,%rbx)
movb $0x1, 0x4c8a(%rip)      # 0x60d0
movl %r13d, %r12d
jmp 0x12c7
movq %rbx, %rdi
movq %rsi, %r15
callq 0x1060
movl $0x206c2d, (%rax,%rbx)  # imm = 0x206C2D
movl %r13d, %r12d
jmp 0x12c7
addl $-0x2, %r12d
movq 0x10(%r15), %rsi
addq $0x10, %r15
leaq 0xcb8(%rip), %rdi       # 0x2133
callq 0x19f6
jmp 0x12c7
movq %rbp, %rdi
movq %rsi, %r15
callq 0x1060
leaq -0x1(%rax), %rdi
callq 0x10e0
movq %rax, 0x4c38(%rip)      # 0x60d8
addq $0x2, %rbp
movq %rax, %rdi
movq %rbp, %rsi
callq 0x1040
movq (%r15), %rdi
jmp 0x1311
leaq 0x2c12(%rip), %r14      # 0x40d0
movq %r14, %rdi
movq %rsi, %r15
callq 0x1060
movl $0x736c652d, (%rax,%r14) # imm = 0x736C652D
movl $0x206573, 0x3(%rax,%r14) # imm = 0x206573
movl %r13d, %r12d
jmp 0x12c7
movq %rsi, %r15
addq $0x2, %rbp
leaq 0xc6e(%rip), %rdi       # 0x215e
movq %rbp, %rsi
callq 0x1040
cmpb $0x1, 0x4bd1(%rip)      # 0x60d0
jne 0x1516
leaq 0xbd4(%rip), %rdi       # 0x20dc
leaq 0xc4f(%rip), %rsi       # 0x215e
xorl %eax, %eax
callq 0x1080
movups 0xc4a(%rip), %xmm0      # 0x2167
movups %xmm0, 0x2bb5(%rip)     # 0x40d9
movups 0xc33(%rip), %xmm0      # 0x215e
movaps %xmm0, 0x2b9e(%rip)     # 0x40d0
leaq 0x2b97(%rip), %r14      # 0x40d0
movq %r14, %rdi
callq 0x1060
movw $0x20, (%rax,%r14)
movl %r13d, %r12d
jmp 0x12c7
movb $0x1, 0x4b8d(%rip)      # 0x60e4
movl %r13d, %r12d
movq %rsi, %r15
jmp 0x12c7
addq $0x10, %r15
addl $-0x2, %r12d
jmp 0x12c7
addl $-0x2, %r12d
movq 0x10(%r15), %rsi
addq $0x10, %r15
leaq 0xbc7(%rip), %rdi       # 0x2149
callq 0x19f6
jmp 0x12c7
leaq 0x2b3d(%rip), %r14      # 0x40d0
movq %r14, %rdi
movq %rsi, %r15
callq 0x1060
movabsq $0x207272656c6c612d, %rcx # imm = 0x207272656C6C612D
movq %rcx, (%rax,%r14)
movb $0x0, 0x8(%rax,%r14)
movl %r13d, %r12d
jmp 0x12c7
addl $-0x2, %r12d
movq 0x10(%r15), %rsi
addq $0x10, %r15
leaq 0xb6f(%rip), %rdi       # 0x213c
callq 0x19f6
jmp 0x12c7
movq %rsi, %r15
addq $0x2, %rbp
leaq 0xb92(%rip), %rdi       # 0x2177
movq %rbp, %rsi
callq 0x1040
cmpb $0x1, 0x4adc(%rip)      # 0x60d0
jne 0x160b
leaq 0xafc(%rip), %rdi       # 0x20f9
leaq 0xb73(%rip), %rsi       # 0x2177
xorl %eax, %eax
callq 0x1080
movups 0xb6f(%rip), %xmm0      # 0x2181
movups %xmm0, 0x3ac1(%rip)     # 0x50da
movups 0xb57(%rip), %xmm0      # 0x2177
movaps %xmm0, 0x3aa9(%rip)     # 0x50d0
movq %rbx, %rdi
callq 0x1060
movw $0x20, (%rax,%rbx)
movl %r13d, %r12d
jmp 0x12c7
movq 0x10(%r15), %rbp
incl 0x4ab5(%rip)            # 0x60fc
leaq 0xb6e(%rip), %rdi       # 0x21bc
movl $0x1a4, %esi            # imm = 0x1A4
callq 0x1100
testl %eax, %eax
js 0x1976
movl %eax, %edi
callq 0x10b0
leaq 0x4a92(%rip), %r14      # 0x6100
movq %r14, %rdi
leaq 0xb38(%rip), %rsi       # 0x21b0
leaq 0xadf(%rip), %rdx       # 0x215e
movq %rbp, %rcx
xorl %eax, %eax
callq 0x1110
cmpb $0x1, 0x4a40(%rip)      # 0x60d0
jne 0x16a3
leaq 0xb2b(%rip), %rdi       # 0x21c4
movq %r14, %rsi
xorl %eax, %eax
callq 0x1080
addq $0x10, %r15
addl $-0x2, %r12d
movq %r14, %rdi
callq 0x1070
leaq 0xb02(%rip), %rdi       # 0x21bc
callq 0x1030
jmp 0x12c7
leaq 0x2a05(%rip), %r14      # 0x40d0
movq %r14, %rdi
movq %rsi, %r15
callq 0x1060
movabsq $0x206572706f6e2d, %rcx # imm = 0x206572706F6E2D
movq %rcx, (%rax,%r14)
movl %r13d, %r12d
jmp 0x12c7
leaq 0x29dd(%rip), %r14      # 0x40d0
movq %r14, %rdi
movq %rsi, %r15
callq 0x1060
movabsq $0x20796b6369702d, %rcx # imm = 0x20796B6369702D
movq %rcx, (%rax,%r14)
movq %rbx, %rdi
callq 0x1060
movq %r15, %rsi
movl $0x206c2d, (%rax,%rbx)  # imm = 0x206C2D
movb $0x1, 0x49c3(%rip)      # 0x60e8
leaq 0x29a4(%rip), %r14      # 0x40d0
movq %r14, %rdi
movq %rsi, %r15
callq 0x1060
movl $0x6573752d, (%rax,%r14) # imm = 0x6573752D
movw $0x20, 0x4(%rax,%r14)
movq %rbx, %rdi
callq 0x1060
movl $0x20752d, (%rax,%rbx)  # imm = 0x20752D
movl %r13d, %r12d
jmp 0x12c7
cmpq $0x0, 0x498a(%rip)      # 0x60f0
je 0x1971
leaq 0x541(%rip), %rsi       # 0x1cb4
pushq $0x2
popq %rdi
callq 0x10c0
movq %rbx, %rdi
callq 0x1060
movl %eax, 0x496f(%rip)      # 0x60f8
movq 0x4960(%rip), %r13      # 0x60f0
leaq 0x4969(%rip), %r14      # 0x6100
leaq 0x2932(%rip), %r15      # 0x40d0
leaq 0xf02(%rip), %r12       # 0x26a7
pushq $0x2e
popq %rbp
testq %r13, %r13
je 0x184f
movq %r14, %rdi
movq %r15, %rsi
callq 0x1040
movq (%r13), %rsi
movq %r14, %rdi
callq 0x10f0
cmpb $0x1, 0x4901(%rip)      # 0x60d0
jne 0x17f8
movq %r12, %rdi
movq %r14, %rsi
xorl %eax, %eax
callq 0x1080
cmpb $0x1, 0x48eb(%rip)      # 0x60d0
jne 0x17f8
leaq 0x9d6(%rip), %rdi       # 0x21c4
movq %r14, %rsi
xorl %eax, %eax
callq 0x1080
movq %r14, %rdi
callq 0x1070
movq 0x48e9(%rip), %r13      # 0x60f0
movq (%r13), %rsi
movq %rbx, %rdi
callq 0x10f0
movq %rbx, %rdi
movl %ebp, %esi
callq 0x1090
testq %rax, %rax
je 0x194d
movb $0x0, (%rax)
movq %rbx, %rdi
callq 0x1060
movl $0x6f6e752e, (%rax,%rbx) # imm = 0x6F6E752E
movw $0x20, 0x4(%rax,%rbx)
movq 0x8(%r13), %r13
movq %r13, 0x48a6(%rip)      # 0x60f0
jmp 0x17a8
cmpb $0x0, 0x488a(%rip)      # 0x60e0
jne 0x1919
cmpl $0x0, 0x4899(%rip)      # 0x60fc
je 0x1883
movq %rbx, %rdi
callq 0x1060
movabsq $0x6e752e5f6f6e755f, %rcx # imm = 0x6E752E5F6F6E755F
movq %rcx, (%rax,%rbx)
movl $0x206f6e, 0x7(%rax,%rbx) # imm = 0x206F6E
movq 0x484e(%rip), %rbx      # 0x60d8
testq %rbx, %rbx
je 0x18ef
leaq 0x383a(%rip), %r15      # 0x50d0
movq %r15, %rdi
callq 0x1060
movq %rax, %r14
movq %rbx, %rdi
callq 0x1060
leaq (%r14,%rax), %rdi
addq $0x5, %rdi
callq 0x10e0
movq %rax, %r14
leaq 0xddc(%rip), %rsi       # 0x269c
movq %rax, %rdi
movq %rbx, %rdx
movq %r15, %rcx
xorl %eax, %eax
callq 0x1110
cmpb $0x1, 0x47f9(%rip)      # 0x60d0
jne 0x18ea
leaq 0x8e4(%rip), %rdi       # 0x21c4
movq %r14, %rsi
xorl %eax, %eax
callq 0x1080
movq %r14, %rdi
jmp 0x1914
cmpb $0x1, 0x47da(%rip)      # 0x60d0
jne 0x190d
leaq 0x8c5(%rip), %rdi       # 0x21c4
leaq 0x37ca(%rip), %rsi      # 0x50d0
xorl %eax, %eax
callq 0x1080
leaq 0x37bc(%rip), %rdi      # 0x50d0
callq 0x1070
callq 0x1cb4
cmpb $0x0, 0x47c3(%rip)      # 0x60e8
jne 0x193c
testb $0x1, 0x47b6(%rip)      # 0x60e4
jne 0x193c
leaq 0xd9a(%rip), %rdi       # 0x26d1
callq 0x1050
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x26a4(%rip), %rax      # 0x3ff8
movq (%rax), %rcx
leaq 0xd53(%rip), %rdi       # 0x26b1
pushq $0x14
popq %rsi
pushq $0x1
popq %rdx
callq 0x1130
pushq $0x1
popq %rdi
callq 0x1120
callq 0x1a35
movq 0x267b(%rip), %rax      # 0x3ff8
movq (%rax), %rcx
leaq 0x80a(%rip), %rdi       # 0x2191
pushq $0x1e
jmp 0x1960
movsbl %al, %edx
movq 0x2663(%rip), %rax      # 0x3ff8
movq (%rax), %rdi
leaq 0x7b1(%rip), %rsi       # 0x2150
xorl %eax, %eax
callq 0x10d0
callq 0x1a35
leaq 0x271e(%rip), %rbx      # 0x40d0
movq %rbx, %rdi
callq 0x1060
movw $0x562d, (%rax,%rbx)    # imm = 0x562D
movb $0x0, 0x2(%rax,%rbx)
cmpb $0x1, 0x4704(%rip)      # 0x60d0
jne 0x19e3
leaq 0x7ef(%rip), %rdi       # 0x21c4
leaq 0x26f4(%rip), %rsi      # 0x40d0
xorl %eax, %eax
callq 0x1080
leaq 0x26e6(%rip), %rdi      # 0x40d0
callq 0x1070
xorl %edi, %edi
callq 0x1120