Renesas Synergy™

FAQ 1011632 : レジスタ・モードとは何ですか?

Q: 質問

レジスタ・モードとは何ですか?


A : 回答

CC-RHが使用するRH850のレジスタ本数を32本(32レジスタ・モード)、22本(22レジスタ・モード、または汎用レジスタ・モード)のいずれかに制限する機能です。

レジスタ・モード 作業用レジスタ レジスタ変数用レジスタ
22 r10 ~ r14 r25 ~ r29
32 r10 ~ r19 r20 ~ r29
汎用 r10 ~ r14 r25 ~ r29


つまり、22レジスタ・モードの場合、r15~r24は使用しません。
32レジスタ・モードと比較して22レジスタ・モードを指定した際のメリット・デメリットは以下の通りです。

メリット:
割込み時の退避/復帰では、割込み関数内でコンパイラが使用するレジスタの退避/復帰処理を行います。
レジスタモードで指定した本数分のレジスタをコンパイラが使用することになりますので、22レジスタ・モードの方が退避/復帰すべきレジスタが少なく、退避/復帰は速くなります。
また、アセンブラ関数内においてr15~r24を自由に使用可能です。

デメリット:
コンパイラが使用できるレジスタ本数が減るため、通常処理が遅くなる可能性があります。またROMサイズが増大する可能性もあります。

 

適用製品

RH850ファミリ用Cコンパイラパッケージ
他にご質問がございましたら、リクエストを送信してください