Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void imageprocess::illuminateLUT(uchar * tablaLUT, uchar gW)
- {
- asm volatile(
- "\n\t"
- "mov %0, %%esi\n\t"
- "mov $0, %%edi\n\t"
- "EFor:\n\t"
- "cmp %1, %%edi\n\t"
- "jge IFFor\n\t"
- "mov %%edi, %%ebx\n\t"
- "mov $255, %%eax\n\t"
- "imul %%ebx, %%eax\n\t"
- "mov %1, %%ebx\n\t"
- "cltd\n\t"
- "div %%ebx\n\t" //EAX entre lo que haya en EBX.
- "movb %%al, (%%esi, %%edi)\n\t"
- "inc %%edi\n\t"
- "jmp EFor\n\t"
- "IFFor:\n\t"
- "mov %1, %%ecx\n\t"
- "FFor:\n\t"
- "cmp $256, %%ecx\n\t"
- "jge FinalILUT\n\t"
- "mov $255, %%eax\n\t"
- "movb $255, (%%esi, %%ecx)\n\t"
- "inc %%ecx\n\t"
- "jmp FFor\n\t"
- "FinalILUT:\n\t"
- :
- : "m" (tablaLUT), "m" (gW)
- : "%eax", "%ebx", "%ecx", "%edx", "%esi", "%edi", "memory"
- );
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement