1 .file "os-hooks.c" 2 .text 3.globl main 4 .type main, @function 5main: 6.LFB2: 7 pushq %rbp 8.LCFI0: 9 movq %rsp, %rbp 10.LCFI1: 11 subq $32, %rsp 12.LCFI2: 13 movl %edi, -4(%rbp) 14 movq %rsi, -16(%rbp) 15 movl $0, %eax 16 call clear_iob 17 movl $0, %eax 18 call clear_dtabsize 19 movl $8192, %ecx 20 movl $1, %edx 21 movl $0, %esi 22 movq stdout(%rip), %rdi 23 call setvbuf 24 movl $mainenv, %edi 25 call _setjmp 26 movl %eax, -20(%rbp) 27 cmpl $0, -20(%rbp) 28 jne .L2 29 movq -16(%rbp), %rsi 30 movl -4(%rbp), %edi 31 movl $0, %eax 32 call copy_argv 33 movl %eax, %esi 34 movl -4(%rbp), %edi 35 movl $0, %eax 36 call psl_main 37.L2: 38 movl $0, %edi 39 call exit 40.LFE2: 41 .size main, .-main 42.globl os_startup_hook 43 .type os_startup_hook, @function 44os_startup_hook: 45.LFB3: 46 pushq %rbp 47.LCFI3: 48 movq %rsp, %rbp 49.LCFI4: 50 subq $16, %rsp 51.LCFI5: 52 movl %edi, -4(%rbp) 53 movq %rsi, -16(%rbp) 54 movq -16(%rbp), %rsi 55 movl -4(%rbp), %edi 56 movl $0, %eax 57 call setupbpsandheap 58 leave 59 ret 60.LFE3: 61 .size os_startup_hook, .-os_startup_hook 62.globl os_cleanup_hook 63 .type os_cleanup_hook, @function 64os_cleanup_hook: 65.LFB4: 66 pushq %rbp 67.LCFI6: 68 movq %rsp, %rbp 69.LCFI7: 70 movl $1, %esi 71 movl $mainenv, %edi 72 call longjmp 73.LFE4: 74 .size os_cleanup_hook, .-os_cleanup_hook 75.globl clear_iob 76 .type clear_iob, @function 77clear_iob: 78.LFB5: 79 pushq %rbp 80.LCFI8: 81 movq %rsp, %rbp 82.LCFI9: 83 leave 84 ret 85.LFE5: 86 .size clear_iob, .-clear_iob 87.globl clear_dtabsize 88 .type clear_dtabsize, @function 89clear_dtabsize: 90.LFB6: 91 pushq %rbp 92.LCFI10: 93 movq %rsp, %rbp 94.LCFI11: 95 leave 96 ret 97.LFE6: 98 .size clear_dtabsize, .-clear_dtabsize 99 .comm mainenv,200,32 100 .section .eh_frame,"a",@progbits 101.Lframe1: 102 .long .LECIE1-.LSCIE1 103.LSCIE1: 104 .long 0x0 105 .byte 0x1 106 .string "" 107 .uleb128 0x1 108 .sleb128 -8 109 .byte 0x10 110 .byte 0xc 111 .uleb128 0x7 112 .uleb128 0x8 113 .byte 0x90 114 .uleb128 0x1 115 .align 8 116.LECIE1: 117.LSFDE1: 118 .long .LEFDE1-.LASFDE1 119.LASFDE1: 120 .long .LASFDE1-.Lframe1 121 .quad .LFB2 122 .quad .LFE2-.LFB2 123 .byte 0x4 124 .long .LCFI0-.LFB2 125 .byte 0xe 126 .uleb128 0x10 127 .byte 0x86 128 .uleb128 0x2 129 .byte 0x4 130 .long .LCFI1-.LCFI0 131 .byte 0xd 132 .uleb128 0x6 133 .align 8 134.LEFDE1: 135.LSFDE3: 136 .long .LEFDE3-.LASFDE3 137.LASFDE3: 138 .long .LASFDE3-.Lframe1 139 .quad .LFB3 140 .quad .LFE3-.LFB3 141 .byte 0x4 142 .long .LCFI3-.LFB3 143 .byte 0xe 144 .uleb128 0x10 145 .byte 0x86 146 .uleb128 0x2 147 .byte 0x4 148 .long .LCFI4-.LCFI3 149 .byte 0xd 150 .uleb128 0x6 151 .align 8 152.LEFDE3: 153.LSFDE5: 154 .long .LEFDE5-.LASFDE5 155.LASFDE5: 156 .long .LASFDE5-.Lframe1 157 .quad .LFB4 158 .quad .LFE4-.LFB4 159 .byte 0x4 160 .long .LCFI6-.LFB4 161 .byte 0xe 162 .uleb128 0x10 163 .byte 0x86 164 .uleb128 0x2 165 .byte 0x4 166 .long .LCFI7-.LCFI6 167 .byte 0xd 168 .uleb128 0x6 169 .align 8 170.LEFDE5: 171.LSFDE7: 172 .long .LEFDE7-.LASFDE7 173.LASFDE7: 174 .long .LASFDE7-.Lframe1 175 .quad .LFB5 176 .quad .LFE5-.LFB5 177 .byte 0x4 178 .long .LCFI8-.LFB5 179 .byte 0xe 180 .uleb128 0x10 181 .byte 0x86 182 .uleb128 0x2 183 .byte 0x4 184 .long .LCFI9-.LCFI8 185 .byte 0xd 186 .uleb128 0x6 187 .align 8 188.LEFDE7: 189.LSFDE9: 190 .long .LEFDE9-.LASFDE9 191.LASFDE9: 192 .long .LASFDE9-.Lframe1 193 .quad .LFB6 194 .quad .LFE6-.LFB6 195 .byte 0x4 196 .long .LCFI10-.LFB6 197 .byte 0xe 198 .uleb128 0x10 199 .byte 0x86 200 .uleb128 0x2 201 .byte 0x4 202 .long .LCFI11-.LCFI10 203 .byte 0xd 204 .uleb128 0x6 205 .align 8 206.LEFDE9: 207 .section .note.GNU-stack,"",@progbits 208 .ident "GCC: (GNU) 3.4.2 20041017 (Red Hat 3.4.2-6.fc3)" 209