	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function d3d9_swizzle
_d3d9_swizzle:                          ## @d3d9_swizzle
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movq	_BWRITERVS_Y_X@GOTPCREL(%rip), %rax
	movd	(%rax), %xmm9                   ## xmm9 = mem[0],zero,zero,zero
	movq	_BWRITERVS_Y_Y@GOTPCREL(%rip), %rax
	pinsrd	$1, (%rax), %xmm9
	movq	_BWRITERVS_Y_Z@GOTPCREL(%rip), %rax
	pinsrd	$2, (%rax), %xmm9
	movq	_BWRITERVS_Y_W@GOTPCREL(%rip), %rax
	pinsrd	$3, (%rax), %xmm9
	movq	_BWRITERVS_W_X@GOTPCREL(%rip), %rax
	movd	(%rax), %xmm8                   ## xmm8 = mem[0],zero,zero,zero
	movq	_BWRITERVS_W_Y@GOTPCREL(%rip), %rax
	pinsrd	$1, (%rax), %xmm8
	movq	_BWRITERVS_W_Z@GOTPCREL(%rip), %rax
	pinsrd	$2, (%rax), %xmm8
	movq	_BWRITERVS_W_W@GOTPCREL(%rip), %rax
	pinsrd	$3, (%rax), %xmm8
	movq	_BWRITERVS_X_Y@GOTPCREL(%rip), %rax
	movd	(%rax), %xmm10                  ## xmm10 = mem[0],zero,zero,zero
	movq	_BWRITERVS_X_X@GOTPCREL(%rip), %rax
	pinsrd	$1, (%rax), %xmm10
	movq	_BWRITERVS_X_Z@GOTPCREL(%rip), %rax
	pinsrd	$2, (%rax), %xmm10
	movq	_BWRITERVS_X_W@GOTPCREL(%rip), %rax
	pinsrd	$3, (%rax), %xmm10
	movq	_BWRITERVS_Z_X@GOTPCREL(%rip), %rax
	movd	(%rax), %xmm11                  ## xmm11 = mem[0],zero,zero,zero
	movq	_BWRITERVS_Z_Y@GOTPCREL(%rip), %rax
	pinsrd	$1, (%rax), %xmm11
	movq	_BWRITERVS_Z_Z@GOTPCREL(%rip), %rax
	pinsrd	$2, (%rax), %xmm11
	movq	_BWRITERVS_Z_W@GOTPCREL(%rip), %rax
	pinsrd	$3, (%rax), %xmm11
	movq	_D3DVS_Y_X@GOTPCREL(%rip), %rax
	movd	(%rax), %xmm4                   ## xmm4 = mem[0],zero,zero,zero
	movq	_D3DVS_Y_Y@GOTPCREL(%rip), %rax
	pinsrd	$1, (%rax), %xmm4
	movq	_D3DVS_Y_Z@GOTPCREL(%rip), %rax
	pinsrd	$2, (%rax), %xmm4
	movq	_D3DVS_Y_W@GOTPCREL(%rip), %rax
	pinsrd	$3, (%rax), %xmm4
	movq	_D3DVS_W_X@GOTPCREL(%rip), %rax
	movd	(%rax), %xmm5                   ## xmm5 = mem[0],zero,zero,zero
	movq	_D3DVS_W_Y@GOTPCREL(%rip), %rax
	pinsrd	$1, (%rax), %xmm5
	movq	_D3DVS_W_Z@GOTPCREL(%rip), %rax
	pinsrd	$2, (%rax), %xmm5
	movq	_D3DVS_W_W@GOTPCREL(%rip), %rax
	pinsrd	$3, (%rax), %xmm5
	movd	%edi, %xmm6
	movq	_D3DVS_X_Y@GOTPCREL(%rip), %rax
	pshufd	$0, %xmm6, %xmm6                ## xmm6 = xmm6[0,0,0,0]
	movdqa	%xmm11, %xmm7
	pand	%xmm6, %xmm7
	movdqa	%xmm10, %xmm2
	pand	%xmm6, %xmm2
	movdqa	%xmm8, %xmm1
	pand	%xmm6, %xmm1
	pand	%xmm9, %xmm6
	pcmpeqd	%xmm9, %xmm6
	movd	(%rax), %xmm0                   ## xmm0 = mem[0],zero,zero,zero
	movq	_D3DVS_X_X@GOTPCREL(%rip), %rax
	pinsrd	$1, (%rax), %xmm0
	movq	_D3DVS_X_Z@GOTPCREL(%rip), %rax
	pinsrd	$2, (%rax), %xmm0
	movq	_D3DVS_X_W@GOTPCREL(%rip), %rax
	pinsrd	$3, (%rax), %xmm0
	movq	_D3DVS_Z_X@GOTPCREL(%rip), %rax
	pcmpeqd	%xmm8, %xmm1
	movd	(%rax), %xmm3                   ## xmm3 = mem[0],zero,zero,zero
	movq	_D3DVS_Z_Y@GOTPCREL(%rip), %rax
	pinsrd	$1, (%rax), %xmm3
	pcmpeqd	%xmm10, %xmm2
	movq	_D3DVS_Z_Z@GOTPCREL(%rip), %rax
	pinsrd	$2, (%rax), %xmm3
	pcmpeqd	%xmm11, %xmm7
	movq	_D3DVS_Z_W@GOTPCREL(%rip), %rax
	pand	%xmm6, %xmm4
	pand	%xmm1, %xmm5
	por	%xmm4, %xmm5
	pand	%xmm2, %xmm0
	pinsrd	$3, (%rax), %xmm3
	pand	%xmm7, %xmm3
	por	%xmm0, %xmm3
	por	%xmm5, %xmm3
	pshufd	$238, %xmm3, %xmm0              ## xmm0 = xmm3[2,3,2,3]
	por	%xmm3, %xmm0
	pshufd	$85, %xmm0, %xmm1               ## xmm1 = xmm0[1,1,1,1]
	por	%xmm0, %xmm1
	movd	%xmm1, %eax
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_BWRITERVS_X_X,4,2              ## @BWRITERVS_X_X
	.comm	_D3DVS_X_X,4,2                  ## @D3DVS_X_X
	.comm	_BWRITERVS_X_Y,4,2              ## @BWRITERVS_X_Y
	.comm	_D3DVS_X_Y,4,2                  ## @D3DVS_X_Y
	.comm	_BWRITERVS_X_Z,4,2              ## @BWRITERVS_X_Z
	.comm	_D3DVS_X_Z,4,2                  ## @D3DVS_X_Z
	.comm	_BWRITERVS_X_W,4,2              ## @BWRITERVS_X_W
	.comm	_D3DVS_X_W,4,2                  ## @D3DVS_X_W
	.comm	_BWRITERVS_Y_X,4,2              ## @BWRITERVS_Y_X
	.comm	_D3DVS_Y_X,4,2                  ## @D3DVS_Y_X
	.comm	_BWRITERVS_Y_Y,4,2              ## @BWRITERVS_Y_Y
	.comm	_D3DVS_Y_Y,4,2                  ## @D3DVS_Y_Y
	.comm	_BWRITERVS_Y_Z,4,2              ## @BWRITERVS_Y_Z
	.comm	_D3DVS_Y_Z,4,2                  ## @D3DVS_Y_Z
	.comm	_BWRITERVS_Y_W,4,2              ## @BWRITERVS_Y_W
	.comm	_D3DVS_Y_W,4,2                  ## @D3DVS_Y_W
	.comm	_BWRITERVS_Z_X,4,2              ## @BWRITERVS_Z_X
	.comm	_D3DVS_Z_X,4,2                  ## @D3DVS_Z_X
	.comm	_BWRITERVS_Z_Y,4,2              ## @BWRITERVS_Z_Y
	.comm	_D3DVS_Z_Y,4,2                  ## @D3DVS_Z_Y
	.comm	_BWRITERVS_Z_Z,4,2              ## @BWRITERVS_Z_Z
	.comm	_D3DVS_Z_Z,4,2                  ## @D3DVS_Z_Z
	.comm	_BWRITERVS_Z_W,4,2              ## @BWRITERVS_Z_W
	.comm	_D3DVS_Z_W,4,2                  ## @D3DVS_Z_W
	.comm	_BWRITERVS_W_X,4,2              ## @BWRITERVS_W_X
	.comm	_D3DVS_W_X,4,2                  ## @D3DVS_W_X
	.comm	_BWRITERVS_W_Y,4,2              ## @BWRITERVS_W_Y
	.comm	_D3DVS_W_Y,4,2                  ## @D3DVS_W_Y
	.comm	_BWRITERVS_W_Z,4,2              ## @BWRITERVS_W_Z
	.comm	_D3DVS_W_Z,4,2                  ## @D3DVS_W_Z
	.comm	_BWRITERVS_W_W,4,2              ## @BWRITERVS_W_W
	.comm	_D3DVS_W_W,4,2                  ## @D3DVS_W_W
	.no_dead_strip	_d3d9_swizzle
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function d3d9_swizzle
_d3d9_swizzle:                          ; @d3d9_swizzle
	.cfi_startproc
; %bb.0:
Lloh0:
	adrp	x8, _BWRITERVS_X_X@GOTPAGE
Lloh1:
	ldr	x8, [x8, _BWRITERVS_X_X@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
Lloh3:
	adrp	x9, _D3DVS_X_X@GOTPAGE
Lloh4:
	ldr	x9, [x9, _D3DVS_X_X@GOTPAGEOFF]
Lloh5:
	ldr	w9, [x9]
	bics	wzr, w8, w0
	csel	w8, w9, wzr, eq
Lloh6:
	adrp	x9, _BWRITERVS_X_Y@GOTPAGE
Lloh7:
	ldr	x9, [x9, _BWRITERVS_X_Y@GOTPAGEOFF]
Lloh8:
	adrp	x10, _D3DVS_X_Y@GOTPAGE
Lloh9:
	ldr	x10, [x10, _D3DVS_X_Y@GOTPAGEOFF]
Lloh10:
	ldr	w9, [x9]
Lloh11:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
Lloh12:
	adrp	x10, _BWRITERVS_X_Z@GOTPAGE
Lloh13:
	ldr	x10, [x10, _BWRITERVS_X_Z@GOTPAGEOFF]
	orr	w8, w9, w8
Lloh14:
	ldr	w9, [x10]
Lloh15:
	adrp	x10, _D3DVS_X_Z@GOTPAGE
Lloh16:
	ldr	x10, [x10, _D3DVS_X_Z@GOTPAGEOFF]
Lloh17:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
	orr	w8, w8, w9
Lloh18:
	adrp	x9, _BWRITERVS_X_W@GOTPAGE
Lloh19:
	ldr	x9, [x9, _BWRITERVS_X_W@GOTPAGEOFF]
Lloh20:
	adrp	x10, _D3DVS_X_W@GOTPAGE
Lloh21:
	ldr	x10, [x10, _D3DVS_X_W@GOTPAGEOFF]
Lloh22:
	ldr	w9, [x9]
Lloh23:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
Lloh24:
	adrp	x10, _BWRITERVS_Y_X@GOTPAGE
Lloh25:
	ldr	x10, [x10, _BWRITERVS_Y_X@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh26:
	ldr	w9, [x10]
Lloh27:
	adrp	x10, _D3DVS_Y_X@GOTPAGE
Lloh28:
	ldr	x10, [x10, _D3DVS_Y_X@GOTPAGEOFF]
Lloh29:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
	orr	w8, w8, w9
Lloh30:
	adrp	x9, _BWRITERVS_Y_Y@GOTPAGE
Lloh31:
	ldr	x9, [x9, _BWRITERVS_Y_Y@GOTPAGEOFF]
Lloh32:
	adrp	x10, _D3DVS_Y_Y@GOTPAGE
Lloh33:
	ldr	x10, [x10, _D3DVS_Y_Y@GOTPAGEOFF]
Lloh34:
	ldr	w9, [x9]
Lloh35:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
Lloh36:
	adrp	x10, _BWRITERVS_Y_Z@GOTPAGE
Lloh37:
	ldr	x10, [x10, _BWRITERVS_Y_Z@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh38:
	ldr	w9, [x10]
Lloh39:
	adrp	x10, _D3DVS_Y_Z@GOTPAGE
Lloh40:
	ldr	x10, [x10, _D3DVS_Y_Z@GOTPAGEOFF]
Lloh41:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
	orr	w8, w8, w9
Lloh42:
	adrp	x9, _BWRITERVS_Y_W@GOTPAGE
Lloh43:
	ldr	x9, [x9, _BWRITERVS_Y_W@GOTPAGEOFF]
Lloh44:
	adrp	x10, _D3DVS_Y_W@GOTPAGE
Lloh45:
	ldr	x10, [x10, _D3DVS_Y_W@GOTPAGEOFF]
Lloh46:
	ldr	w9, [x9]
Lloh47:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
Lloh48:
	adrp	x10, _BWRITERVS_Z_X@GOTPAGE
Lloh49:
	ldr	x10, [x10, _BWRITERVS_Z_X@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh50:
	ldr	w9, [x10]
Lloh51:
	adrp	x10, _D3DVS_Z_X@GOTPAGE
Lloh52:
	ldr	x10, [x10, _D3DVS_Z_X@GOTPAGEOFF]
Lloh53:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
	orr	w8, w8, w9
Lloh54:
	adrp	x9, _BWRITERVS_Z_Y@GOTPAGE
Lloh55:
	ldr	x9, [x9, _BWRITERVS_Z_Y@GOTPAGEOFF]
Lloh56:
	adrp	x10, _D3DVS_Z_Y@GOTPAGE
Lloh57:
	ldr	x10, [x10, _D3DVS_Z_Y@GOTPAGEOFF]
Lloh58:
	ldr	w9, [x9]
Lloh59:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
Lloh60:
	adrp	x10, _BWRITERVS_Z_Z@GOTPAGE
Lloh61:
	ldr	x10, [x10, _BWRITERVS_Z_Z@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh62:
	ldr	w9, [x10]
Lloh63:
	adrp	x10, _D3DVS_Z_Z@GOTPAGE
Lloh64:
	ldr	x10, [x10, _D3DVS_Z_Z@GOTPAGEOFF]
Lloh65:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
	orr	w8, w8, w9
Lloh66:
	adrp	x9, _BWRITERVS_Z_W@GOTPAGE
Lloh67:
	ldr	x9, [x9, _BWRITERVS_Z_W@GOTPAGEOFF]
Lloh68:
	adrp	x10, _D3DVS_Z_W@GOTPAGE
Lloh69:
	ldr	x10, [x10, _D3DVS_Z_W@GOTPAGEOFF]
Lloh70:
	ldr	w9, [x9]
Lloh71:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
Lloh72:
	adrp	x10, _BWRITERVS_W_X@GOTPAGE
Lloh73:
	ldr	x10, [x10, _BWRITERVS_W_X@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh74:
	ldr	w9, [x10]
Lloh75:
	adrp	x10, _D3DVS_W_X@GOTPAGE
Lloh76:
	ldr	x10, [x10, _D3DVS_W_X@GOTPAGEOFF]
Lloh77:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
	orr	w8, w8, w9
Lloh78:
	adrp	x9, _BWRITERVS_W_Y@GOTPAGE
Lloh79:
	ldr	x9, [x9, _BWRITERVS_W_Y@GOTPAGEOFF]
Lloh80:
	adrp	x10, _D3DVS_W_Y@GOTPAGE
Lloh81:
	ldr	x10, [x10, _D3DVS_W_Y@GOTPAGEOFF]
Lloh82:
	ldr	w9, [x9]
Lloh83:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
Lloh84:
	adrp	x10, _BWRITERVS_W_Z@GOTPAGE
Lloh85:
	ldr	x10, [x10, _BWRITERVS_W_Z@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh86:
	ldr	w9, [x10]
Lloh87:
	adrp	x10, _D3DVS_W_Z@GOTPAGE
Lloh88:
	ldr	x10, [x10, _D3DVS_W_Z@GOTPAGEOFF]
Lloh89:
	ldr	w10, [x10]
	bics	wzr, w9, w0
	csel	w9, w10, wzr, eq
	orr	w8, w8, w9
Lloh90:
	adrp	x9, _BWRITERVS_W_W@GOTPAGE
Lloh91:
	ldr	x9, [x9, _BWRITERVS_W_W@GOTPAGEOFF]
Lloh92:
	ldr	w9, [x9]
	bics	wzr, w9, w0
Lloh93:
	adrp	x9, _D3DVS_W_W@GOTPAGE
Lloh94:
	ldr	x9, [x9, _D3DVS_W_W@GOTPAGEOFF]
Lloh95:
	ldr	w9, [x9]
	csel	w9, w9, wzr, eq
	orr	w0, w8, w9
	ret
	.loh AdrpLdrGotLdr	Lloh93, Lloh94, Lloh95
	.loh AdrpLdrGotLdr	Lloh90, Lloh91, Lloh92
	.loh AdrpLdrGotLdr	Lloh87, Lloh88, Lloh89
	.loh AdrpLdrGotLdr	Lloh84, Lloh85, Lloh86
	.loh AdrpLdrGotLdr	Lloh80, Lloh81, Lloh83
	.loh AdrpLdrGotLdr	Lloh78, Lloh79, Lloh82
	.loh AdrpLdrGotLdr	Lloh75, Lloh76, Lloh77
	.loh AdrpLdrGotLdr	Lloh72, Lloh73, Lloh74
	.loh AdrpLdrGotLdr	Lloh68, Lloh69, Lloh71
	.loh AdrpLdrGotLdr	Lloh66, Lloh67, Lloh70
	.loh AdrpLdrGotLdr	Lloh63, Lloh64, Lloh65
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh56, Lloh57, Lloh59
	.loh AdrpLdrGotLdr	Lloh54, Lloh55, Lloh58
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpLdrGotLdr	Lloh48, Lloh49, Lloh50
	.loh AdrpLdrGotLdr	Lloh44, Lloh45, Lloh47
	.loh AdrpLdrGotLdr	Lloh42, Lloh43, Lloh46
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh41
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh35
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh34
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh23
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh22
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh10
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_BWRITERVS_X_X,4,2              ; @BWRITERVS_X_X
	.comm	_D3DVS_X_X,4,2                  ; @D3DVS_X_X
	.comm	_BWRITERVS_X_Y,4,2              ; @BWRITERVS_X_Y
	.comm	_D3DVS_X_Y,4,2                  ; @D3DVS_X_Y
	.comm	_BWRITERVS_X_Z,4,2              ; @BWRITERVS_X_Z
	.comm	_D3DVS_X_Z,4,2                  ; @D3DVS_X_Z
	.comm	_BWRITERVS_X_W,4,2              ; @BWRITERVS_X_W
	.comm	_D3DVS_X_W,4,2                  ; @D3DVS_X_W
	.comm	_BWRITERVS_Y_X,4,2              ; @BWRITERVS_Y_X
	.comm	_D3DVS_Y_X,4,2                  ; @D3DVS_Y_X
	.comm	_BWRITERVS_Y_Y,4,2              ; @BWRITERVS_Y_Y
	.comm	_D3DVS_Y_Y,4,2                  ; @D3DVS_Y_Y
	.comm	_BWRITERVS_Y_Z,4,2              ; @BWRITERVS_Y_Z
	.comm	_D3DVS_Y_Z,4,2                  ; @D3DVS_Y_Z
	.comm	_BWRITERVS_Y_W,4,2              ; @BWRITERVS_Y_W
	.comm	_D3DVS_Y_W,4,2                  ; @D3DVS_Y_W
	.comm	_BWRITERVS_Z_X,4,2              ; @BWRITERVS_Z_X
	.comm	_D3DVS_Z_X,4,2                  ; @D3DVS_Z_X
	.comm	_BWRITERVS_Z_Y,4,2              ; @BWRITERVS_Z_Y
	.comm	_D3DVS_Z_Y,4,2                  ; @D3DVS_Z_Y
	.comm	_BWRITERVS_Z_Z,4,2              ; @BWRITERVS_Z_Z
	.comm	_D3DVS_Z_Z,4,2                  ; @D3DVS_Z_Z
	.comm	_BWRITERVS_Z_W,4,2              ; @BWRITERVS_Z_W
	.comm	_D3DVS_Z_W,4,2                  ; @D3DVS_Z_W
	.comm	_BWRITERVS_W_X,4,2              ; @BWRITERVS_W_X
	.comm	_D3DVS_W_X,4,2                  ; @D3DVS_W_X
	.comm	_BWRITERVS_W_Y,4,2              ; @BWRITERVS_W_Y
	.comm	_D3DVS_W_Y,4,2                  ; @D3DVS_W_Y
	.comm	_BWRITERVS_W_Z,4,2              ; @BWRITERVS_W_Z
	.comm	_D3DVS_W_Z,4,2                  ; @D3DVS_W_Z
	.comm	_BWRITERVS_W_W,4,2              ; @BWRITERVS_W_W
	.comm	_D3DVS_W_W,4,2                  ; @D3DVS_W_W
	.no_dead_strip	_d3d9_swizzle
.subsections_via_symbols
