私は、AMD64のアセンブリ言語ですべてを書かなければならない同僚のために仕事をしなければなりません。
C標準ライブラリからいくつかのC関数をインポートすることは許可されていますが(実際のところ、一部は必須です)、VA_LISTを機能させる方法がわかりません。(私が知らされていることは、それらの機能のいくつかを機能させるために必要です)
ここに、StackOverflowの他のユーザーが優しく私に見てほしいと提案した ものがあります。x86_64va_list構造の形式は何ですか?
そして、これは私がこれまでにしたことです:
section .data
va_list:
dd 0; gp
dd 0; fp
dq 0; overflow
dq 0; reg
<code>
mov [va_list+16], _direction_of_the_int_I_want_to_pass;
mov rdx, va_list
call _function_I_want_to_call
これは何らかの理由で機能していません。別の方法でva_list構造を作成する必要がありますか?他のデータは0とは異なる必要がありますか?(つまり、関数でスタックを使用しません)