, , () ~ 10% , ()
, , AMD Bulldozer Ryzen, loop. loop , , , . 7 , 5 .
mov r64, imm64 - - 2 Intel uop. (. - Sandybridge Agar Fog microarch pdf) , imm64 m64 x86-64?, .
, , 1 . , AMD ( 1-/1 2 loop), mov 10%. , 3 4 uops 2 , , loop 2 .
Intel, loop - 7 , 5 , / 4 , . loop , . ( Skylake LSD , ). , mov r64,imm64 uop uop .
, , (2 - , cmp). , , . .
:
, RIP-relative lea 64- .
lea rax, [rel addr64]. , . (BTW, default rel. [abs fs:0], .
, , , (), , 32 . ( 2GiB, , ). . 32- x86-64 Linux?, gcc ; -pie . , , Linux-, 64- . , , lea .
32 , cmp r64, imm32 cmp r32, imm32 PIC.
64- , mov r64, imm64 . cmp , mov . x86-64 , ( ) .