Renesas Synergy™

FAQ 3000025 : #pragma inline_asmで指定した関数自身のコード出力(CC-RL)

Q : 質問

RL78コンパイラCC-RLを使用しています。#pragma inline_asmで指定した関数が、インライン展開部分だけではなく、関数自身のコードもメモリ上に配置されています。ROMサイズを削減したいので、関数自身のコードがメモリ上に配置されない方法を教えてください。

A : 回答

#pragma inline_asm関数にstatic記憶域クラス指定子と__near型修飾子をつけて定義することで、関数自身のコードが出力されなくなります。

(例)
#pragma inline_asm sampleasm
static __near void sampleasm(void){
...

適用製品

e2 studio
CS+ (旧 CubeSuite+)
RL78ファミリ用Cコンパイラパッケージ
他にご質問がございましたら、リクエストを送信してください