Hi,
Three systems, two runs each.
F:\TEMP\TEST>xlattimi
pre-P4 (SSE1)
439 cycles for 100 * xlat
412 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
439 cycles for 100 * xlat
412 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
439 cycles for 100 * xlat
412 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
439 cycles for 100 * xlat
412 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
13 bytes for xlat
14 bytes for movzx eax, byte ptr[ebx+ecx]
72 = eax xlat
72 = eax movzx eax, byte ptr[ebx+ecx]
--- ok ---
pre-P4 (SSE1)
440 cycles for 100 * xlat
415 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
444 cycles for 100 * xlat
413 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
440 cycles for 100 * xlat
424 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
441 cycles for 100 * xlat
413 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
13 bytes for xlat
14 bytes for movzx eax, byte ptr[ebx+ecx]
72 = eax xlat
72 = eax movzx eax, byte ptr[ebx+ecx]
--- ok ---
Intel(R) Pentium(R) M processor 1.70GHz (SSE2)
510 cycles for 100 * xlat
298 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
508 cycles for 100 * xlat
295 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
511 cycles for 100 * xlat
309 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
503 cycles for 100 * xlat
294 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
13 bytes for xlat
14 bytes for movzx eax, byte ptr[ebx+ecx]
72 = eax xlat
72 = eax movzx eax, byte ptr[ebx+ecx]
--- ok ---
Intel(R) Pentium(R) M processor 1.70GHz (SSE2)
510 cycles for 100 * xlat
297 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
509 cycles for 100 * xlat
301 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
509 cycles for 100 * xlat
296 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
510 cycles for 100 * xlat
305 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
13 bytes for xlat
14 bytes for movzx eax, byte ptr[ebx+ecx]
72 = eax xlat
72 = eax movzx eax, byte ptr[ebx+ecx]
--- ok ---
Intel(R) Core(TM) i3-4005U CPU @ 1.70GHz (SSE4)
488 cycles for 100 * xlat
480 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
489 cycles for 100 * xlat
480 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
490 cycles for 100 * xlat
480 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
488 cycles for 100 * xlat
479 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
13 bytes for xlat
14 bytes for movzx eax, byte ptr[ebx+ecx]
72 = eax xlat
72 = eax movzx eax, byte ptr[ebx+ecx]
--- ok ---
Intel(R) Core(TM) i3-4005U CPU @ 1.70GHz (SSE4)
490 cycles for 100 * xlat
486 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
490 cycles for 100 * xlat
481 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
486 cycles for 100 * xlat
483 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
491 cycles for 100 * xlat
480 cycles for 100 * movzx eax, byte ptr[ebx+ecx]
13 bytes for xlat
14 bytes for movzx eax, byte ptr[ebx+ecx]
72 = eax xlat
72 = eax movzx eax, byte ptr[ebx+ecx]
--- ok ---
Regards,
Steve