4.26 __rt_lib_init()

rt_misc.h で定義されるこの関数は、__rt_lib_shutdown() の対となるライブラリ初期化関数です。

構文

extern value_in_regs struct __argc_argv __rt_lib_init(unsigned heapbase, unsigned heaptop);
各項目には以下の意味があります。
heapbase
ヒープメモリブロックの開始位置です。
heaptop
ヒープメモリブロックの終了位置です。

使用法

この関数は __rt_stackheap_init() の直後に呼び出され、ヒープとして使用される最初のメモリチャンクに渡されます。この関数は標準 ARM® C ライブラリ初期化関数であり、再実装することはできません。

戻り値

この関数は、main() に渡される argcargv を返します。構造体は以下のようにレジスタに返されます。
struct __argc_argv
{   int argc;
    char **argv;
    int r2, r3;   // main() へのエントリ時にレジスタ R2 および R3 に
};                // 格納されているオプションの追加引数。
非機密扱いPDF file icon PDF 版ARM DUI0808CJ
Copyright © 2014, 2015 ARM.All rights reserved.