3
、ポートはX86のアーチのためのサンプルコードの下MIPS32
# define INC(_lval,_lqual) \
__asm__ __volatile__ (\
"lock ; incl (%0)" : /*out*/ : /*in*/"r"(&(_lval)) : "memory", "cc")
に誰かが私に同等のMIPS32アーチを助けてください。
、ポートはX86のアーチのためのサンプルコードの下MIPS32
# define INC(_lval,_lqual) \
__asm__ __volatile__ (\
"lock ; incl (%0)" : /*out*/ : /*in*/"r"(&(_lval)) : "memory", "cc")
に誰かが私に同等のMIPS32アーチを助けてください。
これは、アトミックインクリメントのgccインラインアセンブリのようです。これは、原子増分のためのGCC固有のものである:
__sync_fetch_and_add(&_lval, 1);
作品、MIPS32など
私はあなたhereのために有用である可能性のあるコードを発見しました。実際には、gccの組み込み関数がそのアーキテクチャに実装されていないことを示すようです。
mips32の__sync_fetch_and_add_4への未定義の参照を取得する –
@ding_dong:警告メッセージが表示されている必要があります。少なくとも、これはgccのドキュメントに記載されています。 –
gccがそのアーキテクチャに実装していない場合、エラーメッセージとJensの答えが示唆するように、私はあまり役に立たないでしょう。 MIPS32 Architectureマニュアルには、MIPS32にロードリンクされた条件付きストアがあることが示されています。これを使用して、アトミック・インクリメントを構築する必要があります。 –