mm: pushl %ebp movl %esp, %ebp pushl %edi pushl %esi pushl %ebx subl $16, %esp nop movl $0, -24(%ebp) .p2align 2 .L3: movl -24(%ebp), %eax cmpl 20(%ebp), %eax jl .L6 jmp .L4 .p2align 2 .L6: movl $0, -20(%ebp) .p2align 2 .L7: movl -20(%ebp), %eax cmpl 20(%ebp), %eax jl .L10 leal -24(%ebp), %eax incl (%eax) jmp .L3 .p2align 2 .L10: movl -24(%ebp), %eax movl %eax, %eax sall $10, %eax addl -20(%ebp), %eax imull $4, %eax, %edx movl 12(%ebp), %eax movl (%eax,%edx), %eax movl %eax, -28(%ebp) movl $0, -16(%ebp) .p2align 2 .L11: movl -16(%ebp), %eax cmpl 20(%ebp), %eax jl .L14 leal -20(%ebp), %eax incl (%eax) jmp .L7 .p2align 2 .L14: movl -16(%ebp), %eax movl %eax, %eax sall $10, %eax addl -20(%ebp), %eax imull $4, %eax, %edi movl 16(%ebp), %esi movl -16(%ebp), %eax movl %eax, %eax sall $10, %eax addl -20(%ebp), %eax imull $4, %eax, %ebx movl 16(%ebp), %ecx movl -16(%ebp), %eax movl %eax, %eax sall $10, %eax addl -24(%ebp), %eax imull $4, %eax, %edx movl 8(%ebp), %eax movl (%eax,%edx), %eax imull -28(%ebp), %eax addl (%ecx,%ebx), %eax movl %eax, (%esi,%edi) leal -16(%ebp), %eax incl (%eax) jmp .L11 .p2align 2 .L4: addl $16, %esp popl %ebx popl %esi popl %edi popl %ebp ret .Lfe1: .size mm,.Lfe1-mm .ident "GCC: (GNU) 2.96 20000731 (Red Hat Linux 7.3 2.96-110)"