// File: /workspace/github_c_makefile_star2_O3/ArtifexSoftware[P]mujs/./jsparse.c
// Function: assignment
static js_Ast *assignment(js_State *J, int notin)
{
	js_Ast *a = conditional(J, notin);
	int line = J->lexline;
	INCREC();
	if (jsP_accept(J, '=')) a = EXP2(ASS, a, assignment(J, notin));
	else if (jsP_accept(J, TK_MUL_ASS)) a = EXP2(ASS_MUL, a, assignment(J, notin));
	else if (jsP_accept(J, TK_DIV_ASS)) a = EXP2(ASS_DIV, a, assignment(J, notin));
	else if (jsP_accept(J, TK_MOD_ASS)) a = EXP2(ASS_MOD, a, assignment(J, notin));
	else if (jsP_accept(J, TK_ADD_ASS)) a = EXP2(ASS_ADD, a, assignment(J, notin));
	else if (jsP_accept(J, TK_SUB_ASS)) a = EXP2(ASS_SUB, a, assignment(J, notin));
	else if (jsP_accept(J, TK_SHL_ASS)) a = EXP2(ASS_SHL, a, assignment(J, notin));
	else if (jsP_accept(J, TK_SHR_ASS)) a = EXP2(ASS_SHR, a, assignment(J, notin));
	else if (jsP_accept(J, TK_USHR_ASS)) a = EXP2(ASS_USHR, a, assignment(J, notin));
	else if (jsP_accept(J, TK_AND_ASS)) a = EXP2(ASS_BITAND, a, assignment(J, notin));
	else if (jsP_accept(J, TK_XOR_ASS)) a = EXP2(ASS_BITXOR, a, assignment(J, notin));
	else if (jsP_accept(J, TK_OR_ASS)) a = EXP2(ASS_BITOR, a, assignment(J, notin));
	DECREC();
	return a;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x10, %rsp
movl %esi, %ebp
movq %rdi, %rbx
callq 0x24994
movq %rax, %r14
movl 0x60(%rbx), %r15d
cmpl $0x3f, 0x74(%rbx)
jne 0x2487e
movq %rbx, %rdi
callq 0xe333
movl %eax, 0x68(%rbx)
movl %eax, 0x74(%rbx)
movl 0x70(%rbx), %eax
leal 0x1(%rax), %ecx
movl %ecx, 0x70(%rbx)
cmpl $0x190, %eax            # imm = 0x190
jge 0x24963
movq %rbx, %rdi
xorl %esi, %esi
callq 0x247dd
movl 0x74(%rbx), %edi
cmpl $0x3a, %edi
jne 0x24974
movq %rax, %r12
movq %rbx, %rdi
callq 0xe333
movl %eax, 0x68(%rbx)
movl %eax, 0x74(%rbx)
movq %rbx, %rdi
movl %ebp, %esi
callq 0x247dd
decl 0x70(%rbx)
movq $0x0, (%rsp)
movq %rbx, %rdi
movl $0x38, %esi
movl %r15d, %edx
movq %r14, %rcx
movq %r12, %r8
movq %rax, %r9
callq 0x1225c
movq %rax, %r14
movl 0x60(%rbx), %r15d
movl 0x70(%rbx), %eax
leal 0x1(%rax), %ecx
movl %ecx, 0x70(%rbx)
cmpl $0x190, %eax            # imm = 0x190
jge 0x24963
movl 0x74(%rbx), %eax
leal -0x10f(%rax), %ecx
cmpl $0xa, %ecx
ja 0x248b8
leaq 0x7369(%rip), %rax      # 0x2bc10
movslq (%rax,%rcx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl $0x3d, %r12d
jmp 0x24916
movl $0x39, %r12d
cmpl $0x3d, %eax
je 0x24916
jmp 0x24950
movl $0x3c, %r12d
jmp 0x24916
movl $0x44, %r12d
jmp 0x24916
movl $0x3a, %r12d
jmp 0x24916
movl $0x3b, %r12d
jmp 0x24916
movl $0x41, %r12d
jmp 0x24916
movl $0x3e, %r12d
jmp 0x24916
movl $0x3f, %r12d
jmp 0x24916
movl $0x40, %r12d
jmp 0x24916
movl $0x43, %r12d
jmp 0x24916
movl $0x42, %r12d
movq %rbx, %rdi
callq 0xe333
movl %eax, 0x68(%rbx)
movl %eax, 0x74(%rbx)
movq %rbx, %rdi
movl %ebp, %esi
callq 0x247dd
movq $0x0, (%rsp)
movq %rbx, %rdi
movl %r12d, %esi
movl %r15d, %edx
movq %r14, %rcx
movq %rax, %r8
xorl %r9d, %r9d
callq 0x1225c
movq %rax, %r14
decl 0x70(%rbx)
movq %r14, %rax
addq $0x10, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
leaq 0x10350(%rip), %rsi     # 0x34cba
movq %rbx, %rdi
xorl %eax, %eax
callq 0x240fd
callq 0xe17c
leaq 0x102b2(%rip), %rsi     # 0x34c32
leaq 0xfb78(%rip), %rcx      # 0x344ff
movq %rbx, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0x240fd