Renesas Synergy™

FAQ 1008138 : レジスタに割り当たるローカル変数は、いくつまでが適当ですか?

回答

ローカル変数(auto変数)は、10個以下、なるべく6~7個くらいにしてください。


ローカル変数はレジスタに割り当てられます。
CA850では、1つの関数内で、作業用レジスタとして10本、 レジスタ変数用レジスタとして10本、合計20本のレジスタを変数用として使用可能です。(32レジスタ・モードの場合)


1つの関数内の処理が、時間のかかる処理であれば、ローカル変数を多く使用することを推奨します。
あまり時間のかからない処理であれば、できるだけ作業用レジスタの10本のみを使用するようにしてください。
レジスタ変数用レジスタは、退避/復帰のオーバヘッドがかかります。
レジスタ変数を使用するかしないかは、Cコンパイラが自動的に判断します。


したがって、ローカル変数は6~7個とし、Cコンパイラが作業用として 使用可能なレジスタを3~4本残してください。

 

 

適用製品

V850用コンパイラパッケージ [CA850]

 

他にご質問がございましたら、リクエストを送信してください