質問

Visual Studio 2005でx64 microsftマクロアセンブラー用に記述された関数があります。 この関数は3つの引数を受け取ります:

theFunction PROC firstP:QWORD, secondP:QWORD, thirdP:QWORD

x64呼び出し規約では、最初の4つの引数がレジスタrcx、rdx、r8&に存在します。 r9。 関数で引数を使用しているときは、パラメーターではなく、自分でレジスターを参照しています:

mov r10, rcx   ; Move firstP to r10

これにより、次の警告が発生します。

  

警告A6004:プロシージャの引数またはローカルが参照されていません

この警告を回避または抑制するにはどうすればよいですか? レジスタを使用する代わりに、関数内のパラメーターを参照する方法はありますか?

役に立ちましたか?

解決

解決策の発見:PROCを宣言した必要はありませんでした。関数に渡されるパラメーターを宣言する必要はありません。

theFunction PROC
mov r10, rcx       ;Move firstP to r10
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top