Is it OK if I will answer?
There is only one loop, and there is no unrolling.
32-bit
64-bitCode:bool b = IsPrime(49999991); 00911047 mov ecx,2 0091104C lea esp,[esp] 00911050 xor edx,edx 00911052 mov eax,2FAF077h 00911057 div eax,ecx 00911059 test edx,edx 0091105B je main+3Ah (091106Ah) 0091105D inc ecx 0091105E cmp ecx,2FAF077h 00911064 jb main+20h (0911050h) 00911066 mov bl,1 00911068 jmp main+3Ch (091106Ch) 0091106A xor bl,bl
Code:bool b = IsPrime(49999991); 000000013FAF1050 xor edx,edx 000000013FAF1052 mov eax,2FAF077h 000000013FAF1057 div rax,rcx 000000013FAF105A test rdx,rdx 000000013FAF105D je main+40h (013FAF1070h) 000000013FAF105F inc rcx 000000013FAF1062 cmp rcx,2FAF077h 000000013FAF1069 jb main+20h (013FAF1050h) 000000013FAF106B mov dil,1 000000013FAF106E jmp main+43h (013FAF1073h) 000000013FAF1070 xor dil,dil




Vlad - MS MVP [2007 - 2012] -
Reply With Quote
