x86中的发布语义是否只影响读写指令?

时间:2018-06-19 13:27:49

标签: assembly x86

x86中的一条写指令具有释放语义,而这个tutorial说了以下有关释放语义的含义:

  

发布语义防止使用以下命令对写释放进行内存重新排序   按程序顺序在其之前的任何读取或写入操作。

因此,如果我有以下说明,

read_instruction_1
read_instruction_2
write_instruction_1
write_instruction_2 (the above instructions will no be reordered to below this instruction)
read_instruction_3
write_instruction_3

write_instruction_2上方的说明不会重新排序到write_instruction_2以下的说明。


但是如果我有这样的东西怎么办:

read_instruction_1
read_instruction_2
write_instruction_1
a_non_read_or_write_instruction
write_instruction_2 (will a_non_read_or_write_instruction not be reordered to below this instruction?)
read_instruction_3
write_instruction_3

a_non_read_or_write_instruction指令不是读或写指令,但我不希望将其重新排序到write_instruction_2以下,是否不将其重新排序到write_instruction_2以下? / p>

0 个答案:

没有答案