	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ucma_ib_init                   ## -- Begin function ucma_ib_init
	.p2align	4, 0x90
_ucma_ib_init:                          ## @ucma_ib_init
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%rbx
	subq	$24, %rsp
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	cmpb	$0, _ucma_ib_init.init(%rip)
	jne	LBB0_8
## %bb.1:
	movq	_acm_lock@GOTPCREL(%rip), %rdi
	callq	_pthread_mutex_lock
	cmpb	$0, _ucma_ib_init.init(%rip)
	jne	LBB0_7
## %bb.2:
	xorl	%eax, %eax
	callq	_ucma_set_server_port
	testl	%eax, %eax
	je	LBB0_6
## %bb.3:
	movq	_AF_INET@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movq	_SOCK_STREAM@GOTPCREL(%rip), %rax
	movq	_SOCK_CLOEXEC@GOTPCREL(%rip), %rcx
	movl	(%rcx), %esi
	orl	(%rax), %esi
	movq	_IPPROTO_TCP@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_socket
	movq	_sock@GOTPCREL(%rip), %r15
	movl	%eax, (%r15)
	testl	%eax, %eax
	js	LBB0_6
## %bb.4:
	leaq	-40(%rbp), %r14
	movq	%r14, %rdi
	xorl	%esi, %esi
	movl	$12, %edx
	callq	_memset
	movl	(%rbx), %eax
	movl	%eax, -32(%rbp)
	movq	_INADDR_LOOPBACK@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_htobe32
	movl	%eax, -36(%rbp)
	movq	_server_port@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_htobe16
	movl	%eax, -40(%rbp)
	movl	(%r15), %edi
	movq	%r14, %rsi
	movl	$12, %edx
	callq	_connect
	testl	%eax, %eax
	je	LBB0_6
## %bb.5:
	movl	(%r15), %edi
	callq	_close
	movl	$-1, (%r15)
LBB0_6:
	movb	$1, _ucma_ib_init.init(%rip)
LBB0_7:
	movq	_acm_lock@GOTPCREL(%rip), %rdi
	callq	_pthread_mutex_unlock
LBB0_8:
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
.zerofill __DATA,__bss,_ucma_ib_init.init,1,2 ## @ucma_ib_init.init
	.comm	_acm_lock,4,2                   ## @acm_lock
	.comm	_AF_INET,4,2                    ## @AF_INET
	.comm	_SOCK_STREAM,4,2                ## @SOCK_STREAM
	.comm	_SOCK_CLOEXEC,4,2               ## @SOCK_CLOEXEC
	.comm	_IPPROTO_TCP,4,2                ## @IPPROTO_TCP
	.comm	_sock,4,2                       ## @sock
	.comm	_INADDR_LOOPBACK,4,2            ## @INADDR_LOOPBACK
	.comm	_server_port,4,2                ## @server_port
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ucma_ib_init                   ; -- Begin function ucma_ib_init
	.p2align	2
_ucma_ib_init:                          ; @ucma_ib_init
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #64
	.cfi_def_cfa_offset 64
	stp	x22, x21, [sp, #16]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #32]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #48]             ; 16-byte Folded Spill
	add	x29, sp, #48
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	adrp	x19, _ucma_ib_init.init@PAGE
	ldrb	w8, [x19, _ucma_ib_init.init@PAGEOFF]
	tbnz	w8, #0, LBB0_8
; %bb.1:
Lloh0:
	adrp	x0, _acm_lock@GOTPAGE
Lloh1:
	ldr	x0, [x0, _acm_lock@GOTPAGEOFF]
	bl	_pthread_mutex_lock
	ldrb	w8, [x19, _ucma_ib_init.init@PAGEOFF]
	tbnz	w8, #0, LBB0_7
; %bb.2:
	bl	_ucma_set_server_port
	cbz	w0, LBB0_6
; %bb.3:
Lloh2:
	adrp	x21, _AF_INET@GOTPAGE
Lloh3:
	ldr	x21, [x21, _AF_INET@GOTPAGEOFF]
	ldr	w0, [x21]
Lloh4:
	adrp	x8, _SOCK_STREAM@GOTPAGE
Lloh5:
	ldr	x8, [x8, _SOCK_STREAM@GOTPAGEOFF]
Lloh6:
	adrp	x9, _SOCK_CLOEXEC@GOTPAGE
Lloh7:
	ldr	x9, [x9, _SOCK_CLOEXEC@GOTPAGEOFF]
Lloh8:
	ldr	w8, [x8]
Lloh9:
	ldr	w9, [x9]
	orr	w1, w9, w8
Lloh10:
	adrp	x8, _IPPROTO_TCP@GOTPAGE
Lloh11:
	ldr	x8, [x8, _IPPROTO_TCP@GOTPAGEOFF]
Lloh12:
	ldr	w2, [x8]
	bl	_socket
Lloh13:
	adrp	x20, _sock@GOTPAGE
Lloh14:
	ldr	x20, [x20, _sock@GOTPAGEOFF]
	str	w0, [x20]
	tbnz	w0, #31, LBB0_6
; %bb.4:
	mov	x0, sp
	mov	w1, #0
	mov	w2, #12
	bl	_memset
	ldr	w8, [x21]
	str	w8, [sp, #8]
Lloh15:
	adrp	x8, _INADDR_LOOPBACK@GOTPAGE
Lloh16:
	ldr	x8, [x8, _INADDR_LOOPBACK@GOTPAGEOFF]
Lloh17:
	ldr	w0, [x8]
	bl	_htobe32
	str	w0, [sp, #4]
Lloh18:
	adrp	x8, _server_port@GOTPAGE
Lloh19:
	ldr	x8, [x8, _server_port@GOTPAGEOFF]
Lloh20:
	ldr	w0, [x8]
	bl	_htobe16
	str	w0, [sp]
	ldr	w0, [x20]
	mov	x1, sp
	mov	w2, #12
	bl	_connect
	cbz	w0, LBB0_6
; %bb.5:
	ldr	w0, [x20]
	bl	_close
	mov	w8, #-1
	str	w8, [x20]
LBB0_6:
	mov	w8, #1
	strb	w8, [x19, _ucma_ib_init.init@PAGEOFF]
LBB0_7:
Lloh21:
	adrp	x0, _acm_lock@GOTPAGE
Lloh22:
	ldr	x0, [x0, _acm_lock@GOTPAGEOFF]
	bl	_pthread_mutex_unlock
LBB0_8:
	ldp	x29, x30, [sp, #48]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #16]             ; 16-byte Folded Reload
	add	sp, sp, #64
	ret
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdrGot	Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh10, Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh9
	.loh AdrpLdrGotLdr	Lloh4, Lloh5, Lloh8
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGot	Lloh21, Lloh22
	.cfi_endproc
                                        ; -- End function
.zerofill __DATA,__bss,_ucma_ib_init.init,1,2 ; @ucma_ib_init.init
	.comm	_acm_lock,4,2                   ; @acm_lock
	.comm	_AF_INET,4,2                    ; @AF_INET
	.comm	_SOCK_STREAM,4,2                ; @SOCK_STREAM
	.comm	_SOCK_CLOEXEC,4,2               ; @SOCK_CLOEXEC
	.comm	_IPPROTO_TCP,4,2                ; @IPPROTO_TCP
	.comm	_sock,4,2                       ; @sock
	.comm	_INADDR_LOOPBACK,4,2            ; @INADDR_LOOPBACK
	.comm	_server_port,4,2                ; @server_port
.subsections_via_symbols
