.file "epsilon.c"
.text
.section .rodata
.LC0:
.string "size of type: %lu bits\n"
.LC1:
.string "format: %%Qg\n"
.globl __divtf3
.globl __netf2
.globl __addtf3
.LC5:
.string "%Qg"
.LC6:
.string "epsilon: %s\n"
.LC7:
.string "subnormal limit: %s\n"
.align 8
.LC8:
.string "and just in case epsilon is displaying as zero above:"
.globl __lttf2
.LC9:
.string "true"
.LC10:
.string "false"
.align 8
.LC11:
.string "epsilon < limit (should be false): %s\n"
.globl __eqtf2
.align 8
.LC12:
.string "epsilon == limit (should be false): %s\n"
.globl __gttf2
.align 8
.LC13:
.string "epsilon > limit (should be true): %s\n"
.text
.globl main
.type main, @function
main:
.LFB9:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
subq $304, %rsp
movq %fs:40, %rax
movq %rax, -8(%rbp)
xorl %eax, %eax
leaq -272(%rbp), %rdx
movl $0, %eax
movl $32, %ecx
movq %rdx, %rdi
rep stosq
movl $256, %esi
leaq .LC0(%rip), %rdi
movl $0, %eax
call printf@PLT
leaq .LC1(%rip), %rdi
movl $0, %eax
call printf@PLT
movdqa .LC2(%rip), %xmm0
movaps %xmm0, -288(%rbp)
jmp .L2
.L3:
movdqa -288(%rbp), %xmm0
movaps %xmm0, -304(%rbp)
movdqa .LC3(%rip), %xmm1
movdqa -288(%rbp), %xmm0
call __divtf3@PLT
movaps %xmm0, -288(%rbp)
.L2:
pxor %xmm1, %xmm1
movdqa -288(%rbp), %xmm0
call __netf2@PLT
testq %rax, %rax
jne .L3
movdqa .LC2(%rip), %xmm0
movaps %xmm0, -288(%rbp)
jmp .L4
.L5:
movdqa .LC3(%rip), %xmm1
movdqa -288(%rbp), %xmm0
call __divtf3@PLT
movaps %xmm0, -288(%rbp)
.L4:
movdqa .LC2(%rip), %xmm1
movdqa -288(%rbp), %xmm0
call __addtf3@PLT
movdqa .LC2(%rip), %xmm1
call __netf2@PLT
testq %rax, %rax
jne .L5
movdqa -288(%rbp), %xmm0
leaq -272(%rbp), %rax
leaq .LC5(%rip), %rdx
movl $256, %esi
movq %rax, %rdi
movl $1, %eax
call quadmath_snprintf@PLT
leaq -272(%rbp), %rax
movq %rax, %rsi
leaq .LC6(%rip), %rdi
movl $0, %eax
call printf@PLT
movdqa -304(%rbp), %xmm0
leaq -272(%rbp), %rax
leaq .LC5(%rip), %rdx
movl $256, %esi
movq %rax, %rdi
movl $1, %eax
call quadmath_snprintf@PLT
leaq -272(%rbp), %rax
movq %rax, %rsi
leaq .LC7(%rip), %rdi
movl $0, %eax
call printf@PLT
leaq .LC8(%rip), %rdi
call puts@PLT
movdqa -304(%rbp), %xmm1
movdqa -288(%rbp), %xmm0
call __lttf2@PLT
testq %rax, %rax
jns .L20
leaq .LC9(%rip), %rax
jmp .L8
.L20:
leaq .LC10(%rip), %rax
.L8:
movq %rax, %rsi
leaq .LC11(%rip), %rdi
movl $0, %eax
call printf@PLT
movdqa -304(%rbp), %xmm1
movdqa -288(%rbp), %xmm0
call __eqtf2@PLT
testq %rax, %rax
jne .L21
leaq .LC9(%rip), %rax
jmp .L11
.L21:
leaq .LC10(%rip), %rax
.L11:
movq %rax, %rsi
leaq .LC12(%rip), %rdi
movl $0, %eax
call printf@PLT
movdqa -304(%rbp), %xmm1
movdqa -288(%rbp), %xmm0
call __gttf2@PLT
testq %rax, %rax
jle .L22
leaq .LC9(%rip), %rax
jmp .L14
.L22:
leaq .LC10(%rip), %rax
.L14:
movq %rax, %rsi
leaq .LC13(%rip), %rdi
movl $0, %eax
call printf@PLT
movl $0, %eax
movq -8(%rbp), %rcx
xorq %fs:40, %rcx
je .L16
call __stack_chk_fail@PLT
.L16:
leave
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LFE9:
.size main, .-main
.section .rodata
.align 16
.LC2:
.long 0
.long 0
.long 0
.long 1073676288
.align 16
.LC3:
.long 0
.long 0
.long 0
.long 1073741824
.ident "GCC: (GNU) 8.2.1 20181127"
.section .note.GNU-stack,"",@progbits