	.file	"303854.c"
	.intel_syntax noprefix
	.text
	.globl	getNull
	.type	getNull, @function
getNull:
.LFB0:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE0:
	.size	getNull, .-getNull
	.globl	dynCastToInt
	.type	dynCastToInt, @function
dynCastToInt:
.LFB1:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	opaquePropertyCheck@PLT
	test	eax, eax
	je	.L4
	mov	rax, QWORD PTR -8[rbp]
	jmp	.L5
.L4:
	mov	eax, 0
.L5:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE1:
	.size	dynCastToInt, .-dynCastToInt
	.globl	dynCastOrNull
	.type	dynCastOrNull, @function
dynCastOrNull:
.LFB2:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	cmp	QWORD PTR -8[rbp], 0
	jne	.L7
	mov	eax, 0
	jmp	.L8
.L7:
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	opaquePropertyCheck@PLT
	test	eax, eax
	je	.L9
	mov	rax, QWORD PTR -8[rbp]
	jmp	.L8
.L9:
	mov	eax, 0
.L8:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE2:
	.size	dynCastOrNull, .-dynCastOrNull
	.globl	testDynCast
	.type	testDynCast, @function
testDynCast:
.LFB3:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	dynCastToInt
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE3:
	.size	testDynCast, .-testDynCast
	.globl	testDynCastOrNull
	.type	testDynCastOrNull, @function
testDynCastOrNull:
.LFB4:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	dynCastOrNull
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE4:
	.size	testDynCastOrNull, .-testDynCastOrNull
	.globl	testBranch
	.type	testBranch, @function
testBranch:
.LFB5:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, 0
	call	coin@PLT
	test	eax, eax
	je	.L13
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	dynCastToInt
	mov	QWORD PTR -8[rbp], rax
	jmp	.L14
.L13:
	cmp	QWORD PTR -24[rbp], 0
	jne	.L17
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
.L14:
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	jmp	.L12
.L17:
	nop
.L12:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE5:
	.size	testBranch, .-testBranch
	.globl	testBranchReversed
	.type	testBranchReversed, @function
testBranchReversed:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	eax, 0
	call	coin@PLT
	test	eax, eax
	je	.L19
	cmp	QWORD PTR -24[rbp], 0
	jne	.L23
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR -8[rbp], rax
	jmp	.L22
.L19:
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	dynCastToInt
	mov	QWORD PTR -8[rbp], rax
.L22:
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	jmp	.L18
.L23:
	nop
.L18:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	testBranchReversed, .-testBranchReversed
	.globl	testMultipleStore
	.type	testMultipleStore, @function
testMultipleStore:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -8[rbp], 0
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	dynCastToInt
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	testMultipleStore, .-testMultipleStore
	.globl	testDynCastOrNullOfNull
	.type	testDynCastOrNullOfNull, @function
testDynCastOrNullOfNull:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 0
	call	dynCastOrNull
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	testDynCastOrNullOfNull, .-testDynCastOrNullOfNull
	.globl	testDynCastOfNull
	.type	testDynCastOfNull, @function
testDynCastOfNull:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 0
	call	dynCastToInt
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	testDynCastOfNull, .-testDynCastOfNull
	.globl	lookUpInt
	.type	lookUpInt, @function
lookUpInt:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	mov	eax, 0
	call	coin@PLT
	test	eax, eax
	je	.L28
	mov	eax, 0
	jmp	.L29
.L28:
	lea	rax, x.5[rip]
.L29:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	lookUpInt, .-lookUpInt
	.globl	testZeroIsNotNull
	.type	testZeroIsNotNull, @function
testZeroIsNotNull:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	edi, 0
	call	lookUpInt
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	testZeroIsNotNull, .-testZeroIsNotNull
	.globl	testTrackNull
	.type	testTrackNull, @function
testTrackNull:
.LFB12:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, 0
	call	getNull
	mov	rdi, rax
	call	dynCastOrNull
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	testTrackNull, .-testTrackNull
	.globl	testTrackNullVariable
	.type	testTrackNullVariable, @function
testTrackNullVariable:
.LFB13:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, 0
	call	getNull
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	dynCastOrNull
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	testTrackNullVariable, .-testTrackNullVariable
	.globl	inlinedIsDifferent
	.type	inlinedIsDifferent, @function
inlinedIsDifferent:
.LFB14:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -36[rbp], edi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	cmp	DWORD PTR -36[rbp], 0
	je	.L34
	lea	rax, -20[rbp]
	jmp	.L35
.L34:
	mov	eax, 0
	call	getNull
.L35:
	mov	QWORD PTR -16[rbp], rax
	cmp	DWORD PTR -36[rbp], 0
	jne	.L36
	mov	edi, 1
	call	inlinedIsDifferent
.L36:
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR [rax], 1
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L37
	call	__stack_chk_fail@PLT
.L37:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	inlinedIsDifferent, .-inlinedIsDifferent
	.globl	testInlinedIsDifferent
	.type	testInlinedIsDifferent, @function
testInlinedIsDifferent:
.LFB15:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edi, 0
	call	inlinedIsDifferent
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	testInlinedIsDifferent, .-testInlinedIsDifferent
	.globl	testNoArguments
	.type	testNoArguments, @function
testNoArguments:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, 0
	call	getNull
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	testNoArguments, .-testNoArguments
	.globl	getNullIfNonNull
	.type	getNullIfNonNull, @function
getNullIfNonNull:
.LFB17:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	cmp	QWORD PTR -8[rbp], 0
	je	.L41
	mov	eax, 0
	jmp	.L42
.L41:
	lea	rax, x.4[rip]
.L42:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	getNullIfNonNull, .-getNullIfNonNull
	.globl	testKnownPath
	.type	testKnownPath, @function
testKnownPath:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	cmp	QWORD PTR -24[rbp], 0
	je	.L46
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	getNullIfNonNull
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	jmp	.L43
.L46:
	nop
.L43:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	testKnownPath, .-testKnownPath
	.globl	alwaysReturnNull
	.type	alwaysReturnNull, @function
alwaysReturnNull:
.LFB19:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	opaquePropertyCheck@PLT
	test	eax, eax
	je	.L48
	mov	eax, 0
	jmp	.L49
.L48:
	mov	eax, 0
.L49:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	alwaysReturnNull, .-alwaysReturnNull
	.globl	testAlwaysReturnNull
	.type	testAlwaysReturnNull, @function
testAlwaysReturnNull:
.LFB20:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	alwaysReturnNull
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], 1
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	testAlwaysReturnNull, .-testAlwaysReturnNull
	.globl	derefArg
	.type	derefArg, @function
derefArg:
.LFB21:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	derefArg, .-derefArg
	.globl	ternaryArg
	.type	ternaryArg, @function
ternaryArg:
.LFB22:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], 0
	jne	.L54
	mov	eax, 0
	call	getNull
	jmp	.L55
.L54:
	lea	rax, x.3[rip]
.L55:
	mov	rdi, rax
	call	derefArg
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	ternaryArg, .-ternaryArg
	.globl	derefArgCast
	.type	derefArgCast, @function
derefArgCast:
.LFB23:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	movzx	eax, BYTE PTR [rax]
	movsx	eax, al
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	derefArgCast, .-derefArgCast
	.globl	ternaryArgCast
	.type	ternaryArgCast, @function
ternaryArgCast:
.LFB24:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], 0
	jne	.L59
	mov	eax, 0
	call	getNull
	jmp	.L60
.L59:
	lea	rax, x.2[rip]
.L60:
	mov	rdi, rax
	call	derefArgCast
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE24:
	.size	ternaryArgCast, .-ternaryArgCast
	.globl	derefAssignment
	.type	derefAssignment, @function
derefAssignment:
.LFB25:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE25:
	.size	derefAssignment, .-derefAssignment
	.globl	ternaryAssignment
	.type	ternaryAssignment, @function
ternaryAssignment:
.LFB26:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	cmp	BYTE PTR -20[rbp], 0
	je	.L64
	mov	eax, 0
	call	getNull
	jmp	.L65
.L64:
	mov	eax, 0
	call	getPtr@PLT
.L65:
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	derefAssignment
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE26:
	.size	ternaryAssignment, .-ternaryAssignment
	.globl	retNull
	.type	retNull, @function
retNull:
.LFB27:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], 0
	jne	.L67
	mov	eax, 0
	call	getNull
	jmp	.L69
.L67:
	lea	rax, x.0[rip]
.L69:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	retNull, .-retNull
	.globl	ternaryRetNull
	.type	ternaryRetNull, @function
ternaryRetNull:
.LFB28:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	eax, edi
	mov	BYTE PTR -20[rbp], al
	movsx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	call	retNull
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	ternaryRetNull, .-ternaryRetNull
	.globl	testConditionalOperatorSuppress
	.type	testConditionalOperatorSuppress, @function
testConditionalOperatorSuppress:
.LFB29:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	cmp	DWORD PTR -4[rbp], 0
	je	.L73
	mov	eax, 0
	call	getNull
	jmp	.L74
.L73:
	mov	eax, 0
	call	getPtr@PLT
.L74:
	mov	eax, DWORD PTR [rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	testConditionalOperatorSuppress, .-testConditionalOperatorSuppress
	.globl	testNestedConditionalOperatorSuppress
	.type	testNestedConditionalOperatorSuppress, @function
testNestedConditionalOperatorSuppress:
.LFB30:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	cmp	DWORD PTR -4[rbp], 0
	je	.L77
	cmp	DWORD PTR -4[rbp], 0
	je	.L78
	mov	eax, 0
	call	getNull
	jmp	.L80
.L78:
	mov	eax, 0
	call	getPtr@PLT
	jmp	.L80
.L77:
	mov	eax, 0
	call	getPtr@PLT
.L80:
	mov	eax, DWORD PTR [rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	testNestedConditionalOperatorSuppress, .-testNestedConditionalOperatorSuppress
	.globl	testConditionalOperator
	.type	testConditionalOperator, @function
testConditionalOperator:
.LFB31:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	cmp	DWORD PTR -4[rbp], 0
	jne	.L83
	mov	eax, 0
	call	getPtr@PLT
	jmp	.L84
.L83:
	mov	eax, 0
.L84:
	mov	eax, DWORD PTR [rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	testConditionalOperator, .-testConditionalOperator
	.globl	testNestedConditionalOperator
	.type	testNestedConditionalOperator, @function
testNestedConditionalOperator:
.LFB32:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	cmp	DWORD PTR -4[rbp], 0
	je	.L87
	cmp	DWORD PTR -4[rbp], 0
	jne	.L88
	mov	eax, 0
	call	getPtr@PLT
	jmp	.L90
.L88:
	mov	eax, 0
	jmp	.L90
.L87:
	mov	eax, 0
	call	getPtr@PLT
.L90:
	mov	eax, DWORD PTR [rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	testNestedConditionalOperator, .-testNestedConditionalOperator
	.globl	testConditionalOperatorSuppressFloatCond
	.type	testConditionalOperatorSuppressFloatCond, @function
testConditionalOperatorSuppressFloatCond:
.LFB33:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	movss	DWORD PTR -4[rbp], xmm0
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -4[rbp]
	jp	.L97
	pxor	xmm0, xmm0
	comiss	xmm0, DWORD PTR -4[rbp]
	je	.L98
.L97:
	mov	eax, 0
	call	getNull
	jmp	.L95
.L98:
	mov	eax, 0
	call	getPtr@PLT
.L95:
	mov	eax, DWORD PTR [rax]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	testConditionalOperatorSuppressFloatCond, .-testConditionalOperatorSuppressFloatCond
	.local	x.5
	.comm	x.5,4,4
	.local	x.4
	.comm	x.4,4,4
	.local	x.3
	.comm	x.3,4,4
	.local	x.2
	.comm	x.2,4,4
	.local	x.1
	.comm	x.1,4,4
	.local	x.0
	.comm	x.0,4,4
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.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, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"303854.c"
	.text
	.align	2
	.global	getNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	getNull, %function
getNull:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	mov	r3, #0
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	getNull, .-getNull
	.align	2
	.global	dynCastToInt
	.syntax unified
	.arm
	.fpu softvfp
	.type	dynCastToInt, %function
dynCastToInt:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	opaquePropertyCheck
	mov	r3, r0
	cmp	r3, #0
	beq	.L4
	ldr	r3, [fp, #-8]
	b	.L5
.L4:
	mov	r3, #0
.L5:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	dynCastToInt, .-dynCastToInt
	.align	2
	.global	dynCastOrNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	dynCastOrNull, %function
dynCastOrNull:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L7
	mov	r3, #0
	b	.L8
.L7:
	ldr	r0, [fp, #-8]
	bl	opaquePropertyCheck
	mov	r3, r0
	cmp	r3, #0
	beq	.L9
	ldr	r3, [fp, #-8]
	b	.L8
.L9:
	mov	r3, #0
.L8:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	dynCastOrNull, .-dynCastOrNull
	.align	2
	.global	testDynCast
	.syntax unified
	.arm
	.fpu softvfp
	.type	testDynCast, %function
testDynCast:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	dynCastToInt
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testDynCast, .-testDynCast
	.align	2
	.global	testDynCastOrNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	testDynCastOrNull, %function
testDynCastOrNull:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	dynCastOrNull
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testDynCastOrNull, .-testDynCastOrNull
	.align	2
	.global	testBranch
	.syntax unified
	.arm
	.fpu softvfp
	.type	testBranch, %function
testBranch:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	bl	coin
	mov	r3, r0
	cmp	r3, #0
	beq	.L13
	ldr	r0, [fp, #-16]
	bl	dynCastToInt
	str	r0, [fp, #-8]
	b	.L14
.L13:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L17
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
.L14:
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	b	.L12
.L17:
	nop
.L12:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testBranch, .-testBranch
	.align	2
	.global	testBranchReversed
	.syntax unified
	.arm
	.fpu softvfp
	.type	testBranchReversed, %function
testBranchReversed:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	bl	coin
	mov	r3, r0
	cmp	r3, #0
	beq	.L19
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L23
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-8]
	b	.L22
.L19:
	ldr	r0, [fp, #-16]
	bl	dynCastToInt
	str	r0, [fp, #-8]
.L22:
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	b	.L18
.L23:
	nop
.L18:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testBranchReversed, .-testBranchReversed
	.align	2
	.global	testMultipleStore
	.syntax unified
	.arm
	.fpu softvfp
	.type	testMultipleStore, %function
testMultipleStore:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-8]
	ldr	r0, [fp, #-16]
	bl	dynCastToInt
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testMultipleStore, .-testMultipleStore
	.align	2
	.global	testDynCastOrNullOfNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	testDynCastOrNullOfNull, %function
testDynCastOrNullOfNull:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #0
	bl	dynCastOrNull
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testDynCastOrNullOfNull, .-testDynCastOrNullOfNull
	.align	2
	.global	testDynCastOfNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	testDynCastOfNull, %function
testDynCastOfNull:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #0
	bl	dynCastToInt
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testDynCastOfNull, .-testDynCastOfNull
	.align	2
	.global	lookUpInt
	.syntax unified
	.arm
	.fpu softvfp
	.type	lookUpInt, %function
lookUpInt:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	bl	coin
	mov	r3, r0
	cmp	r3, #0
	beq	.L28
	mov	r3, #0
	b	.L29
.L28:
	ldr	r3, .L30
.L29:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L31:
	.align	2
.L30:
	.word	x.4235
	.size	lookUpInt, .-lookUpInt
	.align	2
	.global	testZeroIsNotNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	testZeroIsNotNull, %function
testZeroIsNotNull:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r0, #0
	bl	lookUpInt
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testZeroIsNotNull, .-testZeroIsNotNull
	.align	2
	.global	testTrackNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	testTrackNull, %function
testTrackNull:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	getNull
	mov	r3, r0
	mov	r0, r3
	bl	dynCastOrNull
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testTrackNull, .-testTrackNull
	.align	2
	.global	testTrackNullVariable
	.syntax unified
	.arm
	.fpu softvfp
	.type	testTrackNullVariable, %function
testTrackNullVariable:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	getNull
	str	r0, [fp, #-12]
	ldr	r0, [fp, #-12]
	bl	dynCastOrNull
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testTrackNullVariable, .-testTrackNullVariable
	.section	.rodata
	.align	2
.LC0:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	inlinedIsDifferent
	.syntax unified
	.arm
	.fpu softvfp
	.type	inlinedIsDifferent, %function
inlinedIsDifferent:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	ldr	r3, .L40
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	beq	.L36
	sub	r3, fp, #16
	b	.L37
.L36:
	bl	getNull
	mov	r3, r0
.L37:
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bne	.L38
	mov	r0, #1
	bl	inlinedIsDifferent
.L38:
	ldr	r3, [fp, #-12]
	mov	r2, #1
	str	r2, [r3]
	nop
	ldr	r3, .L40
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L39
	bl	__stack_chk_fail
.L39:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L41:
	.align	2
.L40:
	.word	.LC0
	.size	inlinedIsDifferent, .-inlinedIsDifferent
	.align	2
	.global	testInlinedIsDifferent
	.syntax unified
	.arm
	.fpu softvfp
	.type	testInlinedIsDifferent, %function
testInlinedIsDifferent:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	mov	r0, #0
	bl	inlinedIsDifferent
	nop
	pop	{fp, pc}
	.size	testInlinedIsDifferent, .-testInlinedIsDifferent
	.align	2
	.global	testNoArguments
	.syntax unified
	.arm
	.fpu softvfp
	.type	testNoArguments, %function
testNoArguments:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	bl	getNull
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testNoArguments, .-testNoArguments
	.align	2
	.global	getNullIfNonNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	getNullIfNonNull, %function
getNullIfNonNull:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L45
	mov	r3, #0
	b	.L46
.L45:
	ldr	r3, .L47
.L46:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L48:
	.align	2
.L47:
	.word	x.4259
	.size	getNullIfNonNull, .-getNullIfNonNull
	.align	2
	.global	testKnownPath
	.syntax unified
	.arm
	.fpu softvfp
	.type	testKnownPath, %function
testKnownPath:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L52
	ldr	r0, [fp, #-16]
	bl	getNullIfNonNull
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	b	.L49
.L52:
	nop
.L49:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testKnownPath, .-testKnownPath
	.align	2
	.global	alwaysReturnNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	alwaysReturnNull, %function
alwaysReturnNull:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	opaquePropertyCheck
	mov	r3, r0
	cmp	r3, #0
	beq	.L54
	mov	r3, #0
	b	.L55
.L54:
	mov	r3, #0
.L55:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	alwaysReturnNull, .-alwaysReturnNull
	.align	2
	.global	testAlwaysReturnNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	testAlwaysReturnNull, %function
testAlwaysReturnNull:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	alwaysReturnNull
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r2, #1
	str	r2, [r3]
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testAlwaysReturnNull, .-testAlwaysReturnNull
	.align	2
	.global	derefArg
	.syntax unified
	.arm
	.fpu softvfp
	.type	derefArg, %function
derefArg:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	derefArg, .-derefArg
	.align	2
	.global	ternaryArg
	.syntax unified
	.arm
	.fpu softvfp
	.type	ternaryArg, %function
ternaryArg:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L60
	bl	getNull
	mov	r3, r0
	b	.L61
.L60:
	ldr	r3, .L62
.L61:
	mov	r0, r3
	bl	derefArg
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L63:
	.align	2
.L62:
	.word	x.4277
	.size	ternaryArg, .-ternaryArg
	.align	2
	.global	derefArgCast
	.syntax unified
	.arm
	.fpu softvfp
	.type	derefArgCast, %function
derefArgCast:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldrb	r3, [r3]	@ zero_extendqisi2
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	derefArgCast, .-derefArgCast
	.align	2
	.global	ternaryArgCast
	.syntax unified
	.arm
	.fpu softvfp
	.type	ternaryArgCast, %function
ternaryArgCast:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L67
	bl	getNull
	mov	r3, r0
	b	.L68
.L67:
	ldr	r3, .L69
.L68:
	mov	r0, r3
	bl	derefArgCast
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L70:
	.align	2
.L69:
	.word	x.4284
	.size	ternaryArgCast, .-ternaryArgCast
	.align	2
	.global	derefAssignment
	.syntax unified
	.arm
	.fpu softvfp
	.type	derefAssignment, %function
derefAssignment:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	derefAssignment, .-derefAssignment
	.align	2
	.global	ternaryAssignment
	.syntax unified
	.arm
	.fpu softvfp
	.type	ternaryAssignment, %function
ternaryAssignment:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	cmp	r3, #0
	beq	.L74
	bl	getNull
	mov	r3, r0
	b	.L75
.L74:
	bl	getPtr
	mov	r3, r0
.L75:
	str	r3, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	derefAssignment
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	ternaryAssignment, .-ternaryAssignment
	.align	2
	.global	retNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	retNull, %function
retNull:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L77
	bl	getNull
	mov	r3, r0
	b	.L79
.L77:
	ldr	r3, .L80
.L79:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L81:
	.align	2
.L80:
	.word	x.4296
	.size	retNull, .-retNull
	.align	2
	.global	ternaryRetNull
	.syntax unified
	.arm
	.fpu softvfp
	.type	ternaryRetNull, %function
ternaryRetNull:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	mov	r3, r0
	strb	r3, [fp, #-13]
	ldrb	r3, [fp, #-13]	@ zero_extendqisi2
	mov	r0, r3
	bl	retNull
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	ternaryRetNull, .-ternaryRetNull
	.align	2
	.global	testConditionalOperatorSuppress
	.syntax unified
	.arm
	.fpu softvfp
	.type	testConditionalOperatorSuppress, %function
testConditionalOperatorSuppress:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L85
	bl	getNull
	mov	r3, r0
	b	.L86
.L85:
	bl	getPtr
	mov	r3, r0
.L86:
	ldr	r3, [r3]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testConditionalOperatorSuppress, .-testConditionalOperatorSuppress
	.align	2
	.global	testNestedConditionalOperatorSuppress
	.syntax unified
	.arm
	.fpu softvfp
	.type	testNestedConditionalOperatorSuppress, %function
testNestedConditionalOperatorSuppress:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L89
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L90
	bl	getNull
	mov	r3, r0
	b	.L92
.L90:
	bl	getPtr
	mov	r3, r0
	b	.L92
.L89:
	bl	getPtr
	mov	r3, r0
.L92:
	ldr	r3, [r3]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testNestedConditionalOperatorSuppress, .-testNestedConditionalOperatorSuppress
	.align	2
	.global	testConditionalOperator
	.syntax unified
	.arm
	.fpu softvfp
	.type	testConditionalOperator, %function
testConditionalOperator:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L95
	bl	getPtr
	mov	r3, r0
	b	.L96
.L95:
	mov	r3, #0
.L96:
	ldr	r3, [r3]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testConditionalOperator, .-testConditionalOperator
	.align	2
	.global	testNestedConditionalOperator
	.syntax unified
	.arm
	.fpu softvfp
	.type	testNestedConditionalOperator, %function
testNestedConditionalOperator:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L99
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L100
	bl	getPtr
	mov	r3, r0
	b	.L102
.L100:
	mov	r3, #0
	b	.L102
.L99:
	bl	getPtr
	mov	r3, r0
.L102:
	ldr	r3, [r3]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testNestedConditionalOperator, .-testNestedConditionalOperator
	.global	__aeabi_fcmpeq
	.align	2
	.global	testConditionalOperatorSuppressFloatCond
	.syntax unified
	.arm
	.fpu softvfp
	.type	testConditionalOperatorSuppressFloatCond, %function
testConditionalOperatorSuppressFloatCond:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L110
	bl	getNull
	mov	r3, r0
	b	.L107
.L110:
	bl	getPtr
	mov	r3, r0
.L107:
	ldr	r3, [r3]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	testConditionalOperatorSuppressFloatCond, .-testConditionalOperatorSuppressFloatCond
	.local	x.4235
	.comm	x.4235,4,4
	.local	x.4259
	.comm	x.4259,4,4
	.local	x.4277
	.comm	x.4277,4,4
	.local	x.4284
	.comm	x.4284,4,4
	.local	x.4291
	.comm	x.4291,4,4
	.local	x.4296
	.comm	x.4296,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
