📄 fec.s16.980624a
字号:
.file "fec.c"gcc2_compiled.:___gnu_compiled_c:.data .align 2 .type _allPp,@object_allPp: .long 0 .long 0 .long LC0 .long LC1 .long LC2 .long LC3 .long LC4 .long LC5 .long LC6 .long LC7 .long LC8 .long LC9 .long LC10 .long LC11 .long LC12 .long LC13 .long LC14.textLC14: .ascii "11010000000010001\0"LC13: .ascii "1100000000000001\0"LC12: .ascii "110000100010001\0"LC11: .ascii "11011000000001\0"LC10: .ascii "1100101000001\0"LC9: .ascii "101000000001\0"LC8: .ascii "10010000001\0"LC7: .ascii "1000100001\0"LC6: .ascii "101110001\0"LC5: .ascii "10010001\0"LC4: .ascii "1100001\0"LC3: .ascii "101001\0"LC2: .ascii "11001\0"LC1: .ascii "1101\0"LC0: .ascii "111\0" .size _allPp,68LC15: .ascii "-- malloc failure allocating %s\12\0" .align 2 .type _my_malloc,@function_my_malloc: pushl %ebp movl %esp,%ebp pushl 8(%ebp) call _malloc addl $4,%esp testl %eax,%eax jne L28 pushl 12(%ebp) pushl $LC15 pushl $___sF+176 call _fprintf pushl $1 call _exit .align 2,0x90L28: leave retLfe1: .size _my_malloc,Lfe1-_my_malloc .align 2 .type _generate_gf,@function_generate_gf: pushl %ebp movl %esp,%ebp pushl %esi pushl %ebx movl _allPp+64,%ebx movl $1,%ecx movw $0,_gf_exp+32 xorl %edx,%edx .align 2,0x90L33: movw %cx,_gf_exp(,%edx,2) movzwl %cx,%eax movl %edx,_gf_log(,%eax,4) cmpb $49,(%edx,%ebx) jne L32 xorw %cx,_gf_exp+32L32: incl %edx addw %cx,%cx cmpl $15,%edx jle L33 movzwl _gf_exp+32,%eax movl $16,_gf_log(,%eax,4) movl $32768,%ecx movl $17,%edx .align 2,0x90L39: cmpw %cx,_gf_exp-2(,%edx,2) jb L40 movl %ecx,%eax xorw _gf_exp-2(,%edx,2),%ax addw %ax,%ax xorw _gf_exp+32,%ax movw %ax,_gf_exp(,%edx,2) jmp L41 .align 2,0x90L40: movw _gf_exp-2(,%edx,2),%si addw %si,%si movw %si,_gf_exp(,%edx,2)L41: movzwl _gf_exp(,%edx,2),%eax movl %edx,_gf_log(,%eax,4) incl %edx cmpl $65534,%edx jle L39 movl $65535,_gf_log xorl %edx,%edx .align 2,0x90L46: movw _gf_exp(,%edx,2),%ax movw %ax,_gf_exp+131070(,%edx,2) incl %edx cmpl $65534,%edx jle L46 movw $0,_inverse movw $1,_inverse+2 movl $2,%edx .align 2,0x90L51: movl $65535,%eax subl _gf_log(,%edx,4),%eax movw _gf_exp(,%eax,2),%ax movw %ax,_inverse(,%edx,2) incl %edx cmpl $65535,%edx jle L51 leal -8(%ebp),%esp popl %ebx popl %esi leave retLfe2: .size _generate_gf,Lfe2-_generate_gf .align 2 .type _addmul1,@function_addmul1: pushl %ebp movl %esp,%ebp pushl %edi pushl %esi pushl %ebx movl 8(%ebp),%edx movl 20(%ebp),%edi leal 0(,%edi,2),%eax /* DI free now */ movl 12(%ebp),%edi leal -30(%edx,%eax),%esi movzwl 16(%ebp),%eax movl _gf_log(,%eax,4),%eax addl %eax,%eax leal _gf_exp(%eax),%ebx cmpl %esi,%edx jae L55 .align 2,0x90#define XYZ(n) \ movzwl n(%edi),%eax ; \ cmpl $0,%eax; \ je 1f; \ movl _gf_log(,%eax,4),%eax ; \ movw (%ebx,%eax,2),%ax ; \ xorw %ax,n(%edx) ; \1: ;#define XYZ2(n) \ movl n(%edi),%eax ; \ movzwl %ax, %ecx ; \ cmpw $0,%ax; \ je 1f; \ movl _gf_log(,%ecx,4),%ecx ; \ movw (%ebx,%ecx,2),%ax ; \1: \ roll $16, %eax ; \ movzwl %ax, %ecx ; \ cmpw $0,%ax; \ je 2f; \ movl _gf_log(,%ecx,4),%ecx ; \ movw (%ebx,%ecx,2),%ax ; \2: \ roll $16, %eax ; \ xorl %ax,n(%edx) ; L57:#if 0 XYZ2(0) XYZ2(4) XYZ2(8) XYZ2(12) XYZ2(16) XYZ2(20) XYZ2(24) XYZ2(28)#else XYZ(0) XYZ(2) XYZ(4) XYZ(6) XYZ(8) XYZ(10) XYZ(12) XYZ(14) XYZ(16) XYZ(18) XYZ(20) XYZ(22) XYZ(24) XYZ(26) XYZ(28) XYZ(30)#endif addl $32,%edx addl $32,%edi cmpl %esi,%edx jb L57L55: addl $30,%esi cmpl %esi,%edx jae L76 .align 2,0x90L78: XYZ(0) ; addl $2,%edx addl $2,%edi cmpl %esi,%edx jb L78L76: leal -12(%ebp),%esp popl %ebx popl %esi popl %edi leave retLfe3: .size _addmul1,Lfe3-_addmul1 .align 2 .type _matmul,@function_matmul: pushl %ebp movl %esp,%ebp subl $24,%esp pushl %edi pushl %esi pushl %ebx movl $0,-4(%ebp) movl 20(%ebp),%edx cmpl %edx,-4(%ebp) jge L83 movl 28(%ebp),%esi addl %esi,%esi movl %esi,-16(%ebp) .align 2,0x90L85: xorl %ebx,%ebx cmpl %ebx,28(%ebp) jle L84 movl -4(%ebp),%eax imull 24(%ebp),%eax addl %eax,%eax movl %eax,-8(%ebp) .align 2,0x90L89: movl 8(%ebp),%edi addl -8(%ebp),%edi movl 12(%ebp),%edx leal (%edx,%ebx,2),%edx movl %edx,-24(%ebp) movw $0,-12(%ebp) xorl %ecx,%ecx cmpl %ecx,24(%ebp) jle L91 .align 2,0x90L93: movzwl (%edi),%esi movl %esi,-20(%ebp) movl -24(%ebp),%edx movzwl (%edx),%eax testl %esi,%esi je L96 testl %eax,%eax jne L95L96: xorl %eax,%eax jmp L94 .align 2,0x90L95: movl -20(%ebp),%esi movl _gf_log(,%esi,4),%esi addl _gf_log(,%eax,4),%esi movl %esi,%eax movw _gf_exp(,%eax,2),%axL94: xorw %ax,-12(%ebp) incl %ecx addl $2,%edi movl -16(%ebp),%edx addl %edx,-24(%ebp) cmpl %ecx,24(%ebp) jg L93L91: movl -4(%ebp),%eax imull 28(%ebp),%eax addl %ebx,%eax movw -12(%ebp),%dx movl 16(%ebp),%esi movw %dx,(%esi,%eax,2) incl %ebx cmpl %ebx,28(%ebp) jg L89L84: incl -4(%ebp) movl 20(%ebp),%esi cmpl %esi,-4(%ebp) jl L85L83: leal -36(%ebp),%esp popl %ebx popl %esi popl %edi leave retLfe4: .size _matmul,Lfe4-_matmulLC16: .ascii "indxc\0"LC17: .ascii "indxr\0"LC18: .ascii "ipiv\0"LC19: .ascii " ## __LINE__ ## \0"LC20: .ascii "singular matrix\12\0"LC21: .ascii "XXX pivot not found!\12\0"LC22: .ascii "singular matrix 2\12\0"LC23: .ascii "AARGH, indxr[col] %d\12\0"LC24: .ascii "AARGH, indxc[col] %d\12\0" .align 2 .type _invert_mat,@function_invert_mat: pushl %ebp movl %esp,%ebp subl $52,%esp pushl %edi pushl %esi pushl %ebx movl $1,-16(%ebp) pushl $LC16 movl 12(%ebp),%edx sall $2,%edx movl %edx,-52(%ebp) pushl %edx call _my_malloc movl %eax,-20(%ebp) pushl $LC17 pushl -52(%ebp) call _my_malloc movl %eax,-24(%ebp) pushl $LC18 pushl -52(%ebp) call _my_malloc movl %eax,-28(%ebp) pushl $LC19 movl 12(%ebp),%ecx addl %ecx,%ecx movl %ecx,-52(%ebp) pushl %ecx call _my_malloc movl %eax,-32(%ebp) addl $32,%esp pushl $LC19 pushl -52(%ebp) call _my_malloc movl %eax,-36(%ebp) pushl -52(%ebp) pushl -32(%ebp) call _bzero xorl %eax,%eax addl $16,%esp cmpl %eax,12(%ebp) jle L102 .align 2,0x90L104: movl -28(%ebp),%ebx movl $0,(%ebx,%eax,4) incl %eax cmpl %eax,12(%ebp) jg L104L102: movl $0,-12(%ebp) movl 12(%ebp),%edx cmpl %edx,-12(%ebp) jge L107 .align 2,0x90L109: movl $-1,-8(%ebp) movl $-1,-4(%ebp) movl -12(%ebp),%ecx movl -28(%ebp),%ebx cmpl $1,(%ebx,%ecx,4) je L110 movl %ecx,%eax imull 12(%ebp),%eax addl %ecx,%eax movl 8(%ebp),%edx cmpw $0,(%edx,%eax,2) je L110 movl %ecx,-4(%ebp) movl %ecx,-8(%ebp) jmp L111 .align 2,0x90L110: xorl %edi,%edi cmpl %edi,12(%ebp) jle L113 .align 2,0x90L115: movl -28(%ebp),%ecx cmpl $1,(%ecx,%edi,4) je L114 xorl %esi,%esi cmpl %esi,12(%ebp) jle L114 .align 2,0x90L120: movl -28(%ebp),%ebx cmpl $0,(%ebx,%esi,4) jne L121 movl 12(%ebp),%eax imull %edi,%eax addl %esi,%eax movl 8(%ebp),%edx cmpw $0,(%edx,%eax,2) je L119 movl %edi,-4(%ebp) movl %esi,-8(%ebp) jmp L111 .align 2,0x90L121: movl -28(%ebp),%ecx cmpl $1,(%ecx,%esi,4) jle L119 pushl $LC20 jmp L171 .align 2,0x90L119: incl %esi cmpl %esi,12(%ebp) jg L120L114: incl %edi cmpl %edi,12(%ebp) jg L115L113: cmpl $-1,-8(%ebp) jne L111 pushl $LC21 jmp L171 .align 2,0x90L111: movl -8(%ebp),%ebx movl -28(%ebp),%edx incl (%edx,%ebx,4) cmpl %ebx,-4(%ebp) je L129 xorl %esi,%esi cmpl %esi,12(%ebp) jle L129 movl -4(%ebp),%ecx imull 12(%ebp),%ecx movl %ecx,-40(%ebp) movl -8(%ebp),%edi imull 12(%ebp),%edi .align 2,0x90L133: movl -40(%ebp),%ebx addl %esi,%ebx movl %ebx,-44(%ebp) movl 8(%ebp),%edx movw (%edx,%ebx,2),%dx movw %dx,-52(%ebp) leal (%esi,%edi),%ecx movl 8(%ebp),%ebx movw (%ebx,%ecx,2),%ax movl -44(%ebp),%edx movw %ax,(%ebx,%edx,2) movw -52(%ebp),%dx movw %dx,(%ebx,%ecx,2) incl %esi cmpl %esi,12(%ebp) jg L133L129: movl -4(%ebp),%edx movl -12(%ebp),%ecx movl -24(%ebp),%ebx movl %edx,(%ebx,%ecx,4) movl -8(%ebp),%ebx movl -20(%ebp),%edx movl %ebx,(%edx,%ecx,4) movl -8(%ebp),%eax imull 12(%ebp),%eax movl 8(%ebp),%ecx leal (%ecx,%eax,2),%edi movw (%edi,%ebx,2),%ax testw %ax,%ax jne L135 pushl $LC22L171: pushl $___sF+176 call _fprintf addl $8,%esp jmp L125 .align 2,0x90L135: cmpw $1,%ax je L136 andl $65535,%eax movw _inverse(,%eax,2),%ax movl -8(%ebp),%ebx movw $1,(%edi,%ebx,2) xorl %esi,%esi cmpl %esi,12(%ebp) jle L136 andl $65535,%eax movl %eax,-52(%ebp) .align 2,0x90L140: movzwl (%edi,%esi,2),%eax cmpl $0,-52(%ebp) je L143 testl %eax,%eax jne L142L143: xorl %eax,%eax jmp L141 .align 2,0x90L142: movl -52(%ebp),%edx movl _gf_log(,%edx,4),%edx addl _gf_log(,%eax,4),%edx movl %edx,%eax movw _gf_exp(,%eax,2),%axL141: movw %ax,(%edi,%esi,2) incl %esi cmpl %esi,12(%ebp) jg L140L136: movl -8(%ebp),%ecx movl -32(%ebp),%ebx movw $1,(%ebx,%ecx,2) movl 12(%ebp),%eax addl %eax,%eax pushl %eax pushl %ebx pushl %edi call _bcmp addl $12,%esp testl %eax,%eax je L145 movl 8(%ebp),%edx movl %edx,-52(%ebp) xorl %esi,%esi cmpl %esi,12(%ebp) jle L145 .align 2,0x90L149: cmpl %esi,-8(%ebp) je L148 movl -8(%ebp),%ecx movl -52(%ebp),%ebx movw (%ebx,%ecx,2),%ax movw $0,(%ebx,%ecx,2) testw %ax,%ax je L148 pushl 12(%ebp) andl $65535,%eax pushl %eax pushl %edi pushl %ebx call _addmul1 addl $16,%espL148: incl %esi movl -52(%ebp),%ecx movl 12(%ebp),%edx leal (%ecx,%edx,2),%ecx movl %ecx,-52(%ebp) cmpl %edx,%esi jl L149L145: movl -8(%ebp),%ebx movl -32(%ebp),%edx movw $0,(%edx,%ebx,2) incl -12(%ebp) movl 12(%ebp),%ecx cmpl %ecx,-12(%ebp) jl L109L107: movl 12(%ebp),%ebx decl %ebx movl %ebx,-12(%ebp) js L155 .align 2,0x90L157: movl -12(%ebp),%edx movl -24(%ebp),%ecx cmpl $0,(%ecx,%edx,4) jl L159 movl 12(%ebp),%ebx cmpl %ebx,(%ecx,%edx,4) jl L158L159: movl -12(%ebp),%edx movl -24(%ebp),%ecx pushl (%ecx,%edx,4) pushl $LC23 jmp L172 .align 2,0x90L158: movl -12(%ebp),%ebx movl -20(%ebp),%edx cmpl $0,(%edx,%ebx,4) jl L162 movl 12(%ebp),%ecx cmpl %ecx,(%edx,%ebx,4) jl L161L162: movl -12(%ebp),%ebx movl -20(%ebp),%edx pushl (%edx,%ebx,4) pushl $LC24L172: pushl $___sF+176 call _fprintf addl $12,%esp jmp L156 .align 2,0x90L161: movl -12(%ebp),%ecx movl -24(%ebp),%ebx movl (%ebx,%ecx,4),%eax movl -20(%ebp),%edx cmpl %eax,(%edx,%ecx,4) je L156 xorl %edi,%edi cmpl %edi,12(%ebp) jle L156 .align 2,0x90L168: movl 12(%ebp),%ecx imull %edi,%ecx movl %ecx,-48(%ebp) movl -12(%ebp),%ebx movl -24(%ebp),%edx addl (%edx,%ebx,4),%ecx movl %ecx,-44(%ebp) movl 8(%ebp),%ebx movw (%ebx,%ecx,2),%bx movw %bx,-52(%ebp) movl -48(%ebp),%eax movl -12(%ebp),%edx movl -20(%ebp),%ecx addl (%ecx,%edx,4),%eax movl 8(%ebp),%ebx movw (%ebx,%eax,2),%ax movl -44(%ebp),%edx movw %ax,(%ebx,%edx,2) movl -48(%ebp),%edx movl -12(%ebp),%ebx addl (%ecx,%ebx,4),%edx movw -52(%ebp),%bx movl 8(%ebp),%ecx movw %bx,(%ecx,%edx,2) incl %edi cmpl %edi,12(%ebp) jg L168L156: decl -12(%ebp) jns L157L155: movl $0,-16(%ebp)L125: pushl -20(%ebp) call _free pushl -24(%ebp) call _free pushl -28(%ebp) call _free pushl -32(%ebp) call _free pushl -36(%ebp) call _free movl -16(%ebp),%eax leal -64(%ebp),%esp popl %ebx popl %esi popl %edi leave retLfe5: .size _invert_mat,Lfe5-_invert_mat .align 2.globl _invert_vdm .type _invert_vdm,@function_invert_vdm: pushl %ebp movl %esp,%ebp subl $36,%esp pushl %edi pushl %esi pushl %ebx movl 12(%ebp),%edi cmpl $1,%edi je L218 pushl $LC19 leal (%edi,%edi),%ebx pushl %ebx call _my_malloc movl %eax,-12(%ebp) pushl $LC19 pushl %ebx call _my_malloc movl %eax,-8(%ebp) pushl $LC19 pushl %ebx call _my_malloc movl %eax,-16(%ebp) movl $1,%edx xorl %ecx,%ecx addl $24,%esp cmpl %edi,%ecx jge L176 .align 2,0x90L178: movl -12(%ebp),%ebx movw $0,(%ebx,%ecx,2) movl 8(%ebp),%esi movw (%esi,%edx,2),%ax movl -16(%ebp),%ebx movw %ax,(%ebx,%ecx,2) incl %ecx addl %edi,%edx cmpl %edi,%ecx
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -