История изменений
Исправление wandrien, (текущая версия) :
Далее что тут можно сделать это поместить часть данных в регистры, чтобы получилось такое:
mov ESI, dword [EBP-8]
mov EDI, dword [EBP-4]
mov EBX, 100000
align 32
@10499:
cmp ESI, EBX
jae @10500
imul EAX, ESI, 92
mov EDX, dword [@@DATA+EAX+777192]
cmp EDX, EDI
je @10503
mov ESI, dword [@@DATA+EAX+777204]
jmp @10499
Компилятор пока такое не умеет.
Но скорее всего, это ничего не даст, так как далее мы упираемся в пропускную способность памяти при сканировании списка.
Исходная версия wandrien, :
Далее что тут можно сделать это поместить часть данных в регистры, чтобы получилось такое:
mov ESI, dword [EBP-8]
mov EDI, dword [EBP-4]
mov EBX, 100000
align 32
@10499:
cmp ESI, EBX
jae @10500
imul EAX, ESI, 92
mov EDX, dword [@@DATA+EAX+777192]
cmp EDX, EDI
je @10503
mov ESI, dword [@@DATA+EAX+777204]
jmp @10499
Компилятор пока такое не умеет.