	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function add_register
_add_register:                          ## @add_register
	.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	%r12
	pushq	%rbx
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rcx, %rbx
	movl	%esi, %r15d
	movq	_D3DSP_REGTYPE_MASK2@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	andl	%r15d, %esi
	movq	_D3DSP_REGTYPE_SHIFT2@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	sarl	%cl, %esi
	movq	_D3DSP_REGTYPE_MASK@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	andl	%r15d, %eax
	movq	_D3DSP_REGTYPE_SHIFT@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	sarl	%cl, %eax
	movq	%rdx, %r12
	movq	%rdi, %r14
	orl	%esi, %eax
	movq	_D3DSP_REGNUM_MASK@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	andl	%r15d, %ecx
	movq	_D3DSPR_INPUT@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	jne	LBB0_3
## %bb.1:
	leaq	L_.str(%rip), %rsi
	jmp	LBB0_2
LBB0_3:
	movq	_D3DSPR_CONST@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	jne	LBB0_5
## %bb.4:
	leaq	L_.str.1(%rip), %rsi
	jmp	LBB0_2
LBB0_5:
	movq	_D3DSPR_TEMP@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	jne	LBB0_7
## %bb.6:
	leaq	L_.str.2(%rip), %rsi
	jmp	LBB0_2
LBB0_7:
	movq	_D3DSPR_ADDR@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	jne	LBB0_9
## %bb.8:
	testq	%rbx, %rbx
	leaq	L_.str.5(%rip), %rax
	leaq	L_.str.4(%rip), %rdx
	cmoveq	%rax, %rdx
	leaq	L_.str.3(%rip), %rsi
	movq	%r14, %rdi
	xorl	%eax, %eax
	callq	_sprintf
	jmp	LBB0_21
LBB0_9:
	movq	_D3DSPR_SAMPLER@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	jne	LBB0_11
## %bb.10:
	leaq	L_.str.6(%rip), %rsi
	jmp	LBB0_2
LBB0_11:
	movq	_D3DSPR_RASTOUT@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	jne	LBB0_13
## %bb.12:
	movb	$0, 4(%r14)
	movl	$1936674927, (%r14)             ## imm = 0x736F506F
	movl	$4, %ebx
	jmp	LBB0_22
LBB0_13:
	movq	_D3DSPR_COLOROUT@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	jne	LBB0_15
## %bb.14:
	leaq	L_.str.8(%rip), %rsi
	jmp	LBB0_2
LBB0_15:
	movq	_D3DSPR_TEXCRDOUT@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	jne	LBB0_17
## %bb.16:
	leaq	L_.str.9(%rip), %rsi
	jmp	LBB0_2
LBB0_17:
	movq	_D3DSPR_ATTROUT@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	jne	LBB0_19
## %bb.18:
	leaq	L_.str.10(%rip), %rsi
LBB0_2:
	movq	%r14, %rdi
	movl	%ecx, %edx
LBB0_20:
	xorl	%eax, %eax
	callq	_sprintf
LBB0_21:
	movslq	%eax, %rbx
LBB0_22:
	addq	%r14, %rbx
	testq	%r12, %r12
	je	LBB0_25
## %bb.23:
	movq	_D3DSP_WRITEMASK_ALL@GOTPCREL(%rip), %rax
	movl	%r15d, %ecx
	notl	%ecx
	testl	%ecx, (%rax)
	je	LBB0_33
## %bb.24:
	movq	_D3DSP_WRITEMASK_0@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	andl	%r15d, %eax
	leaq	L_.str.14(%rip), %rax
	leaq	L_.str.13(%rip), %rdx
	cmoveq	%rax, %rdx
	movq	_D3DSP_WRITEMASK_1@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	andl	%r15d, %ecx
	leaq	L_.str.15(%rip), %rcx
	cmoveq	%rax, %rcx
	movq	_D3DSP_WRITEMASK_2@GOTPCREL(%rip), %rsi
	movl	(%rsi), %esi
	andl	%r15d, %esi
	leaq	L_.str.16(%rip), %r8
	cmoveq	%rax, %r8
	movq	_D3DSP_WRITEMASK_3@GOTPCREL(%rip), %rsi
	andl	(%rsi), %r15d
	leaq	L_.str.17(%rip), %r9
	cmoveq	%rax, %r9
	leaq	L_.str.12(%rip), %rsi
	movq	%rbx, %rdi
	xorl	%eax, %eax
	callq	_sprintf
	jmp	LBB0_32
LBB0_25:
	movq	_D3DVS_SWIZZLE_MASK@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	andl	%r15d, %eax
	movq	_D3DVS_NOSWIZZLE@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	je	LBB0_33
## %bb.26:
	movq	_D3DSP_SWIZZLE_MASK@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_D3DVS_X_X@GOTPCREL(%rip), %rcx
	movq	_D3DVS_Y_X@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	orl	(%rcx), %edx
	andl	%r15d, %eax
	movq	_D3DVS_Z_X@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	movq	_D3DVS_W_X@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	cmpl	%edx, %eax
	je	LBB0_30
## %bb.27:
	movq	_D3DVS_X_Y@GOTPCREL(%rip), %rcx
	movq	_D3DVS_Y_Y@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	orl	(%rcx), %edx
	movq	_D3DVS_Z_Y@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	movq	_D3DVS_W_Y@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	cmpl	%edx, %eax
	je	LBB0_30
## %bb.28:
	movq	_D3DVS_X_Z@GOTPCREL(%rip), %rcx
	movq	_D3DVS_Y_Z@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	orl	(%rcx), %edx
	movq	_D3DVS_Z_Z@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	movq	_D3DVS_W_Z@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	cmpl	%edx, %eax
	je	LBB0_30
## %bb.29:
	movq	_D3DVS_X_W@GOTPCREL(%rip), %rcx
	movq	_D3DVS_Y_W@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	orl	(%rcx), %edx
	movq	_D3DVS_Z_W@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	movq	_D3DVS_W_W@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	cmpl	%edx, %eax
	jne	LBB0_31
LBB0_30:
	movq	_D3DVS_SWIZZLE_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	sarl	%cl, %r15d
	incl	%r15d
	andl	$3, %r15d
	addl	$119, %r15d
	leaq	L_.str.18(%rip), %rsi
	movq	%rbx, %rdi
	movl	%r15d, %edx
	xorl	%eax, %eax
	callq	_sprintf
LBB0_32:
	cltq
	addq	%rax, %rbx
LBB0_33:
	subl	%r14d, %ebx
	movl	%ebx, %eax
	popq	%rbx
	popq	%r12
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_31:
	movq	_D3DVS_SWIZZLE_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %sil
	movl	%r15d, %edx
	movl	%esi, %ecx
	sarl	%cl, %edx
	incl	%edx
	andl	$3, %edx
	addl	$119, %edx
	leal	2(%rsi), %ecx
	movl	%r15d, %eax
                                        ## kill: def $cl killed $cl killed $ecx
	sarl	%cl, %eax
	incl	%eax
	leal	4(%rsi), %ecx
	movl	%r15d, %r8d
                                        ## kill: def $cl killed $cl killed $ecx
	sarl	%cl, %r8d
	andl	$3, %eax
	addl	$119, %eax
	incl	%r8d
	andl	$3, %r8d
	addb	$6, %sil
	movl	%esi, %ecx
	sarl	%cl, %r15d
	addl	$119, %r8d
	incl	%r15d
	andl	$3, %r15d
	addl	$119, %r15d
	leaq	L_.str.19(%rip), %rsi
	movq	%rbx, %rdi
	movl	%eax, %ecx
	movl	%r15d, %r9d
	xorl	%eax, %eax
	callq	_sprintf
	jmp	LBB0_32
LBB0_19:
	leaq	L_.str.11(%rip), %rsi
	movq	%r14, %rdi
	movl	%eax, %edx
	jmp	LBB0_20
	.cfi_endproc
                                        ## -- End function
	.comm	_D3DSP_REGTYPE_MASK2,4,2        ## @D3DSP_REGTYPE_MASK2
	.comm	_D3DSP_REGTYPE_SHIFT2,4,2       ## @D3DSP_REGTYPE_SHIFT2
	.comm	_D3DSP_REGTYPE_MASK,4,2         ## @D3DSP_REGTYPE_MASK
	.comm	_D3DSP_REGTYPE_SHIFT,4,2        ## @D3DSP_REGTYPE_SHIFT
	.comm	_D3DSP_REGNUM_MASK,4,2          ## @D3DSP_REGNUM_MASK
	.comm	_D3DSPR_INPUT,4,2               ## @D3DSPR_INPUT
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"v%d"

	.comm	_D3DSPR_CONST,4,2               ## @D3DSPR_CONST
L_.str.1:                               ## @.str.1
	.asciz	"c%d"

	.comm	_D3DSPR_TEMP,4,2                ## @D3DSPR_TEMP
L_.str.2:                               ## @.str.2
	.asciz	"r%d"

	.comm	_D3DSPR_ADDR,4,2                ## @D3DSPR_ADDR
L_.str.3:                               ## @.str.3
	.asciz	"%s%d"

L_.str.4:                               ## @.str.4
	.asciz	"t"

L_.str.5:                               ## @.str.5
	.asciz	"a"

	.comm	_D3DSPR_SAMPLER,4,2             ## @D3DSPR_SAMPLER
L_.str.6:                               ## @.str.6
	.asciz	"s%d"

	.comm	_D3DSPR_RASTOUT,4,2             ## @D3DSPR_RASTOUT
L_.str.7:                               ## @.str.7
	.asciz	"oPos"

	.comm	_D3DSPR_COLOROUT,4,2            ## @D3DSPR_COLOROUT
L_.str.8:                               ## @.str.8
	.asciz	"oC%d"

	.comm	_D3DSPR_TEXCRDOUT,4,2           ## @D3DSPR_TEXCRDOUT
L_.str.9:                               ## @.str.9
	.asciz	"oT%d"

	.comm	_D3DSPR_ATTROUT,4,2             ## @D3DSPR_ATTROUT
L_.str.10:                              ## @.str.10
	.asciz	"oD%d"

L_.str.11:                              ## @.str.11
	.asciz	"? (%d)"

	.comm	_D3DSP_WRITEMASK_ALL,4,2        ## @D3DSP_WRITEMASK_ALL
L_.str.12:                              ## @.str.12
	.asciz	".%s%s%s%s"

	.comm	_D3DSP_WRITEMASK_0,4,2          ## @D3DSP_WRITEMASK_0
L_.str.13:                              ## @.str.13
	.asciz	"x"

L_.str.14:                              ## @.str.14
	.space	1

	.comm	_D3DSP_WRITEMASK_1,4,2          ## @D3DSP_WRITEMASK_1
L_.str.15:                              ## @.str.15
	.asciz	"y"

	.comm	_D3DSP_WRITEMASK_2,4,2          ## @D3DSP_WRITEMASK_2
L_.str.16:                              ## @.str.16
	.asciz	"z"

	.comm	_D3DSP_WRITEMASK_3,4,2          ## @D3DSP_WRITEMASK_3
L_.str.17:                              ## @.str.17
	.asciz	"w"

	.comm	_D3DVS_SWIZZLE_MASK,4,2         ## @D3DVS_SWIZZLE_MASK
	.comm	_D3DVS_NOSWIZZLE,4,2            ## @D3DVS_NOSWIZZLE
	.comm	_D3DSP_SWIZZLE_MASK,4,2         ## @D3DSP_SWIZZLE_MASK
	.comm	_D3DVS_X_X,4,2                  ## @D3DVS_X_X
	.comm	_D3DVS_Y_X,4,2                  ## @D3DVS_Y_X
	.comm	_D3DVS_Z_X,4,2                  ## @D3DVS_Z_X
	.comm	_D3DVS_W_X,4,2                  ## @D3DVS_W_X
	.comm	_D3DVS_X_Y,4,2                  ## @D3DVS_X_Y
	.comm	_D3DVS_Y_Y,4,2                  ## @D3DVS_Y_Y
	.comm	_D3DVS_Z_Y,4,2                  ## @D3DVS_Z_Y
	.comm	_D3DVS_W_Y,4,2                  ## @D3DVS_W_Y
	.comm	_D3DVS_X_Z,4,2                  ## @D3DVS_X_Z
	.comm	_D3DVS_Y_Z,4,2                  ## @D3DVS_Y_Z
	.comm	_D3DVS_Z_Z,4,2                  ## @D3DVS_Z_Z
	.comm	_D3DVS_W_Z,4,2                  ## @D3DVS_W_Z
	.comm	_D3DVS_X_W,4,2                  ## @D3DVS_X_W
	.comm	_D3DVS_Y_W,4,2                  ## @D3DVS_Y_W
	.comm	_D3DVS_Z_W,4,2                  ## @D3DVS_Z_W
	.comm	_D3DVS_W_W,4,2                  ## @D3DVS_W_W
L_.str.18:                              ## @.str.18
	.asciz	".%c"

	.comm	_D3DVS_SWIZZLE_SHIFT,4,2        ## @D3DVS_SWIZZLE_SHIFT
L_.str.19:                              ## @.str.19
	.asciz	".%c%c%c%c"

	.no_dead_strip	_add_register
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function add_register
_add_register:                          ; @add_register
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #80
	.cfi_def_cfa_offset 80
	stp	x22, x21, [sp, #32]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.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
	mov	x21, x2
	mov	x20, x1
	mov	x19, x0
Lloh0:
	adrp	x8, _D3DSP_REGTYPE_MASK2@GOTPAGE
Lloh1:
	ldr	x8, [x8, _D3DSP_REGTYPE_MASK2@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
	and	w8, w8, w1
Lloh3:
	adrp	x9, _D3DSP_REGTYPE_SHIFT2@GOTPAGE
Lloh4:
	ldr	x9, [x9, _D3DSP_REGTYPE_SHIFT2@GOTPAGEOFF]
Lloh5:
	ldr	w9, [x9]
	asr	w8, w8, w9
Lloh6:
	adrp	x9, _D3DSP_REGTYPE_MASK@GOTPAGE
Lloh7:
	ldr	x9, [x9, _D3DSP_REGTYPE_MASK@GOTPAGEOFF]
Lloh8:
	ldr	w9, [x9]
Lloh9:
	adrp	x10, _D3DSP_REGTYPE_SHIFT@GOTPAGE
Lloh10:
	ldr	x10, [x10, _D3DSP_REGTYPE_SHIFT@GOTPAGEOFF]
	and	w9, w9, w1
Lloh11:
	ldr	w10, [x10]
	asr	w9, w9, w10
	orr	w9, w9, w8
Lloh12:
	adrp	x8, _D3DSP_REGNUM_MASK@GOTPAGE
Lloh13:
	ldr	x8, [x8, _D3DSP_REGNUM_MASK@GOTPAGEOFF]
Lloh14:
	ldr	w8, [x8]
	and	w8, w8, w1
Lloh15:
	adrp	x10, _D3DSPR_INPUT@GOTPAGE
Lloh16:
	ldr	x10, [x10, _D3DSPR_INPUT@GOTPAGEOFF]
Lloh17:
	ldr	w10, [x10]
	cmp	w9, w10
	b.ne	LBB0_2
; %bb.1:
	str	x8, [sp]
Lloh18:
	adrp	x1, l_.str@PAGE
Lloh19:
	add	x1, x1, l_.str@PAGEOFF
	b	LBB0_19
LBB0_2:
Lloh20:
	adrp	x10, _D3DSPR_CONST@GOTPAGE
Lloh21:
	ldr	x10, [x10, _D3DSPR_CONST@GOTPAGEOFF]
Lloh22:
	ldr	w10, [x10]
	cmp	w9, w10
	b.ne	LBB0_4
; %bb.3:
                                        ; kill: def $w8 killed $w8 killed $x8 def $x8
	str	x8, [sp]
Lloh23:
	adrp	x1, l_.str.1@PAGE
Lloh24:
	add	x1, x1, l_.str.1@PAGEOFF
	b	LBB0_19
LBB0_4:
Lloh25:
	adrp	x10, _D3DSPR_TEMP@GOTPAGE
Lloh26:
	ldr	x10, [x10, _D3DSPR_TEMP@GOTPAGEOFF]
Lloh27:
	ldr	w10, [x10]
	cmp	w9, w10
	b.ne	LBB0_6
; %bb.5:
                                        ; kill: def $w8 killed $w8 killed $x8 def $x8
	str	x8, [sp]
Lloh28:
	adrp	x1, l_.str.2@PAGE
Lloh29:
	add	x1, x1, l_.str.2@PAGEOFF
	b	LBB0_19
LBB0_6:
Lloh30:
	adrp	x10, _D3DSPR_ADDR@GOTPAGE
Lloh31:
	ldr	x10, [x10, _D3DSPR_ADDR@GOTPAGEOFF]
Lloh32:
	ldr	w10, [x10]
	cmp	w9, w10
	b.ne	LBB0_8
; %bb.7:
Lloh33:
	adrp	x9, l_.str.4@PAGE
Lloh34:
	add	x9, x9, l_.str.4@PAGEOFF
Lloh35:
	adrp	x10, l_.str.5@PAGE
Lloh36:
	add	x10, x10, l_.str.5@PAGEOFF
	cmp	x3, #0
	csel	x9, x10, x9, eq
                                        ; kill: def $w8 killed $w8 killed $x8 def $x8
	stp	x9, x8, [sp]
Lloh37:
	adrp	x1, l_.str.3@PAGE
Lloh38:
	add	x1, x1, l_.str.3@PAGEOFF
	b	LBB0_19
LBB0_8:
Lloh39:
	adrp	x10, _D3DSPR_SAMPLER@GOTPAGE
Lloh40:
	ldr	x10, [x10, _D3DSPR_SAMPLER@GOTPAGEOFF]
Lloh41:
	ldr	w10, [x10]
	cmp	w9, w10
	b.ne	LBB0_10
; %bb.9:
                                        ; kill: def $w8 killed $w8 killed $x8 def $x8
	str	x8, [sp]
Lloh42:
	adrp	x1, l_.str.6@PAGE
Lloh43:
	add	x1, x1, l_.str.6@PAGEOFF
	b	LBB0_19
LBB0_10:
Lloh44:
	adrp	x10, _D3DSPR_RASTOUT@GOTPAGE
Lloh45:
	ldr	x10, [x10, _D3DSPR_RASTOUT@GOTPAGEOFF]
Lloh46:
	ldr	w10, [x10]
	cmp	w9, w10
	b.ne	LBB0_12
; %bb.11:
	strb	wzr, [x19, #4]
	mov	w8, #20591
	movk	w8, #29551, lsl #16
	str	w8, [x19]
	mov	w8, #4
	b	LBB0_20
LBB0_12:
Lloh47:
	adrp	x10, _D3DSPR_COLOROUT@GOTPAGE
Lloh48:
	ldr	x10, [x10, _D3DSPR_COLOROUT@GOTPAGEOFF]
Lloh49:
	ldr	w10, [x10]
	cmp	w9, w10
	b.ne	LBB0_14
; %bb.13:
                                        ; kill: def $w8 killed $w8 killed $x8 def $x8
	str	x8, [sp]
Lloh50:
	adrp	x1, l_.str.8@PAGE
Lloh51:
	add	x1, x1, l_.str.8@PAGEOFF
	b	LBB0_19
LBB0_14:
Lloh52:
	adrp	x10, _D3DSPR_TEXCRDOUT@GOTPAGE
Lloh53:
	ldr	x10, [x10, _D3DSPR_TEXCRDOUT@GOTPAGEOFF]
Lloh54:
	ldr	w10, [x10]
	cmp	w9, w10
	b.ne	LBB0_16
; %bb.15:
                                        ; kill: def $w8 killed $w8 killed $x8 def $x8
	str	x8, [sp]
Lloh55:
	adrp	x1, l_.str.9@PAGE
Lloh56:
	add	x1, x1, l_.str.9@PAGEOFF
	b	LBB0_19
LBB0_16:
Lloh57:
	adrp	x10, _D3DSPR_ATTROUT@GOTPAGE
Lloh58:
	ldr	x10, [x10, _D3DSPR_ATTROUT@GOTPAGEOFF]
Lloh59:
	ldr	w10, [x10]
	cmp	w9, w10
	b.ne	LBB0_18
; %bb.17:
                                        ; kill: def $w8 killed $w8 killed $x8 def $x8
	str	x8, [sp]
Lloh60:
	adrp	x1, l_.str.10@PAGE
Lloh61:
	add	x1, x1, l_.str.10@PAGEOFF
	b	LBB0_19
LBB0_18:
	str	x9, [sp]
Lloh62:
	adrp	x1, l_.str.11@PAGE
Lloh63:
	add	x1, x1, l_.str.11@PAGEOFF
LBB0_19:
	mov	x0, x19
	bl	_sprintf
                                        ; kill: def $w0 killed $w0 def $x0
	sxtw	x8, w0
LBB0_20:
	add	x22, x19, x8
	cbz	x21, LBB0_23
; %bb.21:
Lloh64:
	adrp	x8, _D3DSP_WRITEMASK_ALL@GOTPAGE
Lloh65:
	ldr	x8, [x8, _D3DSP_WRITEMASK_ALL@GOTPAGEOFF]
Lloh66:
	ldr	w8, [x8]
	bics	wzr, w8, w20
	b.eq	LBB0_30
; %bb.22:
Lloh67:
	adrp	x8, _D3DSP_WRITEMASK_0@GOTPAGE
Lloh68:
	ldr	x8, [x8, _D3DSP_WRITEMASK_0@GOTPAGEOFF]
Lloh69:
	adrp	x9, l_.str.13@PAGE
Lloh70:
	add	x9, x9, l_.str.13@PAGEOFF
Lloh71:
	adrp	x10, l_.str.14@PAGE
Lloh72:
	add	x10, x10, l_.str.14@PAGEOFF
Lloh73:
	ldr	w8, [x8]
	tst	w8, w20
	csel	x8, x10, x9, eq
Lloh74:
	adrp	x9, _D3DSP_WRITEMASK_1@GOTPAGE
Lloh75:
	ldr	x9, [x9, _D3DSP_WRITEMASK_1@GOTPAGEOFF]
Lloh76:
	ldr	w9, [x9]
Lloh77:
	adrp	x11, l_.str.15@PAGE
Lloh78:
	add	x11, x11, l_.str.15@PAGEOFF
	tst	w9, w20
	csel	x9, x10, x11, eq
Lloh79:
	adrp	x11, _D3DSP_WRITEMASK_2@GOTPAGE
Lloh80:
	ldr	x11, [x11, _D3DSP_WRITEMASK_2@GOTPAGEOFF]
Lloh81:
	ldr	w11, [x11]
Lloh82:
	adrp	x12, l_.str.16@PAGE
Lloh83:
	add	x12, x12, l_.str.16@PAGEOFF
	tst	w11, w20
Lloh84:
	adrp	x11, _D3DSP_WRITEMASK_3@GOTPAGE
Lloh85:
	ldr	x11, [x11, _D3DSP_WRITEMASK_3@GOTPAGEOFF]
	csel	x12, x10, x12, eq
Lloh86:
	ldr	w11, [x11]
Lloh87:
	adrp	x13, l_.str.17@PAGE
Lloh88:
	add	x13, x13, l_.str.17@PAGEOFF
	tst	w11, w20
	csel	x10, x10, x13, eq
	stp	x12, x10, [sp, #16]
	stp	x8, x9, [sp]
Lloh89:
	adrp	x1, l_.str.12@PAGE
Lloh90:
	add	x1, x1, l_.str.12@PAGEOFF
	b	LBB0_29
LBB0_23:
Lloh91:
	adrp	x8, _D3DVS_SWIZZLE_MASK@GOTPAGE
Lloh92:
	ldr	x8, [x8, _D3DVS_SWIZZLE_MASK@GOTPAGEOFF]
Lloh93:
	ldr	w8, [x8]
	and	w8, w8, w20
Lloh94:
	adrp	x9, _D3DVS_NOSWIZZLE@GOTPAGE
Lloh95:
	ldr	x9, [x9, _D3DVS_NOSWIZZLE@GOTPAGEOFF]
Lloh96:
	ldr	w9, [x9]
	cmp	w8, w9
	b.eq	LBB0_30
; %bb.24:
Lloh97:
	adrp	x8, _D3DSP_SWIZZLE_MASK@GOTPAGE
Lloh98:
	ldr	x8, [x8, _D3DSP_SWIZZLE_MASK@GOTPAGEOFF]
Lloh99:
	ldr	w8, [x8]
	and	w8, w8, w20
Lloh100:
	adrp	x9, _D3DVS_X_X@GOTPAGE
Lloh101:
	ldr	x9, [x9, _D3DVS_X_X@GOTPAGEOFF]
Lloh102:
	adrp	x10, _D3DVS_Y_X@GOTPAGE
Lloh103:
	ldr	x10, [x10, _D3DVS_Y_X@GOTPAGEOFF]
Lloh104:
	ldr	w9, [x9]
Lloh105:
	ldr	w10, [x10]
	orr	w9, w10, w9
Lloh106:
	adrp	x10, _D3DVS_Z_X@GOTPAGE
Lloh107:
	ldr	x10, [x10, _D3DVS_Z_X@GOTPAGEOFF]
Lloh108:
	ldr	w10, [x10]
	orr	w9, w9, w10
Lloh109:
	adrp	x10, _D3DVS_W_X@GOTPAGE
Lloh110:
	ldr	x10, [x10, _D3DVS_W_X@GOTPAGEOFF]
Lloh111:
	ldr	w10, [x10]
	orr	w9, w9, w10
	cmp	w8, w9
	b.eq	LBB0_28
; %bb.25:
Lloh112:
	adrp	x9, _D3DVS_X_Y@GOTPAGE
Lloh113:
	ldr	x9, [x9, _D3DVS_X_Y@GOTPAGEOFF]
Lloh114:
	adrp	x10, _D3DVS_Y_Y@GOTPAGE
Lloh115:
	ldr	x10, [x10, _D3DVS_Y_Y@GOTPAGEOFF]
Lloh116:
	ldr	w9, [x9]
Lloh117:
	ldr	w10, [x10]
	orr	w9, w10, w9
Lloh118:
	adrp	x10, _D3DVS_Z_Y@GOTPAGE
Lloh119:
	ldr	x10, [x10, _D3DVS_Z_Y@GOTPAGEOFF]
Lloh120:
	ldr	w10, [x10]
	orr	w9, w9, w10
Lloh121:
	adrp	x10, _D3DVS_W_Y@GOTPAGE
Lloh122:
	ldr	x10, [x10, _D3DVS_W_Y@GOTPAGEOFF]
Lloh123:
	ldr	w10, [x10]
	orr	w9, w9, w10
	cmp	w8, w9
	b.eq	LBB0_28
; %bb.26:
Lloh124:
	adrp	x9, _D3DVS_X_Z@GOTPAGE
Lloh125:
	ldr	x9, [x9, _D3DVS_X_Z@GOTPAGEOFF]
Lloh126:
	adrp	x10, _D3DVS_Y_Z@GOTPAGE
Lloh127:
	ldr	x10, [x10, _D3DVS_Y_Z@GOTPAGEOFF]
Lloh128:
	ldr	w9, [x9]
Lloh129:
	ldr	w10, [x10]
	orr	w9, w10, w9
Lloh130:
	adrp	x10, _D3DVS_Z_Z@GOTPAGE
Lloh131:
	ldr	x10, [x10, _D3DVS_Z_Z@GOTPAGEOFF]
Lloh132:
	ldr	w10, [x10]
	orr	w9, w9, w10
Lloh133:
	adrp	x10, _D3DVS_W_Z@GOTPAGE
Lloh134:
	ldr	x10, [x10, _D3DVS_W_Z@GOTPAGEOFF]
Lloh135:
	ldr	w10, [x10]
	orr	w9, w9, w10
	cmp	w8, w9
	b.eq	LBB0_28
; %bb.27:
Lloh136:
	adrp	x9, _D3DVS_X_W@GOTPAGE
Lloh137:
	ldr	x9, [x9, _D3DVS_X_W@GOTPAGEOFF]
Lloh138:
	adrp	x10, _D3DVS_Y_W@GOTPAGE
Lloh139:
	ldr	x10, [x10, _D3DVS_Y_W@GOTPAGEOFF]
Lloh140:
	ldr	w9, [x9]
Lloh141:
	ldr	w10, [x10]
	orr	w9, w10, w9
Lloh142:
	adrp	x10, _D3DVS_Z_W@GOTPAGE
Lloh143:
	ldr	x10, [x10, _D3DVS_Z_W@GOTPAGEOFF]
Lloh144:
	ldr	w10, [x10]
	orr	w9, w9, w10
Lloh145:
	adrp	x10, _D3DVS_W_W@GOTPAGE
Lloh146:
	ldr	x10, [x10, _D3DVS_W_W@GOTPAGEOFF]
Lloh147:
	ldr	w10, [x10]
	orr	w9, w9, w10
	cmp	w8, w9
	b.ne	LBB0_31
LBB0_28:
Lloh148:
	adrp	x8, _D3DVS_SWIZZLE_SHIFT@GOTPAGE
Lloh149:
	ldr	x8, [x8, _D3DVS_SWIZZLE_SHIFT@GOTPAGEOFF]
Lloh150:
	ldr	w8, [x8]
	asr	w8, w20, w8
	add	w8, w8, #1
	and	w8, w8, #0x3
	add	w8, w8, #119
	str	x8, [sp]
Lloh151:
	adrp	x1, l_.str.18@PAGE
Lloh152:
	add	x1, x1, l_.str.18@PAGEOFF
LBB0_29:
	mov	x0, x22
	bl	_sprintf
	add	x22, x22, w0, sxtw
LBB0_30:
	sub	w0, w22, w19
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #32]             ; 16-byte Folded Reload
	add	sp, sp, #80
	ret
LBB0_31:
Lloh153:
	adrp	x8, _D3DVS_SWIZZLE_SHIFT@GOTPAGE
Lloh154:
	ldr	x8, [x8, _D3DVS_SWIZZLE_SHIFT@GOTPAGEOFF]
Lloh155:
	ldr	w8, [x8]
	asr	w9, w20, w8
	add	w9, w9, #1
	and	w9, w9, #0x3
	add	w9, w9, #119
	add	w10, w8, #2
	asr	w10, w20, w10
	add	w10, w10, #1
	and	w10, w10, #0x3
	add	w10, w10, #119
	add	w11, w8, #4
	asr	w11, w20, w11
	add	w11, w11, #1
	and	w11, w11, #0x3
	add	w11, w11, #119
	add	w8, w8, #6
	asr	w8, w20, w8
	add	w8, w8, #1
	and	w8, w8, #0x3
	add	w8, w8, #119
	stp	x11, x8, [sp, #16]
	stp	x9, x10, [sp]
Lloh156:
	adrp	x1, l_.str.19@PAGE
Lloh157:
	add	x1, x1, l_.str.19@PAGEOFF
	b	LBB0_29
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.loh AdrpAdd	Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpAdd	Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpAdd	Lloh37, Lloh38
	.loh AdrpAdd	Lloh35, Lloh36
	.loh AdrpAdd	Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh41
	.loh AdrpAdd	Lloh42, Lloh43
	.loh AdrpLdrGotLdr	Lloh44, Lloh45, Lloh46
	.loh AdrpLdrGotLdr	Lloh47, Lloh48, Lloh49
	.loh AdrpAdd	Lloh50, Lloh51
	.loh AdrpLdrGotLdr	Lloh52, Lloh53, Lloh54
	.loh AdrpAdd	Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpAdd	Lloh60, Lloh61
	.loh AdrpAdd	Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh64, Lloh65, Lloh66
	.loh AdrpAdd	Lloh89, Lloh90
	.loh AdrpAdd	Lloh87, Lloh88
	.loh AdrpLdrGotLdr	Lloh84, Lloh85, Lloh86
	.loh AdrpAdd	Lloh82, Lloh83
	.loh AdrpLdrGotLdr	Lloh79, Lloh80, Lloh81
	.loh AdrpAdd	Lloh77, Lloh78
	.loh AdrpLdrGotLdr	Lloh74, Lloh75, Lloh76
	.loh AdrpAdd	Lloh71, Lloh72
	.loh AdrpAdd	Lloh69, Lloh70
	.loh AdrpLdrGotLdr	Lloh67, Lloh68, Lloh73
	.loh AdrpLdrGotLdr	Lloh94, Lloh95, Lloh96
	.loh AdrpLdrGotLdr	Lloh91, Lloh92, Lloh93
	.loh AdrpLdrGotLdr	Lloh109, Lloh110, Lloh111
	.loh AdrpLdrGotLdr	Lloh106, Lloh107, Lloh108
	.loh AdrpLdrGotLdr	Lloh102, Lloh103, Lloh105
	.loh AdrpLdrGotLdr	Lloh100, Lloh101, Lloh104
	.loh AdrpLdrGotLdr	Lloh97, Lloh98, Lloh99
	.loh AdrpLdrGotLdr	Lloh121, Lloh122, Lloh123
	.loh AdrpLdrGotLdr	Lloh118, Lloh119, Lloh120
	.loh AdrpLdrGotLdr	Lloh114, Lloh115, Lloh117
	.loh AdrpLdrGotLdr	Lloh112, Lloh113, Lloh116
	.loh AdrpLdrGotLdr	Lloh133, Lloh134, Lloh135
	.loh AdrpLdrGotLdr	Lloh130, Lloh131, Lloh132
	.loh AdrpLdrGotLdr	Lloh126, Lloh127, Lloh129
	.loh AdrpLdrGotLdr	Lloh124, Lloh125, Lloh128
	.loh AdrpLdrGotLdr	Lloh145, Lloh146, Lloh147
	.loh AdrpLdrGotLdr	Lloh142, Lloh143, Lloh144
	.loh AdrpLdrGotLdr	Lloh138, Lloh139, Lloh141
	.loh AdrpLdrGotLdr	Lloh136, Lloh137, Lloh140
	.loh AdrpAdd	Lloh151, Lloh152
	.loh AdrpLdrGotLdr	Lloh148, Lloh149, Lloh150
	.loh AdrpAdd	Lloh156, Lloh157
	.loh AdrpLdrGotLdr	Lloh153, Lloh154, Lloh155
	.cfi_endproc
                                        ; -- End function
	.comm	_D3DSP_REGTYPE_MASK2,4,2        ; @D3DSP_REGTYPE_MASK2
	.comm	_D3DSP_REGTYPE_SHIFT2,4,2       ; @D3DSP_REGTYPE_SHIFT2
	.comm	_D3DSP_REGTYPE_MASK,4,2         ; @D3DSP_REGTYPE_MASK
	.comm	_D3DSP_REGTYPE_SHIFT,4,2        ; @D3DSP_REGTYPE_SHIFT
	.comm	_D3DSP_REGNUM_MASK,4,2          ; @D3DSP_REGNUM_MASK
	.comm	_D3DSPR_INPUT,4,2               ; @D3DSPR_INPUT
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"v%d"

	.comm	_D3DSPR_CONST,4,2               ; @D3DSPR_CONST
l_.str.1:                               ; @.str.1
	.asciz	"c%d"

	.comm	_D3DSPR_TEMP,4,2                ; @D3DSPR_TEMP
l_.str.2:                               ; @.str.2
	.asciz	"r%d"

	.comm	_D3DSPR_ADDR,4,2                ; @D3DSPR_ADDR
l_.str.3:                               ; @.str.3
	.asciz	"%s%d"

l_.str.4:                               ; @.str.4
	.asciz	"t"

l_.str.5:                               ; @.str.5
	.asciz	"a"

	.comm	_D3DSPR_SAMPLER,4,2             ; @D3DSPR_SAMPLER
l_.str.6:                               ; @.str.6
	.asciz	"s%d"

	.comm	_D3DSPR_RASTOUT,4,2             ; @D3DSPR_RASTOUT
l_.str.7:                               ; @.str.7
	.asciz	"oPos"

	.comm	_D3DSPR_COLOROUT,4,2            ; @D3DSPR_COLOROUT
l_.str.8:                               ; @.str.8
	.asciz	"oC%d"

	.comm	_D3DSPR_TEXCRDOUT,4,2           ; @D3DSPR_TEXCRDOUT
l_.str.9:                               ; @.str.9
	.asciz	"oT%d"

	.comm	_D3DSPR_ATTROUT,4,2             ; @D3DSPR_ATTROUT
l_.str.10:                              ; @.str.10
	.asciz	"oD%d"

l_.str.11:                              ; @.str.11
	.asciz	"? (%d)"

	.comm	_D3DSP_WRITEMASK_ALL,4,2        ; @D3DSP_WRITEMASK_ALL
l_.str.12:                              ; @.str.12
	.asciz	".%s%s%s%s"

	.comm	_D3DSP_WRITEMASK_0,4,2          ; @D3DSP_WRITEMASK_0
l_.str.13:                              ; @.str.13
	.asciz	"x"

l_.str.14:                              ; @.str.14
	.space	1

	.comm	_D3DSP_WRITEMASK_1,4,2          ; @D3DSP_WRITEMASK_1
l_.str.15:                              ; @.str.15
	.asciz	"y"

	.comm	_D3DSP_WRITEMASK_2,4,2          ; @D3DSP_WRITEMASK_2
l_.str.16:                              ; @.str.16
	.asciz	"z"

	.comm	_D3DSP_WRITEMASK_3,4,2          ; @D3DSP_WRITEMASK_3
l_.str.17:                              ; @.str.17
	.asciz	"w"

	.comm	_D3DVS_SWIZZLE_MASK,4,2         ; @D3DVS_SWIZZLE_MASK
	.comm	_D3DVS_NOSWIZZLE,4,2            ; @D3DVS_NOSWIZZLE
	.comm	_D3DSP_SWIZZLE_MASK,4,2         ; @D3DSP_SWIZZLE_MASK
	.comm	_D3DVS_X_X,4,2                  ; @D3DVS_X_X
	.comm	_D3DVS_Y_X,4,2                  ; @D3DVS_Y_X
	.comm	_D3DVS_Z_X,4,2                  ; @D3DVS_Z_X
	.comm	_D3DVS_W_X,4,2                  ; @D3DVS_W_X
	.comm	_D3DVS_X_Y,4,2                  ; @D3DVS_X_Y
	.comm	_D3DVS_Y_Y,4,2                  ; @D3DVS_Y_Y
	.comm	_D3DVS_Z_Y,4,2                  ; @D3DVS_Z_Y
	.comm	_D3DVS_W_Y,4,2                  ; @D3DVS_W_Y
	.comm	_D3DVS_X_Z,4,2                  ; @D3DVS_X_Z
	.comm	_D3DVS_Y_Z,4,2                  ; @D3DVS_Y_Z
	.comm	_D3DVS_Z_Z,4,2                  ; @D3DVS_Z_Z
	.comm	_D3DVS_W_Z,4,2                  ; @D3DVS_W_Z
	.comm	_D3DVS_X_W,4,2                  ; @D3DVS_X_W
	.comm	_D3DVS_Y_W,4,2                  ; @D3DVS_Y_W
	.comm	_D3DVS_Z_W,4,2                  ; @D3DVS_Z_W
	.comm	_D3DVS_W_W,4,2                  ; @D3DVS_W_W
l_.str.18:                              ; @.str.18
	.asciz	".%c"

	.comm	_D3DVS_SWIZZLE_SHIFT,4,2        ; @D3DVS_SWIZZLE_SHIFT
l_.str.19:                              ; @.str.19
	.asciz	".%c%c%c%c"

	.no_dead_strip	_add_register
.subsections_via_symbols
