08/07/25 00:17:26 a59gaSgu
>>554
変数へのアクセスがatomicにならないのはPIC Cに限定された話じゃないよ。
atomicなアクセスはC言語の仕様に含まれていないから、C言語の標準の範囲内で
プログラムを書く限り、どのCコンパイラを使ってもatomicアクセスの保障はない。
atomicアクセスが必要なら、割り込みを禁止するか、atomicであることが
保障されているアクセス手段でセマフォを作ってアクセスバリアを作るしか
ない。
>>565
「最下位が特定の値のときに二度読み」だと>>568が指摘するような
レイテンシ差が発生する可能性があるので、必ず二度読みするのがお勧め。
これだとレイテンシ差が発生しないようにコードを書くのが容易。