1 .globl code_s 2 .section .rodata 3 .align 8 4 .LC0: 5 .string "#!/usr/bin/python\n\nimport re\nimport sys\n\ndef print_uninterpreted(string):\n result = string\n result = re.sub(r\"\\\\\", r\"\\\\\\\\\", result)\n result = re.sub(r\"\\\"\", r\"\\\"\", result)\n result = re.sub(r\"\\n\", r\"\\\\n\", result)\n return result\n\ndef print_delimited(list, d):\n result = \"\"\n for l in range(len(list)):\n result += print_uninterpreted(list[l])\n if l < len(list)-1:\n result += d\n return result\n\ncode = [\n\"%s\"\n]\ndelimiter = [\n\"%s\"\n]\n\nlang = 0\nif len(sys.argv) > 1:\n lang = int(sys.argv[1])\n\nprint code[lang] %% (print_delimited(code, delimiter[lang]), print_delimited(delimiter, delimiter[lang]))" 6 .string "#!/bin/sh\n\nLANG=1\nif [ $# -ne 0 ]; then\n LANG=$1\nfi\n\nCOUNT_LANG=$(( $(grep -n \"^#DELIMITER\" $0 | sed -e 's/:.*//') - $(grep -n \"^#CODE\" $0 | sed -e 's/:.*//') -1 ))\n\nArray() {\n grep \"^#$1\" $0 -A $COUNT_LANG | tail -n $COUNT_LANG | sed -e 's/^ #//'\n}\nArray_value() {\n Array $1 | head -n $(($2 +1)) | tail -n 1 | tr -d \"\\n\"\n}\n\nPrint_delimited() {\n for line in $(seq 0 $(( $COUNT_LANG -1 )) ); do\n echo -n \"$( Array_value $1 $line )\"\n if [ $line -lt $(( $COUNT_LANG -1 )) ]; then\n printf \"$( Array_value \"DELIMITER\" $LANG )\"\n fi\n done\n}\n\nprintf \"$(Array_value \"CODE\" $LANG)\\n\" \"$(Print_delimited \"CODE\")\" \"$(Print_delimited \"DELIMITER\")\"\n\n#CODE\n #%s\n#DELIMITER\n #%s" 7 .string "#include <stdlib.h>\n#include <stdio.h>\n#include <string.h>\n\n\nchar* code[] = { \n\"%s\"\n};\nchar* delimiter[] = {\n\"%s\"\n};\n\n\nint lang = 2;\n\n\nchar* escape(char* string) {\n char* s = string;\n char* new = malloc(2*strlen(s)+1);\n unsigned char c;\n while ((c = *s))\n {\n switch(c) {\n case '\\\\' : strcat(new, \"\\\\\\\\\"); break;\n case '\\\"' : strcat(new, \"\\\\\\\"\"); break;\n case '\\n' : strcat(new, \"\\\\n\" ); break;\n default : strncat(new, s, 1 ); break;\n }\n *s++;\n }\n return new;\n}\n\n\nchar* print_delimited(char* array[], char* delim) {\n char* result = malloc(0);\n strcat(result, escape(array[0]));\n int i;\n for(i=1; i<sizeof(code)/sizeof(code[0]); i++) {\n strcat(result, delim);\n strcat(result, escape(array[i]));\n }\n return result;\n}\n\n\nint main(int argc, char* argv[]) {\n \n if(argc > 1)\n lang = atoi(argv[1]);\n\n printf( code[lang], print_delimited(code, delimiter[lang]), print_delimited(delimiter, delimiter[lang]) );\n \n printf(\"\\n\");\n return 0;\n}" 8 .string ".globl code_s\n .section .rodata\n .align 8\n.LC0:\n .string \"%s\"\n .string \"\"\n .data\n .align 8\n .type code_s, @object\n .size code_s, 8\ncode_s:\n .quad .LC0\n.globl delimiter_s\n .section .rodata\n.LC1:\n .string \"%s\"\n .string \"\"\n .data\n .align 8\n .type delimiter_s, @object\n .size delimiter_s, 8\ndelimiter_s:\n .quad .LC1\n.globl lang\n .align 4\n .type lang, @object\n .size lang, 4\nlang:\n .long 3\n .text\n.globl escape\n .type escape, @function\nescape:\n.LFB5:\n pushq %%rbp\n.LCFI0:\n movq %%rsp, %%rbp\n.LCFI1:\n subq $80, %%rsp\n.LCFI2:\n movq %%rdi, -40(%%rbp)\n movq -40(%%rbp), %%rax\n movq %%rax, -24(%%rbp)\n movq -24(%%rbp), %%rax\n movq $-1, %%rcx\n movq %%rax, -56(%%rbp)\n movl $0, %%eax\n cld\n movq -56(%%rbp), %%rdi\n repnz\n scasb\n movq %%rcx, %%rax\n notq %%rax\n decq %%rax\n addq %%rax, %%rax\n leaq 1(%%rax), %%rdi\n call malloc\n movq %%rax, -16(%%rbp)\n jmp .L2\n.L3:\n movzbl -1(%%rbp), %%eax\n movl %%eax, -44(%%rbp)\n cmpl $34, -44(%%rbp)\n je .L6\n cmpl $92, -44(%%rbp)\n je .L7\n cmpl $10, -44(%%rbp)\n je .L5\n jmp .L4\n.L7:\n movq -16(%%rbp), %%rax\n movq $-1, %%rcx\n movq %%rax, -64(%%rbp)\n movl $0, %%eax\n cld\n movq -64(%%rbp), %%rdi\n repnz\n scasb\n movq %%rcx, %%rax\n notq %%rax\n decq %%rax\n addq -16(%%rbp), %%rax\n movw $23644, (%%rax)\n movb $0, 2(%%rax)\n jmp .L8\n.L6:\n movq -16(%%rbp), %%rax\n movq $-1, %%rcx\n movq %%rax, -72(%%rbp)\n movl $0, %%eax\n cld\n movq -72(%%rbp), %%rdi\n repnz\n scasb\n movq %%rcx, %%rax\n notq %%rax\n decq %%rax\n addq -16(%%rbp), %%rax\n movw $8796, (%%rax)\n movb $0, 2(%%rax)\n jmp .L8\n.L5:\n movq -16(%%rbp), %%rax\n movq $-1, %%rcx\n movq %%rax, -80(%%rbp)\n movl $0, %%eax\n cld\n movq -80(%%rbp), %%rdi\n repnz\n scasb\n movq %%rcx, %%rax\n notq %%rax\n decq %%rax\n addq -16(%%rbp), %%rax\n movw $28252, (%%rax)\n movb $0, 2(%%rax)\n jmp .L8\n.L4:\n movq -24(%%rbp), %%rsi\n movq -16(%%rbp), %%rdi\n movl $1, %%edx\n call strncat\n.L8:\n incq -24(%%rbp)\n.L2:\n movq -24(%%rbp), %%rax\n movzbl (%%rax), %%eax\n movb %%al, -1(%%rbp)\n cmpb $0, -1(%%rbp)\n jne .L3\n movq -16(%%rbp), %%rax\n leave\n ret\n.LFE5:\n .size escape, .-escape\n.globl print_delimited\n .type print_delimited, @function\nprint_delimited:\n.LFB6:\n pushq %%rbp\n.LCFI3:\n movq %%rsp, %%rbp\n.LCFI4:\n subq $48, %%rsp\n.LCFI5:\n movq %%rdi, -24(%%rbp)\n movq %%rsi, -32(%%rbp)\n movl $0, %%edi\n call malloc\n movq %%rax, -16(%%rbp)\n movq -24(%%rbp), %%rax\n movq %%rax, -8(%%rbp)\n movq -8(%%rbp), %%rdi\n call escape\n movq %%rax, %%rsi\n movq -16(%%rbp), %%rdi\n call strcat\n movq -8(%%rbp), %%rax\n movq $-1, %%rcx\n movq %%rax, -40(%%rbp)\n movl $0, %%eax\n cld\n movq -40(%%rbp), %%rdi\n repnz\n scasb\n movq %%rcx, %%rax\n notq %%rax\n decq %%rax\n addq -8(%%rbp), %%rax\n incq %%rax\n movq %%rax, -8(%%rbp)\n jmp .L12\n.L13:\n movq -32(%%rbp), %%rsi\n movq -16(%%rbp), %%rdi\n call strcat\n movq -8(%%rbp), %%rdi\n call escape\n movq %%rax, %%rsi\n movq -16(%%rbp), %%rdi\n call strcat\n movq -8(%%rbp), %%rax\n movq $-1, %%rcx\n movq %%rax, -48(%%rbp)\n movl $0, %%eax\n cld\n movq -48(%%rbp), %%rdi\n repnz\n scasb\n movq %%rcx, %%rax\n notq %%rax\n decq %%rax\n addq -8(%%rbp), %%rax\n incq %%rax\n movq %%rax, -8(%%rbp)\n.L12:\n movq -8(%%rbp), %%rax\n movzbl (%%rax), %%eax\n testb %%al, %%al\n jne .L13\n movq -16(%%rbp), %%rax\n leave\n ret\n.LFE6:\n .size print_delimited, .-print_delimited\n.globl array_index\n .type array_index, @function\narray_index:\n.LFB7:\n pushq %%rbp\n.LCFI6:\n movq %%rsp, %%rbp\n.LCFI7:\n movq %%rdi, -24(%%rbp)\n movl %%esi, -28(%%rbp)\n movq -24(%%rbp), %%rax\n movq %%rax, -16(%%rbp)\n movl $0, -4(%%rbp)\n jmp .L17\n.L18:\n movq -16(%%rbp), %%rax\n movq $-1, %%rcx\n movq %%rax, -40(%%rbp)\n movl $0, %%eax\n cld\n movq -40(%%rbp), %%rdi\n repnz\n scasb\n movq %%rcx, %%rax\n notq %%rax\n decq %%rax\n addq -16(%%rbp), %%rax\n incq %%rax\n movq %%rax, -16(%%rbp)\n incl -4(%%rbp)\n.L17:\n movl -4(%%rbp), %%eax\n cmpl -28(%%rbp), %%eax\n jl .L18\n movq -16(%%rbp), %%rax\n leave\n ret\n.LFE7:\n .size array_index, .-array_index\n.globl main\n .type main, @function\nmain:\n.LFB8:\n pushq %%rbp\n.LCFI8:\n movq %%rsp, %%rbp\n.LCFI9:\n pushq %%r12\n.LCFI10:\n pushq %%rbx\n.LCFI11:\n subq $16, %%rsp\n.LCFI12:\n movl %%edi, -20(%%rbp)\n movq %%rsi, -32(%%rbp)\n cmpl $1, -20(%%rbp)\n jle .L22\n movq -32(%%rbp), %%rax\n addq $8, %%rax\n movq (%%rax), %%rdi\n call atoi\n movl %%eax, lang(%%rip)\n.L22:\n movl lang(%%rip), %%esi\n movq delimiter_s(%%rip), %%rdi\n call array_index\n movq %%rax, %%rsi\n movq delimiter_s(%%rip), %%rdi\n call print_delimited\n movq %%rax, %%r12\n movl lang(%%rip), %%esi\n movq delimiter_s(%%rip), %%rdi\n call array_index\n movq %%rax, %%rsi\n movq code_s(%%rip), %%rdi\n call print_delimited\n movq %%rax, %%rbx\n movl lang(%%rip), %%esi\n movq code_s(%%rip), %%rdi\n call array_index\n movq %%rax, %%rdi\n movq %%r12, %%rdx\n movq %%rbx, %%rsi\n movl $0, %%eax\n call printf\n movl $10, %%edi\n call putchar\n movl $0, %%eax\n addq $16, %%rsp\n popq %%rbx\n popq %%r12\n leave\n ret\n.LFE8:\n .size main, .-main\n .section .eh_frame,\"a\",@progbits\n.Lframe1:\n .long .LECIE1-.LSCIE1\n.LSCIE1:\n .long 0x0\n .byte 0x1\n .string \"zR\"\n .uleb128 0x1\n .sleb128 -8\n .byte 0x10\n .uleb128 0x1\n .byte 0x3\n .byte 0xc\n .uleb128 0x7\n .uleb128 0x8\n .byte 0x90\n .uleb128 0x1\n .align 8\n.LECIE1:\n.LSFDE1:\n .long .LEFDE1-.LASFDE1\n.LASFDE1:\n .long .LASFDE1-.Lframe1\n .long .LFB5\n .long .LFE5-.LFB5\n .uleb128 0x0\n .byte 0x4\n .long .LCFI0-.LFB5\n .byte 0xe\n .uleb128 0x10\n .byte 0x86\n .uleb128 0x2\n .byte 0x4\n .long .LCFI1-.LCFI0\n .byte 0xd\n .uleb128 0x6\n .align 8\n.LEFDE1:\n.LSFDE3:\n .long .LEFDE3-.LASFDE3\n.LASFDE3:\n .long .LASFDE3-.Lframe1\n .long .LFB6\n .long .LFE6-.LFB6\n .uleb128 0x0\n .byte 0x4\n .long .LCFI3-.LFB6\n .byte 0xe\n .uleb128 0x10\n .byte 0x86\n .uleb128 0x2\n .byte 0x4\n .long .LCFI4-.LCFI3\n .byte 0xd\n .uleb128 0x6\n .align 8\n.LEFDE3:\n.LSFDE5:\n .long .LEFDE5-.LASFDE5\n.LASFDE5:\n .long .LASFDE5-.Lframe1\n .long .LFB7\n .long .LFE7-.LFB7\n .uleb128 0x0\n .byte 0x4\n .long .LCFI6-.LFB7\n .byte 0xe\n .uleb128 0x10\n .byte 0x86\n .uleb128 0x2\n .byte 0x4\n .long .LCFI7-.LCFI6\n .byte 0xd\n .uleb128 0x6\n .align 8\n.LEFDE5:\n.LASFDE7:\n .long .LASFDE7-.Lframe1\n .long .LFB8\n .long .LFE8-.LFB8\n .uleb128 0x0\n .byte 0x4\n .long .LCFI8-.LFB8\n .byte 0xe\n .uleb128 0x10\n .byte 0x86\n .uleb128 0x2\n .byte 0x4\n .long .LCFI9-.LCFI8\n .byte 0xd\n .uleb128 0x6\n .byte 0x4\n .long .LCFI12-.LCFI9\n .byte 0x83\n .uleb128 0x4\n .byte 0x8c\n .uleb128 0x3\n .align 8" 9 .string "" 10 .data 11 .align 8 12 .type code_s, @object 13 .size code_s, 8 14 code_s: 15 .quad .LC0 16 .globl delimiter_s 17 .section .rodata 18 .LC1: 19 .string "\"\n,\n\"" 20 .string "\n #" 21 .string "\"\n,\n\"" 22 .string "\"\n .string \"" 23 .string "" 24 .data 25 .align 8 26 .type delimiter_s, @object 27 .size delimiter_s, 8 28 delimiter_s: 29 .quad .LC1 30 .globl lang 31 .align 4 32 .type lang, @object 33 .size lang, 4 34 lang: 35 .long 3 36 .text 37 .globl escape 38 .type escape, @function 39 escape: 40 .LFB5: 41 pushq %rbp 42 .LCFI0: 43 movq %rsp, %rbp 44 .LCFI1: 45 subq $80, %rsp 46 .LCFI2: 47 movq %rdi, -40(%rbp) 48 movq -40(%rbp), %rax 49 movq %rax, -24(%rbp) 50 movq -24(%rbp), %rax 51 movq $-1, %rcx 52 movq %rax, -56(%rbp) 53 movl $0, %eax 54 cld 55 movq -56(%rbp), %rdi 56 repnz 57 scasb 58 movq %rcx, %rax 59 notq %rax 60 decq %rax 61 addq %rax, %rax 62 leaq 1(%rax), %rdi 63 call malloc 64 movq %rax, -16(%rbp) 65 jmp .L2 66 .L3: 67 movzbl -1(%rbp), %eax 68 movl %eax, -44(%rbp) 69 cmpl $34, -44(%rbp) 70 je .L6 71 cmpl $92, -44(%rbp) 72 je .L7 73 cmpl $10, -44(%rbp) 74 je .L5 75 jmp .L4 76 .L7: 77 movq -16(%rbp), %rax 78 movq $-1, %rcx 79 movq %rax, -64(%rbp) 80 movl $0, %eax 81 cld 82 movq -64(%rbp), %rdi 83 repnz 84 scasb 85 movq %rcx, %rax 86 notq %rax 87 decq %rax 88 addq -16(%rbp), %rax 89 movw $23644, (%rax) 90 movb $0, 2(%rax) 91 jmp .L8 92 .L6: 93 movq -16(%rbp), %rax 94 movq $-1, %rcx 95 movq %rax, -72(%rbp) 96 movl $0, %eax 97 cld 98 movq -72(%rbp), %rdi 99 repnz 100 scasb 101 movq %rcx, %rax 102 notq %rax 103 decq %rax 104 addq -16(%rbp), %rax 105 movw $8796, (%rax) 106 movb $0, 2(%rax) 107 jmp .L8 108 .L5: 109 movq -16(%rbp), %rax 110 movq $-1, %rcx 111 movq %rax, -80(%rbp) 112 movl $0, %eax 113 cld 114 movq -80(%rbp), %rdi 115 repnz 116 scasb 117 movq %rcx, %rax 118 notq %rax 119 decq %rax 120 addq -16(%rbp), %rax 121 movw $28252, (%rax) 122 movb $0, 2(%rax) 123 jmp .L8 124 .L4: 125 movq -24(%rbp), %rsi 126 movq -16(%rbp), %rdi 127 movl $1, %edx 128 call strncat 129 .L8: 130 incq -24(%rbp) 131 .L2: 132 movq -24(%rbp), %rax 133 movzbl (%rax), %eax 134 movb %al, -1(%rbp) 135 cmpb $0, -1(%rbp) 136 jne .L3 137 movq -16(%rbp), %rax 138 leave 139 ret 140 .LFE5: 141 .size escape, .-escape 142 .globl print_delimited 143 .type print_delimited, @function 144 print_delimited: 145 .LFB6: 146 pushq %rbp 147 .LCFI3: 148 movq %rsp, %rbp 149 .LCFI4: 150 subq $48, %rsp 151 .LCFI5: 152 movq %rdi, -24(%rbp) 153 movq %rsi, -32(%rbp) 154 movl $0, %edi 155 call malloc 156 movq %rax, -16(%rbp) 157 movq -24(%rbp), %rax 158 movq %rax, -8(%rbp) 159 movq -8(%rbp), %rdi 160 call escape 161 movq %rax, %rsi 162 movq -16(%rbp), %rdi 163 call strcat 164 movq -8(%rbp), %rax 165 movq $-1, %rcx 166 movq %rax, -40(%rbp) 167 movl $0, %eax 168 cld 169 movq -40(%rbp), %rdi 170 repnz 171 scasb 172 movq %rcx, %rax 173 notq %rax 174 decq %rax 175 addq -8(%rbp), %rax 176 incq %rax 177 movq %rax, -8(%rbp) 178 jmp .L12 179 .L13: 180 movq -32(%rbp), %rsi 181 movq -16(%rbp), %rdi 182 call strcat 183 movq -8(%rbp), %rdi 184 call escape 185 movq %rax, %rsi 186 movq -16(%rbp), %rdi 187 call strcat 188 movq -8(%rbp), %rax 189 movq $-1, %rcx 190 movq %rax, -48(%rbp) 191 movl $0, %eax 192 cld 193 movq -48(%rbp), %rdi 194 repnz 195 scasb 196 movq %rcx, %rax 197 notq %rax 198 decq %rax 199 addq -8(%rbp), %rax 200 incq %rax 201 movq %rax, -8(%rbp) 202 .L12: 203 movq -8(%rbp), %rax 204 movzbl (%rax), %eax 205 testb %al, %al 206 jne .L13 207 movq -16(%rbp), %rax 208 leave 209 ret 210 .LFE6: 211 .size print_delimited, .-print_delimited 212 .globl array_index 213 .type array_index, @function 214 array_index: 215 .LFB7: 216 pushq %rbp 217 .LCFI6: 218 movq %rsp, %rbp 219 .LCFI7: 220 movq %rdi, -24(%rbp) 221 movl %esi, -28(%rbp) 222 movq -24(%rbp), %rax 223 movq %rax, -16(%rbp) 224 movl $0, -4(%rbp) 225 jmp .L17 226 .L18: 227 movq -16(%rbp), %rax 228 movq $-1, %rcx 229 movq %rax, -40(%rbp) 230 movl $0, %eax 231 cld 232 movq -40(%rbp), %rdi 233 repnz 234 scasb 235 movq %rcx, %rax 236 notq %rax 237 decq %rax 238 addq -16(%rbp), %rax 239 incq %rax 240 movq %rax, -16(%rbp) 241 incl -4(%rbp) 242 .L17: 243 movl -4(%rbp), %eax 244 cmpl -28(%rbp), %eax 245 jl .L18 246 movq -16(%rbp), %rax 247 leave 248 ret 249 .LFE7: 250 .size array_index, .-array_index 251 .globl main 252 .type main, @function 253 main: 254 .LFB8: 255 pushq %rbp 256 .LCFI8: 257 movq %rsp, %rbp 258 .LCFI9: 259 pushq %r12 260 .LCFI10: 261 pushq %rbx 262 .LCFI11: 263 subq $16, %rsp 264 .LCFI12: 265 movl %edi, -20(%rbp) 266 movq %rsi, -32(%rbp) 267 cmpl $1, -20(%rbp) 268 jle .L22 269 movq -32(%rbp), %rax 270 addq $8, %rax 271 movq (%rax), %rdi 272 call atoi 273 movl %eax, lang(%rip) 274 .L22: 275 movl lang(%rip), %esi 276 movq delimiter_s(%rip), %rdi 277 call array_index 278 movq %rax, %rsi 279 movq delimiter_s(%rip), %rdi 280 call print_delimited 281 movq %rax, %r12 282 movl lang(%rip), %esi 283 movq delimiter_s(%rip), %rdi 284 call array_index 285 movq %rax, %rsi 286 movq code_s(%rip), %rdi 287 call print_delimited 288 movq %rax, %rbx 289 movl lang(%rip), %esi 290 movq code_s(%rip), %rdi 291 call array_index 292 movq %rax, %rdi 293 movq %r12, %rdx 294 movq %rbx, %rsi 295 movl $0, %eax 296 call printf 297 movl $10, %edi 298 call putchar 299 movl $0, %eax 300 addq $16, %rsp 301 popq %rbx 302 popq %r12 303 leave 304 ret 305 .LFE8: 306 .size main, .-main 307 .section .eh_frame,"a",@progbits 308 .Lframe1: 309 .long .LECIE1-.LSCIE1 310 .LSCIE1: 311 .long 0x0 312 .byte 0x1 313 .string "zR" 314 .uleb128 0x1 315 .sleb128 -8 316 .byte 0x10 317 .uleb128 0x1 318 .byte 0x3 319 .byte 0xc 320 .uleb128 0x7 321 .uleb128 0x8 322 .byte 0x90 323 .uleb128 0x1 324 .align 8 325 .LECIE1: 326 .LSFDE1: 327 .long .LEFDE1-.LASFDE1 328 .LASFDE1: 329 .long .LASFDE1-.Lframe1 330 .long .LFB5 331 .long .LFE5-.LFB5 332 .uleb128 0x0 333 .byte 0x4 334 .long .LCFI0-.LFB5 335 .byte 0xe 336 .uleb128 0x10 337 .byte 0x86 338 .uleb128 0x2 339 .byte 0x4 340 .long .LCFI1-.LCFI0 341 .byte 0xd 342 .uleb128 0x6 343 .align 8 344 .LEFDE1: 345 .LSFDE3: 346 .long .LEFDE3-.LASFDE3 347 .LASFDE3: 348 .long .LASFDE3-.Lframe1 349 .long .LFB6 350 .long .LFE6-.LFB6 351 .uleb128 0x0 352 .byte 0x4 353 .long .LCFI3-.LFB6 354 .byte 0xe 355 .uleb128 0x10 356 .byte 0x86 357 .uleb128 0x2 358 .byte 0x4 359 .long .LCFI4-.LCFI3 360 .byte 0xd 361 .uleb128 0x6 362 .align 8 363 .LEFDE3: 364 .LSFDE5: 365 .long .LEFDE5-.LASFDE5 366 .LASFDE5: 367 .long .LASFDE5-.Lframe1 368 .long .LFB7 369 .long .LFE7-.LFB7 370 .uleb128 0x0 371 .byte 0x4 372 .long .LCFI6-.LFB7 373 .byte 0xe 374 .uleb128 0x10 375 .byte 0x86 376 .uleb128 0x2 377 .byte 0x4 378 .long .LCFI7-.LCFI6 379 .byte 0xd 380 .uleb128 0x6 381 .align 8 382 .LEFDE5: 383 .LASFDE7: 384 .long .LASFDE7-.Lframe1 385 .long .LFB8 386 .long .LFE8-.LFB8 387 .uleb128 0x0 388 .byte 0x4 389 .long .LCFI8-.LFB8 390 .byte 0xe 391 .uleb128 0x10 392 .byte 0x86 393 .uleb128 0x2 394 .byte 0x4 395 .long .LCFI9-.LCFI8 396 .byte 0xd 397 .uleb128 0x6 398 .byte 0x4 399 .long .LCFI12-.LCFI9 400 .byte 0x83 401 .uleb128 0x4 402 .byte 0x8c 403 .uleb128 0x3 404 .align 8