CXC-RLでRL78/G13のコードを作成していますが、.SLIB内にREL_printという領域があることに気付きました。(私のコードではそれなりのサイズとられて気になった)
これはいったいどういったものでしょうか?
最適化はデバッグ優先(最適化なし)で行っています。
-------------------------------------
mapファイルより抜粋
:
FILE=strncpy 00004580 00004593 14 _strncpy 00004580 0 none ,g * FILE=_REL_print 00004594 000061ea 1c57 __REL_print 00004594 1302 func ,g * __CommonCode@117 00005896 3 func ,l * __CommonCode@112 00005899 7 func ,l *
t-tさん、こんにちは。NoMaYです。#お久しぶりです。それはprintf/sprintf/vsprintf等の `本体` ではないかと思います。printf系標準ライブラリは派生ライブラリ関数が幾つかありますので根元でまとめているのではないかと思います。ちなみに、CC-RL/CC-RXでは、以下のCS+のヘルプの画面コピーのように、機能縮小版/サイズ削減版が存在しています。(他方、CC-RHでは存在していないようでした。)以下、CS+のヘルプの画面コピーです。CC-RLの場合: 関数名もしくはコンパイル時のマクロ定義で機能縮小版/サイズ削減版を指定しますCC-RXの場合: ライブラリジェネレータのコマンドラインオプションで機能縮小版/サイズ削減版を指定します(参)CC-RHの場合: 機能縮小版/サイズ削減版は存在しないようでした
>NoMaY さま
ありがとうございます。sprintf⇒sprintf_tinyで大幅にサイズ減りました。
FILE=_REL_print_tiny 0000043c 000008ba 47f __REL_print_tiny 0000043c 3c1 func ,g *