ユーザ作成memcpy() を強制使用
テクニカル・ノート 17095
アーキテクチャ:
Arm
コンポーネント:
compiler
更新日:
2021/10/28 3:25
はじめに
本テクニカルノートでは、アプリケーションに対して独自のデータコピー関数を強制的に使用させる方法について説明します。
解説
ランタイムライブラリで用意されているmemcpy()、__aeabi_memcpy()、__aeabi_memcpy4()、__aeabi_memcpy8()関数の代わりに、独自に定義したmemcpy()関数をアプリケーションに使わせたいとします。
memcpy()をオーバーライドする方法として、2通りの推奨方法があります:
- コンパイラとライブラリで使用されているAEABIの実装関数、すなわち、__aeabi_memcpy()、__aeabi_memcpy4()、and __aeabi_memcpy8()をオーバーライドする
- version 8.50.9 でのテンプレートを このリンク からダウンロードできます
- 独自に定義した関数名を使用する(例: my_memcpy())
- ライブラリには、__aeabi_memcpy()、__aeabi_memcpy4()、__aeabi_memcpy8()の呼び出しが含まれていますが、これらはオーバーライドされないことに注意してください。
まとめ
独自のmemcpy()を強制的に使用させる方法は他にもあると思いますが、上記の2つの方法をお勧めします。
全ての製品名は、それぞれの所有者の商標または登録商標です