	.file	"extr_t4_main.c_port_mword.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.type	port_mword, @function
port_mword:
.LFB0:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rdi
	push	rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	mov	ebx, esi
	sub	rsp, 8
	.cfi_def_cfa_offset 32
	mov	edi, DWORD PTR M_FW_PORT_CAP32_SPEED[rip]
	and	edi, esi
	call	MPASS@PLT
	mov	edi, ebx
	call	powerof2@PLT
	mov	edi, eax
	call	MPASS@PLT
	mov	eax, DWORD PTR 0[rbp]
	add	eax, -128
	cmp	eax, 23
	ja	.L2
	lea	rdx, .L4[rip]
	movsx	rax, DWORD PTR [rdx+rax*4]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L4:
	.long	.L6-.L4
	.long	.L6-.L4
	.long	.L6-.L4
	.long	.L6-.L4
	.long	.L6-.L4
	.long	.L10-.L4
	.long	.L9-.L4
	.long	.L8-.L4
	.long	.L3-.L4
	.long	.L3-.L4
	.long	.L3-.L4
	.long	.L3-.L4
	.long	.L6-.L4
	.long	.L6-.L4
	.long	.L7-.L4
	.long	.L6-.L4
	.long	.L6-.L4
	.long	.L6-.L4
	.long	.L5-.L4
	.long	.L5-.L4
	.long	.L5-.L4
	.long	.L3-.L4
	.long	.L3-.L4
	.long	.L3-.L4
	.text
	.p2align 4,,10
	.p2align 3
.L3:
	sub	ebx, 163
	cmp	ebx, 6
	ja	.L2
	lea	rdx, .L16[rip]
	movsx	rax, DWORD PTR [rdx+rbx*4]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L16:
	.long	.L21-.L16
	.long	.L20-.L16
	.long	.L19-.L16
	.long	.L18-.L16
	.long	.L17-.L16
	.long	.L2-.L16
	.long	.L15-.L16
	.text
	.p2align 4,,10
	.p2align 3
.L26:
	xor	edi, edi
	call	MPASS@PLT
.L2:
	mov	eax, DWORD PTR IFM_UNKNOWN[rip]
.L1:
	add	rsp, 8
	.cfi_remember_state
	.cfi_def_cfa_offset 24
	pop	rbx
	.cfi_def_cfa_offset 16
	pop	rbp
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L6:
	.cfi_restore_state
	mov	eax, DWORD PTR 4[rbp]
	sub	eax, 153
	cmp	eax, 9
	ja	.L2
	lea	rdx, .L23[rip]
	movsx	rax, DWORD PTR [rdx+rax*4]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L23:
	.long	.L28-.L23
	.long	.L28-.L23
	.long	.L27-.L23
	.long	.L2-.L23
	.long	.L10-.L23
	.long	.L26-.L23
	.long	.L25-.L23
	.long	.L24-.L23
	.long	.L2-.L23
	.long	.L22-.L23
	.text
	.p2align 4,,10
	.p2align 3
.L5:
	cmp	ebx, 167
	je	.L11
	mov	eax, DWORD PTR IFM_100_T[rip]
	cmp	ebx, 168
	je	.L1
	mov	eax, DWORD PTR IFM_1000_T[rip]
	cmp	ebx, 166
	jne	.L2
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L10:
	mov	eax, DWORD PTR IFM_NONE[rip]
	add	rsp, 8
	.cfi_remember_state
	.cfi_def_cfa_offset 24
	pop	rbx
	.cfi_def_cfa_offset 16
	pop	rbp
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L7:
	.cfi_restore_state
	mov	eax, DWORD PTR IFM_10G_CX4[rip]
	cmp	ebx, 167
	jne	.L2
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L9:
	mov	eax, DWORD PTR IFM_10G_KX4[rip]
	cmp	ebx, 167
	jne	.L2
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L8:
	cmp	ebx, 166
	jne	.L2
.L18:
	mov	eax, DWORD PTR IFM_1000_KX[rip]
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L28:
	sub	ebx, 163
	cmp	ebx, 6
	ja	.L2
	lea	rdx, .L44[rip]
	movsx	rax, DWORD PTR [rdx+rbx*4]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L44:
	.long	.L49-.L44
	.long	.L48-.L44
	.long	.L47-.L44
	.long	.L46-.L44
	.long	.L45-.L44
	.long	.L2-.L44
	.long	.L43-.L44
	.text
	.p2align 4,,10
	.p2align 3
.L24:
	sub	ebx, 163
	cmp	ebx, 6
	ja	.L2
	lea	rdx, .L30[rip]
	movsx	rax, DWORD PTR [rdx+rbx*4]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L30:
	.long	.L35-.L30
	.long	.L34-.L30
	.long	.L33-.L30
	.long	.L32-.L30
	.long	.L31-.L30
	.long	.L2-.L30
	.long	.L29-.L30
	.text
	.p2align 4,,10
	.p2align 3
.L27:
	sub	ebx, 163
	cmp	ebx, 6
	ja	.L2
	lea	rdx, .L37[rip]
	movsx	rax, DWORD PTR [rdx+rbx*4]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L37:
	.long	.L42-.L37
	.long	.L41-.L37
	.long	.L40-.L37
	.long	.L39-.L37
	.long	.L38-.L37
	.long	.L2-.L37
	.long	.L36-.L37
	.text
.L19:
	mov	eax, DWORD PTR IFM_25G_KR[rip]
	jmp	.L1
.L20:
	mov	eax, DWORD PTR IFM_40G_KR4[rip]
	jmp	.L1
.L21:
	mov	eax, DWORD PTR IFM_50G_KR2[rip]
	jmp	.L1
.L15:
	mov	eax, DWORD PTR IFM_100G_KR4[rip]
	jmp	.L1
.L17:
	mov	eax, DWORD PTR IFM_10G_KR[rip]
	jmp	.L1
.L38:
	mov	eax, DWORD PTR IFM_10G_SR[rip]
	jmp	.L1
.L39:
	mov	eax, DWORD PTR IFM_1000_SX[rip]
	jmp	.L1
.L36:
	mov	eax, DWORD PTR IFM_100G_SR4[rip]
	jmp	.L1
.L40:
	mov	eax, DWORD PTR IFM_25G_SR[rip]
	jmp	.L1
.L41:
	mov	eax, DWORD PTR IFM_40G_SR4[rip]
	jmp	.L1
.L42:
	mov	eax, DWORD PTR IFM_50G_SR2[rip]
	jmp	.L1
.L29:
	mov	eax, DWORD PTR IFM_100G_LR4[rip]
	jmp	.L1
.L31:
	mov	eax, DWORD PTR IFM_10G_LR[rip]
	jmp	.L1
.L32:
	mov	eax, DWORD PTR IFM_1000_LX[rip]
	jmp	.L1
.L33:
	mov	eax, DWORD PTR IFM_25G_LR[rip]
	jmp	.L1
.L34:
	mov	eax, DWORD PTR IFM_40G_LR4[rip]
	jmp	.L1
.L35:
	mov	eax, DWORD PTR IFM_50G_LR2[rip]
	jmp	.L1
.L43:
	mov	eax, DWORD PTR IFM_100G_CR4[rip]
	jmp	.L1
.L45:
	mov	eax, DWORD PTR IFM_10G_TWINAX[rip]
	jmp	.L1
.L46:
	mov	eax, DWORD PTR IFM_1000_CX[rip]
	jmp	.L1
.L47:
	mov	eax, DWORD PTR IFM_25G_CR[rip]
	jmp	.L1
.L48:
	mov	eax, DWORD PTR IFM_40G_CR4[rip]
	jmp	.L1
.L49:
	mov	eax, DWORD PTR IFM_50G_CR2[rip]
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L22:
	mov	eax, DWORD PTR IFM_10G_ER[rip]
	cmp	ebx, 167
	jne	.L2
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L25:
	mov	eax, DWORD PTR IFM_10G_LRM[rip]
	cmp	ebx, 167
	jne	.L2
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L11:
	mov	eax, DWORD PTR IFM_10G_T[rip]
	jmp	.L1
	.cfi_endproc
.LFE0:
	.size	port_mword, .-port_mword
	.comm	M_FW_PORT_CAP32_SPEED,4,4
	.comm	IFM_UNKNOWN,4,4
	.comm	IFM_NONE,4,4
	.comm	IFM_50G_SR2,4,4
	.comm	IFM_50G_LR2,4,4
	.comm	IFM_50G_KR2,4,4
	.comm	IFM_50G_CR2,4,4
	.comm	IFM_40G_SR4,4,4
	.comm	IFM_40G_LR4,4,4
	.comm	IFM_40G_KR4,4,4
	.comm	IFM_40G_CR4,4,4
	.comm	IFM_25G_SR,4,4
	.comm	IFM_25G_LR,4,4
	.comm	IFM_25G_KR,4,4
	.comm	IFM_25G_CR,4,4
	.comm	IFM_10G_TWINAX,4,4
	.comm	IFM_10G_T,4,4
	.comm	IFM_10G_SR,4,4
	.comm	IFM_10G_LRM,4,4
	.comm	IFM_10G_LR,4,4
	.comm	IFM_10G_KX4,4,4
	.comm	IFM_10G_KR,4,4
	.comm	IFM_10G_ER,4,4
	.comm	IFM_10G_CX4,4,4
	.comm	IFM_100_T,4,4
	.comm	IFM_100G_SR4,4,4
	.comm	IFM_100G_LR4,4,4
	.comm	IFM_100G_KR4,4,4
	.comm	IFM_100G_CR4,4,4
	.comm	IFM_1000_T,4,4
	.comm	IFM_1000_SX,4,4
	.comm	IFM_1000_LX,4,4
	.comm	IFM_1000_KX,4,4
	.comm	IFM_1000_CX,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_t4_main.c_port_mword.c"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	port_mword, %function
port_mword:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, lr}
	mov	r4, r1
	mov	r5, r0
	ldr	r3, .L52
	ldr	r0, [r3]
	and	r0, r0, r1
	bl	MPASS
	mov	r0, r4
	bl	powerof2
	bl	MPASS
	ldr	r3, [r5]
	sub	r3, r3, #128
	cmp	r3, #23
	ldrls	pc, [pc, r3, asl #2]
	b	.L2
.L4:
	.word	.L6
	.word	.L6
	.word	.L6
	.word	.L6
	.word	.L6
	.word	.L10
	.word	.L9
	.word	.L8
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L3
	.word	.L6
	.word	.L6
	.word	.L7
	.word	.L6
	.word	.L6
	.word	.L6
	.word	.L5
	.word	.L5
	.word	.L5
	.word	.L3
	.word	.L3
	.word	.L3
.L3:
	sub	r4, r4, #163
	cmp	r4, #6
	ldrls	pc, [pc, r4, asl #2]
	b	.L2
.L16:
	.word	.L21
	.word	.L20
	.word	.L19
	.word	.L18
	.word	.L17
	.word	.L2
	.word	.L15
.L26:
	mov	r0, #0
	bl	MPASS
.L2:
	ldr	r3, .L52+4
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L6:
	ldr	r3, [r5, #4]
	sub	r3, r3, #153
	cmp	r3, #9
	ldrls	pc, [pc, r3, asl #2]
	b	.L2
.L23:
	.word	.L28
	.word	.L28
	.word	.L27
	.word	.L2
	.word	.L10
	.word	.L26
	.word	.L25
	.word	.L24
	.word	.L2
	.word	.L22
.L5:
	cmp	r4, #167
	beq	.L11
	cmp	r4, #168
	beq	.L12
	cmp	r4, #166
	bne	.L2
	ldr	r3, .L52+8
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L10:
	ldr	r3, .L52+12
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L8:
	cmp	r4, #166
	bne	.L2
.L18:
	ldr	r3, .L52+16
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L7:
	cmp	r4, #167
	bne	.L2
	ldr	r3, .L52+20
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L9:
	cmp	r4, #167
	bne	.L2
	ldr	r3, .L52+24
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L28:
	sub	r4, r4, #163
	cmp	r4, #6
	ldrls	pc, [pc, r4, asl #2]
	b	.L2
.L44:
	.word	.L49
	.word	.L48
	.word	.L47
	.word	.L46
	.word	.L45
	.word	.L2
	.word	.L43
.L24:
	sub	r4, r4, #163
	cmp	r4, #6
	ldrls	pc, [pc, r4, asl #2]
	b	.L2
.L30:
	.word	.L35
	.word	.L34
	.word	.L33
	.word	.L32
	.word	.L31
	.word	.L2
	.word	.L29
.L27:
	sub	r4, r4, #163
	cmp	r4, #6
	ldrls	pc, [pc, r4, asl #2]
	b	.L2
.L37:
	.word	.L42
	.word	.L41
	.word	.L40
	.word	.L39
	.word	.L38
	.word	.L2
	.word	.L36
.L19:
	ldr	r3, .L52+28
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L20:
	ldr	r3, .L52+32
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L21:
	ldr	r3, .L52+36
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L15:
	ldr	r3, .L52+40
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L17:
	ldr	r3, .L52+44
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L38:
	ldr	r3, .L52+48
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L39:
	ldr	r3, .L52+52
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L31:
	ldr	r3, .L52+56
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L32:
	ldr	r3, .L52+60
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L33:
	ldr	r3, .L52+64
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L34:
	ldr	r3, .L52+68
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L35:
	ldr	r3, .L52+72
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L43:
	ldr	r3, .L52+76
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L45:
	ldr	r3, .L52+80
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L46:
	ldr	r3, .L52+84
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L40:
	ldr	r3, .L52+88
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L41:
	ldr	r3, .L52+92
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L42:
	ldr	r3, .L52+96
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L29:
	ldr	r3, .L52+100
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L36:
	ldr	r3, .L52+104
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L47:
	ldr	r3, .L52+108
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L48:
	ldr	r3, .L52+112
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L49:
	ldr	r3, .L52+116
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L22:
	cmp	r4, #167
	bne	.L2
	ldr	r3, .L52+120
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L25:
	cmp	r4, #167
	bne	.L2
	ldr	r3, .L52+124
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L12:
	ldr	r3, .L52+128
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L11:
	ldr	r3, .L52+132
	ldr	r0, [r3]
	pop	{r4, r5, r6, pc}
.L53:
	.align	2
.L52:
	.word	M_FW_PORT_CAP32_SPEED
	.word	IFM_UNKNOWN
	.word	IFM_1000_T
	.word	IFM_NONE
	.word	IFM_1000_KX
	.word	IFM_10G_CX4
	.word	IFM_10G_KX4
	.word	IFM_25G_KR
	.word	IFM_40G_KR4
	.word	IFM_50G_KR2
	.word	IFM_100G_KR4
	.word	IFM_10G_KR
	.word	IFM_10G_SR
	.word	IFM_1000_SX
	.word	IFM_10G_LR
	.word	IFM_1000_LX
	.word	IFM_25G_LR
	.word	IFM_40G_LR4
	.word	IFM_50G_LR2
	.word	IFM_100G_CR4
	.word	IFM_10G_TWINAX
	.word	IFM_1000_CX
	.word	IFM_25G_SR
	.word	IFM_40G_SR4
	.word	IFM_50G_SR2
	.word	IFM_100G_LR4
	.word	IFM_100G_SR4
	.word	IFM_25G_CR
	.word	IFM_40G_CR4
	.word	IFM_50G_CR2
	.word	IFM_10G_ER
	.word	IFM_10G_LRM
	.word	IFM_100_T
	.word	IFM_10G_T
	.size	port_mword, .-port_mword
	.comm	M_FW_PORT_CAP32_SPEED,4,4
	.comm	IFM_UNKNOWN,4,4
	.comm	IFM_NONE,4,4
	.comm	IFM_50G_SR2,4,4
	.comm	IFM_50G_LR2,4,4
	.comm	IFM_50G_KR2,4,4
	.comm	IFM_50G_CR2,4,4
	.comm	IFM_40G_SR4,4,4
	.comm	IFM_40G_LR4,4,4
	.comm	IFM_40G_KR4,4,4
	.comm	IFM_40G_CR4,4,4
	.comm	IFM_25G_SR,4,4
	.comm	IFM_25G_LR,4,4
	.comm	IFM_25G_KR,4,4
	.comm	IFM_25G_CR,4,4
	.comm	IFM_10G_TWINAX,4,4
	.comm	IFM_10G_T,4,4
	.comm	IFM_10G_SR,4,4
	.comm	IFM_10G_LRM,4,4
	.comm	IFM_10G_LR,4,4
	.comm	IFM_10G_KX4,4,4
	.comm	IFM_10G_KR,4,4
	.comm	IFM_10G_ER,4,4
	.comm	IFM_10G_CX4,4,4
	.comm	IFM_100_T,4,4
	.comm	IFM_100G_SR4,4,4
	.comm	IFM_100G_LR4,4,4
	.comm	IFM_100G_KR4,4,4
	.comm	IFM_100G_CR4,4,4
	.comm	IFM_1000_T,4,4
	.comm	IFM_1000_SX,4,4
	.comm	IFM_1000_LX,4,4
	.comm	IFM_1000_KX,4,4
	.comm	IFM_1000_CX,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
