ARM チップ用のプログラムを IAR コンパイラから gcc に移植しています。
__segment_begin
元のコードでは、やなどの IAR 固有の演算子__segment_size
を使用して、特定のメモリ セグメントの先頭とサイズを取得していました。
GCCで同じことをする方法はありますか? GCC マニュアルを検索しましたが、関連するものは見つかりませんでした。
詳細:
問題のメモリ セグメントは、プログラムがチップ上の特定の周辺機器と正しくインターフェイスできるように、固定位置に配置する必要があります。元のコードでは、__segment_begin
演算子を使用してこのメモリのアドレスを取得し、このメモリ__segment_size
がオーバーフローしないようにします。
これらのメモリ セグメントの開始と終了を示す変数を追加することで同じ機能を実現できますが、GCC に同様の演算子があり、コンパイラに依存するコードの量を最小限に抑えるのに役立つ場合は、作成して維持する必要があります。