2016-06-30 7 views
0

Cortex-M4に基づく私のプロセッサーとしてのlibgccの浮動小数点実装にはFPUはありません。 -lgccスイッチを使用してビルドされたライブラリlibgcc.aを使用する代わりに、アプリケーションで浮動小数点演算関数のソースコードの実装を使用し、ライブラリ全体を追加する代わりに自分のアプリケーションに必要な関数のみを使用したい。だから、これらの機能がどこにあるのかを助けてください。 これらの機能は、「aeabi_dcmpeq」などの「ieee754-df.S」にあります。これらの関数は、すべてのARMターゲットに対してソフト浮動小数点と汎用のものですか?しかし、それは私にはそうではないようです。libgccのソフト浮動小数点機能私は</p> <p>が__aeabi_dcmpeq</p> <p>__aeabi_dcmplt</p> <p>__aeabi_dmul</p> <p>は基本的に、私はソフトを使用したいソフトの浮動小数点に基づいて、これらの関数のソースコードの実装を見つけたい

+0

http://code.metager.de/source/xref/NetBSD/src/lib/libc/arch/arm/softfloat/

FreeBSD実装:http://web.mit.edu/freebsd/head/lib/libc/arm/aeabi/aeabi_double.c http://web.mit.edu/freebsd/head/lib/libc/arm/aeabi/ aeabi_asm_double.S – osgx

+0

私はimplemを使いたいgccのソースコード – user3674043

+0

からのこれらの関数の使用libgccとの静的または動的リンクを使用していますか?静的リンクは、使用される関数のみを保持します。 – osgx

答えて

0

機能は、NetBSDでsoftfloat実装がありhttp://code.metager.de/source/xref/gnu/gcc/libgcc/config/arm/ieee754-df.S

でlibgccの中で定義されています(NetBSDの/ srcに/ libに/ libcの/ softfloat /):ありhttp://code.metager.de/source/xref/NetBSD/src/lib/libc/arch/arm/softfloat/__aeabi_dcmplt.c

+0

私はieee754-def.Sからこの関数 "aeabi_dcmpeq"を選んでアプリケーションに組み込みましたが、アプリケーション構築中にこれらのエラーが表示されます ../src/ieee754-df.S:1096:エラー:lo register required - - 'str lr、[sp、# - 8]! ' ../src/ieee754-df.S:1099:エラー:Thumbは条件付き実行をサポートしていません ../src/ieee754-df.S:1100:エラー:Thumbは条件付き実行をサポートしていません。 これらのエラーは、私がcortex-m4用に構築しているので有効です。だから、どのようにしてcortex-m4/armv7e-mのために使用するように修正することができますか? FPUを持たないcortex-m4/armv7e-mについて、GCCが複数のアーキテクチャとそれに対して操作する方法 – user3674043

+0

あなたは私の上記のコメントを見たことがありますか? – user3674043

関連する問題