// File: /workspace/github_c_makefile_star2_O2/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_type_PrimType_tyconzeqname
static struct mirth_name_QName* mw_mirth_type_PrimType_tyconzeqname (struct mirth_mirth_zaMirth* in_zaMirth_1, enum mirth_type_PrimType in_PrimType_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* branch_zaMirth_5;
	struct mirth_name_QName* branch_QName_6;
	switch (in_PrimType_2) {
		case mirth_type_PrimType_KIND: {
			STR* v7;
			STRLIT(v7, "KIND", 4);
			INT v8 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v9;
			struct mirth_name_QName* v10 = mw_mirth_name_QName_Prim(in_zaMirth_1, v7, v8, &v9);
			branch_QName_6 = v10;
			branch_zaMirth_5 = v9;
		} break;
		case mirth_type_PrimType_TYPE: {
			STR* v11;
			STRLIT(v11, "TYPE", 4);
			INT v12 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v13;
			struct mirth_name_QName* v14 = mw_mirth_name_QName_Prim(in_zaMirth_1, v11, v12, &v13);
			branch_QName_6 = v14;
			branch_zaMirth_5 = v13;
		} break;
		case mirth_type_PrimType_STACK: {
			STR* v15;
			STRLIT(v15, "STACK", 5);
			INT v16 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v17;
			struct mirth_name_QName* v18 = mw_mirth_name_QName_Prim(in_zaMirth_1, v15, v16, &v17);
			branch_QName_6 = v18;
			branch_zaMirth_5 = v17;
		} break;
		case mirth_type_PrimType_RESOURCE: {
			STR* v19;
			STRLIT(v19, "RESOURCE", 8);
			INT v20 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v21;
			struct mirth_name_QName* v22 = mw_mirth_name_QName_Prim(in_zaMirth_1, v19, v20, &v21);
			branch_QName_6 = v22;
			branch_zaMirth_5 = v21;
		} break;
		case mirth_type_PrimType_Bool: {
			STR* v23;
			STRLIT(v23, "Bool", 4);
			INT v24 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v25;
			struct mirth_name_QName* v26 = mw_mirth_name_QName_Prim(in_zaMirth_1, v23, v24, &v25);
			branch_QName_6 = v26;
			branch_zaMirth_5 = v25;
		} break;
		case mirth_type_PrimType_Int: {
			STR* v27;
			STRLIT(v27, "Int", 3);
			INT v28 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v29;
			struct mirth_name_QName* v30 = mw_mirth_name_QName_Prim(in_zaMirth_1, v27, v28, &v29);
			branch_QName_6 = v30;
			branch_zaMirth_5 = v29;
		} break;
		case mirth_type_PrimType_Nat: {
			STR* v31;
			STRLIT(v31, "Nat", 3);
			INT v32 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v33;
			struct mirth_name_QName* v34 = mw_mirth_name_QName_Prim(in_zaMirth_1, v31, v32, &v33);
			branch_QName_6 = v34;
			branch_zaMirth_5 = v33;
		} break;
		case mirth_type_PrimType_U8: {
			STR* v35;
			STRLIT(v35, "U8", 2);
			INT v36 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v37;
			struct mirth_name_QName* v38 = mw_mirth_name_QName_Prim(in_zaMirth_1, v35, v36, &v37);
			branch_QName_6 = v38;
			branch_zaMirth_5 = v37;
		} break;
		case mirth_type_PrimType_U16: {
			STR* v39;
			STRLIT(v39, "U16", 3);
			INT v40 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v41;
			struct mirth_name_QName* v42 = mw_mirth_name_QName_Prim(in_zaMirth_1, v39, v40, &v41);
			branch_QName_6 = v42;
			branch_zaMirth_5 = v41;
		} break;
		case mirth_type_PrimType_U32: {
			STR* v43;
			STRLIT(v43, "U32", 3);
			INT v44 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v45;
			struct mirth_name_QName* v46 = mw_mirth_name_QName_Prim(in_zaMirth_1, v43, v44, &v45);
			branch_QName_6 = v46;
			branch_zaMirth_5 = v45;
		} break;
		case mirth_type_PrimType_U64: {
			STR* v47;
			STRLIT(v47, "U64", 3);
			INT v48 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v49;
			struct mirth_name_QName* v50 = mw_mirth_name_QName_Prim(in_zaMirth_1, v47, v48, &v49);
			branch_QName_6 = v50;
			branch_zaMirth_5 = v49;
		} break;
		case mirth_type_PrimType_I8: {
			STR* v51;
			STRLIT(v51, "I8", 2);
			INT v52 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v53;
			struct mirth_name_QName* v54 = mw_mirth_name_QName_Prim(in_zaMirth_1, v51, v52, &v53);
			branch_QName_6 = v54;
			branch_zaMirth_5 = v53;
		} break;
		case mirth_type_PrimType_I16: {
			STR* v55;
			STRLIT(v55, "I16", 3);
			INT v56 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v57;
			struct mirth_name_QName* v58 = mw_mirth_name_QName_Prim(in_zaMirth_1, v55, v56, &v57);
			branch_QName_6 = v58;
			branch_zaMirth_5 = v57;
		} break;
		case mirth_type_PrimType_I32: {
			STR* v59;
			STRLIT(v59, "I32", 3);
			INT v60 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v61;
			struct mirth_name_QName* v62 = mw_mirth_name_QName_Prim(in_zaMirth_1, v59, v60, &v61);
			branch_QName_6 = v62;
			branch_zaMirth_5 = v61;
		} break;
		case mirth_type_PrimType_I64: {
			STR* v63;
			STRLIT(v63, "I64", 3);
			INT v64 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v65;
			struct mirth_name_QName* v66 = mw_mirth_name_QName_Prim(in_zaMirth_1, v63, v64, &v65);
			branch_QName_6 = v66;
			branch_zaMirth_5 = v65;
		} break;
		case mirth_type_PrimType_F32: {
			STR* v67;
			STRLIT(v67, "F32", 3);
			INT v68 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v69;
			struct mirth_name_QName* v70 = mw_mirth_name_QName_Prim(in_zaMirth_1, v67, v68, &v69);
			branch_QName_6 = v70;
			branch_zaMirth_5 = v69;
		} break;
		case mirth_type_PrimType_F64: {
			STR* v71;
			STRLIT(v71, "F64", 3);
			INT v72 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v73;
			struct mirth_name_QName* v74 = mw_mirth_name_QName_Prim(in_zaMirth_1, v71, v72, &v73);
			branch_QName_6 = v74;
			branch_zaMirth_5 = v73;
		} break;
		case mirth_type_PrimType_Str: {
			STR* v75;
			STRLIT(v75, "Str", 3);
			INT v76 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v77;
			struct mirth_name_QName* v78 = mw_mirth_name_QName_Prim(in_zaMirth_1, v75, v76, &v77);
			branch_QName_6 = v78;
			branch_zaMirth_5 = v77;
		} break;
		case mirth_type_PrimType_Ptr: {
			STR* v79;
			STRLIT(v79, "Ptr", 3);
			INT v80 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v81;
			struct mirth_name_QName* v82 = mw_mirth_name_QName_Prim(in_zaMirth_1, v79, v80, &v81);
			branch_QName_6 = v82;
			branch_zaMirth_5 = v81;
		} break;
		case mirth_type_PrimType_Array: {
			STR* v83;
			STRLIT(v83, "Array", 5);
			INT v84 = WRAP_I63(1LL);
			struct mirth_mirth_zaMirth* v85;
			struct mirth_name_QName* v86 = mw_mirth_name_QName_Prim(in_zaMirth_1, v83, v84, &v85);
			branch_QName_6 = v86;
			branch_zaMirth_5 = v85;
		} break;
		case mirth_type_PrimType_World: {
			STR* v87;
			STRLIT(v87, "+World", 6);
			INT v88 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v89;
			struct mirth_name_QName* v90 = mw_mirth_name_QName_Prim(in_zaMirth_1, v87, v88, &v89);
			branch_QName_6 = v90;
			branch_zaMirth_5 = v89;
		} break;
		case mirth_type_PrimType_Debug: {
			STR* v91;
			STRLIT(v91, "+Debug", 6);
			INT v92 = WRAP_I63(0LL);
			struct mirth_mirth_zaMirth* v93;
			struct mirth_name_QName* v94 = mw_mirth_name_QName_Prim(in_zaMirth_1, v91, v92, &v93);
			branch_QName_6 = v94;
			branch_zaMirth_5 = v93;
		} break;
		default: {
			do_panic(str_make("unexpected fallthrough in match\n", 32));
		}
	}
	*out_zaMirth_3 = branch_zaMirth_5;
	return branch_QName_6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
cmpl $0x15, %esi
ja 0x184c5
movq %rdx, %rbx
movq %rdi, %r14
movl %esi, %eax
leaq 0xba35a(%rip), %rcx     # 0xd23e4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x10f3d76(%rip), %rsi   # 0x110be10
testq %rsi, %rsi
jne 0x1843f
leaq 0xd568d(%rip), %rdi     # 0xed737
pushq $0x4
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3d54(%rip)   # 0x110be10
jmp 0x1843f
movq 0x10f3dc8(%rip), %rsi   # 0x110be90
testq %rsi, %rsi
jne 0x1843f
leaq 0xd6b22(%rip), %rdi     # 0xeebfa
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3da6(%rip)   # 0x110be90
jmp 0x1843f
movq 0x10f3d8a(%rip), %rsi   # 0x110be80
testq %rsi, %rsi
jne 0x1843f
leaq 0xd56a9(%rip), %rdi     # 0xed7af
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3d68(%rip)   # 0x110be80
jmp 0x1843f
movq 0x10f3d44(%rip), %rsi   # 0x110be68
testq %rsi, %rsi
jne 0x1843f
leaq 0xd5664(%rip), %rdi     # 0xed798
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3d22(%rip)   # 0x110be68
jmp 0x1843f
movq 0x10f3cde(%rip), %rsi   # 0x110be30
testq %rsi, %rsi
jne 0x1843f
leaq 0xc2d38(%rip), %rdi     # 0xdae9a
pushq $0x4
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3cbc(%rip)   # 0x110be30
jmp 0x1843f
movq 0x10f3cf0(%rip), %rsi   # 0x110be70
testq %rsi, %rsi
jne 0x1843f
leaq 0xd560f(%rip), %rdi     # 0xed79f
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3cce(%rip)   # 0x110be70
jmp 0x1843f
movq 0x10f3caa(%rip), %rsi   # 0x110be58
testq %rsi, %rsi
jne 0x1843f
leaq 0xd55ca(%rip), %rdi     # 0xed788
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3c88(%rip)   # 0x110be58
jmp 0x1843f
movq 0x10f3c44(%rip), %rsi   # 0x110be20
testq %rsi, %rsi
jne 0x1843f
leaq 0xd555d(%rip), %rdi     # 0xed749
pushq $0x5
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3c22(%rip)   # 0x110be20
jmp 0x1843f
movq 0x10f3c7e(%rip), %rsi   # 0x110be88
testq %rsi, %rsi
jne 0x1843f
leaq 0xd69f4(%rip), %rdi     # 0xeec0e
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3c5c(%rip)   # 0x110be88
jmp 0x1843f
movq 0x10f3bf0(%rip), %rsi   # 0x110be28
testq %rsi, %rsi
jne 0x1843f
leaq 0xd550b(%rip), %rdi     # 0xed753
pushq $0x8
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3bce(%rip)   # 0x110be28
jmp 0x1843f
movq 0x10f3be2(%rip), %rsi   # 0x110be48
testq %rsi, %rsi
jne 0x1843f
leaq 0xd5503(%rip), %rdi     # 0xed779
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3bc0(%rip)   # 0x110be48
jmp 0x1843f
movq 0x10f3b84(%rip), %rsi   # 0x110be18
testq %rsi, %rsi
jne 0x1843f
leaq 0xd549c(%rip), %rdi     # 0xed740
pushq $0x4
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3b62(%rip)   # 0x110be18
jmp 0x1843f
movq 0x10f3bde(%rip), %rsi   # 0x110bea0
testq %rsi, %rsi
jne 0x1843f
leaq 0xbf810(%rip), %rdi     # 0xd7ae2
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3bbc(%rip)   # 0x110bea0
jmp 0x1843f
movq 0x10f3bc0(%rip), %rsi   # 0x110beb0
testq %rsi, %rsi
jne 0x1843f
leaq 0xbf329(%rip), %rdi     # 0xd7629
pushq $0x6
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3b9e(%rip)   # 0x110beb0
jmp 0x1843f
movq 0x10f3b1a(%rip), %rsi   # 0x110be38
testq %rsi, %rsi
jne 0x1843f
leaq 0xd6813(%rip), %rdi     # 0xeeb41
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3af8(%rip)   # 0x110be38
jmp 0x1843f
movq 0x10f3b6c(%rip), %rsi   # 0x110beb8
testq %rsi, %rsi
jne 0x1843f
leaq 0xbf2d4(%rip), %rdi     # 0xd7630
pushq $0x6
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3b4a(%rip)   # 0x110beb8
jmp 0x1843f
movq 0x10f3afe(%rip), %rsi   # 0x110be78
testq %rsi, %rsi
jne 0x1843f
leaq 0xd541d(%rip), %rdi     # 0xed7a7
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3adc(%rip)   # 0x110be78
jmp 0x1843f
movq 0x10f3a98(%rip), %rsi   # 0x110be40
testq %rsi, %rsi
jne 0x1843f
leaq 0xd6775(%rip), %rdi     # 0xeeb2d
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3a76(%rip)   # 0x110be40
jmp 0x1843f
movq 0x10f3ac5(%rip), %rsi   # 0x110be98
testq %rsi, %rsi
jne 0x1843f
leaq 0xbf246(%rip), %rdi     # 0xd7625
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3aa7(%rip)   # 0x110be98
jmp 0x1843f
movq 0x10f3a66(%rip), %rsi   # 0x110be60
testq %rsi, %rsi
jne 0x1843f
leaq 0xd538a(%rip), %rdi     # 0xed790
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3a48(%rip)   # 0x110be60
jmp 0x1843f
movq 0x10f3a2f(%rip), %rsi   # 0x110be50
testq %rsi, %rsi
jne 0x1843f
leaq 0xd5353(%rip), %rdi     # 0xed780
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3a11(%rip)   # 0x110be50
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq %rsi, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x1845c
incl (%rax)
pushq $0x1
popq %rdx
leaq -0x20(%rbp), %r15
movq %r14, %rdi
movq %r15, %rcx
callq 0x195fd
movq (%r15), %rcx
movq %rcx, (%rbx)
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movq 0x10f3a22(%rip), %rsi   # 0x110bea8
testq %rsi, %rsi
jne 0x184a4
leaq 0xbd6fa(%rip), %rdi     # 0xd5b8c
pushq $0x5
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10f3a04(%rip)   # 0x110bea8
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq %rsi, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x184c1
incl (%rax)
pushq $0x3
jmp 0x1845e
leaq 0xbc341(%rip), %rdi     # 0xd480d
pushq $0x20
popq %rsi
callq 0x8a21
movq %rax, %rdi
callq 0x8cc6