/* fill in the blanks based on the asm code below */ char ctest(long a, long b, long c) { char t1 = a __>__ b; char t2 = (int)a __>__ (int) b; char t3 = (unsigned)c __>=__ (unsigned) a; char t4 = a __!=__ c; char t5 = (unsigned char)c __>__ (unsigned char)b; char t6 = a __!=__ 0; return t1+t2+t3+t4+t5+t6; } /* .file "ctest.c" .text .globl ctest .type ctest, @function ctest: .LFB0: .cfi_startproc # rsi = b cmpq %rsi, %rdi # rdi = a setg %r10b cmpl %edi, %esi setl %al cmpl %edi, %edx setnb %r9b cmpq %rdx, %rdi # rdx = c setne %r8b cmpb %sil, %dl # dl = c seta %cl # sil = b testq %rdi, %rdi # a & a setne %dl addl %r10d, %eax addl %r9d, %eax addl %r8d, %eax addl %ecx, %eax addl %edx, %eax ret .cfi_endproc .LFE0: .size ctest, .-ctest .ident "GCC: (GNU) 4.8.5 20150623 (Red Hat 4.8.5-4)" .section .note.GNU-stack,"",@progbits */