Language
Compiler
Options
$
.file "prog.cc"
.text
.p2align 4,,15
.globl _Z14disassemble_meR1AS0_
.type _Z14disassemble_meR1AS0_, @function
_Z14disassemble_meR1AS0_:
.LFB168:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
pushq %rbx
.cfi_def_cfa_offset 24
.cfi_offset 3, -24
movq %rsi, %rbx
subq $8, %rsp
.cfi_def_cfa_offset 32
movq (%rdi), %rbp
movq $0, (%rdi)
movq (%rsi), %rdx
movq $0, (%rsi)
movq (%rdi), %rax
movq %rdx, (%rdi)
testq %rax, %rax
je .L2
movq %rax, %rdi
call free
.L2:
movq (%rbx), %rdi
movq %rbp, (%rbx)
testq %rdi, %rdi
je .L7
addq $8, %rsp
.cfi_remember_state
.cfi_def_cfa_offset 24
popq %rbx
.cfi_def_cfa_offset 16
popq %rbp
.cfi_def_cfa_offset 8
jmp free
.p2align 4,,10
.p2align 3
.L7:
.cfi_restore_state
addq $8, %rsp
.cfi_def_cfa_offset 24
popq %rbx
.cfi_def_cfa_offset 16
popq %rbp
.cfi_def_cfa_offset 8
ret
.cfi_endproc
.LFE168:
.size _Z14disassemble_meR1AS0_, .-_Z14disassemble_meR1AS0_
.section .rodata.str1.1,"aMS",@progbits,1
.LC0:
.string "prog.s"
.LC1:
.string "cat"
.section .text.startup,"ax",@progbits
.p2align 4,,15
.globl main
.type main, @function
main:
.LFB169:
.cfi_startproc
movl $.LC1, %esi
subq $8, %rsp
.cfi_def_cfa_offset 16
xorl %ecx, %ecx
xorl %eax, %eax
movl $.LC0, %edx
movq %rsi, %rdi
call execlp
testl %eax, %eax
setne %al
addq $8, %rsp
.cfi_def_cfa_offset 8
movzbl %al, %eax
ret
.cfi_endproc
.LFE169:
.size main, .-main
.ident "GCC: (GNU) 8.0.0 20170502 (experimental)"
.section .note.GNU-stack,"",@progbits
Exit Code:
0