私はクラス用のコンパイラを作成していますが、間接呼び出しを行うGNUの構文に慣れています。アセンブラで間接呼び出しを行う
.text
.globl main
main:
movl func, %eax
call *%eax
ret
func:
movl $42, %eax
ret
gcc -m32 -O0
してコンパイルし、結果のプログラムを実行している私にセグメンテーションフォールトを与える:この単純なプログラムは考えてみましょう。誰かが正しくコールを行う方法を教えてもらえますか?
ありがとうございました。
Vincent。
関連質問:http://stackoverflow.com/questions/1897401/gnu-assembler-get-address-of-label-variable-intel-syntax – msandiford