assembly - out-of-order execution dependancy and jump -
i have difficulties understand how "out-of-order" work on cpu.
let me take 1 example :
cpuid mov %rax,(%rbx)
is possible mov
instruction executed before cpuid
instruction? think not possible because of dependency(cpuid write inside rax) i'm not sure. or maybe possible , there make correction reordering? how cpu detects dependency? during decode stage?
what happen if there instruction depending on other 1 , these 2 instructions separated lot of independant instructions example below:
cpuid ;a lot of instruction here doesn't affect rax register mov %rax,(%rbx)
let me take other example :
jmp 1 jmp 2 one: instructions here jmp 0 two: other instructions there can depends of instructions inside label called 'one'
can jmp two
executed before jmp one
?
Comments
Post a Comment