2017-10-31 4 views
1

glibcの関数memcmpの実装では、unsigned int型の2つの整数を比較するためにマクロDBLALIGN(DBLALIG(a3、a0、srcli)など)を使用します。 DBLALIGNは次のようにdelcaredされます。ただし、__insn_dword_alignの定義はglibcソースコードでは見つかりません。どこで見つけることができますか。ありがとうございました!glibcソースコードプロジェクトのmemcmp.cにあるマクロ__insn_dword_alignの定義はどこにありますか?

#ifdef __tilegx__ 
#define DBLALIGN __insn_dblalign 
#define REVBYTES __insn_revbytes 
#else 
#define DBLALIGN __insn_dword_align 
#define REVBYTES __insn_bytex 
#endif 

答えて

0

これはgcc内蔵です。例えば、 here

私はあなたが任意の組み込みの定義を見つけられないでしょう定義

を見つけることができません。コンパイラは組み込み関数を名前で認識し、アセンブリに必要な命令を直接出力します。

+0

あなたのリンクにあります。しかし、私は__insn_dword_alignの定義を見つけることができません。イベントは、gcc 4.4.7のソースコードをダウンロードし、__insn_dword_alignの定義を検索する場合に発生します。組み込み関数はアセンブリ言語で実装されていますか?私はマクロの最終実装をしたい。そしてどうしたらいいですか?どうもありがとう。 –

+0

@ B.Frank答えを更新しました。 –

関連する問題