This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

why some instructions are not required to be  explicitly synchronized ?

Dear all:

In "ARM® Architecture Reference Manual ARMv8", B2.6.5 Concurrent modification and execution of instructions ,

it says some instructions, such as " B, BL, NOP, BRK, SVC, HVC, and SMC " dont need to be explicitly synchronized to instruction cache, while all other instruction need.

I can understand the latter, but no the case of "B, BL, NOP, BRK, SVC, HVC, and SMC ", can some body explain why?

Shen

Parents
  • Dear Simon:

    Thank you for your answer.

    But it seems you are answering "why we need it be like this", instead of "how can we make it happen".

    So is there any special character of these instructions, such as their encoding, that make the other core either see it or not in its entirety?

    These instructions, just like all others, are of the same 32-bit size, if they can be seen entirely, why can not other instrcutions?

Reply
  • Dear Simon:

    Thank you for your answer.

    But it seems you are answering "why we need it be like this", instead of "how can we make it happen".

    So is there any special character of these instructions, such as their encoding, that make the other core either see it or not in its entirety?

    These instructions, just like all others, are of the same 32-bit size, if they can be seen entirely, why can not other instrcutions?

Children
No data