__return_address コンパイラ組み込み関数

このコンパイラ組み込み関数は、現在の関数の復帰アドレスを返します。

Show/hide構文

unsigned int __return_address(void)

Show/hide戻り値

__return_address コンパイラ組み込み関数を使用すると、現在の関数から復帰する場合に使用されるリンクレジスタの値が返されます。

Show/hide制約条件

__return_address コンパイラ組み込み関数は、インライン展開、末尾の呼び出し、コードの共有など、最適化を実行するコンパイラの機能には影響しません。最適化が実行された場合、__return_address によって返された値は、実行された最適化を反映します。

最適化なし

最適化が実行されない場合、関数 foo 内から __return_address によって返された値は、foo の復帰アドレスになります。

インライン最適化

関数 foo が関数 bar にインライン展開されると、関数 foo 内から __return_address によって返された値は、bar の復帰アドレスになります。

Tail 呼び出し最適化

関数 foo が関数 bar から末尾呼び出しされると、foo 内から __return_address によって返された値は、bar の復帰アドレスになります。

Show/hide関連項目

Copyright © 2010 ARM. All rights reserved.ARM DUI 0491BJ
Non-ConfidentialID011811