	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_main                           ## -- Begin function main
	.p2align	4, 0x90
_main:                                  ## @main
	.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	%r13
	pushq	%r12
	pushq	%rbx
	subq	$344, %rsp                      ## imm = 0x158
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %r14
	movl	%edi, %ebx
	movq	_IB_SMI_CLASS@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -92(%rbp)
	movq	_IB_SMI_DIRECT_CLASS@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -88(%rbp)
	movq	_IB_SA_CLASS@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -84(%rbp)
	xorps	%xmm0, %xmm0
	movaps	%xmm0, -112(%rbp)
	movaps	%xmm0, -64(%rbp)
	movaps	%xmm0, -80(%rbp)
	leaq	l___const.main.opts(%rip), %rsi
	leaq	-368(%rbp), %r15
	movl	$160, %edx
	movq	%r15, %rdi
	callq	_memcpy
	movaps	L___const.main.usage_args(%rip), %xmm0
	movaps	%xmm0, -208(%rbp)
	movabsq	$17577224062446964, %rax        ## imm = 0x3E726464612D74
	movq	%rax, -193(%rbp)
	movq	$0, -128(%rbp)
	leaq	L_.str.9(%rip), %rax
	movq	%rax, -176(%rbp)
	leaq	L_.str.10(%rip), %rax
	movq	%rax, -168(%rbp)
	leaq	L_.str.11(%rip), %rax
	movq	%rax, -160(%rbp)
	leaq	L_.str.12(%rip), %rax
	movq	%rax, -152(%rbp)
	leaq	L_.str.13(%rip), %rax
	movq	%rax, -144(%rbp)
	leaq	L_.str.14(%rip), %rax
	movq	%rax, -136(%rbp)
	movq	_process_opt@GOTPCREL(%rip), %rax
	movl	(%rax), %r9d
	leaq	-176(%rbp), %rax
	movq	%rax, 8(%rsp)
	leaq	-208(%rbp), %rax
	movq	%rax, (%rsp)
	leaq	L_.str.15(%rip), %rcx
	movl	%ebx, %edi
	movq	%r14, %rsi
	xorl	%edx, %edx
	movq	%r15, %r8
	callq	_ibdiag_process_opts
	movq	_stdout@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_f@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_optind@GOTPCREL(%rip), %rax
	movq	(%rax), %r13
	subl	%r13d, %ebx
	cmpl	$1, %ebx
	jg	LBB0_2
## %bb.1:
	xorl	%eax, %eax
	callq	_ibdiag_show_usage
LBB0_2:
	movq	_ibd_timeout@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	testq	%rax, %rax
	je	LBB0_4
## %bb.3:
	movq	_timeout@GOTPCREL(%rip), %rcx
	movq	%rax, (%rcx)
LBB0_4:
	movq	_ibd_ca@GOTPCREL(%rip), %r12
	movl	(%r12), %edi
	movq	_ibd_ca_port@GOTPCREL(%rip), %r15
	movl	(%r15), %esi
	leaq	-92(%rbp), %rdx
	movl	$3, %ecx
	callq	_mad_rpc_open_port
	movq	_srcport@GOTPCREL(%rip), %rbx
	movl	%eax, (%rbx)
	testl	%eax, %eax
	jne	LBB0_6
## %bb.5:
	movl	(%r12), %esi
	movl	(%r15), %edx
	leaq	L_.str.16(%rip), %rdi
	xorl	%eax, %eax
	callq	_IBEXIT
	movl	(%rbx), %eax
LBB0_6:
	movq	_ibd_mkey@GOTPCREL(%rip), %rcx
	movl	(%rcx), %esi
	movl	%eax, %edi
	callq	_smp_mkey_set
	movq	_node_name_map_file@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_open_node_name_map
	movq	_node_name_map@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movl	(%r12), %edi
	movl	(%r15), %esi
	movq	(%r14,%r13,8), %rcx
	movq	_ibd_dest_type@GOTPCREL(%rip), %rax
	movq	(%rax), %r8
	movq	%rbx, %rax
	movq	_ibd_sm_id@GOTPCREL(%rip), %rbx
	movl	(%rbx), %r9d
	movl	(%rax), %eax
	movl	%eax, (%rsp)
	leaq	-64(%rbp), %rdx
	callq	_resolve_portid_str
	testq	%rax, %rax
	jns	LBB0_8
## %bb.7:
	movq	(%r14,%r13,8), %rsi
	leaq	L_.str.17(%rip), %rdi
	xorl	%eax, %eax
	callq	_IBEXIT
LBB0_8:
	movl	(%r12), %edi
	movl	(%r15), %esi
	movq	8(%r14,%r13,8), %rcx
	movq	_ibd_dest_type@GOTPCREL(%rip), %r15
	movq	(%r15), %r8
	movl	(%rbx), %r9d
	movq	_srcport@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, (%rsp)
	leaq	-80(%rbp), %rdx
	callq	_resolve_portid_str
	testq	%rax, %rax
	jns	LBB0_10
## %bb.9:
	movq	8(%r14,%r13,8), %rsi
	leaq	L_.str.18(%rip), %rdi
	xorl	%eax, %eax
	callq	_IBEXIT
LBB0_10:
	movq	(%r15), %rax
	movq	_IB_DEST_DRPATH@GOTPCREL(%rip), %r14
	cmpq	(%r14), %rax
	jne	LBB0_15
## %bb.11:
	leaq	-64(%rbp), %rdi
	xorl	%esi, %esi
	callq	_resolve_lid
	testq	%rax, %rax
	jns	LBB0_13
## %bb.12:
	leaq	-64(%rbp), %rdi
	callq	_portid2str
	leaq	L_.str.19(%rip), %rdi
	movl	%eax, %esi
	xorl	%eax, %eax
	callq	_IBEXIT
LBB0_13:
	leaq	-80(%rbp), %rdi
	xorl	%esi, %esi
	callq	_resolve_lid
	testq	%rax, %rax
	jns	LBB0_15
## %bb.14:
	leaq	-80(%rbp), %rdi
	callq	_portid2str
	leaq	L_.str.19(%rip), %rdi
	movl	%eax, %esi
	xorl	%eax, %eax
	callq	_IBEXIT
LBB0_15:
	cmpq	$0, -80(%rbp)
	je	LBB0_17
## %bb.16:
	cmpq	$0, -64(%rbp)
	jne	LBB0_18
LBB0_17:
	leaq	L_.str.20(%rip), %rdi
	callq	_IBWARN
	xorl	%eax, %eax
	callq	_ibdiag_show_usage
LBB0_18:
	movq	(%r15), %rax
	cmpq	(%r14), %rax
	je	LBB0_22
## %bb.19:
	leaq	-112(%rbp), %rdi
	leaq	-64(%rbp), %rsi
	xorl	%edx, %edx
	callq	_find_route
	testq	%rax, %rax
	jns	LBB0_21
## %bb.20:
	leaq	L_.str.21(%rip), %rdi
	xorl	%eax, %eax
	callq	_IBEXIT
LBB0_21:
	movaps	-112(%rbp), %xmm0
	movaps	%xmm0, -64(%rbp)
LBB0_22:
	movq	_multicast@GOTPCREL(%rip), %rax
	cmpl	$0, (%rax)
	jne	LBB0_26
## %bb.23:
	movq	_dumplevel@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	leaq	-64(%rbp), %rdi
	leaq	-80(%rbp), %rsi
	callq	_find_route
	testq	%rax, %rax
	jns	LBB0_25
## %bb.24:
	leaq	L_.str.22(%rip), %rdi
	xorl	%eax, %eax
	callq	_IBEXIT
LBB0_25:
	xorl	%edi, %edi
	callq	_exit
LBB0_26:
	movq	_mlid@GOTPCREL(%rip), %rbx
	cmpl	$49151, (%rbx)                  ## imm = 0xBFFF
	jg	LBB0_28
## %bb.27:
	leaq	L_.str.23(%rip), %rdi
	callq	_IBWARN
LBB0_28:
	leaq	-80(%rbp), %rdi
	callq	_find_target_portguid
	movq	_target_portguid@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	testl	%eax, %eax
	jne	LBB0_30
## %bb.29:
	movq	-80(%rbp), %rsi
	leaq	L_.str.24(%rip), %rdi
	xorl	%eax, %eax
	callq	_IBEXIT
LBB0_30:
	movl	(%rbx), %esi
	leaq	-64(%rbp), %rdi
	callq	_find_mcpath
	movq	%rax, %rbx
	testq	%rax, %rax
	jne	LBB0_32
## %bb.31:
	leaq	L_.str.25(%rip), %rdi
	xorl	%eax, %eax
	callq	_IBEXIT
LBB0_32:
	movq	_dumplevel@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	callq	_dump_mcpath
	movq	_node_name_map@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_close_node_name_map
	movq	_srcport@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_mad_rpc_close_port
	xorl	%edi, %edi
	callq	_exit
	.cfi_endproc
                                        ## -- End function
	.comm	_IB_SMI_CLASS,4,2               ## @IB_SMI_CLASS
	.comm	_IB_SMI_DIRECT_CLASS,4,2        ## @IB_SMI_DIRECT_CLASS
	.comm	_IB_SA_CLASS,4,2                ## @IB_SA_CLASS
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"force"

L_.str.1:                               ## @.str.1
	.asciz	"no_info"

L_.str.2:                               ## @.str.2
	.asciz	"simple format"

L_.str.3:                               ## @.str.3
	.asciz	"mlid"

L_.str.4:                               ## @.str.4
	.asciz	"<mlid>"

L_.str.5:                               ## @.str.5
	.asciz	"multicast trace of the mlid"

L_.str.6:                               ## @.str.6
	.asciz	"node-name-map"

L_.str.7:                               ## @.str.7
	.asciz	"<file>"

L_.str.8:                               ## @.str.8
	.asciz	"node name map file"

	.section	__DATA,__const
	.p2align	4                               ## @__const.main.opts
l___const.main.opts:
	.quad	L_.str
	.long	0x42cc0000                      ## float 102
	.long	0                               ## 0x0
	.quad	0
	.quad	L_.str
	.quad	L_.str.1
	.long	0x42dc0000                      ## float 110
	.long	0                               ## 0x0
	.quad	0
	.quad	L_.str.2
	.quad	L_.str.3
	.long	0x42da0000                      ## float 109
	.long	1                               ## 0x1
	.quad	L_.str.4
	.quad	L_.str.5
	.quad	L_.str.6
	.long	0x3f800000                      ## float 1
	.long	1                               ## 0x1
	.quad	L_.str.7
	.quad	L_.str.8
	.space	32

	.section	__TEXT,__cstring,cstring_literals
	.p2align	4                               ## @__const.main.usage_args
L___const.main.usage_args:
	.asciz	"<src-addr> <dest-addr>"

L_.str.9:                               ## @.str.9
	.asciz	"- Unicast examples:"

L_.str.10:                              ## @.str.10
	.asciz	"4 16\t\t\t# show path between lids 4 and 16"

L_.str.11:                              ## @.str.11
	.asciz	"-n 4 16\t\t# same, but using simple output format"

L_.str.12:                              ## @.str.12
	.asciz	"-G 0x8f1040396522d 0x002c9000100d051\t# use guid addresses"

L_.str.13:                              ## @.str.13
	.asciz	" - Multicast examples:"

L_.str.14:                              ## @.str.14
	.asciz	"-m 0xc000 4 16\t# show multicast path of mlid 0xc000 between lids 4 and 16"

L_.str.15:                              ## @.str.15
	.asciz	"DK"

	.comm	_process_opt,4,2                ## @process_opt
	.comm	_stdout,4,2                     ## @stdout
	.comm	_f,4,2                          ## @f
	.comm	_optind,8,3                     ## @optind
	.comm	_ibd_timeout,8,3                ## @ibd_timeout
	.comm	_timeout,8,3                    ## @timeout
	.comm	_ibd_ca,4,2                     ## @ibd_ca
	.comm	_ibd_ca_port,4,2                ## @ibd_ca_port
	.comm	_srcport,4,2                    ## @srcport
L_.str.16:                              ## @.str.16
	.asciz	"Failed to open '%s' port '%d'"

	.comm	_ibd_mkey,4,2                   ## @ibd_mkey
	.comm	_node_name_map_file,4,2         ## @node_name_map_file
	.comm	_node_name_map,4,2              ## @node_name_map
	.comm	_ibd_dest_type,8,3              ## @ibd_dest_type
	.comm	_ibd_sm_id,4,2                  ## @ibd_sm_id
L_.str.17:                              ## @.str.17
	.asciz	"can't resolve source port %s"

L_.str.18:                              ## @.str.18
	.asciz	"can't resolve destination port %s"

	.comm	_IB_DEST_DRPATH,8,3             ## @IB_DEST_DRPATH
L_.str.19:                              ## @.str.19
	.asciz	"cannot resolve lid for port '%s'"

L_.str.20:                              ## @.str.20
	.asciz	"bad src/dest lid"

L_.str.21:                              ## @.str.21
	.asciz	"can't find a route to the src port"

	.comm	_multicast,4,2                  ## @multicast
	.comm	_dumplevel,4,2                  ## @dumplevel
L_.str.22:                              ## @.str.22
	.asciz	"can't find a route from src to dest"

	.comm	_mlid,4,2                       ## @mlid
L_.str.23:                              ## @.str.23
	.asciz	"invalid MLID; must be 0xc000 or larger"

	.comm	_target_portguid,4,2            ## @target_portguid
L_.str.24:                              ## @.str.24
	.asciz	"can't reach target lid %d"

L_.str.25:                              ## @.str.25
	.asciz	"can't find a multicast route from src to dest"

.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_main                           ; -- Begin function main
	.p2align	2
_main:                                  ; @main
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #432
	.cfi_def_cfa_offset 432
	stp	x28, x27, [sp, #336]            ; 16-byte Folded Spill
	stp	x26, x25, [sp, #352]            ; 16-byte Folded Spill
	stp	x24, x23, [sp, #368]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #384]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #400]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #416]            ; 16-byte Folded Spill
	add	x29, sp, #416
	.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
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	mov	x19, x1
	mov	x20, x0
Lloh0:
	adrp	x8, l___const.main.opts@PAGE
Lloh1:
	add	x8, x8, l___const.main.opts@PAGEOFF
	ldp	q0, q1, [x8, #96]
	add	x21, sp, #112
	ldp	q2, q3, [x8, #128]
	stp	q1, q2, [x21, #112]
	str	q3, [x21, #144]
	ldp	q1, q2, [x8, #32]
	str	q1, [sp, #144]
	ldp	q1, q3, [x8, #64]
	stp	q2, q1, [x21, #48]
Lloh2:
	adrp	x9, _IB_SMI_CLASS@GOTPAGE
Lloh3:
	ldr	x9, [x9, _IB_SMI_CLASS@GOTPAGEOFF]
Lloh4:
	adrp	x10, _IB_SMI_DIRECT_CLASS@GOTPAGE
Lloh5:
	ldr	x10, [x10, _IB_SMI_DIRECT_CLASS@GOTPAGEOFF]
Lloh6:
	ldr	w9, [x9]
Lloh7:
	ldr	w10, [x10]
	stp	w9, w10, [x29, #-92]
Lloh8:
	adrp	x9, _IB_SA_CLASS@GOTPAGE
Lloh9:
	ldr	x9, [x9, _IB_SA_CLASS@GOTPAGEOFF]
Lloh10:
	ldr	w9, [x9]
	stur	w9, [x29, #-84]
	stp	xzr, xzr, [x29, #-112]
	stp	xzr, xzr, [x29, #-128]
	stp	xzr, xzr, [x29, #-144]
	stp	q3, q0, [x21, #80]
	ldp	q0, q1, [x8]
	stp	q0, q1, [sp, #112]
Lloh11:
	adrp	x8, l___const.main.usage_args@PAGE
Lloh12:
	add	x8, x8, l___const.main.usage_args@PAGEOFF
	ldr	q0, [x8]
	str	q0, [sp, #80]
	ldur	x8, [x8, #15]
	stur	x8, [sp, #95]
Lloh13:
	adrp	x8, l_.str.9@PAGE
Lloh14:
	add	x8, x8, l_.str.9@PAGEOFF
Lloh15:
	adrp	x9, l_.str.10@PAGE
Lloh16:
	add	x9, x9, l_.str.10@PAGEOFF
	stp	x8, x9, [sp, #24]
Lloh17:
	adrp	x8, l_.str.11@PAGE
Lloh18:
	add	x8, x8, l_.str.11@PAGEOFF
Lloh19:
	adrp	x9, l_.str.12@PAGE
Lloh20:
	add	x9, x9, l_.str.12@PAGEOFF
	stp	x8, x9, [sp, #40]
Lloh21:
	adrp	x8, l_.str.13@PAGE
Lloh22:
	add	x8, x8, l_.str.13@PAGEOFF
Lloh23:
	adrp	x9, l_.str.14@PAGE
Lloh24:
	add	x9, x9, l_.str.14@PAGEOFF
	stp	x9, xzr, [sp, #64]
	str	x8, [sp, #56]
Lloh25:
	adrp	x8, _process_opt@GOTPAGE
Lloh26:
	ldr	x8, [x8, _process_opt@GOTPAGEOFF]
Lloh27:
	ldr	w5, [x8]
Lloh28:
	adrp	x3, l_.str.15@PAGE
Lloh29:
	add	x3, x3, l_.str.15@PAGEOFF
	add	x4, sp, #112
	add	x6, sp, #80
	add	x7, sp, #24
	mov	x2, #0
	bl	_ibdiag_process_opts
Lloh30:
	adrp	x8, _stdout@GOTPAGE
Lloh31:
	ldr	x8, [x8, _stdout@GOTPAGEOFF]
Lloh32:
	ldr	w8, [x8]
Lloh33:
	adrp	x9, _f@GOTPAGE
Lloh34:
	ldr	x9, [x9, _f@GOTPAGEOFF]
Lloh35:
	str	w8, [x9]
Lloh36:
	adrp	x8, _optind@GOTPAGE
Lloh37:
	ldr	x8, [x8, _optind@GOTPAGEOFF]
Lloh38:
	ldr	x22, [x8]
	sub	w8, w20, w22
	cmp	w8, #1
	b.gt	LBB0_2
; %bb.1:
	bl	_ibdiag_show_usage
LBB0_2:
	add	x23, x19, x22, lsl #3
Lloh39:
	adrp	x8, _ibd_timeout@GOTPAGE
Lloh40:
	ldr	x8, [x8, _ibd_timeout@GOTPAGEOFF]
Lloh41:
	ldr	x8, [x8]
	cbz	x8, LBB0_4
; %bb.3:
Lloh42:
	adrp	x9, _timeout@GOTPAGE
Lloh43:
	ldr	x9, [x9, _timeout@GOTPAGEOFF]
Lloh44:
	str	x8, [x9]
LBB0_4:
Lloh45:
	adrp	x24, _ibd_ca@GOTPAGE
Lloh46:
	ldr	x24, [x24, _ibd_ca@GOTPAGEOFF]
	ldr	w0, [x24]
Lloh47:
	adrp	x25, _ibd_ca_port@GOTPAGE
Lloh48:
	ldr	x25, [x25, _ibd_ca_port@GOTPAGEOFF]
	ldr	w1, [x25]
	sub	x2, x29, #92
	mov	w3, #3
	bl	_mad_rpc_open_port
Lloh49:
	adrp	x20, _srcport@GOTPAGE
Lloh50:
	ldr	x20, [x20, _srcport@GOTPAGEOFF]
	str	w0, [x20]
	cbnz	w0, LBB0_6
; %bb.5:
	ldr	w8, [x24]
	ldr	w9, [x25]
	stp	x8, x9, [sp]
Lloh51:
	adrp	x0, l_.str.16@PAGE
Lloh52:
	add	x0, x0, l_.str.16@PAGEOFF
	bl	_IBEXIT
	ldr	w0, [x20]
LBB0_6:
Lloh53:
	adrp	x8, _ibd_mkey@GOTPAGE
Lloh54:
	ldr	x8, [x8, _ibd_mkey@GOTPAGEOFF]
Lloh55:
	ldr	w1, [x8]
	bl	_smp_mkey_set
Lloh56:
	adrp	x8, _node_name_map_file@GOTPAGE
Lloh57:
	ldr	x8, [x8, _node_name_map_file@GOTPAGEOFF]
Lloh58:
	ldr	w0, [x8]
	bl	_open_node_name_map
Lloh59:
	adrp	x22, _node_name_map@GOTPAGE
Lloh60:
	ldr	x22, [x22, _node_name_map@GOTPAGEOFF]
	str	w0, [x22]
	ldr	w0, [x24]
	ldr	w1, [x25]
Lloh61:
	adrp	x19, _ibd_dest_type@GOTPAGE
Lloh62:
	ldr	x19, [x19, _ibd_dest_type@GOTPAGEOFF]
	ldr	x3, [x23]
	ldr	x4, [x19]
Lloh63:
	adrp	x26, _ibd_sm_id@GOTPAGE
Lloh64:
	ldr	x26, [x26, _ibd_sm_id@GOTPAGEOFF]
	ldr	w5, [x26]
	ldr	w6, [x20]
	sub	x2, x29, #128
	bl	_resolve_portid_str
	tbz	x0, #63, LBB0_8
; %bb.7:
	ldr	x8, [x23]
	str	x8, [sp]
Lloh65:
	adrp	x0, l_.str.17@PAGE
Lloh66:
	add	x0, x0, l_.str.17@PAGEOFF
	bl	_IBEXIT
LBB0_8:
	ldr	w0, [x24]
	ldr	w1, [x25]
	ldr	x3, [x23, #8]
	ldr	x4, [x19]
	ldr	w5, [x26]
	ldr	w6, [x20]
	sub	x2, x29, #144
	bl	_resolve_portid_str
	tbz	x0, #63, LBB0_10
; %bb.9:
	ldr	x8, [x23, #8]
	str	x8, [sp]
Lloh67:
	adrp	x0, l_.str.18@PAGE
Lloh68:
	add	x0, x0, l_.str.18@PAGEOFF
	bl	_IBEXIT
LBB0_10:
	ldr	x8, [x19]
Lloh69:
	adrp	x23, _IB_DEST_DRPATH@GOTPAGE
Lloh70:
	ldr	x23, [x23, _IB_DEST_DRPATH@GOTPAGEOFF]
	ldr	x9, [x23]
	cmp	x8, x9
	b.ne	LBB0_15
; %bb.11:
	sub	x0, x29, #128
	mov	x1, #0
	bl	_resolve_lid
	tbz	x0, #63, LBB0_13
; %bb.12:
	sub	x0, x29, #128
	bl	_portid2str
                                        ; kill: def $w0 killed $w0 def $x0
	str	x0, [sp]
Lloh71:
	adrp	x0, l_.str.19@PAGE
Lloh72:
	add	x0, x0, l_.str.19@PAGEOFF
	bl	_IBEXIT
LBB0_13:
	sub	x0, x29, #144
	mov	x1, #0
	bl	_resolve_lid
	tbz	x0, #63, LBB0_15
; %bb.14:
	sub	x0, x29, #144
	bl	_portid2str
                                        ; kill: def $w0 killed $w0 def $x0
	str	x0, [sp]
Lloh73:
	adrp	x0, l_.str.19@PAGE
Lloh74:
	add	x0, x0, l_.str.19@PAGEOFF
	bl	_IBEXIT
LBB0_15:
	ldur	x8, [x29, #-144]
	cbz	x8, LBB0_17
; %bb.16:
	ldur	x8, [x29, #-128]
	cbnz	x8, LBB0_18
LBB0_17:
Lloh75:
	adrp	x0, l_.str.20@PAGE
Lloh76:
	add	x0, x0, l_.str.20@PAGEOFF
	bl	_IBWARN
	bl	_ibdiag_show_usage
LBB0_18:
	ldr	x8, [x19]
	ldr	x9, [x23]
	cmp	x8, x9
	b.eq	LBB0_22
; %bb.19:
	sub	x0, x29, #112
	sub	x1, x29, #128
	mov	w2, #0
	bl	_find_route
	tbz	x0, #63, LBB0_21
; %bb.20:
Lloh77:
	adrp	x0, l_.str.21@PAGE
Lloh78:
	add	x0, x0, l_.str.21@PAGEOFF
	bl	_IBEXIT
LBB0_21:
	ldr	q0, [x21, #192]
	str	q0, [x21, #176]
LBB0_22:
Lloh79:
	adrp	x8, _multicast@GOTPAGE
Lloh80:
	ldr	x8, [x8, _multicast@GOTPAGEOFF]
Lloh81:
	ldr	w8, [x8]
	cbnz	w8, LBB0_26
; %bb.23:
Lloh82:
	adrp	x8, _dumplevel@GOTPAGE
Lloh83:
	ldr	x8, [x8, _dumplevel@GOTPAGEOFF]
Lloh84:
	ldr	w2, [x8]
	sub	x0, x29, #128
	sub	x1, x29, #144
	bl	_find_route
	tbz	x0, #63, LBB0_25
; %bb.24:
Lloh85:
	adrp	x0, l_.str.22@PAGE
Lloh86:
	add	x0, x0, l_.str.22@PAGEOFF
	bl	_IBEXIT
LBB0_25:
	mov	w0, #0
	bl	_exit
LBB0_26:
Lloh87:
	adrp	x19, _mlid@GOTPAGE
Lloh88:
	ldr	x19, [x19, _mlid@GOTPAGEOFF]
	ldr	w8, [x19]
	cmp	w8, #12, lsl #12                ; =49152
	b.ge	LBB0_28
; %bb.27:
Lloh89:
	adrp	x0, l_.str.23@PAGE
Lloh90:
	add	x0, x0, l_.str.23@PAGEOFF
	bl	_IBWARN
LBB0_28:
	sub	x0, x29, #144
	bl	_find_target_portguid
Lloh91:
	adrp	x8, _target_portguid@GOTPAGE
Lloh92:
	ldr	x8, [x8, _target_portguid@GOTPAGEOFF]
Lloh93:
	str	w0, [x8]
	cbnz	w0, LBB0_30
; %bb.29:
	ldur	x8, [x29, #-144]
	str	x8, [sp]
Lloh94:
	adrp	x0, l_.str.24@PAGE
Lloh95:
	add	x0, x0, l_.str.24@PAGEOFF
	bl	_IBEXIT
LBB0_30:
	ldr	w1, [x19]
	sub	x0, x29, #128
	bl	_find_mcpath
	mov	x19, x0
	cbnz	x0, LBB0_32
; %bb.31:
Lloh96:
	adrp	x0, l_.str.25@PAGE
Lloh97:
	add	x0, x0, l_.str.25@PAGEOFF
	bl	_IBEXIT
LBB0_32:
Lloh98:
	adrp	x8, _dumplevel@GOTPAGE
Lloh99:
	ldr	x8, [x8, _dumplevel@GOTPAGEOFF]
Lloh100:
	ldr	w1, [x8]
	mov	x0, x19
	bl	_dump_mcpath
	ldr	w0, [x22]
	bl	_close_node_name_map
	ldr	w0, [x20]
	bl	_mad_rpc_close_port
	mov	w0, #0
	bl	_exit
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpLdrGotStr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpAdd	Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpAdd	Lloh23, Lloh24
	.loh AdrpAdd	Lloh21, Lloh22
	.loh AdrpAdd	Lloh19, Lloh20
	.loh AdrpAdd	Lloh17, Lloh18
	.loh AdrpAdd	Lloh15, Lloh16
	.loh AdrpAdd	Lloh13, Lloh14
	.loh AdrpAdd	Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh4, Lloh5, Lloh7
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh6
	.loh AdrpAdd	Lloh0, Lloh1
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh41
	.loh AdrpLdrGotStr	Lloh42, Lloh43, Lloh44
	.loh AdrpLdrGot	Lloh49, Lloh50
	.loh AdrpLdrGot	Lloh47, Lloh48
	.loh AdrpLdrGot	Lloh45, Lloh46
	.loh AdrpAdd	Lloh51, Lloh52
	.loh AdrpLdrGot	Lloh63, Lloh64
	.loh AdrpLdrGot	Lloh61, Lloh62
	.loh AdrpLdrGot	Lloh59, Lloh60
	.loh AdrpLdrGotLdr	Lloh56, Lloh57, Lloh58
	.loh AdrpLdrGotLdr	Lloh53, Lloh54, Lloh55
	.loh AdrpAdd	Lloh65, Lloh66
	.loh AdrpAdd	Lloh67, Lloh68
	.loh AdrpLdrGot	Lloh69, Lloh70
	.loh AdrpAdd	Lloh71, Lloh72
	.loh AdrpAdd	Lloh73, Lloh74
	.loh AdrpAdd	Lloh75, Lloh76
	.loh AdrpAdd	Lloh77, Lloh78
	.loh AdrpLdrGotLdr	Lloh79, Lloh80, Lloh81
	.loh AdrpLdrGotLdr	Lloh82, Lloh83, Lloh84
	.loh AdrpAdd	Lloh85, Lloh86
	.loh AdrpLdrGot	Lloh87, Lloh88
	.loh AdrpAdd	Lloh89, Lloh90
	.loh AdrpLdrGotStr	Lloh91, Lloh92, Lloh93
	.loh AdrpAdd	Lloh94, Lloh95
	.loh AdrpAdd	Lloh96, Lloh97
	.loh AdrpLdrGotLdr	Lloh98, Lloh99, Lloh100
	.cfi_endproc
                                        ; -- End function
	.comm	_IB_SMI_CLASS,4,2               ; @IB_SMI_CLASS
	.comm	_IB_SMI_DIRECT_CLASS,4,2        ; @IB_SMI_DIRECT_CLASS
	.comm	_IB_SA_CLASS,4,2                ; @IB_SA_CLASS
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"force"

l_.str.1:                               ; @.str.1
	.asciz	"no_info"

l_.str.2:                               ; @.str.2
	.asciz	"simple format"

l_.str.3:                               ; @.str.3
	.asciz	"mlid"

l_.str.4:                               ; @.str.4
	.asciz	"<mlid>"

l_.str.5:                               ; @.str.5
	.asciz	"multicast trace of the mlid"

l_.str.6:                               ; @.str.6
	.asciz	"node-name-map"

l_.str.7:                               ; @.str.7
	.asciz	"<file>"

l_.str.8:                               ; @.str.8
	.asciz	"node name map file"

	.section	__DATA,__const
	.p2align	3                               ; @__const.main.opts
l___const.main.opts:
	.quad	l_.str
	.long	0x42cc0000                      ; float 102
	.long	0                               ; 0x0
	.quad	0
	.quad	l_.str
	.quad	l_.str.1
	.long	0x42dc0000                      ; float 110
	.long	0                               ; 0x0
	.quad	0
	.quad	l_.str.2
	.quad	l_.str.3
	.long	0x42da0000                      ; float 109
	.long	1                               ; 0x1
	.quad	l_.str.4
	.quad	l_.str.5
	.quad	l_.str.6
	.long	0x3f800000                      ; float 1
	.long	1                               ; 0x1
	.quad	l_.str.7
	.quad	l_.str.8
	.space	32

	.section	__TEXT,__cstring,cstring_literals
l___const.main.usage_args:              ; @__const.main.usage_args
	.asciz	"<src-addr> <dest-addr>"

l_.str.9:                               ; @.str.9
	.asciz	"- Unicast examples:"

l_.str.10:                              ; @.str.10
	.asciz	"4 16\t\t\t# show path between lids 4 and 16"

l_.str.11:                              ; @.str.11
	.asciz	"-n 4 16\t\t# same, but using simple output format"

l_.str.12:                              ; @.str.12
	.asciz	"-G 0x8f1040396522d 0x002c9000100d051\t# use guid addresses"

l_.str.13:                              ; @.str.13
	.asciz	" - Multicast examples:"

l_.str.14:                              ; @.str.14
	.asciz	"-m 0xc000 4 16\t# show multicast path of mlid 0xc000 between lids 4 and 16"

l_.str.15:                              ; @.str.15
	.asciz	"DK"

	.comm	_process_opt,4,2                ; @process_opt
	.comm	_stdout,4,2                     ; @stdout
	.comm	_f,4,2                          ; @f
	.comm	_optind,8,3                     ; @optind
	.comm	_ibd_timeout,8,3                ; @ibd_timeout
	.comm	_timeout,8,3                    ; @timeout
	.comm	_ibd_ca,4,2                     ; @ibd_ca
	.comm	_ibd_ca_port,4,2                ; @ibd_ca_port
	.comm	_srcport,4,2                    ; @srcport
l_.str.16:                              ; @.str.16
	.asciz	"Failed to open '%s' port '%d'"

	.comm	_ibd_mkey,4,2                   ; @ibd_mkey
	.comm	_node_name_map_file,4,2         ; @node_name_map_file
	.comm	_node_name_map,4,2              ; @node_name_map
	.comm	_ibd_dest_type,8,3              ; @ibd_dest_type
	.comm	_ibd_sm_id,4,2                  ; @ibd_sm_id
l_.str.17:                              ; @.str.17
	.asciz	"can't resolve source port %s"

l_.str.18:                              ; @.str.18
	.asciz	"can't resolve destination port %s"

	.comm	_IB_DEST_DRPATH,8,3             ; @IB_DEST_DRPATH
l_.str.19:                              ; @.str.19
	.asciz	"cannot resolve lid for port '%s'"

l_.str.20:                              ; @.str.20
	.asciz	"bad src/dest lid"

l_.str.21:                              ; @.str.21
	.asciz	"can't find a route to the src port"

	.comm	_multicast,4,2                  ; @multicast
	.comm	_dumplevel,4,2                  ; @dumplevel
l_.str.22:                              ; @.str.22
	.asciz	"can't find a route from src to dest"

	.comm	_mlid,4,2                       ; @mlid
l_.str.23:                              ; @.str.23
	.asciz	"invalid MLID; must be 0xc000 or larger"

	.comm	_target_portguid,4,2            ; @target_portguid
l_.str.24:                              ; @.str.24
	.asciz	"can't reach target lid %d"

l_.str.25:                              ; @.str.25
	.asciz	"can't find a multicast route from src to dest"

.subsections_via_symbols
