1

ARMのこのコードの意味を誰か説明してもらえますか?

__asm__ __volatile__("mov %0, pc \n":"=r"(val)::"memory")

プログラムカウンターの値を変数valに格納していると思います。私は正しいですか?

4

1 に答える 1

3

そうです、プログラムカウンターをに入れvalます。

これ=rは、出力書き込み専用変数であることを意味します。"memory"インラインアセンブリ全体で値をキャッシュしないようにコンパイラに指示します。"memory"しかし、なぜここで使用されたのかは100%わかりません。

于 2012-10-23T09:27:51.737 に答える