SPARC v9 にはダブルワード比較およびスワップ命令がありますか?

StackOverflow https://stackoverflow.com/questions/1272768

  •  13-09-2019
  •  | 
  •  

質問

それで;v9 準拠の 64 ビット SPARC CPU 上には、 カス 命令。これは単一の語長値に作用します。

についての言及もウェブ上で見ました。 カクス 指示ですが、それ以上のことはわかりません。

気になるのですが、これはダブルワードの比較と交換なのでしょうか?

そうでない場合、一般的な質問は次のとおりです。ダブルワードの比較と交換はありますか?

役に立ちましたか?

解決 3

Sparc64 は、最新の CPU の中で唯一、倍幅の CAS も LL/SC も実装していません。そのため、ロックフリーのコードを実装することには問題があります。解決策はありますが、それらは CAS または LL/SC をサポートしているため、他のプラットフォームには存在しない問題 (ABA) に対する解決策です。さらに、この制限のため、さまざまなロックフリー アルゴリズムを Sparce に実装することはできません。

他のヒント

また、次の点にも注意してください casx は存在しますが、それは合成命令です (つまり、簡略化されたニーモニック) casxa. 。見る 表43 前述の SPARC アーキテクチャ マニュアルには次のように記載されています。

Synthetic:   casx [regrs1], regrs2, regrd 
Instruction: casxa [regrs1]#ASI_P, regrs2, regrd 
Description: compare and swap extended 
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top